Por que e como dar o pontapé inicial em projetos de IoT celular usando a placa de desenvolvimento de IoT da Microchip

Contributed By DigiKey's North American Editors

A Internet Celular das Coisas (IoT), uma tecnologia de rede de área ampla de baixa potência (LPWAN), oferece um caminho claro e comprovado para uma IoT segura e robusta para aplicações que vão desde cidades inteligentes até a agricultura, e monitoramento remoto de infra-estrutura. No entanto, a IoT celular é uma tecnologia complexa, assustadora para projetistas inexperientes que embarcam em um projeto.

Entretanto, os desafios de projeto da tecnologia IoT celular podem ser amenizados baseando-se em projetos de placas de desenvolvimento celular que utilizam microcontroladores (MCU) e ambientes de projeto integrado (IDEs) de uso geral familiares. Com o apoio de bibliotecas de software de código aberto e conexão de sensores simples, estas placas de desenvolvimento facilitam a tarefa do projetista de começar com projetos de IoT celular, desde o layout de hardware até o envio de dados para a nuvem.

Este artigo delineia brevemente os benefícios da tecnologia IoT celular, antes de explicar as complexidades de projeto que a tecnologia pode introduzir. O artigo descreve então como o uso de placas de desenvolvimento de IoT celular pode eliminar grande parte desta complexidade. Finalmente, o artigo descreve como configurar uma placa de desenvolvimento da Microchip Technology para enviar dados simples de cor e temperatura para a nuvem.

O que é a loT celular?

A tecnologia IoT celular utiliza tecnologia celular de baixa potência para conectar dispositivos finais IoT (tais como sensores e atuadores) à nuvem. É uma tecnologia LPWAN caracterizada pelo alcance de mais de um quilômetro, suporte de dispositivos finais de alta densidade e baixa taxa de transferência.

Enquanto que outras tecnologias LPWAN existem — notavelmente LoRaWAN (veja, "Acelere projetos IoT LoRaWAN com um kit de iniciante de ponta a ponta") e Sigfox — IoT celular oferece algumas vantagens importantes, incluindo:

  • À prova de futuro: Como padrão, a especificação para a IoT celular está constantemente em revisão e desenvolvimento.
  • Escalabilidade: A IoT celular pode suportar a rápida implantação da tecnologia IoT através de uma arquitetura celular estabelecida.
  • Qualidade de Serviço (QoS): IoT celular oferece alta confiabilidade porque é baseado em uma infra-estrutura comprovada e amadurecida em aplicações comerciais de alto volume.
  • Interoperabilidade IP: Os dispositivos finais podem ser conectados diretamente à nuvem sem a necessidade de gateways caros e complexos.

Os projetistas precisam levar em conta que com a IoT celular há uma despesa contínua associada à transferência de dados. Este não é o caso de tecnologias concorrentes como LoRaWAN, que utilizam o espectro de frequência não licenciado. No entanto, os custos de dados da IoT celular estão diminuindo devido às pressões competitivas e ao aumento do uso de computação de borda, reduzindo o volume de dados não notáveis enviados através da rede.

A IoT celular é regida por um padrão de telecomunicações regulamentado e atualizado pelo Projeto de Parceria de Terceira Geração (3GPP). A versão 13 do padrão 3GPP ampliou suas categorias de modems máquina a máquina (M2M) para permitir modems de baixo custo, baixa potência e baixa taxa de transferência adequados para a conectividade IoT. Outras versões do padrão resultaram em mais aprimoramentos para estes modems IoT.

Os sensores sem fio equipados com modems IoT celular podem enviar dados através de quilômetros para a nuvem sem a necessidade de gateways caros e complexos, com a segurança e a QoS pela qual o celular é conhecido.

A diferença entre LTE-M e NB-IoT

A IoT celular vem em duas formas, LTE categoria M1 (LTE-M) e banda estreita IoT (NB-IoT). Ambos os tipos são projetados para uso com dispositivos com recursos limitados, muitas vezes alimentados por bateria, típicos da IoT e IoT Industrial IoT (IIoT). Como os modems IoT se conectam à infra-estrutura celular estabelecida, cada um requer seu próprio módulo de identidade de assinante (SIM).

O LTE-M é baseado na tecnologia despojada LTE ("4G"). Ele suporta comunicação segura, cobertura onipresente e alta capacidade do sistema. Sua capacidade de operar como um sistema full-duplex sobre uma largura de banda relativamente ampla (1,4 megahertz (MHz)) melhora a latência e a taxa de transferência em comparação com a NB-IoT. A taxa de transferência de dados brutos é de 300 quilobits por segundo (Kbits/s) downlink e 375 Kbits/s uplink. A tecnologia é adequada para conexões IP seguras de ponta a ponta, e a mobilidade é suportada por técnicas de transferência de células LTE. O LTE-M é adequado para aplicações móveis, tais como rastreamento de ativos ou assistência médica.

NB-IoT é projetado principalmente para a eficiência energética e para uma melhor penetração em edifícios e outras áreas hostis à RF. Ao contrário do LTE-M, ele não se baseia na camada física LTE (PHY). A complexidade do modem é ainda menor do que a de um dispositivo LTE-M, pois a NB-IoT utiliza uma largura de banda de 200 quilohertz (kHz). Embora a taxa de transferência de dados brutos seja modesta 60/30 Kbits/s, o alcance é melhor do que LTE-M. A NB-IoT é adequada para aplicações estáticas, tais como medidores inteligentes que podem ser obscurecidos por paredes.

Modems comerciais de IoT celular

Uma gama de modems comerciais LTE-M/NB-IoT está agora disponível. Um exemplo é o módulo Monarch 2 GM02S da Sequans. O dispositivo suporta uma única front-end RF adequada de unidade de estoque (SKU) para 20 das bandas globais de LTE. É fornecido em um módulo LGA compacto medindo 16,3 x 17 x 1,85 milímetros (mm). O módulo atende às exigências do 3GPP Release 14/15. Alimentado por uma fonte única de 2,2 a 5,5 volts, o modem é capaz de uma potência máxima de transmissão de +23 decibéis referenciados a 1 miliwatt (mW) (dBm).

O GM02S suporta um SIM externo e eSIM, assim como SIMs integrados. Uma interface de antena de 50 ohm (Ω) está incluída. O dispositivo é fornecido com uma pilha de software LTE-M/NB-IoT e o software Cloud Connector da Sequan para facilitar a conexão com plataformas comerciais de nuvem (Figura 1).

Imagem do modem GM02S LTE-M/NB-IoT da SequansFigura 1: O modem GM02S LTE-M/NB-IoT da Sequans vem em um invólucro compacto e com uma pilha de software maduro. (Fonte da imagem: Sequans)

Desafios do projeto IoT celular

Embora o modem GM02S seja um dispositivo altamente integrado fornecido com uma pilha de software e conectividade em nuvem, como todos os modems comerciais, ainda há um trabalho considerável de desenvolvimento necessário antes que uma aplicação IoT esteja enviando dados sem problemas ao longo de quilômetros para a nuvem.

O modem é projetado exclusivamente para cuidar da comunicação entre o dispositivo final e a estação base. Um processador de supervisão e aplicação separado é necessário para controlar o modem enquanto também executa o software de aplicação do sensor. Além disso, o projetista também precisa considerar os circuitos da antena, a fonte de alimentação e o equipamento de um dispositivo final com um SIM para garantir uma conectividade contínua com a rede celular (ver, "Como usar antenas integradas multibandas para economizar espaço, complexidade e custo nos projetos de IoT").

Além do projeto de hardware, algumas habilidades de codificação são necessárias para obter um módulo celular para se conectar à rede e receber/transmitir dados. Se o projeto utiliza um MCU de aplicação externa, ele normalmente se comunica com o módulo celular utilizando um link serial UART (embora outras interfaces de E/S também sejam utilizadas). Os comandos AT ("atenção") são o meio padrão de controle de um modem celular. Os comandos compreendem uma série de cadeias de textos curtos que podem ser combinados para produzir operações como discagem, desligamento e alteração dos parâmetros da conexão.

Há dois tipos de comandos AT: Os comandos básicos são aqueles que não começam com "+". "D" (Discagem), "A" (Resposta), "H" (Controle de gancho), e "O" (Retorno ao estado de dados on-line) são exemplos. Os comandos estendidos são aqueles que começam com "+". Por exemplo, "+CMGS" (Enviar mensagem SMS), "+CMGL" (Listar mensagens SMS) e "+CMGR" (Ler mensagens SMS) (ver "Use um módulo celular para conectar um projeto maker ao IoT").

Estas considerações de hardware e software trazem complexidade para a IoT celular que poderia retardar o progresso com projetistas menos experientes. Felizmente, os fabricantes de aplicações MCU e de modems IoT celular agora se uniram para oferecer ferramentas de design de hardware e software que facilitam muito o aproveitamento desta importante tecnologia LPWAN.

Eliminando a complexidade com as placas de desenvolvimento IoT

Enfrentar os desafios do projeto da IoT celular é consideravelmente facilitado ao se basear um protótipo em uma placa de desenvolvimento projetada para esse fim. O hardware da placa de desenvolvimento normalmente inclui uma antena, uma fonte de energia, um SIM com alguma permissão de dados gratuita, um processador de aplicação e redes de sintonia para garantir um bom desempenho de RF. Isto dá aos projetistas um sólido avanço de hardware para seu projeto e permite que eles se concentrem no desenvolvimento de aplicações. Com a escolha certa da placa de desenvolvimento, o desenvolvimento da aplicação pode até mesmo ser conduzido em uma IDE familiar.

Um exemplo de uma popular placa de desenvolvimento de IoT celular é a miniplaca de desenvolvimento celular AVR-IoT EV70N78A da Microchip. Esta é uma plataforma de hardware baseada no popular MCU AVR128DB48 da Microchip, e no módulo celular Sequans Monarch 2 GM02S, detalhado acima. O MCU é um dispositivo de 8 bits, 24 MHz. Tem 128 quilobytes (Kbytes) de flash, 16 Kbytes de SRAM, 512 bytes de EEPROM, e vem em um invólucro de 48 pinos.

A placa de desenvolvimento também integra um elemento seguro ATECC608B; uma vez conectado a uma rede LTE-M ou NB-IoT, o ATECC608B é usado para autenticar o hardware com a nuvem para identificar de forma única cada placa.

Para tornar as coisas ainda mais fáceis para o projetista, a placa de desenvolvimento Microchip também inclui um cartão SIM Truphone com 150 megabytes (Mbytes) de dados prontos para ativação.

A placa de desenvolvimento apresenta cinco LEDs de usuário, dois botões mecânicos, um cristal de 32,768 kHz, sensores de cor e temperatura, um Adafruit Feather compatível com conector de borda, um conector Qwiic I2C, um depurador na placa, uma porta USB, opções de bateria e alimentação de entrada externa e um carregador de bateria MCP73830 de íon-Li/Li-po com LED de status de carga (Figura 2).

Imagem da miniplaca de desenvolvimento celular AVR-IoT (clique para ampliar)Figura 2: A miniplaca de desenvolvimento celular AVR-IoT é baseada no MCU AVR128DB48 e vem completa com um cartão SIM e 150 Mbytes de dados. (Fonte da imagem: Microchip Technology)

Iniciando um projeto de IoT celular

O objetivo do IoT celular é conectar dispositivos finais de IoT sem fio, tais como sensores e atuadores para que seus dados possam ser enviados por mais de quilômetros para a nuvem. Na placa de desenvolvimento Microchip, o MCU é pré-carregado com uma imagem de firmware formando uma aplicação de demonstração que permite aos usuários conectar-se rapidamente e enviar dados dos sensores de temperatura e cor na placa para uma área restrita baseada em nuvem (hospedada pela AWS).

Para preparar o hardware para o desenvolvimento, é simplesmente um caso de ativar e inserir o cartão SIM, conectar a antena externa à placa, conectar a porta de depuração USB-C da placa ao PC, escanear o código QR na parte inferior da placa ou abrir o dispositivo de armazenamento em massa, e seguir o CLICK-ME.HTM para a página web do kit.

Uma ferramenta de provisionamento IoT da Microchip, disponível na Github, fornece uma solução fácil de usar para configurar um mini AVR-IoT celular para o provedor de nuvem selecionado, configurar o provedor de rede e selecionar as bandas de frequência celular. (Para que o firmware de demonstração da área restrita funcione, a placa de desenvolvimento deve ser provisionada para a área restrita da AWS Microchip).

Uma vez que os desenvolvedores tenham ganho alguma confiança com a aplicação demo, eles podem começar a construir sua própria aplicação usando o suporte IDE Arduino completo da placa de desenvolvimento. Este suporte é baseado em uma biblioteca Arduino AVR IoT celular hospedada no Github. A biblioteca é construída em cima do DxCore de código aberto (Figura 3).

Imagem da biblioteca de IoT celular da Microchip AVR IoT (clique para ampliar)Figura 3: A biblioteca IoT celular da AVR IoT (laranja) inclui módulos de software para programação e controle da placa de desenvolvimento (mostrada de forma simplificada em verde). (Fonte da imagem: Microchip Technology)

O depurador na placa (PKOB nano) fornece suporte total de programação para a IDE Arduino. Não há necessidade de ferramentas externas, e também fornece acesso a uma interface de porta serial (ponte serial-para-USB) e dois canais analisadores lógicos (GPIO de depuração). O depurador na placa da miniplaca AVR IoT celular aparece como um dispositivo de interface humana (HID) no subsistema USB do computador host. Para projetos mais ambiciosos, os conectores de borda compatíveis com Qwiic e Feather da placa de desenvolvimento permitem uma fácil expansão a partir de uma ampla seleção de placas adicionais da Sparkfun e Adafruit (Figura 4).

Imagem do diagrama de blocos da placa de desenvolvimento Microchip AVR IoTFigura 4: Este diagrama de blocos da placa de desenvolvimento AVR IoT mostra que a conexão com o PC host é através do link USB do depurador, enquanto a programação do MCU da aplicação é feita através do link UART do depurador. Observe que a conexão entre o MCU de aplicação e o modem celular é também via UART. (Fonte da imagem: Microchip Technology)

Para começar a programação da aplicação é necessário baixar e instalar a IDE Arduino e o DxCore. Em seguida, a IDE Arduino precisa ser configurada para permitir que a biblioteca Arduino do AVR IoT celular funcione (Lista 1).

Lista de configuração da IDE Arduino para permitir que a biblioteca Arduino do AVR IoT celular funcioneLista 1: Configuração da IDE Arduino para permitir que a biblioteca Arduino do AVR IoT celular funcione. (Fonte do código: Microchip Technology)

Uma vez configurada a IDE, a biblioteca pode ser instalada. Quando isto é feito, vários exemplos de bibliotecas para a placa de desenvolvimento podem ser acessados. Os projetistas familiarizados com a IDE Visual Studio Code podem utilizá-la para o desenvolvimento do AVR IoT, desde que instalem o plugin Arduino. O código de aplicação Arduino desenvolvido em qualquer uma das IDE é portado para o MCU da placa de desenvolvimento através do depurador na placa.

Fazendo medições de potência

A IoT celular é projetada para funcionar com baixa potência para prolongar a vida útil dos dispositivos finais de IoT alimentados por bateria. É importante, portanto, otimizar o código de aplicação para um consumo mínimo de energia.

Na placa de desenvolvimento Microchip, a alimentação de todas as partes da placa é conectada através de cinco trilhas de corte. Estas também são destinadas para fins de medição de corrente. Para medir a potência no circuito desejado, é um caso de cortar a trilha e conectar um amperímetro através dos furos (Figura 5).

Imagem das trilhas de corte na placa de desenvolvimento do Microchip AVR IoTFigura 5: As trilhas de corte na placa de desenvolvimento do AVR IoT podem ser usadas para medir o consumo de potência para circuitos importantes. (Fonte da imagem: Microchip Technology)

A placa de desenvolvimento também tem um circuito de medição de tensão do sistema usando seu interruptor MIC94163 e um divisor de tensão conectado a um pino do ADC no MCU, permitindo a medição sob demanda e evitando fuga de potência através do divisor de tensão. Para medir a tensão do sistema, siga estes passos:

  1. Configure a referência de tensão para o ADC.
  2. Defina o pino (PB3) de habilitação da medição de tensão do sistema MCU GPIO para alto para habilitar o divisor de tensão.
  3. Configure o pino (PE0) de medição de tensão do sistema MCU ADCO como a entrada para o ADC.
  4. Execute uma conversão de analógico para digital (ADC) de terminal simples.
  5. Calcule a tensão usando a equação: V = resultado ADC x VREF x 4/resolução ADC.

Finalmente, também é simples medir a tensão de alimentação, seguindo estas etapas:

  1. Configure a referência de tensão para o ADC.
  2. Selecione VDD ou VDDIO2 como a entrada positiva para o ADC. (VDD e VDDIO2 estão disponíveis como canais de entrada internos para o ADC do MCU).
  3. Execute uma conversão ADC de terminal simples.
  4. Calcule a tensão usando a equação: V = resultado ADC x VREF x 10/resolução ADC.

Conclusão

IoT celular é uma LPWAN popular com crescente potencial comercial. Entretanto, projetar dispositivos finais alimentados por IoT celular requer experiência tanto em hardware quanto em software. Para ajudar os projetistas, as novas placas de desenvolvimento de IoT celular, como a miniplaca de desenvolvimento celular AVR-IoT da Microchip EV70N78A, oferecem uma rota rápida de prototipagem.

A placa de desenvolvimento utiliza um modem LTE-M/NB-IoT de alta tecnologia e um popular MCU da Microchip. O desenvolvimento do código de aplicação é simplificado usando a IDE Arduino ou Visual Studio Code.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

About this publisher

DigiKey's North American Editors