Bonjour,
J'ai réalisé une base de données qui enregistre des temperatures et en fonction de celle-ci, commande une résistance électrique via un relais statique afin d'arriver à une température fixée.
Problème: je voudrais réalise une régulation PID ( Proportionnel, intégral, dérivé) et je bloque.
J'ai trouvé ce code en C mais qui pourrait me dire à quoi correspond le Ch_i
Code :
Suivant la discussion, ce serait une variable mais alors, à quoi correspond t elle au temps 0??????
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Calcul du régulateur PID while(20ms) { th_value = read_therm() ; // Lecture de la température old_ch_p = ch_p ; // Mémorisation de l'ancienne Proportionnelle ch_p = consigne - th_value ; // Calcul de la Proportionnelle ch_i += ch_p ; // Calcul de l'Intégrale ch_d = ch_p - old_ch_p ; // Calcul de la Dérivée ch_pid = ch_p*KP + ch_i*KI + ch_d*KD ; // Régulateur à PID ch_pwm = (ch_pid*PWM_CYCLE)/1000 ; // Calcul de la PWM timer_chauffe(ch_pwm) ; // PWM appliqué au transistor }
Quelqu'un peut il m'aider ou me donner des tuyaux sur une régulation déjà écrite en VB
j'ai egalement posté ce sujet sur le forum VBA Access.
Merci
Eric
Partager