Skip to content

matheussmachado/identificador-de-parametros-de-sistemas-de-ordem-1-e-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

IDENTIFICADOR PARÂMETROS DE SISTEMAS DE 1º E 2º ORDEM

Sobre

O projeto foi realizado para um trabalho de avaliação da disciplina de Controle Digital.

Foi implementado um algoritmo de mínimos quadrados para a identificação de parâmetros que descrevem o modelo matemático de sistemas lineares de ordem 1 e ordem 2. O algoritmo está sendo executado através de um microcontrolador.

Materiais do projeto:

  • 1 microcontrolador ATmega328p (Arduino Uno) que foi programado utilizando a lib AVR
  • 1 filtro passa-baixas passivo RC de ordem 1
  • 2 filtros passa-baixas passivos RC de ordem 2 com parâmetros diferentes de resistência
  • 1 filtro ativo passa-baixas butterworth (topologia Sallen-Key) de ordem 2

Inicialmente, o projeto previsto para identificar apenas o filtro do tipo Butterworth de ordem 2, entretanto foi montado outros circuitos para validar o algoritmo. Sobre o filtro Butterworth, ele foi projetado para ter uma frequência de corte em 10 Hz e amortecimento 0,707.

A seguir, mais detalhes sobre a implementação do algoritmo e circuitos utilizados.

O algoritmo de identificação dos parâmetros

O algoritmo consiste na aplicação do princípio de mínimos quadrados, em que dada as entradas conhecidas que foram inseridas no sistema e obtidas as saídas para cada uma dessas entradas é possível montar uma matriz de regressores $\Phi$ com a finalidade de aplicar o método de mínimos quadrados e obter os parâmetros que descrevem a dinâmica do sistema.

image

Nesse contexto, $\hat{y}$ é a saída estimada do sistema, os parâmetros $\theta$ são os parâmetros a serem identificados e por fim as variáveis $\varphi$ estão relacionadas às entradas e saídas anteriores.

A mesma equação pode ser escrita na forma:

image

Portanto, os parâmetros estimados podem ser obtidos através de:

image

Para um sistema de ordem 1 no tempo discreto, é possível escrevê-lo como:

image

O formato das matrizs $y$ e $\Phi$ , com um número N de amostras coletadas em um ensaio é da forma:

image

Portanto, a montagem das matrizes para o cálculo dos parâmetros $\theta$ fica:

image

Em C, é necessário realizar uma adaptação, pois a indexação inicia em zero. Para um total de 50 amostras coletadas, temos $N = 49$

Desta forma, para fins de generalização para a coleta de amostras, deve-se atualizar o vetor de amostras de entradas e saídas até um número $N - n - 1$ em que $n$ é a ordem do sistema.

Nesse contexto, levando em conta as adaptações, para um sistema de ordem 2:

image

image

Sobre a escolha do período de amostragem

O período de amostragem foi escolhido com base no critério do tempo de subida do sistema. A razão entre tempo de subida do sistema e o período de amostragem deve ser entre 4 e 10, em quanto maior a razão, melhor é captura da dinâmica do sistema amostrado. O tempo de subida considerado foi o do filtro ativo Butterwoth de segunda ordem. Assim, foi utilizado o mesmo período de amostragem para os demais sistemas.

Resultados

Será detalhado o processo para o filtro do tipo Butterworth e o restante dos sistemas serão apenas demonstrados os resultados.

Filtro passa-baixas ativo do tipo Butterworth (2º Ordem)

Função de transferência do sistema em tempo contínuo:

ft-butterworth-ord2

Esquemático do circuito e montagem física:

mix-butterworth-ord2

Ensaio para obtenção dos vetores de entradas e saídas:

ensaio-prbs

É realizado um ensaio utilizando como entrada (em azul) um sinal do tipo PRBS (Pseudo Random Binary Signal) de quatro bits. A cada período de amostragem é que coleta os dados de entrada e de saída real do sistema (em vermelho). Após essa captura é realizado o cálculo de identificação dos parâmetros do sistema por mínimos quadrados e dado uma pausa para fins de visualização. Em seguida é alterada entre quatro tipos de entradas distintas, via acionamento de um botão físico, para verificar se a saída estimada (em verde) consegue prevê a saída real do sistema em função dos parâmetros identificados e das entradas inseridas.

Resposta ao sinal PRBS com espaçamento:

rastreando-prbs

Resposta ao sinal degrau:

rastreando-degrau

Resposta ao sinal senoidal:

rastreando-senoide

Resposta ao sinal rampa:

rastreando-rampa

Interação em tempo real:

2023-07-14.23-18-52.mp4

Filtro passa-baixas passivo do tipo RC (2º Ordem)

Função de transferência do sistema em tempo contínuo:

image

Sistema 1 (mais rápido)

Esquemático do circuito e montagem física:

mix-passivo-ord2-rapido

Interação em tempo real:

2023-07-14.23-57-45.mp4

Sistema 2 (mais lento)

Esquemático do circuito e montagem física:

mix-passivo-ord2-lento

Interação em tempo real:

2023-07-15.00-17-58.mp4

Filtro passa-baixas passivo do tipo RC (1º Ordem)

Função de transferência do sistema em tempo contínuo:

ft-passivo-ord1

Esquemático do circuito e montagem física:

mix-passivo-ord1

Interação em tempo real:

2023-07-15.00-55-20.mp4

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages