حرّك Servo ذهابًا وإيابًا
جزء من قسم المخرجات في رحلة Arduino على Coddy. الدرس 21 من 24.
ينتقل arm.write() مباشرةً إلى زاوية. لتحريك الذراع ببطء، انتقل عبر كل زاوية بينهما باستخدام حلقة for، وانتظر لحظة عند كل زاوية:
for (int angle = 0; angle <= 180; angle++) {
arm.write(angle);
delay(15);
}هنا يُسمّى العداد angle، و<= 180 تشمل 180 نفسها. تستغرق 181 خطوة مدة 15 ms لكل منها نحو 2.7 ثانية.
للعودة، عُد تنازليًا. تنقص angle-- بمقدار 1 في كل دورة، وتستمر الحلقة ما دامت الزاوية 0 أو أكثر:
for (int angle = 180; angle >= 0; angle--) {
arm.write(angle);
delay(15);
}ضع الحلقتين في loop()، وسيتأرجح الذراع ذهابًا وإيابًا مثل ماسحة الزجاج الأمامي.
التحدي
سهلاجعل محرك المؤازرة على المنفذ 9 يتحرك ذهابًا وإيابًا، مرة بعد مرة:
- من 0 إلى 180 درجة، درجة واحدة في كل مرة، مع الانتظار 15 ms عند كل درجة
- ثم يعود إلى 0 بالطريقة نفسها
اضغط على Run، ثم Check.
جرّب بنفسك
#include <Servo.h>
Servo arm;
void setup() {
arm.attach(9);
}
void loop() {
// حرّك الذراع تدريجيًا من 0 إلى 180، درجة واحدة كل 15 ms
// ثم أعده تدريجيًا إلى 0
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المخرجات
تدرّب بنفسك: Playground لـ Arduino