segunda-feira, 6 de dezembro de 2021

U-BLOX NINA W106 PROGRAMADO EM ANNEX BASIC E COMANDADO VIA TELEGRAM - CONTROLE DE LED

 U-BLOX NINA W106 PROGRAMADO EM  ANNEX BASIC  E COMANDADO VIA TELEGRAM

O objetivo deste BLOG é demonstrar como é possível utilizar programar o módulo U-BLOX NINA W106 com a linguagem de ANNEX BASIC 1.43.5 e se comunicar com o App TELEGRAM.

No exemplo será controlado um LED via TELEGRAM.





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 U-BLOX NINA
Certificação global
Módulo baseado no ESP32

SMARTCORE

A SmartCore fornece módulos para comuniçã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

TELEGRAM

O Telegram é um serviço de mensagens instantâneas baseado na nuvem. O Telegram está disponível para smartphones ou tablets, computadores e também como Aplicação web. Os usuários podem fazer chamadas com vídeo, enviar mensagens e trocar fotos, vídeos, autocolantes e arquivos de qualquer tipo.

O Telegram é um aplicativo de mensagens com foco em velocidade e segurança, é super-rápido, simples e grátis. Você pode usar o Telegram em todos os seus dispositivos ao mesmo tempo — suas mensagens serão sincronizadas em todos os seus celulares, tablets ou computadores.

BASIC ANNEX RDS

ESP-NOW, BLE, MQTT...ÓTIMO PARA IoT

Veja o HELP  do BASIC ANNEX RDS

Veja também FAQ

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. 

Telegram Bot com u-blox NINA W106


Neste tutorial, aprenderemos sobre o bot de telegramas e como usá-lo com uma placa u-BLOX NINA W106Utilizando  a API Annex BASIC, podemos controlar os pinos GPIO ou podemos ler os dados do sensor e enviá-los aos nossos dispositivos móveis através dos mensageiros do telegrama.

O telegrama de mensageiro é gratuito e como tudo funciona através da internet podemos controlar e receber informações das placas u-BLOX NINA W106 onde quer que estejamos no mundo. Usar o Telegram com u-blox NINA W106 pode criar ótimos projetos de IoT.

O que é o Telegram Bot?

Bots são aplicativos de terceiros executados dentro do Telegram. Os usuários podem interagir com os bots, enviando-lhes mensagens, comandos e  solicitações inline . Podemos controlar nossos bots usando solicitações HTTPS para Telegram  Bot API .

Modo de leitura em bots de telegrama de sua documentação oficial https://core.telegram.org/bots

Como criar um Telegram Bot

  • Instale o Telegram da Play Store ou da Apple Store.
  • faça uma conta se ainda não tiver uma.
  • Em seguida, pesquise “ botfather ” e clique no BotFather. Botfather  é um bot do Telegram pré-construído que permite criar, gerenciar e deletar seus bots.
  • Clique no botão iniciar e escolha /newbot
  • Dê ao seu bot um  nome  e  nome de usuário .
  • Se o seu bot for criado com sucesso, você receberá uma  mensagem  com um link para acessar o seu novo  bot  e o token do  bot . O token do bot é um id único que devemos comunicar com o bot.










BotFather, [Dec 7, 2021 at 08:26]Done! Congratulations on your new bot. You will find it at t.me /SmartCoreSP_bot. You can now add a description, about section and profile picture for your bot, see /help for a list of commands. By the way, when you've finished creating your cool bot, ping our Bot Support if you want a better username for it. Just make sure the bot is fully operational before you do this.Use this token to access the HTTP API:
XXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXXXKeep your token secure and store it safely, it can be used by anyone to control your bot.For a description of the Bot API, see this page: https://core.telegram.org/bots/api


Obtenha seu id de bate-papo do Telegram

No mensageiro do telegrama, cada usuário, chat e grupo tem um ID único. Portanto, para evitar qualquer acesso não autorizado a nossos bots de outros usuários, precisamos encontrar nosso ID de usuário exclusivo e usá-lo dentro de nosso código Basic ANNEX.

Ao fazer isso, toda vez que o ESP recebe uma mensagem do bot, ele verifica se o ID corresponde ao ID predefinido no código e, então, apenas se corresponde, ele executa os comandos. Siga as etapas abaixo para encontrar seu ID usado.

  • Em sua conta do Telegram, pesquise “@myidbot” ou abra este link  t.me/myidbot  em seu smartphone.
  • Inicie uma conversa com esse bot e digite  /getid . Você receberá uma resposta com seu ID de usuário. 
  • Observe o ID do usuário, pois vamos precisar dele mais tarde.



Suporte Annex para TELEGRAM

Annex BASIC implementa o suporte direto para o mensageiro  TELEGRAM

Usando esses comandos/funções, é possível:
 
- Envie mensagens de texto completas
- Envie mensagens de texto em estilo html
- Obter identificação do usuário
- Receba mensagens de texto
- Receba mensagens de texto assíncronas
- Enviar imagens

Os comandos são:

Definir o ID do token do telegrama
TELEGRAM.SetToken "token"
 
Defina o modo de operação
TELEGRAM.SetMode 0   'define as comunicações https básicas (este é o padrão)
TELEGRAM.SetMode   'define a comunicação https usando um certificado (interno)

Defina o tempo máximo que os comandos irão esperar por uma resposta do servidor de telegramas
TELEGRAM.SetWait 10 'definir o tempo máximo em 10 segundos (o padrão é 10 segundos)

Receba atualizações de mensagens recebidas no formato json, mas no modo assíncrono.
Ele usa o mesmo evento ONWGETASYNC usado pelo comando WGETASYNC
TELEGRAM.getUpdatesAsync

As funções são:

Um método simples para testar o token de autenticação do seu bot. Retorna informações básicas sobre o bot na forma de um objeto User.

ret$ = TELEGRAM.getMe$

Enviar uma mensagem de texto. Se o html opcional for 1, o texto pode ser formatado usando algumas tags html

ret$ = TELEGRAM.sendMessage$( chat_id, "message" [, html] )

Mais informações aqui https://core.telegram.org/bots/api#html-style 

Receber atualização de mensagens recebidas em formato json

ret$ = TELEGRAM.getUpdates$

Envie uma imagem; a imagem pode estar no formato jpeg, bmp, gif ou png

ret$ = TELEGRAM.sendImage$( chat_id, image_path$)


Exemplo CONTROLANDO LED VIA TELEGRAM


telegram.settoken "1234567890:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef"

telegram.setwait 10

telegram.setmode 0

 

onwgetasync asynco

'Get the update each 5 seconds

timer0 5000, getmessages

wait

 

getmessages:

telegram.GetUpdatesAsync

return

 

'Receive the messages

asynco:

r$ = WGETRESULT$

wlog r$

text$ = json$(r$, "text")

if (text$ <> "not found") then

  c$ = json$(r$, "chat.id")   'get the chat_id

  if(text$ = "LED ON") then

     PIN(13)= 1 

  end if

  if(text$ = "LED OFF") then

     PIN(13)= 0 

  end if

end if

return


Mandando mensagem para U-blox NINA W106 através do APP




MONTAGEM


LIGANDO E DESLIGANDO LED VIA TELEGRAM 
GPIO13 - IO35 NO MÓDULO U-BLOX W106


Questões: suporte@smartcore.com.br

FONTES: 

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

Nenhum comentário:

Postar um comentário