¿Cómo construir un robot arduino 4wd para principiantes

coches de control remoto son divertidos, seguro, pero auto-conducción vehículos robóticos son aún más divertido. En este tutorial, vamos a construir un robot de cuatro ruedas que puede conducir alrededor y evitar obstáculos. He comprado este kit 4WD completa de aliexpress, pero aquí se puede comprar la mayor parte de estos componentes de una tienda de electrónica y lo puso junto a ti mismo.

Recomiendo la lectura a través de todas las instrucciones antes de empezar, ya que hará que algunas cosas en claro que podría ser confuso en el primer tiempo a través. Además, esto puede parecer un proyecto muy largo, avanzado debido a la longitud de las instrucciones, pero en realidad es bastante simple. No hay necesidad de ser intimidado - este es un proyecto de nivel inicial que se puede obtener algunos resultados satisfactorios con, a continuación, construir sobre medida que aprende más. ¿No te gusta este estilo de robot? Aquí hay algo más robots Arduino fácilmente se podría construir en su lugar.8 Arduino Los robots se puede construir por menos inferior a $ 1258 Arduino Los robots se puede construir por menos inferior a $ 125Lee mas

Esto es lo que tenemos, después de tomar todo del embalaje:

arduino-bot-piezas

Para empezar, vamos a adjuntamos los motores y el puente H (la tarjeta que suministra energía a los motores) a la parte inferior del chasis. En primer lugar, coloque los cuatro soportes de metal (que están rectangular, bloques metálicos perforados) para cada motor utilizando dos tornillos largos y dos tuercas.

arduino-bot-soporte

Tendrá que asegurarse de que están conectados correctamente, así que echa un vistazo a la imagen de abajo para asegurarse de que el lado del bloque con dos agujeros perforados se enfrentará a la baja. Tenga en cuenta que los cables en cada motor están apuntando hacia el centro del chasis.

Arduino-bot-motores

Ahora, cada motor puede estar unido al chasis por medio de dos tornillos cortos en la parte inferior de cada soporte de metal. Aquí está una vista de la parte inferior del chasis para que pueda ver dónde están los tornillos tienen que ser:

a motor tornillos-inferior-view

El siguiente paso es asegurar el puente H (que es la junta de color rojo, en mi kit) al chasis. Es posible que desee esperar hasta que todos los cables están unidos al puente H antes de hacer esto, pero eso depende de ti (me pareció que era más fácil). Una nota rápida: mi kit faltaba una serie de elementos de sujeción, por lo que utiliza cinta aislante para fijar el puente. Sin embargo, se puede ver aquí, donde los pernos y tuercas habrían ido:

h-puente-pernos

Ahora que el puente H ha sido fijado, puede iniciar el cableado de la fuente de alimentación. Debido a que el soporte de la batería de seis AA viene con un adaptador DC, tendrá que o bien cortar el extremo (lo cual) o cables de puente dirigidos a las propias baterías.

portapilas-DC-eliminado

No importa cómo se decide hacerlo, se encontrará con el cable positivo al puerto llamado “VMS” y el cable negativo a la de la etiqueta “GND” en el puente. Atornillar los elementos de fijación y asegurarse de que son seguros. A continuación, podrás conectar los cables del motor. A ambos lados, hay un conjunto de dos uno Ports- se etiqueta “MOTORA” y el otro “MOTORB.” Ambos cables rojo en cada lado irán en el puerto verde más central, y los dos cables negros entrarán en la más externa. Esta imagen debe hacerlo más claro:

puente H-motores-cableados en marcha

Me di cuenta que tenía que quitar algunas de las viviendas fuera de los cables del motor a conseguir que esto funcione. Ahora que tiene los motores y la fuente de alimentación de todo cableado, deslice las ruedas sobre los ejes de accionamiento del motor, y se unen los cuatro ejes de cobre en los lugares muestran en la imagen siguiente (cada eje de cobre necesita un pequeño perno). Este robot está empezando a tomar forma!

Ruedas-on-drive-ejes

Ahora, establecer que una parte del chasis de un lado y agarrar la otra que se sentará en la parte superior. El siguiente paso consiste en conectar el Arduino-otra vez, tuve que usar cinta aislante, pero usted debería ser capaz de asegurar mejor la suya con algunos pernos y tuercas.

Arduino-chasis

El siguiente paso requiere que el servo micro, la pieza transversal negro, el titular de servo (que consta de tres piezas de plástico negro), y algunos tornillos pequeños. Utilice uno de los tornillos afilados más grandes en el kit para fijar el travesaño negro al servo micro:

negro-travesaño-micro-servo

Luego, abre el servo boca abajo en el anillo de plástico negro del soporte. Asegúrese de que los cables que salen del servo se enfrentan en la misma dirección que la parte más larga del titular (de nuevo, ver la imagen de abajo), y el uso de cuatro tornillos pequeños para fijar el travesaño (hay cuatro agujeros en el soporte que alinearse con los orificios de la travesaño).

servo-negro-ring

Esto es lo que parece que después de que se adjunta:

anillo de placa inferior

Vídeo: Carro Robot Arduino armado del kit Robot 4x4 banggood.com

Por último, tome las otras dos piezas del soporte de servo y que se ajusten a la servo (hay ranuras en las piezas laterales que coinciden con la pestaña de la parte servo).

completado-servo-titular

Ahora que el titular del servo se ha completado, se puede montar en el chasis.

servo-sostenedor montado

Aquí es donde van los tornillos:

chasis pernos servo-soporte;

Es el momento de dar a nuestro robot algunos ojos. Una el sensor de ultrasonidos para el soporte de servo utilizando dos bandas de sujeción.

zip-dades ultrasónico-sensor;

Si está trabajando desde el mismo kit que a mí, se le han recibido una pantalla del sensor de Arduino. Nosotros no vamos a usar en esta versión, pero que puede hacer estallar en la parte superior de la ONU ahora si quieres (como lo he hecho en la imagen de abajo). Sólo alinear los pines en la parte inferior del escudo con los puertos de E / S en el Arduino y presione hacia abajo para conectarlos. Usted no lo necesita en este momento, pero escudos puede ser útil.El Top 4 Arduino escudos para superpotencia sus proyectosEl Top 4 Arduino escudos para superpotencia sus proyectosUsted ha comprado un kit de iniciación Arduino, usted ha seguido todas las guías básicas, pero ahora usted ha golpeado una piedra de tropiezo - usted necesita más partes y detalles para realizar su sueño de la electrónica. Por suerte, si usted tiene ...Lee mas

Arduino-Sensor-escudo

Si se conecta un sensor de escudo o no, ahora tendrá cuatro cables para conectar el sensor de ultrasonidos para el Arduino. Hay cuatro pines en el sensor, VCC, GND, trig, y ECHO. Conectar VCC al pin 5V en el Arduino, GND a GND, y TRIG y ECHO a pines I / O 12 y 13.

Ahora toma la parte inferior del chasis y conecte seis cables de puente a los pines de E / S del puente H (que están marcados ENA, IN1, IN2, IN3, IN4, y ENB). Tomar nota de los cuales los cables de color están conectados a los puertos que, ya que necesitará conocer más adelante.

h-puente-alambres

Ahora es el momento de empezar a poner esta cosa juntos. Coge la parte superior del chasis y la puso en la parte superior de los ejes de cobre conectados a la parte inferior, y tire de los cables conectados al puente H a través del agujero en el centro del chasis. Conectar los seis alambres a los puertos de E / S como sigue:

  • ENA a puerto I / O 11
  • ENB a puerto I / O 10
  • A1 a puerto I / O 5
  • A2 a puerto I / O 6
  • B1 al puerto de E / S 4
  • B2 al puerto de E / S 3

Arduino-bot-cableado

Ahora, utilice cuatro tornillos cortos para unir la parte superior del chasis para los ejes de cobre. Ajuste el soporte de la batería de seis AA en la parte superior del chasis (tornillo hacia abajo si es posible), coloque el soporte de 9V para el Arduino, y este robot está listo para el rock!

arduino-bot de final

Bueno, casi listo para el rock. No tiene suficiente personalidad todavía.

Arduino-mala-bot

Aquí vamos. Ahora para darle un cerebro. Hagamos un poco de programación.

Lo primero que haremos es prueba para asegurarse de que el puente y los motores están conectados correctamente. Aquí está un boceto rápido que le dirá que el robot para impulsar por medio segundo, conduce al revés durante medio segundo, a continuación, girar a la izquierda y la derecha:

// pins Motor A (enableA = permiten motor, Pina1 = hacia adelante, pinA2 = hacia atrás)
int enableA = 11-
int Pina1 = 6-
int pinA2 = 5-
//pins Motor B (enabledB = permiten motor, pinB2 = hacia adelante, pinB2 = hacia atrás)
int enableB = 10-
int pinB1 = 4-
int pinB2 = 3-
//Esto le permite ejecutar el bucle de una sola vez para la prueba
run boolean = cierto-
vacío preparar() {
pinMode(EnableA, OUTPUT) -
pinMode(Pina1, OUTPUT) -
pinMode(PinA2, OUTPUT) -
pinMode(EnableB, OUTPUT) -
pinMode(PinB1, OUTPUT) -
pinMode(PinB2, OUTPUT) -
}
vacío lazo() {
Si (correr) {
retrasar(2000) -
enableMotors() -
//Avanzar
adelante(200) -
//Retroceder
hacia atrás(200) -
//Girar a la izquierda
girar a la izquierda(400) -
costa(200) -
//Dobla a la derecha
dobla a la derecha(400) -
costa(200) -
//Esto detiene el bucle
ejecutar = falso-
}
}
//Definir comandos H-puente de alto nivel
vacío enableMotors()
{
motorAOn() -
motorBOn() -
}
vacío disableMotors()
{
motorAOff() -
motorBOff() -
}
vacío adelante(int hora)
{
motorAForward() -
motorBForward() -
retrasar(hora) -
}
vacío hacia atrás(int hora)
{
motorABackward() -
motorBBackward() -
retrasar(hora) -
}
vacío girar a la izquierda(int hora)
{
motorABackward() -
motorBForward() -
retrasar(hora) -
}
vacío dobla a la derecha(int hora)
{
motorAForward() -
motorBBackward() -
retrasar(hora) -
}
vacío costa(int hora)
{
motorACoast() -
motorBCoast() -
retrasar(hora) -
}
vacío freno(int hora)
{
motorABrake() -
motorBBrake() -
retrasar(hora) -
}
//Definir comandos H-puente de bajo nivel
//permitir a los motores
vacío motorAOn()
{
digitalWrite(EnableA, ALTO) -
}
vacío motorBOn()
{
digitalWrite(EnableB, ALTO) -
}
//desactivar los motores
vacío motorAOff()
{
digitalWrite(EnableB, LOW) -
}
vacío motorBOff()
{
digitalWrite(EnableA, LOW) -
}
//controles de motor A
vacío motorAForward()
{
digitalWrite(Pina1, ALTO) -
digitalWrite(PinA2, LOW) -
}
vacío motorABackward()
{
digitalWrite(Pina1, LOW) -
digitalWrite(PinA2, ALTO) -
}
//controles de motor B
vacío motorBForward()
{
digitalWrite(PinB1, ALTO) -
digitalWrite(PinB2, LOW) -
}
vacío motorBBackward()
{
digitalWrite(PinB1, LOW) -
digitalWrite(PinB2, ALTO) -
}
//cabotaje y frenado
vacío motorACoast()
{
digitalWrite(Pina1, LOW) -
digitalWrite(PinA2, LOW) -
}
vacío motorABrake()
{
digitalWrite(Pina1, ALTO) -
digitalWrite(PinA2, ALTO) -
}
vacío motorBCoast()
{
digitalWrite(PinB1, LOW) -
digitalWrite(PinB2, LOW) -
}
vacío motorBBrake()
{
digitalWrite(PinB1, ALTO) -
digitalWrite(PinB2, ALTO) -
}
vista raw4wd-robot-test.inohosted con ❤ por GitHub
Eso es un montón de código para una prueba simple, pero la definición de todas esas funciones hace que sea más fácil de ajustar más tarde. (Muchas gracias a Billwaa para su entrada en el blog sobre el uso del puente H para definir estas funciones.) Si algo salió mal, comprobar todas las conexiones y que los cables están conectados a los pines correctos. Si todo funcionó, es el momento de pasar a la prueba del sensor. Para usar el sensor de ultrasonidos, tendrá que descargar la biblioteca NewPing, y luego usar Bosquejo gt; incluir Biblioteca gt; Añadir biblioteca .ZIP ... para cargar la biblioteca.

add-zip-biblioteca

Asegúrese de que se ve la instrucción de inclusión en la parte superior de su bosquejos si no, pulsa Bosquejo gt; incluir Biblioteca gt; NewPing. Una vez que hayas hecho esto, cargue el siguiente esquema:

#incluir lt;NewPing.hgt;
//Decir la Arduino, donde el sensor está conectado
NewPing sonar(12, 13) -
largo pulgadas-
vacío preparar() {
//Activar el monitor de puerto serie para que pueda ver la salida del sensor
De serie.empezar(9600) -
}
vacío lazo() {
retrasar(50) -
//Ping el sensor para determinar la distancia en pulgadas
pulgadas = sonar.ping_in() -
//Imprimir la distancia en pulgadas para el monitor serie
De serie.impresión(pulgadas)-
De serie.impresión(" en.") -
De serie.impresión("norte") -
}
Ver rawnewping_demo.inohosted con ❤ por GitHub

Sube el boceto, y abrir el monitor serie utilizando Herramientas gt; serial monitor. Debería ver una secuencia rápida actualización de los números. Ponga su mano frente al sensor y ver si ese número cambia. Mueva la mano dentro y fuera, y usted debe obtener una medida de lo lejos que su mano es desde el sensor.

Vídeo: Como Hacer un Robot Casero a Control Remoto (Muy fácil de hacer )

sensor_test

Si todo funcionó correctamente, es el momento de poner todo junto y dejar que esta cosa funciona! Aquí está el código para el robot ahora. Como usted puede decir probablemente, esto es, básicamente, los dos bocetos de prueba que junto con un añadido if para controlar el comportamiento del robot. Nos hemos dado una forma muy sencilla el comportamiento de evitación de obstáculos: si detecta algo menos de cuatro pulgadas de distancia, se copia de seguridad, girar a la izquierda, y empezar a moverse de nuevo. He aquí un video del robot en acción.

Dé a su robot un poco de vida

Una vez que haya recibido este comportamiento de funcionar correctamente, puede agregar más complejo comportamiento: hacer que el robot se alternan entre el giro a la izquierda y derecha, o elegir aleatoriamente que suene un zumbador si se pone cerca de algo- sólo a su vez, en lugar de respaldo que UP- `re realmente sólo limitado por su imaginación. Se podría utilizar casi cualquier cosa en su starter kit Arduino añadir más funcionalidad. Se dará cuenta también de que no hemos codificado nada por el servo sin embargo: en realidad se puede hace “ojos” de su robot se mueven hacia adelante y hacia atrás. tal vez de usarlos para buscar un camino en lugar de sólo una copia de seguridad cada vez que encuentra un obstáculo directamente en frente.Qué hay en tu Arduino Starter Kit? [Arduino principiantes]Qué hay en tu Arduino Starter Kit? [Arduino principiantes]Frente a una caja llena de componentes electrónicos, es fácil sentirse abrumado. He aquí una guía para exactamente lo que encontrará en su kit.Lee mas

Háganos saber si usted decide construir este robot u otro, y nos dicen cómo decida personalizar su comportamiento o la apariencia. Si usted tiene alguna pregunta acerca de este robot, publicarlos en los comentarios de abajo, y voy a ver si puedo ayudar!

Artículos Relacionados