For the complete documentation index, see llms.txt. This page is also available as Markdown.

Exemplos de cálculo

Exemplos práticos para escrever cálculos de atributos na linguagem de expressão do IoT Logic. Inclui orientação sobre nomeação de atributos e tratamento seguro de valores nulos.

O Nó Iniciar Atributo no IoT Logic oferece suporte a uma ampla variedade de cálculos por meio de Linguagem de Expressão do Navixy IoT Logic. Este guia apresenta exemplos práticos de cálculos comuns para ajudá-lo a extrair o máximo valor dos seus dados de IoT.

Considerações importantes

Ao criar cálculos, tenha estes pontos em mente:

  • Validade dos nomes dos atributos: Certifique-se de usar os nomes de atributos corretos nos cálculos. Você pode consultar os nomes de atributos existentes usando Analisador de dados, ou inseri-los com Gerenciar atributos usando preenchimento automático.

  • Validade dos dados: Uma fórmula que lê um valor que o pacote não contém não produz nada, e o atributo então não tem valor para esse pacote. Proteja o cálculo com != null, ou substitua por um valor de fallback com ??. Veja Valores ausentes em expressões.

  • Impacto no desempenho: Cálculos complexos com muitas funções aninhadas podem impactar a velocidade de processamento para dados de alta frequência

  • Restrições matemáticas: Funções como logaritmo e raiz quadrada exigem valores de entrada positivos

  • Referências históricas: Ao usar valores indexados (por exemplo, value('param', 1, 'valid')), certifique-se de que você tenha dados históricos suficientes e use sintaxe de expressão completa

Funções matemáticas podem ser aplicadas a qualquer parâmetro numérico ou atributo calculado anteriormente. Sempre valide seus cálculos com dados de teste antes de implantá-los em fluxos de produção.

Para preencher um atributo com o nome da Geocerca em que um dispositivo está, em vez de usar um cálculo, use geofenceName(). É uma opção paga, desativada por padrão. Consulte Funções de geocerca.

Cálculos básicos

Conversões de unidades

Converter medidas entre diferentes unidades é uma das operações mais comuns no processamento de dados de IoT.

Conversão de velocidade (km/h para mph)

Aplicação prática: Essa conversão padroniza os dados de velocidade do veículo para regiões que usam medidas imperiais. Ao realizar esse cálculo no IoT Logic em vez de em aplicações posteriores, você garante consistência em todos os sistemas que consomem os dados.

Conversão de temperatura (Celsius para Fahrenheit)

Aplicação prática: Essa conversão torna as leituras de temperatura compreensíveis para usuários mais familiarizados com as medidas em Fahrenheit. É especialmente valiosa para organizações multinacionais que operam em regiões com diferentes padrões de medição.

Calcular diferenças

Comparar as leituras atuais com valores anteriores ajuda a identificar alterações e tendências nos seus dados.

Detecção de variação de temperatura

Aplicação prática: Esse cálculo ajuda a detectar flutuações rápidas de temperatura que podem indicar problemas no equipamento ou mudanças ambientais. Ao criar um atributo dedicado para essa diferença, você pode configurar alertas para mudanças repentinas sem processamento complexo em aplicações posteriores.

Exemplo: Para uma Frota de caminhões refrigerados, esse cálculo pode identificar imediatamente quando a temperatura da carga começa a subir rápido demais, permitindo que os despachantes entrem em contato com os motoristas antes que os produtos perecíveis sejam comprometidos. O atributo pode acionar Alertas quando a variação de temperatura exceder 3 graus em um curto período, o que pode indicar uma falha no sistema de refrigeração ou uma porta deixada aberta.

Cálculos baseados em tempo

Os cálculos de tempo ajudam você a entender o comportamento do dispositivo ao longo do tempo e a medir padrões operacionais.

Encontrar o tempo decorrido entre as últimas leituras válidas

Aplicação prática: Este cálculo mede o intervalo entre transmissões consecutivas de dados, o que pode ajudar a identificar problemas de comunicação ou validar que os dispositivos estão enviando dados nas frequências esperadas. Este exemplo demonstra o cálculo entre as duas últimas leituras válidas, mas pode ser ajustado para lidar com quaisquer dois valores históricos.

Exemplo: Para uma frota de táxis, esse cálculo pode ajudar a identificar problemas de conectividade com os rastreadores GPS. Se o tempo entre as leituras aumentar repentinamente do padrão de 30 segundos para vários minutos, isso pode indicar áreas com cobertura celular ruim ou mau funcionamento do dispositivo, permitindo que as equipes de Manutenção resolvam os problemas antes que eles afetem a qualidade do serviço.

Convertendo timestamp para formato legível por humanos

Aplicação prática: A conversão de carimbos de data/hora Unix para o formato ISO 8601 torna os dados mais legíveis em logs e relatórios. Esse formato é amplamente suportado por ferramentas de análise e bancos de dados, simplificando a integração com outros sistemas.

Funções matemáticas avançadas

IoT Logic oferece suporte a operações matemáticas sofisticadas por meio de suas funções matemáticas integradas.

Arredondamento de valores

Arredonde a temperatura para o inteiro mais próximo

Aplicação prática: Arredondar é valioso quando não é necessária precisão exata ou quando você quer reduzir o ruído nas leituras dos sensores. Por exemplo, arredondar dados de sensores ambientais pode ser suficiente para o monitoramento climático geral, ao mesmo tempo em que reduz os requisitos de armazenamento. Essa função também é útil ao criar categorias ou faixas de valores (por exemplo, agrupar leituras de temperatura em incrementos de 5 graus).

Exemplo: Na gestão de frotas, as leituras da temperatura do motor geralmente incluem casas decimais que não são significativas para alertas do motorista ou para o agendamento de manutenção. Arredondar esses valores simplifica a exibição nos painéis e torna os limites de temperatura mais fáceis de definir. Por exemplo, alertas de manutenção podem ser acionados quando a temperatura arredondada do motor ultrapassar 90 °C, em vez de lidar com valores precisos como 89,7 °C.

Cálculos logarítmicos

Logaritmo natural de um valor

Aplicação prática: Transformações logarítmicas são particularmente úteis para:

  • Comprimir dados que abrangem várias ordens de magnitude em uma faixa mais gerenciável

  • Converter relações exponenciais em lineares para facilitar a análise

  • Trabalhar com certos tipos de sensores que têm características de resposta logarítmica

  • Cálculos de nível sonoro, em que decibéis são unidades logarítmicas

  • Medições de pH no monitoramento ambiental

Exemplo: Ao analisar o comportamento do motorista com um acelerômetro, a função logarítmica pode ajudar a normalizar dados de aceleração que variam de pequenos movimentos a eventos de frenagem brusca. Isso facilita a criação de uma pontuação de segurança do motorista que não fique excessivamente distorcida por eventos extremos ocasionais. Outro exemplo prático é ao trabalhar com sensores de combustível que não fornecem leituras lineares. Alguns sensores de nível de combustível têm valores de resistência não lineares que correspondem ao nível real de combustível. O uso de cálculos logarítmicos pode ajudar a converter essas leituras em porcentagens mais precisas do nível de combustível.

Operações com raiz quadrada

Calcular a raiz quadrada de uma leitura

Aplicação prática: As funções de raiz quadrada são úteis para:

  • Converter entre potência e amplitude em medições elétricas

  • Calcular desvios padrão na análise estatística de dados de sensores

  • Determinar valores de RMS (valor quadrático médio) para parâmetros elétricos

  • Cálculos de distância em espaço multidimensional (por exemplo, trilateração para posicionamento)

  • Normalizar certos tipos de dados de sensores

Exemplo: Ao calcular a distância real entre dois pontos GPS (latitude e longitude), você precisa usar a função de raiz quadrada como parte da fórmula da distância. Por exemplo, se você estiver calculando a distância que um veículo percorreu entre duas leituras de GPS usando a fórmula da distância euclidiana, a função de raiz quadrada é essencial. Outra aplicação comum é calcular a magnitude de eventos de vibração ou choque a partir de vários eixos do acelerômetro (X, Y, Z). A raiz quadrada da soma dos valores ao quadrado de cada eixo fornece a magnitude geral da vibração, o que é útil para detectar impactos no veículo ou condições de estrada irregulares.

Operações combinadas

Você pode criar cálculos ainda mais complexos combinando várias funções e operações.

Média geométrica com arredondamento

Aplicação prática: Este cálculo calcula a média geométrica das leituras de dois sensores de temperatura e arredonda o resultado para fornecer um valor mais limpo. A média geométrica costuma ser mais apropriada do que uma média aritmética ao lidar com taxas, razões ou medições em que a multiplicação é a maneira natural de combinar valores.

Exemplo: Em um cenário de transporte refrigerado, você pode ter vários sensores de temperatura distribuídos por toda a área de carga. Esse cálculo fornece uma leitura de temperatura equilibrada que considera ambos os valores ao mesmo tempo, minimizando a influência de valores discrepantes extremos. Em vez de acionar alertas com base em apenas um sensor (que pode ser afetado pela abertura das portas), esse cálculo combinado oferece uma condição geral de temperatura mais representativa para a carga sensível.

Cálculo de valor padronizado

Aplicação prática: Isso normaliza uma leitura de sensor para uma escala percentual de 0 a 100%, permitindo comparações padronizadas entre diferentes sensores com faixas variadas. Isso é particularmente útil para criar painéis uniformes ou acionar alertas com base em valores relativos, em vez de medições absolutas.

Exemplo: Um gerente de frota supervisiona veículos de vários fabricantes, cada um com diferentes leituras de sensores de combustível (ohms, volts, valores digitais brutos). Ao normalizar essas leituras diversas para uma escala percentual consistente, o gerente pode aplicar os mesmos alertas de baixo nível de combustível em toda a frota e gerar relatórios padronizados de consumo de combustível sem precisar considerar as características específicas dos sensores de cada modelo de veículo.

Operações com strings

As operações com strings permitem combinar vários valores de atributos em uma única saída textual.

Unindo valores de atributos

Combinar valores de vários atributos é útil quando você precisa consolidar dados de várias fontes em um único campo para exibição ou transmissão.

Aplicação prática: Dispositivos com capacidade de varredura BLE podem detectar vários sensores periféricos simultaneamente, mas nem todos os slots de sensor estão sempre ocupados. Esse cálculo produz uma lista limpa de sensores ativos, separada por vírgulas, pulando automaticamente os slots não pareados. O resultado fica pronto para exibição ou encaminhamento a sistemas externos sem limpeza adicional.

Exemplo: Um caminhão refrigerado suporta até oito sensores de temperatura BLE distribuídos pela área de carga, mas apenas três estão instalados no momento. Em vez de produzir "Sensor A, Sensor B, Sensor C, , , , , " com entradas vazias para os slots não utilizados, util:joinNonNull produz "Sensor A, Sensor B, Sensor C", uma lista limpa que se atualiza automaticamente conforme os sensores são adicionados ou removidos. Se você precisar manter posições vazias na saída, use util:join em vez disso, que trata valores nulos como cadeias vazias, em vez de ignorá-los.

Atualizado

Isto foi útil?