sexta-feira, 15 de abril de 2022

Simulando aplicação gerada pelo VISUINO no Wokwi - Ótimo para simular o U-BLOX NINA W106

Simulando aplicação gerada pelo VISUINO no Wokwi - Ótimo para simular o U-BLOX NINA W106

 

O objetivo deste BLOG é utilizar o VISUINO para gerar código a partir de programação VISUAL e o mesmo ser simulado no ambiente Wokwi com a utilização do ESP32, o qual é CORE do U-BLOX NINA W106.

U-BLOX NINA W106
GPIO_XX
O código:

-Acionará o Servo para se deslocar de 0 à 180 graus;
-Fará um LED piscar 2HZ;
-Mostrará a uma imagem se movimentando no OLED.





Correlação (Wokwi/VISUINO)
Por  Uri Shaked

Best  Open Source Simulator

Wokwi é um simulador de eletrônica online. Você pode usá-lo para simular Arduino, U-BLOX NINA W106 (ESP32) e muitas outras placas, componentes e sensores populares.
Simula várias partes (elementos Wokwi) como LEDs, shift registers, Buzzer, sensores (ultrassônico, temperatura, umidade etc. ) Display SSD, teclados e muito mais.

Você pode aprender programação Arduino onde quer que esteja. Nenhum hardware é necessário. Além de tudo isso, o simulador Arduino é totalmente gratuito!

VISUINO

Visuino é o mais recente software inovador da Mitov Software. Um ambiente de programação visual que permite programar suas placas Arduino. Atualmente, suporta as placas oficiais Arduino, Raspberry Pi, Teensy, Femto IO, ESP8266, ESP32, Controllino, Goldilocks Analogue, FreeSoC2, chipKIT, micro:bit, Maple Mini e número de clones Arduino, porém não se restringe apenas ao seu suporte e os pedidos de suporte a novos hardwares são bem-vindos.

UBLOX NINA W106
Wi-Fi 802.11b/g/n
Dual-Mode Bluetooth v4.2
Poderoso suporte de CPU aberta para aplicativos personalizados
Tamanho pequeno e várias opções de antena
Pino compatível com outros módulos NINA
Certificação global
Super Pequena
Módulo baseado no ESP32, com 4MB FLASH
HOMOLOGADO PELA ANATEL

BREAKOUT U-BLOX NINA W106

Algumas características:

-Botão de RESET;
-Pequena;
-Botão de Modo BOOTLOADER (W106);
-Acesso às várias GPIOS.

Baixe e instale o VISUINO



Selecione o módulo ESP32 DEV MODULE e desenhe o projeto abaixo


Agora compile



Clique no ICONE para pegar o caminho completo do BIN gerado pelo VISUINO, o qual será colado no Wokwi.


No Wokwi, crie e desenhe o projeto abaixo



Execução

Clicando no Sketch (pode deixar vazio), pressione F1 e escolha

LOAD HEX FILE AND SIMULATE

e então COLE o BIN gerado pelo VISUINO (veja último vídeo)




Simulando

Compilando no Visuino e transferindo para o Emulador

Rodando no U-BLOX NINA W106

Uma vez que rodou, ao partir para execução real no U-BLOX NINA W106,  consulte Datasheet para acesso ao Mapa de Gpios do U-BLOX NINA W106/ESP32

Cada GPIO_X tem o pino correspondente no ESP32

Projeto (Download)


Patchs (SKIN U-BLOX NINA W106)


Veja

  1. Create a new project on wokwi
  2. Click inside the code editor, press "F1" and choose "Load custom board file..."
  3. Select the directory that contains the board definition files (board.json and board.svg)
  4. The board should load into Wokwi. Check the browser JavaScript console for any error messages.
  5. Paste the following code into the diagram.json file:
    {
      "version": 1,
      "author": "Ambitious maker",
      "editor": "wokwi",
      "parts": [{ "type": "wokwi-custom-board", "id": "board" }],
      "connections": []
    }

Na parte interior, os labels GPIO_ correspondem aos pinos do Módulo U-BLOX NINA W106

Dúvidas:

suporte@smartcore.com.br

Referências:

Abrindo projetos

Sobre a SMARTCORE

A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portfólio inclui modem 2G/3G/4G/NB-IoT/Cat.M, satelital, módulos WiFi, Bluetooth, GNSS / GPS, Sigfox, LoRa, leitor de cartão, leitor QR code, mecanismo de impressão, mini-board PC, antena, pigtail, LCD, bateria, repetidor GPS e sensores.

Mais detalhes em www.smartcore.com.br

segunda-feira, 22 de novembro de 2021

U-BLOX NINA W106 ACESSANDO MQTT DA TTN - THE THING NETWORKS VIA VISUINO


O objetivo deste BLOG é mostrar um exemplo em VISUINO que permite o NINA W106 se comunicar com um servidor MQTT (V3.1.1) da TTN (au1.cloud.thethings.network) via WIFI, pela porta 1883. Ele fará a inscrição em um Tópico no qual são periodicamente Publicados pelo TTN, dados (contador) enviados por um LOM204 via LoRaWAN.

Veja o pacote publicado pela TTN no Tópico.

{"end_device_ids":{"device_id":"eui-702xxxxffe5xxxxe",
"application_ids":{"application_id":"XXXXXXXX-smartcore-dht11-1"},
"dev_eui":"702C1xxxxxxxxxxxx",
"join_eui":"0000000000000001",
"dev_addr":"260D956E"},
"correlation_ids":["as:up:01FMSE4ZAJZ7S3H7TP0QDFJ83A",
"gs:conn:01FMHQJ60T9G456WB6AW07GMA9","gs:up:host:01FMHQJ6913P18Y4JQ6MQQRRAD",
"gs:uplink:01FMSE4Z3YBWF4A20RGTQ9MY4P","ns:uplink:01FMSE4Z40FX03C6MKN8MR1FZE",
"rpc:/ttn.lorawan.v3.GsNs/HandleUplink:01FMSE4Z402806QPDY732GPX7K",
"rpc:/ttn.lorawan.v3.NsAs/HandleUplink:01FMSE4ZAHCG3AGV7NVY0C4X1D"],
"received_at":"2021-11-18T11:50:43.794767602Z",
"uplink_message":{"session_key_id":"AX0y23LwYN+8apuujBwXbA==",
"f_port":1,"f_cnt":8,"frm_payload":"MA==",
"rx_metadata":[{"gateway_ids":{"gateway_id":"a840411bb0544150smartcore",
"eui":"A840411BB0544150"},"time":"2021-11-18T11:50:43.407706Z",
"timestamp":1172935675,"rssi":-33,"channel_rssi":-33,
"snr":9.2,
"uplink_token":"CicKJQoZYTg0MDQxMWJiMDU0NDE1MHNtYXJ0Y29yZRIIqEBBG7BUQVAQ+6emrwQaDAiT/NiMBhDS6fCVAiD4mKjDke46KgwIk/zYjAYQkLO0wgE=",
"channel_index":4}],"settings":{"data_rate":{"lora":{"bandwidth":125000,
"spreading_factor":7}},"coding_rate":"4/5","frequency":"917600000",
"timestamp":1172935675,"time":"2021-11-18T11:50:43.407706Z"},
"received_at":"2021-11-18T11:50:43.584480646Z","confirmed":true,
"consumed_airtime":"0.046336s","network_ids":{"net_id":"000013",
"tenant_id":"ttn","cluster_id":"ttn-au1"}}}




















TTN

A Rede de Coisas (TTN) é uma iniciativa iniciada pela sociedade civil holandesa. O objetivo é ter redes LoRaWAN instaladas em todas as cidades do mundo. Ao interconectar essas redes locais, a TTN quer construir uma infra-estrutura mundial para facilitar uma Internet das Coisas (IoT) pública.

A The Things Network (TTN) é o servidor IoT na nuvem utilizado nesse projeto. É um dos servidores gratuitos para LoRaWAN mais utilizados, com mais de 90 mil desenvolvedores, mais de 9 mil gateways de usuários conectados à rede ao redor do mundo e mais de 50 mil aplicações em funcionamento.

A TTN comercializa nós e gateways LoRa e provê treinamento individual e coletivo para empresas e desenvolvedores que desejam utilizar o LoRa. Possui uma comunidade bem ativa nos fóruns, sempre colaborando e ajudando a resolver problemas, além de prover diversos meios de integrar a TTN com a aplicação que se deseja usar. Possui integração nativa com diversas aplicações como: Cayenne (utilizado nesse trabalho), Hypertext Transfer Protocol (HTTP), permitindo ao usuário realizar uplink para um gateway e receber downlink por HTTP, OpenSensors e EVRYTHNG . Caso o usuário queira criar sua própria aplicação, a TTN disponibiliza Application Programming Interface (API) para uso com Message Queuing Telemetry Transport (MQTT) e diversos Software Developer Kits (SDK) para uso com as linguagens Python, Java , Node.Js , NODE-RED e Go

A rede TTN utiliza o protocolo LoRaWAN objetivando uma cobertura em longo alcance para os dispositivos da rede, caracterizando-a assim com uma Wide Area Network (WAN). Devido ao baixo consumo de energia e ao uso da tecnologia LoRa, é chamada de LPWAN (Low Power Wide Area Network). O grande diferencial da TTN é seu estabelecimento como uma rede aberta (open-source) e colaborativa (crowd-sourced), onde qualquer usuário pode contribuir instalando um gateway em sua residência.

Os elementos da TTN são classificados como: 

• Endpoints (nós): Os dispositivos responsáveis pela camada de sensoriamento da rede, o endpoint LoRaWAN. Podem coletar informações através de sensores e também acionar dispositivos/máquinas via atuadores. São configurados através de uma das três classes distintas do protocolo LaRaWAN; 

• Gateways: Elementos responsáveis por concentrar e processar as informações enviadas pelos endpoints. Os gateways em geral estão conectados a internet, seja por WiFi/Ethernet ou 3G/4G em locais remotos. Mesmo que uma mesma rede LoRaWAN tenha diferentes objetivos, baseados em aplicações distintas, os gateways possuem o objetivo comum de fornecer a maior área de cobertura possível; 

• Aplicações: Conectar e interligar os diferentes dispositivos da rede TTN para o fornecimento de informações gerais sobre a coleta de dados dos dispositivos.

MQTT

Para os dispositivos de Internet das Coisas (IoT), a conexão com a Internet é um requisito. A conexão com a Internet permite que os dispositivos trabalhem entre si e com serviços de backend. O protocolo de rede subjacente da Internet é o TCP/IP. Desenvolvido com base na pilha TCP/IP, o MQTT (Message Queue Telemetry Transport) tornou-se o padrão para comunicações de IoT.


VISUINO

Visuino is the latest innovative software from Mitov Software. A visual programming environment that allows you to program your Arduino boards. ... The components found in the Visuino software represent your hardware components and you can easily create and design your programs using drag and drop.


UBLOX NINA W106

Wi-Fi 802.11b/g/n
Dual-Mode Bluetooth v4.2
Poderoso suporte de CPU aberta para aplicativos personalizados
Tamanho pequeno e várias opções de antena
Pino compatível com outros módulos NINA
Certificação global
Módulo baseado no ESP32, com 4MB FLASH

MONTAGEM

Adquirimos então os seguintes componentes


Montado ficou assim



O esquema elétrico é este


Algumas características do Kit

-Botão de RESET;
-Botão de Modo BOOTLOADER (W106);
-Acesso às várias GPIOS.

Pequena 

Baixe e instale o VISUINO




Selecione o módulo ESP32 DEV MODULE e desenhe o projeto abaixo


Pegue aqui as credenciais no site TTN


Coloque no Componente MQTT (propriedades)

Credenciais

No componente MQTT coloque o Tópico a ser inscrito, baseado na opção Integratons-->MQTT



No componente TCP SSL (propriedades) coloque

Host: au1.cloud.thethings.network
Port: 1883

Servidor TTN e porta 1883

No Componente MQTT (propriedades) colocar Tópico (Subscriber)


Toda vez que o LOM204 publicar um dado no TTN, receberemos uma pacote MQTT (Tópico inscrito). Trata-se de um JSON descrito no início do BLOG, para filtrá-lo será utilizado um JSON Parser do VISUINO.


Payload 64 encoded
Agora compile


Agora mande gravar 


Execução


Dúvidas:

suporte@smartcore.com.br

Referências:


Sobre a SMARTCORE

A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portfólio inclui modem 2G/3G/4G/NB-IoT/Cat.M, satelital, módulos WiFi, Bluetooth, GNSS / GPS, Sigfox, LoRa, leitor de cartão, leitor QR code, mecanismo de impressão, mini-board PC, antena, pigtail, LCD, bateria, repetidor GPS e sensores.
Mais detalhes em www.smartcore.com.br