Inhoudsopgave:
- Stap 1: Wat is er voor de lunch? AKA-gereedschappen en materialen
- Stap 2: Uw lunch bereiden
- Stap 3: Montage van de LED's
- Stap 4: De bedrading
- Stap 5: De Raspberry Pi voorbereiden
- Stap 6: De codering
- Stap 7: X11 doorsturen voor afstandsbediening
- Stap 8: Lunchtijd
Video: Knight Rider Lunchbox Robot - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Ok, hij praat niet, hij is niet zwart en heeft geen AI. Maar het heeft wel van die mooie rode LED's aan de voorkant.
Ik bouw een WiFi bestuurbare robot die bestaat uit een Raspberry Pi met WiFi adapter en een Arduino Uno. Je kunt SSH naar de Raspberry Pi sturen en de Arduino besturen met een Python Tkinter-script via serieel. Naast het rijden kun je ook de voor-/achterlichten bedienen, links/rechts signaleren en die coole Knight Rider LED's aanzetten!
Stap 1: Wat is er voor de lunch? AKA-gereedschappen en materialen
Veel van het materiaal is beschikbaar op BangGood.com. Ze zijn goedkoop en hebben bijna alles. U kunt de rest vinden op Ebay en sommige in uw plaatselijke ijzerhandel.
Materialen:
-
Raspberry Pi 2/B+
- 8 GB (of meer) micro SD-kaart
- micro-USB-kabel
- WiFi-adapter
- Geval
- Arduino Uno
- 9v batterij met batterijclip voor Arduino
- Een coole lunchbo
- 5v USB-powerbank (12000mAh)
- Breadboard met voldoende draden (man naar man en vrouw naar man)
- 5 mm LED's (4 wit, 8 rood, 4 oranje)
- 10x 220ohm weerstanden
- 2x micro servo TowerPro 9g (aangepast voor continue rotatie)
- 4x 42 mm robotwielen
- 24 mm zwenkwiel
- Dubbelzijdige tape
Gereedschap:
- Heet lijmpistool
- superlijm
- Schroevendraaier
Belangrijk: ik heb aangepaste servo's gebruikt voor de wielen. Je kunt ook normale motoren kopen, maar dan moet je de Arduino-code aanpassen.
Stap 2: Uw lunch bereiden
Dus ik moest de nep "wielen" zien waar de lunchbox op rust.
Daarna heb ik de servo's en wielen op de lunchbox toegevoegd (heet gelijmd de wielen op de servo's). Ik gebruikte ijslollystokjes omdat ze perfect waren om de servo's op te laten rusten. Daarna heb ik de powerbank toegevoegd. Bovenop de powerbank heb ik 2 ijslollystokjes met een zwenkwiel toegevoegd (de zwenkwiel op de ijslollystokjes supergelijmd). Op de achterkant van de powerbank komt de Arduino Uno. Bovenop de powerbank komt de Raspberry Pi (in een hoesje) en daarbovenop het breadboard. Ik heb alles met dubbelzijdig plakband vastgezet. Als laatste heb ik aan de voorkant 2 nep-robotwielen vastgeschroefd.
Stap 3: Montage van de LED's
Overal waar ik LED's wilde plaatsen heb ik gaten geboord van 5mm. De LED's die ik gebruikte hebben een diameter van 5mm dus ze pasten perfect! Ik gebruikte:
- 2 rood voor de achterlichten
- 2 witte voor de achteruitrijlichten
- 6 rood voor de Knight Rider LED's
- 2 witte voor de koplampen
- 4 oranje voor de signaallampen.
Stap 4: De bedrading
Nou, het moeilijkste deel van het project was het monteren van de bedrading in de lunchbox. Er zijn veel draden speciaal voor de LED's. Voor de LED's heb ik male naar female breadboard draden gebruikt, zo hoef je niets te solderen. Voor de rest gebruikte ik man naar man.
De Raspberry Pi en Arduino zijn verbonden via USB. Ik maakte een Fritzing-voorbeeld en deed mijn best om het zo duidelijk mogelijk te maken.
Stap 5: De Raspberry Pi voorbereiden
Voor iedereen die een beetje bekend is met de Raspberry Pi en Linux zou dit een makkie moeten zijn. Ik heb Raspian gebruikt om de Pi van stroom te voorzien. Het heeft python3 met de modules tkinter en pyserial vooraf geïnstalleerd (we hebben dit nodig om de Arduino te besturen)
- Ga naar de officiële Raspberry Pi-site en download de nieuwste Raspbian.
- Flash de nieuwste Raspbian naar je micro-sd (er is een installatiehandleiding op de downloadsite).
- Sluit een internetkabel en wifi-adapter aan en zet de Pi aan.
Nu moeten we de Pi configureren om automatisch verbinding te maken met wifi in de headless-modus.
-
Ontdek het IP-adres van uw Raspberry Pi met een van deze methoden.
- Nmap, (dit werkt het beste op linux).
- Log in op uw router om de aangesloten apparaten te zien.
- Gebruik een smartphone-app zoals "Fing" om uw netwerk te scannen op aangesloten apparaten.
- Alternatieve methode: sluit je Pi aan op een monitor en toetsenbord en gebruik de opdracht ifconfig om je IP te tonen.
- Als je Linux gebruikt, kun je een terminal gebruiken om SSH naar je pi te sturen, als je Windows gebruikt, moet je putty downloaden.
- Eenmaal verbonden en ingelogd (gebruikersnaam: pi wachtwoord: raspberry). typ het volgende in:
sudo nano /etc/network/interfaces
Verwijder de bestaande regels en plak de volgende regels in het bestand (vervang SSID door uw eigen SSID en vervang wachtwoord door uw WiFi-wachtwoord, bewaar de aanhalingstekens!)
automatisch uitschakelen
iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp wpa-ssid "SSID" wpa-psk "wachtwoord"
Start de Raspberry Pi opnieuw op en hopelijk zal deze automatisch verbinding maken met je wifi-netwerk (onthoud dat je IP-adres zal veranderen zodra je verbonden bent via wifi in plaats van bedraad)
Stap 6: De codering
Je kunt de bestanden van mijn github krijgen:
github.com/InfiniteFor/KnightRiderRobot
Upload het Wifi_BOT.ino-bestand naar uw Arduino
- sluit de Arduino aan op je pc/laptop.
- open het WiFi_BOT.ino-bestand met de officiële Arduino-software en klik op uploaden.
Kopieer het control.py-script naar je Raspberry Pi.
- Open de control.py met een teksteditor.
- SSH in je pi en typ:
nano control.py
Plak de code van de control.py in uw nieuw gemaakte python-script en sla het op
Stap 7: X11 doorsturen voor afstandsbediening
U moet X11 doorsturen om het python-script te laten werken vanaf uw laptop/pc. Dit komt omdat een normale SSH-sessie X11 niet standaard doorstuurt.
Als je Linux gebruikt, is dit heel eenvoudig. Pas gewoon de -X of -Y (welke werkt) toe in uw opdrachtregel. Bijvoorbeeld:
ssh -X pi@
Wanneer u op Windows bent, moet u andere stappen bekijken. Naast putty moet je ook xming downloaden. Er is een geweldige handleiding over het gebruik van xming met stopverf.
Stap 8: Lunchtijd
- Zet je Arduino (9v batterij) en Raspberry Pi (powerbank) aan.
- Wacht tot de Raspberry Pi is opgestart.
- SSH in je Raspberry Pi (vergeet niet om X11 door te sturen) en typ in:
python3 control.py
Genieten van!
Naast de knoppen kun je ook de toetsen op je toetsenbord indrukken. Die worden direct naar je Arduino gestuurd.
Toekomstige ideeën:
Ik had zoveel inspiratie voor dit project, maar kon ze niet allemaal doen. Dus hier is een korte lijst van andere dingen die je zou kunnen doen:
- Sluit een camera aan op de Raspberry Pi en bekijk de feed vanaf een webpagina.
- In plaats van een python tkinter-script zou je een http-pagina kunnen maken waar je toegang toe hebt om de robot te besturen. U kunt zelfs de camerafeed op dezelfde pagina weergeven! (geen X11 forwarding nodig voor deze methode)
- Met port-forwarding kun je je robot overal ter wereld besturen!
- In plaats van de Pi met je thuisnetwerk te verbinden, kun je een hotspot op de Pi maken. Zo ben je niet beperkt tot je thuisnetwerk.
Laat het me weten als je dit project leuk vindt. Stel ook gerust al je vragen!
Tweede plaats in de Raspberry Pi-wedstrijd 2016
Aanbevolen:
Knight Rider Circuit 2: 5 stappen
Knight Rider Circuit 2: Dit is mijn eerste. tijd om te publiceren op instructable, dit is een heel eenvoudig Arduino-project. Je hebt gewoon wat eenvoudig, basismateriaal om dit project te bouwen. Het idee van dit project is geïnspireerd op https://www.instructables.com/id/Knight-Rider-Circ… This a
GameBoy in een lunchbox: 9 stappen (met afbeeldingen)
GameBoy in a Lunchbox: Heb je ooit klassieke games willen spelen tijdens het eten? Misschien niet, maar als je dat deed, is dit het project voor jou! De GameBoy-emulator gebruikt RetroPie op een Raspberry Pi Zero W. Er is een batterijpakket met 2500mAh, dat ongeveer 20
Lunchbox voor mensen met hemiplegie: 10 stappen
Lunchbox voor mensen met hemiplegie: Teamleden: Chris Lobo, Ryan Ravitz, Alex RomineWaarom we het deden: Een persoon bij Seven Hills heeft beperkte mobiliteit in één hand en heeft moeite om zijn of haar lunchbox te gebruiken. Hoewel het niet expliciet vermeld staat in de design review, heeft Seven Hills verzoeken
[Arduino Robot] Hoe maak je een Motion Capture-robot - Duimen Robot - Servomotor - Broncode: 26 stappen (met afbeeldingen)
[Arduino Robot] Hoe maak je een Motion Capture-robot | Duimen Robot | Servomotor | Broncode: Thumbs Robot. Gebruikt een potentiometer van MG90S servomotor. Het is erg leuk en makkelijk! De code is heel eenvoudig. Het is slechts ongeveer 30 lijnen. Het ziet eruit als een motion-capture.Laat een vraag of feedback achter! [Instructie] Broncode https://github.c
De Dragon Rider 500 gebruiken met uw AVR Dragon: 10 stappen
De Dragon Rider 500 gebruiken met uw AVR Dragon: Deze instructie is een spoedcursus in het gebruik van enkele van de functies van de Dragon Rider 500 van Ecros Technologies. Houd er rekening mee dat er een zeer gedetailleerde gebruikershandleiding beschikbaar is op de Ecros-website. De Dragon Rider is een interfacebord