Tabla de contenido:

Dog Bot: Lego Robot Rover con cámara web: 17 pasos (con imágenes)
Dog Bot: Lego Robot Rover con cámara web: 17 pasos (con imágenes)

Video: Dog Bot: Lego Robot Rover con cámara web: 17 pasos (con imágenes)

Video: Dog Bot: Lego Robot Rover con cámara web: 17 pasos (con imágenes)
Video: Самый Дальний Филд-гол в Мире - Робот vs Кикер НФЛ 2024, Mes de julio
Anonim
Image
Image

Aquí se explica cómo hacer un robot Lego que puede controlar desde cualquier pantalla a través de wifi. ¡También tiene una cámara web para que pueda ver hacia dónde se dirige y luces LED para los ojos! Este es un gran proyecto para hacer con sus hijos, ya que pueden hacer la construcción del logotipo y usted puede involucrarlos en la mayor parte de la electrónica con la que estén contentos. Hay mucha flexibilidad en la forma de implementar este proyecto, y esto significa que usted puede desmontarlo fácilmente y rediseñarlo de nuevo. Lo encontré útil, cuando me quedé atascado, simplemente comenzar de nuevo. Una vez que haya hecho esto varias veces, es bastante fácil y rápido de reconstruir desde cero. Lo mejor de esto es que no debe preocuparse por "romper" nada, ya que desarrollará las habilidades para reconstruir fácilmente.

Que necesitas

  • Frambuesa Pi B +
  • Kit base y motor
  • Placa base Lego
  • Súper pegamento de resistencia industrial
  • Taladro
  • Cutter
  • Equipo de soldadura
  • tarjeta SD
  • Lector de tarjetas SD
  • Kit de controlador de motor
  • 2 LED
  • Webcam de precio medio (puedes probar una barata)
  • PC y tableta / teléfono
  • Enrutador Wifi al que tiene acceso de administrador
  • Muchos pedazos de Lego
  • Cargador de teléfono de emergencia
  • 4 cables de salto cada uno con al menos 1 terminal hembra
  • 4 pilas AA (recargables es bueno)

Paso 1: preparar la base

Comencé con una base y 2 motores como este juego de motores en Amazon.

Tome la base de metacrilato y pegue una placa base delgada de Lego sobre ella. Usé superpegamento de fuerza industrial para esto, que se seca en minutos y es súper fuerte. Cuando el pegamento esté fijo, corte el exceso de placa base de Lego para que siga la línea de la placa base de metacrilato. luego taladre agujeros a través de la placa de Lego que coincida con la base de metacrilato. Perforé los agujeros cuando los necesitaba. Ahora tienes la base para construir tu estructura de Lego.

Paso 2: ensamble las ruedas

Ensamblar las ruedas
Ensamblar las ruedas

Ahora ensamble las ruedas. Siga las instrucciones del fabricante aquí. Las ruedas que compré tenían todas las instrucciones en chino, que no puedo leer, pero fue bastante fácil de descifrar a partir de las imágenes. Una vez ensamblados, conecte los cables a los motores con una pequeña gota de soldadura.

Paso 3: coloque las ruedas en la base

Fije las ruedas a la base
Fije las ruedas a la base

A continuación, coloque las ruedas en la placa base, puede perforar agujeros en la base si es necesario. Probablemente descubra hacia el final del proyecto que desea que los cables pasen por la base en otro lugar, pero siempre puede perforar un nuevo orificio y reubicarlos más tarde.

Paso 4: prepara el Pi

Prepara el Pi
Prepara el Pi

Ahora prepara el PI. Usé un modelo B + con un dongle wifi USB. Usé la imagen de escritorio completa basada en Debian Jessie que puedes descargar desde el sitio de Raspbian Pi. Vale la pena crear la tarjeta SD desde cero y tener la imagen del disco a mano, ya que puede comenzar de nuevo fácilmente. Es posible que deba buscar un poco en Google para descubrir cómo crear la imagen de disco en su PC. Creé mi imagen usando Ubuntu así: Haga clic derecho en la imagen del disco y seleccione "abrir con el escritor de imágenes de disco". Escribe la imagen en la tarjeta SD. La imagen del disco es bastante pequeña, por lo que si tiene una tarjeta SD más grande (por ejemplo: 30 GB), puede usar un software de partición como GParted para usar todo el espacio disponible. Una vez que haya averiguado cómo hacerlo, le llevará unos 5 minutos y realmente vale la pena, ya que si estropea el software, puede reinstalarlo de nuevo.

Paso 5: monte la placa del controlador

Monte la placa del controlador
Monte la placa del controlador

A continuación, necesita una placa controladora de motor. Usé el kit de RyanTek. Viene con una excelente guía de soldadura, pero creo que también puede soldarlo previamente. Si no ha hecho ninguna soldadura antes, no se preocupe, simplemente tómelo con calma y practique un poco antes de comenzar con la placa del motor.

Ahora, conecte el paquete de baterías (con 4 baterías AA) y los motores hasta la placa del controlador y luego conecte la placa del controlador a los pines GPIO del Pi. Una vez más, la placa controladora le dará más detalles. No se preocupe por colocar los cables del motor correctos en las ranuras correctas, siempre que no estén conectados a las ranuras de alimentación de CC. No pego ni atornillo el Pi o el paquete de baterías en el tablero de Lego, ya que esto te da más flexibilidad al diseñar el cuerpo de Lego. También puede cambiar su diseño fácilmente a medida que avanza.

Paso 6: comienza a construir el cuerpo de Lego

Empieza a construir el cuerpo de Lego
Empieza a construir el cuerpo de Lego
Empieza a construir el cuerpo de Lego
Empieza a construir el cuerpo de Lego

Ahora es el momento de construir algunos Lego. En este punto, puedes involucrar a niños muy pequeños, ¡siempre que puedan sostener un pedazo de Lego! Comenzamos con una carcasa cuadrada básica hasta que todo funcionó y luego nos volvimos más aventureros con el robot para perros. Lo mejor aquí es que puedes reconstruir el cuerpo del robot tanto como quieras. Empiece por crear un hogar para el Pi. Recuerde dejar espacio para los puertos USB y los cables de alimentación. Construya una buena cantidad de holgura en cualquier vivienda que construya. Está bien que las cosas se muevan un poco y no puedes ser demasiado preciso con Lego.

Usamos ventanas Lego para proporcionar acceso a los puertos USB que necesitará más adelante.

Paso 7: prepara el Pi

Es un buen momento para poner en marcha el Pi y hacer que el robot se mueva.

He estado desarrollando el código para usar con este proyecto en Git hub. El Léame en las páginas de git hub lo llevará a través de las instrucciones sobre cómo instalar todo el software en la Pi, pero también lo guiaré a través de los pasos. aquí.

Primero encienda el Pi, enchufando el cable de alimentación. Deberá conectar el cable HDMI a un televisor y usar un teclado y un mouse USB. Lo primero es conectarte a tu Wifi. haz esto haciendo clic en el icono en la parte superior derecha del escritorio de Raspian y probando los detalles. Una vez conectado al Wifi puedes hacer todo lo demás desde la línea de comandos, así que si lo prefieres puedes conectarte al Pi usando ssh, pero por ahora, como estamos conectados a un televisor podemos abrir un terminal desde el escritorio Raspian.

Paso 8: instale el software en la Pi

Abra el terminal en el Pi y escriba los siguientes comandos.

sudo apt-get update

Esto actualiza Raspian con el software más reciente.

A continuación, instale el software de la cámara web

sudo apt-get install motion

También necesita configurar el movimiento en este punto. He enumerado lo que debe actualizarse en qué archivos en las páginas de github. También hay un instructivo sobre cómo hacer que una cámara web funcione en su Pi. Conozca las configuraciones y juegue con ellas una vez que se sienta cómodo con la configuración.

sudo apt-get install python-dev python-pip

Esto instala las bibliotecas de Python y también el administrador de paquetes de software de Python.

sudo pip install 'pubnub> = 4.1.2'

Esto instala Pubnub, el software que administra la mensajería entre el panel de control y su robot inalámbrico.

Se tarda un poco en instalar esta pieza, ¡así que ve y prepara una taza de té!

Paso 9: Instale el software del robot

Ahora que ha instalado todos los bits y piezas de software dependientes, es hora de instalar el código necesario para ejecutar el robot.

clon de git

esto creará una carpeta lego-robot en su directorio personal.

Antes de poder ejecutar el código del robot, debe crear una cuenta PubNub y obtener una clave de publicación y suscripción. puede hacer esto siguiendo las instrucciones para comenzar ahora en PubNub. Una vez que esté configurado, debe abrir los dos archivos:

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

y reemplace las claves pub y sub con las claves que puede obtener en el panel de pubnub.

Tenga en cuenta que el valor del canal puede ser cualquier cosa, siempre que coincida con el cliente y el servidor.

Paso 10: Instale el software del controlador y verifique que todo funcione

Instale el software del controlador y verifique que todo funcione
Instale el software del controlador y verifique que todo funcione
Instale el software del controlador y verifique que todo funcione
Instale el software del controlador y verifique que todo funcione

En una PC, clone el código del concentrador de git de la misma manera que lo hicimos en el robot.

clon de git

Es posible que no tenga git instalado en su PC. De lo contrario, siga las instrucciones en git hub.

También tiene la opción de descargar el código como un archivo zip, aunque le recomendaría instalar GIT y copiar los archivos clonando el repositorio.

deberá actualizar el archivo lego-robot / client / keys.js con sus claves personales de publicación y suscripción.

Cuando haya terminado, abra el archivo lego-robot / client / buttons.html en un navegador web. Ahora debería poder controlar su robot con los botones de control.

El diagrama de arriba muestra lo que está sucediendo:

  • Cuando haces clic en un botón, se envía un mensaje a pubnub (usando tu clave de publicación)
  • PubNub luego reenvía al robot que …
  • Está escuchando (usando la tecla de suscripción) mensajes
  • El robot luego se traduce en una acción.

Usé pubNub porque es gratis, rápido (en tiempo real) y simplifica enormemente el envío y la recepción de mensajes usando una API realmente agradable.

Puede profundizar en el código del cliente y del servidor y ver los mensajes que se envían utilizando teclas simples como "hacia adelante" y "hacia atrás".

También hay un controlador de estilo joystick en lego-robot / client / joystick.html.

Mejoraré estos controladores y agregaré nuevos todo el tiempo, por lo que si alguna vez desea actualizar el software, puede usar el comando "git pull". También siéntase libre de contribuir al repositorio de git y crear controles más fáciles de usar.

Ahora ya está todo listo para comprobar que el movimiento funciona bien. En la terminal Pi, cambie el directorio a lego-robot / server y escriba:

sudo python robot.py

esto inicia un script de Python para escuchar los mensajes entrantes de Pubnub.

Ahora intente presionar algunos botones en el controlador, debería ver estas respuestas recibidas en la Terminal Pi (como se muestra en la imagen de arriba) y robot.py traduce estos mensajes en movimientos asignándolos a señales en el Pi GPIO.

Debería poder mover el robot.

Paso 11: Prepare la cámara web y las luces LED

Prepare la cámara web y las luces LED
Prepare la cámara web y las luces LED
Prepare la cámara web y las luces LED
Prepare la cámara web y las luces LED

Puede usar cualquier cámara web que sea compatible con Linux (la mayoría lo son). Yo optaría por uno de rango medio (alrededor de £ 15), ya que probé uno realmente barato y no pude obtener ningún tipo de imagen clara. El primer paso es desmontar la cámara web para que solo tenga la placa y la cámara básicas.

Si desea instalar luces, tome una luz LED y conecte dos cables de salto a cada terminal. Usé cables de salto que tienen un terminal hembra en un extremo para que puedas conectarlo fácilmente a los pines Pis GPIO más tarde. El otro extremo del cable debe pelar para quitar el terminal. También puede soldar aquí para hacer una conexión segura. También utilicé una envoltura termorretráctil, que puedes usar para cubrir cada cable, aunque no me preocuparía por hacer un buen trabajo hasta que estés feliz de que todo esté funcionando, entonces puedes terminar y mejorar. También es una buena idea usar una resistencia para evitar que el LED se queme.

Aquí hay un instructivo detallado que detalla cómo cablear los LED.

Como muestra la imagen, utilizo un bloque de Lego con un agujero como una forma fácil de montar el LED en la cabeza del robot.

Paso 12: crea la cabeza con cámara de nariz y luces

Crea la cabeza con cámara de nariz y luces
Crea la cabeza con cámara de nariz y luces
Crea la cabeza con cámara de nariz y luces
Crea la cabeza con cámara de nariz y luces
Crea la cabeza con cámara de nariz y luces
Crea la cabeza con cámara de nariz y luces

Cree una carcasa para la cabeza de la cámara. No seré demasiado específico aquí, ya que es hora de que seas creativo. Sin embargo, necesita construir alrededor de la cámara. El robot para perros integra la cámara en su nariz y tiene los ojos como LED. Asegúrese de dejar un agujero en la parte posterior de la cabeza para sacar los cables.

Paso 13: Completa el cuerpo

Completa el cuerpo
Completa el cuerpo
Completa el cuerpo
Completa el cuerpo
Completa el cuerpo
Completa el cuerpo

Ahora que está contento de que el robot para perros se esté moviendo básicamente, puede crear una carcasa para los paquetes de baterías. Usé un paquete de 4 baterías AA (provistas con las ruedas y la base) y un paquete de cargador de teléfono de emergencia. Las baterías AA son para los motores de CC de las ruedas y el paquete de teléfono móvil es para el Pi. Es una buena idea hacer que las baterías sean fácilmente accesibles, ya que tendrá que acceder a ellas para recargarlas y reemplazarlas.

Una vez que estés feliz, pon un techo sobre el Pi. No me preocupo demasiado por ocultar los cables y los circuitos, ya que eso es parte de la imagen de los robots. Sin embargo, todo depende de ti en este momento. Es posible que desee considerar qué tan pesado se está volviendo su bot, cuanto más pesado, más lento se mueve.

Paso 14: Monte la cabeza

Monte la cabeza
Monte la cabeza
Monte la cabeza
Monte la cabeza
Monte la cabeza
Monte la cabeza

Es hora de conectar todo.

Conecte el cable USB de la cámara web a la parte frontal del bot, utilizando los orificios de acceso que creó. Puede asegurar el cable al robot creando una carcasa de Lego. También acorté el cable USB cortándolo y volviéndolo a soldar, pero solo haga esto si realmente tiene ganas de soldar 4 pequeños cables juntos. Podría ser más fácil comprar un cable USB corto y volver a conectarlo a la parte posterior de la cámara.

También necesita conectar las luces LED a los pines Pis GPIO no ocupados por el controlador de la placa del motor. Estos son los pines GPIO 20 y 21 y los dos pines de tierra de repuesto cercanos. Utilice las clavijas de tierra de repuesto cercanas. Si la luz no funciona, intente cambiar a tierra redonda con la salida GPIO. Para averiguar qué pines conectar a Google, un buen diagrama GPIO.

Paso 15: Pruebe los LED y la Nose Cam

Pruebe los LED y la Nose Cam
Pruebe los LED y la Nose Cam

Para iniciar el software de la cámara web, escriba:

movimiento sudo

También asegúrese de haber iniciado el script robot.py (como se detalla en la instrucción anterior):

sudo python robot.py

Ahora debería poder usar el interruptor de luces en el controlador para encender y apagar las luces.

La cámara web debería transmitir en su dirección IP de Pis en el puerto 8080, así que, por ejemplo, escriba lo siguiente en su navegador web.

192.168.1.2:8081

Encontré la dirección IP de Pi iniciando sesión en mi enrutador como administrador y mirando los dispositivos conectados. Las instrucciones sobre cómo hacer esto generalmente se encuentran en la parte posterior del enrutador, o consulte las instrucciones de su enrutador en línea.

puede explorar los ajustes de configuración del software de movimiento, como se describe en el paso anterior. Encuentro que a veces la transmisión se detiene, pero en general funciona bien.

Puede acceder a esta transmisión de video desde cualquier dispositivo que ejecute un navegador conectado a su red Wifi.

Paso 16: Terminando

Acceso en linea

Ahora debería poder controlar el robot desde un navegador en una PC. Sin embargo, es bueno poder controlar el bot desde cualquier dispositivo táctil como Ipad o teléfono.

Para hacer esto, necesita alojar los archivos del cliente (buttons.html, etc.) en un servidor web.

Comencé instalando un servidor web en el Pi, que funciona bien. Sin embargo, es más fácil simplemente cargar el archivo HTML en cualquier otro servidor web. Simplemente copié el archivo HTML en mi cuenta de host azul pública. Es posible que desee proteger el acceso a estos archivos, ya que contienen las subclaves pub para su canal pub nub. Una vez hecho esto, puede acceder al controlador desde cualquier dispositivo, incluso desde fuera de su casa.

Autoinicio

Otra cosa útil que puede hacer es actualizar el script / etc / rc.local en su Raspberry Pi; agregando estas dos líneas:

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

Estos se ejecutarán cada vez que se inicie la Pi, por lo que no es necesario que ejecute el comando manualmente.

Paso 17: ¡Diviértete

Divertirse !
Divertirse !

Eso es todo.

No dude en dejar comentarios si se queda atascado y si desea mejorar alguno de los programas, contribuya al repositorio de github. Continuaré trabajando en este proyecto y aquí hay algunas ideas:

  • Un controlador de estilo "big trak" en el que programa una secuencia de comandos como "izquierda 10, adelante 6, atrás 2 …" y luego presiona "ejecutar" y el robot ejecuta los comandos.
  • Un cuello inclinado, para que pueda mirar hacia arriba con la cámara web.
  • Un altavoz que traduce el texto del controlador al habla.
  • Control controlado por voz

Salud

Pedro

Recomendado: