Utilizando ferramentas de diagnose

O software Action.NET possui ferramentas de diagnóstico que podem ser utilizadas para verificar o comportamento de uma aplicação em desenvolvimento: Janela WATCH, janela TRACE, e Janela de Informação de Módulos de comunicação.

 

Ferramentas para diagnose

Depois de iniciada a execução de um projeto você pode, utilizando a Startup window, selecionar algumas ferramentas de diagnose, que mostram as janelas:

  • PropertyWatch (Watch)

  • TraceWindow (Trace)

  • ModuleInformation (Info).

Você também pode iniciar as ferramentas de diagnóstico, como explicado acima, nas páginas Run-Test e Run-StartUp pressionando o botão esquerdo do mouse sobre os ícones das ferramentas de diagnóstico. Se os menus estão habilitados para as Telas você também pode acessar o menu Ferramentas em tempo de execução.

Janela Watch

Esta ferramenta é uma janela dividida em dois quadros, conforme mostra a figura abaixo, cujos principais objetivos são:

  • Simular off-line o valor de objetos e de suas propriedades;

  • Acompanhar, on-line, o estado dos objetos e suas propriedades:

Na figura pode-se visualizar:

  • O quadro da esquerda, possui quatros abas (List1 a List4) onde o projetista da aplicação pode agrupar objetos de um mesmo tipo. Assim, por exemplo, na aba <List1> da figura abaixo se colocou tags de um mesmo religador @Tag.GZM_01Z4_D00060.

  • Se o projetista não estiver conectado aos IEDs e alterar o valor do tag, manualmente, serão executadas todas as ações da aplicação associadas a esta alteração.

  • Se o projetista estiver conectado a algum IED, on-line, o valor de cada tag cuja origem é o IED será o valor que está vindo do campo.

  • O quadro da direita, contém as propriedades do objeto selecionado no quadro da esquerda. No exemplo abaixo, propriedades do objeto

<@Tag.GZM_01Z4_D00060.STA>.

  • Se o projetista não estiver conectado aos IEDs, ele pode alterar o valor de uma propriedade, manualmente, e verificar se os tratamentos previstos para esta alteração ocorrerão.

  • Se o projetista estiver conectado a IEDs, os valores destas propriedades referem-se a condições associadas ao objeto. Assim, no exemplo, o objeto possui qualidade = 0 (ponto com falha), sua última leitura foi no 10/09/2018 17:35:58.690 (estampa de tempo), etc.

Janela Trace

Esta ferramenta permite que se depure rotinas associadas aos diversos módulos do programa ActionₒNET. Assim, por exemplo, se foram desenvolvidos vários códigos de Scripts associados a uma janela de comando, pode-se definir que o módulo de Display (responsável por apresentar telas da aplicação) seja rastreado e, dentro do código dos Scripts, pode-se colocar comandos que incluem informações na janela do trace, como o comando abaixo, sublinhado em vermelho:
<@Info.Trace(txtAux + "_L");> que irá colocar na janela de Trace o valor da variável Txtaux concatenada com o string "_D".

Janela Info - Informação dos módulos

A janela Info - Module Information contém informações sobre o funcionamento dos módulos. Por exemplo ao escolher um módulo de Device e um canal específico, tem-se várias informações sobre o funcionamento do canal de comunicação.
Um ponto muito importante é o Ler Grupos de Informação, pois fornece informações sobre os grupos virtuais de leitura, tempo de execução de cada item, quantidade de leituras e leituras que falharam, e também relatórios sobre o código e data / hora do último erro.
Para a investigação de problemas, os seguintes passos tipicamente devem ser seguidos quando se utiliza o Módulo de Informação:

  1. Vá para "Read Groups Information", para verificar os números de sucessos e falhas na comunicação, a fim de identificar rapidamente os blocos de comunicação.

  2. Se você tem um erro sistemático em todos os blocos, ou códigos de status com valores negativos, normalmente isso significa que você não pode acessar o dispositivo remoto. Verifique se o endereço do nó está correto.

  3. Se você tem um ou outro bloco com erro sistemático, verifique as tags e endereços relacionados com o bloco. Use o TraceWindow com informações de Devices para coletar informações sobre esses erros de comunicação.

  4. Para alguns protocolos, como OPC, os itens descartados vão mostrar endereços errados na configuração.

Ao executar o aplicativo no modo teste no Modelo Enterprise, tenha em mente que neste modo, somente são executadas leituras a partir de dispositivos de campo, mesmo que você tenha uma configuração para escrever para o campo.
É muito útil executar o aplicativo com ONLINE CONFIGURATION habilitada, para que não seja preciso parar/iniciar o módulo Device ao modificar a configuração. Você pode modificar os endereços PLC em Points, os AccessTypes e a maior parte da aplicação e ver em tempo real os resultados na execução. Você pode usar o Startup-Window ou o Propertywatch para iniciar e parar apenas um módulo, como os Devices, em vez de reiniciar todo o sistema de execução.

 

Ativando as Ferramentas de Diagnóstico

Quando o usuário vai ativar o run-time da aplicação, é possível definir quais ferramentas de diagnóstico serão ativadas junto com a aplicação (ver seleção em vermelho), assim como quais módulos da aplicação serão ativados (ver seleção em verde):
Uma vez ativada a aplicação, é apresentada a janela abaixo, com o estado de todos os módulos da aplicação:




Na figura do exemplo acima, todos os módulos estão ativados, a menos do Devices e do Reports
Assim, por exemplo, se o usuário faz uma alteração no módulo de Devices, que trata a comunicação com IEDs, basta parar o módulo e após reativá-lo.
Se ao ativar a aplicação o projetista não ativou o Watch ou Trace, basta pressionar os botões acima de Watch e Trace para iniciá-los.

Usando o Watch

Quando ativado, este módulo vem com todos os campos vazios. Para inserir objetos em cada uma de suas abas, basta teclar a letra associada ao objeto (por exemplo, tag) que através da propriedade de "intellisense" (código inteligente) são mostrados os possíveis objetos associados àquela letra, como mostram as figuras abaixo:
Ao digitar <H> são apresentados diversos objetos onde em destaque cinza <Historian> aparece o primeiro objeto que emparelha com a letra <H>.

Foi inserido através de "Intellisense" o nome <tag.A1.> e ao ser inserido ponto após o A1 (alimentador 1) são apresentados todos os pontos deste alimentador.

Foi selecionado o ponto <Tag.A1.DJ.PCOND> e ao ser inserido o ponto são apresentadas todas as propriedades associadas a este ponto. Dessa forma, é possível selecionar apenas as propriedades que se pretende depurar em um agrupamento de pontos.

Concluindo, através do Watch adicionam-se vários objetos a uma aba da janela, os quais se pretende analisar o comportamento, como mostra a figura abaixo:


Quando a aplicação é encerrada, esta janela é mantida de forma que ao reiniciar a aplicação, todos os objetos colocados são mantidos, isto é, se em cada aba foram inseridos 20 objetos, os mesmos permanecerão quando a aplicação for reativada.
Uma forma mais rápida de se incluir pontos em uma aba é importá-los de uma planilha Excel, gerada como apresentada em capítulos anteriores. O exemplo apresentado na figura abaixo mostra uma planilha Excel gerada a partir do template de um Alimentador, onde adicionou-se o o header das colunas: Object / Value. Após gerar esta planilha, com todos os tags do
Alimentador 1, basta copiar as colunas em cinza e cola-las em uma das abas da ferramenta Watch.


Usando o Trace

O Trace, como dito acima, permite que se faça o rastreamento de módulos do ActionₒNET. Ao ser ativado, como mostrado na figura abaixo, é aberta uma janela para que o projetista da
aplicação selecione as opções de depuração. O botão de <Settings> abre uma segunda janela com as possíveis opções.

Uma vez definidas as opções o usuário o projetista da aplicação fecha esta janela (Close) e ela ficará associada a este projeto sempre que o mesmo for ativado.
Os botões da janela de Trace são:

  • Settings: abre a janela com opções de depuração;

  • Clear: limpa todas as linhas desta janela;

  • Pause: para de inserir linhas na planilha, em função da execução da aplicação;

  • Export: Esporta os dados para uma planilha XML;

  • Close: Fecha a janela de Trace.

Janela de Opções do Trace

Esta janela é subdividida em quatro secções:

  1. Rastreamento de Objetos: permite selecionar objetos como, por exemplo, tags, Scripts, etc. que sempre que utilizados / alterados provocam a criação de uma nova linha na janela de Trace informando a modificação. Os objetos suportam "Intellisense" e os botões <Add>, <Remove> e <Clear> são utilizados para executar estas ações na lista.

  1. Módulos que serão Rastreados: permite que o projetista selecione um ou mais módulos dentre os existentes no ActionₒNET. Além da seleção do módulo é possível selecionar os tipos de eventos associados ao módulo: Error, Warning, Info e Debug.

  2. Outputs (saídas): define onde serão escritas as linhas de rastreamento, se na matriz de Trace e/ou em um arquivo no formato XML.

  3. Tema da Janela: permite escolher a cor da janela dentre quatro possíveis.

Solução de Problemas de comunicação

Registros de operações (LOG)

O protocolo utiliza um sistema de registro de LOG em arquivo de texto e em evento do Windows. Existem quatro tipos de mensagem: Debug, Info, Warning e Error.

Debug

Mensagens em nível mais baixo. Utilizada quando necessita-se identificar com mais
detalhes cada processo. Geralmente utilizada por desenvolvedores, testadores e integradores.

Info

Mensagens de informações importantes para acompanhamento do funcionamento do
Módulo de comunicação.

Warning

Mensagens de aviso, as quais podem ser ignoradas ou necessitam ser verificadas.

Mensagens de erro, que não podem ser ignoradas e necessitam de atenção e correção
imediata para o funcionamento correto do Módulo de comunicação. Error

Trace Window do Action.NET

O Action.NET possui a janela trace, que é executada no servidor e apresenta o registro de operações em tempo real de cada canal e nó. Ela possui 4 colunas importantes (Info 1, Info 2, Info 3 e Info 4), as quais, informam o Canal, Nó, Endereço do ponto e método executado pelo driver.

Evento do Windows

O Módulo de comunicação está configurado internamente para registrar sempre todas as mensagens de Warning e Error. Essa regra independe da configuração de nível de log definida.
O formato da mensagem é composto por: Canal, Nó (quando houver), Endereço do ponto (quando houver), Data/Hora, Tipo da mensagem, Thread, Método e mensagem.

Arquivo de texto

O Módulo de comunicação irá registrar as mensagens baseado no nível hierárquico definido na configuração de canal (Sessão 2 do Manual).
O diretório é composto por pastas para cada canal e nó que foi inicializado. A raiz encontra-se em: C:\Action.NET\Projects\Logs\Drivers\
O arquivo de texto é criado no formato: Log-DIA-MES-ANO.log
Por exemplo, se configurado o armazenamento máximo de 30 arquivos, cada um com tamanho máximo de 35 Megabytes. A cada ciclo de dia um arquivo é criado, caso o mesmo não tenha ultrapassado o tamanho máximo. Caso, esse tamanho seja ultrapassado uma vez. Uma cópia do arquivo do dia com final .1 será criada e será criado um outro novo arquivo. Se o estouro se repetir no mesmo dia. O arquivo novo substitui a cópia e é iniciado um novo arquivo. Se não, um novo ciclo de arquivo diário é criado. Sendo assim, cada nó poderá armazenar aproximadamente 1076 Megabytes em disco.
O formato da mensagem é composto por: Endereço do ponto (quando houver), Data/Hora, Tipo da mensagem, Thread, Método e mensagem.