Análise de projetos de controladores realizados em Python e Matlab - Rebeschini, Matheus Dias [UNESP] (Universidade Estadual Paulista (Unesp), 2022)
Neste trabalho são apresentadas ferramentas para o projeto de controladores para plantas genéricas utilizando a teoria clássica de controle, através de um script desenvolvido utilizando a linguagem Python. O script foi desenvolvido considerando os principais parâmetros de especificação de projeto de controladores, como tempo de estabelecimento (te), porcentagem de overshoot (P.O.), tempo de subida (ts) e tempo de pico (tp). Após realizado o projeto dos controladores será feito o gráfico do Root Locus, sendo que na sequência é apresentado cada parte do script que realiza esta tarefa acompanhado da apresentação dos resultados com os valores obtidos através do script em Python. Em sequência, será desenvolvido e comparado o projeto dos controladores utilizando o software proprietário MATLAB® e o software livre Python para a planta do sistema de Suspensão Ativa de Bancada, equipamento didático desenvolvido pela Quanser. Será apresentado a descrição do sistema através de espaço de estados para o desenvolvimento do projeto de controladores. O projeto dos controladores será baseado na metodologia proposta por Lyapunov, cujo objetivo é analisar uma “função de energia” relacionada com o vetor de estado do sistema. Considerando uma candidata a função de Lyapunov quadrática, as restrições no projeto de controladores podem ser reduzidas em desigualdades matriciais lineares (do inglês, Linear Matrix Inequalities – LMIs). É realizada a apresentação do script desenvolvido em Python capaz de resolver as LMIs e encontrar um ganho K.

This work presents tools for the design of controllers for generic plants using the classical theory of control, through a script developed using the Python language. The script was developed considering the main controller design specification parameters, such as establishment time (te), overshoot percentage (P.O.), rise time (ts) and peak time (tp). After carrying out the controller’s project, the Root Locus graph will be made, and in the sequence each part of the script that performs this task is presented, accompanied by the presentation of the results with the values obtained through the script in Python with the values found in the literature for the controller design. Next, the controllers design will be developed and compared using the proprietary MATLAB® software and the free Python software for the Active Banking Suspension system plant, didactic equipment developed by Quanser. The description of the system will be presented through the state space for the development of the controller’s project. The controllers design will be based on the methodology proposed by Lyapunov, whose objective is to analyze an “energy function” related to the state vector of the system. Considering a candidate for a quadratic Lyapunov function, the constraints on controller design can be reduced to Linear Matrix Inequalities (LMIs). The script developed in Python capable of solving the LMIs and finding a K gain is presented.
Analysis of controller projects performed in Python and Matlab
Keywords: Teoria Controle Clássica; Controle Chaveado; Desigualdade Matricial Linear; MATLAB®; Python; Classical Control Theory; Switched Control; Linear Matrix Inequalities