Anda di halaman 1dari 25

111Equation MINISTRIO DA EDUCAO

SECRETARIA DE EDUCAO MDIA E TECNOLGICA


Chapter 1 INSTITUTO FEDERAL DE EDUCAO, CINCIA E TECNOLOGIA DO AMAZONAS
Section 1 PR-REITORIA DE PESQUISA, PS GRADUAO E INOVAO
CAMPUS MANAUS DISTRITO INDUSTRIAL
COORDENAO DE PESQUISA E INOVAO TECNOLOGICA

CONTROLE DISCRETO

CONTROLE DE MOTOR A PARTIR DE SINAL DE REFERNCIA DE UM JOYSTICK

MANAUS, 2016
MINISTRIO DA EDUCAO
SECRETARIA DE EDUCAO MDIA E TECNOLGICA
INSTITUTO FEDERAL DE EDUCAO, CINCIA E TECNOLOGIA DO AMAZONAS
PR-REITORIA DE PESQUISA, PS GRADUAO E INOVAO
CAMPUS MANAUS DISTRITO INDUSTRIAL
COORDENAO DE PESQUISA E INOVAO TECNOLOGICA

ALINE SOUSA DA SILVA


LVARO DE AZEVEDO PERES NETO
CAIO CESAR DE ARAJO GOMES
CSAR AUGUSTO MOTA DA SILDA
DAMON DIAS PINTO
FABIO MONTE BRAZ
GABRIEL WENDEL DA SILVA SANTOS
LEONARDO FERREIRA PACHECO MALTA MARTINS
THAIS CRISTINA BARBOSA BASTOS

CONTROLE DISCRETO

CONTROLE DE MOTOR A PARTIR DE SINAL DE REFERNCIA DE UM JOYSTICK

Relatrio tcnico apresentado para obteno de


nota parcial na rea de conhecimento Controle
Discreto do curso de Engenharia de Controle e
Automao do Instituto Federal de Educao,
Cincia e Tecnologia do Amazonas.

Professor Dr. Flvio Jos Aguiar Soares

MANAUS, 2016
SUMRIO
1. INTRODUO...4
2. FUNDAMENTAO TERICA.......................................................................4
3. OBJETIVO GERAL..........................................................................................7
4. MATERIAIS NECESSRIOS..........................................................................8
5. PROCEDIMENTOS EXPERIMENTAIS...........................................................8
6. RESULTADOS E DISCUSSES..................................................................10
7. CONCLUSO................................................................................................22
8. REFERNCIAS BIBLIOGRFICAS..............................................................23
1. INTRODUO

O presente relatrio apresenta o projeto e desenvolvimento de um controle de


velocidade e posio de um motor do tipo resolver baseado em implementao de
controle discreto em MATLAB, a aquisio de sinais a partir de um Data Aquisition
(DAQ) e referenciado pela variao da resistncia de um potencimetro contido em
um joystick.

Foi projetado um controlador PID discreto a partir do mtodo de Ziegler-


Nichols, com o levantamento da curva de resposta do motor, que busca obter uma
resposta pr-especificada para um sistema em malha fechada. Depois de projetado
o controlador, utilizou-se o MATLAB para a implementao de um algoritmo que
representasse o mesmo.

Paralela implementao do algoritmo de controle, foi feita a elaborao de


um circuito eletrnico para intermediar a comunicao entre o DAQ, o motor e o
joystick, de tal forma que foram utilizados transistores, rels e entre outros
componentes para determinar o sentido de rotao do motor, alm de sua variao
de velocidade, onde a variao do joystick est diretamente ligada variao de
tenso expressa no motor.
No desenvolvimento, tal circuito eletrnico foi testado virtualmente via
plataforma de simulao Proteus-ISIS, para uma melhor visualizao de como o
sistema de controle responderia aos impulsos de tenso que lhe eram aplicados.
Para aquisio de sinais do DAQ, foram utilizadas funes especficas do
software MATLAB. Tais funes eram de alto nvel de mquina, o que acelerou o
desenvolvimento do sistema. Desta forma, houve uma maior interao prtica na
execuo do projeto.

2. FUNDAMENTAO TERICA
A Figura 1 mostra o sistema de controle PID de uma planta no domnio de
tempo contnuo. Uma vez que possvel a obteno do modelo matemtico da
planta, pressupe-se que possvel a aplicao de diversas tcnicas de projeto na
determinao dos paramtros do controlador que vo impor especificaes do
regime transitrio e do regime permanente do sistema em malha fechada. Todavia,
se a planta to complicada que seu modelo matemtico no pode ser obtido

4
facilmente, ento uma aproximao analtica para a designao de um controlador
PID discreto no possvel.
Logo, temos que recorrer a aproximaes experimentais para a afinao de
controladores PID.

Figura 1- Controle PID de uma planta


O processo de selecionar parmetros de controlador que garatam uma dada
especificao de desempenho conhecida como sintonia do controlador. Ziegler e
Nichols sugeriram regras para a sintonia de controladores PID (pretendendo ajustar

K p ,T i ,T d
os parmetros ) baseadas na resposta experimental ao degrau baseado

Kp
no valor de que resulta em estabilidade marginal, quando s uma ao

proporcional de controle usada.


As regras de Ziegler-Nichols, as quais so brevemente mostradas a seguir,
so teis quando os modelos matemticos das plantas so desconhecidos, porm
tambm podem ser usados em modelos matemticos conhecidos. Tais regras

K p ,T d Ti
sugestionam um conjunto de valores de e que dar uma operao

estvel do sistema. Contudo, o sistema resultante pode exibir um mximo


sobressinal grande, devido resposta do degrau, o que no aceitvel. Em tal
caso, ns precisamos de uma srie de sintonias at que um resultado aceitvel seja
obtido. Na realidade, as regras de Ziegler-Nichols fornecem estimativas dos valores
5
de parmetros e proporcionam um ponto de partida na sintonia fina, e no os valores

K p ,T i Td
definitivos de e logo na primeira tentativa.

H dois mtodos chamados regras gerais de sintonia de Ziegler- Nichols,


todavia apenas o mtodo utilizado no projeto ser explanado.
O mtodo utilizado obtm experimentalmente a resposta da planta em
relao a uma entrada degrau unitria, como mostrado na Figura 2. Se
a planta no possui nem polos complexos conjugados dominantes,
ento essa curva de resposta ao degrau unitrio pode ter aspecto de
um S, como mostrado na Figura 3. Esse mtodo se aplica curva de
resposta ao degrau unitrio de entrada tiver a forma de um S. Essa
curva de resposta ao degrau pode ser gerada experimentalmente ou a
partir de uma simulao dinmica da planta.

Figura 2- Resposta ao degrau unitrio de uma planta.

Figura 3- Curva de resposta em forma de S.

6
A curva com formato em S pode ser caracterizada atravs de duas

constantes, o atraso L e a constante de tempo T. O atraso e a constante de

tempo so determinados desenhando-se uma linha tangente com o eixo dos tempos

e linha c(t)= K, de acordo com a Figura 3. A funo de transferncia P( s) pode

ser aproximada por um sistema de primeira ordem com um atraso de transporte,


como mostrado a seguir:

K eLs
P(s)= ( Eq.1)
Ts+1

K p ,T i e T d
Ziegler e Nichols sugeriram a fixao dos valores de de acordo

com a frmula mostrada na tabela 1.


O controlador PID pode ser sintonizado pelas equaes abaixo:

Tabela 1- Regras de sintonia de Ziegler-Nichols baseada na resposta ao degrau da


planta.
3. OBJETIVO GERAL
Realizar um projeto de um controlador discreto para o controle de rotao e
velocidade de um motor DC, a partir da aquisio de sinais dos potnciometros de
um joystick, utilizando o DAQ.

4. MATERIAIS NECESSRIOS:
Circuito Integrado (CI) LM 324;
2 Transitors BD 135;
2 Resistores de 10k;
1 Resistor de 1k;

7
2 Diodos;
2 Rels com um contato comutador;
1 fonte de tenso;
1 multmetro;
1 gerador de funo;
1 DAQ;
1 motor DC.
5. PROCEDIMENTOS EXPERIMENTAIS
5.1 Aquisio de sinais:
A aquisio de sinais foi feita a partir do DAQ, modelo NI USB- 6008, onde os
sinais aquisitados pelo mesmo eram os sinais de resposta do resolver e do joystick.
No que se refere aquisio de dados, Todos os sinais aquisitados devem obedecer
ao teorema de Nyquist para que se possa reconstruir o sinal pelo MATLAB de forma
fiel.

Figura-4 Dispositivo de aquisio de dados (DAQ)

8
Figura 5 - Joystick
Cdigo em MATLAB:
%Configuraes de Aquisio de dados do DAQ

device = daq.createSession('ni');
[ch,idx] = addAnalogInputChannel(device,'dev1', [0 1], 'Voltage')
device.DurationInSeconds = 0.05 % Tempo de durao da captura dos sinais de
entrada
device.NumberOfScans = 100 % numero de amostras

Primeiramente, iniciou-se uma seo para a configurao das portas de


entrada analgica do DAQ. Configurou-se os canais AI_0 e AI_1 como entradas
analgicas, onde AI_0 era referente entrada do setpoint e AI_1 resposta do
motor pelo resolver.

5.2 Envio de Sinais


Para que as sadas de controle fossem executadas fisicamente atravs de
uma tenso de sada, que seria a alimentao do motor, havia a necessidade de
transformar a ao de controle em algo mensurvel. Utilizou-se, ento, as sadas
analgicas para a alimentao do motor e inverso de sentido de rotao do motor.
Cdigo em MATLAB:
%Configuraes de Sada Analgica do DAQ
s1 = daq.createSession('ni');
ch1=addAnalogOutputChannel(s1,'dev1', 1, 'Voltage')
Sentido_Rot= daq.createSession('ni');
ch2=addAnalogOutputChannel(Sentido_Rot,'dev1', 0, 'Voltage')

Configurou-se no dispositivo DAQ duas sadas analgicas, AO_0 e AO_1,


onde AO_0 referente ao sentido de rotao e AO_1 a sada do sinal de controle.

5.3 Parametrizao e funo de transferncia do motor:


A seguir, faz-se a modelagem e parametrizao do motor, para verificar a
resposta do motor via MATLAB, em malha aberta em funo de uma entrada degrau:
K
( s) JL
=
V ( s) BR+ K 2 (Eq.3)
s 2+ ( JR +BL
JL ) (
s+
JL )
Neste projeto, foram levantados os parmetros do motor Singer, modelo NP-
1600-011, que constam na tabela 2.
Momento de inrcia J = 0.00343 Kgm/s
Atrito do sistema mecnico B=0,00102 Nms

9
Fora eletromotriz K=2,15 Nm/A
Resistncia eltrica R= 68,5 ohm
Indutncia L=0,0045H
Tenso de entrada Tenso de alimentao
ngulo de sada Posio angular do eixo em radianos
Tabela 2- Parmetros do motor

Resposta do motor em malha aberta para uma entrada degrau:


R = 68.5;
L = 0.0045;
Kt = 2.15;
J = 0.00343;
b = 0.00102;
num = Kt;
den = [(J*L) (J*R)+(L*b) (R*b)+(Kt^2)];
motor = tf(num,den)
figure(1)
step(motor,1);
xlabel('tempo (s)');
ylabel('velocidade (rad/s)');
title('Resposta ao degrau para MA');

Funo de transferncia gerada pelo MATLAB no domnio complexo:


2,15
P ( s )= 5
Eq . 4
1,54310 s +0,235 s +4,692

Resposta ao degrau para MA


0.5

0.45

0.4

0.35
velocidade (rad/s)

0.3

0.25

0.2

0.15

0.1

0.05

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
tempo (s) (seconds)

Figura 6 - Resposta ao degrau da FT complexa

6. RESULTADOS E DISCUSSES
10
Nesse tpico so apresentados os resultados obtidos quanto ao projeto do
controlador discreto, iniciando pela discretizao da funo de transferncia do
motor, passando pela anlise dos mtodos mais favorveis para determinar o melhor
controlador afim de atender aos parmetros desejados e finalizando com a
implementao dos algoritmos montagem dos circuitos necessrios.
6.1 Discretizao da funo de transferncia do motor em malha aberta:
Foi eleborado o algoritmo a seguir para a discretizao da funo de
transferncia do motor:
R = 68.5;
L = 0.0045;
Kt = 2.15;
J = 0.00343;
b = 0.00102;
num = Kt;
den = [(J*L) (J*R)+(L*b) (R*b)+(Kt^2)];
motor = tf(num,den)
Ts = 0.05;
motor_d= c2d(motor,Ts, 'zoh' )
step(motor_d)

Funo de transferncia gerada pelo MATLAB no domnio discreto:

0.2894 z +0.000222
P( z)= Eq .5
z 20.3679 z

Step Response
0.5

0.45

0.4

0.35

0.3
Amplitude

0.25

0.2

0.15

0.1

0.05

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Time (seconds)

11
Figura 7 - Resposta ao degrau discreta

6.2 Discretizao da funo de transferncia do motor em malha


fechada:
Foi eleborado o algoritmo a seguir para a discretizao da funo de
transferncia do motor:
0,2894 z +0,000222
P ( z )= 2
z 0,07854 z +0,000222

Cdigo em MATLAB:
R = 68.5;
L = 0.0045;
Kt = 2.15;
J = 0.00343;
b = 0.00102;
num = Kt;
den = [(J*L) (J*R)+(L*b) (R*b)+(Kt^2)];
motor = tf(num,den)
figure(1)
step(motor,1);
xlabel('tempo (s)');
ylabel('velocidade (rad/s)');
title('Resposta ao degrau para MA');
Ts = 0.05;
motor_d= c2d(motor,Ts, 'zoh' )
step(motor_d)
sys_cl = feedback(motor_d,1)
[Y,T] = step(sys_cl,1);
figure(1)
stairs(T,Y);
xlabel('Tempo (s)' )
ylabel('Velocidade (rad/s)' )
title('Resposta ao degrau para MF' )
Resposta ao degrau para MF
0.35

0.3

0.25
Velocidade (rad/s)

0.2

0.15

0.1

0.05

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Tempo (s)

12
Figura 8 - Resposta ao degrau em malha fechada.

6.3 Resposta do motor fsico a um trem de pulsos


No laboratrio, a entrada utilizada foi um trem de pulsos (onda quadrada). A
resposta da implementao mostrada na Figura 10, pgina 13.
Figura 9 - Resposta transiente do motor em Matlab.

Figura 10- Resposta transiente do motor a partir de Osciloscpio.

De acordo com a Figura 6, o sistema aproxima-se de um sistema de 1


ordem, o que nos conduziu a considerar o sistema como se fosse de uma ordem
13
menor, para uma melhor escolha de parmetros a partir dos mtodos de Ziegler-
Nichols.
Utilizando o mtodo de Ziegler- Nichols, deve-se encontrar o parmetros para
a funo de transferncia de atraso de transporte. De acordo com as Figuras 9 e 10,
obtiveram-se as tenses do sistema, de acordo com a equao 4.
Y final Y inicial
K= Eq .6
U final U inicial

Y inicial e Y final
Onde K o ganho da planta , so as tenses de sada do

U final U inicial
sistema proveniente do motor e e so as tenses aplicadas na

entrada do sistema. A variao de Y mostrada na Figura 10, que equivale a 5,35


Volts de amplitude, e a tenso aplicada foi de 6 Volts de amplitude referente ao trem
de pulsos.
5,35
K= =0,445
12

De acordo com o grfico da Figura 10, o tempo de acomodao tem durao


de 500ms, e possvel encontrar a constante de tempo do sistema, onde para
qualquer sistema, determina-se que, a partir de quatro constantes de tempo, o
sistema deve estar em estado permanente.
a =4 Eq .7

3
50010 =4 =0.125 s

Onde a constante de tempo do sistema.

Para a parametrizao dos ganhos do controlador PID por Ziegler- Nichols,

primeiramente levantou-se os ganhos da planta como K, e =L para aplicar-

se diretamente na tabela de sintonia de controladores PID (tabela 1) com funes de

transferncia de 1 ordem com retardo, ressaltando que o ngulo de retardo e

para o levantamento dos ganhos considerou-se igual a 1, para a aplicao do

mtodo de Ziegler-Nichols e =0 para os demais mtodos.

A seguir so apresentados os ganhos conforme a tabela 1.


14
1.2 1,2.0,125
K p= = =0,337
K 0,445.1

T i =2=21=2 s

T d=0,5 =0,51=0,5 s

6.4 Implementao do PID


A lei de controle representada pela seguinte equao, que pode ser
encontrada em diversos livros de controle:
Kp t de ( t )
u ( t ) =K p e ( t )+
Ti 0
e ( t ) dt + K p T d
dt
Eq . 8

A lei de controle discretizada segue abaixo:


1 2
u ( k ) q0 + q1 z +q 2 z
C ( z1 )= = 1
Eq.9
e (k ) 1z

Onde:

q 0=K p 1+
[ T Td
+
2Ti T
Eq . 10
]
q1 =K p 1
[ T 2T d
+
2Ti T
Eq .11
]
KpTd
q 2= Eq . 12
T

Cuja equao de diferenas para implementao fica da seguinte forma:


u ( k )=u ( k1 ) +q 0 e ( k ) +q 1 e ( k1 )+ q2 e ( k 2 ) Eq .12

6.5 Implementao do controlador PID com a planta do motor:

15
Figura 11 - Diagrama de blocos do sistema em malha fechada.
A partir do software MATLAB, foram implementados o controlador PID e a
planta do motor dc em malha fechada, utilizando o cdigo a seguir:
clc
clear all
%
R = 68.5;
L = 0.0045;
Kt = 2.15;
J = 0.00343;
b = 0.00102;
num = Kt;
den = [(J*L) (J*R)+(L*b) (R*b)+(Kt^2)];
motor = tf(num,den)
figure(1)

xlabel('tempo (s)');
ylabel('velocidade (rad/s)');
title('Resposta ao degrau para MA');
Ts = 0.05;
motor_d= c2d(motor,Ts, 'zoh' )

K=0.443; % Constante de ganho do processo


Tao=0.125; % Tempo de acomodao da Resposta
theta=1;% Angulo de retardo
%--------------Clculo de ganhos e tempos ---------------%

kp=(1.2*Tao)/(K*theta)
ti=2*theta
td=0.5*theta
%----------------Clculo dos coeficientes------------%
q0=kp*(1+Ts/(2*ti)+td/Ts)
q1=-kp*(1-Ts/(2*ti)+(2*td)/Ts);
q2=(kp*td)/Ts
U=tf([q0 q1 q2],[1 -1],Ts)
y=feedback(U*motor_d,1)
step(y)

16
Step Response
1

0.9

0.8

0.7

0.6
Amplitude

0.5

0.4

0.3

0.2

0.1
0 10 20 30 40 50 60 70 80 90
Time (seconds)

Figura 12 Resposta em malha fechada do sistema com o PID com ganhos pela tabela de
Ziegler-Nichols

Como visualizado no grfico acima, os ganhos que foram adquiridos atravs


da tabela 1, tornaram a resposta do sistema muito lenta, porm mantivera a
estabilidade do sistema, mostrando a eficincia do mtodo de Ziegler-nichols. O
mtodo referenciado s consegue manter o sistema estvel, o que pode no atender
configuraes de projeto necessrias como tempo de resposta do sistema e outros
fatores como overshoot/undershoot.
O que levou a realizar um novo estudo dos valores dos ganhos do controlador
utilizando outro mtodo de sintonia. O mtodo do lugar das razes foi utilizado para

levantar os ganhos ( kp , ki , kd ) do controlador PID no domnio complexo e

convert-los para ganhos do domnio discreto.


Segue o algoritmo utilizado para sintonia do controlador no domnio complexo.

clc
clear all

R = 68.5;
L = 0.0045;
Kt = 2.15;
J = 0.00343;
b = 0.00102;

N= Kt;
17
D= [(J*L) (J*R)+(L*b) (R*b)+(Kt^2)];
G=tf(N,D)
rlocus(N,D);
sgrid(0.7,100);
kp=3;
N2=N;
D2=conv([1 0], D+[ 0 0 kp*N])
rlocus(N2,D2);
sgrid(0.7,100);
ki=20;
N3=[1 0 0]
D3=conv([1 0], D+[0 0 kp*N])+[0 0 0 ki*N]
rlocus(N3,D3);
sgrid(0.75,6);
kd=0.03;
C=tf([kd kp ki],[1 0])
M=feedback(C*G,1)
step(M)

Step Response
1

0.9

0.8

0.7

0.6
Amplitude

0.5

0.4

0.3

0.2

0.1

0
0 0.2 0.4 0.6 0.8 1 1.2
Time (seconds)

Figura 13 - Resposta da planta com o controlador PID em malha fechada

Foram obtidos os ganhos kp=3 , ki=20 e kd=0.03 onde foram convertidos

atravs das seguintes equaes para encontrar os ganhos no domnio discreto.


kp=kp=3

kpeTs 3e0.05
ti= = =0.1427 s
ki 20

18
Ts 0.05
kde 0.03e
td= = =0.0095 s
kp 3

Com os ganhos do domnio discreto em mos substituiu-se na equao da


funo de transferncia completa do sistema, onde composta pela funo de
transferncia do motor discretizada multiplicada pela funo de transferncia do PID
discretizado em malha fechada. Segue abaixo o algoritmo implementado para obter
a resposta do sistema com os ganhos calculados anteriormente.

Algoritmo:

clc
clear all
%
R = 68.5;
L = 0.0045;
Kt = 2.15;
J = 0.00343;
b = 0.00102;
num = Kt;
den = [(J*L) (J*R)+(L*b) (R*b)+(Kt^2)];
motor = tf(num,den)
figure(1)

Ts = 0.05;
motor_d= c2d(motor,Ts, 'zoh' )

kp=3
ti=0.1427
td=0.0095

%----------------Clculo dos coeficientes------------%


q0=kp*(1+Ts/(2*ti)+td/Ts)
q1=-kp*(1-Ts/(2*ti)+(2*td)/Ts)
q2=(kp*td)/Ts

U=tf([q0 q1 q2],[1 -1],Ts)


y=feedback(U*motor_d,1)
step(y)

19
Step Response
1

0.95

0.9

0.85

0.8
Amplitude

0.75

0.7

0.65

0.6

0.55

0.5
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
Time (seconds)

Figura 14 Resposta do sistema completo mediante aos novos ganhos .

6.6 Algoritmo de Controle


A partir deste ponto, com todos os ganhos determinados anteriormente, foi
feita a implemetao via software da lei de controle, com os respectivos ganhos
estabelecidos.
Basicamente, o trabalho executado para o controle do motor partiu da
aquisio e envio de sinais pelo DAQ, onde foi aquisitado o sinal de referncia do
joystick e do resolver. A partir da, a lei de controle foi implementada no software
MATLAB. Segue o algoritmo implementado.

Algoritmo de controle:

%-------------------------Instituto Federal do Amazonas-----------------%

% Alunos: Aline Souza


% lvaro Azevedo
% Caio Csar
% Csar Augusto
% Damon
% Fbio Monte
% Gabriel Wendel
% Leonardo Ferreira
% Thas Cristina
% Curso: Engenharia de Controle e Automao
% Disciplina: Controle Discreto
% Data: 19/05/16
20
clc
clear all

%----------------Definio de Variveis ------------%

erro=0; % Varavel de erro Atual


erro_1=0; % Varavel de erro em um instante de tempo atrs
erro_2=0; % Varavel de erro em dois instantes de tempo atrs

U=0; % Varavel de controle Atual


U_1=0; % Varavel de controle em um instante de tempo atrs

erro2=0; % Varavel de erro Atual


erro_12=0; % Varavel de erro em um instante de tempo atrs
erro_22=0; % Varavel de erro em dois instantes de tempo atrs

U2=0; % Varavel de controle Atual


U_12=0; % Varavel de controle em um instante de tempo atrs

Kp=3; % ganho proporcional


ti=0.1427; % Tempo de integrao
td=0.0095;% tempo de derivao
T=0.05; % tempo de Amostragem
%----------------Clculo dos coeficientes------------%
q0=kp*(1+T/(2*ti)+td/T);
q1=-kp*(1-T/(2*ti)+(2*td)/T);
q2=(kp*td)/T;

%-----------------------------Controle-----------------------%
while(1)
entradas = startForeground(device);
setpoint=entradas(1,1);
resolver=entradas(1,2);

if (2<=setpoint && setpoint<=2.7)


m='motor parado'
outputSingleScan(s1,0);
outputSingleScan(Sentido_Rot,0);

else if(setpoint>=2.7)
s='Sentido horario'
m='motor funcionando crescente'
%-------Calculo do erro e lei de controle------------%
erro=((setpoint-2.7)- resolver)
%--------------------lei de controle-----------------%
U=(U_1+(q0*erro)+(q1*erro_1)+(q2*erro_2))
%---------Atualizao das Variveis de controle------%
erro_2=erro_1;
erro_1=erro;
U_1=U;

outputSingleScan(Sentido_Rot,5);
if(U>=5)
U=5;
outputSingleScan(s1,U);
end
if(U>=0)
outputSingleScan(s1,U);

21
end
else if(setpoint<=2)
s='Sentido anti-horario'
m='motor funcionando crescente'
%-------Calculo do erro e lei de controle------------%
erro2=1.35-((setpoint-1)+resolver)

%--------------------lei de controle-----------------%
U2=(U_12+(q0*erro2)+(q1*erro_12)+(q2*erro_22));
%---------Atualizao das Variveis de controle------%
erro_22=erro_12;
erro_12=erro2;
U_12=U2;
outputSingleScan(Sentido_Rot,0);
if(U2>=5)
U2=5;
outputSingleScan(s1,U2);
end
if(U2>=0)
outputSingleScan(s1,U2);
end

end
end
end
end
% Protegido

6.7 Driver de acionamento:


Para a finalizao deste projeto foi montado o circuito de acionamento do
motor afim de poder controlar sua velocidade a partir da tenso de referncia
proveniente do joystick e o circuito de reverso de rotao do mesmo.

22
Figura 15 - Circuito de acionamento do motor.
A seguir, so apresentadas algumas imagens do projeto fsico completo, incluindo o circuito
de acionamento e o joystick.

Figura 16 - Circuito montado em laboratrio

Figura 17 - Circuito completo.


23
7. CONCLUSO
Durante todo o desenvolvimento do projeto, houveram algumas impedncias,
principalmente na parte terica quanto ao projeto do controlador discreto.
Inicialmente foi determinada, de forma imprica, os ganhos do controlador. Depois
disso, foi feita a verificao em relao ao mtodo de Ziegler-Nichols, e como j
explicitado anteriormente, no satisfez de forma contundente os parmetros de
projeto.
Ento, foi implementado o mtodo do lugar das razes, com a determinao
do controlador no domnio dos complexos e posteriormente passado para o domnio
discreto. Dessa forma, os resultados em relao aos ganhos do controlador
corresponderam veementemente com a implementao inicial, feita de forma
imprica.
Assim, pde-se perceber que o projeto do controlador foi executado de forma
positiva, com a consequncia verificao de atendimento aos parmetros de projeto,
como rpida resposta, anulamento do overshoot e estabilizao caracterizando erro
zero.
Para trabalhos futuros, seria interessante a adio de mais um motor com o
objetivo de fazer as mesmas implementaes quanto s que foram feitas neste
trabalho, tanto velocidade de giro quanto reverso de giro.
O trabalho proporcionou aos integrantes do grupo a experincia positiva
quanto aquisio de sinais, projeto de controladores, programao em Matlab e
montagem de circuitos eletrnicos.

8. REFERNCIAS BIBLIOGRFICAS
[1] BASLIO, Joo Carlos; MOREIRA, Marcos Vicente. Experimentos para
Estimao dos Parmetros de Corrente Contnua. COBENGE Congresso
Brasileiro de Engenharia, 2001.

[2] OGATA, Katsuhiko. Engenharia de Controle Moderno. Editora Pearson


Prentice Hall. So Paulo, 2003.

[3] PHILLIPS, Charles L., HARBOR Royce D. Sistema de Controle e


Realimentao. Editora Makron Books. So Paulo, 1996

24
[4] OGATA, Katsuhiko. Discrete Time Control Systems. Editora Prentice Hall do
Brasil. Rio de Janeiro, 2005.

[6] http://www.univasf.edu.br/~eduard.montgomery. Acesso em 05/05/2016

25

Anda mungkin juga menyukai