• Nenhum resultado encontrado

A cooperação entre UVMS é um tema ainda pouco explorado na literatura. A modelagem cinemática por helicoides de um sistema de intervenção desse tipo foi um dos casos considerados na análise do Capítulo 4. O cenário em questão utiliza dois UVMS planares com a mesma estrutura cinemática daquele tratado na Seção 7.1. O modelo deste cenário é desenvolvido na Seção C.3.3, e uma visualização deste é mostrada na Figura 58.

O modelo cinemático deste sistema foi descrito em um arquivo XML. Assim, simulações baseadas no framework Kast podem facil- mente instanciar esse sistema de intervenção através do factory method da classe KCFactory.

7.3.1 Posicionamento de uma peça

A tarefa a ser realizada nessa simulação consiste na movimenta- ção de uma peça retangular entre dois pontos como se fosse desconec- tada de um equipamento para ser reconectada em outro. A posição ini- cial da peça é coincidente com a origem do sistema de coordenadas iner- cial e seus eixos estão inclinados30◦ em relação a esse sistema, ou seja

ηp,t=0 = 

0 0 0, 524 T

. Ao final da tarefa, que deve ocorrer em 25s, a postura da peça deverá ser ηp,t=25=



−0, 75 −2 0, 524 T . Diferentes ações são realizadas sobre a peça. Nos primeiros 5s ela deve rotacionar −30◦, alinhando seu referencial com o referencial inercial. A seguir, ela se desloca−2m verticalmente em um período de 10s. Segue-se um movimento horizontal de−0, 75m em um tempo de 5s. Por fim, ela é rotacionada 30◦ na posição final em5s.

Os efetuadores finais dos dois UVMS são posicionados ao longo do eixo x da peça. Suas posturas em relação ao referencial da peça são qr1 =

−2, 03 0 0 T

e qr2 =

−2, 015 0 −3, 142 T . Os veículos se mantém estacionários durante a execução da tarefa em ηv1=  −8, 25 0, 45 −0, 349 T e ηv2 =  7, 45 2, 05 −2, 618 T . A trajetória da peça é descrita pelas variáveis de juntas da ca- deia cinemática do sistema de intervenção qt1, qt2 e qt3. Os veículos são representados pelas variáveis qvi,j, onde i = 1, 2 identifica o veí- culo e j = 1, 2, 3 identifica a junta da cadeia virtual associada a ele. Esse conjunto de variáveis forma a partição primária da equação de restrição. As referências para as variáveis da peça são fornecidas por geradores de trajetória compostos (TrajSequence) agregando instâncias de geradores de trajetórias lineares (TrajLinearPoly) e de valores cons- tantes (TrajConst). Para as demais variáveis são utilizados geradores de trajetória instanciados de TrajConst.

A implementação da simulação segue a sistematização já utili- zada nos cenários anteriores. As variáveis a serem determinadas são as das juntas dos dois manipuladores: qmi,j, i = 1, 2 e j = 1, 2, 3 iden- tificando o manipulador e a variável de junta deste, respectivamente. Novamente, a matriz Ns é quadrada. O passo da simulação é 0, 01,

e o método de integração das velocidades é o de Euler. Foi utilizado o modo de cinemática inversa de malha fechada do componente Gui- dance. Os ganhos da matriz Kpforam definidos como50 para as juntas

translacionais das cadeias relativasrie10 para as suas juntas rotativas.

As trajetórias percorridas pelos efetuadores finais e pela peça são mostradas no gráfico da Figura 59. Na Figura 60 apresentam-se as

posturas do sistema de intervenção ao longo da execução da tarefa. As posturas dos efetuadores finais são traçadas nos gráficos da Figura 61.

Figura 59. Movimento da peça e dos efetuadores finais

x y

O

Figura 60. Movimento dos UVMS durante a execução da tarefa As posições das juntas dos manipuladores e suas velocidades são apresentadas nas Figuras 62 e 63.

Como no cenário anterior, a cadeia forma dois circuitos inde- pendentes, porém com arranjos diferentes da cadeia daquele sistema. Novamente, a implementação da simulação se beneficiou do reuso de componentes de software, bastando derivar uma classe de Uvms para representar o sistema de intervenção. O modelo da cadeia cinemática e a tarefa foram descritos em um arquivo XML, como anteriormente.

(a) (b)

(c) (d)

(e) (f)

Figura 61. Postura dos efetuadores finais ao longo do tempo

Assim como no cenário anterior, os circuitos independentes da cadeia foram definidos em um atributo de KCComposable para que a matriz de rede fosse gerada como foi definida no Apêndice C, possibi-

(a) (b)

(c) (d)

(e) (f)

Figura 62. Variáveis do manipulador 1

litando a depuração do código e verificação de sua correção. Porém, os mesmos resultados dessa simulação foram observados quando foi utili- zada a matriz de circuitos gerada pela instância de KinematicChain.

(a) (b)

(c) (d)

(e) (f)

Figura 63. Variáveis do manipulador 2

7.3.2 Execução de tarefa que exige deslocamento dos UVMS

O primeiro caso desse cenário tratou de uma tarefa onde os veí- culos puderam manter sua posição e orientação. Um segundo caso é

definido de forma que os veículos eventualmente tivessem de abandonar a sua condição estacionária. A tarefa em questão é uma variação da primeira, onde o deslocamento vertical passa a−3, 5m em 17s e o des- locamento horizontal subsequente é de−1, 25m em 7s. O tempo total de execução da tarefa passa então a34s. Na Figura 64 são traçados os deslocamentos da peça e dos efetuadores finais dos UVMS realizados durante a execução da tarefa.

Figura 64. Movimento da peça e dos efetuadores finais

Uma classe derivada de Mission é criada para implementar o mé- todo verifyUpdate que monitore e modifique a cadeia cinemática do cenário de acordo com a necessidade. Cada UVMS tem seu próprio es- tado de operação, que é definido de acordo pelo método. verifyUpdate verifica a proximidade de singularidade das juntas qmi,2 , i = 1, 2 do sistema, onde i identifica o UVMS ao qual o manipulador está vincu- lado.

Inicialmente, ambos UVMS estão em estado estacionário. Ao se detectar a proximidade de singularidade, um UVMS passa ao estado móvel, e então o reparticionamento é feito de forma que as juntasqvi, qmi,1 eqmi,3 passem a ser secundárias, enquanto qmi,2 passa a ser pri- mária, com um gerador de trajetória TrajLinearPoly associado à ela para levar sua posição à um limite de segurança (0, 78rad) em um período de 3s. O retorno ao estado estacionário acontece ao se verificar que a junta qmi,2 está com um valor acima do limite de segurança, onde o reparticionamento de variáveis do UVMS volta ao estado original e os

geradores de referências do veículo são atualizados. A verificação dos estados é feita de forma independente para os dois UVMS.

Na execução da simulação, o UVMS 1 esteve no estado móvel durante o intervalo entre31, 32s e 33, 76s. O UVMS 2 esteve no estado móvel em dois intervalos, o primeiro entre17, 81s e 20, 24s e o segundo entre25, 66s e 28, 09s. O movimento translacional dos veículos durante a execução da tarefa é esboçado na Figura 65.

Figura 65. Translação dos veículos durante a execução da tarefa

As Figuras 66 e 67 mostram as variáveis do UVMS 1. As va- riáveis do UVMS 2 são apresentadas nas Figuras 68 e 69. Os picos de velocidade observados são causados pelo chaveamento de estados. Um estudo para minimizar esse comportamento na troca de estados é analisado em (Simas; Fontan; Martins, 2011).

Verifica-se pela Figura 64 que a tarefa é executada pelos efetu- adores finais de acordo com as definições de movimento da peça e seu relacionamento com os efetuadores. Com o uso do modelo híbrido de estados, foi possível executar a tarefa fazendo os veículos se movimen- tarem apenas em situações onde os manipuladores a eles vinculados estivessem próximos a singularidades. Apesar das descontinuidades no movimento das juntas, observa-se que a trajetória é contínua.

Em relação à implementação, fez-se apenas a modificação do componente de missão utilizado de forma que o método verifyUpdate

(a) (b)

(c) (d)

(e) (f)

Figura 66. Variáveis do manipulador do UVMS 1

fosse definido para tratar da verificação ocorrência de eventos de mu- dança de estados e a adequação da cadeia cinemática e geradores de trajetória para quando o estado de cada veículo fosse modificado.

(a) (b)

(c) (d)

(e) (f)

Figura 67. Variáveis do veículo do UVMS 1

7.4 DOIS UVMS COM DOIS MANIPULADORES EM COOPERA-