Академический Документы
Профессиональный Документы
Культура Документы
Garantia e Responsabilidade
Nota Os Exemplos de aplicação não são de ligação e não pretende ser exaustiva no que diz
respeito à configuração, equipamentos ou quaisquer contingências. Os Exemplos de
Aplicação não representam soluções específicas para cada cliente. Eles são destinados
apenas para fornecer suporte para aplicações típicas. Você é responsável pela operação
correta dos produtos descritos. Estes Exemplos de Aplicação não aliviá-lo da
responsabilidade de segurança e utilização, instalação, operação e manutenção do
equipamento. Ao usar estes Exemplos de Aplicação, você reconhece que não pode ser
responsabilizada por qualquer dano / reivindicações além da cláusula de
responsabilidade descrito. Reservamo-nos o direito de fazer alterações a estes
Exemplos de aplicação em qualquer momento e sem aviso prévio.
Nós não aceitamos qualquer responsabilidade pela informação contida neste documento.
Serão excluídos resultante da utilização dos dados exemplos, avisos, programas,
engenharia e desempenho etc., descritos neste Exemplo de Aplicação - quaisquer
reivindicações contra nós - com base em qualquer razão legal. Tal exclusão não
se aplica no caso de responsabilidade obrigatória, por exemplo, sob o alemão
Produto Lei de Responsabilidade ( “Produkthaftungsgesetz”), em caso de dolo,
negligência grave, ou lesão de vida, corpo ou saúde, garantia de qualidade de um
produto , ocultação fraudulenta de uma deficiência ou violação das obrigações
contratuais fundamentais ( “Vertragspflichten wesentliche”). A compensação por
danos devido a uma violação de uma obrigação contratual fundamental é, no
entanto, limitada ao dano previsível, típica para o tipo de contrato, a não ser em
caso de dolo ou negligência grave ou lesão à vida, corpo ou saúde.
Siemens AG 2016 Todos os direitos
Informa Siemens fornece produtos e soluções com funções de segurança industrial que
reservados
LSnmp
ID de entrada: 57249109, V3.0, 2
07/2016
Mesa de Conteúdo
Índice
garantia e Liability2 ................................................................................................
1 Biblioteca Overview4 ....................................................................................
1.1 Aplicação scenario4..........................................................................
1.2 Functions6 .......................................................................................
1.3 Hardware e software requirements8 ..................................................
2 Blocos da Library9........................................................................................
2.1 Quadra list9 .....................................................................................
2.2 Explicação dos blocos de SET_GET_Blocks10 ..................................
2.2.1 FB “Snmpget” 10 ..............................................................................
2.2.2 FB “Snmpgetnext” 13 ........................................................................
2.2.3 FB “SnmpGetBulk” 14 .......................................................................
2.2.4 FB “SnmpSet” 15..............................................................................
2.2.5 DB “SnmpGetParam” 17 ...................................................................
2.2.6 DB “SnmpGetBulkParam” 18.............................................................
2.2.7 DB “SnmpSetParam” 19 ...................................................................
2.2.8 UDT “TypeParamGetSet” 20 .............................................................
2.2.9 UDT “TypeParamGetBulk” 22 ............................................................
2.2.10 ambiente de call do blocks23 SNMP ..................................................
2.3 Explicação dos blocos de SWITCH_IO_FB23.....................................
2.3.1 FB “SwitchIO” 23 ..............................................................................
2.3.2 DB “SwitchIOParam” 26 ....................................................................
2.3.3 UDT “TypeParamSwitch” 27 ..............................................................
Siemens AG 2016 Todos os direitos
4 References31 ................................................................................................
5 History31 ......................................................................................................
LSnmp
ID de entrada: 57249109, V3.0, 3
07/2016
Biblioteca 1 visão global
1 biblioteca Overview
O que eu ganho?
Este documento descreve o “LSnmp” biblioteca de blocos para STEP 7 TIA. A
biblioteca bloco fornece código testado com interfaces claramente definidas.
Eles podem ser usados como base para a tarefa que você deseja implementar.
Este documento descreve
• todos os blocos pertencentes à biblioteca de blocos
• a funcionalidade implementada através destes blocos
Além disso, esta documentação mostra possíveis campos de aplicação e ajuda a
integrar a biblioteca em seu projeto TIA usando instruções passo-a-passo.
LSnmp
ID de entrada: 57249109, V3.0, 4
07/2016
Biblioteca 1 visão global
disposição esquemática
A figura abaixo mostra uma possível configuração em que os blocos de SNMP
da biblioteca pode ser utilizada.
Nota Estas variáveis SNMP deve existir no MIB privada ( “Management Information
Base”) do dispositivo (consulte o capítulo 4) Ou na MIB geral 2.
Nota Exemplos de uso de blocos de SNMP podem ser encontrados na página HTML
desta entrada (veja o capítulo 4).
Figura 1-1
Siemens AG 2016 Todos os direitos
chamadas SNMP
Ethernet industrial
componentes líquidos
(agentes SNMP)
LSnmp
ID de entrada: 57249109, V3.0, 5
07/2016
Biblioteca 1 visão global
1.2 Funções
A fim de permitir uma comunicação SNMP entre um SIMATIC S7-CPU e o
componente de rede, os blocos de funções da biblioteca “LSnmp” são
obrigatórios.
A tabela seguinte descreve as funções básicas dos blocos funcionais.
Tabela 1-1
Função Descrição SNMP
versão
snmpget Pedido de uma variável SNMP de um agente SNMP (obter comando SNMPv1
de solicitação).
SnmpSet A alteração de uma variável SNMP de um agente SNMP SNMPv1
(conjunto de comandos pedido).
snmpgetnext Expandindo o pedido get; SNMPv1
Permite uma execução automática e pedido dos seguintes objetos
dentro de uma sub-árvore OID.
SnmpGetBulk Expandindo o pedido GetNext; SNMPv2
Faz com que o pedido de grandes volumes de dados de um agente
SNMP, com apenas uma resposta enquadrar possível.
SwitchIO Inclui as funções “snmpget” e “SnmpSet” para alternar a saída SNMPv1
digital de um cliente IWLAN.
cada função.
agente
SIMATIC S7-CPU SNMP
OID1 Value1
• OID conexão UDP temporária
• IP endereço do oid2 value2
agente SNMP oid3h Value3
comando de solicitação
GET OID1
LSnmp
ID de entrada: 57249109, V3.0, 6
07/2016
Biblioteca 1 visão global
Figura 1-3
Resposta
OID1,
Value1
agente
SNMP
mestre OID
SIMATIC S7-CPU
conexão UDP temporária OID1 Value1
• mestre OID
• IP endereço do oid2 value2
agente SNMP
oid3h Value3
comando de solicitação
GET-NEXT <mestre OID>
Resposta
OID1, valor 1
reservados
comando de solicitação
SET OID1, valor 1
LSnmp
ID de entrada: 57249109, V3.0, 7
07/2016
Biblioteca 1 visão global
Programas
O software de uma configuração V13 SP é usado como software
Siemens AG 2016 Todos os direitos
reservados
LSnmp
ID de entrada: 57249109, V3.0, 8
07/2016
2 Blocos da Biblioteca
2 Blocos da Biblioteca
O que você vai aprender aqui?
Este capítulo explica os blocos da biblioteca “LSnmp”.
A biblioteca inclui duas pastas principais:
• S7-x00 para a aplicação com um S7-300 / 400, ET 200S CPU, WinAC
• S7-1500 / S7-1200 para a aplicação com um S7-1x00.
O conteúdo das pastas é idêntico; somente o código de programa é optimizado
para os controladores respectivamente utilizados.
Para cada controlador de existem duas pastas disponíveis, como mostrado pela seguinte figura
Figura 2-1
Siemens AG 2016 Todos os direitos
LSnmp
ID de entrada: 57249109, V3.0, 9
07/2016
2 Blocos da Biblioteca
SwitchIO In-house SWITCH_IO_FB
desenvolvimento
SwitchIOParam In-house SWITCH_IO_FB
desenvolvimento
typeParamSwitchIO In-house SWITCH_IO_FB
desenvolvimento
LSnmp
ID de entrada: 57249109, V3.0, 10
07/2016
2 Blocos da Biblioteca
visão
global O bloco “snmpget” é um bloco de função configurável para a leitura de variáveis
SNMP. Todas as informações que este bloco requer é armazenado no
“SnmpGetParam” bloco do tipo “typeParamGetSet” global de dados (informações
consulte o capítulo2.2.3) E transferido para o bloco como parâmetro de entrada /
saída.
princípio de funcionamento
O bloco “snmpget” envia um comando de solicitação SNMP get para o agente
SNMP no componente de rede. O componente de rede responde com um
comando resposta SNMP get que contém os dados solicitados ou uma mensagem
de erro.
Ilustração e configuração
O “snmpget” FB é chamado como segue:
Figura 2-2
Siemens AG 2016 Todos os direitos
Tabela 2-
2
reservados
LSnmp
ID de entrada: 57249109, V3.0, 11
07/2016
2 Blocos da Biblioteca
Tabela 2-4
Parâmetro Tipo de Descrição
dados
feito BOOL TRUE quando o último trabalho foi processado sem erros. Só é
verdade para um ciclo.
ocupado BOOL Definido como TRUE quando o bloco “snmpget” está ativo.
Assume o status FALSE assim que a operação for concluída ou
ocorre um erro. Só é verdade para um ciclo.
erro BOOL TRUE se ocorrer um erro ao processar a rotina. Só é verdade
para um ciclo.
estado DWORD Status, se ERROR = TRUE. Apenas activo para um ciclo.
ENO BOOL Ativar saída. Relevante apenas em FBD e representação LAD.
LSnmp
ID de entrada: 57249109, V3.0, 12
07/2016
2 Blocos da Biblioteca
Nota Erros com um status diferente são erros dos blocos de comunicação
subordinados: TCON: DW # 16 # 0001xyyy
TUSEND: DW # 16 # 0010xyyy
TURCV: DW # 16 # 0011xyyy
TDISCON: DW # 16 # 0012xyyy
As informações de erro específico (codificado em xyyy) pode ser encontrada na
ajuda online do respectivo bloco de comunicação.
Se ocorrer um erro de comunicação, a CPU deve ser reiniciado após a
eliminação do erro (por exemplo, depois de mudar um parâmetro
incorreto).
Siemens AG 2016 Todos os direitos
reservados
LSnmp
ID de entrada: 57249109, V3.0, 13
07/2016
2 Blocos da Biblioteca
2.2.2 FB “snmpgetnext”
visão
global Em princípio, o bloco FB “snmpgetnext” funciona como o bloco “snmpget”, com a
excepção que permite a leitura das variáveis SNMP subsequentes dentro de uma
árvore de objetos SNMP.
Todas as informações que este bloco requer é armazenado no “SnmpGetParam”
bloco do tipo “typeParamGetSet” global de dados (informações consulte o capítulo
2.2.3) E transferido para o bloco como parâmetro de entrada / saída.
princípio de funcionamento
O bloco “snmpgetnext” usa o comando de solicitação SNMP GetNext e facilita a
solicitação de objetos subsequentes de um sub MIB. Os objectos dentro de uma
sub-árvore MIB são caracterizados pelo facto de todos os objectos têm o mesmo
OID mestre e que eles só podem ser distinguidos com base nos sufixos.
O comando GetNext é usado principalmente para a execução de uma tabela ou
uma coluna da tabela e funciona da seguinte maneira:
A primeira chamada de GetNext vai para o OID mestre. O agente SNMP não
responde com os valores de retorno da OID solicitante (aqui: o OID master) -
como é o caso com o comando de solicitação get, mas com o OID (mestre OID +
Suffix1) eo valor de retorno (Valor1) de o objecto seguinte. A próxima chamada
de GetNext é agora enviado para o receber OID (mestre OID + Suffix1). A
Siemens AG 2016 Todos os direitos
Ilustração e configuração
O “snmpgetnext” FB é chamado como segue:
Figura 2-3
LSnmp
ID de entrada: 57249109, V3.0, 14
07/2016
2 Blocos da Biblioteca
2.2.3 FB “SnmpGetBulk”
visão
global O bloco de FB “SnmpGetBulk” sempre funciona como o bloco “snmpgetnext”. Ele
é usado para minimizar a transferência de rede, uma vez que permite a leitura
eficiente de grandes volumes de dados com apenas um quadro de resposta
única.
Todas as informações que este bloco requer é armazenado no
“SnmpGetBulkParam” bloco do tipo “typeParamGetBulk” global de dados
(informações consulte o capítulo 2.2.3) E transferido para o bloco como
parâmetro de entrada / saída.
Siemens AG 2016 Todos os direitos
princípio de funcionamento
O bloco “SnmpGetBulk” usa o comando de solicitação SNMP GetBulk e,
portanto, requer SNMPv2 - um maior desenvolvimento de SNMPv1.
O comando GetBulk executa vários pedidos GetNext internamente e retorna o
evento em um quadro de resposta única. O número de comandos GetNext pode
reservados
Ilustração e configuração
O FB “SnmpGetBulk” é chamado como segue:
Figura 2-4
LSnmp
ID de entrada: 57249109, V3.0, 15
07/2016
2 Blocos da Biblioteca
2.2.4 FB “SnmpSet”
visão
global O bloco “SnmpSet” é um bloco de função configurável para escrever variáveis
SNMP. Todas as informações que este bloco requer é armazenado no
“SnmpGetParam” bloco do tipo “typeParamGetSet” global de dados (informações
consulte o capítulo2.2.3) E transferido para o bloco como parâmetro de entrada /
saída.
princípio de funcionamento
O bloco “SnmpSet” envia um trabalho de escrita para uma variável SNMP para o
agente SNMP no componente de rede através do comando SNMP GetRequest.
No quadro de resposta SetResponse, o bloco recebe o resultado do trabalho de
gravação do componente de rede.
Se esta variável leia-in não corresponde ao valor escrito, um erro será emitido. O
trabalho de gravação tem de ser transmitida novamente.
Ilustração e configuração
O FB “SendSet” é chamado como segue:
Figura 2-5
Siemens AG 2016 Todos os direitos
Tabela 2-
6
reservados
LSnmp
ID de entrada: 57249109, V3.0, 16
07/2016
2 Blocos da Biblioteca
parâmetros de saída
O bloco “SnmpSet” inclui os seguintes parâmetros de saída:
Tabela 2-7
Parâmetro Tipo de Descrição
dados
feito BOOL TRUE quando o último trabalho foi processado sem
erros. Só é verdade para um ciclo
ocupado BOOL Definido como TRUE quando o bloco “SnmpSet” está ativo.
Assume o status FALSE assim que a operação for concluída ou
ocorre um erro. Só é verdade para um ciclo
erro BOOL TRUE se ocorrer um erro ao processar a rotina. Só é verdade para
um ciclo
estado PALAVRA Status, se ERROR = TRUE. Apenas activo para um ciclo.
ENO BOOL Ativar saída. Apenas relevante no FBD e representação LAD
LSnmp
ID de entrada: 57249109, V3.0, 17
07/2016
2 Blocos da Biblioteca
2.2.5 DB “SnmpGetParam”
LSnmp
ID de entrada: 57249109, V3.0, 18
07/2016
2 Blocos da Biblioteca
2.2.6 DB “SnmpGetBulkParam”
LSnmp
ID de entrada: 57249109, V3.0, 19
07/2016
2 Blocos da Biblioteca
2.2.7 DB “SnmpSetParam”
LSnmp
ID de entrada: 57249109, V3.0, 20
07/2016
2 Blocos da Biblioteca
visão
global O tipo de dados “typeParamGetSet” PLC é uma estrutura de dados definidos que
é utilizado várias vezes no programa e que é usado como molde para criar os
blocos de dados globais “SnmpGetParam” e “SnmpSetParam”.
A estrutura do tipo de dados PLC é constituído por vários componentes.
Figura 2-9
LSnmp
ID de entrada: 57249109, V3.0, 21
07/2016
2 Blocos da Biblioteca
aqui.
Para o acesso de escrita ( “SnmpSet”) o comprimento da
variável SNMP tem de ser configurada.
valor de retorno MATRIZ DE BYTE. O comprimento da matriz é limitada a
255 bytes.
Para acesso de leitura ( “snmpget”) os dados de resposta da
reservados
LSnmp
ID de entrada: 57249109, V3.0, 22
07/2016
2 Blocos da Biblioteca
visão
global O tipo de dados “typeParamGetBulk” PLC é uma estrutura de dados definidos
para a função “GetBulk” que é usado como molde para a criação do bloco de
dados global “SnmpGetBulkParam”.
A estrutura do tipo de dados PLC é constituído por vários componentes.
A Figura 2-10
LSnmp
ID de entrada: 57249109, V3.0, 23
07/2016
2 Blocos da Biblioteca
Os blocos SNMP deve ser chamado ciclicamente. Isso pode ser feito tanto em
OB1 ou, alternativamente, em um tempo de interrupção OB.
visão
global O bloco de “SwitchIO” é um bloco que está programado no SCL para demonstrar
uma aplicação do “snmpget” blocos “e” SnmpSet.
O bloco usuário “SwitchIO” permite que um SIMATIC S7-CPU para mudar e
reservados
princípio de funcionamento
O bloco “SwitchIO” realiza duas funções
• Solicitar o estado da saída digital de um módulo SCALANCE W.
• Mudar a saída digital de um módulo SCALANCE W.
Para demonstrar estes cenários, o bloco de função utiliza as funções básicas da
pasta SET_GET_Blocks e internamente chama a função blocos “snmpget” e
“SnmpSet”.
Para solicitar o status da saída digital, um comando SNMP GetRequest é
enviado para o componente IWLAN após um comando de gatilho com o bloco
“snmpget”.
Ele responde ao pedido com uma moldura GetResponse que contém o status
desejado (saída está definido ( “true”), a saída não está definido ( “false”)).
Para comutar a saída digital, um pacote SNMP SET é estabelecido após o
comando depois do disparo que inclui o valor desejado (ajuste de saída,
redefinir saída). O trabalho de escrita é enviado para os componentes IWLAN
através do bloco “SnmpSet”.
Ele responde ao pedido com uma fama GetResponse que inclui o resultado do
trabalho de escrita. Se a variável de leitura no coincide com o valor sobrescrito, a
operação de comutação foi bem sucedida.
LSnmp
ID de entrada: 57249109, V3.0, 24
07/2016
2 Blocos da Biblioteca
Ilustração e configuração
O FB “SwitchIO” é chamado como segue:
A Figura 2-11
Tabela 2-
10
de
dad
os
feito BOOL TRUE quando o último trabalho foi processado sem erros. Só é
verdade para um ciclo.
ocupado BOOL Definido como TRUE quando o bloco “SwitchIO” está ativo.
Assume o status FALSE assim que a operação for concluída ou ocorre
um erro. Só é verdade para um ciclo.
statedigitalIO BOOL Estado da saída digital da última ação
TRUE: saída digital “ON”
FALSO: saída digital “OFF”
erro BOOL TRUE se ocorrer um erro ao processar a rotina. Só é verdade para um
ciclo.
estado DWORD Status, se ERROR = TRUE. Apenas activo para um ciclo.
ENO BOOL Ativar saída. Relevante apenas em FBD e representação LAD.
LSnmp
ID de entrada: 57249109, V3.0, 25
07/2016
2 Blocos da Biblioteca
LSnmp
ID de entrada: 57249109, V3.0, 26
07/2016
2 Blocos da Biblioteca
2.3.2 DB “SwitchIOParam”
ID de dispositivo
Todas essas informações são armazenadas em uma
estrutura de dados definida. O PLC tipo de dados
“typeParamSwitch” é usado como modelo.
A estrutura de dados definido pode ser utilizado se multiplicam no programa.
reservados
A Figura 2-12
LSnmp
ID de entrada: 57249109, V3.0, 27
07/2016
2 Blocos da Biblioteca
visão
global O PLC tipo de dados “typeParamSwitch” é uma estrutura de dados definidos que é
utilizado várias vezes no programa e é utilizado como molde para criar o
“SwitchIOParam” bloco de dados global.
A estrutura do tipo de dados PLC é constituído por vários componentes.
LSnmp
ID de entrada: 57249109, V3.0, 28
07/2016
3 Trabalhando com o Biblioteca
Preparação
tabela 3-1
Não. Açao
1. A biblioteca está disponível na página HTML a partir do qual você fez o download deste
documento. Salvar a biblioteca 57249109_SNMP_Library_CODE_V_30.zip para seu disco rígido.
2. Recuperar a biblioteca com a ajuda de um programa de compressão de dados.
Siemens AG 2016 Todos os direitos
A abertura da biblioteca
Tabela 3-2
Não. Açao Nota
reservados
LSnmp
ID de entrada: 57249109, V3.0, 29
07/2016
3 Trabalhando com o Biblioteca
Tabela 3-3
Não. Açao Nota
1. Abra a pasta de cópias mestre na O sub-pasta S7-x00 inclui os blocos para uma
biblioteca e aqui a subpasta S7-x00 ou CPU S7- 300/400 / ET200 ou WinAC.
S7-1x00> SET_GET_Blocks. O sub-pasta S7-1x00 inclui os blocos para um S7-
1500 ou S7-1200.
2. Arraste os modelos de cópia via O destino final para os modelos “snmpget”,
arrastar e soltar para o local desejado “snmpgetnext”, “SnmpGetBulk”, “SnmpSet”,
no projeto TIA. “SnmpGetParam”, “SnmpGetBulkParam” e
“SnmpSetParam” é a pasta do programa.
O tipo de dados PLC “typeParamGetSet”,
“typeParamGetBulk” e
“typeSnmpBulkResponseData” é inserido na
respectiva pasta tipo PLC_Data.
3. A partir dos modelos é criada uma
cópia no local de utilização.
4. Abra o bloco de organização OB1 de
sua pasta de programa e, se
necessário, criar uma nova rede.
5. Selecione a opção “snmpget” código
de programa e arrastá-lo através de
arrastar-e-soltar para a rede.
6. O bloco requer um bloco de dados de
exemplo. O portal TIA sugere
Siemens AG 2016 Todos os direitos
LSnmp
ID de entrada: 57249109, V3.0, 30
07/2016
3 Trabalhando com o Biblioteca
.
Siemens AG 2016 Todos os direitos
reservados
LSnmp
ID de entrada: 57249109, V3.0, 31
07/2016
4 Referências
4 Referências
Esta lista não é de forma completa e só apresenta uma seleção de
informações adequadas.
Tabela 4-1
Tópico
\1\ Siemens Industry suporte on-line
https://support.industry.siemens.com
\2\ página de download desta entrada
https://support.industry.siemens.com/cs/ww/en/view/57249109
5 História
Siemens AG 2016 Todos os direitos
Tabela 5-1
Versão Enc modificações
ontr
o
reservados
LSnmp
ID de entrada: 57249109, V3.0, 32
07/2016