Como funciona um temporizador de vigilância? Princípio, cálculo e aplicações

Um temporizador de vigilância é um mecanismo de monitorização baseado em hardware utilizado em sistemas incorporados, controladores industriais, routers e dispositivos IoT. Ao monitorizar continuamente a atividade do sistema, consegue detetar falhas de software, tais como bloqueios do sistema ou loops infinitos, e acionar automaticamente um reinício, garantindo um funcionamento fiável de equipamentos industriais, DTUs e dispositivos de rede.

O que é um «watchdog»?

Um temporizador de vigilância, por vezes implementado como um chip de vigilância dedicado, é um componente de hardware utilizado para monitorizar o funcionamento de um microcontrolador ou de um sistema incorporado. Se o sistema deixar de responder ou entrar num ciclo de execução infinito, o temporizador de vigilância gera um sinal de reinicialização para recuperar o sistema. Um temporizador de vigilância é um mecanismo de segurança nos sistemas incorporados que torna o sistema fiável, mas isso depende da forma como o temporizador de vigilância é utilizado.

Como funciona a proteção do «watchdog»

Como funciona a proteção do «watchdog»?

Um watchdog é, basicamente, um contador que começa a contar a partir de zero e atinge um determinado valor. Se o contador atingir esse valor, o hardware do watchdog irá gerar um reinício do watchdog.

Para evitar um reinício desnecessário do sistema, o software deve reiniciar periodicamente o contador do watchdog, um processo comummente conhecido como “alimentar” ou “ativar” o watchdog. Caso o software fique bloqueado num ciclo infinito, o sistema não conseguirá ativar o watchdog, pelo que o contador atinge um determinado valor e reinicia o sistema.

A proteção do watchdog é inicialmente carregada com determinados valores. Este valor é calculado com base no tempo de espera do watchdog (são fornecidas instruções adicionais sobre como calcular o valor do contador com base no valor do tempo de espera). Antes de atingir o tempo de espera, o sistema deve reiniciar o contador.

Por exemplo, se o seu sistema executar 3 tarefas regularmente e a execução dessas 3 tarefas demorar 500 milissegundos, considere então um tempo limite de 600 ms (tendo em conta o pior cenário possível), calcule o valor do contador para 600 ms e carregue-o no watchdog.

Exemplo de cálculo do temporizador de vigilância

Suponhamos que o sistema no Watchdog esteja a funcionar com um relógio de 4 kHz. O sistema conclui a tarefa em 450 milissegundos e, no pior dos casos, demora 500 milissegundos a concluí-la. Vamos utilizar 500 milissegundos como tempo limite.

1/4 kHz = 0,25 milissegundos

1 ciclo do relógio = 0,25 milissegundos.

500 milissegundos = 2000 ticks.

Quando o relógio atinge 2000 ticks, o período de tempo limite do watchdog atinge 500 milissegundos. O valor técnico associado ao tempo limite é 2000.

Se o contador de vigilância atingir o valor 2000, irá gerar um sinal de reinicialização. O sistema tem de reinicializar o contador para 0 antes de este atingir o valor 2000.

Como funciona a proteção do «watchdog»

Como configurar um temporizador de vigilância em sistemas incorporados e industriais?

A configuração correta de um temporizador de vigilância é essencial para melhorar a fiabilidade do sistema. Um temporizador de vigilância mal configurado pode provocar reinicializações desnecessárias ou não conseguir recuperar o sistema quando ocorre uma falha.

1. Consulte o manual do dispositivo

A função de vigilância dos PLC, inversores e outros dispositivos industriais pode, normalmente, ser ativada através de parâmetros de configuração (como o parâmetro “watchdog timer” nos PLC da Siemens). Consulte sempre o manual do dispositivo para uma configuração adequada.

2. Definir um período de espera adequado

O tempo limite do watchdog é geralmente definido para 1,5 a 2 vezes o ciclo de funcionamento normal do sistema. Por exemplo, se o tempo de resposta normal do sistema for de 300 ms, o tempo limite pode ser configurado para 500 ms.

3. Ativar o registo de falhas

Ao ativar a proteção do watchdog, recomenda-se ativar simultaneamente o registo de falhas do dispositivo. Isto ajuda os engenheiros a analisar a razão pela qual o watchdog foi acionado, por exemplo, se a causa foi interferência eletromagnética, problemas de software ou outras falhas do sistema.

Casos de utilização avançados para temporizadores de vigilância

Nos sistemas operativos multitarefa, os temporizadores de vigilância podem monitorizar não só o estado geral do sistema, mas também a execução de tarefas individuais. Cada tarefa pode comunicar periodicamente o seu estado ao monitor de vigilância. Se uma tarefa deixar de responder ou não for concluída dentro do tempo previsto, o temporizador de vigilância pode desencadear uma reinicialização do sistema.

No caso da supervisão em linha, cada tarefa tem um indicador definido para indicar que a tarefa está em linha, ou seja, executada. A função de monitorização do watchdog verificará se cada tarefa comunicou uma indicação de atividade. Se a tarefa não estiver configurada para ativar uma indicação, a função de monitorização do watchdog nunca acionará o watchdog e, eventualmente, o watchdog reiniciará o sistema.

Aplicações da proteção por watchdog

1. Proteção por «watchdog» em gateways de IoT industrial

Gateways IoT industriais são normalmente instalados em locais remotos ou sem supervisão, onde a manutenção manual é difícil. Nestes ambientes, a estabilidade do sistema é fundamental, uma vez que qualquer falha inesperada do software ou interrupção da comunicação pode afetar a transmissão de dados e a monitorização remota.

Um temporizador de vigilância integrado consegue detetar automaticamente situações anormais e reiniciar o sistema quando necessário, permitindo que o gateway recupere automaticamente de falhas de software, bloqueios do sistema ou condições de funcionamento inesperadas, sem intervenção manual. Isto garante uma comunicação fiável entre os dispositivos de campo e as plataformas na nuvem.

2. Sistemas incorporados

Nos sistemas incorporados, a proteção por watchdog é utilizada para monitorizar o funcionamento dos microcontroladores. Uma vez que os dispositivos incorporados funcionam frequentemente em ambientes sem supervisão, qualquer falha de software ou erro de hardware pode provocar falhas no sistema. O temporizador watchdog verifica regularmente a capacidade de resposta do sistema para garantir que o dispositivo funciona normalmente. Se o dispositivo não enviar um sinal atempadamente, o watchdog reiniciará o sistema para restaurar a funcionalidade.

3. Automação industrial

Em automação industrial, a fiabilidade do equipamento é crucial, uma vez que os períodos de inatividade podem resultar em perdas financeiras significativas. A proteção do watchdog garante que os dispositivos na linha de produção possam recuperar rapidamente de falhas. Por exemplo, em robôs e sistemas de controlo, caso ocorram avarias no software, o watchdog pode reiniciar imediatamente o sistema, mantendo a eficiência da produção e minimizando os atrasos.

4. Telecomunicações

Nas redes de telecomunicações, os routers e os switches têm de funcionar de forma contínua para garantir um fluxo de dados estável. A proteção do tipo «watchdog» permite monitorizar o estado destes dispositivos e resolver rapidamente eventuais falhas. Ao reiniciar os dispositivos que não respondem, os administradores de rede podem reduzir o risco de interrupções do serviço e garantir ligações de alta qualidade para os clientes, bem como a fiabilidade geral da rede.

5. Sistemas automóveis

Os veículos modernos estão equipados com inúmeras unidades de controlo eletrónico (ECUs) responsáveis por funções críticas, tais como a travagem, a direção e os sistemas de alimentação. A proteção do «watchdog» é essencial nestes sistemas, garantindo que as funções críticas funcionam corretamente em todas as circunstâncias. Por exemplo, se o software de controlo do sistema de travagem apresentar uma avaria, o «watchdog» reiniciará imediatamente a unidade de controlo, garantindo que o veículo possa continuar a funcionar em segurança.

FAQ

P1: O que é um temporizador de vigilância?

A1: Um temporizador de vigilância é uma funcionalidade de hardware que monitoriza a atividade do sistema e reinicia automaticamente o dispositivo caso este deixe de responder ou entre num ciclo infinito.

P2: Como se calcula um temporizador de vigilância?

A2: O valor do temporizador é definido com base no tempo de execução do sistema. Se o sistema não reiniciar o contador antes do fim do tempo limite, o watchdog aciona uma reinicialização do sistema.

P3: Os dispositivos DTU/RTU 4G podem utilizar a proteção por watchdog?

A3: Sim. 4G DTU/RTU e outros routers industriais incluem frequentemente temporizadores de vigilância para garantir um funcionamento fiável e evitar tempos de inatividade nas redes da Internet das Coisas (IoT) e nas redes industriais.

P4: O que acontece quando um temporizador de vigilância expira?

A4: Quando o temporizador de vigilância chega ao fim, o hardware gera um sinal de reinicialização e o sistema reinicia para recuperar da condição de falha.

P5: Por que razão a proteção do watchdog é importante para os dispositivos industriais?

A5: A proteção do watchdog melhora a fiabilidade do sistema, permitindo que os dispositivos incorporados, os gateways industriais e os controladores remotos recuperem automaticamente de falhas de software sem necessidade de manutenção manual.

Resumo

A proteção do «watchdog» demonstra a sua importância em vários setores, aumentando a fiabilidade e a segurança dos sistemas. Ao monitorizar e resolver rapidamente as avarias, proporciona um apoio fiável a muitos dispositivos industriais e sistemas automóveis.