Taula de continguts:

Dog Bot: Lego Robot Rover amb càmera web: 17 passos (amb imatges)
Dog Bot: Lego Robot Rover amb càmera web: 17 passos (amb imatges)

Vídeo: Dog Bot: Lego Robot Rover amb càmera web: 17 passos (amb imatges)

Vídeo: Dog Bot: Lego Robot Rover amb càmera web: 17 passos (amb imatges)
Vídeo: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, De novembre
Anonim
Image
Image

A continuació s’explica com fer un robot Lego que pugui controlar des de qualsevol pantalla mitjançant wifi. També té una càmera web perquè pugueu veure on aneu i llums LED per als ulls. Aquest és un gran projecte per fer amb els vostres fills, ja que poden crear el logotip i podeu implicar-los en l'electrònica amb la qual estiguin contents. Hi ha molta flexibilitat en la manera d'implementar aquest projecte, i això vol dir que pot trossejar-lo fàcilment i tornar-lo a dissenyar. Em va semblar útil, quan em vaig quedar atrapat, simplement per començar de nou. Un cop ho hàgiu fet diverses vegades, es pot reconstruir fàcilment i ràpidament des de la base. L’avantatge d’això és que no us ha de preocupar “trencar” res, ja que desenvolupareu les habilitats necessàries per reconstruir-les fàcilment.

Què necessites

  • Raspberry Pi B +
  • Kit base i motor
  • Placa base Lego
  • Super cola de força industrial
  • Trepant
  • Ganivet artesà
  • Equip de soldadura
  • targeta SD
  • Lector de targetes SD
  • Kit controlador de motor
  • 2 LEDs
  • Càmera web de preu mitjà (podeu provar-ne una de barata)
  • PC i una tauleta / telèfon
  • Router Wifi al qual teniu accés d'administrador
  • Molts trossos de Lego
  • Carregador de telèfon d'emergència
  • 4 cables de salt cadascun amb almenys 1 terminal femella
  • 4 bateries AA (recarregable és bo)

Pas 1: prepareu la base

Vaig començar amb una base i dos motors com aquest conjunt de motors a Amazon

Agafeu la base de perspex i enganxeu-hi una fina placa de Lego. Vaig fer servir una súper cola de força industrial, que s’asseca en qüestió de minuts i és molt forta. Quan la cola estigui fixa, talleu l'excés de placa base de Lego perquè segueixi la línia de la placa base de perspex. a continuació, foradeu la placa Lego que coincideixi amb la base del pèl. He foradat els forats quan i quan els necessitava. Ara teniu les bases per construir-vos l’estructura de Lego.

Pas 2: Munteu les rodes

Muntar les rodes
Muntar les rodes

Ara munteu les rodes. Seguiu les instruccions del fabricant aquí. Les rodes que vaig comprar tenien totes les instruccions en xinès, que no puc llegir, però era molt fàcil esbrinar-ho a partir de les imatges. Un cop muntats, fixeu els cables als motors amb una petita gota de soldadura.

Pas 3: fixeu les rodes a la base

Fixeu les rodes a la base
Fixeu les rodes a la base

A continuació, fixeu les rodes a la placa base i, si ho necessiteu, podeu perforar-les. Probablement, al final del projecte, descobrireu que voleu que els cables passin per la base en un altre lloc, però sempre podeu practicar un forat nou i traslladar-los més endavant.

Pas 4: prepareu el Pi

Prepareu el Pi
Prepareu el Pi

Ara prepareu el PI. He utilitzat un model B + amb un dongle wifi USB. He utilitzat la imatge d’escriptori completa basada en Debian Jessie que podeu descarregar des del lloc Raspbian Pi. Val la pena crear la targeta SD des de zero i mantenir la imatge del disc a mà perquè pugueu tornar a començar fàcilment. És possible que hàgiu de fer una mica de google per esbrinar com crear la imatge del disc al vostre PC. Vaig crear la meva imatge amb Ubuntu així: Feu clic amb el botó dret a la imatge del disc i seleccioneu "obre amb l'escriptor d'imatges del disc". Escriviu la imatge a la targeta SD. La imatge del disc és bastant petita, de manera que si teniu una targeta SD més gran (per exemple: 30 GB) podeu utilitzar un programari de particionament com GParted per utilitzar tot l'espai disponible. Un cop hàgiu esbrinat com fer-ho, trigareu uns 5 minuts i val la pena, ja que si desordeneu el programari, podeu tornar a instal·lar-lo de nou.

Pas 5: munteu la placa del controlador

Munteu la placa del controlador
Munteu la placa del controlador

A continuació, necessiteu una placa de controlador de motor. He utilitzat el kit de RyanTek. Inclou una excel·lent guia de soldadura, però crec que també la podeu soldar prèviament. Si no heu fet cap soldadura abans, no us preocupeu, preneu-lo lentament i practiqueu una mica abans de començar a la placa del motor.

Ara, connecteu el paquet de bateries (amb 4 piles AA) i els motors fins a la placa del controlador i, a continuació, connecteu la placa del controlador als pins GPIO del Pi. De nou, la placa del controlador us donarà més detalls. No us preocupeu per introduir els cables del motor adequats a les ranures adequades, sempre que no estiguin connectats a les ranures de corrent continu. No enganxo ni enrosco el Pi ni el paquet de bateries al tauler de Lego, ja que això us proporciona més flexibilitat a l’hora de dissenyar el cos de Lego. També podeu canviar el disseny fàcilment a mesura que avanceu.

Pas 6: Comenceu a construir el cos de Lego

Comenceu a construir el cos de Lego
Comenceu a construir el cos de Lego
Comenceu a construir el cos de Lego
Comenceu a construir el cos de Lego

Ara és hora de construir una mica de Lego. En aquest moment, podeu implicar nens molt petits, sempre que puguin contenir un tros de Lego. Vam començar només amb una vivenda quadrada bàsica fins que tot funcionava i després vam ser més aventurers amb el robot de gos. El millor aquí és que podeu reconstruir el cos del robot tant com vulgueu. Comenceu creant una casa per al Pi. Recordeu deixar espai als ports USB i als cables d’alimentació. Construeix una bona quantitat de soltesa en qualsevol habitatge que creïs. Està bé que les coses trenquin una mica i no puguis ser massa precís amb Lego.

Hem utilitzat Windows Lego per proporcionar accés als ports USB que necessitareu més endavant.

Pas 7: prepareu el Pi

Ara és un bon moment per engegar el Pi i fer que el robot es mogui.

He estat desenvolupant el codi per utilitzar-lo amb aquest projecte a Git hub. Llegiu-me a les pàgines del centre de git us guiarà amb les instruccions sobre com instal·lar tot el programari al Pi, però també us faré els passos aquí.

Primer engegueu el Pi connectant el cable d’alimentació. Haureu de connectar el cable HDMI a un televisor i utilitzar un teclat i un ratolí USB. El primer és connectar-vos a la vostra connexió Wifi. ho feu fent clic a la icona de la part superior dreta de l'escriptori Raspian i demostrant els detalls. Un cop connectat a Wifi, podeu fer tota la resta des de la línia d’ordres, de manera que, si ho preferiu, podeu connectar-vos al Pi mitjançant ssh, però de moment, com que estem connectats a un televisor, podem obrir un terminal des de l’escriptori Raspian.

Pas 8: instal·leu el programari al Pi

Obriu el terminal al Pi i escriviu les ordres següents.

sudo apt-get update

Això actualitza Raspian amb el programari més recent.

A continuació, instal·leu el programari de càmera web

sudo apt-get install motion

També haureu de configurar el moviment en aquest moment. He indicat què cal actualitzar en quins fitxers de les pàgines de github. També hi ha instruccions sobre com treballar una càmera web al vostre Pi. Conegueu la configuració i jugueu-hi un cop us sentiu còmode amb la configuració.

sudo apt-get install python-dev python-pip

Això instal·la les biblioteques Python i també el gestor de paquets de programari Python.

sudo pip instal·lar 'pubnub> = 4.1.2'

S’instal·la Pubnub, el programari que gestiona la missatgeria entre el tauler de control i el robot sense fils.

Triga una estona a instal·lar aquesta peça, així que vés a fer una tassa de te !!

Pas 9: instal·leu el programari del robot

Ara heu instal·lat tots els trossos i peces de programari dependents, és hora d’instal·lar el codi necessari per executar el robot.

git clone

això crearà una carpeta lego-robot al directori inicial.

Abans d’executar el codi del robot, heu de crear un compte de PubNub i obtenir una clau de publicació i subscripció. Podeu fer-ho seguint les instruccions per començar ara a PubNub. Un cop configurat, heu d'obrir els dos fitxers:

  • lego-robot / server / keys.py
  • lego-robot / client / keys.js

i substituïu les claus pub i sub per les vostres claus que podeu obtenir des del tauler de pubnub.

Tingueu en compte que el valor del canal pot ser qualsevol, sempre que coincideixi amb el client i el servidor.

Pas 10: instal·leu el programari del controlador i comproveu que tot funcioni

Instal·leu el programari del controlador i comproveu-ho tot
Instal·leu el programari del controlador i comproveu-ho tot
Instal·leu el programari del controlador i comproveu-ho tot
Instal·leu el programari del controlador i comproveu-ho tot

En un PC, cloneu el codi del concentrador git de la mateixa manera que ho fèiem al robot.

git clone

És possible que no tingueu git instal·lat al vostre PC. Si no, seguiu les instruccions de git hub.

També teniu l’opció de descarregar el codi com a fitxer zip, tot i que us aconsellaria instal·lar GIT i copiar els fitxers clonant el dipòsit.

haureu d’actualitzar el fitxer lego-robot / client / keys.js amb les vostres claus de publicació i subscripció personals.

Quan hàgiu acabat, obriu el fitxer lego-robot / client / buttons.html en un navegador web. Ara hauríeu de poder controlar el robot mitjançant els botons de control.

El diagrama anterior mostra què passa:

  • Quan feu clic a un botó, s'envia un missatge a pubnub (mitjançant la vostra clau de publicació)
  • PubNub reenvia al robot que …
  • Està escoltant (mitjançant la tecla de subscripció) els missatges
  • El robot es tradueix llavors en una acció.

He utilitzat pubNub com a gratuït, ràpid (en temps real) i simplifica enormement l’enviament i la recepció de missatges mitjançant una API molt agradable.

Podeu aprofundir en el codi del client i del servidor i veure els missatges que s’envien mitjançant claus senzilles com ara “endavant” i “enrere”.

També hi ha un controlador d’estil de joystick a lego-robot / client / joystick.html.

Milloraré aquests controladors i n’afegiré de nous tot el temps, de manera que, si voleu actualitzar el programari, podeu utilitzar l’ordre "git pull". Si us plau, no dubteu a contribuir al repositori git i a crear controls més fàcils d'utilitzar.

Ara esteu a punt per comprovar que el moviment funciona correctament. Al terminal Pi, canvieu el directori a lego-robot / server i escriviu:

sudo python robot.py

s'inicia un script Python per escoltar els missatges entrants de Pubnub.

Ara intenteu prémer alguns botons del controlador, hauríeu de veure aquestes respostes rebudes al terminal Pi (com es mostra a la imatge superior) i el robot.py tradueix aquests missatges a moviments mapant-los a senyals del Pi GPIO.

Hauríeu de poder moure el robot.

Pas 11: prepareu la càmera web i els llums LED

Prepareu la càmera web i els llums LED
Prepareu la càmera web i els llums LED
Prepareu la càmera web i els llums LED
Prepareu la càmera web i els llums LED

Podeu utilitzar qualsevol càmera web compatible amb Linux (la majoria ho són). Aniria per un de gamma mitjana (uns 15 lliures esterlines), ja que provava un de molt barat i no en podia obtenir cap mena d’imatge clara. El primer pas és desmuntar la càmera web perquè només tingueu la placa bàsica i la càmera.

Si voleu instal·lar llums, agafeu una llum LED i connecteu dos cables de salt a cada terminal. He utilitzat cables de salt que tenen un terminal femella en un extrem perquè pugueu connectar-lo fàcilment als pins GPIO Pis més endavant. L'altre extrem del cable que heu de despullar per treure el terminal. També podeu soldar aquí per establir una connexió segura. També he utilitzat una pell termoencongible que podeu utilitzar per tapar cada filferro, tot i que no em preocuparia fer-ne una feina massa bona fins que no estigueu contents que tot funcioni i podreu acabar i millorar. També és una bona idea utilitzar una resistència per evitar que el LED es cremi.

Aquí hi ha una informació detallada sobre com connectar els LEDs.

Com es mostra a la imatge, faig servir un bloc Lego amb un forat com a forma fàcil de muntar el LED al capçal dels robots.

Pas 12: creeu el cap amb la càmera nasal i les llums

Creeu el cap amb càmera nasal i llums
Creeu el cap amb càmera nasal i llums
Creeu el cap amb càmera nasal i llums
Creeu el cap amb càmera nasal i llums
Creeu el cap amb càmera nasal i llums
Creeu el cap amb càmera nasal i llums

Creeu una carcassa del capçal per a la càmera. Aquí no seré massa específic perquè és hora que siguis creatiu. Tanmateix, cal construir al voltant de la càmera. Dog bot integra la càmera al nas i té els ulls com a LED. Assegureu-vos de deixar un forat a la part posterior del cap per treure els cables.

Pas 13: completar el cos

Completa el cos
Completa el cos
Completa el cos
Completa el cos
Completa el cos
Completa el cos

Ara esteu contents que el bot de gossos es mou bàsicament i podeu crear una carcassa per a les bateries. Vaig fer servir un paquet de 4 piles AA (subministrades amb les rodes i la base) i un paquet de carregador de telèfon d’emergència. Les bateries AA són per als motors de corrent continu per a les rodes i el paquet de telèfons mòbils és per al Pi. És una bona idea fer les bateries fàcilment accessibles, ja que haureu d’accedir-hi per recarregar-les i substituir-les.

Un cop feliç, poseu un sostre sobre el Pi. No em preocupa massa amagar els cables i els circuits, ja que això forma part de la imatge dels robots. No obstant això, tot depèn de vosaltres en aquest moment. Us recomanem que tingueu en compte el pes que fa el vostre robot, més pesat es mou lentament.

Pas 14: munteu el cap

Muntar el cap
Muntar el cap
Muntar el cap
Muntar el cap
Muntar el cap
Muntar el cap

És hora de connectar-ho tot.

Connecteu el cable USB de les càmeres web a la part frontal del bot mitjançant els forats d'accés que heu creat. Podeu fixar el cable al robot creant una carcassa Lego. També vaig escurçar el cable USB tallant-lo i tornant a soldar-lo, però només fer-ho si realment teniu ganes de soldar 4 petits cables junts. Pot ser més fàcil comprar un cable USB curt i tornar-lo a connectar a la part posterior de la càmera.

També heu de connectar els llums LED als pins Pis GPIO que no pren el controlador de la placa del motor. Es tracta dels pins GPIO 20 i 21 i els dos pins de terra de recanvi propers. Utilitzeu els passadors de terra de recanvi propers. Si la llum no funciona, proveu de canviar de terra rodona amb la sortida GPIO. PER esbrinar quins pins connectar a google un bon diagrama GPIO.

Pas 15: proveu els LED i la càmera del nas

Proveu els LED i la Nose Cam
Proveu els LED i la Nose Cam

Per iniciar el tipus de programari de càmera web:

moviment sudo

Assegureu-vos també que heu iniciat l'script robot.py (tal com es detalla a la instrucció anterior):

sudo python robot.py

Ara hauríeu de poder utilitzar l’interruptor de llums del controlador per encendre i apagar els llums.

La càmera web hauria d’emetre a la vostra adreça IP Pis al port 8080, de manera que, per exemple, escriviu el següent al navegador web.

192.168.1.2:8081

Vaig trobar l’adreça IP Pi iniciant sessió al meu encaminador com a administrador i mirant els dispositius connectats. Les instruccions sobre com fer-ho normalment es troben a la part posterior del router o consulteu les instruccions dels routers en línia.

podeu explorar la configuració del programari de moviment, tal com es descriu al pas anterior. Trobo que, de vegades, la transmissió es deté, però en general funciona bé.

Podeu accedir a aquest flux de vídeo des de qualsevol lloc que tingui un navegador connectat a la vostra xarxa Wifi.

Pas 16: Acabar

Accés en línia

Ara hauríeu de poder controlar el robot des d’un navegador en un PC. No obstant això, és bo poder controlar el bot des de qualsevol dispositiu tàctil com Ipad o telèfon.

Per fer-ho, heu d’allotjar els fitxers del client (buttons.html, etc.) en un servidor web.

Vaig començar instal·lant un servidor web al Pi, que funciona bé. Tanmateix, és més fàcil carregar el fitxer HTML a qualsevol altre servidor web. Simplement he copiat el fitxer HTML al meu compte d’amfitrió blau públic. És possible que vulgueu protegir l'accés a aquests fitxers ja que contenen les claus secundàries del vostre canal pub pub. Un cop ho feu, podeu accedir al controlador des de qualsevol dispositiu, fins i tot des de fora de casa vostra.

Arrencada automàtica

Una altra cosa útil que cal fer és actualitzar l'script / etc / rc.local del vostre raspberry Pi; afegint aquestes dues línies:

  • moviment sudo
  • nohup sudo python /home/pi/lego-robot/server/robot.py &

Aquests s'executaran cada cop que s'iniciï el Pi, de manera que no haureu d'executar l'ordre manualment.

Pas 17: Diverteix-te

Diverteix-te !
Diverteix-te !

Això és tot.

Si us plau, no dubteu a deixar comentaris si us quedeu atrapats i si voleu millorar algun programari, col·loqueu al repositori de github. Continuaré treballant en aquest projecte i aquí teniu algunes idees:

  • Un controlador d'estil "gran trak" on es programa una seqüència d'ordres com "esquerra 10, avanç 6, retrocés 2 …" i després prem "Executa" i el robot realitza les ordres.
  • Un coll inclinable perquè pugueu mirar cap amunt amb la càmera web
  • Un altaveu que tradueix text del controlador a parla
  • Control controlat per veu

Ànims

Pere

Recomanat: