विषयसूची:

रास्पबेरी पाई मोटरसाइकिल डैशबोर्ड: 9 कदम (चित्रों के साथ)
रास्पबेरी पाई मोटरसाइकिल डैशबोर्ड: 9 कदम (चित्रों के साथ)

वीडियो: रास्पबेरी पाई मोटरसाइकिल डैशबोर्ड: 9 कदम (चित्रों के साथ)

वीडियो: रास्पबेरी पाई मोटरसाइकिल डैशबोर्ड: 9 कदम (चित्रों के साथ)
वीडियो: Memory card kharab ho gaya To Aisa kijiye 2024, जुलाई
Anonim
रास्पबेरी पाई मोटरसाइकिल डैशबोर्ड
रास्पबेरी पाई मोटरसाइकिल डैशबोर्ड

Howest Kortrijk में एक छात्र मल्टीमीडिया और संचार प्रौद्योगिकी के रूप में, मुझे अपना IoT प्रोजेक्ट बनाना था। यह पहले वर्ष में अपनाए गए सभी मॉड्यूल को एक बड़ी परियोजना में जोड़ देगा। चूंकि मैं अपने खाली समय में अपनी मोटरसाइकिल की सवारी करता हूं, इसलिए मैंने एमसीटी में अपने अर्जित कौशल का उपयोग करने का फैसला किया, अपनी मोटरसाइकिल के लिए कुछ बनाएं: एक स्मार्ट डैशबोर्ड।

MotoDash एक रास्पबेरी पाई पावर्ड डैशबोर्ड है जिसे कट्टर मोटरसाइकिल चालकों के लिए डिज़ाइन किया गया है जो राइडर को उनके प्रदर्शन को ट्रैक करने की क्षमता देता है।

क्या हैं इस डैशबोर्ड की खासियत?

  • वर्तमान झुकाव कोण देखना
  • वर्तमान त्वरण देखना
  • तेल के तापमान की निगरानी करने की क्षमता
  • अंधेरे में सवारी करते समय स्वचालित रूप से डार्क थीम पर स्विच करें
  • अपनी सवारी का डेटा लॉग करें, और अपने स्वयं के आंकड़े देखें

आपूर्ति

मुख्य कंप्यूटिंग इकाई:

रास्पबेरी पाई यह सिस्टम का मुख्य नियंत्रक है

इलेक्ट्रॉनिक्स:

  • मोटरसाइकिल के लिए यूएसबी चार्जर 12V-5VRPi के लिए मुख्य शक्तियाँ
  • 4 पिन फ्यूज्ड रिले 12VRPi के पावर सर्किट को चालू / बंद करने के लिए स्विच करें
  • जम्पर तारों के साथ ब्रेडबोर्ड (वैकल्पिक) परीक्षण और प्रोटोटाइप के लिए
  • प्रतिरोधों का एक सेट

    0.2 मिमी तार के विभिन्न रंग

  • ब्रेकआउट पाई प्लस यह एक प्रोटोटाइप बोर्ड है जहां आप अपने सभी घटकों को मिलाप कर सकते हैं। इसे सीधे रास्पबेरी पाई के शीर्ष पर फिट करने के लिए बनाया गया है, इसलिए परियोजना के आयाम न्यूनतम रहते हैं।

सेंसर और मॉड्यूल:

  • वाटरप्रूफ DS18B20 1-वायर टेम्परेचर सेंसरऑयल टेम्परेचर सेंसर
  • 3 अक्ष Gyro Accelerometer MPU6050Tilt/accel sensor
  • लाइट डिपेंडेंट रेसिस्टर (LDR)
  • MCP3008 - SPI इंटरफ़ेस के साथ 8-चैनल 10-बिट ADC

    टीएफटी एसपीआई डिस्प्ले (या कोई अन्य एलसीडी डिस्प्ले जो आपकी आवश्यकताओं के अनुरूप हो)

    आरजीबी एलईडी

आवरण:

  • प्लास्टिक का डिब्बा
  • रास्पबेरी पाई केस

उपकरण:

  • सोल्डरिंग आयरन और सोल्डर
  • 2.5 मिमी स्क्रू और स्पेसर
  • पनरोक केबल कनेक्टर
  • सुपर गोंद

चरण 1: प्रोटोटाइप

प्रोटोटाइप
प्रोटोटाइप
प्रोटोटाइप
प्रोटोटाइप

इससे पहले कि हम सब कुछ स्थायी कर दें, हम प्रोजेक्ट को एक ब्रेडबोर्ड पर एक साथ रखेंगे। इस चरण को छोड़ दिया जा सकता है यदि आप पूरी तरह से सुनिश्चित हैं कि आप गलतियाँ नहीं करेंगे। बिजली / ब्रेडबोर्ड योजना नीचे पीडीएफ में पाई जा सकती है। जैसा कि वर्णित है सर्किट को एक साथ रखें। सुनिश्चित करें कि केवल 3.3V पिन का उपयोग करें और RPi पर 5V पिन का नहीं। इससे पहले कि आप रास्पबेरी पाई को पावर दें, अपने सर्किट को दोबारा जांचें। सुनिश्चित करें कि कोई शॉर्ट्स नहीं हैं!

चरण 2: रास्पबेरी पाई तैयार करना

रास्पबेरी पाई तैयार करना
रास्पबेरी पाई तैयार करना

सबसे पहले, हम रास्पबेरी पाई स्थापित करने जा रहे हैं। रास्पबेरी पाई एक छोटा कंप्यूटर है जो अपना ऑपरेटिंग सिस्टम चलाने में सक्षम है। इस परियोजना के लिए, यह सेंसर डेटा को संसाधित करने, वेबसाइट को होस्ट करने, बैकएंड और डेटाबेस चलाने,…

1. कस्टम रास्पियन छवि स्थापित करें

प्रदान की गई छवि में पहले से ही इस परियोजना को शुरू करने के लिए आवश्यक सॉफ़्टवेयर पैकेज शामिल हैं:

  • वेबसाइट फ़्रंटएंड के लिए अपाचे
  • डेटाबेस के लिए मारियाडीबी
  • PhpMyAdmin डेटाबेस में हेरफेर करने के लिए
  • समस्याओं से बचने के लिए कस्टम अनुमतियाँ

कस्टम छवि यहां से डाउनलोड की जा सकती है।

छवियों को स्थापित करने के लिए एक ट्यूटोरियल यहां पाया जा सकता है:

एक बार छवि स्थापित हो जाने के बाद, रास्पबेरी पाई को अपने पीसी से ईथरनेट केबल से कनेक्ट करें। अब आप एसएसएच क्लाइंट का उपयोग आईपी पते पर कनेक्ट करने के लिए कर सकते हैं 169.254.10.1

पासवार्ड कमांड का उपयोग करके तुरंत एक नया पासवर्ड सेट करना अच्छा अभ्यास है

2. वायरलेस एपी को कॉन्फ़िगर करना

जब परियोजना समाप्त हो जाती है, तो हम वाईफाई पर आरपीआई से कनेक्ट करने में सक्षम होना चाहते हैं, इसलिए इसे वायरलेस एपी में बदल दें। इसके लिए एक ट्यूटोरियल यहां पाया जा सकता है।

आपको केवल चरण 7 तक इस ट्यूटोरियल का अनुसरण करने की आवश्यकता है। चरण 8 की आवश्यकता नहीं है क्योंकि हमें इंटरनेट कनेक्शन को पाटने की आवश्यकता नहीं है, बल्कि एक स्टैंडअलोन नेटवर्क बनाने की आवश्यकता है।

3. इंटरफेस सक्षम करना

रास्पि-कॉन्फ़िगरेशन में जाएं

सुडो रास्पि-कॉन्फ़िगरेशन

इंटरफेसिंग विकल्पों पर जाएं और 1-वायर, SPI और I2C को सक्षम करें और Pi. को रीबूट करें

3. डिस्प्ले के लिए ड्राइवर सेट करना

डिस्प्ले को इनिशियलाइज़ करना

फ़ाइल को संपादित करें /etc/मॉड्यूल

सुडो नैनो / आदि / मॉड्यूल

निम्नलिखित 2 पंक्तियाँ जोड़ें

spi-bcm2835fbtft_device

अब संपादित करें /etc/modprobe.d/fbtft.conf

सुडो नैनो /etc/modprobe.d/fbtft.conf

निम्नलिखित पंक्ति जोड़ें

विकल्प fbtft_device name=tm022hdh26 gpios=reset:25, dc:24, LED:18 रोटेट=90 स्पीड=80000000 एफपीएस=60

पाई को रिबूट करें। अगर आप डिस्प्ले की बैकलाइट को लाइट अप देखें तो सब ठीक हो गया है। यह हर बार Pi के बूट होने पर डिस्प्ले को इनिशियलाइज़ करेगा, हालाँकि यह अब केवल एक ब्लैक स्क्रीन प्रदर्शित करेगा। डिस्प्ले पर पाई की सामग्री प्राप्त करने के लिए, हमें मुख्य स्क्रीन की सामग्री को छोटे एलसीडी पर कॉपी करना होगा। हम इसके लिए 'fbcp' नाम की सर्विस का इस्तेमाल करेंगे।

एफबीसीपी सेवा स्थापित करना

sudo apt-cmake स्थापित करें

गिट क्लोन

सीडी आरपीआई-एफबीसीपी

एमकेडीआईआर बिल्ड

सीडी बिल्ड/

सेमेक..

बनाना

sudo fbcp /usr/local/bin/fbcp. स्थापित करें

अब हमने सेवा स्थापित कर ली है। हालांकि, चूंकि हम पीआई हेडलेस का उपयोग कर रहे हैं, इसलिए सामग्री की प्रतिलिपि बनाने के लिए कोई स्क्रीन उपलब्ध नहीं है। स्क्रीन सामग्री को आउटपुट करने के लिए पाई को बाध्य करने के लिए, /boot/config.txt संपादित करें

सुडो नैनो /boot/config.txt

इस फ़ाइल में निम्न पंक्तियाँ ढूँढें और असम्बद्ध करें या जोड़ें:

hdmi_force_hotplug=1

hdmi_cvt=640 480 60 0 0 0 0

डिस्प्ले_रोटेट = 0

hdmi_group=2

hdmi_mode=87

आरपीआई को रीबूट करें, और कंसोल में एफबीसीपी टाइप करके एफबीसीपी सेवा का परीक्षण करें। अब आपको एलसीडी पर स्क्रीन की सामग्री देखनी चाहिए।

स्टार्टअप पर fbcp चलाना

संपादित करें /etc/rc.local और आईपी पते और निकास लाइन के बीच निम्न पंक्ति जोड़ें

एफबीसीपी और

अब हर बार आरपीआई बूट होने पर डिस्प्ले चालू होना चाहिए

चरण 3: डेटाबेस

डेटाबेस
डेटाबेस

सेंसरडेटा को लॉग और स्टोर करने के लिए मैंने अपना खुद का डेटाबेस तैयार किया है जिसमें 4 टेबल हैं। ईईआर आरेख ऊपर की छवि में दिखाया गया है।

1. उपकरण

इस तालिका में हर सेंसर होता है। यह सेंसर के नाम, विवरण और मापने की इकाई का वर्णन करता है। इस तालिका का तालिका क्रियाओं के साथ एक-से-अनेक संबंध है, जैसा कि मेरे मामले में, एक्सेलेरो सेंसर विभिन्न कार्य कर सकता है।

2. क्रियाएं

यह तालिका विभिन्न सेंसर के लिए क्रियाओं को संग्रहीत करती है। एक क्रिया हमेशा एक विशेष सेंसर से जुड़ी होती है। उदाहरण के लिए: क्रिया 'TEMP' उस उपकरण से जुड़ी होती है जो तापमान को मापता है। यह 1-वायर तापमान सेंसर होगा।

3. इतिहास

इस तालिका में सभी सेंसर लॉग हैं। प्रत्येक लॉग में एक एक्शन आईडी, एक मान, एक टाइमस्टैम्प और एक राइडिड होता है

4. सवारी

यह तालिका विभिन्न सवारी संग्रहीत करती है। हर बार जब उपयोगकर्ता एक नई सवारी शुरू करता है, तो इस तालिका में एक नई प्रविष्टि की जाती है

इस डेटाबेस को अपने रास्पबेरी पाई पर प्राप्त करने के लिए, मेरे गिटहब पर जाएं और रिपॉजिटरी को क्लोन/डाउनलोड करें। डेटाबेस के तहत आपको 2.sql फाइलें मिलेंगी। इन्हें PhpMyAdmin या MySQL कार्यक्षेत्र में चलाएँ। अब डेटाबेस आपके आरपीआई पर होना चाहिए।

चरण 4: बैकएंड

यदि आपने पहले से नहीं किया है, तो मेरे GitHub पर जाएं और रिपॉजिटरी को क्लोन/डाउनलोड करें। बैकएंड फोल्डर के तहत आपको प्रोजेक्ट के लिए पूरा बैकएंड मिलेगा।

फ़ोल्डर में / हेल्पर्स के तहत सेंसर पढ़ने के लिए कक्षाएं हैं, डेटाबेस के साथ संवाद करने के लिए फाइलें / रिपॉजिटरी के तहत हैं, और मुख्य एप्लिकेशन ऐप.py नाम के तहत रूट में स्थित है।

पायथन पैकेज स्थापित करना

इससे पहले कि हम कुछ भी चलाने का प्रयास करें, हमें पहले पायथन के लिए कुछ पैकेज स्थापित करने होंगे। अपने आरपीआई के टर्मिनल में जाएं और निम्न आदेश टाइप करें:

pip3 mysql-कनेक्टर-अजगर स्थापित करें

pip3 फ्लास्क-सॉकेटियो स्थापित करें

pip3 फ्लास्क-कोर्स स्थापित करें

pip3 gevent स्थापित करें

pip3 gevent-websocket स्थापित करें

महत्वपूर्ण नोट: यदि आपने अपना मारियाडब/माईस्क्ल पासवर्ड बदल दिया है, तो config.py में पासवर्ड बदलें!

बैकएंड का परीक्षण करें

python3 दुभाषिया (/usr/bin/python3) का उपयोग करके app.py चलाएँ। सुनिश्चित करें कि कोई त्रुटि नहीं है।

बूट पर बैकएंड चलाना

motoDash_backend.service संपादित करें और YourFILEPATH को उस पथ में बदलें जहां भंडार सहेजा गया है।

अब इस फाइल को /etc/systemd/system/ में कॉपी करें

sudo cp motoDash_backend.service /etc/systemd/system/motoDash_backend.service.

अब हर बार आरपीआई बूट होने पर बैकएंड अपने आप शुरू हो जाएगा।

चरण 5: फ्रंटएंड

फ़्रंट एंड
फ़्रंट एंड
फ़्रंट एंड
फ़्रंट एंड

गिटहब रेपो में जाएं। फ़्रंटएंड निर्देशिका की सामग्री को /var/www/html में कॉपी करें।

फ्रंटएंड को काम करने के लिए आपको बस इतना ही करना चाहिए। इस फ़ोल्डर में वेब इंटरफेस के लिए सभी वेबपेज, स्टाइल और स्क्रिप्ट शामिल हैं। यह बैकएंड के साथ भी संचार करता है। यह जांचने के लिए कि क्या सब कुछ उसी तरह काम करता है, सुनिश्चित करें कि आप अपने आरपीआई से जुड़े हुए हैं, और एक ब्राउज़र में आरपीआई का आईपी पता टाइप करें। आपको वेब इंटरफेस का होमपेज देखना चाहिए।

नोट: वेबसाइट उत्तरदायी है, इसलिए आप इसे मोबाइल के साथ-साथ डेस्कटॉप पर भी उपयोग कर सकते हैं

चरण 6: डिस्प्ले पर डैशबोर्ड प्रदर्शित करना

डिस्प्ले पर डैशबोर्ड प्रदर्शित करना
डिस्प्ले पर डैशबोर्ड प्रदर्शित करना

फ्रंटएंड का अपना छिपा हुआ वेबपेज होता है जिसका उपयोग केवल छोटे डिस्प्ले के लिए किया जाता है। हम पूर्ण स्क्रीन मोड में इस वेबसाइट पर स्वचालित रूप से पाई बूट कर देंगे।

सुनिश्चित करें कि आरपीआई बूट विकल्पों के तहत raspi-config में डेस्कटॉप ऑटोलॉगिन पर सेट है

सुडो रास्पि-कॉन्फ़िगरेशन

अब हिडन कॉन्फिग फोल्डर में जाएं और वहां एक नई फाइल बनाएं

सीडी.config

sudo mkdir -p lxsession/LXDE-pi

sudo nano lxsession/LXDE-pi/autostart

इस फ़ाइल में निम्न पंक्तियाँ जोड़ें और सहेजें

@xscreensaver -no-splash

@xset बंद

@xset -dpms

@xset s noblank

@ क्रोमियम-ब्राउज़र --noerrors --disable-session-crashed-bubble --disable-infobars --kiosk --incognito

अब Pi को इस वेबपेज पर हर बार बूट करना चाहिए।

चरण 7: इलेक्ट्रॉनिक्स को मिलाप करना

इलेक्ट्रॉनिक्स सोल्डरिंग
इलेक्ट्रॉनिक्स सोल्डरिंग
इलेक्ट्रॉनिक्स सोल्डरिंग
इलेक्ट्रॉनिक्स सोल्डरिंग
इलेक्ट्रॉनिक्स सोल्डरिंग
इलेक्ट्रॉनिक्स सोल्डरिंग
इलेक्ट्रॉनिक्स सोल्डरिंग
इलेक्ट्रॉनिक्स सोल्डरिंग

ब्रेकआउट बोर्ड लें और उस पर अपने घटकों को संरचित तरीके से बिछाएं। मैं इस पर चर्चा नहीं करूंगा कि मैंने इस पर घटकों को कैसे मिलाया, क्योंकि मैंने इस पर बहुत खराब काम किया था। मैंने बोर्ड पर अलग पिन हेडर का इस्तेमाल किया ताकि मुझे केवल सेंसर और मॉड्यूल को सही पिन से जोड़ने की जरूरत हो। सुनिश्चित करें कि आप जानते हैं कि कौन सा पिन किस लिए है!

सोल्डरिंग करते समय कुछ टिप्स:

  • अधिक दूरी पार करते समय इंसुलेटेड तारों का प्रयोग करें। आखिरी चीज जो आप चाहते हैं वह आपके सर्किट में शॉर्ट्स है
  • किसी कंपोनेंट या तार को सोल्डर करने के बाद मल्टीमीटर से उसकी निरंतरता की जांच करें। शॉर्ट सर्किट के लिए भी नियमित जांच करें।
  • बहुत अधिक या बहुत कम सोल्डर का प्रयोग न करें!
  • यदि आप नहीं जानते कि कैसे मिलाप करना है, तो पहले दूसरे प्रोटोटाइप बोर्ड पर इसका अभ्यास करें। सोल्डरिंग पर एक ट्यूटोरियल यहां पाया जा सकता है।

अब सोल्डर तार सेंसर तक काफी लंबे हो गए हैं, और यह सुनिश्चित करने के लिए कि सब कुछ छोटा और साफ नहीं है, उनके चारों ओर कुछ सिकुड़ते हुए लपेटें।

जब आप समाप्त कर लें, तो किसी भी शॉर्ट या खराब कनेक्शन के लिए दोबारा जांच करें, और बिजली योजना के साथ हर कनेक्शन की जांच करें कि क्या यह सही कनेक्शन है। एक बार जब आप सुनिश्चित हो जाएं कि सब कुछ सही ढंग से किया गया है, तो आगे बढ़ें और ब्रेकआउट बोर्ड को आरपीआई पर रखें, अंत में इसे कुछ 2.5 मिमी स्क्रू और स्टैंडऑफ के साथ कस लें। सेंसर को सही पिन से कनेक्ट करें और वेबसाइट का उपयोग करके उन सभी का परीक्षण करें।

चरण 8: बिजली की आपूर्ति

रास्पबेरी पाई को पावर देने के लिए हम 12V-5V USB अडैप्टर का उपयोग करने जा रहे हैं। यह एडेप्टर मोटरसाइकिल की बैटरी से जुड़ा होगा। यह सुनिश्चित करने के लिए कि इग्निशन स्विच चालू होने पर आरपीआई शक्तियाँ चालू हों, हम एक रिले का उपयोग करने जा रहे हैं। रिले आरपीआई पावर सर्किट को बंद कर देगा जब यह टेललाइट से वोल्टेज का पता लगाता है (इग्निशन चालू करते समय टेललाइट हमेशा चालू होता है)।

इस बारे में अधिक विस्तृत ट्यूटोरियल के लिए, इस पृष्ठ को देखें: https://www.hondagrom.net/threads/2017-gromsf-msx125sf-wire-up-auxiliary-power-for-pcv-wb2-and-other-फ्यूल -नियंत्रक.१६९२१/

चरण 9: आवास

आवास
आवास
आवास
आवास
आवास
आवास

आवास प्रदर्शित करें

डिस्प्ले के लिए, डिस्प्ले के आकार के चारों ओर से एक सख्त प्लास्टिक बॉक्स लें। इसमें डिस्प्ले जितना बड़ा एक चौकोर छेद काटें, और डिस्प्ले को स्क्रू करने के लिए मैचिंग होल को काटें। सामने की तरफ आपको RGB LED और LDR के लिए 2 और छेद ड्रिल करने होंगे।

मैंने इस बॉक्स को एक बोल्ट का उपयोग करके स्मार्टफोन धारक के ऊपर रखा है।

तापमान संवेदक

तापमान संवेदक को रखने के लिए, I 3D ने एक तेल गेज मुद्रित किया जो मेरी मोटरसाइकिल पर फिट बैठता है।

रास्पबेरी पाई

रास्पबेरी पाई को मोटरसाइकिल के अंदर एक सुरक्षित स्थान पर माउंट करें, मैंने इसे कुछ वेल्क्रो पट्टियों का उपयोग करके एक फेंडर के नीचे रखा। और इसे एक आवास और कुछ प्लास्टिक का उपयोग करके तत्वों से बचाया।

accelerometer

एक्सेलेरोमीटर को सुरक्षित स्थान पर माउंट करें, अधिमानतः मोटरसाइकिल के फ्रेम पर ही।

ध्यान दें:

आपके पास ठीक वैसा ही आवास होने की आवश्यकता नहीं है जैसा मैंने किया था, आप इसे समाप्त करने के लिए स्वतंत्र हैं, हालांकि आप इसे पसंद करते हैं। बस सुनिश्चित करें कि इलेक्ट्रॉनिक घटक बारिश और धूल से सुरक्षित हैं।

सिफारिश की: