sexta-feira, 17 de fevereiro de 2012

7) Montagem do robô


7.1 Cabeamento

Considerando que o objetivo deste projeto é simplificar ao máximo a montagem do robô, optou-se por utilizar o computador para gerar os pulsos que movimentarão os motores de passo e transmitir esses pulsos pela porta paralela. Esse esquema implica, pelo menos para esta versão do projeto, que o robô deve ter um cabo conectado a ele.

Nos testes realizados, os melhores resultados foram obtidos mantendo o módulo de interface próximo ao computador e conectar o módulo de interface com o robô através de um cabo flat (Figura 22). O módulo de interface precisa de um cabo de impressora para receber os pulsos da porta paralela. Se o módulo de interface for colocado diretamente no robô, então o cabo de impressora teria que ser conectado ao robô. Isso não é recomendado por dois motivos: O cabo de impressora é um cabo blindado, grosso e pesado, portanto conecta-lo ao robô vai interferir muito com a movimentação dele. Já um cabo flat é muito mais leve, mais flexível e interfere muito menos. Além disso, como citado antes, os sinais enviados pela porta paralela têm uma potência muito baixa, é por isso que o cabo de impressora precisa ser blindado. Isso limita muito o comprimento máximo que um cabo de impressora pode ter. A partir de certo comprimento, começa a haver perda de sinal.


Figura 22: Cabeamento entre os módulos

Esse problema de perda de sinal é muito reduzido entre o módulo de interface e o módulo de potência, porque os sinais que saem do módulo de interface são muito mais estáveis e com uma potência muito maior. Então é possível transmitir esses sinais com um cabo sem blindagem, como o cabo flat e sem tanta limitação de comprimento. Isso dá maior liberdade de movimento ao robô.

7.2 O chassis

A primeira idéia foi utilizar caixas de drives de cd para fazer o chassis do robô porque é muito fácil conseguir drives de cd sucateados (figura 23). Inclusive foi montada uma primeira versão do robô usando esse tipo de caixa (Figura 26). Ela tem dimensões apropriadas para acomodar os motores, rodas, circuito de potência e até uma bateria para funcionar como fonte de alimentação. O maior problema dessas caixas é que o metal é extremamente difícil de furar com furadeiras do tipo hobby. Então, caso uma furadeira vertical mais robusta não esteja disponível, é melhor conseguir o chassis do robô em outra fonte. Foi obtido um bom resultado com uma caixa de plástico rígido retirada de um HD (hard disk) externo sucateado (figura 24). Uma outra opção que foi tentada com ótimos resultados foi encomendar uma caixa de alumínio em uma empresa que produz perfilados de alumínio. O custo foi menor do que o esperado e o resultado ficou muito bom (figura 27).

Figura 23: Caixa de um drive de cd
Figura 24: Caixa de um HD externo sucateado
  
7.3 O layout das rodas

Ao construir um robô que se movimenta com rodas precisamos considerar como será feito o sistema de direção do robô. Existem muitas maneiras mover e direcionar um robô. Talvez a mais simples de ser implementada seja o Sistema de Direção Diferencial (SDD) que consiste em montar duas rodas alinhadas no mesmo eixo, mas com motores independentes para cada uma. Controlando a velocidade de rotação da cada roda é possível controlar a direção do robô. Se a intenção é que o robô ande em linha reta, as rodas devem girar com a mesma velocidade. O problema do SSD, é que pequenas variações na velocidade das rodas provocam erros cumulativos na trajetória, mas é aí que os motores de passo levam vantagem sobre os motores DC. Se forem usados motores iguais nas duas rodas, mesmo que alguns passos tenham uma variação angular ligeiramente diferente, esses erros são compensados nos passos seguintes. Por exemplo, um motor de 48 passos por volta tem uma variação angular de 7,5º por passo. Pode ocorrer que um ou outro passo tenha uma variação angular ligeiramente diferente, mas ao final de 48 passos o motor terá girado exatamente 360º. Então, desde que o motor não perca passos, os erros não são cumulativos.

Para fazer curvas usando o Sistema de Direção Diferencial basta diminuir a velocidade de rotação ou parar completamente uma das rodas. Então para fazer uma curva à direita, a roda da direita que deve parar ou diminuir sua velocidade e para virar à esquerda, é a roda da esquerda que deve girar mais devagar que a roda da direita. Quanto maior for a diferença de velocidade entre as duas rodas, mais fechada será a curva. Inclusive existe a opção de fazer com que as rodas girem em sentido inverso uma em relação à outra e nesse caso o robô gira em torno de um ponto que está a meia distância entre as duas rodas. Desta forma, nenhum mecanismo de direção é necessário, o que simplifica bastante o projeto.

Existem várias opções de layout para implementar esse sistema. A Figura 25 mostra as principais. A opção (a) é chamada de layout em cruz. As rodas de tração ficam no meio das laterais do robô. No centro da frente e da traseira ficam rodízios que não interferem com o movimento, apenas fornecem pontos de apoio. A principal vantagem do layout em cruz em relação aos outros dois, é que permite que o robô gire em torno de seu centro geométrico quando as duas rodas de tração rodam em sentido inverso. Com os outros dois layouts o giro não será em torno do centro do robô, mas têm a vantagem de permitir um melhor aproveitamento do espaço para instalar os circuitos e baterias. A opção (b) dá maior estabilidade e equilíbrio do que a opção (c), o que é importante se o robô tiver que carregar outros equipamentos como câmeras ou sensores.  

Figura 25: Opções de layout para as rodas
Por conta da maior mobilidade, foi escolhido o layout em cruz para o primeiro protótipo. Esta primeira tentativa utilizou uma caixa de drive de cd como carcaça (figura 26). Mas por conta da dificuldade de furar o metal da caixa de drive de cd este material foi abandonado na construção dos outros protótipos, entretanto o layout em cruz provou ser bastante eficiente dando uma ótima mobilidade e precisão ao robô. O último protótipo foi montado em uma caixa de alumínio encomendada em uma empresa que produz perfilados de metal (figura 27). 

Figura 26: Protótipo usando uma caixa de drive de cd com layout das rodas em cruz
Para o protótipo final, também foi usado o layout em cruz para as rodas e de início a bateria foi colocada no espaço entre as rodas de tração, mas depois foi verificado que colocando a bateria entre as rodas de tração e um dos rodízios (figura 27), o peso fica mais bem distribuído e os motores precisam fazer menos força, deixando o movimento mais suave e permitindo que o robô desenvolva mais velocidade. Essa mudança na posição da bateria, também permitiu que o rodízio do lado oposto fosse eliminado, já que o centro de gravidade do robô foi deslocado para uma posição bem próxima do rodízio ao lado da bateria. 

Figura 27: Protótipo do robô utilizando uma caixa de alumínio
7.4 As rodas

A escolha das rodas que serão utilizadas para tracionar o robô influencia bastante na sua movimentação. Existem três aspectos que precisam ser levados em consideração: resistência, aderência e diâmetro. Depois de montado e especialmente por conta da bateria que o robô vai ter que carregar, o robô fica com um peso significativo e são as rodas que terão que suportar esse peso com um mínimo de deformação. Além disso, as rodas precisam aderir o suficiente à superfície em que o robô se movimenta para evitar que girem em falso. Rodas de plástico extraídas de carrinhos de brinquedo dificilmente têm resistência suficiente para carregar algum peso sem se deformar e o plástico, especialmente do tipo usado em rodas de brinquedo, é um material com baixa aderência, então essa não é uma boa opção. O ideal é que a roda seja de uma borracha dura o suficiente para evitar uma deformação excessiva, mas não tão dura que comprometa a aderência.

O diâmetro da roda influi na velocidade do robô e na força que ele será capaz de exercer. Quanto menor o diâmetro, menor será a velocidade do robô, mas em compensação maior será o torque, permitindo que o robô carregue mais peso.

Para entender esse conceito vamos imaginar que a velocidade angular é fixa. Velocidade angular é a quantidade de graus que um objeto (no nosso caso o eixo do motor) gira por unidade de tempo. É medida em radianos por segundo, mas pode ser facilmente convertida para RPM (rotações por minuto). Suponha que o motor gire a 60 RPM, ou seja, ele consegue dar 60 voltas por minuto e portanto uma volta por segundo. Nesse caso, a velocidade linear do robô, ou seja, a distancia que ele efetivamente se desloca por unidade de tempo, é igual ao perímetro da roda por segundo. Se o raio da roda é de 1 cm então o perímetro da roda é igual a 6,2 cm. Como o motor gira a 1 volta por segundo, então a velocidade linear do robô será de 6,2 cm por segundo. Se dobrarmos o raio da roda e mantivermos a mesma velocidade angular (60 RPM), então a velocidade linear do robô também vai dobrar, chegando a 12.4 cm/s.

Mas como nada é de graça neste universo, esse aumento na velocidade tem um custo. O robô tem peso e esse peso exerce uma força que precisa ser vencida para que o robô se mova. Suponha que o robô pese 1 kg, nesse caso se o robô usa rodas com um raio de 1 cm, então ele tem que ter força suficiente para mover 1 kg por 6,2 cm por segundo. Mas com rodas maiores, e mantendo o mesmo peso e a mesma velocidade angular, o motor terá que exercer uma força capaz de mover o mesmo peso por uma distancia maior a cada segundo, ou seja, precisa de mais torque.

Uma boa opção para as rodas pode ser obtida em impressoras sucateadas. Todas as impressoras têm algum mecanismo para puxar o papel que geralmente inclui um conjunto de rodas de plástico com uma capa externa de borracha. Essa borracha costuma ser bastante resistente e ao mesmo tempo precisa ter uma boa aderência para puxar o papel. A Figura 28 mostra o eixo onde ficam instaladas essas rodas em uma impressora HP. Testes realizados com essas rodas deram bons resultados e seu uso é recomendado. 

Figura 28: Eixo com rodas para puxar o papel de uma impressora HP
7.4 Instalação das rodas e motores

Os dois motores mostrados na figura 21 são bastante comuns e fáceis de conseguir em impressoras sucateadas. O motor da direita é bem maior que o outro, tem mais torque, mas também consome o dobro de energia e como o robô é alimentado por uma bateria, o consumo de energia é um fator importante de ser levado em consideração. Por essa razão, o ultimo protótipo usou o motor da esquerda, que apesar ter menos torque, tem o suficiente para mover o robô de maneira satisfatória. Esse motor tem um eixo longo com uma engrenagem espiral na extremidade. Usar essa engrenagem para transmitir o movimento para as rodas deixaria o projeto mais complexo, então optou-se por serrar o eixo retirando a engrenagem espiral.

Assim o problema passou a ser como fixar a roda ao eixo do motor, já que o eixo tem um diâmetro de 3mm e o orifício da roda retirada da impressora tem um diâmetro de 8mm. A solução mais intuitiva seria conseguir uma bucha com um diâmetro externo de 8mm e um orifício de 3mm, mas após percorrer todas a lojas de ferramentas da cidade descobri que, pelo menos nesta cidade, não existem buchas prontas nessas medidas.

Uma solução caseira que foi tentada a princípio foi fixar um parafuso na roda usando arruelas para centralizar o parafuso na roda e depois conectar o parafuso com o eixo usando um conector elétrico. Esse conector é bem barato e fácil de encontrar em lojas de materiais elétricos. Como as arruelas tinham um diâmetro externo ligeiramente menor que o orifício da roda, foi usado um pouco de fita vedante para encanamentos em volta das arruelas até chegar ao diâmetro correto. Esta solução peca pela falta de estética, mas funciona. A figura 29 ilustra o processo. 

Figura 29: (a) Parafuso e arruelas (b) Parafuso montado na roda (c) Conector elétrico em barra (d) Conector fixando a roda ao eixo do motor

Uma outra solução que dá um resultado muito melhor, inclusive na estética, é aproveitar o eixo original das rodas para fazer buchas (ver figura 28). A impressora já tem um eixo de aço onde as rodas são fixadas. Note que esse eixo tem saliências nas posições onde as rodas são instaladas que evitam que a roda deslize sobre o eixo (figura 30a). Esse eixo pode ser cortado de maneira a aproveitar essas saliências para fixar as rodas. A má notícia é que essa é a parte caseira do processo. Para que esse eixo se transforme em buchas para as rodas ele precisa ser furado na longitudinal na medida do eixo do motor e depois é preciso fazer um furo com rosca na transversal para colocar um parafuso que impeça que o eixo do motor deslize dentro da bucha (figura 30b). Infelizmente não é fácil fazer um furo longitudinal bem no centro de um eixo de aço com uma furadeira comum e menos ainda fazer um furo com rosca para colocar um parafuso. Essas operações exigem um equipamento especializado que é encontrado em oficinas de usinagem. Entretanto, caso seja possível encontrar uma oficina de usinagem disposta a fazer esse serviço, o resultado compensa. 

Figura 30: (a) Detalhe do eixo das rodas que puxam o papel na impressora. (b) Eixo cortado e furado para servir como bucha


Índice

2) Visão geral do projeto
3) Fonte de alimentação para testes de bancada
4) A porta paralela
5) Motores de passo
6) Montagem dos circuitos
7) Montagem do robô
8) Alimentação
9) Software de navegação
10) Conclusão
Apêndice - Duplicando polias e engrenagens


    5 comentários:

    1. Qual o medelo da impressora que foram retiradas as rodas?

      ResponderExcluir
      Respostas
      1. Esse tipo de rodas para puxar o papel é encontrado em diversos modelos de impressoras.

        Excluir
    2. Qual o método utilizado para se extrair as rodas do eixo original?

      ResponderExcluir
      Respostas
      1. As rodas estão apenas encaixadas no eixo, basta aplicar um pouco de pressão que elas saem.

        Excluir
    3. Método para tirar as rodas: empurrar e puxar 😈

      ResponderExcluir