miércoles, 14 de febrero de 2018

Coche teledirigido mando 3 ejes nRF24L01 L293D Arduino_ Versión 2

Página principal

Coche teledirigido
mando 3 ejes
nRF24L01
L293D
Arduino

xsetaseta@gmail.com

Este montaje es la continuación del anterior montaje carreci.html .
En este montaje añado un mando reutilizado de un helicóptero que tenía averiado.
Para el montaje he utilizado los 3 potenciómetros  y el conmutador de diferentes canales.
El primer potenciómetro es utilizado para la velocidad.
Los otros dos potenciómetros los utilizo como manejo de la dirección.
El conmutador selecciona la velocidad de rotación del vehículo.
Pongo en conocimiento que cada mando de helicópteros es diferente, por lo cual cada uno deberá modificar internamente el mando, cortando pista o lo que sea necesario para que se pueda reutilizar.



Esquema del emisor.

A nivel de programa se ha realizado bastantes cambios.
Se digitalizan los 3 potenciómetros , y se chequean los diferentes interruptores.
Ahora se mandan 7 bytes con los datos digitalizados.
1-SENSOR0    Eje1
2-SENSOR1    Eje2
3-SENSOR2    Velocidad
4-SENSOR3    (nada , reservado)
5-ENTRADAS    Las diferentes entradas en modo bit

El resto de bytes no se utilizan.

Los datos se mandan aproximadamente cada 100 miliSegundos , (algo menos de 10 datos por segundo)

Emisor con el mando reciclado.



Esquema del receptor.

En el receptor he trabajado mas, hay bastantes cosas que he modificado.
En primer lugar veía que había bastantes problemas con la alimentación de los motores. Por lo que decidí alimentarlo a través de dos baterías de 3,7V colocadas en serie y colocar un regulador de tensión 7805 para estabilizar la tensión a 5V.
Uno de los mayores problemas que tuve era que al alimentar los motores al arrancar, se necesitaba un impulso de energía extra.
La solución aunque parezca extraña fue mediante programa.
if(anterior==0)
             {
               analogWrite(9,255);
               analogWrite(10,255);
               anterior=1;
               delay(90);
             }

El programa detecta si se encuentra parado el vehículo, y en ese caso aplica la máxima tensión durante 90 miliSegundos, el coche rompe la inercia de parado,  y luego aplica la tensión normal para mantener la velocidad. Esto fue un gran descubrimiento para el buen funcionamiento del vehículo.

Como quería controlar un poco la dirección cuando estaba en movimiento. Reduje un poco la tensión en una de las ruedas cuando movía el mando, consiguiendo que el vehículo girara hacia el lado que quería.

El giro del vehículo desde parado lo he configurado para que se efectué a saltos, era la mejor forma de controlarlo sin que se pasase girando continuamente. En uno de los interruptores  seleccionamos la velocidad de giro entre 100mS y 50mS.

Debemos tener presente que el receptor tiene dos motores de escobilla que producen bastantes interferencia, así como consumos puntuales en el arranque. Por lo que recomiendo que se alimente independientemente la parte de los motores de la parte del arduino.

Este montaje es un mero montaje de prácticas que  funciona.
Para un montaje mas ambicioso deberíamos saber la alimentación de las baterías  6V o 12 V, un regulador adecuado con pocas perdidas. Colocar un regulador para los módulos emisor y transmisor. También utilizar los módulos con antena y mayor potencia que pueden alcanzar hasta 1Km en campo abierto.
Espero que le guste a alguien este montaje, o que le pueda proporcionar ideas.

PROGRAMA

Saludos.
Juan Galaz


Bibliografía:

Mando a distancia de 4 reles (relay)
Arduino-Android-Bluetooth-hc05-Manejando un coche-mediante nRF24
Coche teledirigido

No hay comentarios:

Publicar un comentario