Call us! 512-349-0334 or (877) INDUSOFT

Criando um Contador de Horas com o Supervisório InduSoft Web Studio

Alguma vez você já precisou de um contador de horas para um equipamento? Aqui está um contador de horas pré-criado para o InduSoft Web Studio que você pode adicionar na sua aplicação IHM/SCADA. O contador de horas exibe o tempo decorrido em incrementos de 1/100 horas (36 segundos) até 99999 horas (aproximadamente 11 ½ anos) e possui um indicador para mostrar quando ele estiver rodando (Figura 1).      

O símbolo do contador de horas é bem flexível. Ele foi desenvolvido para ser usado como um monitor de equipamento único  usando tags distintas para cada valor. O contador pode também ser usado para mostrar vários equipamentos, ou até mesmo para mostrar o tempo decorrido desde uma manutenção simplesmente utilizando Class Tag e apontando as tags para mostrar os valores desejados.

A aplicação (Figura 2) demonstrando o contador foi desenvolvida utilizando o Arrayed Class Tag chamado “HourMeter” do tipo cHourMeter contendo os seguintes members com a retenção disponível para armazenar os últimos valores para o contador reiniciar com o último valor, se a aplicação for desligada por alguma razão (Figura 3).

A cronometragem do contador de horas é controlado pelo Change Event do Scheduler utizando a tag de sistema “second” para iniciar as atualizações. O change event define a tag booleana, “bSecondTrigger”. Esta condição é testada no Script Task, “Hour Meter” (Figura 4).

Usando o evento “Change” e a tag de sistema “Second” como gatilho, muda da tag “bSecondTrigger” para o relógio do sistema (Figura 5).

O símbolo possui quatro propriedades para visualizar as informações completas para o contador de hora e a etiqueta. Substitua os espaços reservados no símbolo com as tags apropriadas para a sua aplicação. A aplicação de demonstração utiliza tags indiretas, portanto, informações múltiplas podem ser visualizadas no símbolo (Figura 6).

A seleção dos botões do contador atualiza as tags indiretas com as informações apropriadas (Figura 7).

O botão de atualizaçao é a funcionalidade final na aplicação de demonstração. Ele atualiza o contador selecionado (Figura 8).

Palavras Finais sobre a Utilização de Valores Retentivos:

As Tags com a propriedade “Retentive” habilitada, salvam seus valores em uma base de dados localizada na pasta do projeto, atualizada no término do runtime. Se o equipamento ou o sistema operacional falhar por alguma razão, como por exemplo por uma queda de energia repentina, para que os valores retentivos não sejam salvos incorretamente, ou para que o hard drive não se torne corrompido, os últimos valores são normalmente salvos em um parâmetro retentivo da base de dados das tags que será perdido.

A fim de criar corretamente um contador de horas para qualquer equipamento ou linha de processo utilizando a lógica do InduSoft Web Studio descrita neste artigo, é prudente também salvar os valores em intervalos regulares em uma localidade alternativa. Isso é verdade para quaisquer valores retentivos utilizados dentro do aplicativo e não apenas as tags para este único objeto contador de horas.

Uma melhor opção para reter as horas do equipamento seria criar valores para as horas do equipamento, décimos e centésimos dentro da lógica do CLP, e gravá-los em um lugar não-volátil na memória do CLP, e em seguida utilizar o símbolo HourMeter para visualizar as informações armazenadas nos registros. Algumas CLPs já possuem incluso para o cálculo e armazenamento das horas do equipamento, portanto isto é uma questão de visualizar os registros apropriados no símbolo do contador de horas os lendo da CLP e mostrando as tags no símbolo.

Atualize Antes de Publicar: Desde o documento original acima foi escrito, funcionalidades extras foram solicitadas para disabilitar a funcionalidade “running” no contador de horas. Existe um novo símbolo chamado “HourMeterDisabled.sym” com esta funcionalidade adicionada e uma nova aplicação que demonstra isso (Figura 9). As duas aplicações estão localidas na pasta zip.

No símbolo atualizado, existe uma propriedade extra inclusa que liga a luz vermelha que cobre o indicador que gira. Simplesmente utilize a mesma tag booleana “disable” na linha de teste do cronômetro do script para inibir a atualização do cronômetro (Figura 10).

Além disso, se você não gostar da luz, você pode editar o símbolo e apagar a luz (uma elipse), e sob ela embutir um indicador fixo que também pode ser exibido usando a mesma propriedade que cobre o indicador que gira (Figura 11).

Existem outras opções que mostram quando o contador está desativado podem ser implementadas se houver a preferência de utilizar a mesma propriedade booleana. Você pode fazer isso editando o símbolo.

As duas aplicações estão disponíveis para download aqui.

Leave a Reply