Você está na página 1de 10

PROFIBUS

Descrição Técnica

Publicado por:

PROFIBUS Nutzerorganisation e.V.


Haid-und-Neu-Str. 7
D-76131 Karlsruhe
Phone: ++721/96 58 590
Fax: ++721/96 58 589

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 1 Descrição Técnica e Diagnóstico
Descrição dos blocos de funções de diagnóstico DP para SIMATIC S7

Dois diferentes blocos de funções estão disponíveis para o programa do usuário para avaliação de
diagnósticos de uma configuração distribuída com PROFIBUS DP e SIMATIC S7:

• O FB 99 é a escolha certa quando informações detalhadas são necessárias a respeito de


falhas ou falta em um nó do barramento, ou seja, falha na alimentação de carga, quebra de fio,
qual módulo de um escravo modular falhou, etc.

• O FC 99 é uma versão simplificada é somente avalia a informação “qual nó do barramento está


em falha ou está com defeito“. Informações detalhadas não podem ser mostradas com este
bloco de funções.

1. Bloco de função de diagnóstico FB 99

O bloco de função de diagnóstico DP FB 99 fornece avaliações detalhadas de um sistema mestre


DP. O bloco determina o escravo DP em falha bem como aqueles que tenham falhado gerando
uma interrupção incluíndo a causa da falha. Todas as interrupções são atrasadas durante o
processamento do FB.
As CPUs S7 com interface DP integradas (CPU 31x-2DP e todas CPU 41x-2DP exceto CPU 417-
H) podem ser usadas como mestres DP. Adicionalmente, os CPs S7 (p.ex. CP443-5) e os IMs S7
(p.ex. IM467) os quais são manipulados pelo sistema como interfaces DP as quais estão
integradas na CPU também podem ser usadas. Por esta razão, o CP342-5 não é suportado pelo
FB 99.

1.1 Informação de diagnóstico

Se um escravo está com falha, a causa do problema é encontrada pela avaliação da mensagem
de diagnóstico do escravo. Em um escravo modular (tais como um ET200M ou ET200S), diversos
módulos ou cartões podem estar em falha simultaneamente.

A mensagem de diagnóstico para um escravo pode consistir de diferentes blocos de diagnóstico,


alguns dos quais fornecendo informações redundantes:

• Diagnóstico de Módulo: Qual módulo do escravo sinalizou diagnóstico? Diagnósticos de


módulos fornecem informações de diagnóstico gerais relacionadas ao
slot. Alguns escravos fornecem somente diagnósticos do módulo.

Mais detalhes no ID de diagnósticos são fornecidos pelo estado do módulo a nível do slot e pelos
diagnósticos de canal no nível de canal.

• Diagnósticos de Canal: Qual canal com qual tipo de falha sinalizou diagnóstico em qual
módulo? O tipo de erro de canal é descrito em detalhes no respectivo
Manual do Produto para os escravos ou módulos S7.

• Estados dos Módulos: Qual módulo tem qual estado?

• Diagnóstico do Equipamento: Dados de diagnóstico de equipamentos específicos definidos


pelo fabricante e descrito em detalhes no Manual do Produto
para o escravo.

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 2 Descrição Técnica e Diagnóstico
1.2 Chamando o bloco de função de diagnóstico DP FB 99 no programa do
usuário
O programa do usuário executa o bloco de função de diagnóstico DP FB 99 utilizando a seguinte
instrução:

CALL FB99, DBxy (xy pode ser qualquer bloco de dados instance)

Os parâmetros com os operandos formais são agora mostrados; os parâmetros atuais devem agora
serem inseridos aqui. Nota: Na chamada do FB não é necessário que todos os parâmetros atuais
sejam atribuídos aos operandos, uma vez que os operandos atuais são armazenados no DB
instance.

Esta chamada (incluíndo o mesmo número do bloco de dados instance e os mesmos parâmetros
atuais nesta aplicação) devem ser implementados nos blocos de organização OB1, OB82 e OB86.
Cuidado deve ser tomado que a seqüência e o conteúdo dos 20 bytes de dados locais temporários
dos blocos de organização não são modificados; eles podem de qualquer forma serem ampliados a
qualquer momento.

Simultaneamente, um máximo de 16 mensagens de diagnóstico podem ser avaliadas através do


OB82. Se mais do que 16 mensagens de diagnóstico forem recebidas ao mesmo tempo, o bit
DIAG_OVERFLOW é setado. Mais do que 16 mensagens não podem ser avaliadas. Neste caso,
nós recomendamos que você execute um RESET de forma que a função de avaliação seja
reinicializada.

Os seguintes SFCs, entre outros, são usados internamente para avaliação de diagnóstico no FB99:
SFC13 e SFC51 com SZL 0C91 (para interface DP interna na CPU mestre) ou SZL 4C91 (para
interface DP externa em CP / IM). Não é permitido chamar SFC13 e/ou SFC51 com SZL 0C91 /
4C91 no OB1 junto com a chamada do FB99 se um escravo estiver com defeito.

1.3 Parâmetros do bloco de funções de diagnóstico DP FB99 e seus significados

Parâmetros de entrada:

• DP MASTER SYSTEM (Int)


Aqui você deve inserir o número do sistema mestre DP como especificado na configuração do
STEP 7.

• EXTERNAL_DP_INTERFACE (Bool)
Este parâmetro especifica se a interface DP do mestre é uma interface integrada (mestre CPU)
ou se ela é uma interface DP externa (processador de comunicação CP / IM). Este parâmetro
somente é relevante para S7-400.

• SINGLE_STEP (Bool)
Passo seguinte para o próximo escravo DP defeituoso ou com falha.

• RESET (Bool)
Realiza o RESET. É aplicado após um estouro (overflow) das mensagens de diagnóstico
(DIAG_OVERFLOW).

Parâmetros de saída:
• ALL_DP_SLAVES_OK (Bool)
Mensagem comum indicando que o sistema de barramento DP está em estado saudável, isto é
todos os escravos estão OK.

• SUM_SLAVES_NOT_PRESENT (Byte)
Número total de escravos defeituosos. O número é determinado na primeira vez durante a
inicialização (start-up) ou nova partida (restart).

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 3 Descrição Técnica e Diagnóstico
• SUM_SLAVES_ERROR (Byte)
Número total de escravos DP defeituosos os quais estão todavia ainda trocando dados com o
mestre DP.

• SLAVE_NO (Byte)
Escravo DP, o qual tenha falhado ou esteja defeituoso. Escravos com falha têm a mais alta
prioridade. A segunda maior prioridade é atribuída ao escravo de número mais baixo (faixa
1...126).
No modo SINGLE_STEP, cada vez que você pressiona a tecla, o próximo escravo
falho/defeituoso é mostrado. Os escravos afetados são mostrados em ordem ascendente.

• SLAVE_NOT_PRESENT (Bool)
Informação para SLAVE_NR: O escravoDP que falhou.

• SLAVE_ERROR (Bool)
Informação para SLAVE_NO: O escravoDP que está defeituoso.

• SLOT_DIAG_PRESENT (Bool)
Informação no SLAVE_ADR: Diagnósticos do módulo ( = ID – diagnósticos relatados como
padrão DP) estão disponíveis quando o escravo está defeituoso.

• SLOT_NO (Byte)
Informação no SLAVE_ADR: Quando diagnósticos de módulos estão disponíveis, estes
parâmetros mostram o número do módulo(s) defeituoso(s) (=ID como padrão DP).

• FURTHER_SLOT_DIAG (Byte)
Informação no SLAVE_ADR: Diagnósticos adicionais de módulos estão disponíveis.

• MODULE_NO (Byte)
Informação para SLAVE_NO: Se um relatório de diagnóstico de módulo está disponível, o
número dos módulos defeituosos (=ID como padrão DP) é mostrado neste parâmetro.

• FURTHER_MODULE_DIAG (Bool)
Informação no SLAVE_ADR: Diagnósticos adicionais de módulos estão disponíveis.

• CHANNEL_DIAG_PRESENT (Bool)
Informação para SLAVE_NO: Se um escravo está defeituoso, este bit mostra se um relatório de
diagnóstico de canal (ID do canal e relatório de diagnóstico como padrão DP) está disponível.

• CHANNEL_MODULE_NO (Byte)
Informação para SLAVE_NO: Se um relatório de diagnóstico de canal está disponível, este
parâmetro mostra o número do módulo (ID como padrão DP) no qual o canal defeituoso esta
localizado.

• CHANNEL_NO (Bool)
Informação para SLAVE_NO: Número do canal defeituoso.

• CHANNEL_ERROR_TYPE (Byte)
Informação para SLAVE_NO: Tipo de falha do escravo defeituoso. O tipo de falha é interpretado
de acordo com uma lista de falhas.

• FURTHER_CHANNEL_DIAG (Bool)
Informação para SLAVE_NO: Um outro relatório de diagnóstico de canal está disponível.

• MODULE_STATE_PRESENT (Bool)
Informação no SLAVE_ADR: Um estado do módulo está disponível.

• MODULE_NO (Byte)
Informação no SLAVE_ADR: Número do módulo com estado (status).

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 4 Descrição Técnica e Diagnóstico
• MODULE_STATE (Byte)
Informação no SLAVE_ADR: Estado do módulo.

• FURTHER_MODULE_STATE (Bool)
Informação no SLAVE_ADR: Um estado adicional do módulo está disponível.

• DEVICE_DIAG_PRESENT (Bool)
Informação para SLAVE_NO: Um relatório de diagnóstico de equipamento está disponível
(diagnóstico específico de equipamento como padrão DP). Os dados específicos de
equipamento são definidos pelo fabricante do escravo.

• DATA_DAY (Byte)
Mostra o dia no qual o estado “falha“ ou “defeito“ do escravo ocorreu.

• DATE_MONTH (Byte)
Mostra o mês em que o estado “falha“ ou “defeito“ do escravo ocorreu (derivado da data na
CPU).

• CLOCK_HOUR (Byte)
Mostra a hora do dia em que o estado “falha“ ou “defeito“ do escravo ocorreu (derivado da data
na CPU).

• CLOCK_MINUTE (Byte)
Mostra o minuto da hora em que o estado “falha“ ou “defeito“ do escravo ocorreu (derivado do
horário-do-dia na CPU).

• CLOCK_SECOND (Byte)
Mostra o segundo do minuto em que o estado “falha“ ou “defeito“ do escravo ocorreu (derivado
do horário-do-dia na CPU).

• DIAG_OVERFLOW (Bool)
Número das simultaneamente recebidas mensagens de diagnóstico > 16. Isto define a
necessidade de execução de um RESET.

• BUSY (Bool)
Informação para SLAVE_NO: Se um escravo está defeituoso, este bit mostra se um relatório de
diagnóstico de canal (ID do canal e relatório de diagnóstico como padrão DP) está disponível.

• CHANNEL_MODULE_NO (Byte)
Este parâmetro mostra que avaliação do sistema DP pelo FB esta operando. Aguarda a
complementação da avaliação antes de processamentos adicionais das informações mostradas.
(BUSY 1  0).

1.4 Descrição do bloco de dados instance

O bloco de dados instance é atribuído ao FB de diagnóstico. O número do bloco de dados pode ser
livremente selecionado na instrução de chamada.
Não modifique o bloco de dados instance por instrução de escrita.

1.5 Exemplo de uma chamada do FB99

Na fase de inicialização (start-up) da CPU (primeiro ciclo do OB1) e em um RESET, uma rotina de
inicialização no bloco de funções reinicializa o sistema DP inteiro. Subsequentemente o
processamento dos diagnósticos é então acionado por interrupções, isto é quando diagnósticos ou
uma falha em uma estação é reportada, avaliações são executadas nos respectivos Obs de erros.
É desta forma desnecessário programar quaisquer chamadas condicionais para o bloco no
programa do usuário (ver figura 1).

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 5 Descrição Técnica e Diagnóstico
OB1 / OB82 / OB86

Figura 1: Exemplo de chamada do FB99 para uma interface DP integrada na CPU


Nota: nem todos os parâmetros do bloco precisam necessariamente ser atribuídos
com parâmetros atuais.

1.6 Dados técnicos do FB99

Tempo de execução sem mensagens de diagnóstico pendentes: < 1ms

Tempo de execução com uma mensagem de diagnóstico pendente: aprox. 7ms

Memória necessária na CPU: 3,9 Kbytes

1.7 Exemplo de uma avaliação de diagnóstico

O seguinte exemplo mostra uma típica avaliação de diagnóstico de um escravo DP usando o FB99.

Descrição do escravo:

Adicionalmente ao módulo encabeçador IM151, o escravo DP ET200S com endereço Profibus 25


consiste de quatro módulos plug-in:

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 6 Descrição Técnica e Diagnóstico
Figura 2: ET200S configuração exemplo

Módulo 4: Módulo de entrada digital


Módulo 5: Módulo de saída digital
Módulo 6: Módulo de entrada analógica, dois canais
Módulo 7: Módulo de saída analógica, dois canais

Falhas:

1) Módulo 4 é removido
2) Ocorre uma quebra-de-fio no canal 1 do módulo 6
3) Um curto-circuito ocorre no canal 0 do módulo 7

Nestes casos, existem três diferentes tipos de diagnósticos: diagnóstico de módulo, diagnóstico do
canal e estado do módulo. O FB99 pode avaliar e mostrar em detalhes a primeira falha de cada tipo
de diagnóstico. O bloco também mostra se mensagens adicionais de diagnóstico de um dado tipo
estão disponíveis.

Avaliação de diagnóstico:

Neste exemplo, é fácil ver que os diagnósticos de módulo somente fornecem informações de qual
slot está involvido. Diagnóstico de canal e estado de módulo fornecem detalhadas informações
sobre a falha e/ou erro.

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 7 Descrição Técnica e Diagnóstico
2. Bloco de Função de Diagnóstico FC99

O bloco de função de diagnóstico FC99 executa avaliação no sistema mestre DP.


O bloco de função executa verificações cíclicas para detectar escravos defeituosos ou falhos. Isto é
recomendado quando somente uma vista geral de diagnóstico do sistema de barramento completo
é necessário a ser mostrado.

Qualquer CPU S7 com interface DP integrada (CPU 31x-2 DP e todas as CPUs 41x-2 DP exceto
CPU 417-H) podem ser usadas como mestre DP. No caso do S7-300, os escravos DP falhos
podem ser avaliados da CPU 315-2AF02-0AB0 em diante. Além do mais, CPs S7 (p.ex. CP443-5) e
IMs S7 (p.ex. IM467) as quais são manipuladas pelo sistema como interface DP integradas na CPU
também podem ser usadas. Por esta razão, a CP342-5 não é suportada.

2.1 Chamando o bloco de função de diagnóstico FC99 no programa do usuário

O bloco de função de diagnóstico DP é chamado no OB1 do programa do usuário usando as


seguintes instruções:

CALL FC99

Os parâmetros com operandos formais são agora mostrados, os operandos atuais agora devem ser
inseridos aqui.

2.2 Parâmetros do bloco de diagnóstico DP FC99 e seu significado

Parâmetros de entrada:

• CHECK_ACTIV (Bool)
Este parâmetro pode ser usado para ativar a avaliação. O bit de ativação pode ser setado ou
resetado em outro bloco de função (p.ex. OB82, OB86 e assim interrupções controladas).

• EXTERNAL_DP_INTERFACE (Bool)
Este parâmetro especifica se a interface DP do mestre é uma interface integrada (na CPU
mestre) ou uma interface DP externa (CP / IM). Este parâmetro é relevante somente para o
S7-400.

• DP_MASTERSYSTEM (Int)
Aqui você deve inserir o número do sistema mestre DP como especificado na configuração
STEP 7.

• DATA_FIELD (Any) p.ex. P#DB100.DBX0.0 BYTE 50


Um campo de dados de 50 bytes para processamento interno do bloco. Somente Byte é
permitido como tipo de dado. O tamanho do campo deve ser de um mínimo de 50 bytes.
O campo de dados não é relevante para o usuário.

Parâmetros de saída:

• SUM_SLAVES_NOT_PRESENT (Int)
Número total de escravos DP com falhas.

• LIST_SLAVES_NOT_PRESENT (Any) p.ex. P#M10.0 BOOL 128 ou P#DB10.DBX0.0 BOOL 128


Lista de escravos DP falhos. Um bit na lista é atribuído para cada número de nó do barramento.
O comprimento é especificado como segue: 128 bits ou 16 bytes ou 4 palavras duplas.

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 8 Descrição Técnica e Diagnóstico
• SUM_SLAVES_ERROR (Int)
Número total de escravos DP falhos os quais estão ainda de qualquer forma trocando dados
com o mestre DP.

• LIST_SLAVES_ERROR (Any)p.ex. P#M30.0 BOOL 128


Lista de escravos DP falhos. Um bit na lista é atribuído para cada número de nó do barramento
DP. Os seguintes comprimentos são permitidos: 128 bits ou 16 bytes ou 4 palavras duplas.

• RETVAL (Int)
Valor resposta com os seguintes códigos de erros:
0000 = Nenhum erro durante a parametrização do bloco de função.
8080 = Tipo de dado errado em pelo menos um parâmetro do tipo ANY.
8081 = Comprimento de faixa errado de pelo menos um parâmetro do tipo ANY.
8082 = “Escravos Falhos“ não podem ser avaliados por CPU usada como versão antiga.

• BUSY (Bool)
O FC99 ainda está trabalhando se o bit BUSY for 1, caso contrário o FC99 terá terminado. O
parâmetro BUSY é setado somente em S7-400 com interface externa (Cp ou IM). No S7-300 e
S7-400 com interface integrada, BUSY é = 0.

2.3 Dados Técnicos do FC99

Tempo de operação se CHECK_ACTIV = 0: 0ms

Tempo de operação se CHECK_ACTIV = 1: aprox. 2ms

Memória necessária na CPU: 1,5 Kbytes

2.4 Exemplo de uma chamada do FC99

A avaliação DP pode ser ativada como cíclica ou acionada por evento no OB1. No OB82
(diagnósticos), OB86 (falha da estação) e OB100 (partida a frio), bits podem ser setados o quais
podem ser logicamente lincados a uma condição de ativação (CHECK_ACTIV) no OB1 (ver figura
3).

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 9 Descrição Técnica e Diagnóstico
3 Chamada no STEP 7

Ambos blocos de função são oferecidos como um projeto arquivado STEP 7, versão 3.x. O projeto
pode ser desempacotado e aberto no Gerenciador SIMATIC com a função STEP 7 “Retrieve“.

Figura 4: Projeto S7 após o resgate (retrieve)

Todos os blocos S7 necessários, incluíndo os blocos de organização (OB1, OB82, OB86, OB100) e
as chamadas de ambos os blocos de diagnóstico (FB99 e FC99) são fornecidas no projeto. Uma
tabela de símbolos e uma tabela de variáveis contendo todos os operandos usados.

Os blocos S7, a tabela de variáveis e a tabela de símbolos podem ser pegas do projeto STEP 7 e
postas no novo programa do usuário com os comandos “Copy“ e “Paste“. As chamadas interfaces
de ambos os blocos de diagnóstico S7 podem ser copiadas dos blocos de organização fornecidos
(OB1, OB82, OB86) e inseridos no programa do usuário.
Finalmente, os operandos atuais nos parâmetros do bloco são trocados individualmente (ver figuras
1 e 3). Cuidado deve ser tomado que o número configurado do sistema mestre DP na configuração
de hardware coincida com o operando atual no parâmetro de bloco “DP_MASTERSYSTEM“.

número do sistema mestre DP


o qual é um dos parâmetros do FB99 / FC99

Figura 5: Número do sistema mestre DP na configuração de hardware.

Siemens Ltda. Capítulo 1 KO-7KDP


Training Center Página 10 Descrição Técnica e Diagnóstico

Você também pode gostar