Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Arduino Spybot

Componentes y suministros

Arduino UNO
× 1
Arduino Proto Shield
Puede usar cualquier otra placa soldable con encabezados de clavija
× 1
Adafruit Motor / Stepper / Servo shield V2
× 1
SM-S4306R Servo de rotación continua
× 1
Motor de CC (genérico)
× 4
Neumático de motor
× 4
Cables de puente (genéricos)
Los necesitas para los motores
× 8
portapilas 4xAA
× 2
Pilas AA
× 8
Teléfono móvil
He usado un Nokia Lumia 520 para el proyecto
× 1
Soporte para teléfono móvil
× 1
Chasis personalizado
He usado una tabla de madera simple
× 1

Aplicaciones y servicios en línea

Johnny-Five

Acerca de este proyecto

Breve introducción

Este es un simple automóvil de cuatro ruedas que se puede controlar a través de una conexión bluetooth. El coche puede contener cualquier teléfono móvil que se pueda utilizar como cámara IP. Decidí hacer este robot con javascript usando un servidor web de nodo donde puedo monitorear a dónde va el robot.

Puede ver el circuito de las partes principales en la figura 1.

Después de ejecutar el servidor, aparece una pantalla que contiene una introducción sobre el control y una ventana para la vista de la cámara (figura 2).

Y sí, este diseño es receptivo.

El chasis

En esta versión del bot decidí hacer el chasis por mi cuenta. Si no tiene una máquina perforadora o simplemente desea una solución más fácil, puede comprarla en una amplia variedad de carrocerías de plástico.

Seguí el camino de hacer mi propio chasis y no fue tan fácil como parece. La regla más importante es que debe colocar los neumáticos lo más cerca posible entre sí si desea elegir la dirección diferencial para dar la vuelta. Puedes leer los principales errores y reglas básicas de física en el siguiente enlace:

http://www.rakeshmondal.info/4-Wheel-Drive-Robot-Design

Otro desafío fue cómo conectar los motores de CC al chasis. En mi caso no tengo ninguna pieza especial para esto, así que decidí elegir unas bridas (150 / 3,5) para la tarea. Para colocar correctamente los neumáticos, tuve que perforar los orificios con la mayor precisión posible y usar 2 bridas para un motor de CC. Desafortunadamente, existe la posibilidad de que los motores no queden lo suficientemente rectos y que su automóvil se mueva un poco hacia la izquierda o hacia la derecha cuando usted controla hacia adelante y hacia atrás.

Las baterías

Para alimentar las placas y los motores, decidí elegir una sola fuente de alimentación de CC para la tarea. El chasis no tiene espacio para un soporte de batería de 8 x AA, así que tuve que hacer algunas personalizaciones, así que adjunté dos soportes de 4 x AA con 2 tornillos entre sí. Para esto también tuve que perforar el plástico.

Encendido

En mi caso, enciendo la placa Arduino Uno con 8 pilas recargables AA. Ésta es suficiente potencia para servir también al blindaje del motor. Hay un puente en este protector que es extraíble para que el protector de su motor no reciba energía del Arduino. En este caso, puede alimentar su escudo por separado utilizando los pines de alimentación que tiene. Puede leer sobre las diferentes opciones de alimentación en el siguiente enlace:

https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino/powering-motors

Conexión inalámbrica

Usé un módulo bluetooth HC-06 para establecer la conexión entre el auto y mi computadora. Quería usar la menor cantidad de cables posible, así que decidí construir un escudo Arduino personalizado colocando el módulo bluetooth y el escudo prototipo vacío, hacer el cableado debajo del escudo y soldar algunos cabezales de clavija para el mecanismo de conexión correcto. Puede tener una vista rápida del resultado en la figura 3 y la figura 4.

Lo bueno es que tiene la capacidad de desacoplar el módulo bluetooth del escudo en cualquier momento porque no está soldado a la placa.

Para configurar el módulo bluetooth, siga las instrucciones de este sitio:

https://github.com/rwaldron/johnny-five/wiki/Getting-Started-with-Johnny-Five-and-JY-MCU-Bluetooth-Serial-Port-Module

Movimiento

El robot puede avanzar, retroceder y girar mediante la dirección diferencial. El soporte de la cámara está conectado a un servo de rotación continua para que pueda mirar a su alrededor con el teléfono sin mover el automóvil. Puede ver una breve demostración en el siguiente video.

Teléfono móvil

Usé un Nokia Lumia 520 para el proyecto y la aplicación Win IP Camera que puedes encontrar en la tienda:

https://www.microsoft.com/en-us/store/p/win-ip-camera/9nblgggz4xb1

Sobre el código

Como desarrollador de javascript, decidí crear un servidor web de nodo para la página de control y usar algunas bibliotecas sofisticadas para mejorar la apariencia y la sintaxis del código. Puedes ver la lista completa en mi página de github y en la siguiente sección.

Decidí elegir la modularización tanto en el frontend como en el backend. Aquí está el punto de entrada de la aplicación:

  var boardModule =require ('./ src / boardModule'), servoModule =require ('./ src / servoModule'), motorModule =require ('./ src / motorModule'); boardModule.initBoard (). luego (function () {motorModule.initMotors (); servoModule.initServo ();});  

En el lado frontal también utilizo la separación para cada módulo:

  importar {moveWheels, stopWheels} de './wheelsControl';import {moveServo, stopServo} from' ./servoControl '; document.onkeydown =checkKeyDown; document.onkeyup =checkKeyUp; función checkKeyDown (e) {moveWheels (e.keyCode); moveServo (e.keyCode);} función checkKeyUp (e) {stopWheels (e.keyCode); stopServo (e.keyCode);}  

Para obtener el código base completo, consulte mi repositorio de github arriba.

Bibliotecas de Sortware

  • express.js:para mejorar nuestra aplicación Nodejs
  • johnny-five - para usar la API de control de Arduino Javascript
  • socket.io- para usar sockets web para establecer la comunicación entre el back-end y el front-end
  • susy:para crear el diseño y el diseño receptivo
  • diseño de materiales de Google:para utilizar elementos materiales
  • gulpJS - para la automatización de tareas
  • BabelJS:para transpilar EcmaScript 6
  • Browserify:para compatibilidad con módulos

Últimas palabras

Soy un principiante en este mundo de IoT y este es mi primer proyecto. No quiero decir que utilicé soluciones óptimas, pero espero que pueda encontrar información útil en esta guía.

Código

Github
https://github.com/dominikfilkus/arduino-spybot-V2

Esquemas

arduino-spybot.fzz

Proceso de manufactura

  1. Animación de mapa de bits en ILI9341 TFT Touchscreen Display Shield
  2. Controlador DMX operado por la web
  3. FlickMote
  4. Televisión casera B-Gone
  5. Reloj maestro
  6. Reloj HSV
  7. Juguete controlado por Android con Raspberry Motor Shield
  8. Encuéntrame
  9. Arduino Power
  10. Tech-TicTacToe
  11. Arduino Cuadrúpedo