MẠCH ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC

Đây là tài liệu khá tốt về động cơ cách và mạch điều khiển động cơ cách mình tìm được. Trong tài liệu này đã có tác giả trình bày 4 nội dung chính: giới thiệu và Tổng quan động cơ bước, Phân loại bộ động cơ bước, Mạch tinh chỉnh động cơ bước, tinh giảm dòng điện. Xin cảm ơn đến tác giả, nội dung thế thể:


Giới thiệu về động cơ bước

Động cơ bước thực chất là một rượu cồn cơ nhất quán dùng để thay đổi các tín hiệu điều khiển và tinh chỉnh dưới dạng các xung điện rời rạc tiếp đến nhau thành các chuyển động góc con quay hoặc các chuyển động của roto và có công dụng cố định roto vào số đông vị trí đề nghị thiết. Động cơ bước thao tác được là nhờ có bộ chuyển mạch điện tử đưa những tín hiệu tinh chỉnh vào stato theo một trang bị tự và một tần số độc 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 giống như chiều quay và tốc độ quay của roto, phụ thuộc vào sản phẩm công nghệ tự chuyển đổi và tần số chuyển đổi. Lúc một xung năng lượng điện áp đặt vào cuộn dây stato (phần ứng) của hộp động cơ bước thì roto (phần cảm) của động cơ sẽ tảo đi một góc duy nhất định, góc ấy là một trong những bước quay của đụng cơ. Khi những xung điện áp đặt vào các cuộn dây phần ứng chuyển đổi liên tục thì roto sẽ quay liên tục. (Nhưng thực chất chuyển động đó vẫn luôn là theo quá trình rời rạc).

Bạn đang xem: Mạch điều khiển động cơ bước

Hệ thống tinh chỉnh động cơ bước

Một khối hệ thống có sử dụng động cơ bước có thể được tổng quan theo sơ vật dụng sau.

*

D.C.SUPPLY: có nhiệm vụ cung ứng nguồn một chiều đến hệ thống. Mối cung cấp một chiều này hoàn toàn có thể lấy từ pin sạc nếu động cơ có công suất nhỏ. Với những động cơ có hiệu suất lớn rất có thể dùng nguồn điện áp được chỉnh lưu giữ từ nguồn luân chuyển chiều.

CONTROL LOGIC: Đây là khối điều khiển và tinh chỉnh logic. Bao gồm nhiệm vụ tạo ra tín hiệu điều khiển động cơ. Khối xúc tích này rất có thể là một nguồn xung, hoặc có thể là một hệ thống mạch điện tử. Nó tạo thành các xung điều khiển. Động cơ bước rất có thể điều khiển theo cả bước hoặc theo nửa bước.

POWER DRIVER: Có trọng trách cấp nguồn điện đã được điều chỉnh để mang vào cồn cơ. Nó lấy điện từ bỏ nguồn cung cấp và xung điều khiển từ khối tinh chỉnh để tạo nên dòng điện cung cấp cho bộ động cơ hoạt động.

STEPPER MOTOR: Động cơ bước. Các thông số kỹ thuật của rượu cồn cơ tất cả có: bước góc, không đúng số bước góc, mômen kéo, mômen hãm, mômen làm cho việc.Đối với hệ điều khiển động cơ bước, ta thấy đó là một hệ thống khá dễ dàng và đơn giản vì không thể có thành phần phản hồi. Điều này còn có được vì hộp động cơ bước trong quá trình vận động không gây nên sai số tích lũy, sai số của hộp động cơ do sai số trong khi chế tạo. Việc thực hiện động cơ bước tuy mang lai độ chính xác chưa cao nhưng càng ngày càng được thực hiện phổ biến. Vì hiệu suất và độ đúng chuẩn của cách góc đang ngày dần được cải thiện.

Xem thêm: Quần Jean Lưng Cao Mặc Với Áo Gì, #1 Quần Jeans Lưng Cao Là Gì

Bước góc của bộ động cơ bước được chế tạo theo bảng tiêu chuẩn chỉnh sau:

*

Nguyên tăc điều khiển và tinh chỉnh động cơ bước đối chọi cực

Động cơ bước đối kháng cực, ( rất có thể là động cơ vĩnh cửu hoặc động cơ hỗn hòa hợp ) gồm 5,6 hoặc 8 dây ra thường xuyên được quấn như sơ đồ gia dụng dưới. Lúc dùng, các đầu nối trung trung ương thường được nối vào cực dương nguồn cấp, với hai đầu sót lại của mỗi mấu theo thứ tự nối khu đất để hòn đảo chiều từ trường tạo vày quận đó.

*
động cơ bước đơn cực

Tí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 điều khiển động cơ bước

Mạch tinh chỉnh và điều khiển động cơ bước gồm một số chức năng sau đây:

Tạo những xung với phần lớn tần số khác nhau.Chuyển đổi những phần cho tương xứng với thiết bị 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. Nhân tố của mạch là những bán dẫn, vi mạch. Kích thích những phần của động cơ bước theo vật dụng tự 1-2-3-4 do các transistor công suất T1 cho T4 thực hiện.Với việc biến đổi vị trí cỗ chuyển mạch, động cơ rất có thể quay theo hướng kim đồng hồ đeo tay hoặc ngược lại.

*

Điện áp được cấp cho qua các khoá chuyển để nuôi các cuộn dây, tạo ra từ trường có tác dụng quay rotor. Các khoá ở đây không vậy thể, rất có thể là bất kể thiết bị đóng cắt nào tinh chỉnh và điều khiển được như rơle, transitor công suất… bộc lộ điều khiển hoàn toàn có thể được giới thiệu từ bộ điều khiển như vi mạch chăm dụng, sản phẩm công nghệ tính. Với hễ cơ bé dại có chiếc cỡ 500 mili Ampe, rất có thể dùng IC nhiều loại dãy darlington collector hở như : ULN2003, ULN2803 ( Allegro Microsystem)

*

IC chúng ta ULN200x bao gồm đầu vào phù hợp TTL, các đầu emitor được nối cùng với chân 8. Từng transitor darlington được đảm bảo an toàn bởi nhị diode. Một mắc thân emitor cho tới collector chặn điện áp ngược lớn để lên trên transitor. Diode sản phẩm công nghệ hai nối collector cùng với chân 9. Nếu chân 9 nối với cực dương của cuộn dây, tạo thành thành mạch bảo đảm cho transitor.

Với những động cơ lớn có dòng > 0.5A các IC chúng ta ULN không đáp ứng nhu cầu được ta có thể dùng những Tranzitor trường(IRF).Một số các loại IRF thông dụng: IRF540 tranzitor ngược hoàn toàn có thể chịu dòng đến 20A

IRF640 tranzitor ngược hoàn toàn có thể chịu dòng đến 18A IRF250 tranzitor ngược rất có thể chịu dòng đến 30A .

Sơ vật 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

// input 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;