top of page

Conectando o Sensor de Porta NDS03A da à Plataforma IOTA utilizando a conectividade NB-IoT

Neste tutorial, você aprenderá como conectar e configurar o sensor de porta NDS03A (NB-IoT Door Sensor) da à plataforma IOTA, utilizando a conectividade NB-IoT e o conversor USB-UART para comunicação serial. Este processo permitirá o monitoramento remoto da geolocalização e status do sensor em tempo real. Iremos abordar desde a configuração inicial do dispositivo até a visualização dos dados na plataforma IOTA.


Sensor NDS03A


Introdução


Bem-vindo ao nosso tutorial sobre como conectar o sensor de porta NDS03A a uma plataforma de Internet das Coisas (IoT), a plataforma IOTA, utilizando o protocolo MQTT.

O NDS03A é um sensor de porta NB-IoT que detecta o status de abertura e fechamento de portas e envia esses dados para um servidor IoT via rede NB-IoT. Ele pode ser conectado a dois sensores de porta, permitindo monitorar o status das portas, a duração das aberturas e a contagem de aberturas no servidor IoT. O sensor envia dados periodicamente a cada 4 horas e também a cada ação de abertura/fechamento da porta. Ele conta os eventos de abertura e calcula a duração da última abertura. Opcionalmente, o usuário pode desabilitar os envios de dados a cada evento e configurar o sensor para enviar dados apenas periodicamente. O NDS03A também registra eventos de abertura/fechamento e permite recuperar o histórico via NB-IoT.

O dispositivo possui uma função de alarme que notifica se a porta permanecer aberta por um determinado tempo. Projetado para uso externo, o NDS03A tem uma caixa à prova d'água e uma bateria industrial com uma vida útil de até 5 anos, dependendo do ambiente, período de atualização e método de uplink. O NB-IoT é uma tecnologia de baixa potência e longa distância (LPWA) desenvolvida para dispositivos e serviços IoT, melhorando significativamente o consumo de energia, a capacidade do sistema e a eficiência do espectro, especialmente cobertura em áreas remotas. O NDS03A suporta métodos de uplink como TCP, MQTT, UDP e CoAP, adequados para diversas aplicações. Para utilizar o NDS03A, é necessário verificar a cobertura NB-IoT na área de uso (pode ser verificada pelo link) e obter um cartão SIM NB-IoT ativado, que deve ser instalado no dispositivo para conexão à rede NB-IoT.


Você pode adquirir o sensor pelo link da loja da VIMAC Soluções.

Você pode acessar o tutorial do link que mostra como contratar seu plano de conectividade NB-IoT na plataforma IOTA.

Este tutorial irá guiá-lo através do processo de configuração e conexão do NDS03A à plataforma IOTA via MQTT. O protocolo MQTT (Message Queuing Telemetry Transport) é uma escolha ideal para dispositivos IoT devido à sua leveza e eficiência na comunicação, mesmo em redes instáveis.


Abaixo, apresentamos uma ilustração da rede de comunicação que será estabelecida, destacando os componentes essenciais para uma conexão estável e segura.




Vamos começar a transformar seu NDS03A em uma parte integral e inteligente do seu ecossistema IoT!



Antes de começar, certifique-se de ter os seguintes itens para que você consiga seguir todos os passos do tutorial:


  • NB-IoT Sensor NDS03A

  • Um cartão SIM compatível com NB-IoT, com plano de dados ativo

  • Um conversor USB-UART da RoboCore

  • Fios de conexão (Jumpers)

  • Arduíno IDE instalado no computador

  • Credenciais de acesso à plataforma IOTA (usuário e senha).

  • Um computador com acesso à Internet



Passo 1: Configuração da Plataforma IOTA



Caso você ainda não tenha se cadastrado na plataforma, clique no botão 'Register' da tela inicial da plataforma para se cadastrar.

Faça seu login na plataforma utilizando suas credenciais cadastradas.

No sidebar da plataforma IOTA, você pode cadastrar um novo dispositivo na opção 'Devices' clicando em '+' (Create Device).

Para esse dispositivo, selecione a opção 'Custom MQTT' quando abrir a janela 'Connectors' (como na imagem abaixo). Preencha as informações do dispositivo, como: nome do dispositivo e sua descrição. Clique em 'Create' para finalizar o cadastro do dispositivo.



Após o cadastro, será gerado um "client_id". Você deve guardar esses caracteres para ser usado adiante. Ele pode ser acessado nos detalhes do dispositivo cadastrado (como na imagem seguinte).


Passo 2: Configuração Física do Dispositivo


2.1.      Inserção do Cartão SIM:


Nesse passo, vamos abrir o dispositivo e acessar o compartimento do SIM no sensor NB-IoT (conforme demonstrado na imagem abaixo). Será necessário remover o módulo NB-IoT e inserir o cartão SIM no slot apropriado.



Após colocar o SIM no slot, coloque o módulo NB-IoT de volta no local e feche o compartimento com cuidado.


2.2.      Conectar o Conversor USB-UART RoboCore:


Para configurar o NDS03A , você precisará utilizar a porta serial para definir o endereço do servidor e o tópico de uplink, determinando onde e como os pacotes serão enviados. O sensor NDS03A suporta comandos AT, o que significa que você pode usar um adaptador USB para TTL para conectá-lo e realizar a configuração.


Neste tutorial, utilizaremos o Conversor USB-UART da RoboCore. Primeiro, identifique os pinos no conversor USB-UART da RoboCore, que são os pinos TX, RX e GND. Em seguida, conecte os pinos correspondentes do sensor NDS03A ao conversor: o pino TX do conversor ao pino RX do NDS03A , o pino RX do conversor ao pino TX do NDS03A e o pino GND do conversor ao pino GND do NDS03A .


TX (transmissão) do sensor ao RX (recepção) do conversor.

RX (recepção) do sensor ao TX (transmissão) do conversor.

GND (terra) do sensor ao GND (terra) do conversor.



Utilizando um cabo USB, conecte o conversor ao computador.

Com a conexão estabelecida, você estará pronto para enviar comandos AT ao NDS03A através de um terminal serial no seu computador. Isso permitirá que você configure as definições necessárias, como o endereço do servidor e o tópico de uplink, garantindo que os dados do sensor sejam corretamente enviados para a plataforma IOTA.



Passo 3: Configuração Inicial


3.1. Instalação do Driver USB-UART da RoboCore


Para começar, você precisará baixar e instalar os drivers adequados para o conversor USB-UART da RoboCore. Você pode encontrar os drivers no seguinte https://www.robocore.net/tutoriais/instalacao-driver-da-blackboard#blackboard-uno-v2. Após a instalação, verifique no Gerenciador de Dispositivos (para usuários de Windows) ou na ferramenta equivalente no macOS/Linux se o dispositivo foi reconhecido e se uma porta COM foi atribuída.


3.2. Acesso às Configurações do Dispositivo


Certifique-se de que a chave do NDS03A esteja na posição FLASH e ligue o dispositivo conectando o jumper. Assim que o NDS03A for ligado, ele exibirá informações do sistema.



No Arduino IDE, em ferramentas -> Porta, defina a porta em que o UARTT está conectado, como exemplificado na imagem abaixo.

Em seguida, abra o Monitor Serial no Arduino IDE através do menu Ferramentas > Monitor Serial. Configure a taxa de baudrate no Monitor Serial para 9600, que é a taxa especificada pelo dispositivo.


3.3. Parâmetros de Configuração


No Monitor Serial do Arduino IDE, digite a senha '12345678' para acessar a entrada de comandos AT, conforme indicado no manual do sensor.


Você precisará configurar os parâmetros de APN do cartão SIM e outros comandos iniciais. Acesse o dispositivo que você criou na plataforma IOTA e vá para a aba chamada 'MQTT'. Nesta aba, você encontrará os seguintes itens: Topic, ClientID, Username, Password e Host/Port, que serão usados para configurar os comandos AT.


3.4. Conexão e Verificação


Insira os comandos AT abaixo no Monitor Serial do Arduino IDE de acordo com os dados da aba MQTT do 'Device' na plataforma IOTA, conforme acessamos no item anterior.


Para configurar o dispositivo, use os seguintes comandos AT:


1. Definir APN (com o SIM da Links Field): AT+APN=LF.BR

  

2. Definir Protocolo MQTT para Uplink: AT+PRO=3

   

3. Definir Endereço e Porta do Servidor MQTT: AT+SERVADDR=iota.vimacsolucoes.com.br,1883

  

4. Configurar o ClientID: AT+CLIENT=your_client_id


5. Configurar o Username: AT+UNAME=your_username


6. Configurar Password: AT+PWD=your_password


7. Configurar o Tópico de Publicação MQTT: AT+PUBTOPIC=your_topic


8. Configurar o Tópico de Subscrição MQTT: AT+SUBTOPIC=your_subtopic


Certifique-se de substituir `your_client_id`, `your_topic`, `your_username`, 'your_password' e `your_subtopic` pelos valores específicos fornecidos pela plataforma IOTA.


Verifique pelo Monitor Serial se foi possível conectar-se à plataforma e enviar os dados. Na aba 'Live Data' do 'Device', você também poderá visualizar se os dados foram recebidos na plataforma IOTA, confirmando que a configuração foi realizada com sucesso.


Passo 4: Visualizando os Dados


4.1. Decodificação dos Dados

Primeiro, vamos decodificar os dados recebidos pelo sensor. Acesse a aba 'PAYLOAD FORMATTER' do seu dispositivo cadastrado na plataforma IOTA. Na opção Formatter Type, selecione CUSTOM JAVASCRIPT MQTT (conforme mostrado na imagem abaixo).



No campo Formatter Code da aba 'PAYLOAD FORMATTER', adicione o seguinte código:


function decodeUplink(input) { 
var payload = input.bytes; 

// Extrair os campos da sequência
   const deviceId = payload.slice(0, 16); 
   const versionHex = payload.slice(16, 20); 
   const batHex = payload.slice(20, 24); 
   const signalHex = payload.slice(24, 26);
   const modHex = payload.slice(26, 28);
   const doorStatustHex = payload.slice(28, 30);
   const alarmStatustHex = payload.slice(30, 32);
   const doorOpenNumHex = payload.slice(32, 38);
   const lastOpenTimeHex = payload.slice(38, 44);
   const timestampHex = payload.slice(44, 52);

// Converter campos HEX para valores úteis
   const version = parseInt(versionHex, 16);
   const bat = parseInt(batHex, 16) / 1000; // Converter mV para V
   const signal = parseInt(signalHex, 16);
   const mod = parseInt(modHex, 16);
   const doorStatus = parseInt(doorStatustHex, 16);
   const alarmStatus = parseInt(alarmStatustHex, 16);
   const doorOpenNum = parseInt(doorOpenNumHex, 16);
   const lastOpenTime = parseInt(lastOpenTimeHex, 16);
   const timestamp = parseInt(timestampHex, 16);

return {
 "data": {
     "Device_ID": deviceId,
     "Version": version, 
     "BAT": bat,
     "Signal": signal,
     "Mod": mod,
     "Door_Status": doorStatus,
     "Alarm_Status": alarmStatus,
     "Door_Open_Num": doorOpenNum,
     "Last_Open_Time": lastOpenTime,
     "Timestamp": timestamp,
            }
        }
}

Após adicionar o código, clique no botão 'Save Formatter' para salvar as configurações.


4.2.      Criando sua Dashboard na plataforma IOTA:


Para visualizar os dados, você precisará criar uma Dashboard na plataforma. Para isso, siga os passos abaixo:

  1. Acesse no sidebar da plataforma a opção 'Dashboard' e clique na opção '+' (Create Dashboard) para criar sua nova Dashboard.

  2. Adicione um widget clicando em '+' (Add Widget) para mostrar os dados do sensor de porta. Selecione as opções na janela 'New Widget' de acordo com os dados que você deseja visualizar.


Exemplo de Dashboard usando o sensor de porta NDS03A NB-IoT para verificar se a porta está aberta ou fechada:


Para visualizar os dados de uma porta utilizando o sensor NDS03A:

  1. Configure o widget na janela 'New Widget' na para puxar os dados do sensor recentemente adicionado.

  2. Não se esqueça de clicar em 'Save Dashboard' para salvar sua Dashboard criada e as alterações que forem sendo feitas!


Você pode adicionar quantos Widgets quiser na Dashboard, e esses Widgets podem ser configurados de várias formas diferentes de acordo com suas necessidades. Isso permite personalizar a visualização dos dados de acordo com o que é mais relevante para o seu projeto.

Nesse exemplo, selecionamos o tipo de gráfico a ser visualizado o tipo 'text' e a variável 'decoded_payload.Door_Status' (conforme a imagem abaixo).


Com essas configurações, obtivemos o Widget abaixo, sendo que quando retorna o número 1 indica que a porta está aberta. Caso retornasse o número 0, indicaria que a porta estava fechada.




Conclusão


Espero que com esse tutorial você tenha compreendido o processo de configuração e conexão do sensor de porta NDS03A à plataforma IOTA utilizando o protocolo MQTT. Ao seguir este tutorial, você aprendeu a:


  1. Entender o NDS03A : Compreender as funcionalidades e aplicações do sensor de porta NDS03A , bem como os benefícios do uso da tecnologia NB-IoT.

  2. Verificar a Cobertura NB-IoT: Garantir que há cobertura NB-IoT em sua área e que a operadora local suporta as bandas necessárias.

  3. Preparar o Dispositivo: Instalar o cartão SIM NB-IoT e configurar o NDS03A para conexão à rede.

  4. Configurar a Conexão MQTT: Configurar o protocolo MQTT para a transmissão de dados do NDS03A para a plataforma IOTA.

  5. Visualizar os Dados: Acessar e interpretar os dados coletados pelo NDS03A na plataforma IOTA, permitindo monitoramento e controle eficientes.


Com essas etapas concluídas, você está agora equipado para integrar o NDS03A em diversos cenários de aplicação, desde segurança residencial e comercial até logística, automação de edifícios, controle de acesso e monitoramento de infraestrutura crítica. O uso do MQTT garante que os dados sejam transmitidos de maneira eficiente e confiável, aproveitando ao máximo os recursos de baixo consumo de energia e alta cobertura do NB-IoT.

Esperamos que este tutorial tenha sido útil e informativo, facilitando a implementação do NDS03A em seu projeto de IoT. Se você tiver qualquer dúvida ou encontrar algum problema, não hesite em consultar a documentação oficial ou nos enviar uma mensagem.

Aproveite as vantagens de ter um dispositivo de alta tecnologia como o NDS03A integrado à sua rede IoT e continue explorando novas possibilidades e aplicações para melhorar seus sistemas e processos.

Obrigado por seguir este tutorial e boa sorte com seus projetos de IoT!



Comentários


©2026 by VIMAC SOLUÇÕES EM TECNOLOGIA E TELECOM LTDA. CNPJ: 45.029.884/0001-45

bottom of page