TODOPIC
Microcontroladores PIC => Almacén del Assembler => Mensaje iniciado por: gerard en 13 de Junio de 2006, 10:00:08
-
Hola de nuevo a todos, como os dije tenía que implementar un PID con el pic 18F4420. El programa lo tengo más o menos claro pero me ha surgido una duda en el momento de crear mi señal de error, os comento..........
Tengo una senyal senoidal a 50Hz de +5V y -5V (de hecho es la señal de red transformada) a la cual le tengo que restarle una señal senoidal de amplitud variable. Las dos señales estan en fase.
Cada una de las señales van a un convertidor A/D del PIC en donde lo que hago es restarlas para obtener mi error.
Bien mi problema surge cuando la señal de error que me da es negativa, por ejemplo -5 - (-1)= -4 porque no sé el comportamiento del PIC ante posibles Vref+ y Vref-. A continuación os hago una explicación de mi opinión y porfavor si me equivoco corregidme:
Supongo que para este caso no serviria la configuración Vref+=+5V y Vref-=0V porque no admite valores negativos........... aunque si pudiese utilizar esta configuración iríaaaaaaaa cojonudooooo!!!!
Entinedo que tendría que configurar Vref+=+5V y Vref-=-5V........................ pero entonces como sabría que la señal de error es negativa? supongo porque el bit de mayor peso se me pondría a 1 o porque en el Status el bit de Carry negativo me lo indicaria................... la verdad es que no lo sé y no pudeo probarlo porque no tengo estas tensiones en mi casa.
Gràcias por vuestra atención!!!!!! Y saludos a todos
-
Hola gerard, tendras que buscarle la vuelta, porque segun tengo entendido el -Vref más bajo que permite un PIC es el de masa, por lo que no podras porner -Vref que sean negativos.
Un saludo.
Atte. CARLOS.
-
Hola gerard.
a ver si te entendi bien.
vos desis lo siguiente.
Supongo que para este caso no serviria la configuración Vref+=+5V y Vref-=0V porque no admite valores negativos........... aunque si pudiese utilizar esta configuración iríaaaaaaaa cojonudooooo!!!!
por lo que entiendo te vendria bien poder poner el valor de referencia negativo a cero (-Vref=0).
Si es asi pues esto se puede realizar,no tendrias problemas.
Entinedo que tendría que configurar Vref+=+5V y Vref-=-5V........................ pero entonces como sabría que la señal de error es negativa?
En los pic no puedes utilizar valores de tencion negativos,creo interpretaste mal el¨-¨de Vref, (por favor corregime si no es asi) no significa que nesesariamente ese valor de referencia tenga que ser negativo,de hecho no puede serlo porque el pic no lo admite.
Bueno un aludo y espero te alla ayudado.
-
Hola........ y gracias por vuestra información, es decir que solo puedo trabajar con tensiones positivas!!!!! entonces si mi señal de entrada es con semiciclo positivo y semiciclo negativo, tendría que subir toda la onda (offset) hasta que trabaje con valores positivos en el semiciclo negativo!!! lo digo bien??? o os he liado.......
Pues me habeis sacado de una duda muy importante para mi proyecto y os estoy muy agradecido!!!!!!
Suerte y saludos!!!!
-
Claro, solo positivas(aunque, yendo a la maxima precision, se comento en otro post que se puede llegar a ingresarle un muy pequeño voltaje negativo, nada sombroso, creo que no llegaba ni a -0.5V).
No te va a quedar otra que pasar los negativos a positivos. El maximo rango de trabajo es entre aproximadamente 0V y 5V, no excedas los limites.
Si convertis las negativas en positivas, vas a obtener en realidad una funcion de valor absoluto,pero no vas a poder saber si el ciclo es + o -.
Por lo tanto, tendrias que buscar la manera que +5V = +5V y -5V= 0V.
Entonces, quedaria asi:
+5V= +5V
0V = +2.5V
-5V= 0V
Asi que a ¡jugar con los AO!.
Saludos y suerte con la conversion.
-
Hola a todos!! como os comenté mi problema era que la tensión de salida era senoidal con semiperiodos negativos y postivos.
Pues bien tal y como me indicaron los compañeros del foro un convertidor AD no puede leer tensiones inferiores de 0, por este motivo os comento como solucioné el problema. Lo único que hice fue realizar un sumador con amplificadores operacionales y la suma era entre la señal senoidal que tenia de 2,5 y -2,5V de amplitud y una señal contínua que cree de 2,5 V. Con esta suma lo que conseguí fue obtener una señal senoidal de 0 hasta 5V positivos tal que me va a la perfección para poder trabajar con el convertidor AD del microcontrolador.
Gràcias a todos por vuestra ayuda, les estoy muy agradecido!!!!
Suerte