Điều khiển động cơ bước 6 dây: sơ đồ đấu với từng loại mạch và driver
Điều khiển động cơ bước 6 dây nghĩa là chọn một mạch phù hợp rồi nối đúng 6 đầu dây của motor (hai đầu cuộn và một dây chung cho mỗi pha) vào mạch đó, để vi điều khiển, PLC hoặc bộ phát xung làm trục quay theo từng bước. Cùng một motor 6 dây có thể chạy theo hai hướng: mạch đơn cực dùng cả 6 dây (dây chung nối dương nguồn, bốn đầu cuộn đóng ngắt xuống mass), hoặc driver lưỡng cực chỉ dùng 4 dây (đấu nửa cuộn hoặc cả cuộn, dây chung không dùng).
Mạch đơn cực hợp với motor nhỏ, tốc độ thấp và những dự án cần linh kiện rẻ, dễ thay như ULN2003 hay MOSFET. Driver lưỡng cực như A4988, TMC2209, TB6600, DM542 hợp với máy cần lực, cần vi bước êm và tốc độ cao. Phần lớn trục trặc với motor 6 dây không nằm ở motor mà nằm ở chỗ đấu nhầm vai trò của dây chung, khai báo sai thứ tự chân hoặc đặt dòng không khớp kiểu đấu.
Nội dung
- 1. Chuẩn bị trước khi đấu motor 6 dây vào mạch
- 2. Trình tự xung đơn cực cho motor 6 dây
- 3. Sơ đồ đấu motor 6 dây với từng loại mạch và driver
- 4. Code mẫu ngắn cho motor 6 dây
- 5. Chuyển một máy đang chạy mạch đơn cực sang driver lưỡng cực
- 6. Bảng lỗi thường gặp sau khi đấu motor 6 dây
- 7. Câu hỏi thường gặp về điều khiển động cơ bước 6 dây
1. Chuẩn bị trước khi đấu motor 6 dây vào mạch
Trước khi nối bất kỳ dây nào, cần có trong tay ba thông tin: dây nào là dây chung của pha A và pha B, điện trở mỗi nửa cuộn, và dòng hoặc điện áp định mức ghi trên tem. Cách nhận dây chung bằng màu dây và đo điện trở đã có ở bài động cơ bước 6 dây; phần dưới quy ước sẵn tên dây để dùng cho mọi sơ đồ.

Quy ước tên dây dùng trong toàn bài
| Ký hiệu | Vị trí trên motor | Vai trò trong mạch đơn cực | Vai trò trong driver lưỡng cực |
| A | Đầu thứ nhất cuộn pha A | Nối khóa kênh 1 | A+ (hoặc A) |
| COM A | Điểm giữa cuộn pha A | Nối dương nguồn motor | Bỏ trống hoặc dùng khi đấu nửa cuộn |
| A' | Đầu thứ hai cuộn pha A | Nối khóa kênh 2 | A− (hoặc /A) |
| B | Đầu thứ nhất cuộn pha B | Nối khóa kênh 3 | B+ |
| COM B | Điểm giữa cuộn pha B | Nối dương nguồn motor | Bỏ trống hoặc dùng khi đấu nửa cuộn |
| B' | Đầu thứ hai cuộn pha B | Nối khóa kênh 4 | B− |
Nên dán nhãn hoặc bấm đầu cos có đánh dấu ngay sau khi xác định, vì chỉ cần lẫn A' với B là motor sẽ rung tại chỗ thay vì quay.
Tính sẵn ba con số cho motor của mình
- Dòng định mức một nửa cuộn I = U tem / R nửa cuộn. Ví dụ tem ghi 12 V, nửa cuộn 30 Ω, dòng khoảng 0,4 A.
- Điện trở cả cuộn = 2 × R nửa cuộn, điện cảm cả cuộn ≈ 4 × L nửa cuộn.
- Dòng đặt cho driver khi đấu cả cuộn ≈ 0,7 × I; khi đấu nửa cuộn = I.
Cách quy đổi đầy đủ thông số theo từng kiểu đấu và ảnh hưởng tới mô-men, tốc độ được phân tích riêng ở bài động cơ bước 2 pha 6 dây. Bài này chỉ dùng kết quả để đặt dòng, chọn linh kiện và đấu dây.
Chọn hướng điều khiển theo dòng pha
| Dòng mỗi nửa cuộn | Hướng điều khiển nên dùng | Ghi chú |
| Dưới 0,3 A | ULN2003/ULN2803 kiểu đơn cực | Rẻ, đơn giản, chỉ bước đủ và nửa bước |
| 0,3–0,6 A | ULN2803 ghép kênh, MOSFET hoặc A4988/TMC2209 | Tùy cần đơn giản hay cần êm |
| 0,6–2 A | MOSFET đơn cực hoặc A4988, DRV8825, TMC2209 | Driver lưỡng cực cho kết quả tốt hơn |
| 2–4 A | TB6600, DM542 | Đấu nửa cuộn hoặc cả cuộn tùy dòng |
| Trên 4 A | DM556, DM860 hoặc driver đơn cực công nghiệp cũ của máy | Motor size 86 tháo máy |
2. Trình tự xung đơn cực cho motor 6 dây
Mọi mạch đơn cực (ULN, MOSFET, transistor, PLC đầu ra transistor) đều làm cùng một việc: bật tắt bốn khóa nối với A, A', B, B' theo đúng trình tự. Khác với cách gọi A, B, C, D của motor 5 dây, ở motor 6 dây nên đặt tên theo cặp để không nhầm: A và A' cùng một cuộn, không bao giờ được bật đồng thời.
Bảng trình tự bước đủ hai pha (mô-men lớn nhất ở mạch đơn cực)
| Bước | Kênh 1 (A) | Kênh 2 (A') | Kênh 3 (B) | Kênh 4 (B') |
| 1 | 1 | 0 | 1 | 0 |
| 2 | 0 | 1 | 1 | 0 |
| 3 | 0 | 1 | 0 | 1 |
| 4 | 1 | 0 | 0 | 1 |
Đi từ bước 1 đến bước 4 rồi lặp lại thì motor quay một chiều; đi ngược 4 → 1 thì đảo chiều. Muốn chạy nửa bước thì chèn thêm một trạng thái chỉ một kênh dẫn giữa mỗi cặp bước liền kề (ví dụ giữa bước 1 và 2 là A tắt, B bật, tức 0-0-1-0), được 8 trạng thái.
Hai quy tắc giúp kiểm tra trình tự trong code
- Kênh 1 và kênh 2 luôn ngược nhau ở chế độ bước đủ (một bật thì một tắt), tương tự kênh 3 và kênh 4. Nếu có bước nào A và A' cùng bằng 1, hai nửa cuộn tạo từ trường triệt tiêu nhau, motor nóng mà không có lực.
- Mỗi bước chỉ được đổi đúng một cặp. Nếu từ một bước sang bước sau cả hai cặp cùng đổi, motor nhảy hai bước một lúc và rất dễ quay lùi, rung tại chỗ.
3. Sơ đồ đấu motor 6 dây với từng loại mạch và driver
Phần này đi lần lượt từng loại mạch. Mỗi mục có bảng chân và các điểm dễ sai riêng của loại mạch đó.
a. Đấu motor 6 dây với ULN2003 và ULN2803
ULN2003 là mảng Darlington đóng xuống mass, rất hợp với motor 6 dây dòng nhỏ chạy kiểu đơn cực. Thông số, giới hạn nhiệt và cách ghép kênh của IC đã có ở bài điều khiển động cơ bước ULN2003; ở đây chỉ trình bày cách nối 6 dây.
Bảng nối motor 6 dây với ULN2003 (DIP16)
| Dây motor | Nối vào | Chân IC | Tín hiệu điều khiển |
| A | OUT1 | Chân 16 | IN1 (chân 1) |
| A' | OUT2 | Chân 15 | IN2 (chân 2) |
| B | OUT3 | Chân 14 | IN3 (chân 3) |
| B' | OUT4 | Chân 13 | IN4 (chân 4) |
| COM A + COM B | Dương nguồn motor, cùng điểm với chân COM | Chân 9 | Không |
| Âm nguồn motor | Mass chung với vi điều khiển | Chân 8 | Không |
Khác biệt khi dùng module ULN2003 bán sẵn cho 28BYJ-48
Module xanh có jack trắng 5 chân, trong đó chân giữa (dây đỏ của 28BYJ-48) là dương nguồn. Với motor 6 dây, không cần cắt jack: nối COM A và COM B chung vào chân dương đó (hoặc chân + của nguồn module), bốn dây A, B, A', B' cắm lần lượt vào bốn chân còn lại theo đúng thứ tự OUT trên mạch in. Lưu ý thứ tự trên jack của module là A, B, A', B' (xen kẽ hai pha), không phải A, A', B, B', nên phải khai báo lại thứ tự chân trong code cho khớp (xem mục 4).
ULN2803 cho motor 0,3–0,6 A
ULN2803 có 8 kênh nên ghép đôi được cả 4 pha: IN1+IN2 chung một chân tín hiệu, OUT1+OUT2 chung dây A, cứ thế với A', B, B'. Chú ý GND của ULN2803 là chân 9, COM là chân 10, khác ULN2003. Motor 6 dây size 42 dòng 1 A trở lên đã vượt mọi cách ghép ULN, nên chuyển sang MOSFET hoặc driver lưỡng cực.
b. Đấu motor 6 dây với MOSFET logic-level
Mạch bốn MOSFET kênh N đóng xuống mass là cách tự làm mạch đơn cực mạnh nhất, kéo được motor 6 dây 1–3 A mỗi pha mà ít tỏa nhiệt. Sơ đồ mỗi kênh: chân vi điều khiển → điện trở 100–220 Ω → cổng (G) MOSFET; cổng có điện trở 10 kΩ kéo xuống mass; cực máng (D) nối một đầu cuộn; cực nguồn (S) nối mass; một diode dập từ cực máng về dương nguồn motor. Hai dây COM A, COM B nối dương nguồn motor.
Bảng linh kiện cho một kênh
| Vị trí | Linh kiện gợi ý | Lý do |
| Khóa đóng ngắt, nguồn 12 V | IRLZ44N, IRLZ34N (55 V) | Dẫn tốt ở cổng 5 V, chịu được điện áp gấp đôi nguồn |
| Khóa đóng ngắt, nguồn 24 V | IRL540N, IRL530N (100 V) | Motor đơn cực đẩy đầu cuộn đang tắt lên khoảng 2 lần nguồn, cộng gai nhọn |
| Diode dập | UF4007 hoặc Schottky điện áp ngược ≥ 2 lần nguồn | Tắt nhanh, chịu dòng bằng dòng pha |
| Điện trở cổng | 100–220 Ω | Hạn dòng nạp cổng, giảm dao động |
| Điện trở kéo xuống | 10 kΩ | Motor không giật khi vi điều khiển đang khởi động |
| Tụ lọc nguồn motor | 470–1000 µF, điện áp ≥ 1,5 lần nguồn | Đặt sát mạch, hấp thụ dòng xung |
Lý do phải chọn MOSFET chịu ít nhất gấp đôi điện áp nguồn và cách thêm zener để tắt dòng nhanh đã được giải thích ở bài động cơ bước đơn cực. Một lỗi rất hay gặp là dùng MOSFET 30 V (như IRLB8721, AO3400) cho motor 24 V: mạch chạy được vài phút rồi chập một kênh.
Vi điều khiển 3,3 V (ESP32, STM32, Raspberry Pi)
IRLZ44N, IRL540N chỉ được cam kết điện trở dẫn ở cổng 4–5 V; ở 3,3 V chúng dẫn chưa hoàn toàn và nóng khi dòng lớn. Với vi điều khiển 3,3 V, chọn MOSFET có điện trở dẫn ghi ở Vgs = 2,5 V và điện áp chịu đựng đủ lớn, hoặc thêm một tầng đệm (transistor NPN, IC đệm cổng, hoặc chính ULN2003 làm tầng kéo lên 12 V cho cổng qua điện trở). Cách đơn giản nhất là dùng IC kích cổng MOSFET phía thấp loại kép, đầu vào nhận logic 3,3 V.
c. Đấu motor 6 dây với L298N
L298N là cầu H kép, không phải mạch đơn cực, nên với motor 6 dây chỉ dùng 4 dây theo kiểu lưỡng cực. Đặc điểm quan trọng của L298N là không hạn dòng: dòng qua cuộn do điện áp nguồn và điện trở cuộn quyết định. Những giới hạn khác của module (sụt áp, jumper 5 V, ENA/ENB) đã có ở bài điều khiển động cơ bước dùng L298.

Bảng chân L298N cho hai kiểu đấu
| Cực L298N | Đấu cả cuộn | Đấu nửa cuộn | Tín hiệu điều khiển |
| OUT1 | A | A | IN1 |
| OUT2 | A' | COM A | IN2 |
| OUT3 | B | B | IN3 |
| OUT4 | B' | COM B | IN4 |
| Dây không dùng | COM A, COM B (cách điện riêng) | A', B' (cách điện riêng) | Không |
| ENA, ENB | Giữ jumper hoặc nối mức cao/PWM | Giữ jumper hoặc nối mức cao/PWM | Bật hai cầu |
Chọn điện áp nguồn cho L298N theo kiểu đấu
Vì L298N không hạn dòng, điện áp tại cuộn phải bằng dòng mong muốn nhân điện trở phần cuộn đang dùng, cộng thêm sụt áp của L298 (thường 2–3 V ở vài trăm mA).
- Đấu nửa cuộn: điện áp cuộn = I × R nửa cuộn, tức đúng điện áp tem. Motor 12 V, 30 Ω cần nguồn khoảng 14–15 V.
- Đấu cả cuộn: điện trở gấp đôi. Nếu vẫn cấp đúng điện áp tem, dòng còn một nửa nhưng số vòng dây gấp đôi, lực giữ tương đương nửa cuộn mà motor chỉ nóng bằng một nửa. Có thể nâng điện áp cuộn lên khoảng 1,4 lần điện áp tem để motor nóng như định mức và lực mạnh hơn.
- Không cấp nguồn 24 V cho motor 6 dây ghi 5 V qua L298N như với driver băm dòng; dòng sẽ vượt nhiều lần định mức, cuộn và IC cùng nóng.
Đấu cả cuộn trên L298N còn có lợi là dòng nhỏ hơn, IC mát hơn, rất hợp với motor tháo máy in ghi 12–24 V điện trở lớn. Motor 6 dây điện trở nhỏ (dưới 5 Ω mỗi nửa cuộn) thì không nên dùng L298N vì gần như phải hạ nguồn xuống sát mức sụt áp của IC.
d. Đấu motor 6 dây với A4988, DRV8825, TMC2209
Các driver nhỏ dạng module cắm (pololu) có 4 chân ra 1A, 1B, 2A, 2B (A4988, TMC2209) hoặc A1, A2, B1, B2 (DRV8825). Cuộn thứ nhất nối 1A–1B (A1–A2), cuộn thứ hai nối 2A–2B (B1–B2). Vì dòng tối đa thực dùng của các module này khoảng 1–1,5 A khi không có quạt, motor 6 dây thường được đấu theo kiểu phù hợp với dòng:
- Motor dòng nửa cuộn 0,4–1 A: đấu nửa cuộn hoặc cả cuộn đều được, đặt dòng theo bảng ở mục 1.
- Motor dòng nửa cuộn 1,5–2 A: đấu cả cuộn để dòng đặt chỉ còn khoảng 1–1,4 A, vừa sức module.
- Motor dòng lớn hơn: chuyển lên TB6600, DM542.
Bảng nối motor 6 dây với module A4988, TMC2209
| Chân module | Đấu cả cuộn | Đấu nửa cuộn |
| 1A | A | A |
| 1B | A' | COM A |
| 2A | B | B |
| 2B | B' | COM B |
| VMOT, GND | Nguồn 12–24 V, tụ 100 µF sát chân | Như bên cạnh |
Cắm vào CNC Shield V3
Trên CNC Shield, mỗi trục có hàng 4 chân in nhãn 2B, 2A, 1A, 1B (thứ tự in có thể ngược lại tùy bản). Hai chân đầu là một cuộn, hai chân cuối là cuộn còn lại; hai chân ở giữa (2A, 1A) không cùng một cuộn. Với motor 6 dây đã bỏ hai dây chung, đầu cắm 4 chân xếp liên tiếp B', B, A, A' (hay A, A', B, B') đều khớp, vì mỗi cặp liền nhau là một cuộn. Nếu đầu cắm xếp xen kẽ A, B, A', B', phải đổi vị trí hai dây giữa trong vỏ cắm, nếu không motor chỉ rung.
Đặt dòng
Đặt dòng bằng biến trở Vref theo công thức của từng module; với TMC2209 qua UART có thể đặt trực tiếp giá trị RMS bằng phần mềm. Con số cần đặt lấy từ mục 1 (nửa cuộn = I, cả cuộn ≈ 0,7 × I). Chi tiết về STEP/DIR, vi bước, các chế độ của TMC nằm ở bài điều khiển động cơ bước lưỡng cực.
e. Đấu motor 6 dây với TB6600, DM542
TB6600 và DM542 có 4 cực ra A+, A−, B+, B− và đặt dòng bằng gạt DIP. Motor 6 dây size 57 và 86 tháo máy thường có dòng nửa cuộn 2–4 A, nên chọn kiểu đấu theo dải dòng của driver:
Bảng đấu và đặt dòng với TB6600, DM542
| Cực driver | Đấu cả cuộn | Đấu nửa cuộn |
| A+ | A | A |
| A− | A' | COM A |
| B+ | B | B |
| B− | B' | COM B |
| Dòng đặt bằng DIP | Khoảng 0,7 × dòng tem đơn cực | Bằng dòng tem đơn cực |
| Nguồn gợi ý | 24–36 V | 24–36 V |
Ví dụ cụ thể
Motor 6 dây size 57, tem ghi đơn cực 3 A, 1,2 Ω mỗi nửa cuộn:
- Đấu cả cuộn: dòng đặt khoảng 2,1 A. Trên DM542 chọn mức gần nhất không vượt; trên TB6600 chọn mức 2,0 A hoặc 2,2 A tùy bảng DIP in trên vỏ.
- Đấu nửa cuộn: dòng đặt 3 A, sát giới hạn thật của TB6600 bản thường, module sẽ nóng; DM542 chịu tốt hơn.
Bảng gạt DIP, tín hiệu chung anode, chung cathode của TB6600 đã có đủ ở bài mạch điều khiển động cơ bước TB6600. Với DM542, nhãn trên vỏ thường có hai cột dòng đỉnh (peak) và dòng hiệu dụng (RMS); chọn hàng có cột RMS gần với dòng cần đặt.
Dây chung để đâu trên driver công nghiệp
TB6600, DM542 không có cực dành cho dây chung. Hai dây không dùng phải bọc co nhiệt riêng từng dây, không bắt vào GND, V+ hay vỏ tủ, và nên cắt ngắn ngay tại hộp nối của motor.
f. Driver đơn cực công nghiệp và IC đơn cực có STEP/DIR
Trong máy dệt, máy in nhãn, máy đóng gói và máy văn phòng đời cũ của Nhật, motor 6 dây thường chạy bằng driver đơn cực có băm dòng. Loại driver này có 5 hoặc 6 cực ra: A, A', B, B' và một hoặc hai cực COM (nhiều nơi ghi là "+" hoặc "COM"). Khi thay motor cho máy đó, chỉ cần nối đúng sáu dây theo nhãn, không cần đổi sang lưỡng cực.
Các IC đơn cực có sẵn bộ tạo trình tự
- UCN5804: IC đơn cực có chân STEP, DIRECTION, chọn nửa bước và một pha, tự tạo trình tự cho 4 đầu ra; dòng khoảng 1,25 A mỗi kênh, nguồn tới 35 V. IC đã ngừng sản xuất nhưng vẫn gặp nhiều trong đồ án cũ.
- L297 kết hợp bốn transistor hoặc MOSFET: L297 tạo trình tự và băm dòng, có thể dùng cho cả motor đơn cực lẫn lưỡng cực.
- Các IC đơn cực băm dòng của Toshiba dòng TB67S14x và các module lai dày (thick-film) trong máy in, máy photo: nhận xung STEP/DIR, chạy được vi bước với motor 6 dây giữ nguyên kiểu đơn cực.
Lợi ích của nhóm này là giữ được cách đấu 6 dây nguyên bản nhưng vẫn điều khiển bằng hai tín hiệu STEP/DIR như driver hiện đại, đỡ việc viết trình tự trong code.
4. Code mẫu ngắn cho motor 6 dây
Không cần thư viện phức tạp để chạy thử motor 6 dây. Các đoạn dưới viết cho Arduino Uno, dùng chân D8–D11 cho mạch đơn cực và D2, D5 cho driver STEP/DIR.
Thư viện Stepper với ULN2003, MOSFET hoặc L298N
Thư viện Stepper có sẵn trong Arduino IDE gửi trình tự 1010, 0110, 0101, 1001 lên bốn chân theo thứ tự khai báo. Như vậy chân thứ nhất và thứ hai luôn ngược nhau, tức phải ứng với một cặp A, A' của cùng một cuộn.
| Cách đấu bốn đầu cuộn | Khai báo |
| D8 → A, D9 → A', D10 → B, D11 → B' (mạch tự làm, L298N IN1–IN4) | Stepper dongCo(200, 8, 9, 10, 11); |
| D8 → A, D9 → B, D10 → A', D11 → B' (jack module ULN2003 xếp xen kẽ) | Stepper dongCo(200, 8, 10, 9, 11); |
| Chạy thử | dongCo.setSpeed(30); dongCo.step(200); delay(1000); dongCo.step(-200); |
Số 200 là số bước mỗi vòng của motor 1,8°; motor 7,5° dùng 48, motor 15° dùng 24. Nếu motor quay một vòng đủ rồi đảo chiều đúng một vòng, thứ tự dây và khai báo đã khớp.
Driver STEP/DIR (A4988, TMC2209, TB6600, DM542)
- pinMode(2, OUTPUT) cho STEP, pinMode(5, OUTPUT) cho DIR.
- digitalWrite(5, HIGH) chọn chiều; lặp 200 × hệ số vi bước lần: digitalWrite(2, HIGH); delayMicroseconds(500); digitalWrite(2, LOW); delayMicroseconds(500).
- Đổi kiểu đấu nửa cuộn sang cả cuộn hay ngược lại không cần sửa code; chỉ cần đặt lại dòng trên driver.
Khi chuyển động cần tăng tốc mềm hoặc chạy nhiều trục, nên dùng thư viện AccelStepper (hỗ trợ cả chế độ 4 dây đơn cực FULL4WIRE, HALF4WIRE và chế độ DRIVER cho STEP/DIR) thay cho vòng lặp delay.
5. Chuyển một máy đang chạy mạch đơn cực sang driver lưỡng cực
Đây là việc hay gặp khi nâng cấp máy cũ: mạch đơn cực nguyên bản hỏng hoặc chạy yếu, muốn thay bằng driver lưỡng cực phổ thông để có vi bước, chạy êm và dễ mua linh kiện thay thế.
Các bước chuyển đổi
- Bước 1: Chụp ảnh và ghi lại cách đấu cũ trước khi tháo, đặc biệt là dây nào đang nối vào cực COM hoặc "+" của mạch cũ. Đó chính là COM A, COM B.
- Bước 2: Tách hai dây chung khỏi nhau. Ở nhiều máy, hai dây chung được hàn chung hoặc bấm chung một cos; phải cắt rời và bọc riêng từng dây.
- Bước 3: Chọn kiểu đấu: máy cần lực ở tốc độ thấp thì cả cuộn, máy cần tốc độ thì nửa cuộn. Nếu chưa chắc, đấu cả cuộn trước.
- Bước 4: Đặt dòng driver theo mục 1 trước khi cấp điện, không để mặc định mức cao nhất.
- Bước 5: Thay tín hiệu điều khiển: mạch cũ nhận 4 tín hiệu pha, driver mới nhận STEP/DIR. Bộ điều khiển cũ phát 4 pha thì cần thay phần phát xung (vi điều khiển, PLC, bộ phát xung) hoặc dùng mạch chuyển đổi.
- Bước 6: Chạy thử không tải ở tốc độ thấp, kiểm tra chiều quay, rồi mới lắp tải.
Những thứ thay đổi sau khi chuyển
| Hạng mục | Mạch đơn cực cũ | Driver lưỡng cực mới |
| Số dây motor dùng | 6 (hoặc 5 nếu gộp COM) | 4 |
| Tín hiệu điều khiển | 4 tín hiệu pha | STEP và DIR (thêm ENA nếu cần) |
| Số bước mỗi vòng | 200 hoặc 400 (nửa bước) | 200 × hệ số vi bước đặt trên DIP |
| Nguồn | Thường đúng điện áp tem | Cao hơn nhiều lần điện áp tem, driver tự hạn dòng |
| Chiều quay | Theo trình tự trong mạch cũ | Có thể bị ngược, đổi bằng DIR hoặc đảo A+ với A− |
Sau khi chuyển, nhớ cập nhật lại số bước trên mỗi milimét hoặc mỗi độ trong phần mềm điều khiển, vì hệ số vi bước làm số xung mỗi vòng thay đổi. Nếu máy cần chạy nhanh, chịu tải thay đổi và không được mất bước, có thể cân nhắc thay hẳn bằng motor servo thay vì chỉ thay driver.
6. Bảng lỗi thường gặp sau khi đấu motor 6 dây
Hầu hết lỗi đều quy về ba nhóm: lẫn dây giữa hai pha, dùng dây chung sai chỗ, và đặt dòng hoặc nguồn không khớp kiểu đấu.
| Hiện tượng | Nguyên nhân hay gặp | Cách xử lý |
| Motor rung tại chỗ, kêu tạch tạch | Lẫn một dây của pha A với pha B, hoặc khai báo sai thứ tự chân | Kiểm tra lại cặp A–A', B–B'; đổi chỗ hai dây giữa hoặc đổi thứ tự trong code |
| Motor có lực giữ nhưng chỉ quay được một chiều | Trình tự đổi hai cặp cùng lúc, hoặc một kênh không hoạt động | Đo từng kênh khi kích tĩnh, kiểm tra bảng trình tự |
| Motor quay ngược so với máy cũ | Đảo cực tính một cuộn khi đấu sang driver mới | Đổi A+ với A−, hoặc đảo mức DIR |
| Motor lực yếu, driver mới nhưng như không có lực | Lấy nhầm dây chung làm đầu cuộn khi đấu cả cuộn, chỉ chạy nửa cuộn với dòng đặt 0,7 × | Đo lại điện trở giữa hai dây đã đấu vào A+, A−: phải bằng 2 × R nửa cuộn |
| Driver báo lỗi hoặc tắt ngay khi bật | Hai dây chung nối chung với nhau hoặc chạm vào GND, vỏ | Tách và bọc riêng từng dây chung |
| Mạch ULN hoặc MOSFET nóng nhanh, chết sau vài phút | Chân COM chưa nối, MOSFET điện áp chịu quá thấp, thiếu diode dập | Nối COM về dương nguồn motor, đổi MOSFET 60–100 V, thêm diode |
| Motor nóng nhiều, chạy bình thường | Đặt dòng theo tem đơn cực trong khi đấu cả cuộn | Giảm dòng còn khoảng 0,7 × |
| L298N rất nóng, motor rung khi đứng yên | Nguồn cao so với điện trở cuộn, L298N không hạn dòng | Hạ nguồn theo mục 3c, hoặc chuyển sang đấu cả cuộn |
| Vi điều khiển tự khởi động lại khi motor bắt đầu quay | Nguồn chung, sụt áp, thiếu tụ | Tách nguồn logic, thêm tụ 470–1000 µF gần mạch công suất |
| Motor quay đúng nhưng hành trình sai tỉ lệ | Quên đổi số bước mỗi vòng sau khi đặt vi bước | Tính lại số xung mỗi vòng, mỗi milimét |
Khi nào không nên tự làm mạch đơn cực
Mạch tự lắp hợp cho học tập, mô hình và máy chậm. Máy chạy liên tục trong tủ điện nên dùng driver công nghiệp có bảo vệ quá dòng, quá nhiệt. Nếu chỉ cần trục quay đều, đổi tốc độ mà không cần định vị theo bước (băng tải nhỏ, máy khuấy, cuốn rèm), động cơ giảm tốc mini kèm bộ điều tốc thường bền và đơn giản hơn. Tổng quan các loại motor bước nằm ở trang động cơ bước.
7. Câu hỏi thường gặp về điều khiển động cơ bước 6 dây
- Trên CNC Shield, bốn dây của motor 6 dây cắm vào hàng chân 2B, 2A, 1A, 1B theo thứ tự nào? Hai chân 1A–1B là một cuộn, hai chân 2A–2B là cuộn còn lại. Khi đấu cả cuộn, cắm B', B vào 2B, 2A và A, A' vào 1A, 1B; hai dây chung bọc riêng, không cắm. Nếu đầu cắm của motor đang xếp xen kẽ A, B, A', B' thì phải đổi chỗ hai dây giữa trong vỏ cắm, nếu không motor chỉ rung.
- Mạch đơn cực đã chạy được motor 6 dây, đổi sang TB6600 có phải viết lại code không? Có. Mạch đơn cực nhận 4 tín hiệu pha theo trình tự, còn TB6600 nhận 2 tín hiệu STEP và DIR. Phần code tạo trình tự 4 pha phải thay bằng code phát xung STEP và đặt mức DIR, đồng thời tính lại số xung mỗi vòng theo vi bước đã chọn.
- Khai báo thư viện Stepper thế nào khi motor 6 dây đấu vào ULN2003 tự lắp? Nếu A, A', B, B' nối vào OUT1, OUT2, OUT3, OUT4 và IN1–IN4 nối D8–D11, khai báo Stepper(200, 8, 9, 10, 11). Nếu dây được xếp xen kẽ A, B, A', B' như jack của module bán sẵn, khai báo 8, 10, 9, 11. Nguyên tắc là hai chân khai báo đầu tiên phải ứng với hai đầu của cùng một cuộn.
- Dùng MOSFET nào cho mạch đơn cực motor 6 dây nguồn 24 V? Nên dùng MOSFET logic-level chịu 100 V như IRL540N hoặc IRL530N, vì đầu cuộn đang tắt trong motor đơn cực bị đẩy lên khoảng gấp đôi điện áp nguồn cộng gai nhọn. MOSFET 30 V hay 55 V dễ chập sau thời gian ngắn ở nguồn 24 V. Kèm theo mỗi kênh là một diode nhanh về dương nguồn.
- ESP32 kích trực tiếp MOSFET IRLZ44N để chạy motor 6 dây được không? Chạy được với dòng nhỏ, nhưng IRLZ44N chỉ được cam kết dẫn tốt từ khoảng 4–5 V ở cổng, nên ở 3,3 V MOSFET dẫn chưa hoàn toàn và nóng khi dòng trên 1 A. Nên dùng MOSFET có thông số điện trở dẫn ở 2,5 V, hoặc thêm một tầng đệm nâng điện áp cổng lên 10–12 V.
- Có dùng L298N với motor 6 dây ghi 5 V và nguồn 24 V như driver băm dòng được không? Không. L298N không hạn dòng nên dòng qua cuộn bằng điện áp chia điện trở; cấp 24 V cho cuộn định mức 5 V sẽ làm dòng vượt nhiều lần, motor và IC đều quá nhiệt. Với L298N phải chọn nguồn bằng điện áp tem cộng sụt áp của IC, hoặc chuyển sang driver băm dòng nếu muốn dùng nguồn cao.
- Đấu cả cuộn vào L298N thì motor yếu hơn hay mạnh hơn nửa cuộn? Nếu giữ nguyên điện áp tem, đấu cả cuộn cho lực giữ gần tương đương nửa cuộn nhưng dòng và nhiệt chỉ còn một nửa. Muốn mạnh hơn, có thể nâng điện áp cuộn lên khoảng 1,4 lần điện áp tem để motor nóng bằng định mức. Đổi lại dòng lên chậm hơn, nên tốc độ cao sẽ kém hơn đấu nửa cuộn.
- Sau khi chuyển sang driver lưỡng cực, motor quay ngược chiều so với máy cũ, sửa thế nào? Đảo hai dây của một cuộn (A+ với A−) trên cầu đấu driver, hoặc đảo mức tín hiệu DIR trong bộ điều khiển. Không đảo cả hai cuộn cùng lúc, vì như vậy chiều quay lại trở về như cũ.
- Mạch phát xung có sẵn chân STEP/DIR mà motor 6 dây vẫn muốn chạy kiểu đơn cực thì dùng IC gì? Có thể dùng IC đơn cực có bộ tạo trình tự như UCN5804 (trong các đồ án cũ), cặp L297 với bốn MOSFET, hoặc IC đơn cực băm dòng dòng TB67S14x của Toshiba. Các IC này nhận STEP/DIR và tự xuất 4 tín hiệu pha cho A, A', B, B'.
- PLC đầu ra transistor có kéo trực tiếp motor 6 dây mà không qua driver được không? Với motor rất nhỏ thì về nguyên tắc được, vì đầu ra transistor NPN của PLC đóng ngắt xuống mass giống một kênh ULN, dây chung nối +24 V. Tuy vậy đầu ra PLC thường chỉ chịu vài trăm mA, không có diode dập đủ khỏe cho tải cảm và chỉ chạy được bước đủ; trong thực tế nên đặt driver giữa PLC và motor.
- Đo giữa A+ và A− trên driver ra đúng điện trở nửa cuộn dù đã định đấu cả cuộn, nghĩa là gì? Nghĩa là một trong hai dây đang đấu vào driver là dây chung chứ không phải đầu cuộn. Motor vẫn quay nhưng chỉ dùng nửa cuộn trong khi dòng đã đặt theo kiểu cả cuộn, nên lực yếu rõ rệt. Đo lại ba dây của pha đó, lấy hai dây có điện trở lớn nhất làm A+ và A−.






