Ferramenta gratuita para testes do protocolo IEC 60870-5-104

Está disponível para download em http://qtester104.sourceforge.net/ a ferramenta QTester104 que eu mesmo desenvolvi. O código fonte está incluído, liberado pela licença open source GPL, conforme requer a licença do ambiente de desenvolvimento utilizado “QT Open Source Edition” (http://doc.qt.io/qt-5/opensourcelicense.html). Esta ferramenta é parte de um projeto maior que é uma IHM completa para subestação (OSHMI).

O protocolo IEC60870-5-104 é bastante utilizado atualmente entre a unidade concentradora de subestação (UCS) ou unidade terminal remota (UTR) e as interfaces humano-máquina (IHM’s) e também com os centros de controle, utilizando as redes TCP/IP. Muitas vezes é utilizado ainda para interconexão entre centros de controle.

As capacidades da ferramenta são:

  • Funcionamento no modo mestre (primário).
  • Aquisição de vários tipos de informações (ASDU’s).
  • Envio de comandos digitais e analógico de diversos tipos.
  • Envio de solicitação de interrogação geral (GI).
  • Envio de sincronização de tempo.
  • Log do protocolo em formato legível, podendo ser copiado.
  • Tabela exportável com todos os pontos adquiridos, valores, qualificadores, tipo de ASDU, causa, timetag, etc.

A utilização é bem fácil, bastando introduzir alguns parâmetros para iniciar a varredura:

  • Remote IP Address = Endereço IP do escravo (UTR/UCS).
  • Remote Link Address = Endereço de link do escravo.
  • Local Link Address = Endereço de link do mestre.

Após isto, clicar no botão  “Connect”.

Para o envio de comandos os parâmetros são:

  • Command Address = Endereço do objeto de comando.
  • Command Value = Valor a ser enviado (0 ou 1 para digital simples, 0-3 para digital duplo, ou o valor numérico para os analógicos e posição).
  • ASDU Address = Endereço comum de ASDU (CAA), deixe vazio para usar o endereço de link.
  • Command Type = Tipo da ASDU do comando.
  • Command Duration = Duração do comando.
  • SBO = Select before operate, marque para selecionar antes de executar.

Clicar no “Send Command” para enviar o comando.

Use o botão “GI” para forçar uma interrogação geral. As interrogações são sempre feitas no início do estabelecimento da conexão e a cada 5 minutos por default.

Marque “Log Messages” para iniciar o log de mensagens e “AutoScroll” para subir automaticamente o texto.

O botão “Copy Clip.Log” copia o log para a área de transferência.

O botão “Copy Clip.Vals” copia a tabela de pontos aquisitados para a área de transferência.

A programação é feita em C++ com o toolkit QT.

Bom proveito! Caso haja alguma dúvida ou sugestão, pode ser utilizada a seção “Discussion” do site da ferramenta (https://sourceforge.net/p/qtester104/discussion).

Ricardo Olsen in-2c-14px, MEng. :: https://dscsys.com

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s