Introdução a Simulação de Controle de Sistemas com Python — Parte 01

Oséias Farias
Editorial 20 21
Published in
5 min readOct 15, 2021

Nesse post aprenderemos os primeiros passos para simular sistemas de controle usando Bibliotecas Python.

O Python é uma linguagem de programação em que pode ser usado o paradigma (POO) Programação Orientada a Objetos, dessa forma, muitos módulos Científicos e Matemáticos foram criados por diversas comunidades possibilitando seu uso para diferentes áreas das Ciências e Engenharias.

Hoje veremos uma aplicação na Engenharia, mais especificamente em modelagem e simulação de Controle de Sistemas.

BIBLIOTECAS PYTHON UTILIZADAS PARA A SIMULAÇÃO

Muitas bibliotecas podem ser usadas para simulação de sistemas de controle, nesse tutorial usaremos bibliotecas que já são bem documentadas e conhecidas nas comunidades científicas.

PYTHON-CONTROL

Fonte: Produzida pelo Autor

A biblioteca python-control é um toolbox com classes e métodos (Python) que implementam operações para análise de projeto de Controle de Sistemas de Feedback.

  • Instalação

Para instalar você pode usar o gerenciador de pacotes Pip do Python.

pip install control

Ou caso você tenha o Anaconda instalado em sua máquina use o conda.

# se ainda não estiver instalado
conda install numpy scipy matplotlib
conda install -c conda-forge control

MATPLOTLIB

Matplotlib é uma biblioteca de ‘software’ para criação de gráficos e visualizações de dados em geral, feita para e da linguagem de programação Python e sua extensão de matemática NumPy.

Matplotlib é desenvolvida para plotagens de diferentes formatos de gráficos, ela oferece um módulo chamado pyplot que dispõe de métodos análogos aos oferecidos pelo MATLAB.

  • Instalação

Para instalar você pode usar o gerenciador de pacotes Pip do Python.

python -m pip install -U pip
python -m pip install -U matplotlib

Ou caso você tenha o Anaconda instalado em sua máquina use o conda.

conda install matplotlib

NUMPY

Fonte: Produzida pelo autor com base nos dados de (Site Oficial Numpy)

Numpy é uma biblioteca Python que suporta processamento de arrays e matrizes multidimensionais, além de dispor de grande quantidade de métodos matemáticos de alto nível para operar sobre arrays e matrizes.

Tirando as características de programação em Python, podemos dizer que essa biblioteca possui métodos para operações matemáticas assim como o MATLAB.

  • Instalação

Para instalar você pode usar o gerenciador de pacotes Pip do Python.

pip install numpy

Ou caso você tenha o Anaconda instalado em sua máquina use o conda.

conda install numpy

MODELAGEM DO SISTEMA DE CONTROLE

Agora que fizemos uma revisão sobre as bibliotecas Python que usaremos na simulação, vamos “por a mão na massa” e criar o nosso primeiro sistema de controle usando Python.

Funções de Transferências dos Sistemas

Normalmente quando queremos simular um sistema, precisamos encontrar a Função de Transferência do Sistema, porém quando usamos a biblioteca Control do Python, ela se encarrega de encontrar a função e o que precisamos é apenas mostrar a EDO que descreve o sistema.

Além disso, simularemos um sistema em malha fechada ou sistema com realimentação (feedback), para isso, usaremos o Controlador PID (Controlador proporcional integral derivativo) e um Sensor Unitário.

SISTEMA — CIRCUITO RC

O sistema que será usado para essa simulação é o Circuito RC do posts Controle de Sistemas — Simulação (Circuito RC Série) com Realimentação Usando Python. Em que sua função de Transferência é dada por:

01

Dando valores de Capacitância e Resistência, temos:

  • Capacitor: C=10μF
  • Resistor: R=20kΩ
02
03

ALGORÍTIMO PID

Sendo u(t) o sinal de saída, podemos definir o algorítimo PID da seguinte maneira:

04

Onde:

Com a aplicação da Transformada de Laplace, temos:

05

Onde:

  • s: frequência complexa.

Sensor Unitário

Essa representação de um sensor, quer dizer que todo o valor “lido” é multiplicado por 1.

06

Agora que encontramos as funções de transferência de cada parte do Sistema, montaremos a equação em Malha Fechada.

Controle em Malha Fechada do Circuito (RC)

Onde:

  • Modelo do Circuito RC:
07
  • Sensor:
08
  • Controlador:
09

Aplicando a Teoria de Controle em Malha Fechada

A função de Transferência Geral para o Sistema em Malha Fechada é dada por:

10

Substituindo os valores temos:

11

Simplificando a equação, temos:

12

G(s) é nossa Função de Transferência em Malha Fechada do nosso Sistema de Controle.

REFERÊNCIAS

  • Sinais e Sistemas Lineares. B.P. Lathi — Sinais e Sistemas Lineares (2006, Bookman).
  • Matplotlib, Site Oficial, 2020.

Disponível em: https://matplotlib.org/stable/users/installing.html. Acesso em: 14 de Out. de 2021.

  • Numpy, Site Oficial, 2020.

Disponível em: https://numpy.org/doc/stable/user/quickstart.html. Acesso em: 14 de Out. de 2021.

  • Python Control, Site Oficial, 2020.

Disponível em: https://python-control.readthedocs.io/en/0.8.3/intro.html. Acesso em: 14 de Out. de 2021.

  • Controlador proporcional integral derivativo, Wikipédia, a enciclopédia livre., 2020.

Disponível em: https://pt.wikipedia.org/wiki/Controlador_proporcional_integral_derivativo. Acesso em: 14 de Out. de 2021.

--

--