Manual

do

Maker

.

com

Robô com Arduino no estilo maker

Robô com Arduino no estilo maker

Finalmente saiu o robô com Arduino no estilo maker, tendo passado por diversas etapas, mas com um resultado interessante. Após diversos posts, eis a etapa final do robô com Arduino. Inicialmente, suas características funcionais:
1 - Numa distância frontal maior ou igual a 15cm, caminha para frente.
2 - Numa distância inferior a 15cm para e procura uma direção a seguir.
3 - Se não encontrar uma direção num ângulo de 160°, posiciona-se à esquerda e dá ré.
4 - Pára, reinicia o processo .

Características físicas:
1 - chassi:
Montado sobre um chassi extendido de um carrinho de R$19,00, cuja foto de seus restos segue abaixo:

carrinho.webp

A base do chassi foi serrada,

Do brinquedo não utilizei a carcaça, o controle remoto e o circuito.

Cortei o eixo dianteiro para fazer o controle da direção; o brinquedo é tão ordinário que não tem controle de direção e seu deslocamento lateral acontece por força da natureza, conforme as variações de seu eixo 'bobo'. Após cortar o eixo frontal do chassi, tive que remover a folga. Para tal, simplesmente prendi um parafuso vertical no centro do eixo, cancelando assim suas variações.
Na etapa seguinte, desmontei a composição que havia feito com o sensor ultrasônico que pode ser visto em integração das partes do robô e prendi o sensor com cola quente no eixo recém modificado. Era possível prendê-lo de uma forma mais segura, mas como é provisório apenas para a apresentação desse projeto, prefiri cola mesmo.
Até aqui o resultado é esse:

robo-04-sensor_ultrasonico.webp

Nesse ponto já é possível entender a idéia; a direção de deslocamento estará diretamente definida no momento em que o sensor encontrar uma distância maior ou igual a 15cm. Após isso, deve-se iniciar o deslocamento e retornar o sensor ao alinhamento central.

Na parte traseira do chassi apenas removi o circuito e os fios e refiz a solda nos fios do motor. O suporte de tomada utilizado para prender o sensor ultrasônico no post anterior foi reaproveitado, mas agora como expansão do chassi. Os propósitos disso são simples:

  • precisava concentrar o peso distante do servo motor para facilitar seu deslocamento
  • precisava encontrar algo que me ajudasse alinhar a altura dos eixos em relação ao chão.

A peça utilizada para fazer o deslocamento do eixo dianteiro (e que será presa ao servo-motor) foi retirada de um HD detonado:

robo-03-servo.webp

Essa peça é o cursor das agulhas dos discos do HD. Removi as agulhas e encaixei a peça do conjunto do servo-motor que se assimilava ao formato da parte vazada da peça. Por fim, prendi a ponta (que se deslocava para os lados) com um parafuso, garantindo assim sua fixação.

Por sorte, tenho um caixa que é do tamanho exato do Arduino. Por mais sorte ainda, ele tem a altura de um Arduino com um shield e casou perfeitamente com a necessidade. Então, o que fiz foi apenas abrir espaço na lateral da caixa para acesso à porta USB e a entrada de energia. Seguidamente, fiz um pequeno furo no fundo para prendẽ-la sobre um pequeno pino que existe no chassi e fixei com cola quente. Nesse ponto o suporte de tomada já estava também preso sobre o chassi.

A caixa e o chassim antes:

robo-06-eixo_traseiro.webp

O circuito foi montado sobre uma mini-protoboard presa sobre um protoshield. Uma das coisas mais legais do protoshield é a expansão de 5v e ground, acessível através de dois slots frontais de 5 furos. Isso facilita a distribuição de energia para a protoboard, pois os furos se tornam recurso escasso.

A montagem dentro da caixa:

robo-07-shields_e_box.webp

A composição das partes (e quase finalização do robô):

robo-01.webp

O desenho do circuito:

robocompleto.webp

Bugs

Obviamente existem algumas correções a fazer, mas não quis escondê-las. Ao contrário, prefiro que sejam notadas para entender também como trabalhar os problemas.

O controle de ré ainda não foi concluído, por isso dei alguns 'tapinhas' pra ajudar. A velocidade do motor precisa ser reduzida, pois no primeiro teste tive que ficar controlando o robô forçando sua parada em busca de uma direção.
Outro problema encontrado em relação à velocidade foi o tempo de parada; ele não conseguiu parar antes de bater após pegar muita velocidade. Por fim, não está alinhando ao centro após encontrar a direção. Todas essas notas se dão por conta da velocidade. Após esses tunnings disponibilizo a biblioteca com as adaptações necessárias e coloco um novo video mostrando os ajustes.

Eis o video do primeiro teste.

Link sugerido: Quadrúpedes com Arduino

Nome do Autor

Djames Suhanko

Autor do blog "Do bit Ao Byte / Manual do Maker".

Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.