Trang chủ • Dự án • DỰ ÁN LẬP TRÌNH STM32

#17 STM32 ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC VỚI FULL STEP / HALF STEP

LẬP TRÌNH STM32 ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC VỚI FULL STEP / HALF STEP

DỰ ÁN LẬP TRÌNH STM32 ~4 phút đọc Cập nhật 25/04/2026

Nội dung bài đăng

  • Phân tích mục tiêu hệ thống và yêu cầu điều khiển.
  • Mô tả thuật toán PLC/HMI và cấu trúc truyền thông.
  • Tổng hợp thông số, lưu ý triển khai và mở rộng thực tế.

Bài đăng kỹ thuật

Triển khai và phân tích hệ thống

#17 STM32 ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC VỚI FULL STEP / HALF STEP

LẬP TRÌNH STM32 ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC VỚI FULL STEP / HALF STEP

Link: https://www.youtube.com/watch?v=fEs4DXH7zq4&t=240s

STM32 điều khiển động cơ bước – Full Step / Half Step, đảo chiều, hiển thị LCD và giám sát UART

Dự án xây dựng hệ thống điều khiển động cơ bước sử dụng vi điều khiển STM32F103C8T6, cho phép lựa chọn nhiều chế độ hoạt động như Full Step, Half Step, điều khiển chiều quay thuận – ngược, dừng tức thời và thay đổi tốc độ trực tiếp bằng biến trở analog. Toàn bộ trạng thái hệ thống được hiển thị đồng thời trên LCD và Virtual Terminal thông qua UART.

Chức năng chính của hệ thống

  • Lựa chọn chế độ Full Step hoặc Half Step
  • Điều khiển chiều quay thuận (CW) và ngược (CCW)
  • Dừng động cơ tức thời
  • Điều chỉnh tốc độ bằng biến trở ADC
  • Hiển thị tốc độ trên LED 7 đoạn
  • Hiển thị trạng thái trên LCD 16x2
  • Giám sát dữ liệu thời gian thực qua UART

Nguyên lý hoạt động

STM32 đọc giá trị analog từ biến trở thông qua ADC để tính toán tốc độ phát xung điều khiển. Tùy theo nút nhấn chế độ được chọn, vi điều khiển sẽ phát chuỗi kích từ tương ứng cho động cơ bước qua driver công suất L298.

Các chế độ điều khiển

1. Full Step

Trong chế độ Full Step, cuộn dây động cơ được kích theo chu kỳ đầy đủ, giúp moment lớn và chuyển động ổn định.

2. Half Step

Trong chế độ Half Step, chuỗi kích xen kẽ giữa một pha và hai pha, giúp động cơ quay mịn hơn và tăng độ phân giải góc bước.

3. Điều khiển chiều quay

Người dùng lựa chọn chiều quay thuận hoặc ngược thông qua nút nhấn điều khiển, STM32 sẽ đảo thứ tự phát xung tương ứng.

Hiển thị trạng thái hệ thống

LCD 16x2

  • MODE: FULL / HALF
  • DIR: CW / CCW
  • SPD: giá trị tốc độ hiện tại

LED 7 đoạn

Hiển thị trực tiếp giá trị tốc độ hoặc thông số điều khiển thời gian thực.

UART Monitoring

Virtual Terminal hiển thị:

MODE: FULL STEP
DIR : CW
SPD : 2047
STATUS: RUN

Phần cứng sử dụng

  • STM32F103C8T6
  • Driver L298
  • Động cơ bước 4 pha
  • LCD 16x2
  • LED 7 đoạn
  • Biến trở ADC
  • UART Virtual Terminal

Driver công suất L298

STM32 xuất tín hiệu điều khiển tới các chân IN1, IN2, IN3, IN4 của L298. Driver đóng vai trò khuếch đại dòng để điều khiển cuộn dây động cơ bước.

ADC điều chỉnh tốc độ

Biến trở RV1 tạo điện áp analog đưa vào chân ADC của STM32, giá trị đọc được dùng để thay đổi thời gian delay giữa các xung điều khiển.

Các kiến thức kỹ thuật áp dụng

  • ADC đọc tín hiệu analog
  • GPIO điều khiển chuỗi kích động cơ bước
  • UART truyền dữ liệu giám sát
  • LCD 16x2 giao tiếp song song
  • LED 7 đoạn multiplexing
  • State machine điều khiển chế độ

Ứng dụng thực tế

Mô hình phù hợp để phát triển các hệ thống: máy CNC mini, robot định vị, băng tải chính xác, cơ cấu chấp hành bước trong công nghiệp và đào tạo kỹ thuật điều khiển động cơ.

Ưu điểm của dự án

Dự án tích hợp đồng thời nhiều ngoại vi quan trọng của STM32: ADC, UART, LCD, LED 7 đoạn, điều khiển động cơ công suất, giúp người học hiểu rõ cách xây dựng hệ thống nhúng hoàn chỉnh.

```
Xem liên kết ngoài