Quét servo
Thuộc phần Đầu ra trong hành trình Arduino của Coddy. Bài học 21 trên 24.
arm.write() nhảy thẳng đến một góc. Để di chuyển cánh tay từ từ, hãy lần lượt đi qua mọi góc ở giữa bằng một vòng lặp for (loop), chờ một lúc ở mỗi góc:
for (int angle = 0; angle <= 180; angle++) {
arm.write(angle);
delay(15);
}Ở đây, biến đếm có tên là angle, còn <= 180 bao gồm cả 180. 181 bước, mỗi bước 15 ms, mất khoảng 2.7 giây.
Để quay lại, hãy đếm ngược. angle-- giảm đi 1 sau mỗi vòng, và vòng lặp tiếp tục chạy khi góc vẫn bằng 0 hoặc lớn hơn:
for (int angle = 180; angle >= 0; angle--) {
arm.write(angle);
delay(15);
}Đặt cả hai vòng lặp trong loop() để cánh tay quét qua lại như cần gạt nước kính chắn gió.
Thử thách
DễĐiều khiển servo ở chân 9 quay qua lại liên tục:
- từ 0 đến 180 độ, mỗi lần một độ, chờ 15 ms ở mỗi độ
- sau đó quay ngược về 0 theo cách tương tự
Nhấn Chạy, rồi nhấn Kiểm tra.
Tự làm thử
#include <Servo.h>
Servo arm;
void setup() {
arm.attach(9);
}
void loop() {
// Quay từ 0 đến 180 độ, mỗi 15 ms tăng một độ
// rồi quay ngược về 0
}
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Đầu ra
Tự luyện tập: Playground Arduino