Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2013
Abstract In this paper, a fractional order PID controller is investigated for a position
servomechanism control system considering actuator saturation and the shaft torsional flexi-
bility. For actually implementation, we introduced a modified approximation method to realize
the designed fractional order PID controller. Numerous simulation comparisons presented in
this paper indicate that, the fractional order PID controller, if properly designed and
implemented, will outperform the conventional integer order PID controller.
1. Introducción Dónde:
El PID, es sus distintas versiones constituye la solución más
u(t)-variable de control, generalmente posición de una válvula.
aceptada en los problemas de control en la industria. Se
u(0) es la posición inicial.
calcula que el 95% de controladores industriales analógicos o
digitales, constituyen el algoritmo del PID. Kp, Ti y Td-Ganancia, tiempo integral y tiempo derivativo.
Ecuación 1.1
2. Controlador PID manera que el modo integral es el que garantiza el nivel de la
señal de control, pudiendo considerarse los modos P y D como
desviaciones de este nivel. Por otra parte, el cálculo separado
del modo integral, permite chequear en cada periodo que su
valor este dentro del rango de control, evitándose los
problemas asociados a la saturación del modo integral
(integral wind up).
void main ()
{
setup_timer_1( T1_INTERNAL | T1_DIV_BY_1 );
set_timer1(15536);//45536
setup_adc_ports(RA0_RA1_RA3_ANALOG );
setup_adc(ADC_CLOCK_INTERNAL );
setup_timer_2(T2_DIV_BY_4,249,1);
setup_ccp1(CCP_PWM);
set_pwm1_duty(0); 5. Planta en TF.
set_adc_channel(0);
delay_ms(10);
lcd_init(); ( )
enable_interrupts(INT_TIMER1);
enable_interrupts(INT_RDA);
enable_interrupts(GLOBAL);
6. Consideraciones de Potencia y modelado
while (true) Si, bien el sistema se dedujo de la ayuda de MATLAB, es
{ prudente analizar físicamente en que se ve afectado y
set_pwm1_duty(dc_set); como en teoría se desarrollara la planta, mediante
} transferencia de calor y correlaciones de Potencia
} eléctrica con el calor suministrado por el mismo.
%Tiempo de muestreo
temp_muest=0.5;
%Setpoint (25°C-100°C)
setpoint=input('Setpoint °C: ');
while(
true) ADC=cIO.analogRead(1);
%Valor de temperatura, lectura ADC y Temperatura=(ADC*500/1024)
transformación
%temperatura=((6*10^(-6))*temp1)- 8. Resultados
(0.0033*(temp1^2))+(0.7745*temp1)+20.66;
Los resultados obtenidos fueron muy satisfactorios,
considerando la poca complejidad de la planta y alta eficiencia
%ecuación del error
Error=setpoint-Temperatura que presenta los tiempos de disparo del PWM que arroja el
uC, en nuestro caso particular ArduinoONE’
%Ecuaciones del control
El tiempo de establecimiento es considerablemente alto,
temperatura=0.5*(Error+errorin)*temp_muest tomando en cuenta que las plantas de temperatura cuentan con
+tempin; un principio de conducción, y el mismo se realiza en nuestro
caso a través del aire, por lo que el calor transferido tendrá un
A=kp+0.5*ki*temp_muest+(kd/temp_muest); tiempo prudente de transferencia y esto hace que el tiempo de
B=0.5*ki*temp_muest-
establecimiento de por si será algo prolongado.
(kd/temp_muest);
C=ki;
9. Conclusiones
control=A*Error+B*errorin+C*tempin; Se determinó un control bastante aceptable, considerando el
PWM=ceil(control*2.53); sistema a controlar y la simplicidad del mismo.
pause(1)
end