Engenharia Elétrica
Semestre 2023/1 Dúvidas: 📫 Email professor
Este trabalho visa avaliar os conhecimentos adquiridos pelos alunos na disciplina de Controle Automático II, no que tange o projeto de controladores digitais clássicos usando ferramenta geométrica do lugar das raízes (ou Root-Locus).
A turma de estudantes é dividida em equipes de 2 (ou no máximo de 3, neste caso, sob aprovação do professor). Neste semestre em particular, onde 11 estudantes estão matriculados, a turma será dividida da seguinte forma:
A "inscrição" das equipes, principalmente a com 3 componentes, deverá ser feita via e-mail e será usado como critério confirmador, a data e horário do email.
Cada equipe recebe uma única planta (processo), diferente para cada equipe, cada planta acompanhada de seus requisitos de controle. Cada equipe deve então proceder ao projeto e simulação de diferentes controladores -- um documento final (arquivo PDF) deve ser enviado por email ao professor nas últimas 2 semanas do semestre. Neste caso: o dead-line para entrega deste trabalho fica determinado como sendo o dia: 21/06/2023 💥. Lembrando que no dia 28/06/2023 (último dia de aula) está prevista a aplicação de uma prova final individual e presencial.
📣 Cada equipe realiza o projeto dos controladores sobre uma única planta (a sua planta), confirmada pelo professor (via email ou página WEB).
Para cada planta, estão previstos os projetos dos seguintes controladores:
Equação:
Requisitos de Controle | Valores |
---|---|
Amplitude degrau: | 1,0 |
Sobressinal máximo desejado, ou |
20% |
Erro máximo desejado, ou |
10% |
Tempo de assentamento máximo desejado, ou |
2,7 |
Sinal máximo de controle, ou |
2,0 |
Sinal mínimo de controle, ou |
0 |
Equação:
Requisitos de Controle | Valores |
---|---|
Amplitude degrau: | 1,0 |
Sobressinal máximo desejado, ou |
20% |
Erro máximo desejado, ou |
7,5% |
Tempo de assentamento máximo desejado, ou |
1,4 |
Sinal máximo de controle, ou |
2,6 |
Sinal mínimo de controle, ou |
-2,6 |
Equação:
Requisitos de Controle | Valores |
---|---|
Amplitude degrau: | 1,0 |
Sobressinal máximo desejado, ou |
20% |
Erro máximo desejado, ou |
10% |
Tempo de assentamento máximo desejado, ou |
0,9 |
Sinal máximo de controle, ou |
2,5 |
Sinal mínimo de controle, ou |
-2.5 |
Equação:
Requisitos de Controle | Valores |
---|---|
Amplitude degrau: | 1,0 |
Sobressinal máximo desejado, ou |
20% |
Erro máximo desejado, ou |
1,5% |
Tempo de assentamento máximo desejado, ou |
0,3 |
Sinal máximo de controle, ou |
14,0 |
Sinal mínimo de controle, ou |
-14,0 |
Equação:
Requisitos de Controle | Valores |
---|---|
Amplitude degrau: | 1,0 |
Sobressinal máximo desejado, ou |
20% |
Erro máximo desejado, ou |
8% |
Tempo de assentamento máximo desejado, ou |
0,8 |
Sinal máximo de controle, ou |
2,6 |
Sinal mínimo de controle, ou |
-2,6 |
Equação:
Requisitos de Controle | Valores |
---|---|
Amplitude degrau: | 1,0 |
Sobressinal máximo desejado, ou |
20% |
Erro máximo desejado, ou |
10% |
Tempo de assentamento máximo desejado, ou |
0,7 |
Sinal máximo de controle, ou |
1,6 |
Sinal mínimo de controle, ou |
-1,6 |
Equação:
Requisitos de Controle | Valores |
---|---|
Amplitude degrau: | 1,0 |
Sobressinal máximo desejado, ou |
20% |
Erro máximo desejado, ou |
5% |
Tempo de assentamento máximo desejado, ou |
0,75 |
Sinal máximo de controle, ou |
3,5 |
Sinal mínimo de controle, ou |
-3,5 |
Um documento PDF dever ser criado retratando os projetos realizados, como se fosse um “Memorial de Projeto”. Deve ser formatado para folha A4, com margens de 2 cm em todas as extremidades e usando fonte de tamanho 10 no corpo do texto. As páginas devem ser numeradas e não deve ser usada nenhuma capa. Figuras e tabelas também devem ser numeradas e devidamente referenciadas no texto.
No topo da primeira página deve constar o título deste trabalho, curso de origem, data da entrega, seguido pelos nomes dos integrantes do grupo e seus números de matrícula entre parêntesis (cada estudante, em uma nova linha).
O documento pode ser criado usando um editor de textos compatível com Markdown um num editor de textos comum como Word ou Libre Office, fica a critério dos estudantes. Lembrando que só será aceito a versão PDF.
Excepcionalmente, se o documento foi gerado a partir de um editor Markdown, os estudantes podem exportar o documento final num arquivo PDF (.pdf
), e também a versão HTML (.html
) acompanhada de todas as figuras (.png
); mas neste último caso, os arquivos .pdf
, .md
, .html
e figuras .jpg
e .png
devem ser compactados num único arquivo zipado (.zip
) \Downloads
, por exemplo), para se certificarem que não está faltando nenhum arquivo (principalmente figuras).
No caso de documento sendo gerado a partir de editor Markdown, as figuras podem ser numeradas da seguinte forma (dentro de uma tabela):
| ![Foto baixada do Unsplash](jan-bolz-MScX6XdvxWw.jpg) |
| :--- |
| Fig 1: Exemplo de como incluir figura numerada em Markdown |
Gerando um resultado simular ao mostrado na figura 1 abaixo:
Fig 1: Exemplo de como incluir figura numerada em Markdown |
😠 Obs.: Entretanto, notar que não é desejável que os estudantes apresentem no trabalho, os comandos usados no Matlab realizar os projetos. Ou seja, não é esperado "copy-&-paste" dos comandos usados no Matlab para os projetos e simulações dos diferentes controladores, caso isto ocorra, já fica aqui estipulado um valor máximo para o documento apresentado de 6,0 (de 0 à 10,0 pontos), independente da precisão ou mérito alcançado pelo trabalho. O que não impede que o retorno de um ou outro comando do Matlab seja apresentado, como por exemplo, o resultado de um comando zpk
ou rlocfind(.)
ou stepinfo()
(mas neste caso, tentar suprimir linhas em branco desnecessárias). Apenas se exige que o documento apresentado não seja cópia pura de comandos adotados no Matlab.
No documento à ser gerado, são esperadas as seguintes informações:
Identificação da planta
Apresentar (explicitamente) a equação de
Requisitos de controle
Este item deve trazer uma tabela relacionando:
Requisitos | Valores |
---|---|
Amplitude degrau: | |
Sobressinal máximo desejado, ou |
|
Erro máximo desejado, ou |
|
Tempo de assentamento máximo desejado, ou |
|
Maior sinal de controle, ou |
|
Menor sinal de controle, ou |
Após esta parte inicial, segue-se o projeto de cada um dos 8 controladores.
Para cada controlador, deve ser apresentado:
(Sub-título:) Tipo de Controlador: (nome)
Equação do Controlador
Objetivos esperados:
Um pequeno parágrafo (máximo de 5 linhas) que ressalta a(s) principal(is) razão(ões) para incorporação deste controlador num sistema de malha-fechada. Este item ressalta as expectativas quanto aos resultados que podem ser obtidos com adoção de determinado controlador.
Comentários Iniciais:
Neste ponto, devem ser realizados comentários sobre as decisões tomadas quanto à localização de seu zero ou de seu pólo, justificando porque certos valores (localizações) foram arbitradas.
Gráfico do RL (ou do Diagrama do Lugar das Raízes, Root Locus) do sistema incluindo o controlador, ressaltando o ponto adotado para determinação do ganho adotado para o controlador.
Gráfico da resposta do sistema,
para um degrau aplicado no sistema em malha-fechada.
Gráfico de
Deixando claro valores máximos e mínimos assumidos por
Uma pequena tabela ressaltando alguns resultados obtidos como:
Resultados | Valores |
---|---|
Amplitude degrau: | |
Sobressinal alcançado, |
|
Tempo de pico, |
|
Tempo de assentamento, |
|
Regime permanente saída da planta, |
|
Erro de regime permanente, |
|
Maior amplitude do sinal de controle, |
|
Menor amplitude do sinal de controle, |
Observação:: No caso específico do controlador PID sua sintonia pode ser baseada no método de Ziegler-Nichols. Neste caso, o ganho máximo (ou ultimate gain),
Se a equipe adotar alguma variação para a tabela de Ziegler-Nichols, favor acompanhar esta tabela seguida de sua referência bibliográfica. Por exemplo Ziegler–Nichols method (Wikipedia) cita variações para valores propostos por Ziegler-Nichols para sintonia de controladores P, PI e PID.
O projeto de cada controlador deve terminar com “Comentários Finais” ressaltando num pequeno parágrafo, os resultados obtidos: se os requisitos de controle foram atendidos e se este controlador permitiria cumprir (ou não) todos os requisitos desejados. Com breve explicação entende-se um parágrafo de no máximo 5 linhas.
A critério da equipe, comentários extras referentes ao projeto de controlador são esperados (e representam pontos adicionais) 👍. Estes comentários extras incluem algum texto justificando a localização adotada para o pólo ou zero do controlador (no início de cada projeto de controlador).
Pontos adicionais também são obtidos se ao final da simulação de certo controlador, e acompanhado de uma breve explicação, ou grupo indique melhorias que podem ser adotados para certo controlador (novo ajuste de ganho, ou novo ajuste de seu pólo ou zero). Neste caso, desejavelmente acompanhada de nova simulação confirmando uma melhoria nos resultados que podem ser obtidos.
Este trabalho obedece aos seguintes critérios de avaliação:
A tabela 1 mostra a Pontuação Geral associada com o trabalho:
Item principal | Pontos (%) |
---|---|
1) Controlador Proporcional | 10 |
2) Controlador Integrador Puro | 10 |
3) Controlador PI (P + I) | 10 |
4) Controlador por Atraso de Fase (Lag) | 10 |
5) Controlador PD (P + D) | 10 |
6) Controlador por Avanço de Fase (ou PD + FPB) | 10 |
7) Controlador por Avanço-Atraso de Fase (Lead-Lag) | 10 |
8.a) Controlador PID(Usando Ziegler-Nichols/primeira sintonia) | 10 |
8.b) PID: Sintonia fina | 10 |
Total pontos | 90(=100%) |
Sendo que a avaliação por controlador obedece aos seguintes critérios:
Item | Pontos (%) |
---|---|
Equação genérica do Controlador | 5 |
Expectativas para este controlador | 10 |
Comentários sobre localização de pólos/zeros do Controlador | 10 |
Gráfico do RL ressaltando |
10 |
Equação final do controlador com ganho incluído | 5 |
Gráfico de |
10 |
Informações de |
5 |
Gráfico de |
10 |
Comentários finais: expectativas atendidas? | 5 |
Sugestões de melhorias? | 10 |
Nova simulação com melhoria proposta? | 10 |
Total pontos | 90(100%) |
onde:
Os gráficos incluídos no documento devem obedecer uma resolução mínima de 150 dpi, uma espessura mínima para as curvas e um tamanho mínimo usado para as fontes (fontes presentes nas figuras), de forma a assegurar que as figuras incluídas no documento final resultem legíveis. Para tanto, se recomenda que os estudantes gerem gráficos obedecendo os seguintes parâmetros:
Parâmetros | Valores recomendados |
---|---|
Rendering: | 150 até 300 dpi |
Scale font by: | auto |
Scale font with minimum of: | 14 points |
Scale line width width by: | auto |
Scale line with minimum of: | 1.5 points |
Salvar figuras como: | PNG (Portable Network Graphics) |
Se for necessário incluir diagramas de blocos criados no Simulink, usar o comando print -r150 -dpng -s<diagrama> diagrama.png
para exportar o digrama de blocos numa figura .png
. Por exemplo, para exportar o digrama de nome planta_PI_teste.slx
, foi adotado o seguinte comando (na janela de comandos do Matlab):
>> print -r150 -dpng -splanta_PI_teste planta_PI_teste.png
O parâmetro -r150
especifica resolução de 150 dpi, o parâmetro -dpng
especifica geração de arquivo gráfico no padrão PNG, o parâmetro -s
é o que indica ao Matlab que a “impressão” deve ser realizada a partir de um diagrama de blocos gerado no Simulink.
O Comando citado anteriormente gerou a figura:
E para transformar em figuras os gráficos obtidos a partir de blocos “Scope”, sugere-se incluir blocos “To workspace” no Simulink para variáveis do tipo “timeseries” (padrão nas versões mais recentes do Matlab). Ver próxima figura:
Suponha ainda que num certo diagrama de blocos, a resposta (saída) de um sistema tenha sido exportada para a variável y
e o sinal de controle tenha sido exportado para a variável u
; para obter um gráfico similar ao gerado por um bloco Scope monitorando esta saída, usar o comando (na linha de comandos do Maltab):
>> plot(u.time, u.data, 'b-', y.time, y.data, 'k:')
Onde a opção b
apenas indica a cor azul (blue) para a curva, e o caracter -
indica traço contínuo. Em caso de dúvidas sobre o uso da função plot()
no Matlab, usar o comando: >> help plot
.
Existe ainda a função gráfica plotyy(.)
capaz de mostrar num mesmo gráfico, 2 curvas diferentes que trabalham com escalas diferentes. Esta função poderia ser usada para combinar num único gráfico, a resposta temporal do sistema,
>> [y, t]=step(ftmf_PD); % guarda dados nos vetores y e t mas não mostra gráfico
>> [u,t2]=impulse(aux2); % guarda u (ação de controle) e t2 para um PD,
>> % gráfico não é mostrado na tela
>> plotyy(t,y, t2,u);
>> legend('y(t)', 'u(t)')
>> grid
>> set(AX,'FontSize', 14) % aumenta fonte dos axis
>> set(H1,'LineWidth', 2) % aumenta espessura da linha da primeira curva, y(t)
>> set(H2,'LineStyle', '–') % modifica estilo do traço da primeira curva
>> set(H2,'LineWidth', 2) % aumenta espessura da linha da segunda curva, u(t)
>> set(H2,'Color', 'm') % modifica cor da segunda curva, para magenta
>> title('Step Response')
onde: t
e y
são variáveis (vetores) relacionados com o tempo e amplitude de saída da planta respectivamente; t2
e u2
são variáveis (vetores) relacionados com o tempo e amplitude da ação de controle (respectivamente). Note que as dimensões dos vetores t
e t2
não são obrigadas a coincidir.
A sequência de comandos anterior gera o gráfico mostrado a seguir:
🏃 O trabalho (um único arquivo PDF ou ZIP) deve ser enviado por 📫 fpassold@upf.br até o dia 21/06/2023 💥. Uma cópia por equipe.
☕ Calendário final:
Junho 2023
Do Se Te Qu Qu Se Sá
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24 <-- 21/06 = data entrega trabalho
25 26 27 28 29 30 <-- 28/06 = prova final