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:
Devices e Interfaces
Os dispositivos no Action.NET são qualquer fonte de dados ao vivo em tempo real. Normalmente, um dispositivo é um PLC, outro projeto Action.NET, um servidor OPC, um Asset Manager ou Historian Server externo ou qualquer equipamento que tenha um protocolo de comunicação.
As fontes de dados são conectadas por meio de Canais. Cada canal tem um tipo de interface (por exemplo, RS-232, TCP / IP) e um protocolo específico do dispositivo. Um canal pode acessar várias estações (por exemplo, dispositivos) usando um protocolo comum.
Cada estação é chamada de Nó. Cada nó possui um ou mais pontos de dados. Os pontos de dados fornecem os valores de dados específicos a serem acessados por meio de tags. Cada ponto de dados está vinculado a uma tag específica.
Finalmente, cada ponto de dados é associado a um Tipo de Acesso. Isso define as regras para leitura e gravação de valores neste ponto de dados, como taxa de pesquisa, se uma leitura é realizada na inicialização e se a entrada não solicitada é aceita.
Em resumo, a configuração do Módulo de Dispositivo é executada em 3 etapas:
Defina o equipamento (e protocolos) que o projeto usará em Editar → Dispositivos → Canais.
Definiu os nós, ou estações PLC relacionadas a cada canal, em Editar → Dispositivos → Nós
Mapeie os Tags em seu modelo de dados para endereços nos dispositivos, em Editar → Dispositivos → Pontos.
Opcionalmente, você pode personalizar ou criar novos AccessTypes, mapeando grupos de Tags de requisitos de comunicação semelhantes para o mesmo AccessType.
Para agilizar a configuração, o Action.NET fornece muitos Assistentes de importação que criarão automaticamente os tags e mapeamento de dispositivos usando a configuração do PLC ou outra fonte de informação disponível.
Veja o Apendice - Drivers de Comunicação para uma lista completa de protocolos de comunicação disponíveis no Action.NET.
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:
Vá para Edit > Devices > Channels
Clique em Create New.
É mostrada a janela de criação de novo canal (figura a seguir)
Digite ou selecione as informações, conforme necessário.
Coluna | Descrição | |
Channel Name | Digite um nome para o canal. O sistema indicará se o nome não é válido, mostrando a célula com o contorno vermelho. |
|
Protocol | Selecione o protocolo que vai utilizar neste canal. Se você não vê um protocolo que você precisa, clique em Mais para fornecer informações para um novo protocolo. | |
Interface | Selecione o tipo de interface para este canal.
| |
Description | Digite uma descrição para este canal. |
Clique OK.
O canal é adicionado como uma nova linha na tabela.
Digite ou selecione as informações para o novo Canal, conforme necessário.
Para mostrar ou esconder uma coluna, clique com o botão direito na área de cabeçalho da coluna e marque ou desmarque colunas.
Coluna | Descrição |
Name | Digite um nome para o canal. O sistema indicará se o nome não é válido, mostrando a célula com o contorno vermelho. |
Protocol | Mostra o protocolo que foi selecionado |
ProtocolOptions | Configure as opções específicas para este protocolo. As opções de protocolo são dependentes do protocolo selecionado. Selecione o protocolo na como-box na parte superior da página e pressione o botão HELP do seu lado para acessar a documentação do protocolo específico. |
Interface | Mostra a interface física usada por este canal. |
Settings | Configure as definições para este canal. Os valores disponíveis dependem da interface que o canal está usando.
|
Timeout | Configure as opções de tempo limite para este canal. Normalmente, mantenha o valor padrão. Tx - Tempo em milissegundos para o primeiro byte da mensagem ser enviado. RxStart - Tempo máximo aceitável (em milissegundos) entre o envio do ultimo byte da mensagem e a recepção do primeiro byte da resposta. RxFinish - Tempo total para uma mensagem ser recebida completamente ( em milissegundos) NestByte - Tempo máximo de recebimento entre dois bytes consecutivos Retries - Numero máximo de tentativas antes de considera falha em caso de timeouts sucessivos Unsolicited - Tempo máximo sem comunicação não solicitada antes de indicar erro (em milissegundos) |
IntialState | Selecione o estado inicial para este canal. Habilitado (Enabled) ou não (Disabled).Em qualquer destes casos a task do protocolo será disparada, podendo ser controlada em tempo real (habilitar ou desabilitar). Uma terceira opção Remote, é utilizada para disparo de canais cujos executáveis que vão controlar um objeto em outro servidor. A ultima opção Reserved deve ser utilizada para desabilitar completamente um canal (sem o disparo do driver) . |
Remote Settings | No caso de se estar executando com o InitialState Remote, nesta coluna podem ser definidos os endereçõs IPs primário e de backup dos servidores nos quais será executado o módulo de comunicação deste canal.: PrimaryIP e BackupIP. |
Description | Digite um texto com uma descrição para este canal. |
[Outras colunas] | Para definições de outras colunas que estão disponíveis em muitas tabelas, consulte "Descrição de colunas comuns" |
Continue adicionando quantos canais você precisa.
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:
Vá para Edit > Devices > Nodes.
Digite ou selecione as informações, conforme necessário.
Para mostrar ou esconder uma coluna, clique com o botão direito na área de cabeçalho da coluna e marque ou desmarque colunas.
Coluna | Descrição |
Name | Digite um nome para o nó. O sistema indicará se o nome não é válido, mostrando a célula com o contorno vermelho. |
Channel | Selecione o canal para este nó. Para mais informações sobre a configuração de protocolos comuns, clique em Help na parte superior da aba. |
PrimaryStation | Insira as informações necessárias para acessar o nó principal, com base no protocolo selecionado. NOTA As opções de protocolo são dependentes do protocolo selecionado. Selecione o protocolo na combo box na parte superior da página e pressione o botão Help ao lado para acessar a documentação do protocolo. Para o protocolo Modbus:
|
BackupStation | Insira as informações necessárias para acessar o nó de backup, com base no protocolo selecionado. Quando definido, e uma falha de comunicação ocorre na estação principal, o sistema automaticamente tenta estabelecer |
Description | Descrição Digite uma descrição para este nó. |
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:
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.
Você pode importar os dados de arquivos CSV.
Para dispositivos Rockwell ControlLogix, você pode importar arquivos de definição L5K.
Para dados OSIsoft PI ®, existe uma versão Action.NET para compartilhar definições.
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:
Vá para Edit > Devices > Points.
Você pode copiar e colar as etiquetas da aba Tag> Objetos.
Digite ou selecione as informações, conforme necessário.
Para adicionar ou remover uma coluna, clique com o botão direito na área de cabeçalho da coluna e marque ou desmarque colunas.
Coluna | Descrição |
TagName | Digite um nome de tag ou clique ... para selecionar um tag. Você também pode criar uma nova tag neste ponto. |
Node | Selecione o nó para este ponto de dados. |
Address | Digite o endereço de registro, com base no PLC e protocolo para este ponto de dados e tag. |
DataType | Selecione o tipo de dados que você deseja usar. A maioria dos protocolos deve usar a opção nativa. Quando nativo é usado, o protocolo vai tratar automaticamente a conversão de dados. |
Modifiers | Se o PLC usa uma ordem de byte diferente, selecione as opções desejadas. Você pode alterar a posição de bit, byte, Word ou DWORD dos dados que são usados na comunicação. |
AccessType | Selecione o tipo de acesso para este ponto. Você pode configurar os tipos de acesso. Veja .em "Configurando Tipos de Acessos" . |
Scaling | Se você quiser manipular o valor do tag, de alguma forma, selecione as opções desejadas. None, Linear,Equation, tagMinMax TagScaleMinMax
|
Para definições de outras colunas que estão disponíveis em colunas] muitas tabelas, consulte "Descrição de colunas comuns". |
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:
Vá para Edit > Devices > AccessTypes..
Siga um dos seguintes procedimentos:
Para editar um tipo de acesso existente, clique duas vezes em um campo.
Para criar um novo tipo de acesso, clique em Create New .
Digite ou selecione as informações, conforme necessário.
Coluna | Descrição |
Name | Digite um nome para este tipo de acesso |
Read ReadPolling |
|
PollingRate | Digite o período de amostragem em milissegundos |
ReadTrigger | Digite uma propriedade de objeto para informar ao sistema quando deve ler o valor, por evento. |
OnStartup | Quando selecionado, o sistema faz uma leitura na inicialização. |
Write |
|
WriteEvent | Selecione o evento que vai disparar a escrita do valor: Pode escolher entre Change, ChangeUp ou ChangeDown ocorrido no valor. |
WriteTrigger | Digite uma propriedade de objeto para informar ao sistema quando escrever o valor. |
Settings | Quando selecionado, o sistema aceita valores de PLC, mesmo se o tempo de amostragem não tenha expirado. |
UseStaticBlocks |
|
Description | Digite uma descrição para o tipo de acesso. |
[Outras colunas] | Para definições de outras colunas que estão disponíveis em muitas tabelas, consulte "Descrição de colunas comuns" |
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.
Tabelas de Códigos
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.
Códigos de Qualidade OPC DA
O que indicam os códigos de qualidade do OPC DA? O código de qualidade OPC é composto por 16 bits.
Os 8 bits altos estão disponíveis para uso específico do fornecedor e devem ser todos de 0 quando não usados.
Os 8 bits baixos são divididos em três seções.
Os dois primeiros bits podem passar o significado Bom, Mau ou Incerto. Se um servidor não suportar códigos de qualidade, um bom valor será sempre passado.
Os próximos quatro bits podem ser usados para fornecer informações específicas adicionais sobre a qualidade geral.
Os dois últimos bits são usados se as informações de limite forem suportadas pelo servidor. Em VB, estes são retornados como valores Hex que podem ser convertidos em informações significativas.
Os dois códigos de qualidade OPC mais comuns são:
192 ou hex C0 é de boa qualidade.
0 (decimal ou hexadecimal) é de má qualidade.
Códigos de qualidade de especificação OPC
Para mais informações, consulte as especificações do OPC. (Nota: nem todos os servidores suportarão todos esses códigos)
Nesta página: