PID con ATmega8 y uso del DAC

hola, quiero desarrollar un programa PID digital usando el ATmega8 para el control de unas valvulas y quisiera ayuda en el tema para la programación. Otro punto es que tambien tengo que usar DAC (envia señal de control desde el micro) y un ADC(para la señal de realimentacion hacia el microcontrolador).

El ATmega 8 cuenta solo con ADC .Por lo tanto, tendre que usar un integrado para el DAC ya q el micro no cuenta con uno. Que integrado me recomiendan? .Teniendo en cuenta que se quiere precision significaria un DAC de 10bits a más.

Gracias , y espero su pronta respuesta.
 
Busca en la pagina del copilador bascom avr, hay un ejemplo de un PID. Pero es para un atmega32 por que el programa es bastante grande.
 
Checa las notas de aplicacion de Atmel, ahi viene un ejemplo de un PID Discreto, el codigo no ocupa ni 1Kb por lo tanto, con el Mega8 debe ser mas que suficiente.
 
eidtech dijo:
Checa las notas de aplicacion de Atmel, ahi viene un ejemplo de un PID Discreto, el codigo no ocupa ni 1Kb por lo tanto, con el Mega8 debe ser mas que suficiente.

que tal amigo, estoy mas o menos en el mismo problema, necesito hacer un PID digital para controlar ya sea posicion de un motor, velocidad, o temperatura de algo, el caso esque no encuentro nada que me de una idea de por donde tengo que comenzar y mucho menos que tiene que hacer el programa que haga para el microcontrolador, estoy pensando usar un atmega8 o 32, y bueno busque en las notas de aplicacion, encontre el documento que mencionas, pero no tiene ni una linea de codigo, solo es un pdf que explica a grandes rasgos que hace un PID, no se si tu me pudieras ayudar o pasarme algun codigo en el que me pueda basar, te lo agradeceria enormemente
 
dkns dijo:
eidtech dijo:
Checa las notas de aplicacion de Atmel, ahi viene un ejemplo de un PID Discreto, el codigo no ocupa ni 1Kb por lo tanto, con el Mega8 debe ser mas que suficiente.

que tal amigo, estoy mas o menos en el mismo problema, necesito hacer un PID digital para controlar ya sea posicion de un motor, velocidad, o temperatura de algo, el caso esque no encuentro nada que me de una idea de por donde tengo que comenzar y mucho menos que tiene que hacer el programa que haga para el microcontrolador, estoy pensando usar un atmega8 o 32, y bueno busque en las notas de aplicacion, encontre el documento que mencionas, pero no tiene ni una linea de codigo, solo es un pdf que explica a grandes rasgos que hace un PID, no se si tu me pudieras ayudar o pasarme algun codigo en el que me pueda basar, te lo agradeceria enormemente

Hay que saber buscar.
Al lado del documento PDF viene el link al código fuente.

Aún así lo anexo al mensaje:
http://www.atmel.com/dyn/resources/prod_documents/AVR221.zip
 
urgente porfavor necesito en lenguaje asember un controlador PID para implementarlo en el Atmega8, debido a que deseo controlar niveles de temperatura. porfas ayudenme urgente. Gracias por su atencion estare a la espera de su respuesta
 
por lo del DAC, puedes sustituirlo por un arreglo R-2R, a mi me funciono muy bien para muestrear una senal en la calse de control digital, por ahora estamos haciendo el control P, printo haremos el PI , PD y PID, te envio el arreglo R-2R, por ahora.
Para hacerla de 10 bits solo escribes los dos bits de ADCH otro puerto y los agregas a la red r-2r. Yo utilize los 8 mas significativos. Lo haces escribiendo (1<<ADLAR); Y PORTB=ADCH;
 

Adjuntos

  • R-2R.JPG
    R-2R.JPG
    31.8 KB · Visitas: 83
Atrás
Arriba