تصميم نظام أمان في الحافلة المدرسية باستخدام حساس المسافة Ultrasonic Distance Sensor

نبذة:

في هذا الروشة سنتعرف على كيفية عمل نظام أمان في الحافلة المدرسية من خلال حساس المسافة Ultrasonic Sensor. وهذا النظام يأتي لحل مشكلة نسيان أحد الاطفال او الطلاب في الحافلة المدرسية بعد التوصيل من وإلى المدارس .

الادوات :

اولاً: البرمجة

– Arduino Board لوح اردوينو .
– Ultrasonic Sensor HC-SR04 حساس المسافة .
– Buzzer جرس انذار .
– LED احمر .
– 220ohm  مقاومة .

-سلاك

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

-برنامج اردوينو .

ثانياً : تصميم هيكل الباص .

-لوح خشبي.

-آلة قاطعة الليزر . + برنامج انكسكيب

-صمغ.

 

التوصيل

سيتم توصيل الحساس وجهاز الجرس والليد بالطريقة الموضحة في الصورة

تصميم الحافلة المدرسية وتوصيل الحساسات

نقوم بالتصميم من خلال برنامج الانكسكيب والقص بآلة قاطعة الليزر

بعد الانتهاء من هيكل الحافلة نقوم بالتوصيل بحيث يكون الجرس والليد الاحمر في مقدمة الحافلة .

ويكون حساس المسافة مثبت على كل المقاعد (هنا تم استخدام حساس واحد فقط للمسافة )

البرمجة

بعد الانتهاء من التوصيل سوف نقوم ببرمجة حساس المسافة بحيث سيكون لدينا حساس على كل مقعد من مقاعد الحافلة بعد الانتهاء من إنزال الطلاب سيقوم قائد الحافلة بتشغيل جهاز الانذار وفي حال كان هناك اي طالب او طفل في الحافلة فانه سوف يعطي انذار بصوت الجرس و ويضئ الليد الاحمر

ثم نقوم بكتابة الكود البرمجي التالي:

 

// defines pins numbers
const int trigPin = 9;
const int echoPin = 10;
const int buzzer = 11;
const int ledPin = 13;

// defines variables
long duration;
int distance;
int safetyDistance;

void setup() {
pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
pinMode(echoPin, INPUT); // Sets the echoPin as an Input
pinMode(buzzer, OUTPUT);
pinMode(ledPin, OUTPUT);
Serial.begin(9600); // Starts the serial communication
}

void loop() {
// Clears the trigPin
digitalWrite(trigPin, LOW);
delayMicroseconds(2);

// Sets the trigPin on HIGH state for 10 micro seconds
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);

// Reads the echoPin, returns the sound wave travel time in microseconds
duration = pulseIn(echoPin, HIGH);

// Calculating the distance
distance= duration*0.034/2;

safetyDistance = distance;
if (safetyDistance < 200){
digitalWrite(buzzer, HIGH);
digitalWrite(ledPin, HIGH);
}
else{
digitalWrite(buzzer, LOW);
digitalWrite(ledPin, LOW);
}

// Prints the distance on the Serial Monitor
Serial.print(“Distance: “);
Serial.println(distance);
}

 

 

ثم نقوم برفع البرمجة إلى الاردوينو

اختبار التصميم النهائي

https://drive.google.com/open?id=1PodJqertjayCUh3fQ0IUtfHMWyu9mJ_F

الكاتب: Zafra Alahmari
كاتب

المشاركات (2)

أضف مشاركة