Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Ok, see ei räägi, see pole must ja sellel pole AI -d. Kuid selle ees on need uhked punased LED -id.
Ehitan WiFi juhitavat robotit, mis koosneb WiFi -adapteriga Raspberry Pi ja Arduino Uno. Saate SSH -d sisse lülitada Raspberry Pi -sse ja juhtida Arduinot Python Tkinteri skriptiga seeria kaudu. Lisaks sõitmisele saate juhtida ka esi- ja tagatulesid, anda signaale vasakule/paremale ja lülitada sisse need lahedad Knight Rider LED -id!
Samm: mis on lõunaks? AKA tööriistad ja materjalid
Paljud materjalid on saadaval saidil BangGood.com. Need on odavad ja neil on peaaegu kõik. Ülejäänud leiate Ebays ja mõned kohalikus riistvara kaupluses.
Materjalid:
-
Vaarika Pi 2/B+
- 8 GB (või rohkem) micro SD -kaart
- mikro -USB -kaabel
- WiFi adapter
- Juhtum
- Arduino Uno
- 9v aku koos klambriga Arduino jaoks
- Lahe lõunasöök
- 5v USB toitepank (12000mAh)
- Leivaplaat, kus on piisavalt juhtmeid (meessoost isasele ja naissoost mehele)
- 5 mm LED -id (4 valget, 8 punast, 4 oranži)
- 10x 220 oomi takistid
- 2x mikroservo TowerPro 9g (muudetud pidevaks pöörlemiseks)
- 4x 42mm robotrattad
- 24mm ratas
- Kahepoolne teip
Tööriistad:
- Kuum liimipüstol
- Super liim
- Kruvikeeraja
Tähtis: kasutasin rataste jaoks muudetud servosid. Võite osta ka tavalisi mootoreid, kuid siis peate Arduino koodi muutma.
2. samm: lõunasöögi valmistamine
Nii et ma pidin võltsitud "rattaid" saagima, kus lõunakast toetub.
Pärast seda lisasin lõunalauale servo ja rattad (kuum liimis servo rattad). Ma kasutasin popsicle pulki, sest need olid ideaalsed servo toetamiseks. Pärast seda lisasin powerbanki. Jõupanga peale lisasin 2 popsicle pulka rattaga (super liimitud ratas popsicles pulgadesse). Jõupanga tagaküljel on Arduino Uno. Jõupanga peale tuleb Raspberry Pi (korpuses) ja selle peale leivalaud. Kinnitasin kõik kahepoolse teibiga. Viimati kruvisin esiküljel 2 võltsroboti ratast.
3. samm: LEDide paigaldamine
Puurisin 5 mm augud kõikjale, kuhu tahtsin LED -id paigutada. Kasutatud LED -ide läbimõõt on 5 mm, nii et need sobivad ideaalselt! Ma kasutasin:
- 2 punast tagatulede jaoks
- 2 valget tagurdustulede jaoks
- 6 punast Knight Rider LED -ide jaoks
- 2 valget esitulede jaoks
- 4 oranži signaaltulede jaoks.
Samm: juhtmestik
Noh, projekti kõige raskem osa oli juhtmestiku paigaldamine lõunakasti sisse. Spetsiaalselt LED -ide jaoks on palju juhtmeid. Valgusdioodide jaoks kasutasin leivaplaadi juhtmeid isast kuni emaseni, nii et te ei pea midagi jootma. Ülejäänud osas kasutasin isast isaseks.
Raspberry Pi ja Arduino on ühendatud USB kaudu. Tegin Fritzingi näite ja andsin endast parima, et see oleks võimalikult selge.
Samm: Raspberry Pi ettevalmistamine
Kõigile, kes on Raspberry Pi ja Linuxiga natuke tuttavad, peaks see olema rahu. Ma kasutasin Raspiani Pi toiteks. Sellel on python3 koos moodulitega tkinter ja pyserial eelinstallitud (seda vajame Arduino juhtimiseks)
- Minge Raspberry Pi ametlikule saidile ja laadige alla uusim Raspbian.
- Flashige uusim Raspbian teile micro sd (allalaadimissaidil on installijuhend).
- Ühendage Interneti -kaabel ja WiFi -adapter ning lülitage Pi sisse.
Nüüd peame konfigureerima Pi automaatselt WiFi -ühenduse loomiseks, kui see on peata režiimis.
-
Uurige oma Raspberry Pi IP -aadressi ühega neist meetoditest.
- Nmap, (see töötab kõige paremini Linuxis).
- Ühendatud seadmete nägemiseks logige oma ruuterisse sisse.
- Kasutage nutitelefoni rakendust, näiteks „Fing”, et skannida võrku ühendatud seadmeid.
- Alternatiivne meetod: ühendage Pi monitori ja klaviatuuriga ning kasutage oma IP kuvamiseks käsku ifconfig.
- Kui kasutate Linuxit, saate terminali abil oma pi -sse sisse lülitada, kui kasutate Windowsi, peaksite alla laadima kitt.
- Pärast ühenduse loomist ja sisselogimist (kasutajanimi: pi parool: vaarikas). tippige järgmine
sudo nano/etc/network/interfaces
Kustutage olemasolevad read ja kleepige faili järgmised read (asendage SSID oma SSID -ga ja asendage parool oma WiFi -parooliga, jätke jutumärgid alles!)
auto lo
iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp wpa-ssid "SSID" wpa-psk "parool"
Taaskäivitage Raspberry Pi ja loodetavasti ühendub see automaatselt teie WiFi -võrguga (pidage meeles, et teie IP -aadress muutub, kui olete traadiga ühenduse asemel WiFi kaudu ühendatud)
6. samm: kodeerimine
Failid saate minu githubist:
github.com/InfiniteFor/KnightRiderRobot
Laadige Wifi_BOT.ino fail oma Arduinole üles
- ühendage Arduino arvuti/sülearvutiga.
- avage fail WiFi_BOT.ino ametliku Arduino tarkvaraga ja klõpsake üles.
Kopeerige skript control.py oma Raspberry Pi -sse.
- Avage tekstiredaktoriga control.py.
- SSH sisestage pi ja sisestage:
nano -kontroll.py
Kleepige kood control.py -st oma äsja loodud pythoni skripti ja salvestage see
Samm 7: X11 edasisuunamine kaugjuhtimispuldi jaoks
Pythoni skripti toimimiseks peate sülearvutist/arvutist X11 edastama. Seda seetõttu, et tavaline SSH -seanss ei edasta X11 vaikimisi.
Kui kasutate Linuxit, on see tõesti lihtne. Lihtsalt rakendage oma käsureale -X või -Y (olenevalt sellest, kumb töötab). Näiteks:
ssh -X pi@
Kui olete akendel, peate vaatama muid samme. Lisaks pahtlile peate alla laadima ka xmingi. Seal on tõesti suurepärane juhend, kuidas xmingut pahtliga kasutada.
8. samm: lõunaaeg
- Lülitage oma Arduino (9v aku) ja Raspberry Pi (toitepank) sisse.
- Oodake, kuni Raspberry Pi käivitub.
- SSH teie sisse Raspberry Pi (ärge unustage X11 edastada) ja sisestage:
python3 control.py
Nautige!
Lisaks nuppudele saate vajutada ka klaviatuuri klahve. Need saadetakse kohe teie Arduinole.
Tulevased ideed:
Mul oli selle projekti jaoks nii palju inspiratsiooni, kuid ma ei suutnud neid kõiki teha. Nii et siin on lühike nimekiri muudest asjadest, mida saate teha:
- Ühendage kaamera Raspberry Pi -ga ja vaadake voogu veebisaidilt.
- Python tkinteri skripti asemel võite teha http -lehe, millele pääsete juurde roboti juhtimiseks. Saate isegi kaamera voogu näidata samal lehel! (selle meetodi jaoks pole X11 edastamist vaja)
- Portide edastamise abil saate oma robotit juhtida kõikjal maailmas!
- Selle asemel, et ühendada Pi koduvõrguga, saate Pi -le luua leviala. Nii ei piirdu te ainult koduvõrguga.
Palun andke mulle teada, kas teile meeldib see projekt. Samuti küsige julgelt kõiki küsimusi!
Võistlus Raspberry Pi konkursil 2016