مشروع التحكم في إشارات مرور في 3 تقاطعات


unnamed

مقدمة

سنقوم في هذه التجربة بتصميم إشارة المرور لثلاث تقاطعات والتي سوف تساعد لفهم طريقة عمل إشارات المرور التي نراها في حياتنا اليومية.

الأدوات المستخدمة

Screen Shot 1439 04 02 at 11.52.34 PM

الأداة العدد ملاحظات
اردوينو اونو 1
لوحة توصيل 1
مصابيح LED 9 3 من كل لون (أحمر/اصفر/ازرق)
مقاومات 3
أسلاك توصيل (ذكر – ذكر) حسب الحاجة

الجزء النظري

في هذه التجربة سوف نقوم بتوصيل إضاءات LEDs مع الأردوينو لتمثيل خطوات عمل إشارات المرور وفقًا للجدول التالي الذي يشرح ترتيب فتح الإشارات والوقت الذي تقضيه في كل مرحلة. قبل شرح الجدول التالي يجب معرفة أن:

(الإشارة رقم 1   (وتشير إلى ترتيب الإشارة وهي سوف تكون رقم 1

(الإشارة رقم 2  (وتشير إلى ترتيب الإشارة وهي سوف تكون رقم 2

(الإشارة رقم 3  (وتشير إلى ترتيب الإشارة وهي سوف تكون رقم 3 والاخيرة

R :أحمر

Y :أصفر

G :أخضر

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

5 ثوان – هو الوقت المخصص لفتح الإشارة

ثانية – هو الوقت المخصص استعدادا لفتح الإشارة التالية

الإشارة رقم 3 الإشارة رقم 2   الإشارة رقم 1
الوقت L

G(10)

L

Y(9)

L

R(8)

S

G(7)

S

Y(6)

S

R(5)

F

G(4)

F

Y(3)

F

R(2)

5 ثوان OFF OFF ON OFF OFF ON ON OFF OFF
ثانية OFF OFF ON OFF ON OFF ON OFF OFF
5 ثوان OFF OFF ON ON OFF OFF OFF OFF ON
ثانية OFF ON OFF ON OFF OFF OFF OFF ON
5 ثوان ON OFF OFF OFF OFF ON OFF OFF ON
ثانية ON OFF OFF OFF OFF ON OFF ON OFF

خطوات التوصيل

اتبع الصورة التالية لتتمكن من توصيل الدائرة

Untitled Sketch 9 bb

*ملاحظة: من الضروري توصيل المقاومات حتى لا يتجاوز التيار المار في LED عن القيمة القصوى التي يستطيع تحملها، ولمعلومات اكثر يمكنكم قراءة ورقة المعلومات الخاصة بالقطعة.

الكود البرمجي

قم بنسخ الكود ولصقه في برنامج الأردوينو وشاهد إنجازك !

الكود البرمجي

void setup() {
  // تجهيز الاطراف
  pinMode(2,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(4,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(8,OUTPUT);
  pinMode(9,OUTPUT);
  pinMode(10,OUTPUT);
}

void loop() 
{
 //فتح الاشارة رقم 1
  digitalWrite(4,1);
  digitalWrite(5,1);
  digitalWrite(8,1);
  digitalWrite(2,0);
  digitalWrite(6,0);  
  digitalWrite(3,0);
  digitalWrite(7,0);
  digitalWrite(10,0);
  digitalWrite(9,0);
  delay(5000);
   //التجهيز لفتح الاشارة رقم 2 
  digitalWrite(6,1);     
  digitalWrite(5,0);  
  delay(1000);
 //  فتح الاشارة رقم 2
  digitalWrite(2,1);
  digitalWrite(8,1);
  digitalWrite(7,1);
  digitalWrite(3,0);    
  digitalWrite(6,0);
  digitalWrite(9,0);
  digitalWrite(5,0);
  digitalWrite(10,0);
  digitalWrite(4,0);
  delay(5000);
   //تجهيز الاشارة رقم 3
  digitalWrite(9,1);          
  digitalWrite(8,0);        
  delay(1000);
  // فتح الاشارة رقم 3
  digitalWrite(5,1);
  digitalWrite(2,1);
  digitalWrite(10,1);
  digitalWrite(6,0);
  digitalWrite(8,0);           
  digitalWrite(4,0);
  digitalWrite(7,0);
  digitalWrite(3,0);
  digitalWrite(4,0);
  digitalWrite(9,0);
  delay(5000);
  //تجهيز الاشارة رقم 1 
  digitalWrite(3,1);           
  digitalWrite(2,0);
  delay(1000);
}

فيديو التجربة

المصدر

مصدر التجربة

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *