Post

Semana 10 - Grasping com dois dedos

Semana 10 - Grasping com dois dedos

Durante a semana passada, foi concluída a construção do polegar da LEAP Hand. Assim, o foco desta semana centrou-se na programação da mão para realizar grasping com dois dedos, permitindo, pela primeira vez, segurar objetos sem qualquer auxílio externo.

Teste de grasping com um dedo

No post da semana 8, abordou-se o desenvolvimento do nó grasping_node, responsável por detetar a interseção de objetos e ajustar a corrente para evitar que sejam esmagados. No entanto, não foram apresentados testes experimentais que comprovassem esse comportamento. Para colmatar essa lacuna, as figuras abaixo mostram os gráficos de posição, velocidade e corrente para duas condições distintas: primeiro sem obstáculo e depois com obstáculo. Definiu-se uma corrente máxima de 200 mA quando não há obstáculo, permitindo que o dedo se mova livremente com a velocidade desejada, e uma corrente máxima de 100 mA para quando o dedo deteta um obstáculo, garantindo uma interação mais segura e controlada.

Gráficos de posição, velocidade e corrente obtidos

Posições

1 KOhm
Posições sem obstáculo
10 KOhm
Posições com obstáculo

Velocidades

1 KOhm
Velocidades sem obstáculo
10 KOhm
Velocidades com obstáculo

Correntes

1 KOhm
Correntes consumidas sem obstáculo
10 KOhm
Correntes consumidas com obstáculo

Conclusões

A análise dos gráficos apresentados revela a ocorrência de picos de corrente superiores a 100 mA enquanto o dedo se movimenta livremente, sem encontrar obstáculos. No entanto, a certo momento, observa-se que a corrente se estabiliza nos 100 mA, indicando que o dedo detetou a interseção com um objeto e ajustou automaticamente a corrente limite para evitar exercer força excessiva sobre ele. Após a libertação do objeto, registam-se novamente picos de corrente superiores a 100 mA, permitindo que o dedo retome o seu movimento sem restrições.

Teste de grasping com dois dedos

Após as alterações implementadas no código, foram realizados testes de grasping de objetos utilizando dois dedos. No vídeo seguinte, demonstra-se que a manipulação com dois dedos permite segurar um objeto de forma estável, sem que este caia. No entanto, ainda não é possível apresentar os gráficos de posição, velocidade e corrente, uma vez que o código de análise desses dados ainda não foi adaptado para múltiplos dedos.

Link do vídeo

Código desenvolvido durante a semana

Durante esta semana, foram desenvolvidas e implementadas várias melhorias no código, nomeadamente:

  • Desenvolvimento do nó thumb_manager, responsável por receber as informações de posição, velocidade e corrente dos motores associados ao polegar, além de enviar os comandos de corrente limite para o manager_node, permitindo o controlo do torque exercido durante o grasping de objetos;
  • Modificação do nó manager_node para detetar automaticamente quais os dedos ativos;
  • Atualização dos nós middle_manager e thumb_manager para publicarem no tópico set_currents, de forma a transmitirem as correntes desejadas.
  • Alteração do nó manager_node para subscrever o tópico set_currents e enviar as correntes definidas para os motores do dedo correspondente.
  • Alteração do nó set_positions, para permitir o controlo do polegar e a realização de comandos globais para a mão, como hand close e hand open.

Esquema do código desenvolvido

Organização do código desenvolvido
Organização do código desenvolvido
This post is licensed under CC BY 4.0 by the author.