You are on page 1of 8

Convertidor de frecuencia a voltaje

Los convertidores de frecuencia a voltaje son circuitos integrados que convierten un voltaje de entrada
anlogo en un tren de pulsos cuya frecuencia de salida es proporcional al nivel de entrada. Se utilizan en
aplicaciones de conversin anlogo a digital donde la velocidad no es un factor crtico, tambin operan
como convertidores de frecuencia a voltaje y pueden ser utilizados como convertidores de seales
digitales a anlogas de baja frecuencia. Dentro de los convertidores de seales de voltaje a frecuencia o
de frecuencia a voltaje se encuentran:
- LM2907 de National semiconductor
- AD650 de Analog Devices
- VFC32 de Burn Brown
- XR4151 de Exar
Se muestra el circuito bsico para convertir frecuencia a tensin con este integrado:

Para el diseo se tomo en cuenta que:
La serie LM2907, LM2917 comprende convertidores de frecuencia a voltaje monolticos con un
Amplificador Operacional / Comparador de alta ganancia diseado para operar un rel, lmpara u otra
carga cuando la frecuencia de entrada alcanza o excede un intervalo. El tacmetro usa una tcnica de
bomba de carga y ofrece conversin de frecuencia con un bajo rizado, proteccin de entrada total en
dos versiones (LM2907-8, LM2917-8) y salida balanceada a tierra para una frecuencia de entrada cero.
- Salida balanceda para una frecuencia de entrada cero
- Fcil de usar: VOUT = fIN x VCC x R1 x C1
- Una red RC proporciona la conversin de frecuencia
- Zener regulador en el chip permite exactitud y estabilidad en la frecuencia para la conversin de
voltaje a corriente (LM2917)
Eleccin de los valores:
min 3
max 3
1
I
V
R >
por temas de diseo, se recomienda segn la hoja de datos que I3max=150mA, tambin:
|
.
|

\
|
=
2
1 . .
1
2 . 2
1 .
I
C Fin Vcc
C
C Vcc
V
ripple
, luego
fullscale
fullscale
F Vcc R
V
C
. . 1
3
1= y finalmente
|
.
|

\
|
=
2 . 1
3
1
. 2
1 .
2
I R
V
V
C Vcc
C
ripple

Con las formulas anteriores calculamos los valores de los componentes para el circuito:
Establecemos Vcc=7.5v, Vripple= 0.05v y Fmax=4.5 Khz
R1>V3max/I3min del datasheet, I3min=0.00015, entonces R1=10K (vlor comercial)
nf
F Vcc R
V
C
fullscale
fullscale
03 . 1
4500 5 . 7 100000
5 . 3
. . 1
3
1 =

= = , escogemos el valor comercial ms cercano (C1
= 820pF)
nF
R
C Fin Vcc
V
C Vcc
C
ripple
74
100000
10 4500 5 . 7
1
05 . 0 2
10 5 . 7
1
1 . .
1
. 2
1 .
2
9 9
=
|
|
.
|

\
|

=
|
.
|

\
|
=

, escogemos un valor
comercial ( C2=100nF)
Y para R2 segn el datasheet se recomienda debe ser de 10K.
Con todos los valores entonces proseguimos con el armado del circuito:



Del grafico anterior obtenemos que:
=
0
t 0.057-0.05=0.007
=
0
0.175-0.057=0.12
=
0
k (45-0)/(16-0)=2.81
Donde T<
0
t /4; T=0.001s
0 0
0
2 . 1
t

=
k
k
p
=6.857
0
2 t =
i
T =0.014
0
5 . 0 t =
d
T =0.0035
Luego:
a=
p
k =3.32
i
p
T
T k
b

= =1.083
T
T k
c
d p

= =12.61
Con los valores ingresados obtenemos el siguiente resultado:


Teniendo en cuenta que es posible modificar todos los parmetros del PID para obtener una mejor
respuesta a la seal de entrada, los valores calculados segn a formula anterior son referenciales,
ajustando epiricamente tenemos la salida que muestra la figura aterior.

El pic 18f4550
Para que el pic detecte al hardware al host-usb en este ejemplo hay que tener en cuenta esta constante:
#include <18F4550.h>
#fuses XTPLL,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,VREGEN,NOPBADEN
#use delay(clock=48000000)
#include "usb_cdc.h"
void main() {
...
La constante es el llamado usb_cdc.h y no es el nico archivo usado, si miran dentro de este vern
despus de varias lneas:
#if __USB_PIC_PERIF__
#if defined(__PCM__)
#error CDC requires bulk mode! PIC16C7x5 does not have bulk mode
#else
#include <pic18_usb.h> //Microchip 18Fxx5x hardware layer for usb.c
#endif
#else
#include <usbn960x.c> //National 960x hardware layer for usb.c
#endif
#include "rr2_USB_Cdc_Monitor.h" //USB Configuration and Device descriptors for this UBS device
#include <usb.c> //handles usb setup tokens and get descriptor reports

Como estamos usando el 18f4550 entonces se utilizara el driver pic18_usb.h y adems el
rr2_usb_Cdc_Monitor.h y el usb.c
Ahora nos fijamos en el Datasheet del 18f4550 nos encontramos un SFR llamado UIR











Este SFR contiene los flags de los estados de interrupcin seleccionados por UIE













Con este par de bits lo que hacemos es seleccionar el par USB Reset Interrupt y Idle Detect Interrup
Enable bit.
Haciendo las modificaciones al cdigo quedara asi:
/* ejemplo6_parte4_temp.c
en este ejemplo se tratar se ordenar al PIC reconocer la deteccin del HOST USB de la PC

adaptacin del cdigo original de RRCdcUSB de RedPic
Pedro-PalitroqueZ 4/feb/07
*/
#include <18F4550.h>
#fuses XTPLL,NOMCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,VREGEN,NOPBADEN
#use delay(clock=48000000)

#define use_portb_lcd TRUE

#define USB_CON_SENSE_PIN PIN_E3
#include <lcd.c>
#include "usb_cdc.h"

void main(){
lcd_init(); // llamadas necesarias para iniciar la LCD
usb_cdc_init(); // llamadas necesarias para iniciar el mdulo USB
usb_init(); // llamadas necesarias para iniciar el mdulo USB
while(!usb_cdc_connected()) { //bucle eterno
delay_us(500);
}
do{
usb_task();
delay_us(500);
}while (TRUE); // bucle eterno
}

/* ejemplo6_parte4_temp.c
en este ejemplo se tratar se ordenar al PIC reconocer la deteccin del HOST USB de la PC

adaptacin del cdigo original de RRCdcUSB de RedPic
Pedro-PalitroqueZ 4/feb/07
*/
#include <18F4550.h>
#fuses XTPLL,NOMCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL1,CPUDIV1,VREGEN,NOPBADEN
#use delay(clock=48000000)

#define use_portb_lcd TRUE

#define USB_CON_SENSE_PIN PIN_E3
#include <lcd.c>
#include "usb_cdc.h"

void main(){
lcd_init(); // llamadas necesarias para iniciar la LCD
usb_cdc_init(); // llamadas necesarias para iniciar el mdulo USB
usb_init(); // llamadas necesarias para iniciar el mdulo USB
do{
usb_task();
delay_us(500);
}while (TRUE); // bucle eterno
}

Conclusiones:
- Vemos que el control PID llega a controlar no solo la velocidad sino tambin si le tuviera alguna
obstruccin este tratara de mantener su secuencia de giro.
-

Bibliografia:
http://www.unpocodelectronica.netau.net/mis-primeros-pasos-con-el-18f4550#introduccion
http://www.melca.com.ar/datasheets.html

You might also like