Autor Tema: Generador Funciones  (Leído 6454 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado ppalou

  • PIC10
  • *
  • Mensajes: 36
RE: Generador Funciones
« Respuesta #15 en: 12 de Enero de 2005, 08:37:00 »
Escrito originalmente por pocher
A ver, ya voy entendiendo cosas.

Unos consejillos:

1- Estas usando una amplitud para la triangular de 8, ¿porqué no la usamos de 5V, que es el margen del PIC?

2- La ecuación de la rampa de subida está bien, pero la ecuación que aplicas para calcular los puntos en la rampa de bajada creo que está mal.

3- En las ecuaciones de ambas rectas sigue sin aparecer el tiempo y creo que debiera.

4- Para el tiempo entre punto y punto aplicas delay_ms(freq); esto creo que también estaría mal. El tiempo entre punto y punto sería el periodo dividido entre el número de puntos a representar, en tu caso 64.

Un saludo



1- Lo tengo que hacer con un margen de 0 a 8 V porqué así me lo indica el enunciado de la práctica Sonrisa
2 - Ok, usaré la que ha comentado nocturno66  
3 y 4- Lo del tiempo creo que lo he entendido, por ejemplo para 4 Khz hago 1/(4000)·(64) = 3"90625 micro segundos . Pero solo se hacerlo con delay_us(3.90625) , no es así que lo tengo que hacer?

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: Generador Funciones
« Respuesta #16 en: 12 de Enero de 2005, 12:23:00 »
Como se trata de diseñar un generador de frecuencia variable, para cada valor de frecuencia vas a tener rectas diferentes de diferentes pendientes por eso necesitas para hacer la tabla las ecuaciones de las rectas dependiendo del tiempo.

Aunque la frecuencia sea otra tú usas siempre la misma tabla y eso no puede ser.

Hazte unos ejemplos con papel para dos frecuencias y mira a ver que pasa.

Respecto al intervalo de tiempo entre punto y punto, sí está bien, a eso me refería.

Un saludo

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: Generador Funciones
« Respuesta #17 en: 12 de Enero de 2005, 23:26:00 »
Pocher, no sé si es que estoy espeso, pero no acabo de entenderte.
Veamos. Dices que para frecuencias distintas, la ecuación de las rectas de subida y bajada es distinta, o sea, el coeficiente "a" cambia, puesto que podemos considerar que "b" es 0.

     y=ax+b

Puesto que en el ejemplo que nos ocupa, la variable x es el tiempo transcurrido, su modificador no es otro que la Frecuencia, y esto es precisamente lo que ppalou ha considerado variable con su Delay.
Tal y como yo lo veo, debería funcionar correctamente.

Aunque tengo una duda, delay_us(3.90625), ¿esto funciona con decimales?

Desconectado pocher

  • Moderador Local
  • DsPIC30
  • *****
  • Mensajes: 2569
RE: Generador Funciones
« Respuesta #18 en: 13 de Enero de 2005, 00:23:00 »
Lo mismo el que está zumbao soy yo, cosa casi segura.

Con la tabla de ppalou siempre se obtienen los mismos valores de y (voltajes)(0,8,16,...) y luego para las x las agranda o las acorta dependiendo de T/64, pero para cualquier valor de T, según la tabla de ppalou, siempre  los correspondientes valores de y siempre van a ser los mismos con lo que la pendientes seran diferentes pero incorrectas.

Para un valor de T los valores de x y de y han de ser diferentes que para otro valor de T (los valores de y no pueden ser constantes para valores diferentes de T).

Está jodidillo de entender, yo creo que es así.

En el delay_us(3.90625) está claro que no se pueden poner decimales dentro, tendría que aproximar.


Desconectado ppalou

  • PIC10
  • *
  • Mensajes: 36
RE: Generador Funciones
« Respuesta #19 en: 13 de Enero de 2005, 02:05:00 »
La gráfica que ha dibujado nocturno66 seria el funcionamiento ideal de mi generador de funciones, a partir de unos valores de amplitud fijos voy variando la frecuencia, la cual debo ser capaz de aumentar/disminuir en tiempo de ejecución.

Lo del delay está claro que lo decia a modo teórico, lo voy a hacer aproximando

Esta tarde probaré en la PIC a ver que tal funciona esto, ya os contaré, gracias

Desconectado ppalou

  • PIC10
  • *
  • Mensajes: 36
RE: Generador Funciones
« Respuesta #20 en: 14 de Enero de 2005, 14:21:00 »
Me ha funcionado bien!!!!!!!!!!!! Me dibuja correctamente la onda triangular, lo que no me acaba de funcionar es el tema de cambiar la frecuencia en tiempo de ejecución, si aumento en 1 us mas o menos deberia disminuir en 1Khz la frecuencia y viceversa pero no se pq no hace caso, se queda siempre igual la frecuencia.

Ahora para seguir con esto, la tabla la he tenido que hacer "solo" de 64 valores pq la pic no tenia más memoria, se pueden guardar los valores de la tabla en una memoria externa y cargarlos a la PIC en tiempo de ejecución, es posible?

Gracias

Desconectado pachopic

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 209
RE: Generador Funciones
« Respuesta #21 en: 17 de Enero de 2005, 21:25:00 »
HOLA :

Mira este link:
http://www.angelfire.com/electronic/jagp/sem4/proy3comp3.html

el codigo esta en C++ y usan un DAC0808, pero con algunas modificaciones podria usarse en ccs, Para un pic , incluso en VB....Sonrisa GiganteSonrisa GiganteSonrisa GiganteSonrisa Gigante

SUERTE...