Động cơ bước DRV8825: cách tính Vref, vi bước 1/32, decay và lỗi mất bước
Động cơ bước DRV8825 là cách gọi phổ biến của hệ gồm một động cơ bước lưỡng cực cỡ nhỏ và module driver DRV8825 – mạch điều khiển dạng StepStick dùng IC DRV8825 của Texas Instruments. So với A4988 cùng kích thước, driver DRV8825 nhận nguồn động cơ tới 45 V, chịu dòng cao hơn, chia được tới 1/32 vi bước và có ngõ báo lỗi FAULT, nên thường được chọn khi máy in 3D, máy CNC mini hay máy khắc laser cần thêm tốc độ và mô-men mà không phải đổi bo mạch.
Tuy vậy, DRV8825 có những đặc điểm rất riêng mà người quen A4988 hay bỏ qua: công thức Vref khác, bảng chọn vi bước khác, xung STEP phải dài hơn, động cơ điện cảm thấp dễ chạy giật và mất vi bước ở tốc độ chậm, còn chân ở vị trí VDD lại là ngõ báo lỗi. Các mục dưới đây đi thẳng vào những điểm riêng đó theo số liệu datasheet, giúp người chọn driver, người lắp máy và người sửa chữa dùng DRV8825 đúng chỗ và biết khi nào nên đổi sang giải pháp khác.
Nội dung
- 1. Driver DRV8825 là gì và khác A4988 ở những điểm nào
- 2. Chân FAULT, SLEEP và những thay đổi khi cắm DRV8825 vào chỗ A4988
- 3. Chọn vi bước 1/32 bằng MODE0, MODE1, MODE2
- 4. Cách tính Vref cho driver DRV8825
- 5. Dòng thực tế, nhiệt và biên an toàn của nguồn 45 V
- 6. Mixed decay và lỗi mất vi bước, ồn ở tốc độ thấp
- 7. Chân FAULT và các chế độ bảo vệ của DRV8825
- 8. Thời gian xung STEP tối thiểu và cấu hình firmware
- 9. DRV8825 chính hãng, HR8825 và module bản sao
- 10. So sánh DRV8825 với A4988, DRV8834 và TMC2209
- 11. Khi nào nên bỏ DRV8825 và chuyển sang giải pháp khác
- 12. Câu hỏi thường gặp về động cơ bước DRV8825
- 13. Kết luận
1. Driver DRV8825 là gì và khác A4988 ở những điểm nào
DRV8825 là IC điều khiển động cơ bước lưỡng cực của Texas Instruments, đóng vỏ HTSSOP 28 chân có tấm tản nhiệt (PowerPAD) ở mặt dưới. Bên trong IC có bộ dịch (indexer) biến xung STEP và DIR thành dòng hình sin cho hai cuộn dây, hai cầu H dùng MOSFET kênh N, mạch băm dòng với ba chế độ decay chọn được, bộ ổn áp 3,3 V nội và các mạch bảo vệ. Người dùng hầu như không hàn IC trực tiếp mà dùng module: bản gốc do Pololu thiết kế (DRV8825 carrier) và rất nhiều bản sao theo chuẩn StepStick, cùng kích thước và cùng hàng chân với module A4988.
Thông số chính của IC DRV8825
| Thông số | Giá trị theo datasheet | Ý nghĩa khi dùng |
| Điện áp nguồn động cơ VM | 8,2–45 V (tuyệt đối 47 V) | Chạy được nguồn 12, 24, 36 V; không chạy dưới khoảng 8 V |
| Dòng tối đa mỗi cuộn | 2,5 A đỉnh (1,75 A hiệu dụng) ở 24 V, 25 °C | Chỉ đạt khi mạch in tản nhiệt rất tốt |
| Điện trở khóa MOSFET | 0,2 Ω mỗi khóa ở 25 °C, tối đa 0,32 Ω ở 85 °C | Mỗi cuộn đi qua hai khóa, nóng lên thì tổn hao tăng |
| Vi bước tối đa | 1/32 | 6.400 vi bước/vòng với động cơ 1,8° |
| Tần số STEP tối đa | 250 kHz | Giới hạn trên của tốc độ xung |
| Độ rộng xung STEP | Tối thiểu 1,9 µs mức cao và 1,9 µs mức thấp | Dài gần gấp đôi yêu cầu của A4988 |
| Ngưỡng logic | Mức thấp ≤ 0,7 V, mức cao ≥ 2,2 V, tối đa 5,25 V | Nhận trực tiếp tín hiệu 3,3 V và 5 V |
| Nguồn logic | Bộ ổn áp 3,3 V tích hợp (V3P3OUT) | Không cần cấp nguồn logic riêng |
| Bảo vệ | Quá dòng, quá nhiệt, thấp áp; ngõ ra báo lỗi nFAULT | Có tín hiệu báo lỗi để vi điều khiển đọc |
- Con số 2,5 A chỉ là khả năng của IC trên mạch in thiết kế tối ưu; module StepStick thực tế chạy bền khoảng 1,5 A mỗi cuộn khi không có tản nhiệt và quạt.
- Module dùng điện trở sense 0,1 Ω nên trần dòng thực tế là khoảng 2,2 A dù vặn biến trở lên cao hơn.
- 45 V là mức làm việc tối đa, không phải mức nên dùng thường xuyên; xem thêm mục 5 về biên an toàn nguồn.
Thứ tự chân cơ bản, cách nhận cặp cuộn dây, cách kiểm tra module hỏng, lý do không rút giắc động cơ khi có điện và nguyên tắc tản nhiệt qua mạch in dùng chung cho mọi driver StepStick, đã có ở bài động cơ bước A4988; phần dưới chỉ nói những gì DRV8825 làm khác đi.
2. Chân FAULT, SLEEP và những thay đổi khi cắm DRV8825 vào chỗ A4988
Module DRV8825 cắm vừa vào RAMPS, CNC Shield và mainboard máy in 3D đời cũ thiết kế cho A4988, nhưng có ba khác biệt về chân mà người lắp máy cần biết.
Chân ở vị trí VDD là ngõ ra FAULT
Trên A4988, chân thứ hai bên phải là VDD (nguồn logic). DRV8825 tự tạo nguồn logic 3,3 V từ nguồn động cơ nên không cần chân này; vị trí đó được dùng cho ngõ ra nFAULT dạng cực máng hở, xuống mức thấp khi IC ngắt vì quá dòng hoặc quá nhiệt. Module Pololu đặt điện trở 1,5 kΩ nối tiếp ở chân FAULT, nên khi cắm vào board mẹ vốn cấp 5 V hoặc 3,3 V vào vị trí VDD, chân FAULT không bị chập khi kéo xuống. Vì toàn bộ mạch logic lấy điện từ VMOT, driver chỉ hoạt động khi đã có nguồn động cơ.
SLEEP không có điện trở kéo lên bên trong
Chân nSLEEP của DRV8825 có điện trở kéo xuống khoảng 1 MΩ bên trong IC, tức là để hở thì driver ngủ. Module Pololu nối SLEEP với FAULT qua điện trở 10 kΩ, nhờ vậy khi board mẹ cấp mức cao vào vị trí VDD cũ, SLEEP cũng được kéo lên. Nếu tự thiết kế mạch, cách đơn giản nhất vẫn là nối thẳng SLEEP với RESET rồi đưa lên mức cao như với A4988. Bản Pololu đời đầu (md20a) và một số bản sao không có điện trở 10 kΩ này.
Biến trở nằm ở phía khác, cắm dễ ngược hơn
Biến trở chỉnh dòng của module DRV8825 nằm gần chân EN, trong khi trên A4988 biến trở nằm gần chân DIR. Người quen nhìn vị trí biến trở để định hướng module rất dễ cắm ngược DRV8825 – lỗi làm cháy module ngay khi cấp điện. Luôn so chân EN của module với chân EN in trên board mẹ, không dựa vào vị trí biến trở.
Mức logic 3,3 V dùng trực tiếp được
DRV8825 coi mức cao là từ 2,2 V trở lên và chịu tới 5,25 V, nên nhận trực tiếp tín hiệu từ ESP32, STM32, Raspberry Pi lẫn Arduino 5 V, không cần mạch chuyển mức.
3. Chọn vi bước 1/32 bằng MODE0, MODE1, MODE2
DRV8825 chia mỗi bước đủ thành tối đa 32 vi bước. Ba chân MODE0–MODE2 (trên module in là M0, M1, M2, cùng vị trí MS1, MS2, MS3 của A4988) đều có điện trở kéo xuống khoảng 100 kΩ, để hở thì driver chạy full step.
| Chế độ | Vi bước | MODE0 | MODE1 | MODE2 |
| Full step | 1 | Thấp | Thấp | Thấp |
| Half step | 1/2 | Cao | Thấp | Thấp |
| 1/4 bước | 1/4 | Thấp | Cao | Thấp |
| 1/8 bước | 1/8 | Cao | Cao | Thấp |
| 1/16 bước | 1/16 | Thấp | Thấp | Cao |
| 1/32 bước | 1/32 | Cao | Thấp | Cao |
| 1/32 bước | 1/32 | Thấp | Cao | Cao |
| 1/32 bước | 1/32 | Cao | Cao | Cao |
- Năm tổ hợp đầu giống hệt A4988; ba tổ hợp có MODE2 ở mức cao kèm thêm MODE0 hoặc MODE1 đều cho 1/32.
- Cắm đủ ba jumper trên CNC Shield hay RAMPS: A4988 chạy 1/16, DRV8825 chạy 1/32. Thay driver mà quên sửa firmware thì máy chỉ đi được một nửa quãng đường lệnh.
- Ở full step, cả hai cuộn mang khoảng 71% dòng giới hạn, đây cũng là vị trí Home (góc điện 45°) mà IC trở về khi bật nguồn hoặc khi RESET.
1/32 tốn xung gấp đôi 1/16
Với động cơ 1,8°, chạy 1/32 cần 6.400 xung cho một vòng. Đây là điểm hay bị bỏ qua khi nâng cấp máy dùng vi điều khiển 8 bit: GRBL trên Arduino Uno phát được khoảng 30 kHz, tương đương chỉ khoảng 280 vòng/phút ở 1/32, trong khi ở 1/16 đạt khoảng 560 vòng/phút. Với dây đai GT2 puly 20 răng (40 mm mỗi vòng), mức 280 vòng/phút chỉ cho khoảng 187 mm/s. Nếu máy cần tốc độ cao mà bo mạch yếu, chạy DRV8825 ở 1/16 thường hợp lý hơn ép 1/32. Cách tính số bước trên mm cho vít me và dây đai có ở bài động cơ bước Arduino.
4. Cách tính Vref cho driver DRV8825
DRV8825 đo dòng qua điện trở sense và khuếch đại 5 lần trước khi so với điện áp tham chiếu. Công thức theo datasheet:
Imax = Vref / (5 × Rs)
Module DRV8825 thông dụng (Pololu và phần lớn bản sao) dùng điện trở sense 0,100 Ω, nên công thức rút gọn rất dễ nhớ: Imax = 2 × Vref, hay Vref = Imax / 2. Muốn giới hạn 1 A thì đặt Vref = 0,5 V. Đây là khác biệt lớn nhất khi chuyển từ A4988 sang: cùng một giá trị Vref, dòng thực của DRV8825 thường cao hơn A4988 dùng điện trở 0,1 Ω tới 2,5 lần (A4988 chia Vref cho 8, DRV8825 chia cho 5). Giữ nguyên Vref cũ của A4988 khi thay sang DRV8825 là cách nhanh nhất để động cơ và driver quá nóng.
Bảng tra Vref cho module DRV8825 điện trở sense 0,1 Ω
| Dòng giới hạn mong muốn | Vref cần đặt | Dòng mỗi cuộn đo được ở full step | Phù hợp với |
| 0,5 A | 0,25 V | ≈ 0,35 A | Size 35, size 42 thân ngắn |
| 0,8 A | 0,40 V | ≈ 0,57 A | Trục đùn, trục phụ tải nhẹ |
| 1,0 A | 0,50 V | ≈ 0,71 A | Size 42 chạy mát, tải vừa |
| 1,2 A | 0,60 V | ≈ 0,85 A | Size 42 phổ biến, không cần quạt |
| 1,5 A | 0,75 V | ≈ 1,06 A | Trần khi không tản nhiệt |
| 1,8 A | 0,90 V | ≈ 1,27 A | Cần tản nhiệt và quạt |
| 2,2 A | 1,10 V | ≈ 1,56 A | Trần của module |
- Vref ứng với dòng đỉnh; ở full step mỗi cuộn chỉ mang khoảng 70% dòng giới hạn, nên số đo bằng ampe kế nối tiếp cuộn dây sẽ thấp hơn giá trị đặt.
- Không đặt dòng cao hơn dòng định mức trên tem động cơ; thiếu mô-men thì kiểm tra cơ khí và điện áp nguồn trước khi tăng Vref.
- Kiểm tra mã điện trở sense trên module (R100 = 0,1 Ω); nếu là giá trị khác, phải tính lại theo công thức đầy đủ.
Đo Vref phải cấp nguồn VMOT
Vref của module DRV8825 lấy từ bộ ổn áp 3,3 V bên trong IC qua biến trở, mà bộ ổn áp này chỉ hoạt động khi có nguồn VMOT. Chỉ cắm cáp USB cho Arduino hay mainboard thì đo Vref luôn ra 0 V hoặc vài chục mV, dù module hoàn toàn bình thường. Cách đo đúng: cấp nguồn động cơ (12–24 V), chưa cần nối động cơ, que đen chạm GND, que đỏ chạm thân biến trở hoặc lỗ via "ref" ở mặt dưới module Pololu. Ưu điểm đi kèm là Vref không đổi khi đổi nguồn logic từ 5 V sang 3,3 V, khác với A4988.
Dòng nhỏ dưới 0,5 A kém chính xác
Datasheet khuyến nghị Vref trong khoảng 1–3,5 V để dòng điều khiển chính xác; dưới 1 V IC vẫn chạy nhưng sai số lớn hơn. Với điện trở 0,1 Ω, gần như mọi mức dòng thông dụng đều rơi vào vùng dưới 1 V, và sai lệch thể hiện rõ nhất ở động cơ dòng nhỏ 0,3–0,5 A (Vref chỉ 0,15–0,25 V). Khi cần chính xác dòng cho động cơ nhỏ, nên kiểm tra lại bằng ampe kế nối tiếp cuộn dây thay vì tin hoàn toàn vào số đo Vref.

5. Dòng thực tế, nhiệt và biên an toàn của nguồn 45 V
DRV8825 chạy được bao nhiêu ampe trên module thật
Các khóa MOSFET của DRV8825 có điện trở dẫn khoảng 0,2 Ω ở 25 °C, thấp hơn A4988, nên cùng mức dòng thì DRV8825 ít nóng hơn. Ước tính tổn hao dẫn ở chế độ vi bước (dòng hiệu dụng xấp xỉ dòng đỉnh chia 1,41, mỗi cuộn đi qua hai khóa):
- Đặt 1,5 A đỉnh: dòng hiệu dụng khoảng 1,06 A, tổn hao khoảng 2 × 1,06² × 0,4 ≈ 0,9 W khi chip còn mát, lên tới khoảng 1,4 W khi chip nóng 85 °C (0,32 Ω mỗi khóa).
- Đặt 2,2 A đỉnh: dòng hiệu dụng khoảng 1,56 A, tổn hao khoảng 1,9 W lúc mát và có thể vượt 3 W khi nóng – mức chắc chắn cần tản nhiệt và quạt thổi trực tiếp.
Thực nghiệm trên module cho kết quả tương ứng: khoảng 1,5 A mỗi cuộn không cần tản nhiệt, tới 2,2 A khi làm mát tốt. Ở dòng cao, mạch in có thể nóng tới mức gây bỏng tay trước khi IC chạm ngưỡng ngắt nhiệt, vì vậy đừng dùng cảm giác tay để đánh giá driver còn chịu được hay không.
Nguồn 45 V không có nghĩa nên cấp 45 V
Biên điện áp cao là lý do chính để chọn DRV8825: nguồn cao giúp dòng tăng nhanh trong cuộn dây, nên mô-men ở tốc độ cao giữ được lâu hơn. Tuy nhiên mức tuyệt đối của IC chỉ là 47 V, chênh 2 V so với mức làm việc, và datasheet còn giới hạn tốc độ tăng áp nguồn khoảng 1 V/µs. Trong thực tế:
- Nguồn 24 V là lựa chọn an toàn và phổ biến nhất; 36 V dùng được khi có tụ hóa tốt sát module và dây nguồn ngắn.
- Không dùng nguồn 42–45 V: xung LC khi cắm nguồn nóng, năng lượng trả về khi động cơ giảm tốc gấp và dao động của nguồn tổ ong dễ đẩy áp vượt 47 V.
- Tụ hóa sát chân VMOT tối thiểu 47 µF, điện áp định mức 50 V trở lên khi dùng nguồn 36 V.
- Dưới khoảng 7,8–8,2 V, mạch bảo vệ thấp áp tắt driver; DRV8825 không dùng được với nguồn 5 V hay pin 2 cell.
Ảnh hưởng của điện áp nguồn tới đường cong mô-men – tốc độ, cách chọn công suất bộ nguồn được phân tích kỹ ở bài động cơ bước 24V.
6. Mixed decay và lỗi mất vi bước, ồn ở tốc độ thấp
Đây là vấn đề nổi tiếng nhất của driver DRV8825 trên các diễn đàn máy in 3D và CNC: động cơ chạy chậm thì giật cục, kêu rè, bề mặt bản in có vân sọc đều đặn (thường gọi là "da cá hồi" – salmon skin, hoặc vân moiré), dù cơ khí không có lỗi và đổi sang A4988 hay TMC2209 thì hết.
Cơ chế băm dòng của DRV8825
DRV8825 băm dòng ở khoảng 30 kHz. Đầu mỗi chu kỳ, cầu H được bật trong một thời gian chắn (blanking) cố định khoảng 3,75 µs, trong thời gian đó IC không đọc dòng. Sau khi dòng chạm ngưỡng, IC cho dòng giảm theo một trong ba chế độ chọn bằng chân DECAY:
- DECAY nối GND: slow decay – dòng giảm chậm, ít gợn, nhưng bám kém khi dòng cần giảm nhanh.
- DECAY để hở: mixed decay – bắt đầu bằng fast decay rồi chuyển sang slow decay ở phần cuối chu kỳ. Khi dòng đang tăng, IC chỉ dùng slow decay.
- DECAY lên mức cao: fast decay – dòng giảm nhanh, bám tốt nhưng gợn dòng lớn hơn, nghe tiếng rít tần số cao.
Module Pololu và gần như mọi bản sao đều để chân DECAY hở, tức là cố định ở mixed decay.
Vì sao động cơ điện cảm thấp bị mất vi bước
Động cơ size 42 dùng cho máy in 3D thường có dòng lớn (1,5–2 A), điện trở cuộn nhỏ, điện cảm chỉ vài mH và điện áp định danh dưới khoảng 3 V. Với nguồn 24 V, dòng trong cuộn dây tăng rất nhanh: chỉ riêng 3,75 µs chắn đầu chu kỳ đã đủ đẩy dòng vượt mức của vi bước hiện tại. Ở những vi bước mà dòng cần nhỏ (gần điểm đổi chiều dòng của mỗi cuộn), IC không thể giữ dòng thấp như yêu cầu, nhiều vi bước liền nhau có cùng một mức dòng thực, rồi rô-to nhảy dồn một lần. Kết quả là chuyển động không đều trong mỗi bước đủ, lặp lại theo chu kỳ 4 bước đủ – đúng dạng vân sọc đều trên bề mặt bản in. Ở tốc độ cao, sức điện động ngược làm dòng tăng chậm lại nên lỗi chỉ thấy rõ khi chạy chậm.
Chip DRV8825 không rõ nguồn gốc còn làm vấn đề nặng hơn: đã có đo đạc cho thấy module dùng chip in logo TI mờ, nghi là hàng nhái, băm dòng ở khoảng 16 kHz thay vì 30 kHz, mỗi chu kỳ dòng tăng thêm vài trăm mA, động cơ nóng hơn hẳn so với mức dòng đặt.

Cách khắc phục theo thứ tự nên thử
- Hạ nguồn từ 24 V xuống 12 V: dòng tăng chậm hơn trong thời gian chắn, mất vi bước giảm rõ. Đổi lại mô-men ở tốc độ cao giảm, nên chỉ hợp với máy chạy chậm.
- Dùng động cơ điện cảm cao hơn: cùng size nhưng dòng định mức thấp hơn (điện áp định danh cao hơn, điện cảm trên 10 mH) ít bị hiện tượng này.
- Ép DRV8825 sang fast decay: chân DECAY (chân 19 của IC) không đưa ra hàng chân module; muốn chuyển phải hàn dây từ chân 19 sang nguồn 3,3 V nội (chân 15, V3P3OUT). Chân IC rất nhỏ, dễ chập; đổi lại bề mặt in sạch hơn nhưng động cơ rít hơn.
- Lắp thêm diode nối tiếp cuộn dây (module "smoother"): mỗi cuộn đi qua cụm diode, sụt áp của diode giúp dòng giảm nhanh hơn trong pha hồi tiếp. Cách này giảm vân sọc nhưng thêm tổn hao và điểm nối.
- Đổi driver: nếu máy cần chạy êm ở tốc độ thấp, TMC2208/TMC2209 xử lý triệt để hơn mọi cách độ trên DRV8825.
Với máy in 3D, triệu chứng vân sọc do driver cần phân biệt với lệch lớp, ribbing do trục Z và các lỗi cơ khí khác; cách nhận diện và chọn động cơ cho từng trục có ở bài động cơ bước cho máy in 3D.
7. Chân FAULT và các chế độ bảo vệ của DRV8825
DRV8825 đưa trạng thái lỗi ra chân nFAULT, giúp phân biệt driver đang ngắt bảo vệ với động cơ mất bước do thiếu lực.
| Sự cố | Ngưỡng kích hoạt | Hành vi của IC | Cách phục hồi |
| Quá dòng (chập ngõ ra, chạm vỏ) | Khoảng 3 A, kéo dài quá 3 µs | Tắt toàn bộ cầu H, nFAULT xuống thấp, giữ trạng thái khóa | Kéo RESET xuống rồi lên, hoặc tắt hẳn nguồn VM rồi bật lại |
| Quá nhiệt | Nhiệt độ chip 150–180 °C (điển hình 160 °C) | Tắt cầu H, nFAULT xuống thấp | Tự chạy lại khi chip nguội |
| Thấp áp nguồn VM | VM dưới khoảng 7,8–8,2 V | Tắt mạch, đưa bộ dịch về trạng thái ban đầu | Tự chạy lại khi VM vượt ngưỡng; vị trí vi bước bị reset |
- Quá dòng là trạng thái khóa: động cơ đứng hẳn, không tự chạy lại cho đến khi RESET hoặc tắt nguồn VM. Nếu trục "chết" giữa chừng và chỉ sống lại sau khi tắt mở máy, nghi ngờ đầu tiên là dây động cơ bị dập, chạm khung.
- Quá nhiệt tự phục hồi nên biểu hiện là động cơ nhả lực vài giây rồi chạy tiếp, lặp đi lặp lại khi máy chạy lâu.
- Thấp áp đưa bộ dịch về Home; nguồn sụt thoáng qua khi nhiều động cơ cùng tăng tốc cũng làm lệch vị trí dù không thấy driver tắt.
Đọc chân FAULT bằng vi điều khiển
nFAULT là ngõ ra cực máng hở, chỉ kéo xuống, không tự tạo mức cao. Trên module Pololu, chân này nối qua 1,5 kΩ ra hàng chân và qua 10 kΩ sang SLEEP. Khi nối với vi điều khiển, bật điện trở kéo lên của chân vào (hoặc thêm 10 kΩ lên nguồn logic), đọc mức thấp là có lỗi. Trên RAMPS, CNC Shield, vị trí này nối với nguồn logic nên tín hiệu FAULT không được dùng; muốn tận dụng phải tự đi dây riêng.
Chân FAULT chỉ báo quá dòng, quá nhiệt; nó không phát hiện được rô-to trượt bước. Muốn biết động cơ có đi đúng vị trí hay không vẫn cần encoder, nội dung này có ở bài động cơ bước có encoder.
8. Thời gian xung STEP tối thiểu và cấu hình firmware
DRV8825 yêu cầu chặt hơn A4988 về thời gian của tín hiệu điều khiển:
- Xung STEP: mức cao tối thiểu 1,9 µs, mức thấp tối thiểu 1,9 µs; tần số tối đa 250 kHz.
- DIR và MODE0–MODE2: phải ổn định ít nhất 650 ns trước sườn lên của STEP và giữ thêm 650 ns sau đó.
- Sau khi đưa SLEEP lên cao: chờ tối thiểu 1,7 ms cho bơm điện tích ổn định rồi mới phát xung.
Vi điều khiển nhanh (ESP32, STM32, RP2040) có thể tạo xung chỉ 1 µs hoặc ngắn hơn: A4988 vẫn nhận, còn DRV8825 bỏ sót xung ngẫu nhiên, biểu hiện như mất bước dù động cơ còn dư lực. Thư viện AccelStepper mặc định độ rộng xung 1 µs, nên khai báo thêm:
stepper.setMinPulseWidth(3); // µs, dư an toàn cho DRV8825
Trên firmware máy in 3D, khai báo đúng loại driver DRV8825 cho từng trục để firmware tự áp thời gian xung phù hợp; Klipper mặc định độ rộng xung 2 µs cho driver không phải dòng TMC. GRBL có tham số độ rộng xung STEP mặc định 10 µs nên không bị ảnh hưởng.
9. DRV8825 chính hãng, HR8825 và module bản sao
Module DRV8825 giá rẻ trên thị trường phần lớn là bản sao theo thiết kế StepStick, thường gặp mạch màu tím, đỏ hoặc xanh. Chip trên module có ba khả năng: chip TI thật, chip in logo TI nhưng không rõ nguồn gốc, và chip thay thế ghi tên khác như HR8825.
HR8825 là gì
HR8825 là IC của nhà sản xuất Trung Quốc, được công bố tương thích chân và chức năng với DRV8825 (nguồn tới 45 V, vi bước 1/32, cùng cấu trúc chân MODE, DECAY, FAULT). Trong sử dụng thông thường, module HR8825 dùng chung công thức Vref và bảng vi bước với DRV8825. Tuy nhiên đặc tính băm dòng, ngưỡng bảo vệ và khả năng chịu nhiệt không bảo đảm giống hệt; vì vậy với module HR8825, nên đo dòng thực theo mục 4 thay vì tin hoàn toàn vào công thức.
Dấu hiệu nên kiểm tra kỹ ở module bản sao
- Logo và chữ in trên chip mờ, nhòe, sai font so với chip TI; lô module có tần số băm khác thường (động cơ phát tiếng rít trầm hơn module khác cùng cấu hình).
- Điện trở sense không phải R100: phải tính lại Vref.
- Không có tản nhiệt kèm theo, hoặc tản nhiệt quá cao chạm biến trở.
Cách kiểm tra đáng tin nhất vẫn là đo dòng thực ở full step như mục 4.
10. So sánh DRV8825 với A4988, DRV8834 và TMC2209
Bốn driver dưới đây cùng kích thước StepStick, cắm lẫn được trên phần lớn board.
| Driver | Điện áp nguồn động cơ | Dòng thực tế mỗi cuộn trên module | Vi bước | Điểm mạnh, điểm yếu |
| A4988 | 8–35 V | ≈ 1 A không tản nhiệt | 1/16 | Rẻ, dễ dùng; ồn, nguồn trần 35 V |
| DRV8825 | 8,2–45 V | ≈ 1,5 A không tản nhiệt, 2,2 A có quạt | 1/32 | Dòng và áp cao hơn A4988; dễ mất vi bước với động cơ điện cảm thấp |
| DRV8834 | 2,5–10,8 V | ≈ 1,5 A, đỉnh khoảng 2 A | 1/32 | Chạy nguồn pin, nguồn thấp; không dùng được 12 V |
| TMC2209 | 4,75–29 V | ≈ 2 A hiệu dụng (đỉnh 2,8 A) khi tản nhiệt tốt | 1/256 nội suy | Rất êm, cấu hình qua UART, dò gốc không công tắc; nguồn trần thấp hơn DRV8825 |
- Dòng thực tế là mức chạy bền trên module thông dụng, không phải con số tối đa của IC.
- DRV8834 cùng công thức Vref = Imax / 2 nhưng bảng vi bước khác hẳn; TMC2209 có nhiều bản module với cách cấu hình khác nhau, phải đọc đúng tài liệu bản đang dùng.
DRV8825 hay A4988
Với động cơ size 42 dòng 1,2–1,7 A, DRV8825 cho thêm biên dòng và cho phép nguồn 36 V, nên hợp với trục cần tốc độ cao hoặc tải nặng hơn. Nếu máy chạy chậm, cần bề mặt đẹp và động cơ điện cảm thấp, A4988 đôi khi lại cho kết quả mượt hơn DRV8825 ở cấu hình mặc định.
DRV8825 hay DRV8834
DRV8834 dành cho nguồn 2,5–10,8 V (pin, nguồn 5 V); từ 12 V trở lên dùng DRV8825, dưới 8,2 V thì DRV8825 không chạy.
DRV8825 hay TMC2209
TMC2209 êm hơn hẳn nhờ StealthChop và nội suy 1/256, chỉnh dòng bằng phần mềm qua UART; đổi lại nguồn tối đa chỉ 29 V và giá cao hơn. DRV8825 vẫn hợp khi cần nguồn 36 V cho tốc độ cao hoặc khi board không hỗ trợ UART.
11. Khi nào nên bỏ DRV8825 và chuyển sang giải pháp khác
DRV8825 hợp nhất với động cơ size 28–42, dòng đặt khoảng 0,5–1,8 A, nguồn 12–36 V, tải ổn định. Nên chuyển sang giải pháp khác trong các trường hợp:
- Động cơ size 57 trở lên, dòng 2,8–4,2 A: DRV8825 không đủ dòng dù có quạt. Cần driver rời công nghiệp kiểu mạch điều khiển động cơ bước TB6600 hoặc các driver 4–8 A dùng nguồn 36–80 V.
- Không chấp nhận mất bước, tải thay đổi liên tục: dùng động cơ bước vòng kín hoặc motor servo có encoder phản hồi; với trục máy công nghiệp cỡ vừa, motor servo 400W là mức thay thế thường gặp cho hệ động cơ bước size 57.
Video dưới đây cho thấy động cơ bước lai cỡ lớn chạy thực tế với driver công nghiệp rời – loại hệ truyền động cần dùng khi tải đã vượt khả năng của module DRV8825.
12. Câu hỏi thường gặp về động cơ bước DRV8825
- Driver DRV8825 chạy được động cơ bước 2,5 A không? IC có khả năng 2,5 A mỗi cuộn trong điều kiện tản nhiệt lý tưởng, nhưng module StepStick dùng điện trở sense 0,1 Ω chỉ đạt khoảng 2,2 A và cần tản nhiệt cùng quạt. Với động cơ 2,5 A, đặt DRV8825 khoảng 1,5–1,8 A nếu mô-men vẫn đủ; nếu cần đúng 2,5 A thì nên dùng driver rời dòng lớn hơn.
- Vì sao thay A4988 bằng DRV8825 thì máy chỉ chạy được nửa quãng đường? Cùng ba jumper, DRV8825 chạy 1/32 thay vì 1/16. Nhân đôi số bước trên mm trong firmware, hoặc bỏ jumper MODE0 để về 1/16.
- Cấp nguồn 36 V cho DRV8825 có an toàn không? Được, nếu dây nguồn ngắn, có tụ hóa 47 µF loại 50 V trở lên sát chân VMOT và không cắm nguồn nóng. Từ 42 V trở lên thì biên an toàn so với mức tuyệt đối 47 V quá mỏng.
- Vì sao đo Vref DRV8825 chỉ thấy 0 V dù đã cắm USB vào Arduino? Vref lấy từ bộ ổn áp nội chỉ chạy khi có nguồn VMOT; cấp nguồn động cơ rồi đo lại.
- DRV8825 có dùng trực tiếp với ESP32 hoặc Raspberry Pi 3,3 V không? Có, tín hiệu 3,3 V vượt ngưỡng 2,2 V nên không cần chuyển mức; chỉ cần xung STEP dài từ 1,9 µs.
- Động cơ bước dòng 0,4 A có nên dùng DRV8825 không? Dùng được, đặt Vref khoảng 0,2 V, nhưng ở mức này độ chính xác điều khiển dòng thấp hơn và biến trở rất nhạy. Nên đo dòng thực nối tiếp cuộn dây để kiểm tra; nếu động cơ nhỏ dùng nguồn dưới 10 V, DRV8834 là lựa chọn hợp hơn.
- DRV8825 có phát hiện được động cơ bị mất bước không? Không. Driver không biết rô-to đang ở đâu; muốn phát hiện mất bước phải thêm encoder hoặc dùng động cơ bước vòng kín.
- Động cơ bước dùng DRV8825 quay nhanh tối đa bao nhiêu vòng/phút? Giới hạn của IC là 250 kHz, tương ứng khoảng 2.340 vòng/phút với động cơ 1,8° ở 1/32. Tốc độ dùng được thực tế thấp hơn nhiều, vì mô-men động cơ giảm mạnh khi quay nhanh và vi điều khiển thường không phát nổi tần số đó.
- Có ghép song song hai module DRV8825 để tăng dòng không? Không nên. Hai mạch băm dòng chạy độc lập, không đồng bộ, nối chung ngõ ra dễ kích hoạt bảo vệ quá dòng hoặc hỏng IC; cần dòng lớn hơn thì chọn driver định mức cao hơn.
- DRV8825 có thay được TB6600 cho động cơ bước size 57 không? Chỉ với động cơ size 57 thân ngắn dòng khoảng 2 A trở xuống và tải nhẹ. Phần lớn động cơ size 57 dòng 2,8–4 A, vượt khả năng module DRV8825; driver rời còn có cách ly quang và đầu nối chắc chắn hơn cho máy công nghiệp.
13. Kết luận
Driver DRV8825 là bước nâng cấp hợp lý so với A4988 khi động cơ bước nhỏ cần thêm dòng, thêm điện áp hoặc vi bước 1/32, với điều kiện dùng đúng các điểm riêng của nó: Vref = Imax / 2, đo Vref khi có nguồn VMOT, xung STEP từ 1,9 µs, kiểm tra lại bảng vi bước khi thay driver và giữ nguồn trong khoảng 24–36 V có tụ lọc. Nếu động cơ điện cảm thấp chạy chậm bị giật, vân sọc, hãy thử hạ áp, đổi động cơ hoặc chuyển chế độ decay; khi máy cần chạy êm, dòng lớn hay không được mất bước, đổi sang TMC2209, driver rời hoặc hệ vòng kín sẽ hiệu quả hơn.






