DISCRETO
FUNCIN DE TRANSFERENCIA DEL MOTOR DC
OBJETIVOS:
Disear e implementar un sistema de control de velocidad de un
motor de DC.
MATERIALES:
INT0
+88.8
+12V
+12V
L293D
Driver Motor
16
IN1
2
7
1
EN2
IN3
IN4
VSS
VS OUT1
OUT2
U2
3
6
PULSOS
+88.8
9
10
15
IN1
IN2
EN1
GND
OUT3
GND OUT4
11
14
L293D
Encoder
El IC L293D permite
acoplar la salida de un
microcontrolador a un
motor, adems este
posee
su
propia
alimentacin para el
motor.
Indispensable
ya que sin este, podra
daarse
el
microcontrolador.
INTERFAZ ARDUINO
PD4/T0/XCK
~ PD3/INT1
PD2/INT0
TX PD1/TXD
RX PD0/RXD
DUINO1
ARDUINO UNO R3
DIGITAL (~PWM)
1121
ATMEGA328P-PU
microcontrolandos.blogspot.com
PC0/ADC0
PC1/ADC1
PC2/ADC2
PC3/ADC3
PC4/ADC4/SDA
PC5/ADC5/SCL
Generador de %Duty
Para el PWM PIN9
ANALOG IN
RESET
+5V
50%
A0
A1
A2
A3
A4
A5
RV1
ANALOG A1
10k
Arduino ha sido
7
6
5
4
3
2
1
0
PD7/AIN1
~ PD6/AIN0
PD5/T1
~
PB5/SCK
PB4/MISO
~PB3/MOSI/OC2A
~ PB2/SS/OC1B
~ PB1/OC1A
PB0/ICP1/CLKO
AREF
13
12
11
10
9
8
IN1
utilizado como
interfaz
para
conectar
nuestro circuito
a MATLAB, y ver
por medio de l
la respuesta del
sistema.
Esto
nos permite ver
la
entrada
directamente.
Arduino
trabaja
a
f=500Hz.
PIN
A0:
potencimetro
PIN9: salida del PWM
R1
816
U1
9
PULSOS
TACHO+ V+
D1
11
TACHO-
OPINOPIN+
1N4148
2
R4
9.79k
C2
CC
C
E
GND
12
FLT
Tacmetro
Convertidor Frecuencia->Voltaje
ANALOG A1
8
5
10
4
3
R3
R2
LM2917
10nF
19.68k
9.93k
C1
1uF
RV1
74%
+10.46V
9.14k
+88.8
mV
CONVERSOR FRECUENCIA/VOLTAJE
VOUT = 0.003 * FP
FP
VOUT
2
CONVERSIONES
a
F RPM
RPM = (FP
pulsos 1 revolucin
60 seg
)*(
)*(
)
seg
100 pulsos
1 min
RPM = (FP )*
RPM = (
60 revoluciones
100
min
VOUT
60 revoluciones
)*
0.003 100
min
W RPM
RPM = (w
rad 1 revolucin
60 seg
)*(
)*(
)
seg
2 rad
1 min
RPM = w * (
60 revoluciones
)
2
min
(s)
Ki
=
VIN (s) (L a s+R a )(Js+B)+K i K b
De 2.b)
RPM(s)
(60 2)*K i
=
VIN (s) (L a s+R a )(Js+B)+K i K b
ACOMODACIONES
VOUT (s)
VOUT (s) VOUT (s) RPM(s)
RPM(s) VIN (s)
=
*
=
VOUT (s)
VIN (s) RPM(s) VIN (s)
VIN (s)
RPM(s)
De 1.a)
V (s)
RPM(s)
= 200* OUT
VIN (s)
VIN (s)
CODIGO ARDUINO
void setup() {
pinMode(pulsoL293D,OUTPUT); // Establecemos el pin9 como salida.
}
void loop() {
// Leemos el valor del sensor y lo almacenamos:
valorPot=analogRead(pinAnalog0);
// Arduino=500Hz // Establecemos el PWM
//analogWrite(255)=100%duty
//analogWrite(127)=050%duty
//Acondicionamos al #de bits dividiendo entre 4
analogWrite(pulsoL293D,valorPot/4);
valorRPM=analogRead(pinAnalog1);
}
CODIGO MATLAB
clc; close all; clear all;
%arduino('com10').analogRead(0)
a=arduino('COM10')
tic;
i=0;
while toc<10
i=i+1;
time(i)=toc;
figure(1);
%Leemos el analogico A0 'Potenciometro'
Vin(i)=a.analogRead(0);
plot(time,(Vin*11.65)/1024,'r');
%Vin(12V) vs tiempo(seg)
hold on
grid
%Leemos el analogico A1 'Tacmetro'
Vout(i)=a.analogRead(1);
plot(time,(Vout*4.58)/1024,'b')
%Vin(4.58V) vs tiempo(seg)
title('Voltaje vs. tiempo');
end
figure(2);
RPM=(((Vout*4.58)/1024)*200);
plot(((Vout*4.58)/1024),RPM,'b') %Vout vs Velocidad RMP
title('Relacion Velocidad-Tension');
xlabel('Tension(V)'); ylabel('Velocidad (RPM)');
grid
Para
hallar
la
relacin
fue
Vout=freucenciaValimentacionRC
Se hizo un proceso inverso para as calcular la frecuencia aparente que
cumpla dicha ecuacin:
Teniendo as:
R
28820
C
0.00000
001
Valimenta
cion
10.46
Frecuencia
aparente
Vout real
477.0163061
1.438
531.4187221
1.602
550.658601
1.66
587.1480263
1.77
427.9214429
1.29
Vout vs frecuencia
2
1.5
f(x) = 0x
0.5
0
400 420 440 460 480 500 520 540 560 580 600
frecuencia de entrada: f
RPM=
Vout (60)
( factor de conversion)( pulsos/revol)
RPM=
Vout( 60)
( 0.003)(100)
Luego se guardaron todos los valores obtenidos por distintas pruebas, en las
cuales se consideraba las condiciones iniciales cero y luego se cerraba el
circuito para la lectura de los datos. Tomando en consideracin un total de
500 datos.
Se utiliz el siguiente cdigo para mandar los valores a una tabla de Excel:
xlswrite('Matlab.xlsx',Vin,'Hoja1','A1')
xlswrite('Matlab.xlsx',Vout,'Hoja1','A2')
RPM vs Vin
350
300
250
200
RPM(velocidad angular)
150
100
50
0
10
12
Vin(Entrada al motor)
Tiempo de ascenso(s):
2.17104
Tiempo de Establecimiento(s):
3.86104
Tiempo de ascenso(s):
6.88106
Tiempo de Establecimiento(s):
1.2310
OBSERVACIONES Y CONCLUSIONES:
Para obtener la funcin de transferencia fue necesario mezclar parte
terica y experimental. Adems el uso del IDENT fue particularmente
indispensable.
Se pudo hallar la relacin de frecuencia/Voltaje del Tacmetro gracias
a un proceso inverso de medicin, en el que se halla la frecuencia
aparente a travs de la formula general del tacmetro y luego se
corroboro experimentalmente que cumpla.
En la grfica de la funcin de transferencia podemos ver que la
respuesta del sistema no presenta amortiguamientos.
El tiempo de establecimiento es considerablemente pequeo y
adems en la grfica del sistema en lazo cerrado este tiempo llega a
ser an ms pequeo.