Taula de continguts:
2025 Autora: John Day | [email protected]. Última modificació: 2025-01-13 06:57
D'acord, no parla, no és negre i no té IA. Però sí que té aquests fantàstics LED vermells a la part davantera.
Construeixo un robot controlable per WiFi que consisteix en un Raspberry Pi amb adaptador WiFi i un Arduino Uno. Podeu SSH al Raspberry Pi i controlar l'Arduino amb un script Python Tkinter sobre sèrie. A part de conduir, també podeu controlar els llums davanters / posteriors, senyalitzar cap a l’esquerra / dreta i encendre els frescos LED de Knight Rider.
Pas 1: què serveix per dinar? Eines i materials AKA
Molts dels materials estan disponibles a BangGood.com. Són barats i tenen gairebé de tot. Podeu trobar la resta a Ebay i alguns a la vostra ferreteria local.
Materials:
-
Raspberry Pi 2 / B +
- Targeta micro SD de 8 GB (o més)
- cable micro USB
- Adaptador WiFi
- Caixa
- Arduino Uno
- Bateria de 9v amb clip de bateria per Arduino
- Un lunchbo fresc
- Banc de potència USB de 5 v (12000 mAh)
- Taula de pa amb suficients cables (masculí a masculí i femella a masculí)
- LED de 5 mm (4 blancs, 8 vermells, 4 taronja)
- Resistències de 10x 220ohm
- 2x micro servo TowerPro 9g (modificat per a rotació contínua)
- 4x rodes robot de 42 mm
- Rodet de 24 mm
- Cinta de doble cara
Eines:
- Pistola de cola calenta
- Super cola
- Tornavís
Important: he utilitzat servo modificats per a les rodes. També podeu comprar motors normals, però després haureu d’alterar el codi Arduino.
Pas 2: Preparació del dinar
Així que vaig haver de veure les falses "rodes" on descansa la carmanyola.
Després d'això, vaig afegir el servo i les rodes a la carmanyola (enganxant calent les rodes del servo). He utilitzat palets de paletes perquè eren perfectes per descansar els servos. Després vaig afegir el powerbank. A la part superior del powerbank he afegit 2 pals de palets amb una roda (super encolats els pals sobre els pals de palets). A la part posterior del powerbank apareix l’Arduino Uno. A la part superior del powerbank hi ha el Raspberry Pi (en un cas) i, a sobre, la placa de suport. Ho vaig fixar tot amb cinta de doble cara. Per últim vaig cargolar 2 rodes falses de robot a la part davantera.
Pas 3: ajustar els LED
He forat forats de 5 mm a tot arreu on volia col·locar LEDs. Els LED que he fet servir tenen un diàmetre de 5 mm, de manera que s’adapten perfectament. Jo solia:
- 2 vermells per als llums posteriors
- 2 de color blanc per als llums de marxa enrere
- 6 vermells per als LED de Knight Rider
- 2 de color blanc per als llums frontals
- 4 taronja per a les llums de senyal.
Pas 4: el cablejat
Doncs bé, la part més difícil del projecte va ser encaixar el cablejat a la carmanyola. Hi ha molts cables especialment per als LED. Per als LEDs, he utilitzat cables de taulers de mascle a femella, d’aquesta manera no cal soldar res. Per a la resta, feia servir home a home.
El Raspberry Pi i l’Arduino estan connectats per USB. Vaig fer un exemple de Fritzing i vaig fer tot el possible per deixar-ho el més clar possible.
Pas 5: Preparació del Raspberry Pi
Per a qualsevol persona que estigui una mica familiaritzada amb el Raspberry Pi i Linux, això hauria de ser una tranquil·litat. Vaig utilitzar Raspian per alimentar el Pi. Té python3 amb els mòduls tkinter i pyserial preinstal·lats (ho necessitem per controlar l'Arduino)
- Aneu al lloc oficial de Raspberry Pi i descarregueu la versió més recent de Raspbian.
- Feu llançar el darrer micro SD de Raspbian (hi ha una guia d’instal·lació al lloc de descàrrega).
- Connecteu un cable d’Internet i un adaptador WiFi i enceneu el Pi.
Ara hem de configurar el Pi per connectar-se automàticament a WiFi quan estem en mode sense cap.
-
Esbrineu l'adreça IP del vostre Raspberry Pi amb un d'aquests mètodes.
- Nmap, (funciona millor a Linux).
- Inicieu la sessió al router per veure els dispositius connectats.
- Utilitzeu una aplicació per a telèfons intel·ligents, com ara "Fing", per cercar dispositius connectats a la vostra xarxa.
- Mètode alternatiu: connecteu-vos Pi a un monitor i un teclat i utilitzeu l'ordre ifconfig per mostrar la vostra IP.
- Si utilitzeu Linux, podeu utilitzar un terminal per SSH al vostre pi, si heu de descarregar masilla a Windows.
- Un cop connectat i connectat (nom d’usuari: contrasenya pi: raspberry). escriviu el següent
sudo nano / etc / network / interfaces
Suprimiu les línies existents i enganxeu les següents línies al fitxer (substituïu SSID pel vostre propi SSID i substituïu la contrasenya per la vostra contrasenya WiFi, mantingueu les cometes!)
auto lo
iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 auto wlan0 iface wlan0 inet dhcp wpa-ssid "SSID" wpa-psk "contrasenya"
Reinicieu el Raspberry Pi i esperem que es connecti automàticament a la vostra xarxa WiFi (recordeu que la vostra adreça IP canviarà un cop estigueu connectat a través de WiFi en lloc de cablejat)
Pas 6: la codificació
Podeu obtenir els fitxers des del meu github:
github.com/InfiniteFor/KnightRiderRobot
Pengeu el fitxer Wifi_BOT.ino al vostre Arduino
- connecteu l'Arduino al vostre ordinador portàtil.
- obriu el fitxer WiFi_BOT.ino amb el programari oficial Arduino i feu clic a Carrega.
Copieu l'script control.py al vostre Raspberry Pi.
- Obriu el control.py amb un editor de text.
- SSH en tu pi i escriu:
nano control.py
Passeu el codi de control.py al vostre script de Python acabat de crear i deseu-lo
Pas 7: reenviament X11 per al control remot
Heu de reenviar X11 perquè l'script python funcioni des del vostre ordinador portàtil / PC. Això es deu al fet que una sessió SSH normal no reenvia X11 per defecte.
Quan esteu a Linux, això és realment senzill. Simplement apliqueu la -X o la -Y (la que funcioni) a la vostra línia d'ordres. Per exemple:
ssh -X pi @
Quan estigueu a Windows, heu de completar la visualització d'altres passos. A més de massilla, també heu de descarregar xming. Hi ha una guia realment fantàstica sobre com utilitzar xming amb massilla.
Pas 8: l'hora de dinar
- Enceneu el vostre Arduino (bateria de 9v) i Raspberry Pi (banc d’alimentació).
- Espereu a que arrenqui el Raspberry Pi.
- Introduïu SSH al vostre Raspberry Pi (no oblideu reenviar X11) i escriviu:
python3 control.py
Gaudeix-ne!
A més dels botons, també podeu prémer les tecles del teclat. Aquests s'enviaran a l'instant al vostre Arduino.
Idees futures:
Tenia tanta inspiració per a aquest projecte, però no podia fer-ho tot. Així que aquí teniu una llista breu d'altres coses que podeu fer:
- Connecteu una càmera al Raspberry Pi i mireu el feed des d’una pàgina web.
- En lloc d'un script tkinter de Python, podeu crear una pàgina http a la qual pugueu accedir per controlar el robot. Fins i tot podeu mostrar el feed de la càmera a la mateixa pàgina. (no cal reenviar X11 per a aquest mètode)
- Amb el reenviament de ports, podeu controlar el robot des de qualsevol part del món.
- En lloc de connectar el Pi a la vostra xarxa domèstica, podeu crear un punt d'accés al Pi. D’aquesta manera no es limita a la seva xarxa domèstica.
Feu-me saber si us agrada aquest projecte. També no dubteu a fer qualsevol pregunta que tingueu.
Accèssit al concurs Raspberry Pi 2016