Gerakkan Servo Menyapu
Termasuk bagian Output dalam perjalanan Arduino di Coddy. Pelajaran 21 dari 24.
arm.write() langsung melompat ke suatu sudut. Untuk menggerakkan lengan secara perlahan, lewati setiap sudut di antaranya dengan for loop, sambil menunggu sebentar di setiap sudut:
for (int angle = 0; angle <= 180; angle++) {
arm.write(angle);
delay(15);
}Di sini, penghitungnya bernama angle, dan <= 180 menyertakan 180. 181 langkah dengan jeda 15 ms memerlukan waktu sekitar 2,7 detik.
Untuk kembali, hitung mundur. angle-- mengurangi nilai sebesar 1 setiap putaran, dan perulangan berjalan selama sudutnya masih 0 atau lebih:
for (int angle = 180; angle >= 0; angle--) {
arm.write(angle);
delay(15);
}Letakkan kedua perulangan di dalam loop() dan lengan akan bergerak bolak-balik seperti wiper kaca depan.
Tantangan
MudahBuat servo pada pin 9 bergerak menyapu berulang kali:
- dari 0 hingga 180 derajat, satu derajat setiap kali, tunggu 15 ms pada setiap posisi
- lalu kembali turun ke 0 dengan cara yang sama
Tekan Jalankan, lalu Periksa.
Coba sendiri
#include <Servo.h>
Servo arm;
void setup() {
arm.attach(9);
}
void loop() {
// gerakkan dari 0 hingga 180, satu derajat setiap 15 ms
// lalu turunkan kembali ke 0
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Output
Latihan sendiri: Playground Arduino