Dispositivos (Devices) e Interfaces
Dispositivos ou IEDs (Inteligent Eletronic Devices) no Action.NET são quaisquer fontes de dados em tempo real. Tipicamente, um dispositivo é um PLC ou um Relé digital, um outro projeto Action.NET em execução, um servidor de OPC, um Sistema PI, ou qualquer equipamento que tenha um protocolo de comunicação para a troca de informações com o projeto.
As seções a seguir explicam como configurar o módulo de dispositivo, menu Devices do menu principal Edit:
n Protocolos de Comunicação apresenta os protocolos e interfaces que são suportados.
n Configurando Canais explica a configuração da aba Channel, ou canal é o nome usado pelo Action.NET para definir uma conexão a uma fonte de dados, por uma rede lógica executando um protocolo selecionado
n Configurando Nós . Nós ou nodos são as estações lógicas conectadas a cada canal, isso significa um mapeamento com os dispositivos que estão conectados a cada rede lógica.
n Configurando endereços de pontos define o comportamento e o endereçamento para leitura ou escrita de pontos de dados em cada nó do dispositivo que será acessado;
n Configurando Tipos de Acessos permite personalizar a forma como os pontos de dados serão acessados, como ler ou escrever, os ciclos de execução e gatilhos para execuções de tarefas.
Protocolos de Comunicação
Conectividade é uma característica fundamental na plataforma Action.NET, portanto, o sistema possui embutido suporte para vários protocolos padrão da indústria, tais como OPC e Modbus, além destes o Action.NET tem também muitas interfaces de comunicação nativas para uma grande variedade de protocolos proprietários de fabricantes de hardware e PLCs.
As razões para incluir protocolos nativos, além de OPC, são muitas, tais como: redução de custos, já que a maioria dos protocolos não são cobrados; configuração mais fácil, uma vez que está integrado no sistema; maior acesso a funções dos protocolos; por razões de desempenho e diagnósticos, características que não são possíveis quando se usa componentes externos como o OPC. O suporte técnico também é simplificado, pois o fornecedor dos protocolos é único e é o mesmo que desenvolve e fornece o SCADA.
Protocolos Incluídos
Os seguintes protocolos de comunicação estão incluídos na distribuição padrão do produto, porém sua utilização necessita ser licenciada:
n Direção Automation, KOYO, usando o protocolo ECOM
n Barcode Reader ASC
n CTC Binary 5300 model
n Mitsubishi - Series Q
n Modbus - TCP / IP e RS-232, RTU e ASC, protocolo mestre Modbus
n Modbus Slave - TCP / IP e protocolo Modbus escravo RS-232, RTU e ASC
n OPC DA Cliente - OPC acesso do cliente aos servidores locais ou remotos
n OPC UA Client
n Ping
n Rockwell / AB ControlLogix
n Rockwell / AB MicroLogix
n Rockwell / AB DF1 Ethernet
n SIEMENS - Step7
n TRemoteClient - Comunicação Action.NET com Action.NET
n TwinCAT - Interface Beckhoff ADS
n WITS Level Pason
n WITS Level passive
Protocolos Suportados
Existem muitos protocolos que, embora não incluídos nos instaladores padrão do produtos, estão disponíveis mediante solicitação do cliente. Alguns desses protocolos já estão em estado de utilização em produção, outros estão em fase de desenvolvimento e testes. Entre em contato com a SPIN se você tem necessidade de algum dos protocolos nesta lista.
Mesmo se o equipamento com o qual sua aplicação necessita comunicar-se não estiver listado, mas não há informações públicas sobre o protocolo, contate-nos já que, em muitos casos, desde que se possa ter acesso à documentação do protocolo e unidades físicas para testes, há a possibilidade de desenvolvimentos especiais.
Em ordem alfabética:
n Altus AL-1000, AL2000 and Nexto PLCs
n Fatek Facon PLC
n GE Fanuc SNP and SNP-X
n Mitsubishi Series A and FX
n Omron CS/CJ/CP-series CPU Unit ou NSJ Controller
n Reliance CP3000
n Smar CD600
n SMTP - Simple Network Management Protocol
Interfaces adicionais
Há algumas interfaces que estão disponíveis e não foram incluídas na distribuição do produto, pois têm seus próprios pacotes de instalação ou são vendidos como módulos opcionais. Nestes estão incluídos os seguintes protocolos, em ordem alfabética:
n DNP 3.0 Protocol (mestre e escravo)
n IEC 61850 (somente cliente)
n IEC-870-5-101 (mestre)
n IEC-870-5-104 (mestre e escravo)
n Procedimentos de rede 2.7 ONS (Agrupamentos)
n OSIsoft PI System e PI AF, usando o conector AFSDK
Configurando Canais
Canais em Action.NET são os objetos que implementam meios de comunicação utilizados para a comunicação do ambiente do SCADA com os PLCs e outros IEDs. Muitos protocolos internos estão disponíveis. Você deve configurar pelo menos um canal para cada protocolo que você precisa usar.
Para configurar canais:
1. Vá para Edit > Devices > Channels
2. Clique em Create New.
n É mostrada a janela de criação de novo canal (figura a seguir)
n Digite ou selecione as informações, conforme necessário.
|
3. Clique OK.
n O canal é adicionado como uma nova linha na tabela.
4. Digite ou selecione as informações para o novo Canal, conforme necessário.
n Para adicionar ou remover uma coluna, clique com o botão direito na área de cabeçalho da coluna e marque ou desmarque colunas.
|
5. Continue adicionando quantos canais você precisa.
n Se necessário, clique com o botão direito em uma linha para cortar, copiar, colar ou excluir uma linha
Configurando Nós
Os nós ou Nodos no Action.NET são os objetos que coincidem com os dispositivos IEDs, ou CLPs com os quais a aplicação deve se comunicar no canal em que estão conectados.
Você também pode importar as configurações de um servidor OPC ou de outra fonte de dados. Consulte Importando de um Servidor OPC e Importando endereços de PLCs.
Para configurar os nós:
1. Vá para Edit > Devices > Nodes.
2. Digite ou selecione as informações, conforme necessário.
n Para adicionar ou remover uma coluna, clique com o botão direito na área de cabeçalho da coluna e marque ou desmarque colunas.
|
3. Continue adicionando tantos novos nós quantos você precisar.
Importando de um Servidor OPC
Depois de criar um nó de comunicação OPC, você pode selecionar o nó e clicar em Importar para importar o banco de dados do Servidor OPC para o projeto. O Action.NET cria automaticamente os Tags e os pontos de comunicação (tabela Points).
Depois de ter utilizado a ferramenta de importação, pela primeira vez, o sistema irá salvar as configurações utilizadas, de modo que o botão mostrará a partir de então a palavra SYNC, o que significa que na próxima vez que você usá-lo, será executada uma sincronização, verificando quais endereços já foram importados previamente e quais os novos.
Importando endereços de PLCs
Ao criar os nós de comunicação e pontos de comunicação (Points), você pode importá-los se eles são definidos em outra fonte de dados das seguintes formas:
n Você pode copiar e colar o conteúdo de uma tabela de Excel. As tabelas podem ter diferentes colunas ou ordem, desde que você inclua o título das colunas nas operações de copiar e colar. O sistema irá colocar os dados nas colunas esperadas, mesmo que a ordem seja diferente nas tabelas de origem e de destino.
AVISO - Para a colagem de tabelas na tabela Points são exigidas, pelo menos as colunas TagName, Type e Address.
n Você pode importar os dados de arquivos CSV.
n Para dispositivos Rockwell ControlLogix, você pode importar arquivos de definição L5K.
n Para dados OSIsoft PI ®, existe uma versão Action.NET para compartilhar definições.
n Está disponível também uma API de programação que pode ser usada para escrever scripts preencher as tabelas de Points, até mesmo em tempo de execução, quando é necessário.
Se o dispositivo PLC ou outro IED tem um banco de dados aberto ou arquivo com os endereços disponíveis, e você gostaria de ter uma forte integração para fazer essa configuração e carga de endereços Action.NET, contate o suporte.
Configurando endereços de pontos
A aba Points do espaço Devices é utilizada para definir os tags que serão adquiridos por este canal e node. Nela são especificados os tipos de pontos (conforme o protocolo) e os identificadores (com os endereços) utilizados pelo protocolo para o mapeamento dos dados dentro dos IEDs.
O número de pontos de dados que você pode configurar está relacionada tanto ao ProductModel configurado para o projeto e sua licença para Action.NET. Para obter informações sobre os modelos de produtos, consulte Família e Modelo do Produto .
Para configurar os pontos de dados:
1. Vá para Edit > Devices > Points.
n Você pode copiar e colar as etiquetas da aba Tag> Objetos.
2. Digite ou selecione as informações, conforme necessário.
n Para adicionar ou remover uma coluna, clique com o botão direito na área de cabeçalho da coluna e marque ou desmarque colunas.
|
3. Continue adicionando tantos pontos quantos você precisa.
Configurando Tipos de Acessos
Na aba de Tipos de Acesso (Access Types) são definidos os procedimentos de leitura e escrita, com tempos de amostragem, eventos não solicitados e outras propriedades, que serão utilizados no tratamento de cada um dos tags definidos na aba Points.
Você pode configurar os tipos de acesso que controlam ler, escrever e outras configurações quando o aplicativo acessa dados do PLC ou IED..
O Action.NET vem com alguns tipos de acesso predefinidos que você pode usar, ou você pode criar outros próprios, sempre de acordo com as possibilidades existentes no protocolo em questão,
Para configurar os tipos de acesso:
1. Vá para Edit > Devices > AccessTypes..
2. Siga um dos seguintes procedimentos:
n Para editar um tipo de acesso existente, clique duas vezes em um campo.
n Para criar um novo tipo de acesso, clique em Create New .
3. Digite ou selecione as informações, conforme necessário.
|
Ferramentas para diagnose
Depois de iniciada a execução de um projeto voce pode, utilizando a Startup window, selecionar algumas ferramentas de diagnose: As janelas PropertyWatch (Watch), TraceWindow (Trace), e ModuleInformation (Info).
Você também pode iniciar as ferramentas de diagnóstico 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.
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.
Watch - Tags, Estados e Propriedades
O Property Watch é uma ferramenta de diagnóstico usado para o acesso de atributos em tempo real e propriedades de Tags internas do sistema para leitura ou escrita. Basta digitar o nome da propriedade do objeto na coluna e obtém-se o seu valor na coluna Valor.
Ex: Tag.Coils, Device.Channel.Modbus.Status. No lado direito, temos propriedades do objeto selecionado.
Janela de Trace
A janela de Trace (rastreamento) é a ferramenta que informa as mensagens do sistema em uma interface do tipo DataGrid (tabela). Ao ativar os dispositivos do módulo no botão Configurações, temos informações sobre o estado de leituras, escritas, não solicitados, quadros TX (envio) e RX (recebido).
Quando se clica no botão Settings na aparece uma janela de configuração onde se pode selecionar quais tipos de mensagens e módulos, que serão mostrados no DataGrid de trace. Estes dados que aparecem podem também ser salvos em arquivos para uma análise mais completa. Também é possível configurar um tag em ObjectName clicando no botão Add. Ai aparece uma janela com um menu para selecionar objetos para incluir no monitoramento.
Dica: Ao marcar o CheckBox de Devices nas configurações, habilitar apenas o ERROR, INFO e informações de alerta, e não as informações de depuração, caso contrário, você irá criar muitos dados. Para vários dispositivos e protocolos é muito importante usar essa ferramenta, uma vez que o sistema irá apresentar aqui possíveis endereços inválidos da configuração.
Objetos runtime Devices
O namespace Device é o ponto de entrada para todos os objetos relacionados com o módulo de dispositivos ou Devices.
O objeto Device.Channel lista todos os canais configurados e suas propriedades em tempo de execução.
O objeto Device.Node lista todos os nós configurados e suas propriedades em tempo de execução
O objeto Device.AccessType lista os tipos de acesso definidos e tem opções para executar chamadas síncronas sobre a leitura e a escrita para o dispositivo.
As seguintes propriedades de tags são atualizados com base no módulo de dispositivo:
tag.tagname.DevicePoint: endereço no ponto de dispositivos conectados com esta tag
Veja http://www.spinengenharia.com.br/help/an-2014/runtime/index.html para a referência de programação completa em objetos de tempo de execução.
Códigos de Status
A lista a seguir apresenta códigos utilizados para indicar em tempo real o status de um node ou canal.
Estes códigos estão em tempo real em
Device.Node.<node name>.Status e em
Device.Channel.<channel name>.Status
Lista de códigos:
0 Success
-1 BuildCommandException
-2 ParseCommandUnsolicitedException
-3 ParseReplyException
-4 BuildReplyUnsolicitedException
-5 ChannelException
-6 NodeException
-100 Base Send Error
-101 Base SendAndWait Error
-102 TCP Create Error 1
-103 TCP Create Error 2
-104 TCP Create SocketError
-105 TCP Connect Callback Error
-106 TCP Receive Error
-107 UDP Create Error
-108 UDP Receive Error
-109 Serial Create Error
-110 Serial Receive Error
-111 TCP NotConnected
-112 Start message timeout
-113 Receiving bytes timeout
-114 End message timeout
-115 Connect timeout
-200 ProtocolError
-201 InvalidProtocol
-202 InvalidStation
-203 InvalidCommand
-204 InvalidMsgSequence
-205 InvalidCheckSum
-206 InvalidAddress
-207 InvalidModifiers
Valores positivos são utilizados como status de erros para protocolos específicos.