Projetos

O primeiro passo, rumo ao robô

Depois de um tempo sem atualizar o blog, resolvi dar um passo, um pouco maior que as pernas e fazer um robôzinho, ou melhor, um carrinho de controle remoto.

Porém tenho que me explicar aqui, já que comentei no post anterior do “Semáforo” que o próximo projeto era colocar o GLCD pra funcionar no semáforo, o projeto foi “completado” porém ainda estava fazendo alguns acertos quando ele resolveu dar algum mal contato no “ninho de rato” (fios) ai então resolvi abortar a idéia, e partir pro motor, testes realizados com sucesso (pretendo postar algo depois apenas sobre o motor DC e a ponte H.

E já que o motor funcionou, porque não colocar uma roda e fazer ele andar ? Afinal é tão legal quando alguém pergunta… – E além de acender as luzes, isso faz mais alguma coisa ?

O Infra Vermelho

Tendo em base que iria fazer um carrinho, era necessário então ter algum tipo de controle sobre ele, no Kit que adquiri vinha um receptor de Infra Vermelho, então esse seria o controle, abaixo o fritzing do controle:

Observações sobre o IR.

– Procurei diversas bibliotecas para facilitar o serviço, algumas eram pra controles especificos e tinha um entendimento não muito favorável, foi então que descobri a IRremote, uma biblioteca sensacional, pois ela é multi-protocolo, ou seja, independente do controle que você colocar la na frente ele irá dar alguma resposta (ou não), e o mais interessante, a biblioteca não só cuida da recepção de IR, mas também envia IR através de um LED, o que torna a coisa ainda mais interessante, veja um trecho de código:
[sourcecode language=’c++’]
/* enviando algo */
#include
IRsend irsend;

void setup()
{
Serial.begin(9600);
}

void loop() {
if (Serial.read() != -1) {
for (int i = 0; i < 3; i++) {
irsend.sendSony(0xa90, 12); // Sony TV power code
delay(100);
}
}
}
[/sourcecode]

[sourcecode language=’c++’]
/* recebendo algo */
#include

int RECV_PIN = 11;
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}

void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
irrecv.resume(); // Receive the next value
}
}
[/sourcecode]

Como visto, o uso da biblioteca é meio que trivial, então já que seria fácil a implementação do controle remoto do carrinho, o próximo passo é botar os motores pra funcionar:

O motor

Vasculhando meus antigos projetos, descobri que tinha 1 (eu juro que era 2, mas só achei 1 :P) motorzinho DC, e fiz os testes baseados nele, seguindo a ajuda e indicações do site: ipt physical computing, onde o autor do tutorial sugeriu a utilização de um CI de ponte-H para fazer a inversão das fases no motor, possibilitando que o motor vá pra frente e para tras, veja o fritizing:

Logo apos montar o projeto acima, testei e Voilá, tudo funcionou na perfeição, motorzinho girando de um lado e do outro, uma beleza, mas, todavia, no entanto, nem tudo são flores,  depois que resolvi desmonta-lo para fazer outra coisa, na remontagem (processo que estou fazendo nesses dias) o danado não quer funcionar, acho que porque coloquei os 2 motores, e alguma coisa eu fiz errado.

Assim que acertar eles, volto a comentar nesse post o andamento da construção

A base

Uma história a parte em projetos robóticos é sem dúvidas a parte mecânica das coisas, algo que pode arruinar o projeto, pensando nisso (até aparece) resolvi utilizar uma caixinha slim de CD como base, coloquei os 2 motores na lateral (mais abaixo a história dos motores), fixados com fita dupla face e fita crepe estão a espera da parte eletrônica.

Observações da base: No momento como roda estou utilizando 2 CDs, daqueles da AOL que todo mundo tem, guardado e no saquinho, porém o buraco do CD é grande, foi necessário então uma operação cirurgica para adicionar ao CD uma engrenagem centralizada,  para logo depois encaixa-la no eixo do motor. Tudo isso feito com muito silicone, aparentemente estão razoavelmente certas as rodas, porém essa bomba saberei só quando os motores funcionar.
Mais detalhes quando as fotos aparecerem por aqui.

A história do Motor

Alguém lembra do Creative Infra Red? Existia um desse, parado em casa, já parcialmente canibalizado, porém os motores ali estavam, intactos, 3 ou 4, esperando a hora do abate… essa hora chegou, desmotei-o todo e retirei dele os motores, 2 sensores que eu ainda não sei como utilizar, mas que imagino eu, serão os olhos do robô (será?). Além dos motores, sobraram várias engrenagens, de diversos tamanhos, 2 delas estão na história, lá em cima quando falo que precisei fazer uma brasilidade para encaixar os CDs nos motores.
Surfando pela internet já ouvi falar que da pra utilizar esses motores, incluindo um motor de passo que nele há, porém não li nada, só extrai os 2 motores DC que me interessavam, vi que eles são razoavelmente iguais, apesar de um deles ser mais esperto que o outro. Porém, verifiquei que existe a possibilidade de controlar via PWM a velocidade dos motores, dessa maneira pretendo sincro niza-los, assim que as cosias funcionarem, relato o ocorrido.

Por enquanto é isso… o primeiro passo rumo ao robô foi dado!!!!

Padrão