Escolar Documentos
Profissional Documentos
Cultura Documentos
Arquivo de Mensagens
A instrução MSG incorporada no controlador usa um arquivo de dados MG para processar a instrução de
mensagem. O arquivo de dados MG, mostrado à esquerda, é acessado usando o prefixo MG. Cada instrução de
mensagem utiliza um elemento dentro do arquivo de dados MG. Por exemplo, MG11:0 é o primeiro elemento no
arquivo de dados da mensagem 11.
Sub-elementos do Arquivo de Mensagem
Cada instrução MSG deve usar um único Elemento em um Arquivo MSG. O elemento MSG para cada instrução
MSG possui todas as informações dos parâmetros e de status para aquela instrução MSG específica.
Cada Elemento do Arquivo MSG consiste dos Sub-elementos de 0 a 24, conforme apresentado na tabela a
seguir.
(1) O acesso do usuário refere-se ao acesso pelo programa do usuário (palavra ou bit do Arquivo MSG usado como um operando para uma
instrução em um programa ladder) ou acesso via Comunicação enquanto estiver em um modo diferente da descarga (via Software de
Programação ou Módulo de Memória).
Mensagens Locais
O controlador é capaz de se comunicar usando mensagens locais ou remotas. Com uma mensagem local, todos
os dispositivos podem ser acessados sem que seja necessário utilizar um outro dispositivo como ponte. Tipos
diferentes de interfaces elétricas podem ser necessárias para a conexão na rede, mesmo assim, a rede é
classificada como local. Mensagens remotas utilizam uma rede remota, onde os dispositivos podem ser
acessados somente passando por um dispositivo para outra rede.
Rede Local
A Tela de Configuração de Mensagens do RSLogix é mostrada abaixo. Esta tela é usada para ajustar os
elementos “This Controller” (Este Controlador), “Target Device” (Dispositivo Destino) e “Control Bits” (Bits de
Controle). As descrições de cada um dos elementos é apresentada a seguir.
Parâmetros “This Controller” ou Esse Controlador
Communication Command (Comando de Comunicação)
O controlador suporta seis tipos diferentes de comandos de comunicação. Se o dispositivo alvo suportar qualquer
destes tipos de comando, o controlador deve ser capaz de trocar dados com o dispositivo. Os comandos com
suporte incluem:
(1) O Arquivo de Interface Comum (CIF) nos controladores MicroLogix 1200, 1500 e SLC 500 é o
Arquivo 9. O CIF no controlador MicroLogix 1000 é o Arquivo 7 Inteiro.
Selecione o comando de comunicação 500CPU Read de forma que toda vez que a instrução for executada será
realizada a leitura de dados da CPU Destino, ou seja, os valores da CPU destino serão atualizados na CPU de
origem.
(1) 500CPU escrita RTC-para -Inteiro ou somente de RTC-para-RTC. Aplica-se somente para os controladores
MicroLogix 1200 Série B e superior e 1500 Série B e superior.
O offset da tabela de dados é usado para as mensagens tipo 485CIF. Um offset válido é qualquer valor na faixa
de 0 a 255 e indica a palavra ou offset de byte no Arquivo de Interface Comum (CIF) do alvo. O tipo de
dispositivo determina se é uma palavra ou um offset de byte. Os controladores MicroLogix e SLC usam offset de
palavra; o CLP-5 usa offset de byte.
Nessa prática será feita a leitura a partir do endereço N7:0 do controlador de destino. Dessa forma o conteúdo
dos endereços de N7:0 à N7:4 do controlador de destino serão transferidos para os endereços de N20:0 a N20:4
do controlador de origem.
Local Node Addr (Endereço de Nó Local)
Este é o número do nó do dispositivo destino. O número de nó do dispositivo é configurado no campo Source ID
na janela Channel 0 na opção Channel Configuration dentro da pasta Controller no gerenciador de projetos do
controlador de destino.
Verifique qual é o endereço de nó do controlador de destino e configure corretamente esse campo. Observe que
os endereços do controlador de origem e destino têm de ser obrigatoriamente diferentes ou não haverá sucesso
na comunicação. Assim, caso seja necessário faça os ajuste necessários para que os endereços dos
controladores envolvidos na comunicação sejam diferentes.
Local/Remota
Esta variável define o tipo de comunicação que está sendo usado. Se os dispositivos estiverem numa mesma
rede a comunicação é local e se tiverem em redes distintas interconectadas via gateway a comunicação será
remota sendo necessário informar o endereço do dispositivo de interconexão das redes.
Use local para comunicação realizada nessa prática já que os dois controladores estão ligados diretamente em
uma comunicação ponto a ponto.
O Bit Timed Out (TO) pode ser energizado em sua aplicação para remover uma instrução de mensagem ativa do
controle do controlador. É possível criar a sua própria rotina de timeout, monitorando os bits EW e ST para iniciar
um temporizado. Quando o temporizado expira, você pode energizar o bit TO, que remove a mensagem do
sistema. O controlador reseta o bit TO na próxima vez que a linha MSG associada passar de falsa para
verdadeira.
Uma maneira mais rápida é usar a variável de timeout de mensagem, descrita na página 21-12, pois ela
simplifica o programa do usuário. Este controle de timeout incorporado tem efeito sempre que o timeout da
mensagem for diferente de zero. O valor de preset é de 5 segundos, de forma que se o mesmo não for alterado,
o controle interno de timeout é habilitado automaticamente.
Quando o timeout interno for utilizado e a comunicação for interrompida, a instrução MSG será interrompida e
apresentará erro depois que o preset de tempo selecionado terminar. Isso permite que o programa de controle
faça uma nova tentativa de envio da mesma mensagem ou tome outra medida, se necessário.
Para desabilitar o controle de timeout interno, insira zero no parâmetro de timeout da instrução MSG. Se a
comunicação for interrompida, o controlador espera indefinidamente por uma réplica. Se um reconhecimento
(ACK) for recebido, indicado pela energização do bit ST, mas a réplica não for recebida, a instrução MSG
aparece para ser bloqueada, apesar de esperar uma réplica do dispositivo alvo.
O Bit Habilitado (EN) é energizado quando a condição lógica da linha torna-se verdadeira e a MSG é habilitada.
A instrução MSG está habilitada quando o pacote de comando é desenvolvido e colocado em um dos buffers
MSG ou o pedido é colocado na fila MSG. A instrução permanece habilitada até que a transmissão da
mensagem é concluída e a linha passa para falsa. É possível desenergizar esse bit se o bit ER ou DN estiver
energizado para disparar a instrução MSG novamente com a linha no estado verdadeiro na próxima varredura.
Não energize esse bit a partir do programa de controle.
O Bit Habilitado e em Espera (EW) é energizado depois que o bit habilitado for energizado e a mensagem estiver
no buffer (não na fila) e esperando para ser enviada. O bit EW é removido após a mensagem ser enviada e o
controlador receber o reconhecimento (ACK) do dispositivo destino. Isso ocorre antes do dispositivo destino ter
processado a mensagem e enviado uma resposta.
O Bit de Erro (ER) é energizado quando a transmissão da mensagem falhar. Um código de erro é escrito no
arquivo MSG. O bit ER e o código de erro são removidos da próxima vez em que a linha associada for de falsa
para verdadeira.
O Bit Executado (DN) é energizado quando a mensagem for transmitida com sucesso. O bit DN é removido na
próxima vez que a linha associada passar de falsa para verdadeira.
O Bit de Partida (ST) é energizado quando o controlador recebe o reconhecimento (ACK) do dispositivo alvo. O
bit ST é removido quando o bit DN, ER ou TO for energizado.
Troca de Dados
Teste o funcionamento da instrução de envio de mensagem com o colega ao seu lado na mesma bancada. Para
isso faça o ajuste dos endereços de nó como explicado anteriormente e interligue os controlados via porta serial
com o cabo de comunicação 1761-CBL-HM02.
A instrução de Mensagem para a troca de dados entre os controladores só é disparada a cada transição de falso
para verdadeiro da linha de programa. Assim, só haverá uma nova atualização dos dados após uma nova
transição de falso para verdadeiro.
Caso a linha de programa fique permanentemente em estado lógico verdadeiro não ocorrerá a atualização dos
valores, ficando os mesmos congelados no mesmo estado de quando ocorreu a última transição de falso para
verdadeiro.
Toda vez que desejar atualizar os dados entre os endereços envolvidos na comunicação atribua ao endereço
I1:0/10 o valor 0 e em seguida o valor 1, provocando uma execução da instrução de mensagem.
Peça ao seu colega que insira dados nos endereços de N7:0 a N7:4 do controlador dele e observe a leitura
desses valores em seu controlador nos endereços de N20:0 a N20:4, toda vez que a instrução é executada.
Mensagens Remotas
O controlador também é capaz de enviar mensagens remotas ou off-link. O envio de mensagens remotas é a
capacidade de trocar informações com um dispositivo que não está conectado a uma rede local. Este tipo de
conexão requer um dispositivo na rede local agindo como uma ponte ou gateway para outra rede.
Redes Remotas
A ilustração abaixo mostra uma rede DeviceNet usando Interfaces DeviceNet (1761-NET-DNI) conectadas a uma
rede Ethernet usando um SLC 5/05. Nesta configuração, os controladores na rede DeviceNet podem replicar os
pedidos dos dispositivos na rede Ethernet, mas não podem iniciar a comunicação para os dispositivos na
Ethernet.
1. Se houver espaço em qualquer dos quatro buffers de mensagem ativos quando a linha MSG se torna
verdadeira e a MSG é varrida, os bits EN e EW para essa mensagem são energizados. Se esta for uma instrução
de escrita MSG, os dados de fonte são transferidos para o buffer de mensagem neste momento.
(Não mostrado no diagrama.) Se os quatro buffers estiverem em uso, o pedido de mensagem é colocado na fila e
apenas o bit EN é energizado. A fila de mensagem trabalha em uma base FIFO, que permite que o controlador
lembre a ordem na qual as instruções de mensagem foram habilitadas. Quando um buffer se torna disponível, a
primeira mensagem na fila é colocada no buffer e o bit EW é energizado (1).
O programa de controle não tem acesso aos buffers de mensagem ou à fila de comunicação.
Uma vez que o bit EN está energizado (1), ele permanece assim até que o processo completo de mensagem
esteja concluído e o bit DN, ER ou TO seja energizado (1). O período de Timeout da MSG começa a
temporização quando o bit En é energizado (1). Se o período de timeout expirar antes que a instrução MSG
complete sua função, o bit ER é energizado (1) e um código de erro (37H) é colocado no arquivo MG para
informar sobre o erro de timeout.
2. No final da próxima varredura, instrução REF ou SVC, o controlador determina se deve examinar a fila de
comunicação para outra instrução. O controlador baseia sua decisão no estado dos bits de Seleção do Serviço
de Comunicação do Canal (CSS) e Seleção de Serviço de Mensagens (MSS), nos pedidos de comunicação da
rede de outros nós e se instruções de mensagens anteriores já estão em andamento. Se o controlador
determinar que ele não deve acessar a fila, a instrução de mensagem permanece como estava. Os bits EN e EW
permanecem energizados (1) ou somente o bit EN é energizado (1) até o próximo final de varredura, instrução
REF ou SVC.
Se o controlador determinar que existe uma instrução na fila, ele descarrega as entradas da fila de comunicação
nos buffers de mensagem até que todos os quatro buffers de mensagem estejam cheios. Se uma mensagem
inválida for descarregada da fila de comunicação, o bit ER é energizado (1) e um código é colocado no arquivo
MG para informá-lo de um erro. Quando uma instrução de mensagem válida é carregada para dentro de um
buffer de mensagem, os bits EN e EW para essa mensagem são energizados (1).
O controlador sai do final da varredura, REF ou parte do SVC da varredura. A função de comunicação de fundo
do controlador envia as mensagens para os nós alvos especificados na instrução de mensagem. Dependendo do
estado dos bits CSS e MSS, você pode ter até quatro instruções de mensagem ativas por canal para qualquer
tempo dado.
3. Se o nó alvo receber a mensagem com sucesso, o mesmo envia uma confirmação (ACK). O ACK faz com que
o controlador desenergize (0) o bit EW e energize (1) o bit ST. O nó alvo ainda não verificou o pacote para ver se
entendeu o seu pedido.
Uma vez que o bit ST estiver energizado, o controlador espera por uma réplica do nó alvo. O nó alvo não é
requisitado para responder dentro de um determinado período de execução.
Se o nó de destino apresentar falha ou se a alimentação for desligada ou ligada durante a transação da
mensagem, você nunca receberá uma resposta. Esta é a razão pela qual você deve usar um valor de Timeout de
Mensagem na sua instrução MSG.
4. A etapa 4 não é mostrada no diagrama de temporização. Se você não receber uma confirmação ACK, a etapa
3 não se concretizará. Ao contrário, ou nenhuma resposta ou um reconhecimento negativo (NAK) é recebido.
Quando isto acontece, o bit ST continua desernergizado (0).
Ausência de resposta pode ser causada por:
-O nó alvo não está presente
-A mensagem foi corrompida na transmissão
-A resposta foi corrompida na transmissão da resposta
Uma confirmação NAK pode ser causada por:
-O nó alvo está ocupado
-O nó alvo recebeu uma mensagem corrompida
-A mensagem é muito grande
Quando um NAK ocorre, o bit EW é desernergizado (0) e o bit ER é energizado (1), indicando que a instrução de
mensagem falhou.
5. Após o recebimento com sucesso do pacote, o nó alvo envia um pacote com resposta. O pacote com resposta
contém uma das seguintes respostas:
-Pedido de escrita bem-sucedido
-Pedido de leitura com dados bem-sucedido
-Falha com código de erro
No final da varredura, instrução REF ou SVC, seguindo a réplica do nó alvo, o controlador examina a mensagem
a partir do dispositivo alvo. Se a réplica for bem-sucedida, o bit DN é energizado (1) e o bit ST é desernergizado
(0). Se for um pedido de leitura bem-sucedido, os dados são escritos na tabela de dados. A função de instrução
de mensagens está completa.
Se a réplica for uma falha com um código de erro, o bit ER é energizado (1) e o bit ST é desernergizado (0). A
função de instrução de mensagens está completa.
6. Se o bit DN ou ER estiver energizado (1) e a linha MSG for falsa, o bit EN é zerado na próxima vez que a
instrução de mensagem for varrida.
Atividades práticas
Aos pares, em uma mesma bancada, utilizando comunicação RS-232 com protocolo DF1 Full-Duplex
implementar um programa ladder de forma que os canais de 0 a 4 das entradas digitais da base de um
MicroLogix 1500 comandem os canais de 8 a 12 das saídas digitais da base do outro MicroLogix 1500. O tempo
de atualização dos I/Os deve ser de 50ms para esse caso como para os demais a abaixo.
Acrescentar ao programa acima a lógica ladder necessária para que o canal 0 da saída analógica de um
MicroLogix 1500 seja inversamente proporcional ao canal 3 da entrada analógica do outro MicroLogix.