banner

Unindo IOT com Inteligência Artificial




Internet das Coisas com Inteligência Artificial, uma união fantástica, que vou falar aqui hoje. A dupla, até recentemente, era tratada como dois assuntos distintos, porque a AI (Artificial Intelligence) só ficava na nuvem, o que me incomodava muito por saber que existem inúmeras aplicações nas quais não é possível ficar esperando qualquer delay no processamento da informação necessária. Por exemplo, se você tem uma automação industrial e precisa de visão computacional, esta precisa ser muito rápida, o que pode ser possibilitada pela Inteligência Artificial “local”. Por conta disso que gosto demais do chip LoRa e esse que eu vou usar hoje é da Kendryte.
Vamos fazer, então, uma aplicação com o MaixPy (MicroPython) utilizando o sistema de reconhecimento fácil e de imagem Yolo (You Only Look Once), além de um chip da Sipeed – um “cara” bem rápido, de 400 Mega-hertz, dual core e 64 bits. Vamos atualizar o Firmware, mostrar o Maixpy IDE.





Demonstração





Recursos usados

  • Sipeed Maix BiT
  • Cabo USB tipo C







Sipeed Maix BiT


MaixPy portou o MicroPython para o K210 (processador RISC-V dual core de 64 bits com hardware FPU e acelerador convolucional).
MicroPython - implementação enxuta e eficiente da linguagem Python 3 e é otimizado para rodar em microcontroladores e em ambientes restritos.
K210 - Criado para o uso AIOT (AI + IOT), têm um poderoso desempenho e com um baixo custo.
O MicroPython facilita a programação do hardware do K210.



k210


É um system-on-chip (SoC). Utilizando processador dual-core de 64 bits com uma consumindo pouca energia, para melhor desempenho de energia, estabilidade e confiabilidade.
Este chip fornece principalmente soluções de IA, como, por exemplo:
Machine Vision e machine Hearing
Melhor velocidade de processamento com baixa potência e boa precisão
Acelerador de hardware de rede neural artificial convolucional KPU
Operação de rede neural artificial de convolução de alto desempenho
Suporte a criptografia de firmware (segurança)
Matriz IO programável
Baixa tensão, menor consumo de energia
Super de dupla tensão 3.3V / 1.8V
É um system-on-chip (SoC). Utilizando processador dual-core de 64 bits com uma consumindo pouca energia, para melhor desempenho de energia, estabilidade e confiabilidade.
Este chip fornece principalmente soluções de IA, como, por exemplo:
Machine Vision e machine Hearing
Melhor velocidade de processamento com baixa potência e boa precisão
Acelerador de hardware de rede neural artificial convolucional KPU
Operação de rede neural artificial de convolução de alto desempenho
Suporte a criptografia de firmware (segurança)
Matriz IO programável
Baixa tensão, menor consumo de energia
Super de dupla tensão 3.3V / 1.8V






k210 - Machine Vision


Com recursos de machine vision, o Kendyte K210 pode realizar cálculos de rede neural convolucional em situações de baixa potência.
O chip pode obter sucesso nos seguintes casos:
Detecção geral de alvos baseados em rede neural convolucional
Tarefa de classificação de imagens baseada na rede neural de convolução.
Detecção de rosto e reconhecimento facial.
Obter o tamanho e as coordenadas de alvos detectado
Obter o tipo do alvo detectado em real time




k210 - Machine Hearing

O chip vem com um processador de áudio de matriz de microfone com um alto desempenho para orientação em tempo real.
Machine Hearing com k210:
Orientação da fonte sonora
Imagem do campo sonoro
Beamforming
Reconhecimento de Voz
Voice Wake up  - Bixby, Ok Google, Siri






Download Kflash

Entre no link para baixar o Kflash.
Baixe o zip k-flash.zip
Descompacte e execute o executável kflash_gui.exe.






Atualização do Firmware

Abra o navegador, entre na página:
Baixe o arquivo maxpy_v0.3.2_no_lvgl.bin





Abra o Kflash

Selecione o arquivo baixado
Selecione “sipeed maix dock”
Flash
Selecione a porta que está conectado o MaixPy
1500000
Clique em download.




 MaixPy IDE


Para baixar IDE do MaixPy clique aqui.
Clique v-0.2.2/
Clique em cdn_download_links.txt
Depois copie o segundo link



Cole o link no navegador e o instalador da IDE vai ser baixado.
Instale a IDE
Execute.



Conectar - Conecta com o MaixPy pela porta USB.
Start - Roda o script atual, o script que está aberto.



Clique no botão conectar no ícone verde no canto inferior esquerdo.
Selecione a porta que o MaixPy está, e clique em OK.
*Certifique que você não esteja conectado com o MaixPy em nenhuma outra conexão.
Clique no botão start no canto inferior esquerdo para rodar o script.






Trocando Script de Boot

Para trocar o script que abre no boot, basta colocar o script desejado no editor, rodar, clicar em “Tools” na parte superior e depois em “Save open script to board”.






Exemplo

Existem exemplos prontos para serem utilizados.
Abra esse link do github. 
Entre em machine_vision.
Abra o arquivo “demo_find_green_blob”, copie e cole o script no MaixPy IDE.
Clique em start para rodar o script.







Exemplo - Reconhecimento Facial

Para utilizar o script de reconhecimento é necessário baixar um modelo treinado.
Abra o link
Clique em “model”
Baixe o “face_model_at_0x3000000.kfpkg”





Gravando o Modelo

Abra o Kflash (lembre de fechar a conexão com a IDE).
Selecione o arquivo baixado
Selecione “sipeed maix dock”
Flash
Selecione a porta que está conectado o MaixPy
1500000
Clique em donwload





Exemplo - Reconhecimento Facial

Abra esse link do github
Entre em machine_vision.
Abra o arquivo “demo_find_face.py”, copie e cole o script no MaixPy IDE.
Conecte ao MaixPy.
Clique em start para rodar o script.






FAÇA O DOWNLOAD DOS ARQUIVOS





8 comentários:

  1. Edge Computing e Cloud Computing coexistindo para diminuir o Gap entre "ver/ouvir" e "agir".

    ResponderExcluir
  2. alguém pode me ajudar ao conectar cabo tipo c no windows 7 diz driver não encontrado onde pego esse driver ?

    ResponderExcluir
  3. Fernando, da uma ajuda pro Vô...
    Estou seguindo seu tutorial, mas a placa não conecta, fica apenas correndo o verde por um tempão, mas não termina .

    É uma Maix Bit com microfone. Max Pi IDE

    O que notei é que quando se liga o cabo usb, abre a COM9 e a COM8, mas apenas a COM 8 faz com que a placa fique com leds piscando mas não encerra a tentativa de conexão.


    Alguma ajuda?

    Parabéns pelas suas postagens de altíssimo nível

    Roberto W. (RJ)

    ResponderExcluir
  4. Após apanhar muito e muito, instalei a versão anterior do MaixPy a 2.3 então conectou.
    Estranho, entretanto agora posso pensar que a placa não veio defeituosa. Vamos em frente..
    Roberto W. (RJ)

    ResponderExcluir
  5. Conectou, mas.... ao tentar executar o exemplo aparece: OSError:Reset Failed...
    Pelo visto temos vários post sobre isto e parece a primeira vista algo como modelo de câmera. vamos verificar?

    ResponderExcluir
  6. Vou desistir desta placa..como aparentemente notei que tem um capacitor faltando perto do pino 29, e no kflash não esta reconhecendo o K210 cansei, já gastei tempo demasiado. fui

    ResponderExcluir
  7. Fui, e voltei....
    atualizei a versão do KFlash para V1.5 e ai atualizou a placa.
    Vou tenta mais um pouco para ver se conseguimos avançar e fazer acender o lcd e a câmera
    É complicado, pois esta tudo muito versionado e em chines.

    ResponderExcluir
    Respostas
    1. o meu também não tá gravando ainda não sei o que fazer para usar o kflash corretamente

      Excluir

Tecnologia do Blogger.