Cách điều khiển Step motor

Tìm hiểu về động cơ bước, điều khiển động cơ bước dùng arduino.

I.Tìm hiểu về động cơ bước

Để hiểu được về động cơ bước ta cần thấu hiểu các bước cơ bản sau:

Bước 1: Đọc và hiểu rõ cách phân loại động cơ;

Bước 2: Tìm hiểu cách điều khiển động cơ bước từ căn bản đến nâng cao;

Bước 1: Đọc và hiểu rõ cách phân loại động cơ bước;

*** Phân loại theo rotor của động cơ bước

Loại 1: Động cơ bước có rotor được tác động bằng dây quấn hoặc nam châm vĩnh cữu.

Loại 2: Động cơ bước có rotor không được tác động nhưng có phần từ cảm ứng, phản kháng còn gọi là động cơ bước thay đổi từ trở.

Loại 3: Động cơ bước có cấu tạo rotor kết hợp cả 2 loại trên.

Do đó sẽ rất quen thuộc khi các bạn được giới thiệu rằng: động cơ bước được chia làm 2 loại, đó là loại động cơ bước nam châm vĩnh cửu và loại động cơ bước biến từ trở [hoặc kết hợp cả hai gọi là loại động cơ bước hỗn hợp].

*** Phân loại theo cực của động cơ bước

Loại 1: động cơ bước đơn cực, có thể bao gồm cả động cơ bước loại nam châm vĩnh cửu hoặc động cơ bước loại hỗn hợp. Nhưng ở các cuộn dây luôn có đầu trung tâm được nối ra từ chính giữa mỗi cuộn dây.

Hình 1: Động cơ bước đơn cực;
Loại 2: động cơ bước lưỡng cực, có thể bao gồm cả động cơ bước loại nam châm vĩnh cửu hoặc động cơ bước loại biến từ trở. Nhưng ở các cuộn dây sẽ không có đầu dây nối ra từ trung tâm.

Hình 2: Động cơ bước lưỡng cực;
*** Phân loại theo số pha của động cơ bước

Loại 1: động cơ bước 2 pha, là loại động cơ bước 4 dây, động cơ bước 6 dây hoặc động cơ bước 8 dây.

Loại 2: động cơ bước 3 pha, là loại động cơ bước 3 dây hoặc động cơ bước 4 dây.

Loại 3: động cơ bước 5 pha, là loại động cơ bước có 5 dây hoặc động cơ bước 10 dây.

Vậy ta sẽ thắc mắc, nếu vậy đấu nối ra sao với thiết bị;

Cách kết nối: với động cơ 4 dây thì bạn tìm các dây xem dây nào là kênh A- A+ B- B+ và nối vào driver. với động cơ 5 dây 6 dây hoặc 8 dây thì bạn cắt bỏ hết những dây chung đi và chỉ sử dụng 4 dây ở 2 đầu cuộn dây để điều khiển.
Vậy thì làm thế nào để xác định đúng dây:

CÁCH XÁC ĐỊNH CÁC ĐẦU CUỘN DÂY ĐỘNG CƠ BƯỚC ĐƠN CỰC 6 DÂY.

Hình ảnh động cơ bước đơn cực 6 giây và mô tả các cuộn dây

Bước 1: Đo thông mạch để xác định 3 đầu dây, trên cùng 1 cuộn dây;
Bước này xác định được 2 nhóm, mỗi nhóm có 3 dây:

Bước 2: Xác định các đầu dây chung;
Điện trở đo từ đầu 2 dây sẽ gấp đôi điện trở từ dây chung đến mỗi dây;
Ví dụ:
Điện trở từ 2 đầu dây là: 8,3ohm. điện trở từ dây chung đến mỗi dây là 4,8 ohm;
Lặp lại tiến trình cho đến khi xác định được 2 dây chúng.
Trong trường hợp cụ thể này, 2 dây chung là dây trắng và dây vàng;
Các đầu cuộn dây là còn lại là đỏ, xanh lục, đen, xanh dương;
Sau khi xác định được dây chung của 2 cuộn dây, nối chúng lại với nhau;
Bước 3: Xác định thứ tự các dây:

Dùng nguồn điện 1 chiều [pin, cục sặc điện thoại] khoản 3-5V là oke, 2 đầu dây cục pin là A và B, Đầu A nối dây chung; đầu B nối với 1 trong 4 dây còn lại, ở đây ta nối với dây đỏ [đánh số 2];
Cầm đầu dây 2 [đã nối với dây đỏ] chạm nhẹ với 1 trong 3 dây còn lại;
Quan sát motor, ta thấy:
Có 1 dây khi chạm sẽ làm trục quay nửa bước [theo chiều kim đồng hồ] dây đen [đánh số 1];
Có 1 dây khi chạm sẽ làm trục quay lùi 1 bước [ngược chiều kim đồng hồ] dây xanh lục [đánh số 3];
Có 1 dây khi chạm thì đứng im xanh dương [đánh số 4];

Bước 2: Tìm hiểu các cách điều khiển động cơ bước từ căn bản đến nâng cao

Khi nói đến cách điều khiển động cơ bước, các bạn sẽ thường nhắc đến cách điều khiển động cơ bước 6 dây, cách điều khiển động cơ bước 4 dây hoặc cách điều khiển động cơ bước 5 dây .
Tuy nhiên, ở đây mình sẽ chia sẻ chi tiết hơn về gốc rễ của điều khiển động cơ bước ra sao, như thế nào, phương pháp điều khiển gì ?

Các bạn có biết mỗi một loại động cơ bước sẽ có đặc tuyến khác nhau, vì vậy cách điều khiển sẽ khác nhau. Tùy thuộc vào lực kéo [moment] và tốc độ quay yêu cầu mà ta có thể dùng các cách điều khiển sau đây:

Trường hợp động cơ bước chỉ cần chạy ở tốc độ thấp: sử dụng phương pháp điều khiển cấp điện áp trực tiếp, chính nội trở cuộn dây của động cơ sẽ tạo ra một dòng điện và giới hạn dòng điện này phụ thuộc vào điện áp cấp trực tiếp cho động cơ bước.

Trường hợp động cơ bước chạy ở tốc độ cao: nếu tiếp tục sử dụng phương pháp cấp điện áp trực tiếp thì lực kéo [moment] sẽ bị giảm nghiêm trọng vì đặc tuyến cảm của cuộn dây sẽ kìm hãm khả năng của dòng điện.

Một thực tế ở cách điều khiển động cơ bước bằng cách cấp điện trực tiếp sẽ làm cho động cơ và mạch điều khiển động cơ bước rất nóng.

Trường hợp cần cải thiện và nâng cao hiệu suất của động cơ ở tốc độ thấp và cần tăng tốc độ cao thì nên sử dụng phương pháp điều khiển băm xung. Cách điều khiển động cơ bước dựa vào băm xung nhằm duy trì tần số không đổi, theo nguyên tắc duy trì dòng điện qua các cuộn dây của động cơ không đổi với mọi cấp độ. Cách điều khiển này còn gọi là điều khiển theo dòng điện.

Thực tế điều khiển cho thấy, cách điều khiển động cơ bước bằng cách băm xung sẽ giúp cho động cơ bước chạy mạnh hơn, êm hơn, và ít nóng hơn.
2. Giới thiệu module Driver A4988
Mình biết đến IC này qua việc tìm hiểu máy in 3d. Khá ngạc nhiên là hầu hết các máy in 3d đều dùng con IC này điều khiển vì máy in 3d tải trọng nhỏ
Đến khi được cầm con này trên tay thì lại khá ngạc nhiên nữa vì nó quá nhỏ, nhỏ hơn 10 lần so với tb6560 hoặc 20 lần so với MA860H Nó chỉ to hơn móng tay một chút xíu

Tính năng:
Điều khiển đơn giản
Điều khiển được động cơ hoạt động với điện áp lên tới 35V dòng lên tới 2A
Có 5 chế độ: full bước, 1/2 bước, 1/4 bước, 1/8 bước, 1/16 bước
Điểu chỉnh dòng ra bằng triết áp [bé xíu] nằm bên trên Current Limit = VREF × 2.5
Tự động Shutdown thì quá nóng
.​
Sơ đồ kết nối

Lựa chọn chế độ full hay 1/2 hay 1/4.. sẽ được thông qua 3 pin MS1 MS2 MS3. Mình thường nối thẳng 3 pin này với công tắc bit 3p để dễ thiết lập từ trên phần cứng. Lưu ý là nếu thả nổi 3 pin này tức là mode full step.

Bật tắt động cơ thì thông qua pin ENABLE, mức LOW là bật module, mức HIGH là tắt module
Điều khiển chiều quay của động cơ thông qua pin DIR
Điều khiển bước của động cơ thông qua pin STEP, mỗi xung là tương ứng với 1 bước [ hoặc vi bước]
Hai chân Sleep với Reset nối với nhau luôn . [Tại sao thì xem datasheet đính kèm]

Đưới đây là sourse code: #include AccelStepper stepper[1,5,4];// pin 5 step, pin 4 dir void setup[] { Serial.begin[9600]; pinMode[6,OUTPUT]; // Enable digitalWrite[6,LOW]; // Dặt Enable xuống low để khởi động động cơ } void loop[] { if [stepper.distanceToGo[] == 0] //kiểm tra thử động cơ bước có còn đang chạy hay không, nếu không còn chạy thì... { delay[1000]; stepper.moveTo[rand[] % 400]; //chuyển đến tọa độ 0 - 399 [Random] stepper.setMaxSpeed[[rand[] % 400] + 200]; //chỉnh tốc độ. stepper.setAcceleration[[rand[] % 200] + 100]; //chỉnh gia tốc. //kiến thức về tốc độ và gia tốc là kiến thức cơ bản vật lý lớp 10, vì vậy, các bạn lớp 9 trở xuống muốn dùng động cơ bước thì nhớ tìm hiểu khái niệm này nhé. hehe } Serial.println[stepper.distanceToGo[]]; stepper.run[]; // phải có hàm này ở hàm loop với mỗi biến stepper thì nói mới chạy được }

Video liên quan

Chủ Đề