Arduino với động cơ Servo
Sử dụng Arduino với động cơ servo, chúng ta có thể điều khiển chính xác vị trí trục của nó vì động cơ servo hoạt động trên cơ chế phản hồi để xác định vị trí trục của nó. Vị trí trục được đo liên tục bằng một chiết áp tích hợp bên trong động cơ servo, so sánh nó với vị trí mục tiêu được đặt bởi vi điều khiển (ví dụ: Arduino). Bằng cách tính toán sai số giữa vị trí mục tiêu và vị trí thực tế, bộ vi điều khiển điều chỉnh trục đầu ra của nó để khớp với vị trí mục tiêu. Toàn bộ hệ thống này có thể được mô tả như một hệ thống vòng kín .
Arduino điều khiển động cơ servo sử dụng tín hiệu PWM. Tín hiệu điều khiển này được cấp cho chân điều khiển của động cơ servo. Chiều rộng của tín hiệu PWM xác định vị trí trục. Bảng dưới đây đưa ra một minh họa về điều khiển vị trí động cơ servo sử dụng tín hiệu PWM
Chiều rộng PWM (mili giây) | Vị trí trục (Góc) |
---|---|
1 mili giây | 0˚ độ Min |
1.5ms | 90˚ độ Trung tính |
2ms | Tối đa 180˚ độ |
Động cơ servo thường cần một xung PWM cứ sau 20ms hoặc 50Hz. Hầu hết các động cơ servo RC có thể hoạt động tốt trong dải tần từ 40 đến 200Hz.
Chân động cơ Servo
Hầu hết các động cơ servo được sử dụng với Arduino đều có ba chân.
- Đất Động cơ servo có chân GND thường có màu đen.
- Pin nguồn Cần có chân 5v để cấp nguồn cho động cơ servo. Chân nguồn thường có màu đỏ.
- Chốt điều khiển Chuyển động trục của động cơ servo được điều khiển bằng cách sử dụng chốt điều khiển. Chân này được kết nối với chân kỹ thuật số Arduino.
Các động cơ servo có sẵn các bảng màu khác nhau, nhưng tin tốt là tất cả các động cơ servo đều có các chân thường theo thứ tự giống nhau, chỉ là mã màu là khác nhau.
Dây Servo với Arduino
Hầu hết các động cơ servo chạy trên 5V. Để cấp nguồn cho servo với Arduino, chúng ta cần kết nối chân 5V của Arduino với chân nguồn của servo. Arduino có một phạm vi hạn chế để vẽ dòng điện. Thông thường, một hoặc hai động cơ có thể được kết nối với Arduino. Để điều khiển nhiều động cơ servo bằng Arduino, chúng ta phải cấp nguồn cho chúng bằng nguồn cung cấp bên ngoài.
Cần lưu ý cấu hình chân sau khi cấp nguồn cho servo:
Chân động cơ Servo | Pin Arduino |
---|---|
Nguồn (đỏ) | Nguồn 5V hoặc nguồn điện bên ngoài |
Mặt đất (đen hoặc nâu) | Nguồn cung cấp và Arduino GND |
Pin điều khiển (Vàng, cam hoặc trắng) | Pin kỹ thuật số của Arduino |
Để kết nối động cơ servo với Arduino có thể sử dụng hai cấu hình sau:
- Dây sử dụng Arduino 5V Pin
- Dây sử dụng nguồn cung cấp bên ngoài với Arduino
Dây sử dụng chân 5V Arduino
Động cơ servo có thể được cấp nguồn bằng cách sử dụng chân 5V Arduino nhưng một điều cần chú ý là Arduino có thể cung cấp dòng điện tối đa 500mA cho servo. Nếu động cơ tạo ra dòng điện vượt quá giới hạn này, nó sẽ tự động thiết lập lại Arduino và nó cũng có thể mất điện.
Sau đây là mô tả bằng hình ảnh của kết nối Arduino với động cơ servo:
Ở đây chân số 9 của Arduino được kết nối với chân điều khiển động cơ servo trong khi chân nguồn và chân GND của servo được kết nối tương ứng với chân 5V và chân GND của Arduino.
Dây sử dụng nguồn cung cấp bên ngoài với Arduino
Arduino có thể cung cấp dòng điện giới hạn cho động cơ servo, đó là lý do tại sao chúng ta cần kết nối nguồn điện bên ngoài. Sử dụng nguồn điện riêng cho động cơ servo, chúng ta có thể kết nối nhiều động cơ tùy thích với Arduino nhưng hãy nhớ các chân kỹ thuật số có sẵn trên bảng Arduino. Nếu bạn muốn kết nối nhiều động cơ servo, thì bạn nên sử dụng tấm chắn Arduino Mega hoặc Arduino có thể cung cấp nhiều chân hơn để xử lý tất cả các động cơ.
Ở đây, chân nguồn và chân nối đất của động cơ servo được kết nối qua các chân cấp nguồn bên ngoài trong khi chân điều khiển được kết nối với chân kỹ thuật số của Arduino như trong cấu hình trên.
Sự kết luận
Động cơ servo là một cách tuyệt vời để thiết kế các dự án robot. Do tính linh hoạt liên quan đến các cơ chế điều khiển, người dùng Arduino có cơ hội thiết kế các dự án mà họ lựa chọn. Một động cơ servo có thể được kết nối với Arduino bằng cách sử dụng chân nguồn và chân kỹ thuật số của nó. Trong khi đó, hãy luôn tìm kiếm yêu cầu năng lượng của động cơ trước khi kết nối nó với Arduino. Để kết nối nhiều động cơ với Arduino, bạn cần sử dụng nguồn điện bên ngoài.