Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Um módulo guardião é hardware adicional que incorpora um chip Azure Sphere e é ligado fisicamente a uma porta de um dispositivo "brownfield" — ou seja, um dispositivo existente que pode já estar a ser utilizado.
Ao usar um módulo guardião, pode adicionar capacidades IoT seguras a equipamentos que não suportam conectividade à internet ou que não a suportam de forma segura. Em suma, um módulo guardião fornece uma forma de implementar conectividade segura em dispositivos existentes sem expor esses dispositivos à internet. Por ser um dispositivo Azure Sphere, todas as funcionalidades de segurança e conectividade do Azure Sphere estão disponíveis: todos os dados são encriptados, as atualizações do sistema operativo e das aplicações são entregues de forma segura, e a autenticação assegura que o módulo comunica apenas com hosts de confiança.
Eis como funciona um módulo guardião:
O módulo guardião liga-se a um dispositivo brownfield, conforme descrito na secção de Conectividade deste tópico. O próprio dispositivo brownfield não está ligado à rede.
O sistema operativo Azure Sphere corre no módulo guardian juntamente com uma aplicação personalizada de alto nível e quaisquer outras aplicações Azure Sphere que o teu cenário exigir.
O módulo guardian utiliza o Azure Sphere Security Service para autenticação baseada em certificados, reporte de falhas e atualizações de software via ar.
O dispositivo brownfield comunica com o módulo guardião, que pode responder através de uma ação local ou reportando a uma presença na cloud, como o Azure IoT Central.
Podes comprar módulos guardiões a um fornecedor e personalizá-los ainda mais para o teu cenário de uso, ou podes desenhar o teu próprio módulo guardião, possivelmente trabalhando com um parceiro de hardware. Consulte o site Azure Sphere para informações sobre fornecedores de hardware.
Utilizações de um módulo guardião
Um módulo guardião pode fazer tudo o que qualquer outro dispositivo Azure Sphere consegue, funcionando também como uma interface segura entre equipamentos existentes e uma rede externa. Possíveis utilizações para um módulo guardião incluem:
- Recolha de dados do dispositivo brownfield, processamento dos dados e transmissão segura para um endpoint cloud
- Enviar dados para múltiplos endpoints, desde que consiga autenticar cada endpoint
- Recolha de dados adicionais que não estão disponíveis no dispositivo brownfield; por exemplo, os sensores do módulo Guardian poderiam fornecer dados ambientais para serem utilizados juntamente com os dados operacionais do dispositivo brownfield
- Guardar dados do dispositivo brownfield caso a ligação seja perdida
O repositório de exemplos do Azure Sphere inclui dois exemplos que demonstram como um dispositivo Azure Sphere pode ser usado como módulo guardião:
- Device to Cloud mostra como um dispositivo Azure Sphere pode ser usado para recolha de dados enquanto fornece acesso seguro à internet para um dispositivo brownfield que está ligado a ele através de uma interface serial.
- Serviços de rede privada mostra como um dispositivo Azure Sphere pode fornecer acesso seguro à internet para um dispositivo brownfield que está ligado a ele através de uma interface TCP/IP.
Conetividade
Existem vários mecanismos suportados de conectividade entre o módulo guardião e a rede, bem como entre o módulo guardião e o dispositivo brownfield. Para informações gerais sobre soluções de conectividade Azure Sphere, veja Connectivity Overview e Requisitos de rede.
A aplicação de alto nível de um módulo guardião comunica a montante com a rede, incluindo o Azure Sphere Security Service e outros serviços cloud, e a jusante com o dispositivo brownfield:
Para ligações a montante entre o módulo guardião e a rede, pode usar Ethernet, Wi-Fi ou rede móvel.
Para ligações a jusante entre o módulo guardião e o equipamento brownfield, pode usar o seguinte:
- Qualquer interface serial, como UART, RS-485 ou SPI, que o dispositivo brownfield exponha
- Ethernet privado, que não expõe o dispositivo brownfield à rede pública
- Sem fios, como Bluetooth ou ZigBee
Desenvolvimento e implementação de aplicações
Desenvolver e implementar uma aplicação para um módulo guardian não é diferente de desenvolver e implementar uma aplicação para qualquer outro dispositivo Azure Sphere. Consulte Visão geral das aplicações Azure Sphere e Implementation basics para mais detalhes. Como em qualquer dispositivo Azure Sphere, um módulo guardião deve ter pelo menos uma aplicação Azure Sphere de alto nível e pode também ter aplicações compatíveis em tempo real.
Vai precisar de acesso ao serviço UART, que é a principal interface de programação e depuração entre o MT3620 e o ambiente de desenvolvimento a correr num computador anfitrião. Se desenhar o seu próprio módulo guardião, terá de garantir que os sinais da UART de serviço estão expostos e que disponibiliza uma forma de estabelecer interface com a UART de serviço, quer no próprio módulo guardião quer num componente de hardware separado. Se comprar módulos a um fornecedor, este deve fornecer uma solução que permita esta ligação.
Se o seu fornecedor ou outro terceiro criar a aplicação, poderá precisar de fornecer acesso ao seu catálogo do Azure Sphere para que o programador da aplicação possa carregar e testar a aplicação e criar uma implementação.
Aplicações de alto nível
Uma aplicação de alto nível de módulo guardião tem de ser desenvolvida à medida para os dispositivos brownfield de cada organização. Se o fornecedor do seu módulo guardião fornecer uma aplicação, certifique-se de receber o código-fonte e as bibliotecas da aplicação de alto nível para que possa modificar ou atualizar a aplicação conforme necessário.
Como em qualquer aplicação de dispositivo Azure Sphere, os detalhes específicos do dispositivo e da aplicação devem estar listados no manifesto aplicação. Por exemplo, as ligações do módulo guardião são detalhes específicos do dispositivo que devem ser incluídos no manifesto.
Uma aplicação de alto nível que corre num módulo guardião é responsável pelo seguinte:
- Estabelecimento e manutenção da conectividade com o equipamento existente
- Estabelecer e manter conectividade com a internet, incluindo o Azure Sphere Security Service e outros serviços cloud
- Tratamento dos dados recebidos do dispositivo legado — descompactação e armazenamento dos dados, se necessário, e comunicação com os anfitriões na Internet, conforme adequado
- Processamento dos dados recebidos de um servidor na Internet — descompactação e armazenamento dos dados, se necessário, e comunicação com o equipamento brownfield, conforme adequado
Os dados enviados a montante podem incluir relatórios de erro, parâmetros de operação ou telemetria geral. O Azure Sphere garante que todos esses dados estão encriptados. A aplicação pode ligar-se a serviços web e usar autenticação mútua para essas ligações.
Os dados enviados a jusante podem incluir software atualizado ou alterações nas definições ou parâmetros do dispositivo brownfield. Para evitar potenciais violações de segurança, a aplicação deve validar os dados recebidos antes de os encaminhar para o dispositivo brownfield.
Considerações sobre o aplicativo
Ao criar uma aplicação, deve considerar os periféricos disponíveis, os requisitos de armazenamento e o consumo de energia.
Dispositivos periféricos
Tal como outros dispositivos Azure Sphere, os módulos Guardian diferem pelos periféricos que disponibilizam. Escolha um módulo guardião que forneça a conectividade e as capacidades de deteção que o seu cenário exige.
Dependendo da arquitetura de hardware do módulo guardian — ou seja, de como expõe as capacidades do chip Azure Sphere — pode determinar se o software para aceder a funcionalidades individuais deve ser implementado como uma aplicação de alto nível ou com capacidade para tempo real.
Requisitos de armazenamento
O Azure Sphere tem armazenamento limitado, por isso considere cuidadosamente quanta memória é necessária para aplicações e dados. Consulte Memória disponível para mais informações.
Quando enviar dados da cloud para o dispositivo brownfield, certifique-se de que o módulo Guardian tem espaço suficiente para conter os dados. Pode ser necessário enviar dados em blocos, como demonstrado pelo HTTPS_Curl_Multi sample no repositório de Azure Sphere GitHub samples.
Quando enviar dados a montante do dispositivo brownfield para o módulo guardião, certifique-se de que a sua aplicação consegue lidar com falhas de conectividade a montante. Se o dispositivo brownfield fornecer telemetria contínua, deve considerar que dados e quanto deles deve reter e depois enviar para a cloud quando a conectividade for restabelecida. Veja o exemplo da galeria store-and-forward, que mostra como usar o armazenamento local para colocar dados temporariamente em cache antes de serem enviados.
Consumo de energia
Existem inúmeras aplicações em que o módulo guardião está inativo na maior parte do tempo. Por exemplo, considere um dispositivo Azure Sphere que, uma vez por hora, recolhe dados de uma rede de sensores e carrega esses dados para a cloud — uma operação que pode demorar um ou dois minutos. Neste caso, a maior parte da energia consumida pelo dispositivo é desperdiçada.
Pode reduzir significativamente o consumo de energia e, assim, aumentar a duração da bateria, seja colocando o dispositivo em estado de Desligar quando está inativo ou definindo um perfil de energia. Consulte Gerenciar o estado de desligamento e Definir perfis de energia para mais detalhes.