Que tal montar um robô que tem uma forma toda especial para se deslocar? Ao invés de rodas, esteiras ou mesmo "patas" para se locomover, este robô utiliza garras e o próprio corpo para realizar seus movimentos. Ele não foi desenvolvido para andar no chão, mas sim nas "alturas". Um excelente projeto para demonstrações em feiras, eventos e encontros.
Márcio José Soares
https://www.arnerobotics.com.br/
Nota: Este artigo saiu numa Mecatrônica Fácil de 2003
COMO ELE SE MOVIMENTA
Os movimentos do Robô Alpinista são muito diferentes dos considerados "normais" para um robô. Na maioria dos casos empregamos rodas, esteiras ou até mesmo "pernas": Porém para estas aplicações, estaríamos nos referindo a robôs cujo deslocamento seria feito no chão. A proposta do robô alpinista é um pouco diversa e, diríamos, até um tanto inusitada.
Para se locomover o robô necessita de um cabo, seja na vertical ou na horizontal, e precisa ainda estar 'fora do chão", ou seja, deve estar "nas alturas" (mas nem tanto). Ele utiliza duas garras (uma superior e outra inferior) e uma "junta" central para executar quatro movimentos básicos: agarrar, soltar, dobrar e esticar. A sequência com que estes movimentos são executados em cada parte do robô (garra superior e inferior ou junta) determinará a direção que o mesmo seguirá.
As garras e a junta são, na verdade, servos de aeromodelo. Com estes, conseguimos boas alavancas com excelente precisão. Para os leitores que montaram alguns projetos publicados na revista (figura 1) como o Robô OCTA1, Robô RM-1, Robô ADR-1 ou Robô Inseto, o uso de servos não é nenhuma novidade.
Nas figuras "2A" a "2F" temos a sequência dos movimentos necessários para que o robô realize um "passo". Na figura 2A o robô é demonstrado "esticado" e com as duas garras fechadas, segurando o cabo. Este é o estado de descanso do robô. A figura 2B ilustra a garra inferior aberta e a junta esticada. A figura 2C exibe o robô com sua junta dobrada e a garra inferior aberta. Neste instante, o robô avança alguns poucos centímetros na direção da garra superior. Na figura 2D o robô é apresentado com a junta dobrada, mas com a garra inferior fechada. Neste momento ele busca apoio para executar o movimento de esticar. Na figura 2E o robô abre a garra superior (ainda dobrado) e na figura 2F o robô estica sua junta (garra superior aberta). Assim, ele avança mais alguns centímetros em direção da garra superior. Agora o robô precisa fechar a garra superior. Vemos que ele retornou ao estado inicial. Como podemos observar, a velocidade do robô não é alta.

Para que o robô retorne um "passo", ou seja, avance na direção da garra inferior, a sequência deve ser invertida. Na tabela 1 o leitor tem a análise da sequência necessária para mover o robô em ambos os sentidos:
Como pode ser percebido pela tabela 1, de acordo com o sentido desejado, devemos inverter apenas o abrir e fechar das garras. O "dobrar" e "esticar" da junta é feito sempre na mesma ordem.

CIRCUITO
Na figura 3 temos o circuito elétrico do nosso robô. Ele é muito simples, pois utiliza um microcontrolador "Embedded" Basic Step 2K, da Tato Equipamentos Eletrônicos (www.tato.ind.br), 3 servos de aeromodelo, um Cl MAX232 e alguns capacitores.
O microcontrolador "Embedded" Basic Step 2k realiza todo o controle do robô. É ele quem faz a interface entre os servos e o PC (LOGO).
O componente MAX232 é um "drive" para "casar" o nível do sinal da porta RS-232 do PC com o nível TTL do Basic Step 2K. Os capacitores são componentes complementares do MAX232 e alguns deles podem parecer em princípio invertidos, mas não estão. As ligações estão corretas. Eles são dispostos de maneira a gerar a partir dos 5 V presentes na saída "TX" de comunicação do Basic Step 2k, tensões +10 V e —10V compatíveis com as portas seriais (RS-232) dos PCs.
E para o leitor que possui o Basic Step 1, apresentamos na figura 4 um circuito que pode ser utilizado. "Os testes foram satisfatórios, porém a melhor performance foi obtida com o Basic Step 2K que, devido a sua velocidade e maior número de recursos em sua linguagem, permite um controle maior sobre os servos e a comunicação com o PC. De qualquer forma, achamos conveniente demonstrar ao leitor as duas versões, porém a montagem passo-a-passo neste artigo será feita sobre a versão com o Basic Step 2k. A versão com Basic Step 1 tem caráter experimental e sua montagem deve ser feita levando isso em consideração.
MONTAGEM ELÉTRICA
Para a montagem elétrica o leitor poderá usar o "lay-out" fornecido na figura 5. A montagem em uma matriz de contatos também é possível (esta foi a escolhida para os testes do nosso protótipo) e na figura 6 temos um exemplo para a disposição dos componentes na mesma (montagem em um pront-o-board).

Uma outra alternativa é a montagem do circuito em uma placa do tipo padrão. Seja qual for a escolha do leitor, ele deverá ter muito cuidado ao ligar os componentes polarizados como o próprio microcontrolador, MAX232 e os capacitores eletrolíticos (eles são polarizados). Uma inversão poderia fazer com que o circuito não funcionasse corretamente ou ainda danificar irremediavelmente algum componente.
Para o leitor que optar pela montagem com o Basic Step 1, aconselhamos o uso da placa Step LAB. Na figura 7 temos a foto da montagem do nosso protótipo na placa Step LAB.

MONTAGEM DOS CABOS
Para a operação do robô alpinista são necessários dois cabos. O primeiro ligará a "placa de controle" com os servos, o que pode ser visto na figura 8. O segundo ligará a. placa ao PC, (figura 9). Ambas as montagens são simples. Na figura 10 o leitor tem um detalhe importante na confecção do cabo de comunicação placa/servos. Este foi montado com 4 metros de cabo fie que pode ser obtido no mercado especializado com facilidade. Ele foi preparado para ficar com apenas cinco "vias" (fios). Os três primeiros fios levaram o sinal para cada servo e os dois últimos distribuirão o VCC e o terra (GND), respectivamente, para os servos. Com esta configuração é possível eliminar duas "vias", aliviando o peso do cabo para o robô.

O uso de uma "barra de pinos" ajudará na ligação com os servos e uma matriz de contatos (se este for o caso). Porém na falta dela, é possível soldar diretamente os fios à placa e também aos servos. Tenha cuidado para não inverter nenhuma ligação e procure isolar as ligações "aéreas", se estas existirem, com "termocontrátil" ou mesmo fita isolante.
MONTAGEM MECÂNICA
A montagem mecânica não requer materiais específicos ou difíceis de se encontrar. Na figura 11 ternos uma visão das peças utilizadas na montagem mecânica. Mais uma vez utilizamos materiais alternativos, facilmente encontrados em nossas gavetas, bancada, etc.: são parafusos pequenos de placa de circuito impresso, um pequeno pedaço de plástico com 3 mm de espessura, arame de aço com 2 mm de diâmetro, uma chapa para computadores (aquelas utilizadas para fechar as aberturas deixadas por. uma placa retirada), dois pedaços de mangueira de silicone, entre outros.

Na figura 12 temos o "lay-out" do robô com as medidas das peças, isso para facilitar a montagem. E extremamente aconselhável que o leitor junte todas as peças necessárias, realize as dobras e furações na peça metálica, monte os suportes para o cabo com os pedaços de circuito impresso e o arame, etc. A lista de material contém tudo o que o leitor precisará.
A figura 13 mostra o "braço da junção", feito com uma chapa muito conhecida e utilizada em computadores. Muitos leitores com certeza têm uma em casa, e para aqueles que não a tiverem, é possível consegui-las em oficinas de manutenção, muitas vezes sem custo algum. Siga a orientação dada no "layout" para as dobras e furação desta peça.

Na figura 14 é possível observar os suportes externos para o cabo. A função destas peças é impedir que o cabo "escape" das garras, quando estas se abrem. Desenvolvemos as mesmas com dois pedaços de 20 mm x 20 mm de placa de circuito impresso virgem e dois pedaços de arame de 2 mm de diâmetro dobrados em forma de "U" soldados as placas. Siga as medidas dadas no "layout" (figura 12) e a figura 14 para fazer as peças de maneira correta.

Para unir os servos da garra inferior com o servo da junção, formando o conjunto "inferior" do robô, utilizamos um pequeno pedaço de plástico de 3 mm de espessura com 15 mm x 20 mm. Esta peça poderá também ser montada em madeira "compensada" de mesma espessura ou mesmo com dois pedaços iguais de placa de circuito impresso (use dois pedaços para aumentar a resistência mecânica da peça).
Monte a peça metálica de computador em uma das alavancas do servo, como demonstrado na figura 15 (não esqueça de realizar as dobras e furações antes!). Não é necessário utilizar parafusos muito grandes. O uso de porcas nestes parafusos ajuda na resistência mecânica.

Parafuse o servo da garra superior ao braço da junção (figura 16). O uso de parafusos com porcas, é a melhor opção.

Monte (figura 17) os parafusos de 40 mm de comprimento nas alavancas de comando dos servos que servirão como garra (são apenas duas). O uso de arruelas ajuda na fixação e firmeza do conjunto. Insira um pedaço de 40 mm de mangueira de silicone no parafuso. Este pequeno pedaço de mangueira servirá para aumentar a aderência com o cabo e não deve ser omitido. Esta mangueira é facilmente obtida em lojas de modelismo. Caso o leitor não disponha de uma casa especializada próxima a seu bairro ou mesmo cidade, poderá substituir a mangueira por uma outra desde que que a mesma prenda de maneira firme no parafuso e não seja do tipo "lisa". Uma dica é usar borracha tipo "tripa de mico" comercializada em farmácias.

Fixe a alavanca de comando com a peça metálica de computador ao servo da junta (figura 18). Monte o servo da junta ao servo da garra inferior com o auxílio da peça plástica, conforme a figura 19. Parafuse uma das alavancas de controle do servo com parafuso no servo da garra inferior (figura 20).



Monte os suportes externos nos servos da garra superior e inferior. Lembre-se que a base do "U" (arame) deve ficar para o mesmo lado do parafuso (garra). Veja a figura 21.

PROGRAMAÇÃO
Para controlar o Robô Alpinista são necessários dois programas: um para o microcontrolador (ALPINISTA.BAS) e outro para o PC (ALPINISTA.LGO).
O código-fonte ALPINISTA.BAS deve ser compilado e gravado no microcontrolador Basic Step 2K com o auxílio do compilador BASCOM. Este compilador pode ser obtido gratuitamente na página da Tato Equipamentos Eletrônicos, www.tato.ind.br. O código-fonte ALPINISTA.LGO deve ser instalado no computador que controlará o robô. Este programa necessita do Super Logo para rodar. Para conseguir também gratuitamente o interpretador LOGO, acesse a página www.nied.unicampig. (*)
(*) Disponível na época em que o artigo foi elaborado.
COMO OS PROGRAMAS FUNCIONAM
O programa ALPINISTA.LGO (computador) funciona da seguinte maneira: A função principal "Robô" monta a tela com os botões (comandos válidos), conforme a figura 22. Ao "clicar" em um dos botões, o LOGO envia uma "string" de comando válida via porta serial para o Step 2K. Após o envio da "string", o LOGO aguarda um byte de retorno, que confirma o recebimento do comando.

São três os comandos possíveis na tela; Subir, descer e parar. Durante o uso é aconselhável "clicar" no botão da direção desejada, e antes de mudá-la, utilizar o botão "Parar". A figura 23 exibe o fluxograma deste programa.

Na tabela 2 inserimos os comandos enviados pelo PC, através do LOGO, assim como a "string" referente a este. Esses comandos são transparentes para o usuário, pois como foi explicado, com a sequência correta dos mesmos podemos fazer o robô se mover em uma ou em outra direção.

O funcionamento do programa ALPINISTA.BAS é bem simples. Ele inicia as variáveis indispensáveis e configura o Basic Step 2K. As interrupções do Step 2K são ligadas, pois a função "SERVO" usa um dos "TIMERs" do microcontrolador. A comunicação serial também utiliza interrupções, pois é do tipo hardware (o Basic Step 2K possui 2 tipos de comunicação serial: tipo hardware feita em pinos específicos - PDO e PD1 - e tipo software feita em qualquer pino).
Após iniciar o "ambiente" de trabalho, o Step 2K aguardará uma "string" de comando, fará a análise e se for válida, executará o comando solicitado, mudando a posição de um dos servos, dependendo do comando recebido. Após a alteração, o Step 2K envia um byte para avisar o programa LOGO que o comando foi recebido. Com isso, temos um sincronismo entre recepção e transmissão. Na figura 24 observamos o fluxograma do programa ALPINISTA.BAS.

TESTE E USO
O Robô Alpinista tem um consumo de corrente pequeno, mas, infelizmente, inadequado para o uso com pilhas. Pensando nisso, o leitor deverá empregar uma fonte de 5 volts DC regulada (para a versão com Basic Step 1, ele poderá utilizar a própria fonte presente na placa Step LAB). Na figura 25 encontramos o circuito e o Iayout de uma pequena fonte com capacidade de fornecer 5 volts com correntes de até 1 ampère. A montagem da mesma é desnecessária, caso o leitor já possua uma fonte em sua bancada com as características descritas.
Após conferir toda a montagem (isto pode ajudar muito!) e programar o Step 2K e o PC, chegou a hora do teste. Ligue a alimentação do Step 2K e verifique as posições da junta e da garra. Muito provavelmente elas parecerão fora do esperado. Desligue o conjunto e desparafuse as alavancas de comando dos servos e arrume de acordo com o seguinte:
• garra inferior fechada;
• garra superior fechada;
• junta esticada.
Obs: O funcionamento do programa ALPINISTA.BAS para Basic Step 1 é análogo ao descrito 'Dará o STEP 2K. O leitor notará que a diferença entre as duas linguagens é bem pequena, e perceberá também que os recursos do STEP 2K são maiores, .o que 'permitiu um programa mais simples e enxuto. O uso de um ou outro, dependerá exclusivamente de qual microcontrolador o leitor possuir em sua bancada.
Feita a "arrumação" dos servos, prosseguiremos com os testes. Amarre um cabo de aço, do tipo utilizado em câmbio de bicicleta, por exemplo, em um ponto elevado qualquer como uma prateleira alta, um armário, porta, janela, etc. Lembre-se apenas de manter uma certa distância para que o robô possa se mover livremente, sem esbarrar em nada.
Com o robô desligado, passe as garras de maneira que elas possam segurar o cabo. Este mesmo cabo deve ser passado internamente nos suportes externos. Ligue o robô para que ele segure o cabo. Solte-o, e execute os comandos no programa do PC (subir, descer, parar, etc.).
Se desejar que seu robô vá mais "alto" (o limite do cabo de comunicação entre a placa de controle e os servos, é de quatro metros), poderá usar uma corda fina de "nylon", daquelas utilizadas para fazer varais domésticos. Porém, essas cordas são lisas e será preciso aumentar a aderência das garras. Isso pode ser obtido com um pedaço de espuma fina colada na lateral dos servos que atuam como garra.
MUDA COM PROBLEMAS
A seguir, listamos alguns pontos observados em nosso laboratório e que com certeza ajudarão na busca de problemas, se estes existirem:
Meu robô parece não funcionar, ele não se move.
Possíveis soluções:
• Verifique se a alimentação do conjunto está OK. Neste tipo de projeto não se deve utilizar pilhas, apenas fonte de alimentação.
• Verifique se o cabo de comunicação entre a placa e o PC está conectado.
• Verifique se sua porta de comunicação está habilitada. Qualquer mensagem de erro do LOGO com relação à porta pode indicar uma falha na habilitação.
• Verifique o cabo de comunicação entre a placa e os servos.
Meu robô não segura com firmeza o cabo, e após soltá-lo, ele escorrega.
Possíveis soluções:
• Altere a posição da alavanca de comando dos servos da garra de maneira que as mesmas exerçam maior pressão sobre o cabo.
• Altere no programa ALPINIS TA.BAS a posição de "fechar' das garras para uma melhor precisão.
• Aumente a espessura do cabo utilizado.
• Cole na lateral dos servos usados como garra uma espuma fina para ajudar na aderência da garra.
Meu robô escorrega quando se movimenta.
Possíveis soluções:
• Veja a dica anterior, as soluções possíveis são as mesmas.
Meu robô parece estar invertido, em vez de abrir as garras ele fecha.
Possíveis soluções:
• Troque internamente no programa ALPINISTA.BAS os valores para posição dos servos até obter o resultado desejado.
• Verifique se o lado utilizado do robô está correto (veja as várias figuras no artigo). O cabo deve estar do lado esquerdo do robô, olhando-o de cima.
Meu robô parece travar no meio do caminho.
Possíveis soluções:
• Se o leitor estiver utilizando o Basic Step 1, diminuía a velocidade de comunicação entre o Basic Step e o LOGO. Lembre-se que a alteração deverá ser feita tanto no programa ALPINISTA.BAS quanto no programa ALPINISTA.LGO.
• Se o leitor notar o problema com o Step 2K, a solução é a mesma. Diminua a velocidade de comunicação.
• Verifique o cabo de comunicação entre o PC e o Step 2K.
Meu robô parece estranho, ao receber um comando todos os servos parecem operar ao mesmo tempo.
Possíveis soluções:
• Este efeito só foi observado em nosso laboratório usando-se o Basic Step 1. O Step 1, quando recebe os comandos do PC, deixa de operar por alguns instantes e isso permite o relaxamento da posição dos servos. Para minimizar isso, o leitor poderá fazer o seguinte:
• Insira um pedaço de espuma fina entre o servo e o cabo (a espuma pode ser fixada com auxílio de fita dupla face).
• Tente usar um cabo mais flexível.
• Verifique o peso do conjunto, principalmente o cabo.
Todos os testes acima só podem ser considerados válidos se todas as etapas da montagem forem realizadas com cuidado e, principalmente, se todas as dicas sugeridas no artigo forem seguidas corretamente.


CONCLUSÃO
Neste artigo, o leitor aprendeu de maneira prática que um robô pode assumir várias formas, e com muita simplicidade. A natureza pode ser uma maravilhosa fonte de inspiração. Procure em parques e praças por "pequenos seres" e observe atentamente seus movimentos. Você descobrirá um mundo fascinante de movimentos e configurações possíveis, e repleto de "boas ideias". Boas escaladas e até a próxima!























