Este é um grande exemplo do fascinante mundo do IoT, onde o que aprenderemos com o robô, poderá ser utilizado para controlar qualquer coisa pela internet!
Continue lendo...Arquivos para 30 30UTC November 30UTC 1999
Rex, o robô que “nunca perde a linha”, acaba de “encontrar” o segundo prêmio na competição de robótica 2016 do site Instructables.com em parceria com National Robotics Week. Além de ser uma honra, esse prêmio me deixa muito feliz, pois mostra que estou no caminho certo ao tentar descobrir formas lúdicas e prazeirosas de aprender e ensinar robótica, IoT e eletrônica!
O Rex competiu com projetos incríveis, os quais podem ser vistos em detalhes no link:
ROBOTICS CONTEST 2016 – Winners

Obrigado pela força e vamos “pa’delante!”
Não deixe de visitar e seguir minha página: MJRoBot.org no Facebook
Saludos desde el sur del mundo! 😉
Marcelo
Neste projeto, vamos desarmar um carrinho de controle remoto, substituindo sua eletrônica por um microprocessador Arduino controlado por dispositivo Android.
Continue lendo...A edição de maio da revista britânica MagPi publicou uma matéria muito legal sobre meu Projeto “Mars Rover Tupiniquin”. Para quem não conhece, a MagPi é a revista oficial do RapsberryPi. Você pode baixar grátis as edições da revista em PDF.
A edição de maio (45) pode ser baixada no link: https://raspberrypi.org/magpi-issues/MagPi45.pdf
Espero que gostem!
(A repórter trocou o meu nome por “Marcio”, mas está valendo! 😉


Não deixe de visitar e seguir minha página: MJRoBot.org no Facebook
Saludos desde el sur del mundo! 😉
Um abraço e obrigado
Marcelo
Esta é a segunda e última parte de um projeto mais complexo, que explora a potencialidade de um robô seguidor de linha. Nesta etapa, aplicaremos conceitos de inteligência artificial na exploração de labirintos, implementando algoritmos que nos ajudarão a encontrar o caminho da saída mais curto e rápido.
Continue lendo...O objetivo deste projeto é construir um robô seguidor de linha com controle PID. Também usaremos um dispositivo Android para poder configurar mais facilmente os principais parâmetros (ganhos) da malha de controle.
Continue lendo...Descrição geral:
A idéia deste projecto é o desenvolvimento de um protótipo totalmente funcional para uma estação móvel usada na coleta de dados ambientais tais como: temperatura, umidade e luminosidade. Este protótipo foi desenvolvido somente para fins didáticos e fez parte de meu projeto final no curso de especialização do Coursera em parceria com a University of California, Irvine: “Uma Introdução à Programação da Internet of Things (IOT)“.
Considerações do projeto:
- O Rover será controlado remotamente por um dispositivo Android com capacidade Bluetooth. Os dados serão continuamente capturados e transmitidos independentemente se o Rover está parado ou em movimento.
- O usuário deve receber um feedback visual (streaming de vídeo ao vivo)
- Os dados capturados serão analisados através de um site público (neste caso: thingspeak.com)
- Os dados estarão disponíveis para os usuários em um formato gráfico e tabela
- Alarmes via Twitter serão gerados localmente pela estação ou pelo website
- O Rover terá capacidade autónoma para evitar obstáculos a fim de proteger-se em caso de mau controle por parte do usuário.
Opções de projeto:
Com base nos requisitos, inicialmente 2 opções foram consideradas para este projeto.
- Um único processador responsável por todas as tarefas, que neste caso deveria ser um Raspberry Pi.
- Um processador dual , sendo as funções divididos entre eles ( Arduino e RPI ) :
- Processor 1: RPi
- Captura de dados
- Comunicação com a Web
- Transmissão de vídeo
- Envío de mensagens via mídia social
- Processor 2: Arduino
- Controle dos motores (movimento e posicionamento da câmera)
- Evasão de obstáculos
- Comunicação com o controle remoto
- Processor 1: RPi
Em termos de custos, utilizar 2 processadores é de fato menos custoso do que a opção de um único processador. Isso ocorre porque o Arduino é um item muito barato e portanto mais acessível que a opção de “Servo Hat”, necessária para o RPi controlar os servos de maneira adequada. Outra diferença é o módulo de BT. Para o Arduino, um módulo barato como o HC – 06 BT 3.0 é suficiente, sendo que o mesmo custa a metade do preço do “BT Dongle” a ser adicionado ao Rpi. Assim,a opção escolhida foi o projeto com processador dual.

Depois de um longo e tenebroso inverno, vamos ao projeto de verdade! Afinal, já era sem tempo! O circuito como comentado em meu post anterior:
será baseado no Arduino MEGA, alguns potenciômetros, botões e LEDS para o “painel de controle local”.

Um modulo HC-06 conectará o braço, via rede Bluetooth, com um celular Android (controle em modo remoto).
O objetivo desse tutorial é desenvolver passo a passo um projeto para o controle e programação de um braço robótico, simulando as funções básicas de um robô industrial.
Especificações:
- O robô deverá ter duas funções básicas:
- Programa: gravar posições do braço em 3 dimensões
- Run: executar o programa de trabalho (ou seja, executar em sequencia as posições gravadas na etapa de programa.
- O robô executará o programa até que o comando de “abortar” seja utilizado.
- O projeto deverá controlar robots de 3 ou 4 DOF (“Degrees of Freedom”).
- O robô deverá ser controlado em modo “local” e “remoto” (via celular)
- Durante o programa se poderá mudar o controle de “local” a “remoto” e vice-e-versa.
- Deverá possuir sinalização tanto visual (LEDS e display) quanto sonora
- Deverá possuir função de alarme acionado remotamente.
O projeto:
O diagrama abaixo mostra o “Bill of Material” que será utilizado no projeto:

Para o projeto, optarei pelo Arduino MEGA para não ter que me preocupar com o número de portas I/Os. O UNO funcionaria sem problemas, mas se deveria utilizar algum método de expansão de portas. Existem várias opções que podem ser facilmente encontradas na internet, como um decodificador 74138 por exemplo (veja o site: “Expandindo os I/Os do Arduino”).
Para a rede Bluetooth utilizarei o HC-06 (o qual explico em detalhes no tutorial “Conectando “coisas” através do Bluetooth”).
A app Android utilizado para o “modo remoto”, foi desenvolvida utilizando-se a ferramenta MIT appinventor2, uma plataforma tão poderosa quanto simples para esse tipo de app baseado no Android. No futuro pretendo explorar a criação de apps desse tipo aqui no Blog. Por enquanto, a app está disponível para ser baixada gratuitamante na loja da Google: MJRoBot Arduino Arm Robot Control.
Os vídeos abaixo dão uma idéia de como deverá ficar o projeto final:
Primeiro protótipo sendo programado em “modo local”:
O robô programado de maneira remota via rede Bluetooth:
Nos próximos posts, detalharei os passos necessários para o desenvolvimento do projeto.
Como sempre, espero que este projeto ajude outras pessoas a encontrar seu caminho no apaixonante mundo da eletrônica, robótica e do IoT!
Não deixe de visitar e seguir minha página: MJRoBot.org no Facebook
Em tempo: aproveito e deixo aqui um abraço para duas pessoas muito queridas, meu tio Ítalo que já não está aqui entre nós, que além de me ensinar a jogar Xadrez quando garoto, me deixou de presente essas peças que utilizei no vídeo. O outro abraço vai para o meu sogro Mathias, que muito carinhosamente presenteou-me com o tabuleiro e com as peças do jogo que haviam se perdido com o tempo (tudo feito por ele).

Uma rede sem fio local (e pessoal) porreta é sem dúvida a Bluetooth (BT). Hoje em nosso dia-a-dia é comum encontrar-nos com celulares, aparelhos de som, cameras, etc., entrelaçados com a ajuda da famosa “luzinha azul”
No mundo do IoT e da automação em geral, é muito comum deparar-nos com controles remotos via celulares utilizando tecnologia BT. Isso é devido a 2 componentes básicos mas muito importantes:
- Plataforma de desenvolvimento para OS ANDROID
- Módulos BT baratos e acessíveis (Como por exemplo o HC-06)
Neste tutorial, vou desenvolver algumas idéias de como controlar as saídas de um Arduíno através de um celular de maneira a mover um Robot, acionar lâmpadas em uma casa, etc.
No mercado é comum encontrar módulos de BT 3.0 “Master-Slave” como o HC-05 e “Slaves” como o HC-06. Já mais recentemente, apareceram os HC-08 e HC-10 que trabalham com tecnologia BT 4.0 ou BLE (“Bluetooth Low Energy”). Os módulos BLE são os únicos que podem ser conectados a um Iphone, pois infelizmente a Apple não fornece suporte a ao BT 3.0.
Para os projetos discutidos aqui, usarei um HC-06 que é bem popular e barato (Bye, bye, Iphone, vamos de Android!). O Módulo é alimentado com 5V o que faz com que ele seja facilmente conectado a um Arduino
UNO por exemplo, para receber e transmitir informações a outros dispositivos como um PC ou um telefone celular. Seus pinos de transmissão e recepção podem ser conectados diretamente ao UNO, não havendo a necessidade de se utilizar divisores de tensão como vimos no caso do ESP8266.
Na prática, o HC-06 deve ser ligado diretamente aos pinos 0 e 1 do Arduino (Serial):
- HC06-Tx ao Arduino pin 0 (Rx)
- HC06-Rx ao Arduino pin 1 (Tx)
Ao se usar a entrada serial por HW do UNO é muito importante lembrar-se que o HC-06 não pode estar fisicamente conectado aos pinos 0 e 1 durante a carga do programa, isso porque o USB também usa essa mesma serial. Uma maneira simples de se contornar esse probleminha (se seu projeto não utiliza muitos GPIOs do UNO) é usar uma porta serial por SW através da library SoftwareSerial (a mesma que usamos no caso do ESP8266). Em nosso caso aqui, usaremos os pinos 10 e 11 do UNO (Tx, Rx respectivamente).








