Mạch tạo xung điều khiển động cơ bước mks steptest v1

     

Đây là tài liệu khá xuất xắc về động cơ bước và mạch điều khiển động cơ bước mình tìm kiếm được. Trong tư liệu này đã được tác giả trình diễn 4 ngôn từ chính: reviews và Tổng quan hộp động cơ bước, Phân loại động cơ bước, Mạch tinh chỉnh động cơ bước, giảm bớt dòng điện. Xin cảm ơn mang lại tác giả, nội dung nạm thể:


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

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

Bạn đang xem: Mạch tạo xung điều khiển động cơ bước mks steptest v1

Hệ thống tinh chỉnh và điều khiển động cơ bước

Một khối hệ thống có áp dụng động cơ bước rất có thể được khái quát theo sơ thứ sau.

*

D.C.SUPPLY: tất cả nhiệm vụ cung cấp nguồn một chiều đến hệ thống. Nguồn một chiều này có thể lấy từ pin nếu bộ động cơ có năng suất nhỏ. Với những động cơ có năng suất lớn có thể dùng nguồn tích điện được chỉnh lưu lại từ nguồn luân phiên chiều.

CONTROL LOGIC: Đây là khối tinh chỉnh và điều khiển logic. Bao gồm nhiệm vụ tạo ra tín hiệu điều khiển và tinh chỉnh động cơ. Khối súc tích này hoàn toàn có thể là một mối cung cấp xung, hoặc rất có thể là một khối hệ thống mạch năng lượng đ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ả cách 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 để lấy vào hễ cơ. Nó lấy điện từ bỏ nguồn hỗ trợ và xung tinh chỉnh từ khối tinh chỉnh và điều khiển để tạo ra 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ố của động cơ có có: bước góc, sai số cách góc, mômen kéo, mômen hãm, mômen làm cho việc.Đối cùng với hệ điều khiển động cơ bước, ta thấy chính là một hệ thống khá dễ dàng và đơn giản vì không hề có phần tử phản hồi. Điều này còn có được vì bộ động cơ bước trong vượt trình chuyển động không tạo ra sai số tích lũy, không nên số của động cơ do không đúng số trong khi chế tạo. Việc áp dụng động cơ bước tuy đem lai độ đúng đắn chưa cao nhưng ngày dần được sử dụng phổ biến. Vì hiệu suất và độ đúng chuẩn của bước góc đang ngày dần được cải thiện.

Xem thêm: Chuyển Dạ Và Sinh Con Qua Ngả Âm Đạo, Quá Trình Sinh Em Bé Như Thế Nào

Bước góc của hộp động cơ bước được sản xuất 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 1-1 cực

Động cơ bước 1-1 cực, ( rất có thể là động cơ vĩnh cửu hoặc động cơ hỗn phù hợp ) có 5,6 hoặc 8 dây ra thường xuyên được quấn như sơ vật dụng dưới. Khi dùng, các đầu nối trung chổ chính giữa thường được nối vào cực dương mối cung cấp cấp, cùng hai đầu còn lại của mỗi mấu theo lần lượt nối khu đất để hòn đảo chiều sóng ngắn từ trường tạo vày quận đó.

*
động cơ bước đối chọi 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 tinh chỉnh động cơ bước

Mạch điều khiển động cơ bước gồm 1 số tác dụng sau đây:

Tạo những xung với những tần số khác nhau.Chuyển đổi những phần cho tương xứng với đồ vật tự kích từ.Làm giảm các dao bộ động cơ học.Đầu vào của mạch tinh chỉnh là các xung. Nhân tố của mạch là các bán dẫn, vi mạch. Kích thích các phần của động cơ bước theo máy tự 1-2-3-4 do những transistor năng suất T1 đến T4 thực hiện.Với việc biến đổi vị trí cỗ chuyển mạch, rượu cồn cơ rất có thể quay theo chiều kim đồng hồ 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 thành từ trường có tác dụng quay rotor. Những khoá ở đây không nỗ lực thể, hoàn toàn 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 hiện điều khiển rất có thể được chỉ dẫn từ bộ tinh chỉnh và điều khiển như vi mạch siêng dụng, trang bị tính. Với hễ cơ nhỏ tuổi có chiếc cỡ 500 mili Ampe, có thể dùng IC nhiều loại dãy darlington collector hở như : ULN2003, ULN2803 ( Allegro Microsystem)

*

IC bọn họ ULN200x tất cả đầu vào tương xứng TTL, các đầu emitor được nối cùng với chân 8. Từng transitor darlington được đảm bảo bởi hai diode. Một mắc giữa emitor cho tới collector ngăn điện áp ngược lớn đặt lên transitor. Diode trang bị hai nối collector với chân 9. Ví như 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 các động cơ lớn bao gồm dòng > 0.5A những IC họ ULN không thỏa mãn nhu cầu được ta rất có thể dùng các Tranzitor trường(IRF).Một số một số loại IRF thông dụng: IRF540 tranzitor ngược rất có thể chịu loại đến 20A

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

Sơ thiết 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

// input Capture on Falling Edge

// Timer 1 Overflow Interrupt: Off

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