Bom dia pessoal!  

  Estou escrevendo pela primeira vez um tópico aqui no fórum pois me veio a ideia na cabeça de fazer um robô para faxina leve totalmente autônomo com o Arduino.

Sei que essa ideia já existe e muitos produtos estão a venda por aí no mercado, mas a minha vontade de fazer essa pequena facilidade é mais pelo aprendizado do que realmente pela tarefa exercida pelo robô, e como meu conhecimento em Arduino é razoavelmente básico (construí apenas robôs seguidores de linha e desviadores de objeto) gostaria de pedir a ajuda de vocês nesse "pequeno" projeto.

Sem mais delongas, a minha ideia inicial quanto ao futuro faxineiro é: um robô que, após um período de tempo programado, sai de sua "base" e anda pelo ambiente (a princípio meu quarto) reconhecendo-o para que possa cobrir toda a extensão enquanto anda. Após reconhecer o ambiente ele retornaria a base, pegaria uma ferramenta (como um par de cerdas, que é a base de funcionamento de um robô renomado desse tipo, o Roomba 880) e sairia a trabalhar, no caso das cerdas, recolhendo pequenas sujeiras como pedaços de papel e as jogando em um reservatório, exatamente como funciona o Roomba 880, além de, paralelamente, possuir um sistema aspirador de poeira que ficaria atrás das cerdas. Após cobertura de toda a área mapeada, ele retornaria a base e trocaria sua ferramenta por um pano (exemplo) e sairia para terminar mais essa etapa. Quando sua bateria estivesse baixa ou ele terminasse a tarefa, o robô se dirigiria a base e se encaixaria ao carregador da bateria.

Tenho ciência de que isso não é algo simples, ainda mais pra mim, leigo nessa área. E é justamente por isso que quero fazê-lo, para aprender.

Se houver interesse de mais pessoas, estou disponível a aceitar propostas, ideias, sugestões... Tudo será bem-vindo, mas a princípio minhas dúvidas principais são:
- Como fazer o reconhecimento da área e perseguir o caminho todo;
- Como fazer o robô retornar a sua base;
- Sugestões para a troca de ferramentas, tomando ciência de que se possível, o pano do exemplo seria úmido;
- Devo usar motores CC comuns, servomotores ou motores de passo para a locomoção.

Acho que para um início essas questões estão boas, agradeço desde já a atenção e colaboração. Espero que eu possa dar continuidade a esse projeto com o apoio do pessoal aqui do fórum. Para interessados, meu e-mail é: gabriel.gazola@yahoo.com.br Obrigado.

Exibições: 9978

Responder esta

Respostas a este tópico

Eu sonho com um faxineiro desses, a anos também. 

Já conheci varios robozinhos, como o Roomba (através da internet).

Mas para mim, nenhum deles fez sucesso pois tem muitas limitações. 

O cara que inventar um robô faxineiro simples e eficiente, vai ficar rico e famoso.
Pode contar com a minha ajuda...

Olá Gabriel e jose gustavo,

    Eu já pensei bastante nesse projeto,  se você fizer uma analise simples e curta, pra quem entende de arduino ou outros microcontroladores ele é relativamente simples,  porem, tem só um ponto que é agravante, ao menos pra mim,  que é como fazer o robozinho seguir um caminho pre-determinado.

    Na verdade o troço trata-se de duas coisas em uma,  a primeria coisa é um robô seguidor de caminhos,  ai entra o arduino,  a outra coisa é um simples aspirador de pó com algumas escovas circulares rotativas pra dar o apoio na limpeza.

   A parte B que é o aspirador com a escova rotativa é moleza, é só pegar um comercial e tá pronto.

   O lance do robô seguidor de caminhos é que é o problema.

   Vamos as soluções que pensei:

 

Uma Possível solução -  Como riscar sua casa com linhas visíveis seria algo pra lá de coisa de maluco,  a ideia seria usar uma caneta com tinta ultravioleta,  que é invisível a não ser quando exposta a luz negra.

   Dai bastaria sair riscando a casa com o caminho de idas e vindas com uma enorme regua e quando você terminasse e olhasse pra tras seu chão estaria normal,  ou seja, se fizer isso sem sua mulher em casa quando ela chegar nem vai notar,  porem, se bater uma luz negra, ai...

   Bem,  ai é que entra a ideia, colocar leds de luz negra, e o modulo seguidor de linha do arduino, e tchan! tchan! tchan! tchan!  ele sairia seguindo as linhas com perfeição e limpando sua casa.

   Eu acrescentaria um sensor na porta pra indicar quando tivesse gente em casa ou não,  somado a um RTC (relogio) pra evitar que o bicho funcionasse por acidente a noite.

   Dai quando todo mundo saisse de casa, um comando seria enviado ao bicho que sairia limpando a casa.

   Ah! lembrando que tem que ser um aspirador a bateria, afinal se for por fio iria dar o maior pau !

 

Uma segunda solução, mas não tão precisa,  seria colocar encoders nas rodas do robozinho,  dai você colocaria ele em modo de aprendizagem, e sairia rodando com ele pela casa mostrando o caminho, o encoder contaria os passos pra um determinado lado e setaria, depois pra o outro lado e setaria, e por ai vai.

   Esse metodo é meia boca pois se ele bater em algo ou você simplesmente levantar ele do chão e rodar só um pouquinho as rodinhas, ele perder completamente a programação, mas se não rolar incidêntes, funcionaria.

 

   A galera discutiu um tempo aqui uma forma de determinar o posicionamento de um objeto dentro de um espaço, ao que lembro do topico não rolou uma solução definitiva,  desde lasers a gps(uma merda pra esse sistema pois falta precisão) , várias coisas foram cogitadas,  mas sinceramente um metodo definitivo de fazer a localização em um espaço é dificil.

 

   O grande problema tambem é que casa tem móvies e objetos que deixamos pela casa como calçados, e tudo isso interfere, poderia-se utilizar sensores ultrasonicos pra fazer ele desviar,  mas ai pra retomar a rota seria complicado.

 

   Resumindo, o problema esta em fazer o bicho andar por ai de forma correta, tomando as decisões certas de desviar de obstaculos tanto fixos, como exporádicos,  feito isso,  tá pronto o bicho !

Achei bem interessante essa ideia de seguir uma linha feita de caneta ultravioleta, mas caso passasse um pano úmido ou com produto de limpeza não removeria a tinta?

outra dúvida é se a linha pra ser detectada pela luz ultravioleta seria capaz de ser detectada pelo seguidor de linha, pois penso que deveria haver um contraste bem grande entre a linha escura e o piso claro pra isso funcionar bem

Creio que daria para construir um seguidor de linha feito com LDRs e LEDs ultravioleta, caso um seguidor comum não funcionasse, já trabalhei com seguidores de linha.

Penso diferentemente.

Acho o mais dificil é fazer o sistema de limpeza.

O sistema de limpeza desses outros robozinhos é fraco e não deve limpar bem.

Limpar nos cantos, onde realmente esta sujo, pisos irregulares, tapetes, isso não é facil. 

O sistema para guia-lo poderia ser com ultra-som, não ? 

Acho que esses disponíveis no mercado usam ultra-som.

Murta, o problema desse método que vc cita é o trajeto errático que o robozinho segue, as vezes repassando num mesmo lugar várias vezes e podendo nunca passar sobre um determinado local.

Seria similar a aqueles aspiradores automáticos de fundo de piscina que vc conecta na bomba de água e ele muda o sentido quando bate na parede. Se vc deixar várias horas ali, é bem capaz que o fundo fique limpo, mas se vc reparar bem, o aspirador passa muitas vezes num mesmo local e poucas vezes num outro. 

Será que com ultra-som, não da para fazer um mapa da sala?

Com laser dá, mas o sensor  é caro....

E com duas cameras ? Visão 3D ? Muito complexo?

Não sei dizer, mas creio que ultrassom apenas não seja capaz de te permitir desenhar mapa não

E aqueles esquemas de usar o kinect do xbox? Será não dá?

imhugo e José,

Quanto ao mapeamento com ultrassonicos, achei esse link do instructables, mas não compreendi muito bem, será que vocês poderiam esclarecer pra mim? Pq eu achei interessante o conceito.

http://www.instructables.com/id/Autonomous-Autonavigation-Robot-Ard...

nesse instructables, o que o autor fez não foi mapear uma sala com o ultrassom. Na realidade, o mapa 2D foi abastecido previamente pelo autor no sketch através de um array, onde 1 representa obstáculo e 0 representa espaço livre. O robô caminha apenas onde o array indicar 0

O ultrassom serve apenas para detectar obstáculos anteriormente não previstos no array do sketch, como por exemplo uma pessoa no ambiente. Dessa forma, se houver um obstáculo na direita do robô, ele vira pra esquerda, e vice-versa

Eu não pensei seriamente a fundo no assunto, mas a princípio acho muito difícil mapear uma sala com ultrassom e gerar um mapa 2D em array (auto-learning). O robô precisaria ter bússola para saber certinho a localização dos limites do ambiente  (por exemplo, parede norte, parede sul, parede leste, parede oeste) e daí mapear os obstáculos internos

Então voltando a ideia do José de usar lasers, quanto custa o sensor?

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço