Exemplo: Tomada Inteligente
Construa comandos de ligar e desligar para uma tomada inteligente de ponta a ponta — payload, codificador, verificação e execução a partir do separador Estados.
Este passo a passo cria dois comandos num único dispositivo e verifica se funcionaram. Usa uma tomada inteligente alimentada pela rede elétrica que indica se o seu relé está ligado ou desligado, mas a mesma sequência aplica-se a qualquer atuador: uma válvula, um luminário, um aquecedor.
Siga-o por ordem — cada secção produz algo de que a seguinte precisa.
Antes de começar
A tomada está registada e a transmitir. Classe C para LoRaWAN, ou um dispositivo MQTT.
Pode ver as suas leituras na Métricas separador (Mapeamento para MQTT).
1. Descubra como o dispositivo reporta o seu estado
Abra o dispositivo e vá para o Métricas separador. Procure na tabela de chaves do conector o campo que transporta o estado do relé e note duas coisas: o nome do campo e o valor que está a mostrar agora mesmo.
Para esta tomada:
socket_status
desligado
Esse valor é o que uma verificação de validação irá comparar mais tarde, por isso anote-o exatamente como aparece — desligado, não DESLIGADO ou falso.
Se o campo ainda não estiver mapeado para uma métrica, mapeie-o agora: o editor de comandos seleciona sensores pelo nome da métrica, por isso um campo não mapeado não pode ser usado para verificar nada. Consulte Descodificação de payload e chaves do conector.
Neste exemplo socket_status está mapeado para uma métrica chamada Estado da tomada.
2. Crie o comando LIGAR
Abra Comandos e Estados → Comandos e clique em Adicionar novo comando.

1. Identidade
Nome do comando —
Ligar
2. Encaminhamento
Para LoRaWAN: defina o fPort que o dispositivo espera, e ligue Downlink confirmado o.
Para MQTT: introduza o tópico ao qual a tomada se subscreve para comandos.
3. Payload
Este comando não aceita parâmetros — envia sempre a mesma coisa — por isso não adicione nenhum, e defina a carga útil que o codificador deve construir. A tomada espera três bytes: canal 0x08, tipo 0x70, e o estado, 0x01 para ligado.
Use Experimentar codificador para verificar o resultado antes de guardar. Mostra a saída codificada em hex e base64, com o seu tamanho em bytes, para que possa confirmar que a carga útil é 08 70 01 antes de o comando alguma vez chegar ao dispositivo.
4. Verificação
Escolha Aguarde pelo próximo uplink — a tomada reporta o seu estado em cada mensagem de rotina, por isso não há necessidade de a consultar periodicamente.
Em Estados esperados dos sensores, clique Adicionar estado:
Métrica — Estado da tomada
Valor esperado —
ligado
Escreva o valor tal como o dispositivo o reporta. Aqui, as maiúsculas/minúsculas não importam, por isso ligado também corresponde a um dispositivo que reporta LIGADO — mas texto e números não são intercambiáveis, por isso 1 não corresponderia. Consulte Confirmar Comandos.
Clique em Salvar.
3. Crie o comando DESLIGAR
Repita os passos acima com três alterações:
Nome do comando —
DesligarCarga útil — os mesmos três bytes, com o byte de estado definido para
0x00Valor esperado —
desligado
Todo o resto permanece igual.
4. Execute-os e verifique o resultado
Vá para a separador Estados separador, encontre Ligar na lista de comandos disponíveis e clique em Executar.
Veja a entrada aparecer em Execuções recentes:
Começa como Pendente enquanto o downlink está a caminho.
Quando chegar a próxima mensagem da tomada a reportar
socket_status: on, a execução torna-se Confirmado — a plataforma viu o dispositivo no estado que pediu.
Execute Desligar e o mesmo acontece ao contrário.
Se a execução nunca confirmar
Uma execução que permanece por confirmar até a sua janela fechar é marcada como Aviso suave — entregue, mas não confirmada. Resolva-os por esta ordem:
Verifique o valor. Abra o separador Métricas e leia o que
socket_statusreporta agora. Se a tomada mudou, mas reporta1em vez deligado, o valor esperado tem de corresponder a esse formato — e um literal escrito é sempre texto, por isso use uma{{ parameterName }}referência para um parâmetro Booleano ou Inteiro, em vez disso.Verifique a métrica. Certifique-se de que a Métrica que selecionou é a alimentada por
socket_status, e de que está mapeada e a receber leituras.Verifique a janela. A janela predefinida é 1,5 × o intervalo de envio de dados do dispositivo. Se esse intervalo não estiver definido no dispositivo, defina-o — consulte tempo limite de convergência.
Verifique a carga útil. Execute Experimentar codificador novamente e compare os bytes com a documentação do fabricante.
Seguinte
Coloque os dois comandos num painel de controlo com um Widget de controlo para que a equipa possa alternar a tomada sem abrir o dispositivo.
Permita que uma regra opere a tomada automaticamente — consulte Executar Comandos de Dispositivo.
Última atualização