Índice:

Câmera Arduino Bluetooth: 4 etapas (com imagens)
Câmera Arduino Bluetooth: 4 etapas (com imagens)
Anonim
Câmera Arduino Bluetooth
Câmera Arduino Bluetooth

Olá!

Hoje você dificilmente pode surpreender alguém com um telefone celular com câmera, aparelhos sem fio e outros avanços técnicos. Graças à plataforma Arduino, milhões de pessoas descobriram o maravilhoso mundo da eletrônica e da programação. 100, 500 instruções foram escritas sobre como trocar dados entre um telefone celular e o Arduino via bluetooth … Do que estou falando? sim. Quero trocar dados entre um celular no Android e o Arduino UNO através do bluetooth em 100, 501 vezes. Mas quero transmitir não apenas um conjunto de caracteres e números, mas também imagens.

Alguém dirá que isso é impossível, o Arduino é muito lento para processar grandes quantidades de dados com boa velocidade. E ele estará absolutamente certo. E se um pouco de ajuda Arduino - para transferir todo o trabalho "duro" para os ombros de outro dispositivo? E esse dispositivo existe!

Este é um escudo TFT exclusivo para Arduino. As informações sobre esse logotipo estão nestes artigos: artigo 1, artigo 2. Nesses instrutíveis, demonstrarei como você pode se conectar via bluetooth entre o Arduino e o telefone Android, obter uma foto da câmera OV7670 no Arduino UNO e transferi-la para o telefone Android. Então, ao contrário, transfira a imagem (imagem da câmera) do telefone Android para o Arduino UNO e exiba-a na tela de um escudo TFT exclusivo.

Um aplicativo especial foi escrito para o telefone Android.

Breves características do escudo TFT:

  • Tamanho 3,5 "na diagonal,
  • Resolução 320x240,
  • Número de cores 65536 (16 bits),
  • Tela de toque resistiva (controlador XPT2046),
  • 5 botões,
  • RTC IC DS1307 com bateria de lítio de 3 V CR1220,
  • Slot para conectar um cartão micro SD,
  • Conector de 4 pinos (2,54 mm) para conexão do módulo Bluetooth HC-05 (-06), módulo WiFi ESP8286.
  • Conector de 20 pinos (2,54 mm) para câmera (OV7670).

Etapa 1: Lista de componentes necessários

Lista de componentes necessários
Lista de componentes necessários

Hardware:

  1. Arduino UNO;
  2. Escudo TFT exclusivo;
  3. Adaptador de alimentação AC-DC 6-12 volts,> 600mA;
  4. Câmera OV7670;
  5. Módulo Bluetooth HC-06 (HC-05);
  6. Telefone Android.

Atenção: É necessário (!) Usar um adaptador de alimentação de 6-12 volts para operar a blindagem TFT, pois a corrente máxima de 500 mA do USB não é suficiente para a operação normal.

Programas:

  1. Arduino IDE;
  2. Biblioteca para escudo TFT exclusivo;
  3. Arquivo APK para telefone Android.

Etapa 2: preparação

Programas

Todos os esboços de demonstração são escritos no ambiente Arduino IDE, portanto, no início é necessário instalar o Arduino IDE - https://www.arduino.cc/en/main/software. Em seguida, você precisa instalar uma biblioteca para o escudo TFT - github.com/YATFT/YATFT (baixe a biblioteca e descompacte-a na pasta "libraries" no diretório IDE do Arduino).

Após instalar o Arduino IDE, você deve programar a placa Arduino UNO. Para simplificar, eu recomendo piscar separadamente, sem escudo TFT. Por esta:

  • Conecte o cabo USB à placa Arduino UNO;
  • Execute o Arduino IDE no computador;
  • Selecione a porta correspondente à qual o Arduino UNO está conectado;
  • Baixe o esboço de demonstração do ArduinoBluetoothCamera.ino (e o arquivo ov7670_regs.h para o init da câmera);
  • Clique no botão Upload.

Se a placa Arduino UNO for programada com sucesso, você pode prosseguir para a próxima etapa.

Android

No telefone Android, você precisa instalar o ArduinoTFT.apk. Permita que o aplicativo use o Bluetooth e a câmera.

Atualização 2020-07-25 (graças a fano13250)

Olá, tive o mesmo problema com a aplicação Android que não funciona. Resolvido após autorizar o acesso do App na câmera do smartphone. É isso. Tchau

Módulo bluetooth

É necessário definir a taxa de câmbio no módulo Bluetooth para 115200 (comando "AT + UART = 115200, 0, 0"). Esta é a velocidade ideal na qual o Arduino UNO consegue receber e processar dados. (Teoricamente, você pode aumentar a velocidade, otimizar a recepção e o processamento dos dados, mas isso requer uma quantidade maior de RAM). Instruções mais detalhadas sobre como definir a taxa de câmbio podem ser encontradas na Internet, por exemplo, aqui: https: / /www.instructables.com/id/Communication-Bluetooth-Module-With-HC-05-HC-06/.

(!) Observe que o módulo Bluetooth se conecta à porta de depuração do Arduino UNO. Portanto, ao trabalhar com bluetooth, a porta de depuração não está disponível. E antes de programar o Arduino UNO (completo com o módulo Bluetooth) deve desconectar o módulo Bluetooth. E depois de programar, defina-o de volta (!)

Atualização em 2020-05-26

Eu adicionei código fonte de ArduinoTFT.apk. COMO É! Baixe ArduinoTFT.zip.h, renomeie para ArduinoTFT.zip e descompacte. Aproveitar!

Etapa 3: Montagem

conjunto
conjunto
conjunto
conjunto
conjunto
conjunto

A montagem do dispositivo é bastante simples:

  • Conecte o Arduino UNO e o escudo TFT;
  • Conecte a câmera OV7670 ao conector de 20 pinos na blindagem TFT da blindagem (às vezes eu uso um conector angular de 18-20 pinos com um passo de 2,54 mm como adaptador);
  • Conecte o módulo Bluetooth HC-06 (HC-05) ao conector de 4 pinos com as palavras "Bluetooth" no escudo TFT;
  • Conecte o adaptador de alimentação de 6-12 V à entrada de alimentação na placa Arduino UNO.

Depois de ligar a energia, a tela do escudo TFT deve ficar vermelha. Isso significa a disposição de receber comandos do telefone Android.

Etapa 4: demonstração

Image
Image
Demonstração
Demonstração
Demonstração
Demonstração

Execute as seguintes operações no telefone Android:

  • Inicie o aplicativo ArduinoTFT no telefone Android;
  • Vire o telefone na posição horizontal;
  • Habilite a conexão Bluetooth, selecione o módulo Bluetooth detectado (HC-06);

Duas janelas e quatro botões devem aparecer na tela:

  1. A janela superior direita é a janela do visor da câmera do telefone;
  2. Grande janela esquerda - imagens recebidas ou enviadas.

Funções dos botões:

  1. Transfira uma única imagem do telefone Android para o Arduino;
  2. Transferência contínua de imagens do telefone Android para o Arduino;
  3. Transfira uma única imagem do Arduino para o telefone Android;
  4. Transferência contínua de imagens do Arduino para o telefone Android.

O tamanho da imagem é 320x240 pixels (2-5 kB). Este capítulo tem um vídeo de demonstração.

Se você gosta do meu instrutível, gostaria de receber uma avaliação. Talvez isso me dê motivação para novos instructables:-)

Obrigado pela atenção!

Atualização 31.03.2021:

Olá de novo! Há uma biblioteca atualizada para uma série de telas, que atualmente consiste em dois escudos e duas placas de quebra. O esboço é compilado dependendo da versão selecionada (de 1 a 4) e do tipo de microcontrolador (MegaAVR ou ESP-32). Adicionadas fotos, exemplos. Mais informações podem ser encontradas em

Recomendado: