Você está na página 1de 22

CONSTRUÇÃO, INSTRUMENTAÇÃO, IDENTIFICAÇÃO E

CONTROLE DE UM PÊNDULO INVERTIDO ROTATÓRIO


2015/2

Autor: Eduardo Martins dos Santos


Pontifícia Universidade Católica do Rio Grande do Sul
Curso de Engenharia de Controle e Automação
Av. Ipiranga 6681, Prédio 30, CEP: 91619-900 – Porto Alegre – RS – Brasil
Telefone: (51) 9207-7517 – E-mail: eduardo.santos.003@acad.pucrs.br

Orientador: Rubem da Cunha Reis, Dr. Eng.


Pontifícia Universidade Católica do Rio Grande do Sul
LASPI – Laboratório de Sistemas e Processos Industriais
Av. Ipiranga 6681 – Prédio 30, CEP: 91619-900 – Porto Alegre – RS – Brasil
Telefone: (51) 3320-3500, ramal: 4063 – E-mail: rreis@pucrs.br

Resumo
O pêndulo invertido é um dos mais clássicos exemplos de sistemas de controle, para
fins didáticos e como plataforma de testes para estratégias de controle. A variação
rotacional deste, também conhecida como pêndulo de Furuta, utiliza o torque de um
único motor acoplado a um braço móvel para simular uma força linear sobre o ponto
de acoplamento do pêndulo, que age como expressão física do controle. O sinal de
comando para tal controle é calculado com base na posição angular oscilante do
pêndulo, que é coletada por um encoder incremental e envida para a unidade de
processamento. Este artigo tem como proposta a construção de um pêndulo de
Furuta, sua identificação e o subsequente desenvolvimento de uma estratégia de
controle capaz de estabiliza-lo em torno de seu ponto de equilíbrio instável. Também
será apresentado um relato das dificuldades encontradas no desenvolvimento deste
projeto, soluções encontradas e nas limitações impostas pelas primeiras ao resultado
final.

Palavras-chave: pêndulo de Furuta; pêndulo invertido; controle; sistema não-linear.


1. INTRODUÇÃO
Todo sistema projetado por um ser humano é feito para alcançar um objetivo
específico. Os sistemas automatizados, além disso, devem fazê-lo sem o constante
manejo de um operador. Entretanto, interferências externas e até mesmo a própria
natureza do sistema podem impedir a precisão de suas funções.
Para lidar com tais empecilhos, a área de Controle desenvolve métodos que,
baseados no contínuo monitoramento da saída do sistema a ser controlado e em um
modelo do próprio, alteram os sinais de entrada para compensar as interferências e
garantir o funcionamento adequado e estável do sistema.
Um sistema bastante comum a ser controlado é o pêndulo invertido, que possuí
seu centro de massa acima do ponto de apoio. Diferentemente de um pêndulo comum,
que possuí o centro de massa abaixo de tal ponto e, portanto, um equilíbrio estável; a
ação da gravidade sobre o pêndulo invertido torna seu ponto de equilíbrio bastante
instável.
O comportamento oscilatório dos pêndulos é, por definição, não-linear e, devido
à simplicidade estrutural de seu modelo mais básico, a versão invertida é vista como
um sistema padrão para o teste de uma grande gama de estratégias de controle e
para o ensino de disciplinas da área desde a década de 1950 [1].
O controle destes pêndulos é feito através de um atuador colocado em seu
ponto de apoio que, com informações sobre a inclinação, a velocidade e a aceleração
da haste, movimenta-se de forma a compensar as consequências de qualquer
distúrbio atuante sobre o centro de massa.
Algumas das mais interessantes aplicações do controle de pêndulo invertido
podem ser encontradas no equilíbrio de robôs humanoides e em sistemas modernos
de estabilização de torres, quando sob a ação de forças externas como terremotos ou
ventos muito fortes. Na área aeroespacial este é o método aplicado para a
estabilização de trajetória de foguetes, com a força de propulsão concentrada em sua
extremidade posterior sendo análoga à força gravitacional atuando sobre o centro de
massa em um pêndulo invertido simples.
Neste projeto será estudado um caso específico do pêndulo invertido conhecido
como pêndulo de Furuta, cuja ação de controle é feita por uma base rotacional na qual
o pêndulo é acoplado.

2
1.1. Pêndulo de Furuta
Criado em 1992 no Instituto Tecnológico de Tóquio pelo Dr. Eng. Katsuhisa
Furuta [2], o pêndulo que leva seu nome é uma estrutura altamente popular para a
demonstração de leis de controle. O sistema é composto por um braço que,
impulsionado por um motor, gira em um plano horizontal e é perpendicularmente
conectado a um pêndulo de rotação livre em torno de seu eixo de acoplamento. Como
o movimento de tal pêndulo não é diretamente controlado, o sistema é considerado
sub-atuado, no qual o número de atuadores é menor que o de graus de liberdade.
A combinação de estrutura simples e dinâmica complexa tornou este pêndulo
uma ferramenta bastante popular em laboratórios de controle, resultando em
incontáveis estudos publicados sobre métodos de controle aplicados a ele.
Este trabalho tem por objetivo a construção de um pêndulo de Furuta como
descrito acima, a identificação do sistema para a construção de um modelo
matemático do sistema e o desenvolvimento de um controle que mantenha o pêndulo
em posição de equilíbrio instável, mesmo com a ação de interferências exteriores.

2. REFERENCIAL TEÓRICO
A realização deste projeto requer ampla compreensão do comportamento do
sistema pendular e de estratégias de controle que possam ser aplicadas a ele. Com
isto em mente, foram analisadas publicações específicas sobre o caso do pêndulo de
Furuta, tanto quanto sobre pêndulos invertidos em geral.
Uma parte considerável mantinha seu foco apenas nas estratégias de controle
do sistema, com apenas um número relativamente baixo de artigos descrevendo todo
o processo de construção, modelagem e controle. Esta revisão bibliográfica busca,
portanto, encontrar conceitos pontuais que possam ser combinados para uma
conclusão satisfatória do projeto.

2.1. Dinâmica do pêndulo de Furuta


O comportamento de qualquer pêndulo invertido requer que sua modelagem
matemática consista de um sistema de equações não-lineares. O pêndulo de Furuta,
no entanto, possui uma dinâmica muito mais complexa, em decorrência do
posicionamento perpendicular do eixo do atuador em relação ao eixo de rotação do
pêndulo.

3
No artigo de Cazzolato e Prime [2] são apresentadas as forças e dimensões
envolvidas no funcionamento do pêndulo de Furuta, bem como a análise das
interligações entre as mesmas Tais informações são utilizadas para obter as
mencionadas equações não-lineares através de uma formulação Lagrangeana e uma
Newton-Euler iterativa. Os dois processos resultam no mesmo modelo.

Figura 1: Representação de um pêndulo invertido rotacional e seus parâmetros físicos.

Fonte: CAZZOLATO, B. S.; PRIME Z. (2011) [2].

Nas seguintes equações, os tensores de inércia são representados por J, o


atrito viscoso dos acoplamentos é representado por b e os demais parâmetros são
apresentados na figura 1.

θ J +m l +m L + J + m l sen θ +J cos θ
+θ m L l cos θ − θ m L l cos θ =τ
(1)
+θ θ sen 2θ m l + J − J +b θ

θ m L l cos θ +θ m l +J
1 !=τ
+ θ sen 2θ −m l − J +J + b θ + gm l sen θ
2
(2)

4
no eixo de cada braço é ignorável (J =J = 0). Também se considera que eles
Como os braços do sistema são longos e estreitos, o momento de inércia ao

têm simetria radial, permitindo as simplificações J =J =J eJ =J =J .

cálculo do momento de inércia total do braço 2 (J# = J + m l ) e do momento de


Com a estrutura construída, os parâmetros constantes da equação permitem o

de equilíbrio (J#$ = J + m l + m L ).
inércia total que atua sobre o rotor do motor quando o pêndulo se encontra em posição

As simplificações apresentadas possibilitam a construção de um modelo muito


mais conciso da dinâmica do sistema, mas, para atingir sua finalidade prática, o

angulares θ (3) e θ (4).


modelo é manipulado para isolar suas saídas de maior ordem: as acelerações

−J# b θ + m L l cos θ b θ − J# sen 2θ θ θ


' 1# # m L l sen θ θ *

& 2 J m L l cos θ sen 2θ θ + J )
1
+J# τ − m L l cos θ τ + 2 m l L sen 2θ g
% (
(3)
θ =
+J#$ J# + J# sen θ − m L l cos θ ,

m L l cos θ b θ − b -J#$ + J# sen θ . θ


' 1 1 *
## #
&− 2 sen 2θ -J$ J + J sen θ . θ − 2 m L l sen 2θ θ )
& )
& −m L l cos θ τ + -J#$ + J# sen θ . τ )

% −m l sen θ -J#$ + J# sen θ . g (


(4)

θ =
-J#$ J# + J# sen θ − m L l cos θ .

equilíbrio θ = 0 e θ = π, e uma possibilidade de modelo para o sistema em função


Os autores também apontam a linearização do sistema para os pontos de

da corrente aplicada ao motor, com base nas equações que descrevem o subsistema
9:;
de um motor CC 0 = ? e o torque produzido pelo mesmo (τ = K A i).
12 4567 2587
9<
13 =7

Apesar da completa análise da dinâmica do pêndulo, alguns problemas práticos


são evidenciados ao usar o artigo acima para a construção do modelo. O maior sendo
a necessidade de conhecer os valores de amortecimento dos acoplamentos rotatórios,

5
que requer uma análise muito complexa para fornecer uma definição precisa.
Portanto, outros métodos de identificação de sistema devem ser aplicados neste caso.

2.1.1. DEFINIÇÃO DE PARÂMETROS


Aplicar um sinal de entrada à planta e analisar sua saída é uma forma confiável
de identificar um sistema [3]. Partindo desses dados e de outras propriedades
conhecidas, como a ordem do sistema (que pode ser descoberta com o uso do estudo
descrito anteriormente), é possível construir o modelo matemático do sistema com o
uso de critérios de identificação como método dos mínimos quadrados, teorema de
Gauss-Markov, e estimativa por máxima verossimilhança [4].

2.2. Métodos de controle


A já mencionada popularidade do pêndulo de Furuta como plataforma de testes
para leis de controle pode ser vista na diversidade de publicações baseadas nesse
sistema.
Um método largamente estudado é o de controle de energia, que difere do
controle clássico aplicado a pêndulos invertidos pois, ao invés de controlar
diretamente a velocidade e a posição do mesmo, o fazem de forma indireta ao
controlar a variação de sua energia correspondente à trajetória.
Em Åström e Furuta [1] é apresentado o controle da energia de um pêndulo
sem preocupação em definir seu sistema motor ou o amortecimento da junta de
rotação. Nesse artigo a lei de controle é definida usando o teorema de Lyapunov e,
com ela, é possível estudar diversos comportamentos de swing-up para o pêndulo. O
controle de energia mostra-se tão versátil que pode ser utilizado para estabilizar dois
pêndulos acoplados a uma mesma base, ou mesmo um pêndulo duplo.
Para uma estratégia mais simples, pode ser considerada a implementação de
um controlador PID [5] ou suas variações (PI, PD [6] e PI+D). Sendo este o controlador
mais utilizado no meio industrial, por sua simplicidade e por ter capacidade suficiente
para solucionar a maioria dos problemas de controle encontrados em finalidades
práticas; é curioso perceber a quantidade relativamente pequena de artigos
disponíveis sobre sua implementação a pêndulos invertidos. Escassez que pode ser
motivada pela necessidade de mais de um controlador em certas estruturas, fato que
dificultaria o projeto, ou pela já citada versatilidade do controle de energia.

6
3. MATERIAIS E MÉTODOS
Com a base teórica obtida na revisão bibliográfica, o planejamento do projeto a
ser realizado pode ser dividido em três etapas: construção do pêndulo de Furuta,
identificação do sistema e desenvolvimento da lei de controle. É importante também
mencionar que esses procedimentos podem exigir revisões de adaptação a resultados
inesperados.

3.1. Construção do sistema


A fabricação do pêndulo pode ser rudemente dividida entre eletrônica e
estrutural. Na primeira (figura 2), são conectados os elementos de atuação, controle
e sensoriamento que fazem com que o sistema funcione do modo projetado. A parte
estrutural, menos técnica e mais sujeita a determinações sem grande embasamento
teórico, é a construção dos elementos responsáveis pelas condições físicas para a
existência dos movimentos a serem controlados, como uma base elevada e o pêndulo
propriamente dito.

Figura 2: Esquema de montagem da parte eletrônica

Fonte: Adaptado de Arduino Home Page [7] e PittmanExpress (2007) [8].

7
3.1.1. ESTRUTURA
Com base em estruturas encontradas na literatura [3][9], foi verificado que o
projeto exige, além do pêndulo e do braço motor já descritos na literatura, uma base
que mantenha o extremo livre do pêndulo afastado do chão em todos os momentos.
A mais simples solução para isto é que a altura da base seja igual ao comprimento do
pêndulo.
O braço motor, para realizar o acoplamento a ambos motor e sensor, precisou
ser projetado com uma geometria levemente mais complexa que o resto da estrutura,
o que tornaria sua produção de forma manual difícil e demorada; portanto é
recomendável que sejam buscados métodos de fabricação automatizada para o
mesmo. Também é preciso escolher projetar formas de encaixe e escolher um
material que suportem as forças às quais esta peça será submetida.
Base e pêndulo, ao contrário do braço motor, foram projetados com geometrias
muito simples e, sem a necessidade de meios complexos de produção, poder ser
produzidos em madeira.
Uma última explicação pode ser feita sobre o acoplamento do pêndulo ao
sensor; pois com a dificuldade em criar um furo de encaixe apropriado à geometria do
pino do encoder, uma peça de plástico produzida com a mesma técnica de impressão
empregada ao braço pode ser utilizada como meio de junção entre as duas peças
mencionadas.

3.1.2. SENSOR
Um dos processos essenciais para qualquer sistema de controle é o adequado
sensoriamento de sua saída. Como já mencionado, o único sinal de saída analisado
neste sistema será o referente à posição angular do pêndulo em relação ao eixo do
braço motor. Neste projeto, o sensor escolhido para medir tal ângulo foi um encoder
incremental ótico de 800 pulsos por rotação (ppr).
O funcionamento de tal sensor é baseado na emissão de um feixe de luz que,
ao encontrar um disco rotatório dividido em partes translúcidas e opacas, pode ou não
ser identificada por um receptor. A interrupção periódica do feixe causa a saída de um
sinal ondulatório quadrado que, dependendo da largura de seus pulsos, permite a
determinação da velocidade de angular descrevida pelo disco, estando este atrelado
ao sistema cuja rotação deseja-se mensurar.

8
Uma limitação deste equipamento, no entanto, é a falta de capacidade para
medir a direção da rotação. Como solução a esse problema é a existência, no disco,
de uma segunda faixa de segmentos intermitentes, acompanhada por seu próprio
conjunto de emissor e receptor de luz. Esta faixa a mais apresenta um sinal atrasado
em 90º em relação ao da primeira, o que permite que o sentido da rotação seja
determinado ao comparar a ordem de subida e decida entre as ondas.

Figura 3: Padrão de segmentos do disco do encoder rotacional e os sinais gerados por este.

Fonte: Adaptado de Chuck McManis’s Home Page [10] e Wikipedia [11].

O encoder incremental, entretanto, pode medir apenas a variação do ângulo


desejado, não tendo a capacidade de medir diretamente a posição angular atual,
como seria possível com um encoder absoluto. Para solucionar esse problema é
preciso, primeiramente, marcar uma posição inicial como θ=0º como referência, e ter
conhecimento da amplitude angular de cada pulso (no encoder utilizado neste projeto
cada pulso corresponde a 0,9º). Após estas determinações iniciais, é preciso apenas
monitorar continuamente as mudanças de estado do sensor para identificar o sentido
do movimento e a quantidade de pulsos decorrida em relação ao ponto de referência;
assim conseguindo identificar o atual ângulo do pêndulo.

3.1.3. ATUADOR
Para dar “forma física” ao sinal de controle que age sobre um pêndulo de Furuta
é necessário utilizar um motor elétrico com rotação e torque altos o suficiente para
realizar movimentos contrários ao movimento do pêndulo com o objetivo de mantê-lo
em posição de equilíbrio ou fazer com que ele retorne à mesma posição.

9
O equipamento escolhido foi um motor de corrente contínua (CC) Pittman
modelo GM9236C608 com tensão nominal 12V, atrelado a uma caixa de redução de
razão 19,7:1, que aumenta seu torque em detrimento de sua rotação.
Como o motor possui um funcionamento relativamente simples, variando sua
rotação na mesma razão em que varia sua tensão de alimentação; o mesmo necessita
de um driver capaz de controlar a dita alimentação de acordo com sinais enviados
pelo controlador para obter uma rotação com velocidade e sentido desejados.

3.1.4. CONTROLADOR
Em busca de um controlador versátil e de fácil utilização, foi escolhido um
circuito produzido pela empresa Arduino, que baseia seus produtos em torno da
criação de um ambiente de prototipagem user friendly, com o uso de hardware e
software de código aberto. Esse caráter aberto das tecnologias Arduino permitiu o
surgimento de uma grande comunidade de desenvolvedores no fórum The Arduino
Playground [12], dispostos a compartilhar seus projetos e auxiliar seus pares.
O modelo utilizado neste projeto é o Arduino MEGA 2560, que, centrado em
um controlador ATmega2506, apresenta velocidade de clock de 16MHz, 56 portas I/O
digitais (dos quais 15 são capazes de produzir saídas PWM), 16 entradas analógicas
e memória flash de 256KB.
Com a altíssima importância do tempo de amostragem (T) em um sistema de
controle discreto, é preciso que cada ciclo de execução do software de controle seja
realizado em um tempo inferior a T. Uma interrupção interna ativada pelo clock do
controlador pode ser criada e programada para atender a tal restrição; sendo
necessário para isto conhecer o tempo de execução do loop e ajustar T de acordo.

3.2. Identificação do sistema


O projeto do sistema de controle necessita da existência de um modelo
matemático da planta a ser controlada baseado no conhecimento da dinâmica desta
e de seus parâmetros físicos.
A dinâmica do pêndulo apresentado na literatura [2] providencia a
representação do movimento angular em torno dos dois eixos do sistema na forma de
equações diferenciais não lineares. Entretanto, tal não-linearidade não permite que
ele seja representado na como função de transferência, o que facilita o posterior

10
projeto do sistema de controle. O modelo deve ser, então, aproximado em forma linear
no entorno de seus pontos de equilíbrio.

posicionado no eixo de θ , não há torque em θ . Sendo assim, o torque sobre o último


Também deve-se considerar que, como o único atuador do sistema está

pode ser considerado nulo (τ = 0).


Assim obtemos representações lineares em espaço de estados para o entorno
dos pontos 0 rad (5) e π rad (6).

0 0 J#$ J# − m L l 0 θ 0
E HE H
D0 0 0 # # θ
J$ J − m L l G D G 0
D0 gm l L G +I # Jτ
θ −b J# b m l L G Dθ G J
E H D
C0 −gm l J#$ b m l L −b J#$ F Cθ F −m l L
Dθ G
G=
(5)
Dθ J#$ J# − m L l
D G
Cθ F

0 0 J#$ J# − m L l 0 θ 0
E HE H
D0 0 0 J#$ J# − m L l G Dθ G + I 0 Jτ
θ D0 gm l L −b J# −b m l L G θ J#
E H D GD G
C0 gm l J#$ −b m l L −b J#$ F Cθ F m l L
Dθ G
G=
(6)
Dθ J#$ J# − m L l
D G
Cθ F

As representações em espaços de estados permitem perceber o pêndulo como


um sistema de quarta ordem, bem como observar como os parâmetros físicos do
sistema se relacionam com suas entradas e saídas e poderiam facilmente ser
representados como funções de transferência. No entanto, uma complicação para o
seguimento da identificação é a necessidade de conhecer os valores dos parâmetros
representados nas equações. Os atritos b, por exemplo, exigiriam processos muito
complexos e o acesso a equipamentos específicos para sua determinação.
Como solução para tal empecilho, podem ser usadas técnicas de identificação
de sistemas [3][4] baseadas na aplicação de uma entrada conhecida em um sistema
e a posterior coleta e análise de seu sinal de saída para a determinação dos
parâmetros Θ de uma função de transferência discreta de segundo grau (7), assim
como o sistema foi determinado.

11
ΘN z O + ΘP z Q + ΘR z + ΘS z + ΘT
G z =
z O + Θ z Q + Θ z + ΘQ z + ΘO (7)

Para este projeto, será empregado o método de mínimos quadrados: uma


técnica baseada no Modelo Autorregressivo de Médias Móveis (ARMA) [4]. Nesse
modelo, os dados coletados em “N” medições da entrada e da saída do sistema são
organizados nas matrizes de saída (Y) e de regressores (Ψ) da equação (8), ampliada

Y =Ψ∙Θ
em (9).
(8)

−y 3 −y 4 ⋯ −y N − 1 `
Θ
E H E H
−y 2 −y 3 ⋯ −y N − 2
D G DΘ G
y 4 D−y 1 −y 2 ⋯ −y N − 3 G DΘQ G
D−y 0 −y 1 ⋯ −y N − 4 G DΘO G
y 5
I J=D u 4 u 5 ⋯ u N G ∙ DΘN G
⋮ Du 3 G ΘP
(9)
u 4 ⋯ u N−1
y N D G D G
Θ
Du 2 u 3 ⋯ u N−2 G D RG
Du 1 u 2 ⋯ u N−3 G DΘS G
Cu 0 u 1 ⋯ u N−4 F CΘT F

Por fim, para determinar o modelo do sistema, deve-se apenas isolar a matriz
dos parâmetros Θ (10) e aplicar seus valores calculados a (7).

Θ = Ψ` Ψ 5
Ψ` Y (10)

Assim, é gerado um modelo do sistema que pode ser usado como base para o
desenvolvimento do controle e simulado em softwares apropriados.

3.3. Projeto do sistema de controle


O controle de estabilidade deste pêndulo deve ser projetado de forma a manter
o pêndulo em seu ponto de equilíbrio instável (π rad), compensando perturbações que
possam retirá-lo de tal estado.
Fisicamente, essa compensação é realizada pelo movimento horizontal da
base do pêndulo gerado pela rotação do motor, cujo torque é representado como
entrada do sistema. Para fins de simplificação, o movimento circular da base é

12
compreendido, do ponto de vista do pêndulo, como linear; similar ao modelo clássico
de pêndulo invertido [13].
A escolha da estratégia de controle apropriada deve levar em conta a resposta
do sistema a sinais escolhidos para verificação e ao modelo resultante do processo
de identificação; mas certas opções podem ser estudadas para aplicação.

3.3.1. CONTROLADOR PID


O controle do torque, com base na posição angular do pêndulo, pode ser feito com o

Derivativo) (11), na qual o erro e(t) é o resultado de a b = c − de , entendendo π como a


uso de um algoritmo baseado em uma arquitetura de controle PID (Proporcional-Integrativo-

referência que deve ser igualada pelo sistema

3
de t
u t = K g e t + K 2 h e t dt + K 1
$ dt (11)

Calculados os valores dos ganhos proporcional, integral e derivativo (j k , j l e j m ), o

controlador pode, então, ser implementado na forma de um código simples (12).

enkp − enk − 1p
unkp = K g ∙ enkp + unk − 1p + K 2 ∙ T ∙ enkp + K 1 ∙
T
(12)

3.3.2. CONTROLADOR PROJETADO POR ANÁLISE DO LUGAR DAS RAÍZES


Este método de projeto permite que, através da análise gráfica dos polos do
sistema e do posicionamento dinâmico de polos e zeros de controle, sejam
observados os efeitos destes sobre a saída do primeiro. O resultado deste método é

uma função de transferência C z =


s
t
que, assim como o método PID, pode ser

aplicado como código.


Para realizar este método com precisão em um tempo aceitável, são utilizadas
ferramentas especializadas de softwares de simulação matemática, como o MATLAB;
que geram uma resposta praticamente instantânea à realocação dos elementos do
controlador.

13
4. RESULTADOS E DISCUSSÃO
A base da estrutura e o pêndulo foram construídos de acordo com as
especificações mencionadas na metodologia. Quanto ao braço do motor, a
abordagem inicial foi a de produzi-lo pelo processo de “impressão 3D” a partir de um
modelo virtual desenvolvido com o uso do software Solid Works.
O primeiro problema apresentado por tal abordagem foi a impossibilidade de,
devido ao limite dimensional da peça que a impressora poderia produzir, dotar a peça
de um contrapeso capaz de equiparar-se à força conjunta exercida por encoder e
pêndulo. Além disso, o polímero acrilonitrila butadieno estireno (ABS), utilizado como
matéria prima na impressão, mostrou-se excessivamente maleável; o que foi
particularmente problemático na junção do braço com o eixo do motor, que foi
deformada ao ponto da inutilidade, com o eixo girando em falso e o braço
permanecendo imóvel.
A alternativa escolhida foi o uso de lâminas de acrílico como matéria prima a
partir das quais, seções horizontais foram cortadas a laser e unidas posteriormente.
Neste processo foi possível a implementação do contrapeso adequado, ainda com a
adição de um cilindro de latão na extremidade oposta ao acoplamento do pêndulo
para melhor aproximar o centro de gravidade do sistema ao eixo do motor, reduzindo
o momento fletor sobre este.
No projeto da base, a versão inicial desta, com formato quadrado e de grande
área, teve de ser substituída por uma com tampo circular com área bastante reduzida;
devido à interferência causada na saída devido ao atrito da base com o braço do motor
em movimento.

14
Figura 4: Versão final do pêndulo de Furuta construído para este projeto.

Fonte: O autor.

Nos testes do atuador buscou-se determinar a tensão de alimentação do motor


(VAv3 ) apropriada para que este apresentasse um espectro de torque adequado ao
controle do pêndulo. Em verificações práticas o valor escolhido foi 12,5V.
Durante os mesmos testes preliminares, foi verificada uma incompatibilidade
entre a alta precisão do sensor (800ppm) e a frequência de clock do controlador
(16MHz), que causa um erro na contagem de pulsos usada para a determinação do
ângulo quando o pêndulo atinge velocidades angulares elevadas. Tal problema
impede que o presente projeto consiga realizar o chamado swing up, que consiste em,
com a aplicação de uma entrada adequada, levar o pêndulo do ponto de equilíbrio
estável para o ponto de equilíbrio instável.

15
4.1. Identificação do sistema
Apesar da dificuldade previamente mencionada em obter valores precisos para
certos parâmetros do modelo do sistema, outros (comprimentos e massas) são
facilmente obtidos por medições simples.

Tabela 1: Parâmetros mensurados.


Parâmetro Valor
L 0,1407 m
L 0,3 m
l −0,01915 m
l 0,1175 m
m 0,269 kg
m 0,065 kg
g m
9,80665
s
Fonte: O autor.

Estes valores podem, então substituírem suas respectivas variáveis nas


equações (5) e (6).

0 0 J#$ J# − 1,15 ∙ 105P 0 θ 0


E HE H
D0 0 0 J#$ J# − 1,15 ∙ 105P G Dθ G+I 0
D0 Jτ
θ D 8,05 ∙ 105N −b J# 1,07 ∙ 105Q b GG Dθ G J#
E H
Dθ G C0 −7,5 ∙ 105 J#$ 1,07 ∙ 10 b
5Q
−b J#$ F Cθ F −1,07 ∙ 105Q
Dθ G= # #
J$ J − 1,15 ∙ 10
(13)
D G
5P

Cθ F

0 0 J#$ J# − 1,15 ∙ 105P 0 θ 0


E H
5P Eθ H
D0 0 0 # #
J$ J − 1,15 ∙ 10 G D 0
G+I Jτ
θ D0 8,05 ∙ 105N −b J# −1,07 ∙ 105Q b GG Dθ J#
E H D G
Dθ G C0 7,5 ∙ 105 J#$ −1,07 ∙ 105Q b −b J#$ F Cθ F 1,07 ∙ 105Q
Dθ G= J#$ J# − 1,15 ∙ 10
(14)
D G
5P

Cθ F

Mesmo com tal substituição, ainda não é possível produzir um modelo aceitável
do sistema. Para tanto, é utilizado o método de mínimos quadrados.

16
Apesar deste projeto ter o objetivo de equilibrar o pêndulo no ângulo π rad, ele
deve ser identificado tendo 0 rad como referência, por ser esta a única posição onde
ele pode ser estabilizado sem um sistema de controle.
A alteração da posição angular foi observada por 20s em intervalos de
T=0,001s, enquanto um torque variável era aplicado pelo motor. Os vetores coletados
de ambas entrada e saída foram puderam ser aplicados às matrizes Y e Ψ de (9) para,
por fim, obter os parâmetros Θ em (10).

−0,0497z O − 0,02004z Q + 0,04098z + 0,02469z + 0,001439


G z =
z O − 1,689z Q + 0,4876z + 0,5079z + 0,1898 (15)

A fatoração da função de transferência permite a determinação dos polos e


zeros do sistema.

z − 0,982 z + 0,066 z + 0,66 + 0,118j z + 0,66 − 0,118j


G z =
z + 0,526 z − 0,375 z − 0,92 + 0,341j z − 0,92 − 0,341j (16)

A frequência de amostragem do sensor (1kHz) apresentou-se muito alta para a


efetiva identificação do sistema, gerando modelos que, quando submetidos às
mesmas entradas que o sistema real, retornaram respostas inteiramente diferentes
das reais.
Uma redução da frequência de amostragem, devido à característica
incremental do encoder utilizado, resultaria em erros crescentes que inutilizariam o
sistema de controle. Portanto, a solução encontrada foi uma simples seleção de 1,8%
dos elementos amostrais coletados, resultando em 363 amostras com intervalo de
T=0,055s entre si que não ocasionavam o erro verificado anteriormente e ainda eram
capazes de representar o comportamento real do pêndulo.
A comparação entre o sinal de entrada, a posição angular do pêndulo durante
a operação e a resposta da simulação feita com base no modelo pode ser vista na
figura 5. Nessa situação, deve-se ter em mente que, devido à natureza não-linear do
pêndulo, existirão diferenças entre a saída real e a do modelo linearizado.

17
Figura 5: Gráfico de identificação do sistema.

Fonte: O autor.

Para validar a precisão do modelo, é preciso submeter o sistema a uma entrada


diferente da usada na identificação e, separadamente, aplicar essa mesma entrada
ao modelo. Sendo as respostas semelhantes, o modelo é considerado adequado ao
sistema.

Figura 6: Gráfico de validação da identificação.

Fonte: O autor.

A figura 6 mostra exatamente esse procedimento e, com a percepção de alguns


erros causados pelos já mencionados erros causados pela precisão do sensor e pela
discrepância entre modelo linear e sistema não-linear; efetivamos o modelo como
sendo próximo o suficiente do sistema real para o projeto do controle.

18
4.2. Projeto e aplicação do sistema de controle
Tentativas iniciais de projetar um controlador através do método de Ziegler-

oscilação natural do pêndulo como Tv = 0,867s, elementos físicos do sistema (em


Nichols foram frustradas pois, apesar de ser bastante fácil determinar o período de

especial o comprimento insuficiente do cabo do sensor) impedem que o sistema


funcione por tempo suficiente para a verificação de uma resposta real ao degrau
unitário. Na prática, isto impede uma observação confiável do ganho em regime
apresentado pelo pêndulo.
Também foi constado que o integrador poderia ter efeitos instabilizantes sobre
um sistema sensível como um pêndulo invertido, o que culminou na escolha por um
controlador PD com ganhos baseados na nos parâmetros de controle adequados ao
atuador [6].
Devido à já mencionada incompatibilidade entre sensor e controlador, o torque
apropriado ao atuador, para evitar que o pêndulo descreva velocidades muito altas e
erre sua contagem de pulsos, foi delimitada como 40% de sua capacidade máxima.
Do ponto de vista do controlador, este valor é atingido ao enviar ao driver um comando
de modulação por largura de pulso de valor 50 (o máximo atingível sendo 250).
Também foi estimado um limite seguro de 20° (0,35 rad) para o erro onde tal torque

por K g ∙ 20 = 50.
seria aplicado. Desta forma, o ganho proporcional do controlador pode ser estimado

Para o cálculo do ganho derivativo foi determinado um torque com 10% da


capacidade máxima (pwm de valor 25) no caso de um erro de 3,6° (0,028 rad) (este
valor foi escolhido como limite de segurança pois, devido à resolução de 800ppr, o
encoder é capaz de medir ângulos apenas em intervalos de 0,45º) com uma taxa de

amostragem de 2ms, permitindo o cálculo de ganho K 1 ∙ = 25.


Q,P
$,$$ N

Com a parte integradora do controlador anulada, os ganhos calculados


são aplicados a (12), resultando no controlador (15).

enkp − enk − 1p
unkp = 2,5 ∙ enkp + 0,01736 ∙
T
(17)

19
Um primeiro teste deste controlador foi feito para tentar estabilizar o pêndulo
em seu ponto estável (0 rad), verificações preliminares da resposta em um cenário
mais simples.

Figura 7: Posição angular do pêndulo e sinal de entrada em torno do ponto de equilíbrio estável.

Fonte: O autor

Na figura 7 é possível observar o comportamento sistema em torno do ponto


de equilíbrio estável ao ser alvo de cinco perturbações aplicadas manualmente (1,25s,
3,29s, 5,615s, 8,1875s e 11,305s) durante um período de 12,5s. Este efeito torna-se
mais perceptível ao comparar este gráfico com os das figuras 5 e 6, nas quais o
pêndulo oscila livremente quando não está sob o efeito do sinal de entrada.
Especial atenção deve ser dada aos sinais após a ocorrência da quarta (e mais
forte) perturbação, onde foi possível observar as consequências do erro de contagem
de pulsos mencionado previamente, pois, na realidade, o pêndulo encontrava-se
oscilando levemente em torno de 0 rad.
A partir dos resultados acima, não houve tempo hábil para a implementação de
um sistema de controle para alcançar o objetivo de manter o pêndulo em seu ponto
de equilíbrio estável.

20
5. CONCLUSÃO
Os desafios encontrados durante o desenvolvimento deste projeto foram vários.
Tanto estrutura e software, quanto a conexão entre estes apresentou desafios
inesperados ao início do processo.
A parte estrutural, ao início do projeto, não havia sido considerada uma possível
fonte de grandes preocupações. Isso revelou-se um grande engano, visto que a
produção de novas peças devido a interferências causadas pela geometria da
estrutura e materiais inadequados à operação tomou um longo tempo até que
resultados satisfatórios fossem atingidos.
O maior obstáculo encontrado foi, no entanto, a incompatibilidade da alta
precisão do sensor em relação à frequência de clock do controlador; cuja percepção
tardia impossibilitou medidas eficientes de correção (preferencialmente a substituição
de uma das partes por um modelo mais adequado). Tal discrepância afetou
grandemente a performance do sistema, ocasionando erros na percepção dos pulsos
necessária para a determinação da posição angular do pêndulo, impedindo a correta
percepção de velocidades angulares altas e, consequentemente impossibilitando o

oscilação do pêndulo dentro de um intervalo de ±20°). Obviamente essa restrição


controle do pêndulo se esse atingisse ângulos muito amplos (tentou-se manter a

tornou impossível a realização do swing-up do pêndulo, que exigiria um movimento


rápido de, no mínimo, 180º.
Por fim, mesmo com a obtenção de um controle preliminar capaz de retornar o
pêndulo rapidamente ao ponto de equilíbrio estável em caso de perturbações, não
houve tempo para ajustar esse controle até que fosse capaz de manter o pêndulo
equilibrado em torno de seu ponto instável. Assim, é justo definir que o objetivo final
do projeto não foi alcançado durante o tempo disponível para a execução do mesmo.
Para um objetivo satisfatório, seria apropriado a substituição de um dos
elementos discordantes por um modelo mais adequado (um encoder menos preciso
ou um controlador com maior velocidade de processamento); bem como mais tempo
para o ajuste do controlador a valores que possibilitassem sua plena funcionalidade.
Entretanto, os procedimentos realizados deste projeto resultaram em um
pêndulo de Furuta funcional (feita a pequena modificação de hardware mencionada)
e utilizável em futuros projetos de leis de controle e como demonstração para o ensino
de efeitos práticos das leis de controle.

21
6. REFERÊNCIAS

[1] ÅSTRÖM, K. J.; FURUTA, K. Swinging up a pendulum by energy control. In:


Automatica, vol. 36, n. 2, p. 287-295, Fev. 2000.

[2] CAZZOLATO, B. S.; PRIME Z. On the dynamics of the Furuta pendulum.


Journal of Control Science and Engineering, vol. 2011, p. 1-8, Fev. 2011.

[3] ALARCÓN, O. G.; GUZMÁN, S. P.; VALENZUELA, J. M. On parameter


identification of the Furuta pendulum. Procedia Engineering, vol. 35, p. 77-
84, Mai. 2012.

[4] FRANKLIN, G. F.; POWELL J. D.; WORKMAN M. Digital Control of


Dynamic Systems. 3ª. ed. Menlo Park: Addison Wesley Longman, 1998.
742p.

[5] WANG, J-J. Simulaion studies of inverted pendulum based on PID controller.
Simulation Modelling Practice and Theory, vol. 19, n.1, p. 440-449 Jan.
2011.

[6] SILVA, I. E. Projeto de controlador digital para veículo dicilo miniatura.


Trabalho de Conclusão de Curso de Graduação em Engenharia de
Controle e Automação (PUCRS), Porto Alegre, Jun. 2015.

[7] Arduino Homepage. Disponível em:


https://www.arduino.cc/en/Tutorial/MultiSerialMega. Acesso em: 25 out.
2015.

[8] Catálogo PittmanExpress. Harleysville: AMETEK, 2007.

[9] HOUCK, A. C.; KATZSCHMANN, R. K.; SOUZA, J. L. A. Furuta Pendulum.


Advanced System Dynamics & Control Final Report (MIT), Cambridge,
Nov. 2013. Disponível em:
http://web.mit.edu/jlramos/www/Arquivos/Furuta%20Pendulum%20Final%20
Report%20(1).pdf. Acesso em: 19 out. 2015.

[10] Quadrature Encoder. Chuck McManis’s Home Page. Disponível em:


http://www.mcmanis.com/chuck/robotics/projects/encoders/enc_quad.htm.
Acesso em: 19 out. 2015.

[11] Rotary encoder. Wikipedia, the free Encyclopedia. Disponível em:


https://en.wikipedia.org/wiki/Rotary_encoder. Acesso em: 25 out. 2015.

[12] The Arduino Playground. Disponível em: http://playground.arduino.cc/.


Acesso em: 25 out. 2015.

[13] OGATA, K.; MAYA, P. A.; LEONARDI, F. Engenharia de Controle Moderno.


3ª ed. Rio de Janeiro: Prentice Hall, 1998. 813p.

22

Você também pode gostar