- Etapas para configurar o aplicativo Blynk:
- Componentes necessários:
- Explicação do circuito:
- Explicação de trabalho:
- Explicação de programação:
Existem muitos tipos de robôs, desde os simples, como um carro de brinquedo, até os avançados, como os robôs industriais. Já cobrimos muitos tipos de robôs usando diferentes tecnologias, dê uma olhada neles:
- Robô seguidor de linha usando o microcontrolador 8051
- Robô seguidor de linha usando Arduino
- Robô controlado por DTMF usando Arduino
- Robô controlado por telefone celular usando microcontrolador 8051
- Robô controlado por computador usando Arduino
- Robô controlado por RF
- Edge Avoiding Robot usando 8051
- Robô controlado por gestos manuais baseado em acelerômetro usando Arduino
- Carro de brinquedo controlado por Bluetooth usando Arduino
E agora estamos adicionando mais um robô em nossa seção 'Projetos de robótica', desta vez vamos fazer um robô controlado por Wi-Fi usando Arduino e o aplicativo Blynk. Este robô baseado em Arduino pode ser controlado sem fio usando qualquer smartphone Android habilitado para Wi-Fi.
Para a demonstração do robô controlado por Wi-Fi, usamos um aplicativo móvel Android chamado “ Blynk ”. Blynk é um aplicativo muito compatível com Arduino, para fazer projetos baseados em IoT. Este aplicativo pode ser baixado da Google Play Store e pode ser facilmente configurado.
Etapas para configurar o aplicativo Blynk:
1. Primeiro baixe-o da Google Play Store e instale-o no telefone móvel Android.
2. Depois disso, é necessário criar uma conta. Você pode usar sua conta atual do Gmail.
3. Agora selecione Arduino Board e dê um nome para seu projeto.
4. Anote o código do token de autenticação ou simplesmente envie-o por e-mail para sua conta de e-mail e copie e cole no esboço do Arduino (código do programa).
5. Insira este código de token de autenticação no esboço do Arduino.
// Você deve obter o Auth Token no aplicativo Blynk. // Vá para as configurações do projeto (ícone de noz). char auth = "caa17a11c0124d4083d0eaa995f45917";
6. Em seguida, clique no botão criar no aplicativo Blynk.
7. Agora selecione o widget Joystick, clique em Joystick, configure o joystick (veja o vídeo no final) e aperte o botão voltar.
8. Depois disso, pressione o botão Play no canto superior direito da tela.
Todo este processo de utilização da App Blynk foi explicado de forma clara em Vídeo, apresentado no final.
Componentes necessários:
- Arduino UNO
- Módulo ESP8266 Wi-Fi
- Cabo USB
- Fios de conexão
- L293D
- Motores DC
- Baterias
- 10K POT (opcional)
- Chassi do robô mais roda
- Rodízio
- Telefone móvel Android
- Blynk App
Explicação do circuito:
O diagrama de circuito do robô controlado por Wi-Fi é fornecido abaixo. Precisamos principalmente de um módulo Wi-Fi Arduino e ESP8266. Os pinos Vcc e GND do ESP8266 são conectados diretamente a 3,3 V e o GND do Arduino e o CH_PD também está conectado a 3,3 V. Os pinos Tx e Rx do ESP8266 são conectados diretamente aos pinos 2 e 3 do Arduino. A biblioteca serial do software é usada para permitir a comunicação serial nos pinos 2 e 3 do Arduino. Já cobrimos a interface do módulo ESP8266 Wi-Fi com o Arduino em detalhes.
Um CI do driver de motor L293D é usado para acionar motores CC. Os pinos de entrada do IC do driver do motor estão diretamente conectados aos pinos 8, 9, 10 e 11 do Arduino. E os motores DC são conectados em seus pinos de saída. Aqui usamos bateria de 9 volts para acionar os motores de circuito e DC.
Explicação de trabalho:
Trabalhar com o robô controlado por Wi-Fi é muito fácil, basta arrastar ou deslizar o joystick na direção para onde queremos mover o robô. Por exemplo, se quisermos mover o robô na direção para frente, precisamos arrastar o 'círculo' do Joystick na direção para frente. Da mesma forma, podemos mover o robô na direção esquerda, direita e para trás arrastando o joystick nas respectivas direções. Agora, assim que liberarmos o Joystick, ele voltará ao centro e o Robot para.
O aplicativo Blynk envia valores do joystick de dois eixos para o Arduino, por meio de um meio Wi-Fi. O Arduino recebe os valores, compara-os com os valores predefinidos e move o robô de acordo nessa direção.
Explicação de programação:
O programa está quase pronto - disponibilizado no Arduino IDE. Precisamos apenas fazer o download da Blynk Library for Arduino. E depois de fazer algumas modificações, o usuário pode fazer seu próprio robô controlado por Wi-Fi.
Primeiro, incluímos todas as bibliotecas necessárias para executar esse código no Arduino IDE e, em seguida, inserimos o Auth Token, do aplicativo Blynk, na string de autenticação . Aqui estamos conectando o pino serial do Wi-Fi com o software Serial do Arduino. Pino 2 selecionado como RX e 3 como TX.
#define BLYNK_PRINT Serial // Comente para desabilitar as impressões e economizar espaço #include
Em seguida, definimos os pinos de saída (8,9,10,11) para motores e escrevemos algumas funções de direção para mover o robô em uma direção específica: vazio para frente (), vazio para trás (), vazio para a direita () e vazio para a esquerda ()
Após isso, na função de configuração inicializamos todos os dispositivos necessários, como dar direção aos pinos do motor, iniciar a comunicação serial, fornecendo nome de usuário e senha Wi-Fi.
void setup () {// Definir a taxa de transmissão do console Serial.begin (9600); atraso (10); // Definir taxa de baud ESP8266 // 9600 é recomendado para Software Serial EspSerial.begin (9600); atraso (10); Blynk.begin (autenticação, wi-fi, "nome de usuário", "senha"); // nome de usuário e senha do wifi pinMode (m11, OUTPUT); pinMode (m12, SAÍDA); pinMode (m21, OUTPUT); pinMode (m22, OUTPUT); }
Agora verificamos algumas condições para controlar o robô. Aqui, selecionamos o pino virtual 1 (V1) para receber a entrada do aplicativo Blynk para controlar o robô. Como usamos a opção marge no aplicativo, obteremos os valores dos eixos xey no mesmo pino.
BLYNK_WRITE (V1) {int x = param.asInt (); int y = param.asInt (); if (y> 220) forward (); senão se (y <35) para trás (); else if (x> 220) right (); senão if (x <35) left (); else Stop (); }
Por fim, precisamos executar a função blynk em loop para executar o sistema.
loop vazio () {Blynk.run (); }