Índice:

Inteligência artificial e reconhecimento de imagem usando HuskyLens: 6 etapas (com fotos)
Inteligência artificial e reconhecimento de imagem usando HuskyLens: 6 etapas (com fotos)
Anonim
Image
Image

Ei, tudo bem, pessoal! Akarsh aqui da CETech.

Neste projeto, vamos dar uma olhada nas HuskyLens do DFRobot. É um módulo de câmera alimentado por AI que é capaz de fazer várias operações de Inteligência Artificial, como Reconhecimento de Face, Reconhecimento de Objeto e Reconhecimento de Linha, etc. É um pouco semelhante ao módulo MatchX que discutimos algum tempo atrás neste projeto. Como o módulo MatchX era um pouco caro, decidi fazer algo semelhante por conta própria e, para isso, achei o HuskyLens uma ótima escolha porque é mais barato em comparação com o módulo MatchX e pode fazer tudo que o MatchX pode, exceto um, ou seja, transmissão de dados e, para esse propósito, faremos a interface do módulo Huskylens com o módulo RYLR907 LoRa da Reyax e estaremos prontos para prosseguir. Após a interface, usaremos este HuskyLens para detectar um objeto e enviar os dados detectados usando o módulo LoRa para outro módulo LoRa no lado do receptor.

Então, vamos para a parte divertida agora.

Suprimentos

Peças usadas:

Lente Husky:

Reyax RYLR907:

Firebeetle ESP8266:

Arduino:

Etapa 1: Obtenha PCBs para a fabricação de seus projetos

Sobre o Módulo HuskyLens
Sobre o Módulo HuskyLens

Você deve verificar a PCBWAY para solicitar PCBs online por um preço barato!

Você obtém 10 PCBs de boa qualidade fabricados e enviados à sua porta por um preço barato. Você também receberá um desconto no frete de seu primeiro pedido. Carregue seus arquivos Gerber no PCBWAY para que sejam fabricados com boa qualidade e tempo de resposta rápido. Verifique a função do visualizador Gerber online. Com pontos de recompensa, você pode obter itens gratuitos na loja de presentes.

Etapa 2: Sobre o Módulo HuskyLens

Sobre o Módulo HuskyLens
Sobre o Módulo HuskyLens
Sobre o Módulo HuskyLens
Sobre o Módulo HuskyLens

O HuskyLens é um sensor de visão mecânica AI fácil de usar com 6 funções integradas: reconhecimento de rosto, rastreamento de objeto, reconhecimento de objeto, seguimento de linha, detecção de cor e detecção de etiqueta. É um módulo muito bacana que vem com uma câmera na parte frontal e um display LCD na parte traseira e 3 LEDs (2 brancos e 1 RGB) integrados que podem ser controlados através do software. Ele tem dois botões, um é um controle deslizante para alternar entre os modos de operação e um botão para capturar e aprender sobre os objetos na frente da câmera. Quanto mais aprende, mais inteligente é. A adoção do chip AI de nova geração permite que a HuskyLens detecte rostos a 30 quadros por segundo. Por meio da porta UART / I2C, o HuskyLens pode se conectar ao Arduino, Raspberry Pi ou micro: bit para ajudá-lo a fazer projetos muito criativos sem brincar com algoritmos complexos.

Suas especificações técnicas são:

  • Processador: Kendryte K210
  • Sensor de imagem:

    • SEN0305 HuskyLens: OV2640 (câmera 2.0 megapixel)
    • SEN0336 HuskyLens PRO: OV5640 (câmera 5.0 megapixel)
  • Tensão de alimentação: 3,3 ~ 5,0V
  • Consumo de corrente (TYP): [email protected], [email protected] (modo de reconhecimento de rosto; 80% de brilho da luz de fundo; luz de preenchimento desligada)
  • Interface de conexão: UART; I2C
  • Tela: tela IPS de 2,0 polegadas com resolução de 320 * 240
  • Algoritmos integrados: reconhecimento facial, rastreamento de objeto, reconhecimento de objeto, rastreamento de linha, reconhecimento de cor, reconhecimento de marca
  • Dimensão: 52 mm 44,5 mm / 2,051,75"

Link do produto:

Etapa 3: Sobre o Módulo RYLR907 LoRa

Sobre o Módulo LoRa RYLR907
Sobre o Módulo LoRa RYLR907
Sobre o Módulo RYLR907 LoRa
Sobre o Módulo RYLR907 LoRa

O módulo transceptor RYLR907 apresenta o modem de longo alcance Lora, que fornece comunicação de espectro espalhado de alcance ultralongo e alta imunidade a interferências, minimizando o consumo de corrente. Ele vem com um motor Semtech SX1262 que é potente e tem uma excelente imunidade de bloqueio. O RYLR907 tem baixa corrente de recepção e pode detectar movimento do canal para ativar o modo de recepção de CAD para economia de energia. É altamente sensível e pode ser facilmente controlado por comandos AT. Além de todos os recursos mencionados acima, ele possui uma antena embutida e usa criptografia de dados AES128. Todos esses recursos o tornam adequado para aplicativos de IoT, equipamentos móveis, segurança residencial, etc.

Pode ser usado para transmitir dados a uma distância da ordem de km que para sem nenhuma internet ou outra coisa. Portanto, usaremos este módulo LoRa para transferir os dados coletados pelo HuskyLens da extremidade do transmissor para a extremidade do receptor. Para obter uma leitura detalhada sobre as especificações técnicas do módulo RYLR907, você pode acessar sua folha de dados aqui.

Link do produto:

Etapa 4: Configurando as seções do transmissor e do receptor

Image
Image
Configurando as Seções do Transmissor e do Receptor
Configurando as Seções do Transmissor e do Receptor

Nesta etapa, faremos a parte de conexões do projeto. Primeiro, conectaremos o HuskyLens com o módulo RYLR907 LoRa que fará o lado do transmissor e depois disso, conectaremos o módulo LoRa com um ESP8266 para fazer o receptor final que receberá os dados enviados pelo transmissor e os exibirá no o Serial Monitor do Arduino IDE.

As etapas para conectar o HuskyLens ao módulo LoRa são as seguintes:

  • Conecte os pinos Vcc e GND do HuskyLens aos 5V e GND do Arduino, respectivamente.
  • Conecte os pinos R e T do HuskyLens ao pino nº 11 e 10 do Arduino, respectivamente.
  • Agora pegue o módulo LoRa e conecte seu pino Vcc à saída de 3,3 V do Arduino e o pino GND ao GND do Arduino.
  • Conecte o pino Rx do RYLR907 ao pino Tx do Arduino por meio de um resistor, conforme mostrado no diagrama de circuito acima. A rede de resistores é necessária porque o Arduino funciona em um nível lógico de 5 V enquanto o RYLR907 funciona em um nível lógico de 3,3 V, portanto, para reduzir de 5 V a 3,3 V esses resistores são usados.

Desta forma, a seção do Transmissor, ou seja, as conexões do HuskyLens, são concluídas.

Agora, para a seção do receptor, precisamos de um ESP8266 para controlar o módulo LoRa para receber os dados transmitidos. As conexões a serem feitas neste fim são as seguintes:

  • Conecte os pinos Vcc e GND do módulo LoRa aos pinos 3,3 V e GND do ESP8266.
  • Conecte o pino GPIO 15 ao pino Rx do LoRa e o pino GPIO 13 ao pino Tx do módulo RYLR907.

Desta forma, as conexões do lado do receptor estão concluídas, agora só precisamos conectar os módulos ao nosso PC e fazer o upload dos códigos do projeto. Para uma descrição detalhada do módulo LoRa usado aqui e as conexões a serem feitas na extremidade do receptor, você pode verificar o vídeo acima.

Etapa 5: Codificando os Módulos

Codificando os Módulos
Codificando os Módulos

Como as conexões para ambas as seções são feitas. Agora só falta conectar o Arduino e o ESP ao PC e fazer o upload dos códigos do projeto um por um. Você pode obter os códigos do projeto acessando a página do Github aqui.

  • Baixe a biblioteca HuskyLens disponível na página GitHub e instale-a em seu Arduino IDE.
  • Agora abra o arquivo chamado "Arduino Husky Lens Lora Code.ino" este é o código que precisa ser carregado no Arduino para obter dados do HuskyLens e enviá-lo ao receptor. Copie este código e cole-o em seu IDE do Arduino.
  • Conecte o Arduino ao seu PC, selecione a placa e a porta COM corretas e aperte o botão de upload assim que o código for carregado, você pode desconectar o seu Arduino.

Desta forma, a parte de codificação para a extremidade do transmissor é concluída. Agora você pode conectar o módulo ESP que, combinado com LoRa, será usado como receptor.

  • Depois de conectar o ESP ao seu PC, abra a página do Github novamente e copie o código no arquivo chamado "ESP8266 LoRa Text.ino", este é o que precisa ser carregado no ESP8266.
  • Cole o código no IDE. Selecione a porta COM e a placa corretas e, em seguida, clique no botão de upload.

Conforme o código é carregado, você está pronto para usar a configuração.

Etapa 6: Testar o link

Testando o Link
Testando o Link
Testando o Link
Testando o Link

Assim que o código for carregado para ambos os módulos, podemos verificar o link abrindo o monitor serial inicialmente ele mostrará a mensagem "Nenhum bloco ou seta aparece na tela". Isso significa que o HuskyLens não aprendeu sobre o objeto que é mostrado. O objeto é visto pela primeira vez e não é reconhecido pelo Lens. Assim, para fazer com que ele reconheça o objeto ou rosto mostrado a ele. Precisamos mostrar o objeto ao HuskyLens e, assim que ele reconhecer o objeto mostrado a ele, pressione o botão de aprendizagem (push button), isso fará com que o HuskyLens aprenda sobre o objeto e o fará reconhecer o objeto quando algo semelhante ao objeto aprendido for mostrando. Agora que o HuskyLens aprendeu sobre o objeto, ele enviará os dados sobre o objeto que vê e os dados recebidos pelo LoRa na extremidade do receptor serão exibidos no Monitor Serial.

Desta forma, podemos usar o HuskyLens alimentado por AI para reconhecer objetos, coletar dados sobre eles e, com a ajuda do módulo LoRa, transmitir os dados coletados para outro módulo LoRa localizado a vários quilômetros de distância.

Então é isso para o tutorial espero que você tenha gostado.

Recomendado: