# Control de motores de cc de 24v 150W



## alfista (Jun 5, 2013)

Hola a todos, es la primera vez que participo creando un tema. Necesito ayuda para construir un control de potencia para comandar dos motores de 24 vcc y unos 150 w cada uno. Se trata de un proyecto solidario escolar para dar una ayuda en la movilidad de una persona con amputación de ambos miembros inferiores. Consta de una plataforma porta silla de ruedas con una rampa de acceso frontal. La parte mecánica la tenemos resuelta como así también los motores con su respectiva caja reductora cada uno. Nos falta resolver el control que debería ser por Joystick con modulador de ancho de pulso para regular la velocidad y con rampa de inicio, no cuenta con dispositivo de dirección por lo que para doblar debería modificar la velocidad de giro de cada rueda en forma independiente. Tengo alguna fotos del proyecto que fuimos construyendo con alumnos de la escuela en donde trabajo, si es de interés puedo adjuntarlas. Si alguien cuenta con circuitos o diagramas electrónicos que puedan solucionar este problema se lo agradeceríamos!
Saludos desde La Pampa!


----------



## jcristhian_1 (Jun 6, 2013)

Hola amigo, para controlar la velocidad y el sentido de giro de un motor lo que necesitas es un puente h.

Acá hay un ejemplo de el:

http://tahmidmc.blogspot.com/2013/01/using-high-low-side-driver-ir2110-with.html

Si vas a usar un microcontrolador, el cambio de velocidad en rampa, lo puedes implementar fácilmente.


----------



## alfista (Jun 6, 2013)

jcristhian_1 dijo:


> Hola amigo, para controlar la velocidad y el sentido de giro de un motor lo que necesitas es un puente h.
> 
> Acá hay un ejemplo de el:
> 
> ...



Hola, gracias por el dato, voy a visitar el blog para ver que encuentro!


----------



## jcristhian_1 (Jun 6, 2013)

Hola de nuevo amigo, aquí te dejo un pdf de un proyecto que realice con unos compañeros hace tiempo, si consigo mas información te la envío, o si deseas algo en concreto me avisas,  estaré atento por si te pueda ayudar en algo adicional.

Saludos y éxito con tu proyecto.


----------



## joseeduardosn (Oct 27, 2013)

Hola gente, yo también estoy buscando algo así.
He pensado usar 2 pic's o usar timers. No sé si ya les habrá salido, pero qué opinan de esta propuesta?


----------



## Fogonazo (Oct 27, 2013)

joseeduardosn dijo:


> Hola gente, yo también estoy buscando algo así.
> He pensado usar 2 pic's o usar timers. No sé si ya les habrá salido, pero *qué opinan de esta propuesta?*



Que es demasiado ambigua, NO define nada y no aporta nada


----------



## joseeduardosn (Oct 28, 2013)

Fogonazo dijo:


> Que es demasiado ambigua, NO define nada y no aporta nada



Dije propuesta, no aporte.

Sin ánimos de pelea.

Leyendo el tread vi que ofrecías una solución supuestamente sencilla. Decías que eran 2 ruedas y dos potes y que por lo tanto el control era simple.

Pero sucede que no es así. No son simplemente 2 ruedas - 2 potes. Intervienen las combinaciones de los potes. Habrían que poner a los medidores análogos del pic los 2 resistores. 

Seguiré pensando una solución y en cuánto pueda subiré algo de mi avance.

Saludos.


----------



## Fogonazo (Oct 28, 2013)

joseeduardosn dijo:


> Dije propuesta, no aporte. . . .


Como *"Propuesta"* es demasiado ambigua, *NO* define nada y no aporta nada a la comprensión de lo que se propone.


----------



## joseeduardosn (Oct 28, 2013)

Fogonazo dijo:


> Como *"Propuesta"* es demasiado ambigua, *NO* define nada y no aporta nada a la comprensión de lo que se propone.



Sí, entiendo. Bueno, lo que yo buscaba era saber si alguien más lo intentó de la manera en que lo tengo planeado (usando timers), pues no tengo algo ya listo. Estoy en eso. Cuando lo tenga concretado o listo para empezar subiré las propuestas finales para que las chequeen.

Saludos.


----------



## joseeduardosn (Nov 18, 2013)

Hola gente, estoy intentando algo con un pic usando el ADC y el PWM.

Mi duda viene a que una vez escuché que el usar muchas condiciones "if" puede hacer que no funcione bien la programación. A alguien le ha pasado?

Ésto es lo que me salió y por el momento, por la simpleza seguro, funciona:

void main()
{
 unsigned int x,y; //las 2 axis del joystick
 trisc=0x00;
 trisa=0x03;
 trisb=0x00; // sólo lo implanté para comprobar mediante led's que el pic estaba haciendo la lectura.
 ADCON1=0x84;

V:
 x=adc_read(0);  //el pic da un valor de 10 bits a la lectura analógica por tanto si el pote está a la mitad
 y=adc_read(1);  //la lectura será de 512 (usé con Vref+ y Vref- al VDD y VSS respectivamente)

 if(x>439&&x<585&&y>439&&y<585)
    {
    portb=0x03;
    pwm_init(5000);
    pwm2_init(5000);
    pwm_change_duty(100); //pwm para probar, en ésta posición deberían estar quietas las ruedas
    pwm2_change_duty(100);
    pwm_start();
    pwm2_start();
    delay_ms(400);
    pwm_stop();
    pwm2_stop();
    }

else if(x>585&&y>585)
    {
    portb=0x0c;
    pwm_init(5000);
    pwm2_init(5000);
    pwm_change_duty(200);
    pwm2_change_duty(200);
    pwm_start();
    pwm2_start();
    delay_ms(400);
    pwm_stop();
    pwm2_stop();
    }
     goto V;
    }



Y aquí el proteus...


----------

