Điều khiển động cơ servo là gì?
Định nghĩa Điều khiển động cơ servo
Điều khiển động cơ servo (hoặc bộ điều khiển động cơ servo) được định nghĩa là mạch dùng để điều khiển vị trí của động cơ servo.
Mạch Bộ điều khiển động cơ servo
Mạch bộ điều khiển động cơ servo bao gồm vi điều khiển, nguồn điện, biến trở và các kết nối, đảm bảo điều khiển chính xác động cơ.
Vai trò của Vi điều khiển
Vi điều khiển tạo ra xung PWM ở các khoảng thời gian cụ thể để điều khiển chính xác vị trí của động cơ servo.
Nguồn điện
Thiết kế nguồn điện cho bộ điều khiển động cơ servo phụ thuộc vào số lượng động cơ được kết nối. Động cơ servo thường sử dụng nguồn điện từ 4,8V đến 6V, với 5V là chuẩn. Quá mức điện áp nguồn có thể làm hỏng động cơ. Điện áp tiêu thụ thay đổi theo lực mô-men xoắn và thấp hơn trong chế độ nhàn rỗi, cao hơn khi chạy. Điện áp tiêu thụ tối đa, còn gọi là dòng điện dừng, có thể đạt tới 1A đối với một số động cơ.
Đối với việc điều khiển một động cơ, hãy sử dụng bộ điều chỉnh điện áp như LM317 với tản nhiệt. Đối với nhiều động cơ, cần một nguồn điện chất lượng cao với mức dòng điện lớn hơn. Nguồn điện chuyển mạch (SMPS) là một lựa chọn tốt.
Sơ đồ khối dưới đây hiển thị các kết nối trong Bộ điều khiển động cơ servo

Điều khiển động cơ servo
Động cơ servo có ba đầu nối.
Tín hiệu vị trí (xung PWM)
Vcc (từ nguồn điện)
Mass

Vị trí góc của động cơ servo được điều khiển bằng cách áp dụng xung PWM có độ rộng cụ thể. Thời gian xung dao động từ khoảng 0,5ms cho quay 0 độ đến 2,2ms cho quay 180 độ. Xung nên được cung cấp ở tần số khoảng 50Hz đến 60Hz.
Để tạo dạng sóng PWM (Pulse Width Modulation), như được hiển thị trong hình dưới đây, có thể sử dụng mô-đun PWM nội bộ của vi điều khiển hoặc sử dụng bộ đếm. Sử dụng khối PWM linh hoạt hơn vì hầu hết các dòng vi điều khiển được thiết kế, và khối PWM này phù hợp hơn với nhu cầu của các ứng dụng như động cơ servo. Đối với các độ rộng khác nhau của xung PWM, chúng ta cần lập trình các thanh ghi nội bộ tương ứng.
Bây giờ, chúng ta cũng cần chỉ cho vi điều khiển phải quay bao nhiêu. Để mục đích này, chúng ta có thể sử dụng biến trở đơn giản và sử dụng ADC để lấy góc quay hoặc cho các ứng dụng phức tạp hơn, có thể sử dụng gia tốc kế.

Thuật toán chương trình
Hãy thiết kế Chương trình để điều khiển một động cơ servo và tín hiệu vị trí được cung cấp thông qua biến trở kết nối với chân của bộ điều khiển.
Khởi tạo các chân cổng cho đầu vào/đầu ra.
Đọc ADC để lấy vị trí mong muốn của động cơ servo.
Lập trình các thanh ghi PWM cho giá trị mong muốn.
Ngay khi kích hoạt mô-đun PWM, chân kênh PWM được chọn sẽ lên cao (logic 1) và sau khi đạt đến độ rộng yêu cầu, nó sẽ lại xuống thấp (logic 0). Vì vậy, sau khi kích hoạt PWM, bạn phải bắt đầu bộ đếm với độ trễ khoảng 19 ms và chờ cho đến khi bộ đếm trànTrở lại bước 2
Có nhiều chế độ PWM khác nhau mà bạn có thể sử dụng tùy thuộc vào vi điều khiển bạn chọn. Một số mức tối ưu hóa nên được thực hiện trong mã để điều khiển động cơ servo.
Nếu bạn dự định sử dụng nhiều động cơ servo hơn, bạn sẽ cần nhiều kênh PWM. Mỗi động cơ servo có thể được cung cấp tín hiệu PWM tuần tự. Nhưng bạn phải chú ý rằng tần số lặp lại xung cho mỗi động cơ phải được duy trì. Nếu không, động cơ sẽ mất đồng bộ.