Control de Motores DC/PAP con Puente H

Responder
Avatar de Usuario
marito048
Reboleador Extremo
Mensajes: 717
Registrado: Jue May 17, 2012 10:25 pm

Buenas tardes, después de unos días de ausencia he vuelto....
Abro tema nuevo para todo aquel que quiera hacer lo mismo que yo, o algo similar, y no lo pongo en el hilo donde estoy construyendo mi maquina ya que es mucha info la que hay ahí, y creo que esto le interesa a mas de uno.
Le hubiera puesto de titulo "Controlando mi Maquina con Puente H y Joystick" pero no quería puntualizar solamente en mi proyecto.
Estos son los materiales:
Tengo este joystick:

Imagen

y dos puentes H de estos:

Imagen

Aqui sus conecciones:

Imagen

Me salia mas barato comprar los puentes h armados y no hacerlos como el Xose_Maria.
La idea es poder controlar los tres ejes de la maquina con el joystick y con motores dc de impresoras, y que se pueda regular la velocidad de los motores, por eso no uso solamente pulsadores.
También esta la posibilidad de usar el mando de algún joystick tipo PS, cortando la plaqueta y sacando solamente los la palanca con los dos potes con pulsador. Porque el pulsador? Necesito manejar tres ejes, y solamente tengo dos, la idea es si mantengo cerrado el pulsador y muevo la palanca, me de el tercer eje que necesito.
También esta la idea de usar la palanca de la foto, ya que tiene mas pulsadores, con los cuales me gustaría (tema a consultar a Dmingo) manejar el Start y Stop desde la misma palanca.

Por lo pronto estoy viendo las conexiones del DB-15 y el arduino. La primera modificación que me surgió, es la de los potes de la palanca, ya que no tienen masa conectado y la eliminación de una placa la cual es para el turbo que no voy a usar. Ya tengo on/off de los botones.
Ahora bien, yo quiero alimentar la palanca con los 5Vcc, pero de una fuente externa, como lo hago para no recargar el arduino? tengo que poner la masa de la fuente con la masa del arduino juntos, no?
Otra cosa, el puente H tiene dos jumpers que unen Enable Port A con 5Vcc y Enable Port B con 5Vcc, ese jumper se usa solamente si no lo controlo con el arduino, no? y en Enable Port A y B van a salidas PWM? No quiero quemar nada.... :lol: :lol: :lol:
En breves pongo fotos y comento mis avances.
Saludos....
Última edición por marito048 el Vie Nov 15, 2013 6:12 pm, editado 1 vez en total.
"...Y pensar que dmingo cerró su hilo "Nuevo Proyecto:Arduino Rework" por falta de cuorum..."

[infobox]Maquinas Caseras en Construcción/Terminadas
>>>Máquina Brigantia d'arduino (Actualizado 14/09/2012)<<<>>>Maquina de JAGG<<<
>>>Empezando mi Maquina Reballing<<<>>>HELENE 150<<<[/infobox]
[successbox]MUSICA
Un par de temas Nacionales Argentinos[/successbox]
Pabloide73
Reboleador Extremo
Mensajes: 591
Registrado: Sab Nov 13, 2010 6:26 am

Hola, estoy haciendo algo similar pero con motores paso a paso, cuando tenga algo mas en concreto compartiremos experiencias. Saludos
cyb3punk
Pop Corn
Mensajes: 42
Registrado: Vie May 04, 2012 1:11 am

ola eu testei arduino com l293 e joystic . estou escrever no tablet . em casa eu meto esquema
Avatar de Usuario
marito048
Reboleador Extremo
Mensajes: 717
Registrado: Jue May 17, 2012 10:25 pm

Bueno, ya tengo lectura de potenciometro, previo modificaciones, y también acabo de despejar algunas dudas que tenia con respecto a la conexión con arduino. El jumper enableA y B lo tengo que dejar puesto sino no funciona el motor. En las entradas in1 in2 in3 e in4 van conectadas a salidas PWM del arduino, y no como creía antes que llevaban valores LOW y HIGH solamente. Las entradas de voltaje en VCC y GND la alimentación para el motor, PERO si pongo en on en switch que posee el puente h, alimenta tambien al l298 y el resto de la placa, en caso de ponerlo en off, necesariamente debemos alimentar al l298 por la entrada de 5Vcc.
Esta tarde sigo con mas pruebas y comento....
"...Y pensar que dmingo cerró su hilo "Nuevo Proyecto:Arduino Rework" por falta de cuorum..."

[infobox]Maquinas Caseras en Construcción/Terminadas
>>>Máquina Brigantia d'arduino (Actualizado 14/09/2012)<<<>>>Maquina de JAGG<<<
>>>Empezando mi Maquina Reballing<<<>>>HELENE 150<<<[/infobox]
[successbox]MUSICA
Un par de temas Nacionales Argentinos[/successbox]
cyb3punk
Pop Corn
Mensajes: 42
Registrado: Vie May 04, 2012 1:11 am

tens aqui o link

http://electroniqueamateur.blogspot.pt/ ... stick.html


foi de aqui que testei o meu com arduino.

codigo para arduino

/*
Contrôle de la base de robot au moyen d'un joystick
3-7 janvier 2012

*/

#define motorPin1a 3 // Marche avant du premier moteur
#define motorPin1b 4 // Marche arrière du premier moteur
#define speedPin1 9 // L293D enable pin pour le premier moteur
#define motorPin2a 5 // Marche avant du deuxième moteur
#define motorPin2b 6 // Marche arrière du deuxième moteur
#define speedPin2 10 // L293D enable pin pour le deuxième moteur
#define JoyStickPin1 1 //analog 1
#define JoyStickPin2 2 //analog 2

int Mspeed= 0;
int Mspeed1 = 0;
int Mspeed2 = 0;

unsigned long time;

void setup() {

// réglage des broches à output
pinMode(motorPin1a, OUTPUT);
pinMode(motorPin1b, OUTPUT);
pinMode(speedPin1, OUTPUT);
pinMode(motorPin2a, OUTPUT);
pinMode(motorPin2b, OUTPUT);
pinMode(speedPin2, OUTPUT);
}

void loop() {
Mspeed1 = (analogRead(JoyStickPin1)-511)/2;
Mspeed1 = Mspeed1 - (analogRead(JoyStickPin2)-511)/2;
if (Mspeed1 > 255) {
Mspeed1 = 255;
}
if (Mspeed1 < -255) {
Mspeed1 = -255;
}

Mspeed2 = (analogRead(JoyStickPin1)-511)/2;
Mspeed2 = Mspeed2 + (analogRead(JoyStickPin2)-511)/2;
if (Mspeed2 > 255) {
Mspeed2 = 255;
}
if (Mspeed2 < -255) {
Mspeed2 = -255;
}

if (Mspeed1 > 0) // donc marche arrière
{
analogWrite(speedPin1, abs(Mspeed1));
digitalWrite(motorPin1a, LOW);
digitalWrite(motorPin1b, HIGH);
}
else { // donc marche avant (ou repos)
analogWrite(speedPin1, abs(Mspeed1));
digitalWrite(motorPin1a, HIGH);
digitalWrite(motorPin1b, LOW);
}

if (Mspeed2 > 0) // donc marche arrière
{
analogWrite(speedPin2, abs(Mspeed2));
digitalWrite(motorPin2a, LOW);
digitalWrite(motorPin2b, HIGH);
}
else // donc marche avant (ou repos)
{
analogWrite(speedPin2, abs(Mspeed2));
digitalWrite(motorPin2a, HIGH);
digitalWrite(motorPin2b, LOW);
}
}



alimentaçao 5v pode ser do arduino ou entao metes regulador tensao 5v a partir da linha de entrada
Avatar de Usuario
marito048
Reboleador Extremo
Mensajes: 717
Registrado: Jue May 17, 2012 10:25 pm

Gracias cyb3punk, lo miro, pruebo y comento.
"...Y pensar que dmingo cerró su hilo "Nuevo Proyecto:Arduino Rework" por falta de cuorum..."

[infobox]Maquinas Caseras en Construcción/Terminadas
>>>Máquina Brigantia d'arduino (Actualizado 14/09/2012)<<<>>>Maquina de JAGG<<<
>>>Empezando mi Maquina Reballing<<<>>>HELENE 150<<<[/infobox]
[successbox]MUSICA
Un par de temas Nacionales Argentinos[/successbox]
darcito
Extractor
Mensajes: 148
Registrado: Lun Jul 25, 2011 2:50 am

suerte marito048 :P
Avatar de Usuario
marito048
Reboleador Extremo
Mensajes: 717
Registrado: Jue May 17, 2012 10:25 pm

Bueno, ya va mejorando un poco esto, tengo marcha adelante y reversa con variacion de velocidad con algunas cositas que resolver, tengo algunos pequenos cortes y no logro hacer que gire de forma uniforme. He vuelto a mi idea original de manejar la velocidad variando el pin enable del l298, y poniendo en HIGH o LOW los pines in1 e in2 para manejar el sentido. Son distintas formas, con esta ultima solo utilizo una salida PWM por motor y no dos. Pronto mas pruebas y algún que otro video.
"...Y pensar que dmingo cerró su hilo "Nuevo Proyecto:Arduino Rework" por falta de cuorum..."

[infobox]Maquinas Caseras en Construcción/Terminadas
>>>Máquina Brigantia d'arduino (Actualizado 14/09/2012)<<<>>>Maquina de JAGG<<<
>>>Empezando mi Maquina Reballing<<<>>>HELENE 150<<<[/infobox]
[successbox]MUSICA
Un par de temas Nacionales Argentinos[/successbox]
Avatar de Usuario
marito048
Reboleador Extremo
Mensajes: 717
Registrado: Jue May 17, 2012 10:25 pm

Bueno, ya tengo mas o menos lo que quería, ya puedo controlar los tres motores para los ejes de la maquina. Ahora tengo que ver que tal se comportan estos con el peso que tienen que mover.
Cambie de joystick, estoy usando uno analógico de PC de dos palancas, se comporta mejor a la hora de quedar en el centro, y cuando lo ponga en la maquina quedara un poco mejor presentado.
Acá un video de lo logre hacer.



Como siempre, la prolijidad al dia en la mesa de trabajo.. :lol: :lol: :lol:
"...Y pensar que dmingo cerró su hilo "Nuevo Proyecto:Arduino Rework" por falta de cuorum..."

[infobox]Maquinas Caseras en Construcción/Terminadas
>>>Máquina Brigantia d'arduino (Actualizado 14/09/2012)<<<>>>Maquina de JAGG<<<
>>>Empezando mi Maquina Reballing<<<>>>HELENE 150<<<[/infobox]
[successbox]MUSICA
Un par de temas Nacionales Argentinos[/successbox]
Avatar de Usuario
JAGG
manteca
Mensajes: 233
Registrado: Lun Sep 20, 2010 5:10 pm

Hola marito048, genial el control de los motores, usaste el codigo que dio cyb3punk ?
"Nuestra mayor gloria no esta en no caer jamás, sino en levantarnos cada vez que caemos".

Mi maquinita: http://www.reballing.es/viewtopic.php?t=5821&f=62
Responder