Você está na página 1de 14

ALTUS TCP/IP driver 1

ALTUS TCP/IP DRIVER


elipsesoftware
Nome do arquivo: ALTUSTCPIP.DLL
Fabricante: Altus (http://www.altus.com.br)
Equipamentos: UCPs Altus conectadas s interfaces AL-3405, PO7091, WebGates
PO9900 ou PO9901
Protocolo: ALNET II via TCP/IP
Verso: 1.14
ltima atualizao: TESTE
Introduo
O driver ALTUSTCPIP efetua a comunicao entre sistemas Elipse e qualquer UCP Altus conectada rede
Ethernet atravs das interfaces AL-3405, PO7091 ou dos WebGates PO9900 ou PO9901. Este driver tambm
tem a possibilidade de receber e tratar mensagens no-solicitadas (MNS), isto , decodificar comandos
enviados atravs de instrues ECR/ECH pelo programa aplicativo que executa no CP.
Preparando o equipamento
Parmetros [P] de configurao do driver
P1Deixar em zero. No utilizado.
P2Deixar em zero. Em desuso.
P3Deixar em zero. Em desuso.
P4Nmero de canais de comunicao read-ahead com cada CP.

Os parmetros P2 e P3 esto em desuso e indicavam respectivamente quantas retentativas internas de leitura e
escrita sero efetuadas para cada tentativa de comunicao sem sucesso. Por exemplo, caso P3 seja 1, se uma
escrita vier a falhar o driver ir reenviar o comando de escrita mais uma vez ao CP.
O parmetro P4 indica quantas tarefas adicionais de comunicao (threads de read-ahead) sero criadas para
efetuarem a comunicao com cada CP. Durante a execuo, o driver aprende quais so os tags que o
aplicativo est lendo, disparando leituras dos tags nestes threads de read-ahead, de forma que o valor do tag j
esteja disponvel quando a prxima leitura do tag for requisitada ao driver.
NOTA: recomendado o nmero mximo de 4 canais. Consulte a seo Threads de Read-ahead para
maiores informaes.
ALTUS TCP/IP driver 2
Para configurar os demais parmetros do driver ALTUSTCPIP, aparecer a seguinte janela de configuraes
atravs dos botes Outros parmetros... ou Extra..., como segue:

Figura 1: Configurao dos parmetros do driver
A janela acima separada em trs grandes grupos:
Itens da opo Other Settings
Campo Descrio
Time-OutDefine o tempo em milissegundos que o driver aguarda por uma resposta do CP
uma pergunta feita pelo driver.
Handle MNSDefine se o driver ir tratar mensagens no-solicitadas (MNS), porm esta opo
s habilitada quando a opo Use ALNET II est ligada.
Share TagsSe desmarcado, cria um endereamento de memria para cada conexo de
mensagens no-solicitadas (MNS), caso contrrio todas as MNS sero
guardadas em uma mesma tabela interna. Esta opo muito til quando
utilizada com CPs redundantes.
Computer IPEndereo IP do computador. Somente utilizado quando trabalha com
mensagens no-solicitadas (MNS).
Computer PortPorta IP do computador. Somente utilizado quando trabalha com mensagens
no-solicitadas (MNS).
Use ALNET IIPor definio a rede de CPs via TCP/IP utiliza o protocolo ALNET II, porm em
algumas arquiteturas pode-se querer comunicar ALNET I via TCP/IP, portanto
para estes casos deve-se desmarcar esta opo.

ALTUS TCP/IP driver 3
Itens da opo Connections
Campo Descrio
Add Adiciona uma nova conexo de CP. Deve-se informar IP e porta. Este novo CP
adicionado lista de CPs e seu nmero da conexo mostrado na frente do IP e da
porta. Este nmero de conexo utilizado nos parmetros N1/B1. Se for
definido um IP de backup, seu valor ser mostrado aps o IP principal, separado
por uma vrgula. Se for habilitada a troca de IP automtica ser adicionado o valor
1 aps o IP de backup, separado por uma vrgula.
Edit Permite editar os parmetros de uma conexo de CP existente.
Remove Remove a conexo selecionada na lista de conexes.

Itens da opo LOG File
Campo Descrio
File path (client)Nome do arquivo de logs onde sero gravadas as comunicaes com os CPs
configurados na lista de CPs. Ser criado um arquivo para cada thread de
comunicao. O nome configurado nesse parmetro define o nome do arquivo de
log do thread principal de cada escravo. Os threads de read-ahead criaro cada um
um arquivo com o mesmo nome do principal mais um underscore e o nmero de
ordem do thread, comeando em 1. Todos os threads de mesma ordem de cada
escravo compartilham o mesmo arquivo.
File path (MNS)Nome do arquivo de logs para mensagens no-solicitadas (MNS).
File typeDefine o tipo de log a ser criado: No LOG: no cria os arquivos de log; Create
new: cria um arquivo novo (apagando o antigo) cada vez que o driver reiniciado;
Append data: o arquivo de log sempre cresce indefinidamente mesmo que o driver
seja reiniciado.
Log ALNET I
Telegrams
Escreve no arquivo de log os telegramas ALNET I.
Log ALNET II
Telegrams
Escreve no arquivo de log os telegramas ALNET II.

Atravs dos botes da Janela de configuraes extras, possvel acessar tambm as seguintes janelas de
configurao:

Figura 2: Configurao das opes de reconexo automtica
Itens de Reconnection settings
Campo Descrio
Retry failed connections afterDefine de quanto em quanto tempo o driver deve reiniciar as
tentativas de reconexo.
Number of consecutive
connection reattempts
Nmero de retentativas de conexo sucessivas. Esta opo configura
o nmero de operaes de leitura ou escrita em tags de CLP que
tenha sido desconectado que ainda tentaro estabelecer conexo.
Cada uma dessas operaes, se no tiver sucesso na reconexo,
retornar erro aps o timeout configurado. Aps o nmero definido
de retentativas, novas operaes em tags do CLP retornaro erro
imediatamente, sem tentativa de reconexo, at que expire o
intervalo de tempo configurado, aps o qual a seqncia de
retentativas recomea.

ALTUS TCP/IP driver 4

Figura 3: Configurao dos parmetros da conexo
Itens da janela Add Remote Settings
Campo Descrio
PortPorta IP do CP (normalmente 405).
Main IPDefine o IP do CP principal.
Customize max.
frame size
Esta opo configura o tamanho mximo da rea de dados de cada frame de
comunicao. Se alguma comunicao (normalmente uma operao de escrita ou
leitura de blocos) exigir uma rea de dados maior que este limite, o driver
automaticamente dividir a operao em quantas forem necessrias de forma a
respeitar o limite de bytes de dados para cada frame isolado.
A primeira opo a default, equivalendo a um frame com no mximo 220 bytes
de dados. A segunda, usada para WebGates, limita a rea de dados em 128 bytes.
Em casos mais raros, pode ser necessrio personalizar este valor, usando a
terceira opo.
ATENO: Esta opo de configurao deve ser alterada apenas se
absolutamente necessrio, pois a escolha de um valor inapropriado pode ter um
srio impacto, em termos de perda de desempenho. Em caso de dvidas, deixe na
opo default ou contate o suporte do fabricante.
Use Backup IP
address
Quando esta opo habilitada possvel especificar um IP secundrio, de um
CP redundante. Notar que ao desmarcar a opo o IP de redundncia
anteriormente configurado ser perdido.
Automatically
connect to
alternative IP
address in case of
comm. error
Quanto esta opo habilitada o driver ir automaticamente tentar a comunicao
com o outro IP, caso falhe a comunicao com o IP em uso (passando principal
para o secundrio e vice-versa). O tag Status da redundncia (N2 = 105)
permite monitorar qual o IP em uso (ver tabela 2).
Caso a opo esteja desmarcada, a troca de IP pode ser feita diretamente pelo
aplicativo, atravs da escrita no tag Status da redundncia.
Backup IPQuando a opo Use Backup IP address marcada, possvel definir o IP do CP
redundante. Notar que este CP dever obrigatoriamente aceitar conexes na
mesma porta IP que o CP principal.
ALTUS TCP/IP driver 5
Campo Descrio
Use driver
hot-standby logic
Quando esta opo habilitada, o driver passa a gerenciar automaticamente o
processo de redundncia (hot-standby) entre CLP's. A opo "Automatically
connect to alternative IP address in case of comm. error" deve ser habilitada para
que este recurso funcione corretamente.
Test periodDefine o perodo de monitorao do operando que informa se o CLP com o qual o
driver est comunicando est ativo (monitoring operand).
Monitoring operandNesta opo deve ser inserida uma string informando o operando de monitorao
a ser usado. Este operando informa se o CLP est ativo. Ter o valor 1 para ativo,
ou zero para inativo. O default M009.0. Este operando pode ser definido como
tipo bloco, mas deve necessariamente ter apenas um elemento.
Automatically
activate backup PLC
in case of
disconnection
Esta opo s tem sentido em ser usada dentro da lgica de driver hot-standby.
Quando esta opo estiver habilitada, se o driver detectar a desconexo de algum
escravo e conectar-se ao CLP antes inativo, ele tentar ativar este CLP, caso o
operando de monitorao do mesmo ainda estiver em zero. A ativao feita
atravs da escrita de um valor configurvel em um operando tambm
configurvel, conforme as opes a seguir.
ATENO: Este recurso ainda no foi padronizado no processo de redundncia,
podendo no estar implementado no sistema. Antes de ativ-lo, verifique se o
software do CLP est preparado para usar este recurso, e se no existem
implicaes em deixar a ativao automtica.
Set state operandNesta opo deve ser inserida uma string informando o operando de ativao do
CLP, se o mesmo existir. Trata-se de um operando no qual pode-se escrever um
valor pr-determinado para ativar um CLP inativo. Este recurso no um recurso
padro, mas conveniente em muitos casos. Este operando pode ser um bloco, mas
deve necessariamente ter apenas um elemento.
Activation valueValor a ser escrito no operando de ativao, para ativar um CLP inativo.



Figura 4: Definio do caminho completo dos arquivos de configurao para aplicaes CHESF PA
Itens de CHESF Directories Settings
Campo Descrio
General Parameters fileDefine caminho do arquivo de parmetros gerais (PGerais.csv)
Definition file for communication
points groups
Define o caminho para o arquivo de configurao de grupos de
pontos de comunicao (Grupos.csv)
Definition file for polling blocksDefine caminho para arquivo de definio de blocos de polling
(BlocosPoll.csv)
ALTUS TCP/IP driver 6
Ini fileDefine caminho para arquivo INI que armazena os ltimos valores
dos ponteiros de leitura da fila de eventos do CP, de forma a evitar a
perda de eventos, se a aplicao sair do ar por um instante.
Para que os valores armazenados neste arquivo sejam usados na
inicializao do driver, preciso que o checkbox "discard remaining
events", da janela "Add Remote Settings", esteja desmarcado, caso
contrrio os ponteiros de leitura sero inicializados com os mesmos
valores dos ponteiros de escrita lidos do CP, descartando todos os
eventos remanescentes, gerados antes da inicializao do driver.


Parmetros [N] de endereamento de tags PLC
N1Nmero da conexo do CP
N2Tipo do dado (ver tabela 1)
N3Endereo
N4Bit ou posio de tabela (ver tabela 1)

O parmetro N1 contm o nmero da conexo na lista de CPs (grupo Connections na janela da figura 1),
comeando em zero. Para mensagens no-solicitadas (MNS), usar 1000 + IPPLC.
O nmero do IPPLC coincide com o ltimo nmero do endereo IP do PLC. Assim, para um PLC de endereo
IP 195.4.32.29, o nmero do IPPLC ser 29, portanto N1 deve ser igual a 1029.
Tabela 1 Tipos de tags de dados (tags PLC)
Tipo N1 N2 N3 N4 Read/Write Comentrios
Memriaconexo 0 end (*) R/W
Tabela de Memriaconexo 1 end pos R/W
Bit de Memriaconexo 2 end n R/W Em desuso
Decimalconexo 3 end (*) R/W
Tabela de Decimaisconexo 4 end pos R/W
Auxiliarconexo 5 end (*) R/W
Entradas e Sadasconexo 6 end (*) R/W
Inteiroconexo 7 end (*) R/W
Bit em Octeto (E/S)conexo 8 end bit (0-7) W Em desuso
Bit em Auxiliarconexo 9 end bit (0-7) W Em desuso
Real (float)conexo 10 end (*) R/W
Tabela de Reais (float)conexo 11 end pos R/W
Tabela de Inteirosconexo 12 end pos R/W
Captura eventosconexo 13 end TM Aux * 10 + bit R
Eventoconexo 14 mdulo (0-15) ponto (0-31) R Requer tag N2=13
Erro de mduloconexo 15 0 0 R Requer tag N2=13
Overflow de memriaconexo 16 0 0 R Requer tag N2=13
Mudana de data/horaconexo 17 0 0 R Requer tag N2=13
Leitura de op. CHESF por
polling
conexo 18 0 DI
1 AI
2 DO
3 AO
Endereo
(0 9999)
R/W (escrita
permitida
somente para
tipos DO e
AO).
Ver seo
Tratamento de
eventos CHESF PA
Leitura de op. CHESF por
evento
conexo 19 0 DI
1 AI
2 DO
3 AO
Endereo
(0 9999)
R/W (escrita
permitida
somente para
tipos DO e
AO).
Ver seo
Tratamento de
eventos CHESF PA
ALTUS TCP/IP driver 7
Tag de indicao de
overflow na fila de eventos
CHESF
conexo 20 no usado no usado R Retorna lista de
eventos de overflow
(Ver seo
Tratamento de
eventos CHESF PA)
Realizao de scans
CHESF
conexo 21 no usado no usado R Ver seo
Tratamento de
eventos CHESF PA

Tabela 2 Status e comandos de conexes TCP/IP
Tipo N1 N2 Read/Write Valor
Status da conexo
conexo 101 R
0 desconectado
1 conectado
-1 erro
Inicia conexo
conexo 102 W
Sem valor
Termina conexo
conexo 103 W
Sem valor
Status da conexo
em valor booleano
conexo 104 R
0 desconectado ou em erro
1 conectado
Status da redundncia
conexo 105 R/W
0 IP principal
1 IP de backup
Driver Hot-standby
conexo 106 R/W
1 ativo
0 inativo
Hot-standby automatic
activation
conexo 107 R/W
1 ativo
0 inativo
Leitura de operando de
monitorao da lgica de
Hot-standby
conexo 108 R
1 CP ativo
0 CP inativo
Ativa CLP, segundo lgica de
hot-standby
conexo 109 W
Sem valor

Observaes importantes
Deve ser adicionado o valor 10000 ao parmetro N2 para tratar os valores lidos como inteiros de 16 bits
sem sinal, com isso os valores variam de 0 a 65535.
Na tabela 1, os parmetros N4 marcados com (*) possuem a seguinte interpretao:
Se N4 igual a 0, ento ser lido todo o operando.
Se N4 maior que 0, ento o comando efetuado sobre o bit especificado em N4 (valores de 1 a 32,
dependendo do tamanho do operando), sendo o bit menos significativo indicado por 1.
Para garantir a compatibilidade de aplicaes antigas com o driver atual, certifique-se que os tags com
N2 = 0 possuem N4 = 0, j que, caso N4 for diferente de 0 ser encarado como um bit.
Quando o valor de N1 estiver configurado para mensagens no-solicitadas (N1 >= 1000), os valores
sero inicializados e permanecero em 0 at que o CP atualize os operandos correspondentes.
Os tipos marcados com R/W permitem leitura e escrita de valor. Os tipos marcados com R ou W
permitem apenas leitura ou escrita, respectivamente.
Parmetros [B] de endereamento de tags bloco
B1Nmero da conexo do CP
B2Tipo do dado (ver tabela 3)
B3Endereo (ver tabela 3)
B4No utilizado (deixar em zero)

ALTUS TCP/IP driver 8
O parmetro B1 contm o nmero da conexo na lista de CPs (grupo Connections na janela da figura 1),
comeando em zero. Para mensagens no-solicitadas (MNS), usar 1000 + IPPLC.
O nmero do IPPLC coincide com o ltimo nmero do endereo IP do PLC. Assim, para um PLC de endereo
IP 195.4.32.29, o nmero do IPPLC ser 29, portanto B1 deve ser igual a 1029.
Tabela 3 Tipos de tags de dados (tags bloco)
Tipo B1 B2 B3 Read/Write
Tabela de Memria
conexo Nm. tabela posio inicial na tabela R/W
Tabela de Decimais
conexo 1000+nm. tabela posio inicial na tabela R/W
Tabela de Reais (float)
conexo 4000+nm. tabela posio inicial na tabela R/W
Tabela de Inteiros
conexo 6000+nm. tabela posio inicial na tabela R/W
Tabela de Memria de MNS
1000+IPPLC Nm. tabela posio inicial na tabela R
Tabela de Decimais de MNS
1000+IPPLC 1000+nm. tabela posio inicial na tabela R
Tabela de Reais de MNS
1000+IPPLC 4000+nm. tabela posio inicial na tabela R
Status Barramentos de E/S
conexo 2000 nm. Barramento R
Status Comunicao
conexo 2001 reset de variveis (*) R
Status Equipamento
conexo 2002 - R
Bloco de Memria
conexo 3000 endereo inicial R/W
Bloco de Real (float)
conexo 5000 endereo inicial R/W
Bloco de Entradas
conexo 5001 endereo inicial R
Bloco de Sadas
conexo 5001 endereo inicial W
Bloco de Auxiliares
conexo 5002 endereo inicial R/W
Bloco de Inteiros
conexo 5003 endereo inicial R/W
Bloco de Decimais
conexo 5004 endereo inicial R/W
Leitura de blocos CHESF PA por
polling
conexo 7000 +
0 DI
1 AI
2 DO
3 AO
endereo (0 9999) R/W (escrita
apenas de
elementos
isolados)

Observaes importantes
Deve ser adicionado o valor 10000 ao parmetro B2 para tratar os valores lidos como inteiros de 16 bits
sem sinal, com isso os valores variam de 0 a 65535.
Quando o valor de B1 estiver configurado para mensagens no-solicitadas (B1 >= 1000), os valores
sero inicializados e permanecero em 0 at que o CP atualize os operandos correspondentes.
Os tipos marcados com R/W permitem leitura e escrita de bloco. Os tipos marcados com R ou W
permitem apenas leitura e escrita, respectivamente.
A partir da verso 1.08, esse driver permite a escrita de blocos de qualquer tamanho, sendo o bloco
dividido internamente em mais blocos pelo driver, automaticamente, se seu tamanho exceder o limite
mximo previsto pelo protocolo. Esse limite, entretanto, pode variar caso se esteja utilizando WebGate, ou
de alguma forma se estiver comunicando diretamente com a porta serial do equipamento. O tamanho
mximo do bloco nesses casos depender do sistema utilizado, e a informao exata do mximo nmero de
elementos permitidos poder ser obtida em cada caso junto ao suporte da Altus. Nesses casos, pode ser
necessrio modificar a opo "Customize max. frame size", na janela de configurao "Add Remote
Settings" (ver figura 7).
No reset de variveis, os valores vlidos so os seguintes: 0 = os valores dos dados sobre recepo e
transmisso no so alterados; 1 = os valores dos dados sobre recepo e transmisso so zerados.

ALTUS TCP/IP driver 9
Endereamento de tags atravs do Elipse Drivers OPC
Caso este driver esteja sendo utilizado em conjunto com o Elipse Drivers OPC, utilize a seguinte tabela para
acesso s memrias do CP:
Tabela 4 Mnemnicos para uso do cliente OPC
Mnemnico Descrio Read/Write
<con:>AxAuxiliar
R/W
<con:>Ax.bBit de auxiliar
R/W
<con:>Ax_nBloco de auxiliares
R/W
<con:>DxDecimal
R/W
<con:>Dx.bBit de decimal
R/W
<con:>Dx_nBloco de decimais
R/W
<con:>ExEntrada
R
<con:>Ex.bBit de entrada
R
<con:>Ex_nBloco de entradas
R
<con:>FxReal (float)
R/W
<con:>Fx_nBloco de reais (float)
R/W
<con:>IxInteiro 32 bits
R/W
<con:>Ix.bBit de inteiro 32 bits
R/W
<con:>Ix_nBloco de inteiros 32 bits
R/W
<con:>MxMemria
R/W
<con:>Mx.bBit de memria
R/W
<con:>Mx_nBloco de memrias
R/W
<con:>SxSada
W
<con:>Sx.bBit de sada
W
<con:>Sx_nBloco de sadas
W
IPplc:TDUMx.y_nTabela de decimais de mensagem no-solicitada
R
<con:>TDx.yPosio de tabela de decimais
R/W
<con:>TDx.y_nTabela de decimais
R/W
IPplc:TFUMx.y_nTabela de reais de mensagem no-solicitada
R
<con:>TFx.yPosio de tabela de reais (float)
R/W
<con:>TFx.y_nTabela de reais (float)
R/W
<con:>TIx.yPosio de tabela de inteiros 32 bits
R/W
<con:>TIx.y_nTabela de inteiros 32 bits
R/W
IPplc:TMUMx.y_nTabela de memrias de mensagem no-solicitada
R
<con:>TMx.yPosio de tabela de memrias
R/W
<con:>TMx.y_nTabela de memrias
R/W
<con:>BSx_nStatus do barramento de E/S
R
<con:>CSxStatus da comunicao
R
<con:>ESStatus do equipamento
R

Onde:
Os caracteres em negrito representam mnemnicos fixos, que identificam os comandos, enquanto os
caracteres que no esto em negrito representam valores, e devem ser substitudos pelos mesmos.
<con:> um prefixo opcional que define o nmero da conexo na lista de CPs (grupo Connections na
janela da Figura 1), comeando em zero. Caso este prefixo no seja informado, o driver utilizar a conexo
de nmero 0. Veja os exemplos da Tabela 5 para maiores informaes.
plc: No caso de mensagens no-solicitadas, aps o mnemnico IP deve-se fornecer o nmero da
conexo, que corresponde ao valor IPPLC usado em tags tipo PLC e bloco, ou seja, coincide com o ltimo
nmero do endereo IP do PLC, apenas quando so utilizadas mensagens no-solicitadas (MNS). Assim,
para um PLC de endereo IP 195.4.32.29, o nmero do IPCPLC ser 29. x representa o endereo do
operando ou o nmero da tabela, dependendo do tipo solicitado. Para os tipos CSx e BSx, consulte a Tabela
3 e suas notas.
y representa a posio inicial na tabela.
n representa o nmero de items a ser lido.
ALTUS TCP/IP driver 10
b representa o nmero do bit, variando de 0 (bit menos significativo) ao mximo de 31 (bit mais
significativo, porm o nmero mximo dependente do nmero de bits presentes no tipo do dado).
A seguir, podemos ver alguns exemplos de uso dos mnemnicos:

Mnemnico Descrio
A20 Auxiliar 20 (conexo 0)
1:M2400 Memria 2400 (conexo 1)
D10_4 Bloco de decimais 10 com 4 elementos (conexo 0)
E5.2 Bit 2 da entrada 5 (conexo 0)
TM17.0_20 21 posies da tabela 17 de memria a partir da posio 0 (conexo 0)
IP29:TFUM3.1_30 30 posies da tabela 3 de reais de mensagem no-solicitada a partir da posio 1 do CP com
endereo de IP final 29.
1:M2400 Memria 2400 (conexo 1)

Leitura de Eventos (SOE)
Este driver segue a nota de aplicao NAE-040 da ALTUS (seo 2.3.2) no que se refere ao tratamento de
eventos. Para isso necessrio:
1. Criar um tag captura eventos (N2 = 13, ver tabela 1), com ciclo de varredura recomendado em
1000ms. O parmetro N3 define qual tabela de memria de 63 posies possui os eventos (O ladder
deve gravar os eventos nesta tabela). No parmetro N4 especificado qual o nmero do auxiliar e o bit
que resetado aps a leitura dos eventos (igualmente o ladder deve setar este bit de auxiliar para 1
quando houver eventos). importante a configurao correta dos parmetros N3 e N4 para um correto
funcionamento da captura dos eventos. A utilizao deste tag obrigatrio para leitura de eventos.
O valor do tag captura eventos ir mostrar quantos eventos foram encontrados na tabela de memria
na ltima leitura. Nos logs podero ser vistos erros da seguinte forma (exemplos):
a. ERROR: Cannot read event table TM2: isto significa que est falhando a leitura da
tabela de memria 2. Verifique se o tamanho da tabela est correta ou configure novamente o
parmetro N3 do tag captura eventos;
b. ERROR: Invalid Apontador (value=80): na nota NAE-040 especifica que o Apontador
pode ir at o valor 60 (13 eventos), portanto considera-se o valor maior do que 60 um erro e os
eventos no so lidos da tabela. Verifique se a tabela correta e se os dados que esto sendo
copiados para ela pelo ladder so vlidos;
c. ERROR: Cannot reset A0.7: Este erro informa que o driver no conseguiu resetar o
auxiliar 0 bit 7 aps a leitura da tabela de eventos. Confira se foi configurado corretamente o
parmetro N4. Exemplo: para um auxiliar 4, bit 3, o N4 igual a 43, isto , 4 * 10 + 3. Este
parmetro deve estar configurado de acordo com o Ladder do sequenciamento de eventos
(SOE).
2. Aps a criao e leitura do tag anterior o driver comear a guardar os eventos internamente. Para a
leitura desses eventos, necessrio criar um tag especificando o nmero da conexo (N1), o nmero
do mdulo ou placa (N3) e nmero do ponto (N4). Os valores vldos so:
a. 0 Estado 0 da entrada
b. 1 Estado 1 da entrada
Portanto necessrio criar um tag para cada bit de cada mdulo que se deseja ler os eventos. Cada
evento trar na propriedade timestamp a data/hora que o evento ocorreu no CP, portanto desejvel
que o CP esteja com a data/hora ajustada com a data/hora do computador.
ALTUS TCP/IP driver 11
Mensagens No-Solicitadas (MNS)
O uso das mensagens no-solicitadas permite melhorar significativamente a performance do aplicativo de
superviso, pois o mesmo no precisa ficar fazendo polling nas variveis do CP o tempo todo e mesmo quando
as mesmas no sofreram alterao. Ao contrrio, usando-se mensagens no-solicitadas, toda vez que uma
varivel sofre alterao, o prprio CP envia uma mensagem avisando o driver, que, por sua vez, far a
alterao em sua base de dados.
O aplicativo, por sua vez, deve configurar seus tags PLC e tags bloco de maneira muito semelhante quela
usada para tags normais (polling), mudando-se apenas o parmetro N1 ou B1 para 1000+IPPLC. Este nmero
indicar ao driver que os valores destes tags devero ser lidos no do CP, mas diretamente da base de dados do
driver, atualizada pelas MNS. Os tags do supervisrio, portanto, continuam funcionando por polling, s que a
leitura ser diretamente de uma memria imagem contida no driver, que no gerar comunicao com o CP.
Como esta operao extremamente rpida, sugerimos usar um perodo de scan muito pequeno, da ordem de
milissegundos, o que permitir uma atualizao imediata dos tags em caso de alterao do valor por mensagens
no-solicitadas.
Exemplo de tag PLC para mensagens no-solicitadas:
N1 = 1029 (leitura da memria imagem = 1000 + 29)
N2 = 0 (memria)
N3 = 1 (memria M1)
N4 = 0 (no usado neste caso)
Scan = 10 (10 milissegundos)
O nmero do CP usado neste caso coincide com o ltimo nmero do endereo IP do CP. Assim, para um CP de
endereo IP 195.4.32.29, o nmero do PLC ser 29 (N1 = 1029).

Tratamento de eventos CHESF PA
Para que se possa usar os tags de leitura de eventos e operandos do sistema CHESF, preciso primeiramente
definir nas opes de configuraes Extras do driver o caminho dos trs arquivos de configurao do sistema,
clicando-se no boto "Directories Settings...".
Alm disto, preciso criar uma conexo para cada CP presente no sistema. Para se definir uma conexo como
pertencente ao sistema CHESF, deve-se habilitar o checkbox "Use CHESF Config", na janela "Add Remote
Settings", e entrar com o nome do CP, conforme aparece nas tabelas de configurao, ao qual a conexo ir se
referir. Desta forma, pode-se definir a que CP os tags do sistema CHESF se referem atravs da conexo
referenciada nos parmetros n1 ou b1.
O checkbox "Discard remaining events", da janela "Add Remote Settings", se habilitado, faz com que o driver
despreze, na primeira leitura da fila de eventos aps sua inicializao, todos os eventos pr-existentes na fila de
eventos, lendo apenas novos eventos. Se este checkbox ficar desabilitado, o driver tentar carregar os valores
dos ponteiros de leitura lidos por ltimo, na ltima vez que o driver foi rodado, do arquivo INI definido na
caixa de dilogo "Directory Settings", se o mesmo existir.
Para a realizao dos scans configurados nas tabelas CHESF, um tag especfico deve ser chamado
periodicamente, no caso o tag n1 = 21. O scan do mesmo pode ser bem pequeno, algo como 100ms por
exemplo, pois a leitura do mesmo s ir realizar algo nos perodos programados nas tabelas de configurao.
Os novos tags permitem ler e escrever em operandos com polling habilitado (n2 = 18 e b2>=7000) e ler
operandos obtidos por eventos (n2 = 19). O tag bloco de polling (b2>=7000) deve ter exatamente o tamanho
relativo ao nmero de operandos do grupo acessado, mais elementos extras no caso de variaes com
qualidade especfica. No caso de variaes com qualidade especfica, o tamanho do tag bloco deve ser o dobro
do nmero de operandos, onde os elementos finais contero as respectivas qualidades dos operandos lidos. Ou
seja, no caso de se desejar ler um grupo do tipo AI, com 4 operandos, iniciando no endereo AI100, e qualidade
especfica, o tag bloco deve ser configurado como b1=conexo, b2=7001, b3=100, e o tamanho do bloco
dever ser de 8 elementos, onde os 4 primeiros traro os valores, e os 4 ltimos suas respectivas qualidades. J
se a variao do grupo acessado for de qualidade comum, a qualidade vir na propriedade QUALITY do bloco,
ALTUS TCP/IP driver 12
no ocupando nenhum elemento do mesmo, e neste caso, assim como no de variaes sem qualidade, o
tamanho deve ser igual ao nmero de operandos.
A leitura de eventos, atravs do tag n2=19, retorna uma lista de eventos sempre que existirem eventos
disponveis para a leitura. Caso contrrio, o valor do tag no ser alterado, e nenhum evento ser gerado. A
leitura das listas de eventos deve ser realizada atravs do evento OnRead do tag. Por exemplo, se uma
determinada leitura de tag retornar 10 eventos CHESF, sero gerados em sequncia por esta nica leitura 10
eventos OnRead neste tag, onde cada um conter o valor de um determinado evento. A maneira mais usual de
se utilizar este recurso usando o evento OnRead para dar um comando WriteRecord, ou equivalente, em um
histrico previamente associado aos valores e ao timestamp do tag, e com isto se garante o armazenamento de
todos os eventos lidos.
Threads de read-ahead
Para habilitar o read-ahead basta colocar em P4 o nmero de threads que o driver deve criar para cada CP
(alm do thread principal de comunicao). Desta forma, se P4=5, o driver vai criar 6 conexes com o CP (1
thread principal e mais 5 threads de read-ahead). Deixando P4=0 o driver fica s com um thread (o thread
principal), que a modo normal de funcionamento do driver.
NOTA: muito importante dimensionar o parmetro P4 corretamente O nmero de conexes no pode ser
maior do que a capacidade do CP em tratar mltiplas requisies. recomendado que P4 fique em 3 ou 4 no
mximo (verses mais novas do firmware do PLC podem suportar at 9).
Otimizaes de leitura
Este driver suporta agrupamento automtico de tags em blocos, quando suportado pelo software* que usa o
driver, o que permite grandes ganhos de performance de monitoramento em aplicativos que no definem por si
os tags em blocos. O agrupamento feito automaticamente pelo software na medida que os tags entram em
varredura, permitindo minimizar as requisies de leitura do CP.
NOTA: Atualmente essa otimizao est disponvel somente no Elipse Drivers OPC verso 1.1 ou superior.
Quando o driver for utilizado com um software compatvel com essa otimizao, no h necessidade do
usurio criar as tags em blocos, bastando apenas tomar cuidado para definir as tags em endereos consecutivos
no CP. O critrio para justificar a criao de tags em blocos, passa a ser neste caso apenas a necessidade da
escrita simultnea em vrios endereos. Sendo inclusive recomendada a criao de tags PLC caso no sejam
realmente necessrias escritas em blocos.
Driver Hot-Standby
A lgica de redundncia Hot-Standby implementada neste driver segue as especificaes do fabricante.
Considera-se que exista um CLP principal e um reserva para cada conexo definida na janela de configuraes
Extras do driver, cada um com um endereo IP especfico. Em um dado momento, haver sempre um CLP
ativo e outro inativo. Em condies normais, o driver estar normalmente conectado e comunicando-se com o
CLP ativo, ao mesmo tempo em que monitora, a intervalos regulares, o operando de monitorao do mesmo. O
intervalo de tempo entre leituras do operando de monitorao chamado o perodo de teste (Test period).
O operando de monitorao usado para indicar se o CLP est ativo ou inativo. Este ter o valor 1 se o CLP
estiver ativo, e zero caso contrrio.
De acordo com esta lgica, se o operando de monitorao for de 1 para 0, indicando a passagem do CLP para a
condio de inativo, o driver deve se desconectar o IP antes ativo e conectar-se ao IP alternativo, realizando
ento a leitura do operando de monitorao neste novo IP. Se o mesmo estiver em 1, o CLP alternativo estar
em modo ativo, e a comunicao pode prosseguir com o novo CLP. J se o operando de monitorao estiver
tambm em zero no novo IP, o driver mais uma vez se desconectar e voltar a tentar o IP anterior. Esse
processo continuar at que o driver tenha sucesso em se conectar com algum CLP que retorne 1 na leitura do
operando de monitorao.
ALTUS TCP/IP driver 13
A opo "Automatically activate backup PLC in case of disconnection", na janela de configurao da conexo,
permite ao driver forar a ativao do CLP inativo, caso seja perdida a conexo com o CLP ativo. Se esta opo
estiver habilitada, ao perder a conexo com o CLP ativo, o driver tentar se conectar ao CLP inativo. Aps a
conexo, ser efetuada a leitura do operando de monitorao do mesmo. Se este operando retornar zero,
indicando que este CLP continua no estado inativo, o driver escrever um valor pr-configurado (Activation
value) em um operando tambm previamente configurado (Set state operand). Se o software residente no CLP
estiver preparado para interpretar este valor neste operando como um comando de ativao, o CLP passar
para a condio de ativo, mudando o valor do seu operando de monitorao para 1. Este recurso, no entanto,
no padronizado, e depende da implementao do software residente no CLP para funcionar corretamente.
Dicas de performance
Existem algumas configuraes a serem feitas no conjunto Driver-Equipamento que podem gerar um ganho de
performance. Dentre estas citamos os seguintes:
Comeando com o equipamento que precisa de uma alterao na sua configurao de retentativas na Camada
TCP/IP. Nas configuraes de fbrica, o nmero de retentativas nesta camada igual a 5, sendo que cada
retentativa possui um time-out que comea em 200ms e a cada nova tentativa este valor de time out dobrado.
Pela prtica, foi concludo que o nmero de retentativas timo seria igual a 3, resultando em um time-out total
de 3 segundos. Se at este tempo, somado ao tempo de resposta do prprio do CP, no for recebida nenhuma
resposta, significa que a requisio no chegou at o CP, ou que este no pode responder por algum motivo
qualquer. Com isto, o time-out configurado no driver deve ser maior que este valor.
Ainda no equipamento, durante o desenvolvimento da programao Ladder, interessante utilizar o operando
chamado LAI, que basicamente faz com que o equipamento tenha um tempo extra para responder as
requisies do driver, fazendo com que o CP responda mais de uma requisio entre seus ciclos de programa.
O nmero de operandos mximo que deve ser adicionado igual a 7, isto dependendo do tempo de ciclo da
programao do CP. (Maiores informaes sobre estas configuraes podem ser obtidas no documento
Caractersticas Tcnicas do mdulo AL3412 no site da ALTUS www.altus.com.br)
J no driver Altus TCP/IP, devemos fazer a configurao das threads de comunicao - quantas conexes do
driver sero abertas para comunicao simultnea - sendo que o valor normalmente utilizado est em torno de
3 a 4. O uso de um valor maior que este no garante uma maior performance na comunicao, em testes
realizados encontrou-se este padro como ideal, sendo que um valor maior pode resultar numa perda de
performance.
O time-out do driver deve ser configurado para um valor maior que o tempo mximo de resposta do CP para
a configurao informada acima, este tempo esta em 3 segundos de timeout da camada TCP/IP somado com o
tempo de resposta do equipamento - um valor indicado atravs de testes seria 4 segundos.
Histrico de revises do driver
Verso Data Autor Comentrios
1.14 A. Quites
C. Fehlauer

v1.13 2006.01.26 A.Corra
A.Quites
- Implementado compartilhamento para mensagens no-solicitadas
(Case 6126)
- Implementado a leitura de eventos (Case 6143)
- Arrumado problema na leitura de operandos com N4 diferente de zero
(Case 6127)
- Arrumado problema de comunicao com CPs Altus antigos (Case
6613)
ALTUS TCP/IP driver 14
Verso Data Autor Comentrios
v1.12 2005.07.05 A. Quites
- Implementada lgica completa de redundncia, ou driver Hot-standby
(Case 4344).
- Melhorada rotina de importao de configuraes de verses antigas,
que agora contemplam todas as verses anteriores do driver (Case 5477).
- Criadas opes de configurao para o processo de reconexo
automtica do driver (Case 5759).
- Melhorado desempenho da escrita de bits para operandos auxiliar,
octeto e memria, que antes usavam mascaramento, usando o recurso de
subdiviso do protocolo (Case 5833)
- Substituio do comando 129 (fora operando simples) pelo comando
133 (escreve operando simples) na escrita de operandos simples,
conforme orientao da Altus (Case 5832)
v1.11 11.04.2005 L. Silva
- Adicionado suporte a otimizao de leituras (agrupamento automtico
de tags em blocos - Case 5521);
- Adicionado suporte a leituras sncronas reais mesmo quando usando
threads de read-ahead (Case 4977).
v1.10 31.03.2005 A. Quites
- Corrigida a importao das configuraes extras de verses anteriores
do driver (case 5477). A importao continuar no funcionando para
drivers publicados antes de junho de 2002.
v1.09 07.03.2005 L. Silva
- Melhorada lgica de read-head para tags com scan alto - i.e. maior que
~10s (Case 4969);
- Corrigida a lgica da troca de IP (manual ou automtica) quando so
usados os canais de read-head (Case 5089);
- Criada opo para desabilitar a troca de IP automtica quando usada
redundncia de CPs (Case 5089).
v1.08B 08.11.2004 A. Correa
- Pequenas modificaes apenas no documento, sem alterao no driver.
v1.08A 08.11.2004 A. Quites
- Adicionada opo que desabilita a converso para ALNET-II, tornando
esse driver um driver ALNET I comum, e desabilitando-se ento o
recurso de mensagens no-solicitadas. (Case 3190)
- O driver agora no retorna mais erro no StartCom caso ocorra erro na
abertura do arquivo de log (Case 3323)
- Adicionado as leituras de bloco para os seguintes operandos:
Auxiliares, Decimais, Entradas, Sadas. (Cases 4455, 3932)
- Implementado operando I (inteiro). (Case 4456)
- Adicionado suporte ao Elipse Drivers OPC.(Case 4457)
- Retirado Log Date & Time.
- Adicionado nmero da conexo na janela de edio. (Case 4458)
- O driver agora permite escrever blocos de operandos de qualquer
tamanho, mesmo maiores que o tamanho mximo permitido pelo
protocolo, situao em que ele mesmo quebrar a escrita em mais de um
bloco (Case 4754)
- A escrita de blocos de mais de 64 operandos tabela agora est
funcionando, devido a uma alterao no cdigo conversor AlnetI/AlnetII
da Altus, que antes no estava convertendo para a instruo AlnetII mais
adequada (Case 4751)
- Implementada redundncia de conexes (Case 4344)
v1.07 09.01.2004 F. Englert
- Corrigido problema da verso anterior (ocorria um GPF na segunda vez
que rodava o aplicativo se as MNS estivessem habilitadas) (Case 3193)
- O padro do driver agora no gerar log (antes era Create New)
(Case 3193)
v1.05 31.10.2003 F. Englert
- Habilitado o suporte a mensagens no-solicitadas (MNS). (Case 2805)
- Resolvido problema na cache de pr-leitura, o driver no descartava
valores antigos de um bloco se algum elemento era escrito. (Case 2838)
v1.04 29.09.2003 F. Englert
- Melhorado o log de mensagens NACK recebidas pelo protocolo.
v1.03 26.09.2003 F. Englert
- O driver agora converte strings para nmeros nas escritas. Ao escrever
1234 o valor 1234 enviado. Se o string tiver algum caractere no
numrico ou for um nmero mal formatado a escrita vai retornar erro.
v1.02 05.09.2003 F. Englert
- Criada inteligncia para minimizar descarte de dados read-ahead, um
tag s lido quando falta menos que 8 segundos para o prximo scan.
v1.01 02.09.2003 F. Englert
- Criados threads de read-ahead e retentativas de leitura e escrita.
v1.00 R. Haetinger
- Todas as publicaes anteriores ao controle de revises.

Você também pode gostar