Obsah:
- Zásoby
- Krok 1: Prototypovanie
- Krok 2: Príprava Raspberry Pi
- Krok 3: Databáza
- Krok 4: Backend
- Krok 5: Frontend
- Krok 6: Zobrazenie ovládacieho panela na displeji
- Krok 7: Spájkovanie elektroniky
- Krok 8: Napájanie
- Krok 9: Bývanie
Video: Palubný panel motocykla Raspberry Pi: 9 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
Ako študent multimediálnych a komunikačných technológií v Howest Kortrijk som musel vytvoriť vlastný projekt internetu vecí. To by spojilo všetky moduly sledované v prvom roku do jedného veľkého projektu. Pretože vo svojom voľnom čase veľa jazdím na motocykli, rozhodol som sa využiť svoje nadobudnuté schopnosti na MCT tu a postaviť pre svoj motocykel niečo: inteligentnú palubnú dosku.
MotoDash je palubná doska poháňaná Raspberry Pi navrhnutá pre fanatických motocyklistov, ktorá dáva jazdcovi možnosť sledovať jeho výkon.
Aké sú vlastnosti tohto informačného panela?
- Zobrazenie aktuálneho uhla náklonu
- Zobrazenie aktuálneho zrýchlenia
- Schopnosť monitorovať teplotu oleja
- Pri jazde v tme sa automaticky prepne na tmavú tému
- Zaznamenávajte si údaje o svojich jazdách a prezerajte si svoje vlastné štatistiky
Zásoby
Hlavná výpočtová jednotka:
Raspberry Pi Toto je hlavný ovládač systému
Elektronika:
- USB nabíjačka pre motocykel 12V-5V Hlavný napájací zdroj pre RPi
- 4 -pinové poistkové relé 12V Prepínač na zapnutie/vypnutie napájacieho obvodu RPi
- Breadboard s prepojovacími drôtmi (voliteľné) Na testovanie a prototypovanie
-
Breakout Pi plus Toto je prototypová doska, na ktorej môžete spájkovať všetky svoje súčiastky. Je vyrobený tak, aby sa zmestil priamo na Raspberry Pi, takže rozmery projektu zostanú na minime.
Sada odporov
Rôzne farby drôtu 0,2 mm
Senzory a moduly:
- Vodotesný 1-vodičový snímač teploty DS18B20Snímač teploty oleja
- 3osý gyroskopický akcelerometer MPU6050Snímač náklonu/zrýchlenia
- Svetlo závislý odpor (LDR)
MCP3008-8-kanálový 10-bitový ADC s rozhraním SPI
TFT SPI displej (alebo akýkoľvek iný LCD displej, ktorý vyhovuje vašim potrebám)
RGB LED
Puzdro:
- Plastová krabica
- Puzdro na malinu pi
Náradie:
- Spájkovačka a spájkovačka
- 2,5 mm skrutky a rozpery
- Vodotesné káblové konektory
- Super lepidlo
- …
Krok 1: Prototypovanie
Predtým, ako urobíme všetko trvalým, zostavíme projekt na doske. Tento krok môžete preskočiť, ak ste si úplne istí, že neurobíte chyby. Schému elektrického/breadboardu nájdete v nižšie uvedenom PDF. Spojte obvod presne podľa popisu. Na RPi používajte iba pin 3,3 V, nie 5 V. Tiež pred zapnutím malinového Pi dvakrát skontrolujte svoj obvod. Uistite sa, že neexistujú žiadne šortky!
Krok 2: Príprava Raspberry Pi
V prvom rade nastavíme Raspberry Pi. Raspberry Pi je mini počítač, ktorý môže používať vlastný operačný systém. Za tento projekt je zodpovedný za spracovanie senzordát, hostovanie webovej stránky, spúšťanie servera a databázy,…
1. Nainštalujte si vlastný obrázok Raspbian
Poskytnutý obrázok už obsahuje softvérové balíky potrebné na spustenie tohto projektu:
- Apache pre frontend webu
- MariaDB pre databázu
- PhpMyAdmin na manipuláciu s databázou
- Vlastné povolenia, aby sa predišlo problémom
Vlastný obrázok je možné stiahnuť tu.
Návod na inštaláciu obrázkov nájdete tu:
Akonáhle je obrázok nainštalovaný, pripojte Raspberry Pi k počítaču pomocou ethernetového kábla. Teraz sa k nemu môžete pripojiť pomocou klienta SSH na adrese IP 169.254.10.1
Je dobrým zvykom okamžite nastaviť nové heslo pomocou príkazu passwd
2. Konfigurácia bezdrôtového prístupového bodu
Keď je projekt dokončený, chceme sa môcť pripojiť k RPi cez wifi, takže z neho urobme bezdrôtový AP. Návod na to nájdete tu.
Tento návod musíte vykonať až do kroku 7. Krok 8 nie je potrebný, pretože nepotrebujeme premosťovať internetové pripojenie, ale vytvoriť samostatnú sieť.
3. Povolenie rozhraní
Choďte do raspi-config
sudo raspi-config
Prejdite na možnosti rozhrania a povoľte 1-vodičové, SPI a I2C a reštartujte počítač Pi
3. Nastavenie ovládačov pre displej
Inicializácia displeja
Upravte súbor /etc /modules
sudo nano /etc /modules
Pridajte nasledujúce 2 riadky
spi-bcm2835fbtft_device
Teraz upravte /etc/modprobe.d/fbtft.conf
sudo nano /etc/modprobe.d/fbtft.conf
Pridajte nasledujúci riadok
možnosti fbtft_device name = tm022hdh26 gpios = reset: 25, dc: 24, led: 18 rotate = 90 speed = 80000000 fps = 60
Reštartujte počítač Pi. Ak vidíte podsvietenie displeja, všetko sa zlepšilo. Toto bude inicializovať zobrazenie vždy, keď sa Pi spustí, ale teraz zobrazí iba čiernu obrazovku. Aby sme dostali obsah Pi na displej, musíme skopírovať obsah hlavnej obrazovky na malý LCD. Na tento účel použijeme službu s názvom „fbcp“.
Inštalácia služby fbcp
sudo apt-get install cmake
klon git
cd rpi-fbcp
stavba mkdir
zostava cd/
cmake..
urobiť
sudo nainštalovať fbcp/usr/local/bin/fbcp
Teraz sme nainštalovali službu. Pretože však používame Pi bez hlavy, nie je k dispozícii žiadna obrazovka, z ktorej by bolo možné kopírovať obsah. Ak chcete, aby Pi prenášal obsah obrazovky, upravte súbor /boot/config.txt
sudo nano /boot/config.txt
Nájdite a odošlite komentár alebo pridajte do tohto súboru nasledujúce riadky:
hdmi_force_hotplug = 1
hdmi_cvt = 640 480 60 0 0 0 0
display_rotate = 0
hdmi_group = 2
hdmi_mode = 87
Reštartujte RPi a vyskúšajte si službu fbcp zadaním fbcp do konzoly. Teraz by ste mali vidieť obsah obrazovky na LCD displeji.
Spustenie fbcp pri spustení
Upravte súbor /etc/rc.local a medzi adresu IP a výstupný riadok pridajte nasledujúci riadok
fbcp &
Teraz by sa mal displej zapnúť pri každom spustení RPi
Krok 3: Databáza
Na zaznamenávanie a ukladanie senzordát som navrhol vlastnú databázu, ktorá obsahuje 4 tabuľky. Diagram EER je zobrazený na obrázku vyššie.
1. Zariadenia
Táto tabuľka obsahuje všetky snímače. Popisuje názov senzora, popis a meraciu jednotku. Táto tabuľka má vzťah k akciám tabuľky jedna k mnohým, pretože v mojom prípade senzor akcelerátora môže vykonávať rôzne úlohy.
2. Akcie
Táto tabuľka obsahuje akcie pre rôzne snímače. Jedna akcia je vždy spojená s konkrétnym snímačom. Napríklad: akcia „TEMP“je spojená so zariadením, ktoré meria teplotu. Toto by bol 1-vodičový snímač teploty.
3. História
Táto tabuľka obsahuje všetky protokoly snímačov. Každý denník má identifikátor akcie, hodnotu, časovú pečiatku a číslo jazdy
4. Jazdy
Táto tabuľka ukladá rôzne jazdy. Zakaždým, keď používateľ začne novú jazdu, vykoná sa nový záznam v tejto tabuľke
Ak chcete získať túto databázu na svojom Raspberry Pi, prejdite na môj GitHub a klonujte/stiahnite si úložisko. V databáze nájdete 2 súbory.sql. Spustite ich na pracovnom stole PhpMyAdmin alebo MySQL. Teraz by mala byť databáza na vašom RPi.
Krok 4: Backend
Ak ste to ešte neurobili, prejdite na môj GitHub a klonujte/stiahnite si úložisko. V priečinku Backend nájdete úplný backend projektu.
Priečinok obsahuje triedy na čítanie senzorov pod /pomocníkmi, súbory na komunikáciu s databázou pod /úložiskami a hlavná aplikácia sa nachádza v koreňovom priečinku pod názvom app.py.
Inštalácia balíkov Python
Predtým, ako sa pokúsime spustiť čokoľvek, musíme najskôr nainštalovať niektoré balíky pre python. Choďte do terminálu vášho RPi a zadajte nasledujúce príkazy:
pip3 nainštalujte mysql-connector-python
pip3 nainštalujte flask-socketio
pip3 nainštalujte flask-cors
pip3 install gevent
pip3 nainštalujte gevent-websocket
DÔLEŽITÁ POZNÁMKA: Ak ste zmenili heslo pre Mariadb/MySQL, zmeňte ho v config.py!
Otestujte backend
Spustite aplikáciu app.py pomocou prekladača python3 (/usr/bin/python3). Uistite sa, že nie sú žiadne chyby.
Spustenie backendu pri bootovaní
Upravte službu motoDash_backend.service a zmeňte YOURFILEPATH na cestu, kde je uložené úložisko.
Teraz skopírujte tento súbor do/etc/systemd/system/
sudo cp motoDash_backend.service /etc/systemd/system/motoDash_backend.service.
Teraz sa backend spustí automaticky pri každom spustení RPi.
Krok 5: Frontend
Choďte do GitHub Repo. Skopírujte obsah adresára Frontend do/var/www/html.
To je všetko, čo by ste mali urobiť, aby frontend fungoval. Tento priečinok obsahuje všetky webové stránky, štýly a skripty pre webové rozhranie. Tiež komunikuje so serverom. Ak chcete otestovať, či všetko funguje, ako má, uistite sa, že ste pripojení k svojmu RPi, a do prehliadača zadajte IP adresu RPi. Mali by ste vidieť domovskú stránku webového rozhrania.
Poznámka: Web je responzívny, takže ho môžete používať na mobile aj na počítači
Krok 6: Zobrazenie ovládacieho panela na displeji
Frontend má vlastnú skrytú webovú stránku používanú iba pre malý displej. Automaticky zavedieme Pi z tohto webu do režimu celej obrazovky.
Uistite sa, že RPi je v možnostiach bootovania nastavený na automatické prihlásenie na ploche v raspi-config
sudo raspi-config
Teraz prejdite do skrytého priečinka s konfiguráciou a vytvorte tam nový súbor
cd.konfig
sudo mkdir -p lxsession/LXDE -pi
sudo nano lxsession/LXDE-pi/automatické spustenie
Pridajte do tohto súboru nasledujúce riadky a uložte
@xscreensaver -no -splash
@xset je vypnutý
@xset -dpms
@xset s noblank
@chromium-browser --noerrors --disable-session-crashed-bubble --disable-infobars --kiosk --incognitoTeraz by sa Pi malo na túto webovú stránku spustiť vždy
Krok 7: Spájkovanie elektroniky
Vezmite oddeľovaciu dosku a štruktúrovane na ňu rozložte svoje komponenty. Nebudem diskutovať o rozložení, ako som na neho spájkoval súčiastky, pretože som na ňom urobil dosť zlú prácu. Na doske som použil samostatné záhlavia pinov, takže som potreboval iba pripojiť senzory a moduly k pravému kolíku. Uistite sa, že viete, na čo je špendlík určený!
Niekoľko tipov pri spájkovaní:
- Pri prechode na väčšie vzdialenosti používajte izolované vodiče. Posledná vec, ktorú chcete, sú šortky vo vašom obvode
- Po spájkovaní súčiastky alebo drôtu skontrolujte jeho spojitosť pomocou multimetra. Pravidelne kontrolujte aj skraty.
- Nepoužívajte príliš veľa alebo príliš málo spájky!
- Ak neviete, ako spájkovať, precvičte si to najskôr na ďalšej prototypovacej doske. Tu nájdete návod na spájkovanie.
Teraz spájkujte drôty dostatočne dlhé na snímače a dajte okolo nich zmršťovaciu fóliu, aby ste sa presvedčili, že všetko nie je skratované a čisté.
Keď ste hotoví, dvakrát skontrolujte, či nie sú skraty alebo zlé pripojenia, a skontrolujte každé zapojenie pomocou elektrickej schémy, či je správne. Akonáhle ste si istí, že je všetko urobené správne, pokračujte a položte oddeľovaciu dosku na RPi, nakoniec ju pevne priskrutkujte pomocou 2,5 mm skrutiek a stojok. Pripojte senzory k správnym kolíkom a otestujte ich všetky pomocou webovej stránky.
Krok 8: Napájanie
Na napájanie Raspberry Pi použijeme USB adaptér 12V-5V. Tento adaptér bude pripojený k batérii motocykla. Aby sme sa uistili, že sa RPi zapne, keď je spínač zapaľovania zapnutý, použijeme relé. Relé zopne napájací obvod RPi, keď zistí napätie zo zadného svetla (zadné svetlo sa vždy zapne pri zapnutí zapaľovania).
Podrobnejší návod na túto tému nájdete na tejto stránke: https://www.hondagrom.net/threads/2017-gromsf-msx125sf-wire-up-auxiliary-power-for-pcv-wb2-and-other-fuel -kontroléry.16921/
Krok 9: Bývanie
Displej
V prípade displeja si vezmite tvrdý plastový box zhruba od veľkosti displeja. Vyrežte do neho štvorcový otvor veľký ako displej a zodpovedajúce otvory na zaskrutkovanie displeja. Vpredu je potrebné vyvŕtať ďalšie 2 otvory pre RGB LED a LDR.
Tento box som pripevnil na držiak smartfónu pomocou skrutky.
Teplotný senzor
Aby som umiestnil snímač teploty, 3D vytlačil som olejomer, ktorý je vhodný pre môj motocykel.
Malinový koláč
Malinu Pi namontujte na bezpečné miesto vo vnútri motocykla, umiestnil som ju pod jeden z blatníkov pomocou niektorých suchých zipsov. A chránil ho pred živlami pomocou krytu a nejakého plastu.
Akcelerometer
Akcelerometer namontujte na bezpečné miesto, najlepšie na samotný rám motocykla.
Poznámka:
Nemusíte mať úplne rovnaké bývanie ako ja, môžete ho dokončiť, ako sa vám páči. Zaistite, aby boli elektronické súčiastky chránené pred dažďom a prachom.
Odporúča:
Prototyp inteligentného motocykla HUD (podrobná navigácia a oveľa viac): 9 krokov
Prototyp inteligentného motocykla HUD (podrobná navigácia a oveľa viac): Ahoj! Tento návod je príbehom o tom, ako som navrhol a postavil platformu HUD (Heads-Up Display) navrhnutú na montáž na motocyklové prilby. Bolo to napísané v kontexte súťaže „mapy“. Bohužiaľ, nebol som schopný úplne dokončiť
DIY Givi V56 Sada svetiel pre vrchný box motocykla s integrovanými signálmi: 4 kroky (s obrázkami)
DIY Givi V56 Sada vrchného boxu motocykla s integrovanými signálmi: Ako jazdec na motocykli som príliš oboznámený s tým, že sa so mnou zaobchádza ako s neviditeľným na ceste. Jedna vec, ktorú k svojim bicyklom vždy pridávam, je horný box, ktorý má zvyčajne integrované svetlo. Nedávno som prešiel na nový bicykel a kúpil som si Givi V56 Monokey
TripComputer - GPS palubný počítač a meteorologický modul pre vaše vozidlo: 11 krokov (s obrázkami)
TripComputer - GPS palubný počítač a modul predpovedí počasia pre vaše vozidlo: Chladný projekt maliny pi, ktorý používa modul GPS Breakout a 2 malé displeje Digole, aby mal na palubnej doske navigačný počítač
Pomocná ruka na čistenie reťaze motocykla .: 6 krokov
Pomocný čistič reťaze motocykla: Tento návod bol vytvorený ako splnenie projektovej požiadavky Makecourse na University of South Florida (www.makecourse.com). Tento návod poskytne znalosti o procese čistenia motocykla, zoznam požadovaných
Robotický mozog: Postavte jeden palubný počítač večer: 11 krokov
Robotický mozog: Postavte si večer jeden palubný počítač: Nedostatok pamäte vo vašom Picaxe alebo Arduine? Ale počítač je pre túto prácu nadbytočný? Pozrite sa na tento otvorený počítač s jednou doskou, ktorý je možné naprogramovať v jazykoch ako C, Basic, Forth, Pascal alebo Fortran. Táto doska používa lacné integrované obvody a del