جدول المحتويات:
- اللوازم
- الخطوة 1: النمذجة
- الخطوة 2: تحضير Raspberry Pi
- الخطوة 3: قاعدة البيانات
- الخطوة 4: الخلفية
- الخطوة 5: الواجهة الأمامية
- الخطوة 6: عرض لوحة القيادة على الشاشة
- الخطوة 7: لحام الإلكترونيات
- الخطوة 8: مزود الطاقة
- الخطوة التاسعة: السكن
فيديو: لوحة القيادة Raspberry Pi للدراجات النارية: 9 خطوات (بالصور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:37
بصفتي طالبًا في مجال الوسائط المتعددة وتكنولوجيا الاتصالات في Howest Kortrijk ، كان عليّ إنشاء مشروع إنترنت الأشياء الخاص بي. سيجمع هذا كل الوحدات المتبعة في السنة الأولى في مشروع واحد كبير. لأنني أركب دراجتي النارية كثيرًا في أوقات فراغي ، قررت استخدام مهاراتي المكتسبة في MCT tu لبناء شيء لدراجتي النارية: لوحة عدادات ذكية.
MotoDash هي لوحة تحكم تعمل بالطاقة Raspberry Pi مصممة لراكبي الدراجات النارية المتعصبين والتي تمنح السائق القدرة على تتبع أدائهم.
ما هي ميزات لوحة القيادة هذه؟
- عرض زاوية الميل الحالية
- عرض التسارع الحالي
- إمكانية مراقبة درجة حرارة الزيت
- قم بالتبديل تلقائيًا إلى المظهر الداكن عند الركوب في الظلام
- سجل بيانات رحلاتك ، واطلع على الإحصائيات الخاصة بك
اللوازم
وحدة الحوسبة الرئيسية:
Raspberry Pi هذا هو المتحكم الرئيسي في النظام
الإلكترونيات:
- شاحن USB للدراجة النارية 12V-5V
- مرحل ذو 4 سنون منصهر بجهد 12 فولت قم بالتبديل لتشغيل / إيقاف تشغيل دائرة الطاقة الخاصة بـ RPi
- لوح توصيل مع أسلاك توصيل (اختياري) للاختبار والنماذج الأولية
-
Breakout Pi plus هذه لوحة نماذج أولية حيث يمكنك لحام جميع مكوناتك. إنه مصنوع ليلائم رأس Raspberry Pi مباشرةً ، وبالتالي تظل أبعاد المشروع إلى الحد الأدنى.
مجموعة المقاومات
ألوان مختلفة من سلك 0.2 مم
مجسات ووحدات:
- مستشعر درجة حرارة السلك DS18B20 مقاوم للماء ، مستشعر درجة حرارة الزيت
- 3 محاور مقياس تسارع الدوران MPU6050 مستشعر الإمالة / التسارع
- المقاوم المعتمد على الضوء (LDR)
MCP3008 - 8 قنوات 10 بت ADC بواجهة SPI
شاشة TFT SPI (أو أي شاشة LCD أخرى تناسب احتياجاتك)
RGB LED
غلاف:
- صندوق بلاستيكي
- علبة توت العليق
أدوات:
- لحام الحديد ولحام
- مسامير وفواصل مقاس 2.5 مم
- موصلات كابل مقاومة للماء
- صمغ ممتاز
- …
الخطوة 1: النمذجة
قبل أن نجعل كل شيء دائمًا ، سنضع المشروع معًا على لوح التجارب. يمكن تخطي هذه الخطوة إذا كنت متأكدًا تمامًا من أنك لن ترتكب أخطاء. يمكن العثور على المخطط الكهربائي / اللوح في ملف PDF أدناه. ضع الدائرة معًا تمامًا كما هو موضح. تأكد من استخدام دبوس 3.3 فولت فقط وليس دبوس 5 فولت على RPi. أيضًا قبل تشغيل raspberry Pi ، تحقق من دائرتك. تأكد من عدم وجود السراويل القصيرة!
الخطوة 2: تحضير Raspberry Pi
بادئ ذي بدء ، سنقوم بإعداد Raspberry Pi. Raspberry Pi هو كمبيوتر صغير قادر على تشغيل نظام التشغيل الخاص به. بالنسبة لهذا المشروع ، فهي مسؤولة عن معالجة sensordata واستضافة موقع الويب وتشغيل الواجهة الخلفية وقاعدة البيانات ، …
1. تثبيت صورة Raspbian المخصصة
تحتوي الصورة المقدمة بالفعل على حزم البرامج اللازمة لبدء هذا المشروع:
- أباتشي للواجهة الأمامية للموقع
- MariaDB لقاعدة البيانات
- PhpMyAdmin لمعالجة قاعدة البيانات
- أذونات مخصصة لتجنب المشاكل
يمكن تنزيل الصورة المخصصة من هنا.
يمكن العثور على برنامج تعليمي لتثبيت الصور هنا:
بمجرد تثبيت الصورة ، قم بتوصيل Raspberry Pi بجهاز الكمبيوتر الخاص بك باستخدام كابل إيثرنت. يمكنك الآن استخدام عميل SSH للاتصال به على عنوان IP 169.254.10.1
من الممارسات الجيدة تعيين كلمة مرور جديدة بشكل صحيح باستخدام الأمر passwd
2. تكوين نقطة وصول لاسلكية
عند الانتهاء من المشروع ، نريد أن نكون قادرين على الاتصال بـ RPi عبر wifi ، لذلك دعنا نحوله إلى نقطة وصول لاسلكية. يمكن العثور على برنامج تعليمي لهذا هنا.
ما عليك سوى اتباع هذا البرنامج التعليمي حتى الخطوة 7. الخطوة 8 ليست مطلوبة لأننا لسنا بحاجة إلى ربط اتصال بالإنترنت ، ولكن إنشاء شبكة مستقلة.
3. واجهات التمكين
توجه إلى Raspi-config
sudo raspi-config
انتقل إلى خيارات الواجهة وقم بتمكين 1-wire و SPI و I2C وأعد تشغيل Pi
3. إعداد برامج تشغيل للعرض
تهيئة العرض
قم بتحرير الملف / etc / modules
sudo نانو / الخ / وحدات
أضف السطرين التاليين
جهاز spi-bcm2835fbtft
الآن قم بتحرير /etc/modprobe.d/fbtft.conf
sudo nano /etc/modprobe.d/fbtft.conf
أضف السطر التالي
الخيارات fbtft_device name = tm022hdh26 gpios = إعادة التعيين: 25 ، dc: 24 ، الصمام: 18 تدوير = 90 سرعة = 80000000 إطارًا في الثانية = 60
أعد تشغيل Pi. إذا رأيت الإضاءة الخلفية للشاشة تضيء ، فقد سار كل شيء على ما يرام. سيؤدي هذا إلى تهيئة العرض في كل مرة يتم فيها تشغيل Pi ، إلا أنه سيعرض فقط شاشة سوداء الآن. للحصول على محتويات Pi على الشاشة ، نحتاج إلى نسخ محتويات الشاشة الرئيسية على شاشة LCD الصغيرة. سوف نستخدم خدمة تسمى fbcp لهذا الغرض.
تثبيت خدمة fbcp
sudo apt-get install cmake
استنساخ بوابة
cd rpi-fbcp
بناء مكدير
بناء القرص المضغوط /
cmake..
صنع
sudo قم بتثبيت fbcp / usr / local / bin / fbcp
الآن قمنا بتثبيت الخدمة. ومع ذلك ، نظرًا لأننا نستخدم Pi بدون رأس ، فلا توجد شاشة متاحة لنسخ المحتويات منها. لإجبار Pi على إخراج محتوى الشاشة ، قم بتحرير /boot/config.txt
sudo نانو / boot/config.txt
ابحث عن الأسطر التالية وأزل تعليقها أو أضفها إلى هذا الملف:
hdmi_force_hotplug = 1
hdmi_cvt = 640480 60 0 0 0 0
display_rotate = 0
hdmi_group = 2
hdmi_mode = 87
أعد تشغيل RPi واختبر خدمة fbcp عن طريق كتابة fbcp في وحدة التحكم. الآن يجب أن تشاهد محتويات الشاشة على شاشة LCD.
تشغيل fbcp عند بدء التشغيل
قم بتحرير /etc/rc.local وأضف السطر التالي بين عنوان IP وخط الخروج
fbcp &
الآن يجب أن يتم تشغيل الشاشة في كل مرة يتم فيها تشغيل RPi
الخطوة 3: قاعدة البيانات
لتسجيل وتخزين sensordata قمت بتصميم قاعدة البيانات الخاصة بي والتي تحتوي على 4 جداول. يظهر مخطط EER في الصورة أعلاه.
1. الأجهزة
يحتوي هذا الجدول على كل جهاز استشعار. يصف اسم المستشعر والوصف ووحدة القياس. يحتوي هذا الجدول على علاقة رأس بأطراف مع إجراءات الجدول ، كما في حالتي ، يمكن لمستشعر التسارع أداء مهام مختلفة.
2. الإجراءات
يخزن هذا الجدول إجراءات لمستشعر مختلف. يرتبط إجراء واحد دائمًا بمستشعر معين. على سبيل المثال: الإجراء "TEMP" مرتبط بالجهاز الذي يقيس درجة الحرارة. سيكون هذا هو مستشعر درجة الحرارة بسلك واحد.
3. التاريخ
يحتوي هذا الجدول على جميع سجلات أجهزة الاستشعار. يحتوي كل سجل على معرف إجراء وقيمة وطابع زمني وركوب
4. ركوب الخيل
هذا الجدول يخزن جولات مختلفة. في كل مرة يبدأ فيها المستخدم رحلة جديدة ، يتم إدخال إدخال جديد في هذا الجدول
للحصول على قاعدة البيانات هذه على Raspberry Pi الخاص بك ، توجه إلى My GitHub وقم باستنساخ / تنزيل المستودع. تحت قاعدة البيانات ستجد 2 ملفات.sql. قم بتشغيلها في PhpMyAdmin أو MySQL workbench. الآن يجب أن تكون قاعدة البيانات على RPi الخاص بك.
الخطوة 4: الخلفية
إذا لم تكن قد قمت بذلك بالفعل ، فانتقل إلى GitHub واستنسخ / تنزيل المستودع. تحت مجلد Backend ، ستجد الخلفية الكاملة للمشروع.
يحتوي المجلد على فئات لقراءة المستشعرات ضمن / helpers ، وملفات للتواصل مع قاعدة البيانات ضمن / المستودعات ، ويقع التطبيق الرئيسي في الجذر تحت اسم app.py.
تثبيت حزم بايثون
قبل أن نحاول تشغيل أي شيء ، نحتاج إلى تثبيت بعض الحزم لبيثون أولاً. توجه إلى محطة RPi الخاصة بك واكتب الأوامر التالية:
pip3 تثبيت mysql- موصل- بيثون
pip3 تثبيت flask-socketio
pip3 تثبيت قارورة cors
تثبيت pip3 gevent
pip3 تثبيت gevent-websocket
ملاحظة مهمة: إذا قمت بتغيير كلمة مرور Mariadb / Mysql الخاصة بك ، فقم بتغيير كلمة المرور في config.py!
اختبار الخلفية
قم بتشغيل app.py باستخدام مترجم python3 (/ usr / bin / python3). تأكد من عدم وجود أخطاء.
تشغيل الواجهة الخلفية في التمهيد
قم بتحرير motoDash_backend.service وقم بتغيير YOURFILEPATH إلى المسار حيث يتم حفظ المستودع.
الآن انسخ هذا الملف إلى / etc / systemd / system /
sudo cp motoDash_backend.service /etc/systemd/system/motoDash_backend.service.
الآن ستبدأ الواجهة الخلفية تلقائيًا في كل مرة يتم فيها تشغيل RPi.
الخطوة 5: الواجهة الأمامية
توجه إلى GitHub Repo. انسخ محتويات دليل الواجهة الأمامية إلى / var / www / html.
هذا كل ما عليك فعله لجعل الواجهة الأمامية تعمل. يحتوي هذا المجلد على جميع صفحات الويب والأنماط والبرامج النصية لواجهة الويب. كما أنه يتواصل مع الواجهة الخلفية. لاختبار ما إذا كان كل شيء يعمل كما ينبغي ، تأكد من أنك متصل بـ RPi الخاص بك ، واكتب عنوان IP الخاص بـ RPi في المستعرض. يجب أن تشاهد الصفحة الرئيسية لواجهة الويب.
ملاحظة: موقع الويب سريع الاستجابة ، لذا يمكنك استخدامه على الهاتف المحمول وكذلك على سطح المكتب
الخطوة 6: عرض لوحة القيادة على الشاشة
الواجهة الأمامية لها صفحة ويب مخفية خاصة بها تستخدم فقط للشاشة الصغيرة. سنقوم بتمهيد Pi تلقائيًا إلى موقع الويب هذا في وضع ملء الشاشة.
تأكد من ضبط RPi على تسجيل الدخول التلقائي لسطح المكتب في raspi-config ضمن خيارات التمهيد
sudo raspi-config
انتقل الآن إلى مجلد التكوين المخفي وقم بإنشاء ملف جديد هناك
cd.config
sudo mkdir -p lxsession / LXDE-pi
sudo nano lxsession / LXDE-pi / تشغيل تلقائي
أضف الأسطر التالية في هذا الملف واحفظها
xscreensaver -لا- سبلاش
xset s إيقاف
xset -dpms
تضمين التغريدة
@ متصفح الكروم - noerrors - تعطيل-جلسة-تحطمت-فقاعة - تعطيل- infobars - كشك --incognito
الآن يجب أن يقوم Pi بالتمهيد إلى صفحة الويب هذه في كل مرة
الخطوة 7: لحام الإلكترونيات
خذ اللوح المنفصل وضع مكوناتك عليه بطريقة منظمة. لن أناقش تخطيط كيفية لحام المكونات الموجودة عليه ، لأنني قمت بعمل سيئ للغاية عليه. لقد استخدمت رؤوس دبوس منفصلة على اللوحة بحيث كنت بحاجة فقط لتوصيل المستشعرات والوحدات بالدبوس الأيمن. تأكد من أنك تعرف أي دبوس هو لماذا!
بعض النصائح أثناء اللحام:
- استخدم الأسلاك المعزولة عند عبور مسافات أكبر. آخر شيء تريده هو السراويل القصيرة في دائرتك
- بعد لحام مكون أو سلك ، تحقق من استمراريته بمقياس متعدد. تحقق أيضًا بانتظام من وجود دوائر قصيرة.
- لا تستخدم الكثير أو القليل جدا من اللحام!
- إذا كنت لا تعرف كيفية اللحام ، فقم بممارستها أولاً على لوحة نماذج أولية أخرى. يمكن العثور على برنامج تعليمي حول اللحام هنا.
الآن أسلاك اللحام طويلة بما يكفي لأجهزة الاستشعار ، ووضع بعض التفاف الانكماش حولها للتأكد من أن كل شيء ليس قصيرًا ونظيفًا.
عند الانتهاء ، تحقق جيدًا من وجود أي قصور أو اتصالات سيئة ، وتحقق من كل اتصال بالمخطط الكهربائي إذا كان الاتصال الصحيح. بمجرد أن تتأكد من أن كل شيء قد تم بشكل صحيح ، امض قدمًا وقم بوضع لوحة الفصل على RPi ، ثم قم بإغلاقها بإحكام باستخدام بعض البراغي والمواقف مقاس 2.5 مم ، وربط المستشعرات بالمسامير الصحيحة واختبرها جميعًا باستخدام موقع الويب.
الخطوة 8: مزود الطاقة
لتشغيل Raspberry Pi ، سنستخدم محول USB بجهد 12 فولت -5 فولت. سيتم توصيل هذا المحول ببطارية الدراجة النارية. للتأكد من تشغيل RPi عند تشغيل مفتاح الإشعال ، سنستخدم مرحلًا. سيغلق المرحل دائرة طاقة RPi عندما يكتشف جهدًا من الضوء الخلفي (يتم تشغيل الضوء الخلفي دائمًا عند تشغيل الإشعال).
للحصول على برنامج تعليمي أكثر تفصيلاً حول هذا الموضوع ، تحقق من هذه الصفحة: https://www.hondagrom.net/threads/2017-gromsf-msx125sf-wire-up-auxiliary-power-for-pcv-wb2-and-other-fuel - وحدات تحكم.16921 /
الخطوة التاسعة: السكن
عرض الإسكان
بالنسبة للشاشة ، احصل على صندوق بلاستيكي صلب من حول حجم الشاشة. قم بقطع فتحة مربعة فيه بحجم الشاشة ، وثقوب متطابقة لتثبيتها في الشاشة. في المقدمة ، تحتاج إلى حفر فتحتين إضافيتين لمصباح RGB LED و LDR.
لقد قمت بتثبيت هذا الصندوق أعلى حامل الهاتف الذكي باستخدام الترباس.
جهاز استشعار درجة الحرارة
لإيواء مستشعر درجة الحرارة ، قمت بطباعة مقياس زيت ثلاثي الأبعاد يناسب دراجتي النارية.
فطيرة التوت
قم بتركيب Raspberry Pi نفسه في مكان آمن داخل الدراجة النارية ، ووضعته تحت أحد الرفارف باستخدام بعض أشرطة الفيلكرو. وحمايته من العناصر باستخدام السكن وبعض البلاستيك.
مقياس التسارع
قم بتركيب مقياس التسارع في مكان آمن ، ويفضل أن يكون على إطار الدراجة النارية نفسه.
ملحوظة:
لست بحاجة إلى الحصول على نفس السكن كما فعلت ، فأنت حر في الانتهاء منه كيفما تشاء. فقط تأكد من أن المكونات الإلكترونية محمية من المطر والغبار.
موصى به:
نموذج HUD للدراجات النارية الذكية (التنقل خطوة بخطوة وأكثر من ذلك بكثير): 9 خطوات
نموذج HUD للدراجات النارية الذكية (التنقل خطوة بخطوة وأكثر من ذلك بكثير): مرحبًا! هذه التعليمات هي قصة كيف صممت وصنعت منصة HUD (شاشة عرض رأسية) مصممة ليتم تثبيتها على خوذات الدراجات النارية. تمت كتابته في سياق مسابقة & quot؛ الخرائط & quot؛. للأسف ، لم أتمكن من إنهاء
DIY Givi V56 مجموعة مصابيح Topbox للدراجات النارية مع إشارات متكاملة: 4 خطوات (مع صور)
مجموعة DIY Givi V56 للدراجات النارية Topbox Light Kit مع إشارات متكاملة: بصفتي متسابقًا للدراجات النارية ، فأنا على دراية تامة بأن أعامل كأنني غير مرئي على الطريق. شيء واحد أقوم بإضافته دائمًا إلى دراجتي هو الصندوق العلوي الذي عادةً ما يحتوي على ضوء مدمج. قمت مؤخرًا بالترقية إلى دراجة جديدة واشتريت Givi V56 Monokey
وحدة تحكم RGB للدراجات النارية: 8 خطوات
وحدة تحكم RGB للدراجات النارية: سأوضح لك اليوم كيفية إنشاء وحدة تحكم RGB led لدراجتك الخاصة. !! في بعض البلدان ، يعد تعديل الأضواء على دراجتك غير قانوني ، لذا تحقق مما إذا كان قانونيًا قبل القيام بذلك
ساعة قرص تعمل بالطاقة الشمسية للدراجات النارية: 5 خطوات (مع صور)
ساعة قرص دراجة نارية تعمل بالطاقة الشمسية: كان لدي قرص tacho من دراجتي النارية القديمة ، عندما استبدلت عداد الدوران الميكانيكي بلوحة إلكترونية (هذا مشروع آخر!) ولم أرغب في التخلص منه. تم تصميم هذه الأشياء لتكون مضاءة من الخلف عندما تنطفئ أضواء الدراجة
TfCD - لوحة توصيل ذاتية القيادة: 6 خطوات (بالصور)
TfCD - لوحة القيادة ذاتية القيادة: في هذا Instructable ، سنعرض إحدى التقنيات التي تُستخدم غالبًا في المركبات ذاتية القيادة: اكتشاف العوائق بالموجات فوق الصوتية. داخل السيارات ذاتية القيادة ، تُستخدم هذه التقنية للتعرف على العوائق على مسافة قصيرة (& lt) ؛ 4 م) ، و