Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CONTROL DIGITAL
INTEGRANTES:
Guevara Roberto
Pinto Katherine
SÉPTIMO “A”
02 / Marzo / 2015
Latacunga - Ecuador
CONTROL DIGITAL
TEMA:
OBJETIVOS:
OBJETIVO GENERAL:
OBJETIVO ESPECIFÍCOS:
INTRODUCCIÓN:
MATERIALES:
Computador
Arduinos UNO
Planta
Circuito de Cruce por Cero
LDR
Focos de AC
Luxómetro
Software de Matlab
Software de Arduino
2
CONTROL DIGITAL
MARCO TEÓRICO:
CONTROLADOR PID
El objetivo del control es medir el valor de la variable controlada del sistema para
aplicar correcciones a través de la variable controlada del sistema para aplicar
correcciones a través de la variable manipulada para obtener un valor deseado.
3
CONTROL DIGITAL
LDR
Figura 3. LDR
4
CONTROL DIGITAL
5
CONTROL DIGITAL
Sintonizar un controlador PID significa establecer el valor que deben tener los
parámetros de Ganancia (Banda Proporcional), Tiempo Integral (Reset) y
Tiempo derivativo (Rate), para que el sistema responda en una forma adecuada.
La primera etapa de todo procedimiento de sintonización consiste en obtener la
información estática y dinámica del lazo. Existen diversos métodos para ajustar
los parámetros de controladores PID, pero todos caen dentro de dos tipos:
6
CONTROL DIGITAL
nota Kcu y el período de la oscilación se llama “Período Último” u. Los valores
recomendados de sintonización son:
Este método, como el anterior, evalúa los parámetros del controlador a partir de
la Ganancia Última Kcu y el Período Último” u. Propone ajustes más relajados
que el de Ziegler y Nichols y se aplica fundamentalmente a plantas que poseen
un integrador. Los valores recomendados de sintonización son:
DESARROLLO:
• Largo: 33cm.
• Ancho: 30cm
• Alto: 24cm.
7
CONTROL DIGITAL
2. Adquirir los datos del de la planta de luminosidad, pero sin ningún tipo de
control y en el entorno en el cual va a permanecer o se va probar, para
adquirir los datos se debe realizar la configuración de Arduino y Matlab.
CONFIGURACIÓN DE ARDUINO
En primer lugar se debe preparar el Arduino. Conectar la LDR entre los pines de
+5V y Gnd (neutro) con una resistencia de 1 k ohm, luego conectar a la entrada
analógica A0 del Arduino, de esta manera:
PROGRAMACÓN EN MATLAB
Una vez configurado el Arduino, los datos se enviarán por la propia conexión
USB, mediante el puerto serial. En este caso, en el entorno Windows, el puerto
será el COM8. El primer paso será crear un objeto serial en Matlab y abrirlo para
empezar a leer.
PROGRAMACIÓN DE MATLAB
%INCREMENTAR EL CONTADOR
i=i+1;
k=k+1;
end
9
CONTROL DIGITAL
Una vez con los datos de entrada y salida libres de ruido se procede a
seleccionar el modelo matemático que represente la dinámica de la planta.
10
CONTROL DIGITAL
𝟕. 𝟕𝟒
𝑮(𝒔) =
𝒔 + 𝟕. 𝟎𝟕
11
CONTROL DIGITAL
U2
7805
C1
3 1
VO VI
GND
1000u
2
R1 D3 D1 TR1
10k 1N4007
U1 1N4007
6 B
5 C A 1
R2
10k D2
RV1
1k 4 2
E K
4N25 1N4007
TRAN-2P3S
SIM1
AREF
13
D4
R3
ARDUINO
RESET 12
L1
~11
470 U3 R5 120V
5V ~10 LED-GREEN 1 6 C2
~9 0.01u
220
SIMULINO
POWER
GND 8
U4
D5
ATMEGA328P
R4 2 4
DIGITAL (PWM~)
7
~6
MOC3021 R6
ATMEL
ANALOG IN
A0 ~5 1k
470
A1 4
A2 ~3 TRIAC
A3 2 DIAC
A4 TX > 1
A5 RX < 0
www.arduino.cc
blogembarcado.blogspot.com
SIMULINO UNO
MATERIALES:
2 Resistencias 10k
2 Resistencias 1k
2 Resistencias de 470 Ohms
1 Led
1 Regulador de Voltaje 7805
1 Moc 3011
1 Fototransistor 4N25
1 Diac
1 Triac a 400 V.
3 Diodos 1N4007
Transformador de 120V a 24V
1 Capacitor Electrolítico 100uF
1 Capacitor Cerámico 0.01uF
#define triacPulse 5
#define aconLed 12
int u;
void setup() {
pinMode(2, INPUT);
digitalWrite(2, HIGH);
pinMode(triacPulse, OUTPUT);
pinMode(aconLed, OUTPUT);
digitalWrite(aconLed, LOW);
12
CONTROL DIGITAL
Serial.begin(9600);
}
void loop() {
u=(analogRead(0) * 6) + 1000;
attachInterrupt(0, acon, FALLING);
digitalWrite(aconLed, HIGH);
Serial.print(analogRead(0));
Serial.print(" ");
Serial.println(u);
}
void acon()
{
delayMicroseconds(u);
digitalWrite(triacPulse, HIGH);
delayMicroseconds(200);
digitalWrite(triacPulse, LOW);
#define triacPulse 5
int lectura_luz(){
luz= analogRead(sensorPin);
//luz = map(luz, 0, 1023, 0,100);
return (luz);
}
void setup() {
// initialize serial:
Serial.begin(9600);
pinMode(triacPulse, OUTPUT);
}
void loop() {
if(Serial.available()>0)
{ a=Serial.read();
13
CONTROL DIGITAL
switch(a)
{ case 'd':
pv=lectura_luz();
Serial.println(pv);
//delay(1);
break;
case 't':
control=palabra2;
break;
default: palabra=palabra;
palabra2=palabra;
analogWrite(triacPulse, cv);
delay(5);
break; }
}
else
{
cv= control.toInt();
cv = map(cv, 0, 100, 255, 0);
palabra2="";
palabra="";
}
}
14
CONTROL DIGITAL
15
CONTROL DIGITAL
16
CONTROL DIGITAL
𝑲𝒑 = 𝟎. 𝟔 𝑲𝒖
𝑷𝒖
𝑻𝒊 =
𝟐
𝑷𝒖
𝑻𝒅 =
𝟖
Dónde:
1 𝑚𝑖𝑛
1.359 𝑠𝑒𝑔 ∗ = 0.018913333 𝑠𝑒𝑔
60 𝑠𝑒𝑔
𝑷𝒖 = 𝟎. 𝟎𝟏𝟗𝟐
𝑲𝒖 = 𝟎. 𝟑
𝑲𝒑 = 0.6 ∗ (0.3) = 𝟏. 𝟖
0.0192 𝑠𝑒𝑔
𝑻𝒊 = = 𝟎. 𝟎𝟎𝟗𝟔𝟎𝟎 𝒔𝒆𝒈
2
0.0192 𝑠𝑒𝑔
𝑻𝒅 = = 𝟎. 𝟎𝟎𝟐𝟒𝟎𝟎 𝒔𝒆𝒈
8
ANÁLISIS DE RESULTADOS:
17
CONTROL DIGITAL
CONCLUSIONES:
RECOMENDACIONES:
BIBLIOGRAFÍA:
18
CONTROL DIGITAL
ANEXOS:
19