sexta-feira, 12 de abril de 2013

Módulo para o Phantom e Otimização


Esta semana estive novamente à espera de coisas diversas, logo faço código! Neste caso particular estive à volta dos módulos de phantom_control e pressure_cells.

No módulo phantom_control, foi criada uma estrutura que tem todos os principais campos de estado do joystick (posição, ângulos das juntas, estado dos botões, etc). Esta estrutura é depois colocada numa mensagem ROS que neste momento, apenas com este módulo a correr, tem uma frequência de publicação de aproximadamente 990 Hz. É esperado que quando estiverem mais módulos a correr ao mesmo tempo, esta referencia desça. Devido à incapacidade de os drivers de Linux para ter dois dispositivos Fire-Wire vamos ter de usar dois PC's, assim é possível reduzir efeito de baixa de frequência.

Além disso está também à espera de uma mensagem de "Força" para actualizar o force feedback do Phantom. Esta mensagem é um vector de força XYZ.

O módulo pressure_cells foi remexido e optimizado. Tem agora dois parâmetros ROS para no ficheiro de launch definir se vamos publicar as mensagens de virtualização para o RViz e para definir se os pés estão ao mesmo nível. O primeiro parâmetro serve para optimizar a velocidade de processamento deste módulo; o segundo é para as experiências praticas de validação onde temos ambos os pés ao mesmo nível e queremos calcular o centro de pressão geral com as medições de todas as células de carga montadas no robô humanóide. As mensagens dos centros de pressão foram mudadas, agora são apenas um valor de X e Y e existem 3 mensagens a serem publicadas: uma para cada pé (/cop_left e /cop_rigth) e uma para o conjunto (/cop_left_right). As duas primeiras estão a ser publicadas a cerca de 1280 Hz e a ultima à volta de 1030 Hz.

Para a semana, se não houver hardware continuo com o código desta vez no módulo humanoid_control e comunicar com os servomotores.

Sem comentários:

Enviar um comentário