مستشعر ركن السيارة: الأضواء
جزء من قسم المشاريع في رحلة Arduino على Coddy. الدرس 10 من 24.
لا أحد يقرأ الأرقام أثناء ركن السيارة. تحوّل مصابيح LED الثلاثة المسافة إلى لون: أخضر على المنفذ 6 عندما يكون الطريق خاليًا، وأصفر على المنفذ 7 عندما تقترب، وأحمر على المنفذ 13 عندما يجب أن تتوقف.
ثلاثة نطاقات، ولكل نطاق مصباح LED واحد بالضبط. تناسب سلسلة if / else if / else هذه الحالة، لأن فرعًا واحدًا فقط منها يعمل:
if (cm >= 100) {
// أخضر
} else if (cm >= 30) {
// أصفر: من 30 إلى 99
} else {
// أحمر: أقل من 30
}لا يحتاج الاختبار الثاني إلى أن يقول cm < 100: تعني else أن الاختبار الأول كانت نتيجته خاطئة، لذا فالمسافة أقل من 100 بالفعل.
أطفئ مصابيح LED الثلاثة كلها قبل إضاءة أحدها، كما في إشارة المرور. وإلا فسيظل الأصفر مضاءً عند إضاءة الأحمر.
التحدي
سهلاعرض المسافة بالألوان:
- اجعل المنافذ 6 و7 و13 مخارج
- 100 سم أو أكثر: الأخضر فقط
- من 30 إلى 99 سم: الأصفر فقط
- أقل من 30 سم: الأحمر فقط
واصل طباعة المسافة. اضغط على Run، واسحب مستشعر المسافة، ثم اضغط على Check.
جرّب بنفسك
// مستشعر المسافة
const int trigPin = 9;
const int echoPin = 10;
// أرسل نبضة وأعد المسافة بوحدة cm.
long readDistance() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
return duration / 58;
}
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
}
void loop() {
long cm = readDistance();
Serial.println(cm);
delay(100);
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المشاريع
3مستشعر ركن السيارة
مستشعر ركن السيارة: المسافةمستشعر ركن السيارة: الأضواءمستشعر ركن السيارة: التنبيهات الصوتيةمستشعر ركن السيارة: الشاشةتدرّب بنفسك: Playground لـ Arduino