u-BLOX NINA W106 SENDO PROGRAMADO EM BASIC ANNEX RDS - FAZENDO LED PISCAR A QUANTIDADE DE VEZES SOLICITADA PELO GOOGLE ASSISTANT
O objetivo deste BLOG é demonstrar como é possível programar o módulo u-BLOX NINA W106 (ESP32) no starter kit EVK-NINA-W1 com a linguagem BASIC ANNEX WiFi RDS (1.43 Beta) e então fazer um LED piscar em uma quantidade solicitada pelo GOOGLE ASSISTANT, este dado estará armazenado no servidor ThingSpeak.
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
SMARTCORE
A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portifó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
IFTTT
Abreviação de "If This, Then That", IFTTT é uma maneira fácil de automatizar tarefas que podem ser repetitivas ou incapazes de falar entre si. Funciona assim: os usuários são guiados através de um processo para fazer scripts simples, também conhecidos como "receitas", onde algum tipo de evento em um dispositivo ou serviço aciona automaticamente uma ação em outro.
SOBRE A LINGUAGEM BASIC
BASIC (acrônimo para Beginner's All-purpose Symbolic Instruction Code; em português: Código de Instruções Simbólicas de Uso Geral para Principiantes) é uma linguagem de programação, criada com fins didáticos, pelos professores John George Kemeny, Thomas Eugene Kurtz e Mary Kenneth Keller em 1964 no Dartmouth College.
Basic pode ser uma opção de linguagem para se aprender lógica, uma vez que foi desenvolvida em alto nível (próxima da linguagem humana). Além da sua relativa facilidade de criar aplicações de forma simples e rápida.
BASIC também é o nome genérico dado a uma grande família de linguagens de programação derivadas do BASIC original. Provavelmente existem mais variações de BASIC do que de qualquer outra linguagem de programação.
BASIC ANNEX RDS
ESP-NOW, BLE, MQTT...ÓTIMO PARA IoT
Veja o HELP do BASIC ANNEX RDS
Veja também FAQ
Thingspeak é uma plataforma de análise IoT (Internet of Things) que permite agregar, visualizar e analisar streams de dados, de uma forma muito simples. Uma das grandes vantagens da plataforma Thingspeak é que nos permite visualizar os dados enviados pelos nossos dispositivos, em tempo real, mas também a possibilidade de analisar os mesmo recorrendo ao poderoso Matlab.
INTERPRETADOR ?
O interpretador básico funciona através da leitura de um arquivo de script salvo no sistema de arquivamento em disco local esp.
Este é o modo padrão se nenhum SDcard externo estiver conectado ao u-BLOX NINA W106.
Além disso, o Annex32 pode usar um SDcard externo como sistema de arquivos, permitindo até 16 Gbytes de espaço em disco.
Durante a inicialização, se um SDcard externo for detectado, ele será conectado automaticamente e usado como o sistema de arquivos padrão, caso em que o sistema de arquivo interno não será usado.
Como o u-BLOX NINA W106 contém uma boa quantidade de RAM, o script do usuário é copiado do disco para uma área dedicada na memória RAM onde é executado, junto com a lista das linhas do programa, os rótulos dos ramos e a lista do usuário definido sub-rotinas ..
Isso usa mais RAM em comparação com outras abordagens, mas permite uma execução mais rápida do programa.
Outra consideração de desempenho é que o u-BLOX NINA W106 deve ser capaz de executar várias atividades em segundo plano (servidor web, servidor de arquivos, etc.), portanto, precisa de memória livre suficiente para executar tais tarefas, e essas tarefas paralelas obviamente terão um impacto no desempenho do script ..
Portanto, em termos de desempenho, o interpretador não é particularmente rápido, mas deve ser rápido o suficiente para a maioria das tarefas que você pode exigir.
Solicitações de dados do servidor (GET e POST)
O ANNEX inclui a funcionalidade de solicitar / enviar dados de / para o servidor usando solicitações HTTP GET e POST.
O GET é o método HTTP mais comum, geralmente usado para solicitar (GET) dados de um servidor, mas também pode ser usado para enviar dados ao servidor.
Isso é o que seu navegador faz ao digitar um url na barra de endereço.
Este método usa a url para incluir todos os dados a serem transferidos para o servidor e retorna a resposta do servidor.
Exemplo:
' do an HTTP GET request
a$ = WGET$("jsonplaceholder.typicode.com/comments?id=1&id=4", 80)
IFTTT e GOOGLE ASSISTANT
Configurando IFTTT
If This: Selecione a opção dois, onde # vai representar o número falado no Google Assistant
A URL acima deve ser obtida no Site ThingSpeak
GET https://api.thingspeak.com/update?api_key=xxxxxxxxxxxxxxxxx&field1=NumberField
Google Assistant
Annex ESP32
A cada 15 segundos, ANNEX acessará o último registro publicado pelo IFTTT no ThingSpeak e fará um LED a quantidade de vezes solicitada no Google Assistant.
Ele filtrará o seguinte JSON
{"channel":{"id":1368213,"name":"ELETIVA II","description":"Demonstração Disciplina Eletiva II - BCC - SIS - FURB","latitude":"0.0","longitude":"0.0","field1":"annex","created_at":"2021-04-22T22:17:35Z","updated_at":"2021-07-20T17:02:54Z","last_entry_id":101},"feeds":[{"created_at":"2021-07-20T19:00:38Z","entry_id":101,"field1":" 11"}]}
pin.mode 18, OUTPUT
pin(18) = 0 'comece apagado led
wlog "Start"
while 1=1
a$ = WGET$("https://api.thingspeak.com/channels/xxxxxxx/feeds.json?results=1", 80)
b$ = JSON$(a$, "feeds[1].field1") 'separando campo field1
blink=val(b$)
for l=1 to blink 'fazendo piscar "campo field1" vezes
pin(18) = 1
pause 300
pin(18) = 0
pause 300
next l
pause 15000
wend
end
DÚVIDAS
Nenhum comentário:
Postar um comentário