جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
ستعلمك هذه التعليمات كيفية إنشاء نظام أضواء لتحذير الركاب المنتظرين عندما يقترب القطار وكذلك كيفية ظهور رسالة على جهاز كمبيوتر محمول عندما يكون القطار في المحطة. سيتم إنشاء صوت عند مرور القطار بالمحطة جنبًا إلى جنب مع سلسلة من مصابيح LED الوامضة. كل هذا يمكن القيام به باستخدام Raspberry Pi.
الخطوة 1: المستلزمات
جهاز كمبيوتر واحد
MatLab 2016 أو أحدث
قم بتنزيل حزمة Raspberry Pi
طابعة 3D
محطة قطار مطبوعة ثلاثية الأبعاد لإيواء التوت باي
Raspberry Pi بالمكونات التالية:
2 مستشعرات الأشعة تحت الحمراء
5 مصابيح LED من اختيارك للون
11 أسلاك
2 مقاومات
مقاومات 200-300 أوم
USB Chord لتوصيل الكمبيوتر بـ Raspberry Pi
الخطوة 2: تصميم مجموعة الدوائر للمخرجات والمدخلات المرغوبة
باستخدام الدوائر الأساسية ، يجب توصيل المصابيح وباعث ومستقبل الأشعة تحت الحمراء بـ Raspberry Pi. يتم توصيل مصابيح LED الحمراء بالأرض ثم توصيلها بدبابيس GPIO 4 و 5 و 6 و 7. يتصل مستقبل الأشعة تحت الحمراء بـ GPIO Pin 21 وباعث الأشعة تحت الحمراء متصل بالدبوس 5 فولت.
الخطوة 3: تطوير البرمجة لإرضاء النتيجة المرغوبة
أهم أسطر الكود هي السطران 12 و 16 اللذان يطلقان مربعات الحوار. السطر 18 ، عبارة if ، تقرأ ما إذا كانت أجهزة الاستشعار بالأشعة تحت الحمراء بها عائق بينها وإذا تم إعاقتها فهذا يعني أن القطار يمر ، وسوف يصدر صوت البوق وسوف تضيء الأضواء. إذا كانت العبارة خاطئة فلن يحدث شيء لأن القطار لا يقترب.
الكود: ٪٪ رأس
مشروع متحكم - القطار الليلي ٪
٪ جون براون ، ترينت باين ، كارستن باركر ؛ القسم 9
٪ 3 أكتوبر 2017
وصف المشروع: تصميم متحكم يأخذ مدخلين و
٪ ينتج ناتجين للمساعدة في تحسين جوانب إعداد نموذج القطار
٪ طريقة الحل: استخدام مختلف الموارد و Matlab لتحسين جوانب
٪ إعداد القطار النموذجي.
٪٪ الإعداد- الإدخال / الإخراج الأول
احيانا صحيح
أ = 0 ؛٪ يهيئ أ
بينما readDigitalPin (rpi ، 21) == 1
أ = 1 ؛٪ يوقف تشغيل رمز الضوء قبل رمز حوار السؤال
السؤال = ("القطار يتوقف في المحطة. هل ترغب في دق البوق؟") ؛
question_title = ("بوق القطار") ؛
Resp = Questdlg (question، question_title، 'yes'، 'no'، 'no')؛٪ ينبثق مربع حوار السؤال مع خيارين وإجابة افتراضية
tf = strcmp (resp، 'yes') ؛ يقارن٪ طول مصفوفة الأحرف للاستجابة لمصفوفة الأحرف نعم.
إذا كان tf == 1٪ إذا كان Resp = "نعم"
[Y، FS] = audioread ('train_horn.m4a') ؛ يأخذ٪ ملفًا صوتيًا ويحوله إلى بيانات نموذجية ، y ، ومعدل أخذ العينات FS.
يأخذ الأمر sound (Y ، FS)٪ بيانات عينات ومعدل أخذ العينات ويولد الصوت
msgbox ("صوت بوق القطار!")
بوز (2)
استراحة
else٪ if resp = 'no' ، سيكون tf منطقيًا 0 نظرًا لأن no و yes مصفوفات char هي أطوال مختلفة
msgbox ("لم يصدر صوت بوق القطار!")
بوز (2)
استراحة
نهاية
نهاية
أثناء قراءة readDigitalPin (rpi ، 21) == 1 && a == 1٪ يبدأ أثناء التكرار أثناء قلب المفتاح وتشغيل مربع حوار السؤال
٪ هذا الجزء الأول من الكود يضيء الأضواء بالترتيب.
writeDigitalPin (عدد نقاط البوصة، 4، 0)
وقفة (0.25)
writeDigitalPin (عدد نقاط في البوصة، 5، 0)
وقفة (0.25)
writeDigitalPin (عدد نقاط في البوصة، 6، 0)
وقفة (0.25)
writeDigitalPin (rpi، 7، 0)
وقفة (0.25)
٪ هذا الجزء الثاني من الكود يطفئ الأنوار بالترتيب.
writeDigitalPin (عدد نقاط في البوصة، 4، 1)
وقفة (0.25)
writeDigitalPin (عدد نقاط في البوصة، 5، 1)
وقفة (0.25)
writeDigitalPin (عدد نقاط في البوصة، 6، 1)
وقفة (0.25)
writeDigitalPin (rpi، 7، 1)
وقفة (0.25)
end٪ end أثناء التكرار
نهاية
الخطوة 4: استمع إلى القطار الذي سيقترب من الزاوية ، وشاهد بينما الأضواء تحذرك للرجوع إلى الوراء
مع اقتراب القطار من مستشعرات الأشعة تحت الحمراء وعبوره ، ستنطفئ الأضواء ، مما يؤدي إلى إطلاق بوق القطار للوصول إلى الركاب للابتعاد عن الحافة ؛ ومع ذلك ، سيكون هناك أيضًا مربع حوار ينبثق يسأل قائد القطار ، "القطار يقترب من المحطة ، هل القطار يتوقف؟" ، ثم يقرأ الثاني "صوت بوق القطار" ، وإذا لم يكن البوق بعد سحبه ، سيظهر مربع حوار ثالث ، "لم يصدر صوت البوق".
الخطوة 5: الإعداد النهائي
لإكمال المشروع ، يجب دمج النظام بأكمله في محطة القطار الزرقاء والتي كانت مطبوعة ثلاثية الأبعاد من أجل الجماليات. ترمز محطة القطار إلى مكان تواجد الركاب عند وصول القطار. الآن سيكونون بأمان بفضل نظام تحذير القطار الليلي.