Đây là tài liệu khá xuất xắc về động cơ cách và mạch tinh chỉnh động cơ bước mình tra cứu được. Trong tài liệu này đã làm được tác giả trình diễn 4 ngôn từ chính: reviews và Tổng quan động cơ bước, Phân loại động cơ bước, Mạch điều khiển động cơ bước, tinh giảm dòng điện. Xin cảm ơn mang lại tác giả, nội dung nuốm thể:
Giới thiệu về hộp động cơ bước
Động cơ bước thực chất là một cồn cơ nhất quán dùng để đổi khác các tín hiệu tinh chỉnh và điều khiển dưới dạng các xung năng lượng điện rời rạc tiếp đến nhau thành các hoạt động góc xoay hoặc các hoạt động của roto và có tác dụng cố định roto vào phần đông vị trí buộc phải thiết. Động cơ bước làm việc được là nhờ gồm bộ chuyển mạch năng lượng điện tử đưa những tín hiệu điều khiển vào stato theo một máy tự cùng một tần số tuyệt nhất định. Tổng thể góc tảo của roto tương ứng với mốc giới hạn chuyển mạch, cũng như chiều xoay và tốc độ quay của roto, nhờ vào vào thứ tự biến hóa và tần số đưa đổi. Lúc 1 xung năng lượng điện áp đặt vào cuộn dây stato (phần ứng) của động cơ bước thì roto (phần cảm) của hộp động cơ sẽ tảo đi một góc tuyệt nhất định, góc ấy là 1 bước cù của cồn cơ. Khi các xung năng lượng điện áp để vào các cuộn dây phần ứng biến hóa liên tục thì roto đã quay liên tục. (Nhưng thực chất vận động đó vẫn luôn là theo các bước rời rạc).
Bạn đang xem: Mạch điều khiển động cơ bước tb6560
Hệ thống tinh chỉnh và điều khiển động cơ bước
Một hệ thống có sử dụng động cơ bước có thể được bao quát theo sơ đồ sau.
D.C.SUPPLY: bao gồm nhiệm vụ cung ứng nguồn một chiều đến hệ thống. Nguồn một chiều này hoàn toàn có thể lấy từ pin sạc nếu động cơ có năng suất nhỏ. Với những động cơ có năng suất lớn rất có thể dùng nguồn tích điện được chỉnh giữ từ nguồn chuyển phiên chiều.
CONTROL LOGIC: Đây là khối tinh chỉnh logic. Gồm nhiệm vụ tạo thành tín hiệu tinh chỉnh và điều khiển động cơ. Khối lô ghích này rất có thể là một mối cung cấp xung, hoặc có thể là một hệ thống mạch điện tử. Nó tạo ra các xung điều khiển. Động cơ bước có thể điều khiển theo cả cách hoặc theo nửa bước.
POWER DRIVER: Có nhiệm vụ cấp nguồn điện đã có điều chỉnh để lấy vào hễ cơ. Nó mang điện từ nguồn cung cấp và xung tinh chỉnh và điều khiển từ khối điều khiển để tạo nên dòng điện cung cấp cho hộp động cơ hoạt động.
STEPPER MOTOR: Động cơ bước. Các thông số kỹ thuật của hễ cơ gồm có: bước góc, không nên số bước góc, mômen kéo, mômen hãm, mômen làm việc.Đối với hệ điều khiển và tinh chỉnh động cơ bước, ta thấy đó là một khối hệ thống khá đơn giản vì không hề có bộ phận phản hồi. Điều này còn có được vì bộ động cơ bước trong quá trình hoạt động không gây ra sai số tích lũy, không nên số của bộ động cơ do sai số trong khi chế tạo. Việc sử dụng động cơ cách tuy lấy lai độ đúng chuẩn chưa cao nhưng càng ngày được sử dụng phổ biến. Vì công suất và độ đúng chuẩn của bước góc đang càng ngày càng được cải thiện.
Xem thêm: Nhà Máy Đóng Tàu Ba Son Tuyển Dụng Ở Bà Rịa, 25 Ba Son Việc Làm, Tuyển Dụng Ở Bà Rịa
Bước góc của hộp động cơ bước được chế tạo theo bảng tiêu chuẩn sau:
Nguyên tăc điều khiển và tinh chỉnh động cơ bước 1-1 cực
Động cơ bước đơn cực, ( có thể là bộ động cơ vĩnh cửu hoặc hộp động cơ hỗn phù hợp ) tất cả 5,6 hoặc 8 dây ra hay được quấn như sơ trang bị dưới. Khi dùng, các đầu nối trung trọng điểm thường được nối vào rất dương nguồn cấp, cùng hai đầu còn sót lại của từng mấu theo thứ tự nối khu đất để hòn đảo chiều sóng ngắn từ trường tạo vì quận đó.
động cơ bước đơn cựcTín hiệu điều khiển. Điều khiển đủ bước (full step) :
Winding 1a 1000100010001000100010001Winding 1b 0010001000100010001000100 Winding 2a 0100010001000100010001000 Winding 2b 0001000100010001000100010time —>Winding 1a 1100110011001100110011001Winding 1b 0011001100110011001100110 Winding 2a 0110011001100110011001100 Winding 2b 1001100110011001100110011time —>Điều khiển nửa bước ( half step )Winding 1a 11000001110000011100000111Winding 1b 00011100000111000001110000 Winding 2a 01110000011100000111000001 Winding 2b 00000111000001110000011100time —>
Mạch tinh chỉnh động cơ bước
Mạch điều khiển động cơ bước bao gồm 1 số công dụng sau đây:
Tạo những xung với số đông tần số không giống nhau.Chuyển đổi những phần cho phù hợp với thứ tự kích từ.Làm giảm những dao hộp động cơ học.Đầu vào của mạch tinh chỉnh và điều khiển là các xung. Thành phần của mạch là những bán dẫn, vi mạch. Kích thích các phần của bộ động cơ bước theo sản phẩm công nghệ tự 1-2-3-4 do những transistor công suất T1 mang lại T4 thực hiện.Với việc biến hóa vị trí cỗ chuyển mạch, động cơ có thể quay theo chiều kim đồng hồ hoặc ngược lại.
Điện áp được cấp qua các khoá đưa để nuôi các cuộn dây, tạo thành từ trường làm quay rotor. Các khoá ở chỗ này không cố thể, có thể là bất cứ thiết bị đóng giảm nào điều khiển được như rơle, transitor công suất… biểu thị điều khiển rất có thể được giới thiệu từ bộ tinh chỉnh và điều khiển như vi mạch chuyên dụng, lắp thêm tính. Với động cơ nhỏ tuổi có mẫu cỡ 500 mili Ampe, có thể dùng IC các loại dãy darlington collector hở như : ULN2003, ULN2803 ( Allegro Microsystem)
IC bọn họ ULN200x có đầu vào tương xứng TTL, những đầu emitor được nối với chân 8. Mỗi transitor darlington được đảm bảo an toàn bởi nhị diode. Một mắc giữa emitor tới collector ngăn điện áp ngược lớn để lên transitor. Diode thứ hai nối collector với chân 9. Trường hợp chân 9 nối với rất dương của cuộn dây, tạo thành mạch bảo vệ cho transitor.
Với các động cơ lớn tất cả dòng > 0.5A những IC bọn họ ULN không đáp ứng nhu cầu được ta rất có thể dùng các Tranzitor trường(IRF).Một số loại IRF thông dụng: IRF540 tranzitor ngược rất có thể chịu mẫu đến 20A
IRF640 tranzitor ngược rất có thể chịu mẫu đến 18A IRF250 tranzitor ngược có thể chịu chiếc đến 30A .
Sơ trang bị mạch có thiết kế như sau:
Code#include
#include // Khai bao bien
unsigned char stepA<> = 0xFF,0xFE,0xFD,0xFB,0xF7, stepB<>= 0xFF,0xEF,0xDF,0xBF,0x7F,
stepC<> = 0xFF,0xEF,0xDF,0xBF,0x7F; unsigned char indexA, indexB, indexC; unsigned char n_data; unsigned char n_step=10; unsigned int n_step3=5000,n_i; //——————// Declare your global variables here void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T
State1=T State0=T PORTA=0xFF;
DDRA=0xFF;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T
State1=T State0=T PORTB=0xFF;
DDRB=0xFF;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T
State1=T State0=T PORTC=0xFF;
DDRC=0xFF;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T
State1=T State0=T
PORTD=0xFF;
DDRD=0xFF;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh // OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer 1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// đầu vào Capture on Falling Edge
// Timer 1 Overflow Interrupt: Off
// đầu vào Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer 2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00; // External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;
// Analog Comparator initialization
// Analog Comparator: Off // Analog Comparator input đầu vào Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; while (1) { // Place your code here if(indexA ++>3) indexA = 1; if(indexB ++>3) indexB = 1;