"Tartaruga Desenhista" para o LOGO O robô que será apresentado neste artigo é ideal para aquerles que desejam montar um robô simples sem o uso de microcontroladores, comandado por um PC e capaz de “impressionar” qualquer plateia em uma feira ou mostra técnica em colégios e faculdades.
A PROPOSTA A Tartaruga Desenhista ou Robô Desenhista (você poderá chamar seu robô pelo nome que julgar mais adequado) é um “robô” simples que não utiliza microcontroladores no seu controle. Tudo é feito com CI’s discretos. O cérebro do robô (ou tartaruga) é um simples PC, com porta paralela e o programa Super LOGO instalado. A proposta era desenvolver um robô capaz de obedecer a comandos enviados por um PC para dois motores de passo (para uma maior precisão nos movimentos) e um servo utilizado em aeromodelos para levantar e abaixar uma caneta (ou lápis). Desta forma, seria possível realizar um desenho qualquer de acordo com a programação inserida no Super LOGO. Alunos da área da computação têm neste pequeno robô uma oportunidade de desenvolver algoritmos para o traçado de desenhos e gráficos "reais" muito interessantes. O robô passa assim a ser uma “extensão” do algoritmo desenvolvido, demonstrando sua execução de forma “real” (fora da tela do computador) e não apenas "virtual".
COMO FUNCIONA Acredito que a melhor maneira de descrever o funcionamento do robô é detalhar o funcionamento dos dois pontos principais do mesmo: os motores de passo e o servo. O restante do circuito (componentes eletrônicos) será visto mais à frente quando falarei um pouco mais sobre o circuito.
COMO FUNCIONA UM MOTOR DE PASSO O robô possui dois motores de passo, conforme dito anteriormente, para sua locomoção. Um motor de passo tem uma precisão maior que um motor DC (se considerarmos ambos sem qualquer tipo de realimentação). Os
motores selecionados para o robô são do tipo unipolar (não é
necessário inverter a polaridade para girar nos dois sentidos) com
seis ou cinco fios, duas bobinas independentes. Estes motores são amplamente difundidos no mundo da eletrônica / mecatrônica / microrobótica. Sua precisão, aliada a sua força (torque) fazem deste tipo de motor um excelente “posicionador”. Eles estão presentes em impressoras, pequenos CNC’s, mesas “XY”, impressoras 3D, etc. Por estas e muitas outras razões, os motores de passo também são utilizados em pequenos e médios robôs. Nesta página já demonstrei outros robôs que utilizaram motores de passo para se locomover com precisão por uma sala como o ADR-2 e o ADR-3. Para operar um motor de passo, é preciso “ligar” e “desligar” suas bobinas em uma seqüência correta. A freqüência com que estas bobinas são “chaveadas” (liga / desliga) determinará a velocidade de giro do motor. Para fazê-lo girar em sentido contrário devemos inverter a seqüência de chaveamento. Veja a tabela abaixo, nela descrevo a seqüência para operar um motor de passo de seis fios (duas bobinas independentes).
Os valores iguais a “1” equivalem à bobina ligada e os valores iguais a “0” equivalem à bobina desligada. A analise da tabela é feita do “passo 1” para o “passo 4”. A partir desse ponto a operação é repetida para manter o motor em funcionamento. Lembrando que a maioria dos motores necessitam de mais de 70 passos para uma volta completa. Quanto mais passos para uma volta o motor necessitar, mais preciso o mesmo será (desconsiderando aqui o microstepping muito utilizado em impressoras 3D e CNCs) . Para fazer o motor girar em sentido contrário, basta fazer a analise inversa da tabela. O primeiro passo será então o de número “4” e o último o de número “1”. Esta operação é repetida até se conseguir o número de voltas desejado. Infelizmente não existe uma padronização entre os fabricantes de motores de passo que permita através de um código de cores, identificar as ligações de suas bobinas internamente. Para isso é necessário que você, de posse de um multímetro na posição de leitura de resistências, faça uma analise de seu motor. A figura abaixo demonstra como isso é feito. |
Compreenda que estas peças podem ser facilmente substituídas. No caso do balancim, o mesmo pode ser construído também em madeira ou outro material qualquer. Sua construção é bem simples. O “ball link” (peça que une os links dos servos às alavancas) também pode ser substituído por um arame rijo terminado em “Z” em suas pontas, por exemplo. A aquisição ou construção das peças fica por conta de cada um.
Acredito que as imagens fornecidas são o suficiente para que você tenha idéia da mecânica utilizada para mover a caneta. Se o conjunto for observado atentamente você verá que trata-se de uma “alavanca”, muito parecida com uma gangorra. As medidas deste conjunto ficam por conta de cada um, pois estas terão influência direta do tamanho final do robô, altura do mesmo em relação ao chão, entre outras. |
Para
apoiar o robô no chão utilizei uma bolinha de tênis de mesa
(ping-pong) cortada ao meio e “colada” na parte inferior do
chassi. A
caixa CF815/F foi furada em sua base para receber os motores, dando
passagem aos seus eixos e também para permitir o livre movimento do
“lápis”. As rodas, também de aeromodelos, foram montadas diretamente sobre os eixos dos motores.
Nota: Você deve ter muita atenção ao montar o seu chassi. É muito importante que o furo para a passagem do “lápis” fique no mesmo eixo dos motores, evitando assim qualquer ângulo que poderia ser prejudicial ao “desenho”.
Na
seqüência das figuras abaixo você tem uma visão geral do
interior do meu protótipo. Isso poderá ajudar a compreender melhor a
montagem do meu protótipo. Clique nas figuras para aumentá-las.
O PROGRAMA
Após uma montagem eletrônica e mecânica sempre ficamos “ávidos” para iniciar os testes. Porém, acredito que é preciso antes compreender o funcionamento do programa que controlará o robô, para ai sim, ter todas as informações necessárias para prosseguir com os testes e uso do robô. O programa de controle foi desenvolvido na linguagem LOGO. Abaixo mostro o "fluxograma" do mesmo.
O programa inicia a tela de controle e em seguida aguarda um comando. Este pode ser para frente, para trás, para direita, para esquerda, curva a direita, curva a esquerda, abaixar e levantar a “caneta”. Os outros comandos possíveis são: número de passos (0 a 500 passos) e velocidade entre os passos (1/60 a 10/60 segundos), ambos através de barras de rolagem.
Ao realizar um determinado comando, uma sub-rotina é chamada. No caso da movimentação do robô, as sub-rotinas realizam a “compilação” da tabela referente a operação dos motores de passo, demonstrada no início deste artigo. Estas sub-rotinas basicamente inserem nos bits de dados da porta paralela (D0 a D7) os dados demonstrados na tabela.
Um outro comando importante é “abaixar e levantar” a “caneta”. Ele é feito através do pino 1 (Strob) da porta paralela. Este pino de comando é na verdade um pino de saída e está ligado à base do transistor utilizado para por em “curto” P1 (trimpot) no circuito do robô. Desta forma temos a transição do valor máximo para o mínimo, no caso dos pulsos para o controle do servo, conforme descrito anteriormente.
Um detalhe importante sobre o robô é que ele descreve movimentos “retilíneos”, ou seja ele desenha retas. Apenas os comandos “curva a esquerda e direita” permitem um “desenho” mais próximo do circular. Isso porque os motores são acionados juntos para os outros comandos e de forma separada para os dois últimos descritos. Utilizando uma reta e um “arco” é possível realizar muitos desenhos interessantes. Tudo é questão de criatividade de cada “artista”.
TESTE E USO
Após montar o robô, cabo de comunicação, chassi e realizar a montagem dos itens sobre o mesmo, é sempre prudente conferir tudo. Cheque todas as ligações. Não tenha pressa nesta etapa. Evite repetir aquela frase: “eu tenha certeza que tudo está certo” para não se arrepender em seguida ao perceber que seu projeto se danificou, simplesmente porque havia sim, algo ligado/montado erroneamente. Verifique sem pressa todas as conexões, as soldas, etc.
Instale o programa Super LOGO em seu computador. Em recente pesquisa (04/08/2020) encontrei o mesmo no seguinte link:
https://odisseu.nied.unicamp.br/wp-content/uploads/other-files/Super%20Logo%202000.zip
Nota:
Lembrando que esse programa funciona bem em Windows XP 32 bits, mas não
tem suporte para versões superiores (Vista, Windows 7 e Windows 10).
Para esses casos sugiro o uso de uma "máquina virtual" rodando o
Windows XP .
Copie o programa de controle do robô “DESENHISTA.LGO” que está mais abaixo em Downloads, instale-o em um subdiretório conhecido e abra-o com o Super LOGO. Ligue o cabo ao robô e ao PC (porta paralela LPT1). Ligue a fonte ao cabo e execute o programa.
Na figura abaixo você tem a tela do programa em execução. Clique nos botões e verifique a resposta do robô. Caso algo lhe pareça estranho, recorra ao item “Ajuda com problemas”.
AJUDA COM PROBLEMAS
A seguir listei alguns pontos que poderão ajudar você na solução de um possível problema.
“Liguei meu robô e nada aconteceu! Ele não se move! Nada acontece!”
Verifique os seguintes itens:
- Fonte de alimentação: veja se ela tem a tensão e correntes solicitadas e se a mesma não foi ligada invertida;
- Cabo de comunicação: veja se não ligou invertidos os fios que levam a alimentação até o robô. Teste nos pinos 14 e 7 do CI2 se existe 5VDC;
- Motores: confira todas as conexões dos mesmos.
“Liguei meu robô, o servo opera corretamente, mas os motores não!”
Verifique os seguintes itens:
- Ligação dos motores: conforme descrito no inicio do artigo, os motores não tem uma padronização nos seus fios de ligação. Procure testar conforme detalhado seus motores. Verifique se não foram ligados invertidos.
- Tensão de alimentação: verifique se a fonte pode fornecer a tensão e correntes solicitadas pelos motores
- Tensão dos motores: verifique se os motores que você tem em uso no seu robô são realmente motores de 12VDC nas bobinas. Alguns motores possuem tensão de 24VDC e outros de 48VDC. Use os recomendados.
- Motores queimados ou defeituosos. Verifique através de testes (sugeridos no inicio) do artigo se os seus motores estão ok (presença de resistência nas bobinas).
“Liguei meu robô, mas o servo parece funcionar ao contrário. Quando mando abaixar o lápis ele sobe e vice-versa!”
Verifique os seguintes itens:
- Ligação mecânica do servo: você terá de posicionar o servo no chassi de maneira que ele atenda o desejado. Basta trocar o lado do servo em relação à alavanca de movimento para o lápis.
“Liguei meu robô, mas os motores operam de forma estranha! Nenhum comando para movimentar o robô parece estar correto! Tudo parece invertido!”
Verifique os seguintes itens:
- Troque os motores de posição ou inverta a posição dos fios das bobinas entre eles até que todas as condições sejam atendidas.
CONCLUSÃO
O robô “Desenhista” é um robô bem simples, sem segredos de hardware e/ou software. Sua montagem não depende de muitos conhecimentos e por isso é recomendada até mesmo ao iniciante. Mas a este dou sempre um conselho: faça tudo com muita atenção! Leia o artigo até que tudo lhe pareça bem familiar. Observar uma ou duas figuras e correr para a loja com a lista de materiais não trará conhecimento. O verdadeiro conhecimento, necessário para uma montagem de sucesso, só será adquirido com a leitura e compreensão do que foi aqui demonstrado. Ninguém nasce sabendo tudo, mas nascemos com uma vontade enorme de aprender. Exercite esta vontade. Boa montagem e “desenhos”! Até a próxima!
DOWNLOADS
- Lista de materiais
Este projeto foi publicado na Revista Mecatrônica Fácil nº 26 de Janeiro/Fevereiro de 2006. Maiores informações sobre o projeto através de meu e-mail. Especificações: - Cérebro - PC ou MSX (porque não?!) |
Copyright deste conteúdo reservado para Márcio José Soares e protegido pela Lei de Direitos Autorais LEI N° 9.610, de 19 de Fevereiro de 1998. É estritamente proibida a reprodução total ou parcial do conteúdo desta página em outros pontos da internet, livros ou outros tipos de publicações comerciais ou não, sem a prévia autorização por escrito do autor. |