0. Componentes y programación necesaria para el control del robot de 2 motores

Requeridos componentes:

Para realizar este proyecto necesitaremos los siguientes componentes:

I. Montaje del chasis Coche 2x Ruedas DIY

Lo primero que vamos a hacer para montar nuestro coche esquiva objetos de dos ruedas motrices, será montar su chasis.

El chasis es muy sencillo de montar, necesitará soldar algunos cables y atornillar, por lo que necesitará de soldador y destornillador.

Siga cada uno de los pasos dados en la hoja adjunta incluida en el mini kit robot coche 2WD DIY para juntar todas las piezas, todo los tornillos que se necesitan ya se encuentran en un sobre.
En el chasis hay un hueco para poder incluir un interruptor permitiendo encender y apagar el mini robot coche 2 ruedas sin tener que sacar en cada vez las pilas.
También habrá que añadir como mas te guste, el soporte para el sensor de ultrasonidos, puede ser con pegamento, atornillarlo o lo más indicado usar una pistola de silicona. Esta también puede ser muy útil para fijar el portapilas.

Os dejamos también un tutorial muy bien guiado de Robodacta: http://store.robodacta.mx/Material/KitRobotMovilArmado2WD.pdf

Si necesita más elementos y acceder a todas las descripciones técnicas de nuestros productos, conéctese a la página web de nuestra tienda Solectro Shop.

II. Cableado del controlador L298N y sensor ultrasonidos HC-SR04 con Arduino UNO

En primer lugar, antes de proceder al cableado piense en retirar los puentes eléctricos entre ENA/+5V y entre ENB/+5V.
Vamos a empezar paso a paso, hasta llegar al cableado de todos los elementos. Si ves que prefieres el esquema final para la conexión, por favor ves al último esquema y la tabla de conexiones.
El controlador de motores L298N presenta las siguientes conexiones:
Utilizando la placa prototipo 170 puntos sin soldar, realice el cableado siguiente:
Cableado%2Bm%25C3%25B3dulo%2BControlador%2Bde%2Bmotores%2BL298N%2BDoble%2BPuente%2BH.jpg

III. Cableado del controlador L298N con el porta pilas

Los motores piden una energía importante que puede dañar el módulo UNO si los alimentamos con la alimentación 5V de este.

Es indispensable disociar la parte control de la parte potencia y vamos a alimentar el módulo controlador L298N doble puente H por una fuente de 4 pilas tipo AA de 1.2V para tener un valor de alimentación de aproximadamente 5V.

Conservando el cableado que acabamos de realizar en la ultima parte, agregue el porta pila como en el cableado siguiente :


Cableado%2Bm%25C3%25B3dulo%2BControlador%2Bde%2Bmotores%2BL298N%2BDoble%2BPuente%2BH%2Bcon%2Bporta%2Bpilas.jpg



Es importante que todos los GND sean comunes entre el módulo UNO, el módulo controlador y el porta pilas para que todo el sistema tenga la misma referencia de voltaje.

IV. Cableado de los dos motores 6V DC RPM con reductor


Complete el cableado agregando los dos motores 6V DC RPM con reductor de la manera siguiente :

Cableado%2Bm%25C3%25B3dulo%2BControlador%2Bde%2Bmotores%2BL298N%2BDoble%2BPuente%2BH%2Bcon%2Bporta%2Bpilas%2By%2Bmotores.jpg

V. Cableado del módulo sensor de ultrasonidos HC-SR04

Complete el cableado agregando el siguiente módulo y el interruptor,  tal y como se indica en la siguiente imagen:
Cableado%20m%C3%B3dulo%20Controlador%20de%20motores%20L298N%20Doble%20Puente%20H%20con%20porta%20pilas%20y%20motores%20e%20interruptor.jpg
Recuerda que puedes hacer puentes en la Protoboard para unir varias conexiones al mismo punto, por ejemplo tierra o alimentación.

Tabla de conexiones

Pin Arduino UNO

Conexión

Pin de conexión

Color cable esquema

 

2

L298N

IN3

Naranja

 

3

L298N

IN4

Azul

 

4

L298N

IN2

Verde

 

5

L298N

ENB

Gris

Unir a +5V en protoboard

6

L298N

ENA

Amarillo

Unir a +5V en protoboard

7

L298N

IN1

Morado

 

8

HC-SR04

Echo

Verde

 

9

HC-SR04

Trigger

Morado

 

5V

HC-SR04

VCC

Rojo

Unir a ENA + ENB

GND

HC-SR04

GND

Negro

Unir a todas las GND


VI. Resultado del montaje en el chasis 2WD de nuestro coche detecta obstáculos

Una vez realizado el montaje de nuestro sistema en el chasis coche 2 ruedas obtenemos el mini robot siguiente:

   

  

Por supuesto, puedes hacer una cubierta casera y personalizar tu coche. Prueba a darle forma con cartón sacando tu lado mas manitas.

Para un nivel más avanzado, le puedes añadir leds de colores o un zumbador de marcha atrás. El esquema de conexión de estos y su código es muy sencillo. Es tan sencillo como introducir una línea de código después de la instrucción que desees. Por ejemplo, salida a 1 mientras esté en el bucle de marcha atrás el pin 9 para activar el zumbador.

Nota: recuerda que para los LEDs es recomendable una resistencia en serie.

Puedes juntar más los elementos, en las fotos están separados para ver sus conexiones con mejor claridad.

VII. Programación del coche robot detector de obstáculos mediante el sensor de ultrasonidos

Vamos a proceder ahora a la programación del módulo UNO para que el mini robot coche 2WD se pueda avanzar de manera autónoma, cambiando solo de dirección en cada vez que encuentra un obstáculo o una pared.

En un archivo nuevo, escribamos el programa siguiente en la interfaz de programa Arduino.

Para que el programa pueda compilar con éxito, se necesita absolutamente descargar la librería Arduino LEANTEC_ControlMotor.h, colocando sus carpetas a la dirección siguiente de su sistema :

C:\Program Files (x86)\Arduino\libraries

De clic para descargar el programa Arduino.

Una vez que ha copiado el código en la interfaz, haga clic en Programa/Verificar/Compilar.

Debajo de su pantalla en la interfaz Arduino, hay una zona de mensaje del compilador en la cual se puede ver si el código ha sido redactado bien o si presenta errores.

Si el código se compila con éxito, aparece el mensaje siguiente :

Una vez compilado cargue el programa en el micro controlador ATMEGA328P-PU del módulo Uno R3, haciendo clic en Programa/Subir.

En nuestro programa calculamos primero la distancia que separa el sensor de la pared gracias a una señal ultrasonido ECHO que el HC-SR04 emite, deduciendo de acuerdo al tiempo que se demora el sonido para regresar, la distancia real en cm.

La variable llevando el valor de la distancia es de tipo long, es decir un valor entero porque necesitamos afectar a los motores un funcionamiento de acuerdo a la distancia indicada para que pueda parar encontrando una pared y girar a la izquierda, a la derecha o retroceder.

El programa se repite de manera perpetua gracias a la función void loop () y se ejecuta de la manera siguiente :

  • si el valor de la distancia hasta al obstáculo está entre 0 y 10 incluido, el mini robot para 1s y retrocede durante 750 ms,
  • si el valor de la distancia hasta al obstáculo está entre 11 y 12 incluido, el mini robot para 1s y gira a la derecha durante 1 s,
  • si el valor de la distancia hasta al obstáculo está entre 13 y 14 incluido, el mini robot para 1s y gira a la izquierda durante 1 s,

en todos los otros casos el mini robot sigue en marcha adelante, se considera que no hay obstáculos eminente y sigue su camino hasta encontrar un valor de distancia correspondiendo a uno de los tres casos citados.

A esa etapa el mini robot coche 2 ruedas puede funcionar de manera autónoma detectando solo los obstáculos y siguiendo su camino en otras direcciones.

De clic para descargar el programa Arduino.

Otros artículos interesantes