مشروع بسيط ضوء المرور باستخدام أردوينو ▌ Simple traffic light project using Arduino - DIY Channel3

DIY Channel3

Arduino│ESP8266│ESP32│Drone│Robot

مشروع بسيط ضوء المرور باستخدام أردوينو ▌ Simple traffic light project using Arduino

مشاركة هذا

 



من أوائل المشاريع التي يقوم بها جميع الأشخاص تقريبًا عندما يحصلون على Arduino هو إنشاء مشروع إشارة المرور. إنه مشروع بسيط للغاية ولكنه يعلمك بعضًا من أساسيات Arduino ذات الصلة. سنقوم بعمل مشروع إشارة مرور Arduino في هذا البرنامج التعليمي ، خطوة بخطوة بطريقة بسيطة لفهم الطريقة التي يمكنك القيام بها مع أطفالك. إنها طريقة رائعة لتعريفهم بالإلكترونيات والبرمجة ووحدات التحكم الدقيقة.



الآن بعد أن أكملت مشروع إشارة مرور Arduino ، خذ بعض الوقت لمراجعة الرمز مرة أخرى وإجراء بعض التغييرات. حاول تغيير متغيرات DELAY_RED و DELAY_GREEN و DELAY_YELLOW إلى فترات زمنية أطول أقصر. العدد الصحيح بالمللي ثانية ، لذلك يتم تمثيل كل ثانية بزيادات قدرها 1000. بعض المدن الأمريكية التي بها كاميرات ضوء أحمر جعلت الأضواء الصفراء أقصر من أجل إعطاء المزيد من التذاكر. لا تكن شريرا هكذا!



أسلاك إضاءة حركة المرور من أردوينو :

إن توصيل مشروع إشارة مرور Arduino يتجاوز البساطة. وهو ما يجعله جزئيًا أحد المشروعات التعليمية العظيمة. سيتصل كل مصباح LED بدبوس مخصص على Arduino ويشترك في أرضية مشتركة. سنستخدم مقاومات 100 أوم لمنع الحمل الزائد الحالي على مصابيح LED.


دبوس 2 باللون الأخضر + (الأنود)

دبوس 3 إلى أصفر LED + (الأنود)

دبوس 4 باللون الأحمر + (الأنود)

GND لأرضية مشتركة على اللوح

ضع مقاومًا 100 أوم بين كل LED - (كاثود) وسكة الأرضية المشتركة على اللوح


++ مخطط الرسم البياني :



++ الكود البرمجي هنا :

// variables
int GREEN = 2;
int YELLOW = 3;
int RED = 4;
int DELAY_GREEN = 5000;
int DELAY_YELLOW = 2000;
int DELAY_RED = 5000;
 
// basic functions
void setup()
{
pinMode(GREEN, OUTPUT);
pinMode(YELLOW, OUTPUT);
pinMode(RED, OUTPUT);
}
 
void loop()
{
green_light();
delay(DELAY_GREEN);
yellow_light();
delay(DELAY_YELLOW);
red_light();
delay(DELAY_RED);
}
 
void green_light()
{
digitalWrite(GREEN, HIGH);
digitalWrite(YELLOW, LOW);
digitalWrite(RED, LOW);
}
 
void yellow_light()
{
digitalWrite(GREEN, LOW);
digitalWrite(YELLOW, HIGH);
digitalWrite(RED, LOW);
}
 
void red_light()
{
digitalWrite(GREEN, LOW);
digitalWrite(YELLOW, LOW);
digitalWrite(RED, HIGH);
}

No comments:

Post a Comment