I/O e Automação
O ACCELERO permite realizar ações de automação através do uso de dispositivos de I/O. É possível, por exemplo, monitorar inputs de um dispositivo e comandar saídas de outros dispositivos dependendo do status daquilo que foi lido.
É possível criar diversas regras para as mais diferentes situações, garantindo ampla flexibilidade para a configuração.
Controladores
Os dispositivos de I/O do sistema são configurados como controladores normais através do menu Configurações > Controladores. O sistema identifica, pelo tipo de dispositivo cadastrado, que se trata de um módulo de I/O, e habilita as funções específicas para aquele controlador.
Além de dispositivos dedicados de I/O, é possível utilizar e monitorar as entradas/saídas (I/O) de controladores comuns de acesso. O controlador Cobalt funciona em modo misto (I/O + acesso), unificando ambas as funções em um único dispositivo.
Inputs/Outputs
Cada dispositivo de I/O possui uma quantidade diferente de entradas e saídas. Todos os inputs/outputs do controlador são listados na aba Inputs/outputs.
Para cada item, é possível:
- Definir um nome amigável (ex: "Sensor Porta Principal", "Sirene Externa")
- Habilitar/desabilitar aquele input/output específico
Desabilitar um input/output significa apenas que ele não estará disponível nas telas de seleção. Não altera o funcionamento físico do hardware.
Incluir print da aba Inputs/outputs de um controlador de I/O.
Uma vez configurado o controlador, seus inputs/outputs estarão disponíveis para a realização de ações de automação.
Ver Controladores para configuração geral.
Tratadores de I/O
Quando se deseja cadastrar no sistema uma nova automação de I/Os, basta navegar até o menu I/O > Configurar I/O e criar um novo Tratador de I/O.
Cada tratador é um conjunto de regras e ações que devem ser tomadas. Vários tratadores podem ser criados para atuar sobre os mesmos inputs/outputs se necessário.
Cabe ao usuário garantir que não haverá loops internos entre tratadores (ações de um tratador acionando regras de outro em ciclo).
Após definir um nome para o tratador e clicar em Salvar, a tela de configuração será apresentada com as abas descritas a seguir.
Conceitos
Um tratador de I/O é um serviço que:
- Monitora determinadas variáveis (triggers)
- Realiza uma série de checagens (regras)
- Executa ações configuradas
O que são Variáveis
Variáveis são entidades abstratas que podem (ou não) ter relação com entidades físicas:
| Exemplo de Variável | Tipo |
|---|---|
| Input de um dispositivo | Física |
| Estado do relé de um dispositivo de I/O | Física |
| Quantidade de pessoas em uma área do sistema | Virtual (sistema) |
| Um texto qualquer como "abc" | Virtual (usuário) |
Características importantes:
- Variáveis podem ser criadas e utilizadas a qualquer momento, sem necessidade de criação prévia
- Algumas variáveis são disponibilizadas automaticamente pelo sistema e apresentadas em picklists (os inputs de um controlador, por exemplo)
- Outras podem/devem ser digitadas manualmente pelo usuário de acordo com a necessidade
Dados Gerais
A aba Dados gerais apresenta informações básicas sobre o tratador:
| Configuração | Descrição |
|---|---|
| Descrição | Nome do tratador |
| Aplicação de regras | Define se as regras são do tipo E ou do tipo OU. No tipo E, as ações serão executadas caso todas as regras sejam verdadeiras. No tipo OU, as ações serão executadas caso qualquer uma das regras seja verdadeira. |
| Ações/regras simétricas | Se configurado como NÃO, o tratador aplica as ações apenas quando as regras têm estado "verdadeiro". Se configurado como SIM, o tratador aplica as ações quando as regras são verdadeiras e também aplica as ações "ao contrário" quando as regras são falsas. |
A opção "Ações/regras simétricas = SIM" é útil quando se deseja, por exemplo, ligar um output quando a regra é verdadeira e automaticamente desligá-lo quando a regra passa a ser falsa, sem precisar criar um segundo tratador.
Incluir print da aba Dados gerais de um tratador de I/O.
Variáveis que Acionam a Regra (Triggers)
O tratador precisa saber em que momento deve aplicar/re-aplicar as regras. Esta aba determina quais variáveis serão os triggers da verificação.
Funcionamento:
- Quando qualquer uma das variáveis definidas nesta aba tiver qualquer alteração de status, o tratador irá executar as checagens e realizar as ações necessárias
- O mais comum é que as variáveis das regras sejam as próprias variáveis de acionamento, mas isso não é obrigatório
Em algumas situações, o tratador deve ser executado a partir de triggers externos. Por exemplo: o acionamento de um botão conectado ao input de uma placa pode ser o trigger, enquanto as regras verificam variáveis completamente diferentes.
Regras
Nesta aba são definidas todas as regras de checagem que determinam se o estado do tratador é VERDADEIRO ou FALSO.
Para cada regra, é necessário definir:
| Campo | Descrição |
|---|---|
| Variável | Qual variável será analisada (pode ser física, como input de um dispositivo, ou virtual) |
| Comparação | Operador de comparação (igual, maior que, menor que, etc.) |
| Valor de referência | O valor contra o qual a variável será comparada |
| Tempo de persistência | Por quanto tempo aquele valor deve permanecer válido antes de considerar a regra como verdadeira |
Exemplos:
Regra 1: O INPUT01 DO DISPOSITIVO X deve ser IGUAL a 1 (LIGADO) por mais de 5 SEGUNDOS
Regra 2: A VARIÁVEL ABC deve ser MAIOR QUE 1000 por 0 SEGUNDOS
Várias regras podem ser configuradas ao mesmo tempo. A lógica de aplicação (tipo E ou OU) é definida na aba Dados gerais do tratador.
Incluir print da aba Regras mostrando configuração de regras com variável, comparação, valor e tempo.
Ações
Esta aba define quais ações devem ser executadas dependendo do resultado das regras. Mais de uma ação pode ser configurada. As seguintes ações estão disponíveis:
1. Agir Sobre Outputs de Controladores
O sistema pode atuar sobre outputs de controladores, ligando-os ou desligando-os.
Basta selecionar qual controlador/output deve ser atuado e qual o status que ele deve ter caso as regras do tratador tenham resultado VERDADEIRO.
Exemplo:
Ação: Agir sobre output
Controlador: MÓDULO I/O PORTARIA
Output: Output 3 (Sirene)
Status se verdadeiro: LIGADO
2. Alterar Variável
Permite alterar o valor de uma variável qualquer, em geral uma variável virtual administrada pelo próprio usuário. Basta definir qual a variável (qualquer texto alfanumérico é aceito) e o valor desejado.
Este recurso é especialmente útil quando se deseja fazer encadeamento de tratadores para aplicação de regras complexas. Um tratador altera uma variável, e outro tratador usa essa variável como trigger ou em suas regras.
Exemplo:
Ação: Alterar variável
Variável: STATUS_ZONA_A
Valor: ALERTA
3. Monitorar
Similar a "Alterar variável", mas faz com que a variável configurada apareça na tela de Monitoramento de I/O.
Todas as variáveis que se deseja visualizar na tela de monitoramento devem ter uma ação Monitorar configurada. Do contrário, serão apenas variáveis gerenciadas internamente pelo sistema, invisíveis ao operador.
Para cada variável monitorada é necessário definir:
| Campo | Descrição |
|---|---|
| Nome da variável | Identificação da variável |
| Apresentação | Digital (ligado/desligado) ou Texto (valores analógicos) |
Sem uma ação "Monitorar", a variável existe internamente mas não aparece na tela de monitoramento.
4. Reproduzir Som em Corneta Axis
Permite reproduzir arquivos de áudio em cornetas Axis, possibilitando a emissão de alertas sonoros integrados com automações de I/O.
6. Reproduzir Som Barium
Permite reproduzir arquivos de áudio em devices Barium.
| Campo | Descrição |
|---|---|
| Device ID | Identificador do dispositivo Barium |
| Faixa | Número da faixa de áudio a ser executada |
7. Gerar Popup
Permite gerar popups/notificações para operadores com mensagens pré-configuradas.
Os popups podem ser gerados para operadores específicos ou para todos os operadores.
8. Executar Macro
Permite a criação/atualização de variáveis virtuais através da execução de macros que atuam sobre o valor de outras variáveis.
Sintaxe:
FUNCAO(variavel1,variavel2,...variavelN)
Funções disponíveis:
| Função | Descrição | Parâmetros |
|---|---|---|
| SUM | Soma os valores das variáveis | Qualquer quantidade |
| SUBTRACT | Subtrai o valor da segunda variável da primeira | Exatamente 2 |
| AVERAGE | Calcula a média aritmética das variáveis | Qualquer quantidade |
| MAX | Retorna o maior valor entre as variáveis | Qualquer quantidade |
| MIN | Retorna o menor valor entre as variáveis | Qualquer quantidade |
Exemplo:
Variável destino: MEDIA_TEMPERATURA
Macro: AVERAGE(TEMP_SENSOR_1,TEMP_SENSOR_2,TEMP_SENSOR_3)
→ A variável MEDIA_TEMPERATURA receberá a média dos 3 sensores.
→ Um novo tratador pode monitorar MEDIA_TEMPERATURA e agir quando ultrapassar um limiar.
Macros são funções matemáticas sobre variáveis, úteis para consolidar valores de múltiplos sensores ou calcular indicadores compostos que serão usados em outros tratadores.
9. Gerar Ocorrência
Gera uma nova ocorrência na tela de Painel de Ocorrências, permitindo tratar eventos de I/O como alarmes gerenciáveis.
Ver Painel de Ocorrências para detalhes sobre gerenciamento.
Incluir print da aba Ações mostrando os 7 tipos de ação disponíveis.
Monitoramento de I/Os
A tela de monitoramento de I/O permite a visualização, em tempo real, do status de variáveis configuradas.
Caminho de acesso: I/O > Monitorar I/O
Funcionamento
- Acesse a tela de monitoramento
- Clique no botão Monitorar para iniciar o monitoramento em tempo real
- Todas as variáveis que possuem ação configurada do tipo Monitorar serão apresentadas com seus respectivos valores
- Os valores são atualizados automaticamente sempre que houver alteração
Somente variáveis que possuem uma ação "Monitorar" configurada em algum tratador aparecerão nesta tela. Para adicionar uma variável ao monitoramento, configure uma ação "Monitorar" no tratador correspondente.
Incluir print da tela de Monitorar I/O mostrando variáveis com apresentação digital e texto.
Condicionamento de Valores de Variáveis
Em algumas situações, é necessário realizar um pré-tratamento dos valores de uma variável assim que seus valores forem atualizados.
Caminho de acesso: I/O > Cond. sinal I/O
Conceito
O condicionamento permite fazer o "parse" de valores brutos para valores mais significativos antes que os valores sejam entregues para os tratadores, simplificando a configuração e operação.
Configuração
Para criar um condicionador de sinal:
- Navegue até
I/O > Cond. sinal I/O - Clique em Novo condicionador
- Selecione a variável a ser condicionada (inputs de controladores, variáveis virtuais, etc.)
- Defina as regras de condicionamento
Regras de Condicionamento
As regras são tratadas de forma sequencial, ordenadas de forma crescente pelo campo Ordem:
- A primeira regra que for considerada VERDADEIRA será aplicada, condicionando o sinal para o valor configurado
- Se nenhuma regra for verdadeira, nenhum condicionamento será aplicado e o valor original da variável será usado nos tratadores
Exemplo Prático
Cenário: Um equipamento emite um sinal analógico de 0 a 100. Desejamos classificar os valores em níveis LOW/MID/HIGH.
Configuração do condicionador:
| Ordem | Se valor for | Regra | Condicionar para |
|---|---|---|---|
| 1 | ≤ | 20 | LOW |
| 2 | ≤ | 80 | MID |
| 3 | > | 81 | HIGH |
Resultado: Nos tratadores de I/O, as regras podem verificar os valores usando LOW, MID e HIGH (textualmente) ao invés dos valores analógicos brutos, simplificando a configuração.
Sem condicionamento:
Regra: SENSOR_TEMP >= 81 → Acionar ventilação
Com condicionamento:
Condicionador: SENSOR_TEMP → LOW/MID/HIGH
Regra: SENSOR_TEMP = HIGH → Acionar ventilação
O condicionamento é especialmente útil quando se trabalha com sensores analógicos que emitem valores numéricos contínuos e se deseja simplificar as regras dos tratadores usando categorias textuais.
Exemplos Práticos
Exemplo 1: Alarme de Porta Aberta
Objetivo: Acionar sirene se sensor de porta ficar ativado por mais de 30 segundos.
Tratador: ALARME PORTA PRINCIPAL
Dados gerais:
Aplicação de regras: E
Ações simétricas: SIM
Triggers:
- INPUT01 do MÓDULO I/O PORTARIA
Regra:
INPUT01 do MÓDULO I/O PORTARIA = 1 (LIGADO) por 30 SEGUNDOS
Ações:
1. Agir sobre output: OUTPUT03 (Sirene) = LIGADO
2. Gerar popup: "Porta principal aberta há mais de 30s" para todos operadores
3. Gerar ocorrência
Como ações simétricas = SIM:
→ Quando regra for verdadeira: liga sirene, gera popup e ocorrência
→ Quando regra voltar a ser falsa: desliga sirene automaticamente
Exemplo 2: Consolidação de Sensores com Macro
Objetivo: Calcular média de 3 sensores de temperatura e alertar se ultrapassar limite.
Tratador 1: CALCULAR MÉDIA
Triggers:
- TEMP_SENSOR_1, TEMP_SENSOR_2, TEMP_SENSOR_3
Regra:
TEMP_SENSOR_1 > 0 por 0 SEGUNDOS (sempre verdadeira quando há leitura)
Ações:
1. Executar macro: MEDIA_TEMP = AVERAGE(TEMP_SENSOR_1,TEMP_SENSOR_2,TEMP_SENSOR_3)
2. Monitorar: MEDIA_TEMP (apresentação: Texto)
---
Tratador 2: ALERTA TEMPERATURA
Triggers:
- MEDIA_TEMP
Regra:
MEDIA_TEMP > 40 por 60 SEGUNDOS
Ações:
1. Agir sobre output: OUTPUT01 (Ventilação) = LIGADO
2. Gerar popup: "Temperatura média acima de 40°C" para operadores
Exemplo 3: Botão de Pânico
Objetivo: Resposta automática a acionamento de botão de pânico.
Tratador: BOTÃO DE PÂNICO
Triggers:
- INPUT02 do MÓDULO I/O RECEPÇÃO (botão de pânico)
Regra:
INPUT02 do MÓDULO I/O RECEPÇÃO = 1 por 0 SEGUNDOS
Ações:
1. Agir sobre output: OUTPUT01 (Sirene) = LIGADO
2. Reproduzir som Barium: Device 1, Faixa 3
3. Gerar popup: "PÂNICO: Botão acionado na recepção" para todos operadores
4. Gerar ocorrência
Boas Práticas
-
Nomeie claramente: Use nomes descritivos para tratadores, variáveis e ações
-
Evite loops: Cuidado com ações que disparam tratadores em ciclo (tratador A altera variável que é trigger do tratador B, que altera variável trigger de A)
-
Use ações simétricas: Quando possível, configure ações simétricas para evitar criar tratadores duplicados para ligar/desligar
-
Aproveite o condicionamento: Para sensores analógicos, use condicionamento de sinais para simplificar regras
-
Use encadeamento: Divida lógicas complexas em múltiplos tratadores usando variáveis intermediárias
-
Monitore variáveis-chave: Configure ação "Monitorar" para variáveis importantes para acompanhamento visual
-
Teste com o simulador: Use o Simulador para validar comportamento antes de ativar em produção
-
Configure tempo de persistência: Use tempos adequados nas regras para evitar acionamentos por variações momentâneas
Próximos Passos
- Controladores - Configure controladores de I/O
- Painel de Ocorrências - Gerencie ocorrências geradas por tratadores
- Synapsis - Integre com módulo Synapsis
- Logs e Monitoramento - Acompanhe eventos do sistema