Академический Документы
Профессиональный Документы
Культура Документы
Setembro de 2002
Volume 10, número 5
Criando um modelo de plataforma Stewart usando o SimMechanics
por Natalie Smith e Jeff Wendlandt
Resumo
O SimMechanics, em conjunto com o Simulink e o MATLAB, permite que os engenheiros
modelem sistemas mecânicos complicados, simulem e analisem os modelos e desenvolvam
controladores para o sistema mecânico. Neste exemplo técnico, examinamos como usar o
SimMechanics para modelar componentes físicos, sintetizar controladores e simular o
desempenho do circuito fechado de uma plataforma Stewart, um sistema de posicionamento
de seis graus de liberdade. As plataformas Stewart são
usado em muitos aplicativos para posicionar objetos.
Vários pedidos da Plataforma Stewart
A plataforma Stewart foi originalmente projetada em 1965 como um simulador de voo e ainda
é comumente usada para esse fim. Desde então, uma grande variedade de aplicações se
beneficiou desse design. Algumas das indústrias que usam o design da plataforma Stewart
incluem tecnologia aeroespacial e de defesa, automotiva, transporte e máquinas-ferramenta,
que usam a plataforma para executar simulação de voo, lidar com manutenção de veículos e
projetar mecanismos de guindaste. O projeto da plataforma Stewart também é usado para o
posicionamento de antenas e telescópios de comunicação via satélite e em aplicações como
construção naval, construção de pontes, transporte e plataforma de perfuração no Lunar
Rover.
Especificações da Plataforma Stewart
A plataforma Stewart é um exemplo clássico de um projeto mecânico usado para controle de
posição. É um mecanismo paralelo que consiste em uma placa superior do corpo rígido, ou
placa móvel, conectada a uma placa de base fixa e é definida por pelo menos três pontos
estacionários na base aterrada conectada a seis pernas cinemáticas independentes.
Normalmente, as seis pernas são conectadas à placa base e à placa superior por juntas
universais em paralelo localizadas nas duas extremidades de cada perna. As pernas são
projetadas com uma parte superior do corpo e uma parte inferior do corpo que podem ser
ajustadas, permitindo que cada perna tenha comprimento variado. Veja a imagem à direita
O design da plataforma Stewart suporta uma alta capacidade de carga. Por causa do projeto,
as pernas transportam forças de compressão e tensão e não sucumbem à força de flexão
indesejável encontrada em outros projetos. As seis pernas estão espaçadas ao redor da placa
superior e compartilham a carga na placa superior. Isso difere dos projetos em série, como
braços de robô, onde a carga é suportada por um longo momento.
Definindo um problema de controle para a plataforma Stewart
O problema abordado neste exemplo é encontrar um método para acionar as forças das seis
pernas para posicionar corretamente a placa móvel da plataforma Stewart, de acordo com a
trajetória desejada. Para este problema em particular, recebemos uma posição e orientação
desejadas da placa móvel em relação à placa de base fixa. Esses valores desejados podem
mudar com o tempo. Desejamos controlar o modelo de planta não linear da Plataforma
Stewart e ter entradas e saídas para fazer isso. As forças das seis pernas são as entradas na
planta, enquanto as saídas são os comprimentos e as velocidades das seis pernas. Nossa tarefa
é criar uma estratégia de controle e design que faça com que a placa superior siga a trajetória
desejada. Precisamos fazer isso atuando as seis forças das pernas, sentindo os comprimentos e
as velocidades das pernas e lendo a trajetória desejada.
Construindo um modelo de plataforma Stewart usando o SimMechanics
Neste artigo, demonstraremos como o SimMechanics, Simulink e MATLAB podem ser usados
para modelar e simular o comportamento da plataforma Stewart. O SimMechanics será usado
para modelar os componentes mecânicos do sistema, e o Simulink será usado para modelar o
controlador. Usando as bibliotecas predefinidas do SimMechanics, poderemos modelar a
Stewart Platform sem precisar derivar explicitamente as equações de movimento, que podem
ser um processo tedioso e propenso a erros.
Modelando os componentes físicos com o SimMechanics
Primeiro, construiremos o modelo da planta usando o SimMechanics. Os componentes
mecânicos da plataforma Stewart consistem em uma placa superior, uma placa inferior e seis
pernas conectando a placa superior à placa inferior. O sistema geral tem seis graus de
liberdade. Cada subsistema de pernas contém dois corpos conectados em conjunto com uma
junta cilíndrica. A parte superior do corpo se conecta à placa móvel superior usando uma junta
universal, e a parte inferior do corpo se conecta à placa base usando uma segunda junta
universal.
Usando os blocos SimMechanics Body, modelamos os corpos rígidos da placa base, placa
superior e pernas superior e inferior. Em seguida, conectamos os corpos usando os blocos
SimMechanics Joint.
A atuação linear da plataforma Stewart é realizada variando os comprimentos das pernas. Para
mover as pernas, usamos um bloco de atuador conjunto da Biblioteca de sensores e atuadores
no SimMechanics. Este atuador de junta é usado para controlar o grau de liberdade de
translação da junta cilíndrica. (O grau de liberdade rotacional é irrestrito.) Um sinal de força
será criado e usado para atuação, em vez de usar o deslocamento. Isso nos permite criar um
modelo mais realista da plataforma Stewart, onde atuadores hidráulicos podem ser usados
para aplicar força entre as pernas superior e inferior. Também estamos detectando o
comprimento da perna com um bloco de sensor comum da Biblioteca de Sensores e Atuadores
para extrair a posição e a velocidade, que serão usadas pelo controlador.
Criando um modelo de plataforma Stewart usando o SimMechanics ( continuação )
Definindo a geometria Usando um script de arquivo M O uso de scripts de arquivo M e blocos
de biblioteca personalizados é uma técnica poderosa no SimMechanics que permite criar
modelos mecânicos complicados. Nós demonstramos essa técnica neste exemplo.
Depois de criar os componentes físicos do modelo da plataforma Stewart com o
SimMechanics, precisamos definir a geometria específica em sua configuração inicial e os
parâmetros dinâmicos da plataforma Stewart. Essas definições de variáveis serão escritas em
um script básico do MATLAB e referenciado nas caixas de diálogo dos blocos que usamos para
construir o modelo SimMechanics.
A seguir, permuta a matriz dos pontos superiores, para que o índice nos pontos superiores e
inferiores se refira aos pontos de conexão de uma única perna. Os pontos no sistema de
coordenadas da placa superior também são definidos. Os vetores de perna e vetores de perna
unitários são calculados.
onde R é a matriz de rotação que relaciona a orientação da placa superior em relação à placa
inferior, Pt, i é o ponto de fixação da perna i na placa superior em relação ao sistema de
coordenadas da placa superior, P é a posição da placa superior com em relação à placa
inferior, Pb, i é o ponto de fixação da perna i na placa inferior em relação ao sistema de
coordenadas da placa inferior e ln, i é o comprimento nominal da perna i. O subsistema de
trajetória da perna e todos os outros blocos desse subsistema implementam essa equação
para cada uma das seis pernas.
Podemos desenvolver controladores de baixo nível mais sofisticados, mas primeiro precisamos
linearizar sobre um ponto de equilíbrio.
Criando um modelo de plataforma Stewart usando o SimMechanics ( continuação )
Linearizando o modelo
Agora, extraímos um modelo linear da Stewart Platform para que possamos usar técnicas mais
poderosas de projeto de controle linear, como as encontradas na Caixa de ferramentas de
análise e síntese µ.
Primeiro, precisamos encontrar o ponto de equilíbrio para o nosso modelo não linear. Fazemos
isso extraindo as forças de equilíbrio de cada perna que mantém a plataforma Stewart
estacionária. Essas são as forças que estão sendo aplicadas quando o sistema está no estado
de repouso inicial. Para fazer isso, primeiro extraímos o modelo da planta em um novo modelo
do Simulink e, em seguida, definimos a propriedade do bloco do atuador como movimento e
definimos a posição, a velocidade e a aceleração para zero. Também definimos o bloco Sensor
para cada perna para extrair a força computada. Para encontrar o ponto de equilíbrio em que
a força líquida que atua no modelo é zero, precisamos alterar o parâmetro Analysis Mode.
sim (' StewartPlatformEquilibrium '); u = forças ';
Agora, estamos prontos para extrair modelos lineares. Para linearizar o modelo próximo ao
ponto de equilíbrio, podemos usar o comando linmod apenas no modelo da planta:
[ A, B , C, D] = linmod (' StewartPlatformPlant ', [], u);
Isso gerará um modelo de espaço de estado LTI a partir de um modelo SimMechanics para ser
usado como entrada na Control Systems Toolbox e nos comandos µ-Analysis and Synthesis
Toolbox que geram modelos de controlador.
O comando de linearização retorna um sistema LTI com o mesmo número de estados que o
número de estados na árvore do sistema mecânico (52 neste caso). Como esse modelo é
fechado, o número de estados independentes é menor (12 neste caso). Usamos a função
minreal para obter a realização mínima da planta com 12 estados:
[ A, B , C, D] = minreal (A, B, C, D);
Essas são as matrizes de espaço de estado que usaremos para projetar o controlador para o
modelo da Stewart Platform.
Projetando o controlador multivariável
Agora usamos o Control System Toolbox e o µ-Analysis and Synthesis Toolbox para sintetizar
um controlador robusto e multivariável para a Plataforma Stewart. Os detalhes do design, que
não incluímos aqui, podem ser encontrados no arquivo StewartMVController.m. Você pode
simular a Stewart Platform com o controlador multivariável alterando o subsistema
configurável do controlador para usar o controlador H_inf.
Simular e visualizar o modelo
Agora que modelamos nosso sistema com Simulink e SimMechanics, podemos validar o design
simulando o sistema. Iniciamos a simulação selecionando Simulink e Iniciar na barra de menus
da janela do modelo. Durante a simulação, podemos visualizar sinais com o bloco Scope. O
primeiro gráfico em nosso escopo mostra os valores x, ye z da posição do bloco Body
representando a placa superior se movendo ao longo do tempo à medida que o modelo
simula. O segundo gráfico mostra a diferença entre o valor desejado dos comprimentos das
pernas calculado no subsistema Trajetória das pernas e o valor real dos comprimentos das
pernas mudando ao longo do tempo. O terceiro gráfico mostra a força em cada perna durante
a simulação.
As opções de gráficos Virtual Reality Toolbox ou MATLAB podem ser usadas para criar
animações tridimensionais para sistemas projetados no SimMechanics. Qualquer uma das
ferramentas pode ser usada para analisar os resultados numéricos que quantificam o
movimento do seu sistema mecânico. Vamos ver a animação básica fornecida pelos gráficos do
MATLAB. A guia Visualização nas Configurações do ambiente mecânico fornece duas opções
para representar as formas de cada
corpo: elipsóides equivalentes e cascos convexos. Elipsóides equivalentes são a forma do
corpo com base em suas propriedades de massa e posição de inércia, e cascos convexos são a
forma do corpo com base em seus sistemas de coordenadas.
Depois de selecionar as formas que queremos representar os corpos, solicitamos que o
SimMechanics desenhe a representação animada durante a simulação. Agora podemos
simular o modelo. A visualização de nosso modelo durante a simulação facilita a visualização
de que nosso modelo simula mais rapidamente do que a hora do relógio em um PC padrão.
Uma maneira mais realista de visualizar o modelo pode ser feita usando a Caixa de
ferramentas de realidade virtual. A Caixa de ferramentas de realidade virtual usa a VRML
(Virtual Reality Modeling Language) para criar e preencher mundos virtuais com corpos
definidos pelo usuário. A maneira mais simples de usar a Caixa de ferramentas de realidade
virtual com o SimMechanics é selecionando Caixa de ferramentas de realidade virtual em vez
de gráficos MATLAB na guia Visualização das configurações do ambiente mecânico. Isso
fornecerá as mesmas opções para formas de corpo disponíveis para gráficos do MATLAB. Com
a Caixa de ferramentas de realidade virtual selecionada, seu visualizador VRML padrão será
aberto, mostrando uma representação para a posição inicial do modelo.
Também é possível criar ou importar uma cena VRML da plataforma Stewart e conectá-la ao
nosso modelo Simulink e SimMechanics usando os blocos da Caixa de ferramentas de
realidade virtual.
Direções futuras
Este artigo investigou a Stewart Platform e como criar um modelo do controlador e dos
componentes mecânicos usando o SimMechanics. O SimMechanics facilitou a construção de
um modelo hierárquico da planta mecânica e a modificação das configurações do modelo. O
modelo foi aparado e linearizado usando a funcionalidade de linha de comando,
demonstrando que é fácil vincular o modelo aos produtos de design de controle avançado
MATLAB. Mais importante, este exemplo demonstrou como a modelagem da planta, a síntese
do controlador e a simulação em malha fechada podem ser executadas em um ambiente.
Existem outros componentes da plataforma Stewart não explorados neste exemplo, como
motores lineares, chaves fim de curso e lógica crítica de segurança. Essas tarefas podem ser
facilmente executadas usando Simulink, Stateflow, SimMechanics e SimPowerSystems.
Os arquivos necessários para executar esta demonstração podem ser baixados em:
www.mathworks.com/matlabcentral/fileexchange/Files.jsp?fileId=2334
Para encontrar mais sobre os produtos mencionados no presente artigo , visita :
MATLAB
Simulink
SimMechanics
SimPowerSystems
Caixa de ferramentas de realidade virtual
The MathWorks , Inc. Marcas comerciais Política de privacidade