# integrado que transforme señal de voltage en PWM



## jimenezdalynho (Ene 21, 2011)

buenas saludos a los foreros estoy trabajando en el diseño de un brazo robot de tres grados de libertad y para el control de los motores tengo pensado hacerlo por pwm entonces la pregunta es si existe un CI que me transforme una señal de voltage que venga del PID en PWM en dond el perido de trabajo sea directamente proporcional al voltage que esta llegando del PID es decir si llegan oV es 0% y si llegan 5V es el 100% 
un video del brazo


----------



## Protoboard (Ene 21, 2011)

Lo que necesitas es un oscilador controlado por voltaje (o tensión) o VCO. Hay varios circuitos que puedes utilizar, incluso el 555 te puede servir. Revisa este tema para que te des una idea: https://www.forosdeelectronica.com/f11/crear-oscilador-controlado-voltaje-usando-ci-555-a-23168/


----------



## fdesergio (Ene 21, 2011)

Protoboard dijo:


> Lo que necesitas es un oscilador controlado por voltaje (o tensión) o VCO. Hay varios circuitos que puedes utilizar, incluso el 555 te puede servir. Revisa este tema para que te des una idea: https://www.forosdeelectronica.com/f11/crear-oscilador-controlado-voltaje-usando-ci-555-a-23168/



El PWM no es variacion de frecuencia, es variacion de la duracion del ancho del pulso manteniendo constante el periodo y por ende la  frecuencia, seria sencillo un generador frecuencia con señal de rampa ingresa a un AO en configuracion comparador y la señal de voltaje ingresa por la otra entrada del AO, la salida sera una señal de frecuencia fija pero ciclo util variable= PWM, chauuuuuuuu


----------



## Scooter (Ene 22, 2011)

Eso lo puedes hacer con cualquier microcontrolador


----------



## jimenezdalynho (Ene 22, 2011)

me imagino que quieres utilizar el cad del pic para que convierta
la señal del pid en un n° y que este sea el duty cycle pero mi pregunta es cual pic tiene CAD y por lo menos 3 canales de PWM pa lograr controlar los tres motores


----------



## fdesergio (Ene 22, 2011)

Si son 3 es mas sencillo aun , un generador de rampa o triangular y 3 comparadores , 3 entradas de tension de control desde el PID y tres salidas PWM, chauuuuuuuuu


----------



## Jadacuor (Ene 22, 2011)

bueno, una manera de hacerlo es como te dice fdsergio, aunque si quieres hacerlo con micro, pero hasta donde conozco el pic16f877 tiene solo dos modulos pwm, asi que el tercero tendrias que hacerlo por software (lo cual no es muy dificil).. saludos


----------



## jimenezdalynho (Ene 25, 2011)

Jadacuor me podrias explicar como hacerlo por software


----------



## Jadacuor (Ene 25, 2011)

bueno, yo utilizo el timer1 asi:

```
#INT_TIMER1
void timer_1(void)
{
pulso++;
if(pulso == 1)
   {
   output_low(pin_b1); // puerto que quieras ej =B1
   set_timer1(y);  // la variable y debe ser tipo long (int16)
   }
if(pulso > 1)
   {
   output_high(pin_b1);
   set_timer1(z);   // la variable z debe ser tipo long (int16)
   pulso = 0;
   }
}
 
}
```

voy a buscar un ejemplo para que sea mas claro...


----------

