Você está na página 1de 102

instruções estendidas

8,5 Diagnostics (PROFINET ou PROFIBUS)

Tabela 8- 106 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

LADDR EM HW_IOSYSTEM endereço lógico: (Identificador para o sistema I / O)

MODO EM uint Tipo Status:

• 1: Configuração do dispositivo está ativo ou não ainda completa.

• 2: Dispositivo defeituoso

• 3: dispositivo desativado

• 4: existe Dispositivo

RET_VAL FORA int código de condição de execução

ESTADO 1 InOut Variante Reserva que recebe o status de erro de cada dispositivo: O tipo de dados que você escolher
para o parâmetro de estado pode ser qualquer tipo bit (Bool, Byte, Word ou DWORD) ou uma
matriz de um tipo pouco

• pouco Resumo: Bit 0 = 1, se um dos bits de estado dos dispositivos de I / O é um

• pouco estado: Estado do dispositivo de I / O com o número da estação n de acordo com o modo

seleccionado. Por exemplo, MODO = 2 e pouco 3 = 1 significa que a estação 3 é defeituoso.

1 Para Profibus DP, o comprimento da informação de estado é de 128 bits. Para PROFINET I / O, o comprimento é de 1024 bits.

Após a execução, o parâmetro de estado contém o estado de erro de cada dispositivo I / O como uma lista bit (para o LADDR
atribuído e MODE).

Tabela 8- 107 códigos Condições

RET_VAL (W # 16 # ...) Descrição

0 nenhum erro

8091 não LADDR não existe.

8092 não LADDR não aborda um sistema de I / O.

8093 Tipo de dados inválido atribuído para o parâmetro ESTADO: tipos de dados válidos são (Bool, Byte, Word ou DWORD), ou uma matriz de
(Bools, Bytes, palavras ou palavras duplas)

80Bx instruções DeviceStates não suportado pelo CPU para este LADDR.

8452 Os dados completo estado é muito grande para o parâmetro de estado atribuído. O tampão contém uma ESTADO resultado
parcial.

controlador programável S7-1200

300 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

8.5.5 instruções ModuleStates

Tabela instrução 8- 108 ModuleStates

LAD / FBD SCL Descrição


ret_val: = (ModuleStates ModuleStates recupera os estados de funcionamento de
laddr: = _ word_in_, modo: = _ módulos de E / S. Após a execução, o parâmetro de estado
uint_in, estado: = _ variant_inout); contém o estado de erro de cada módulo I / O em uma lista bit
(para o LADDR atribuído e MODE). Esta informação
corresponde com o estado do módulo visto no STEP 7
diagnósticos ver.

Tabela 8- 109 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

LADDR EM HW_DEVICE endereço lógico (Identificador para os módulos I / O)

MODO EM uint Tipo Status:

• 1: Configuração do módulo está ativa ou não ainda completa.

• 2: Módulo defeituoso

• 3: Módulo desativada

• 4: existe Módulo

RET_VAL FORA int Status (código de condição)

ESTADO 1 InOut Variante Reserva que recebe o status de erro de cada módulo: O tipo de dados que você usar para o
parâmetro de estado pode ser qualquer tipo bit (Bool, Byte, Word ou DWORD) ou uma matriz de
um tipo pouco.

• pouco Resumo: Bit 0 = 1, se um dos bits de estado do módulo de E / S é de 1

• bit Estado: módulo de Estado de I / O com número de slot n de acordo com o modo

seleccionado. Por exemplo, MODO = 2 e pouco 3 = 1 significa que a estação 3 é defeituoso.

1 Um máximo de 128 bits pode ser atribuído. O número de bits necessários depende do seu uso do módulo I / O.

Tabela 8- 110 códigos Condições

RET_VAL (W # 16 # ...) Descrição

0 nenhum erro

8091 Módulo identificado por LADDR não existe.

8092 Módulo identificado por LADDR não aborda um dispositivo de I / O.

8093 Tipo de dados inválido para o parâmetro ESTADO: tipos de dados válidos são (Bool, Byte, Word, ou DWORD), ou uma matriz de (Bools, bytes,
palavras ou palavras duplas).

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 301


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

RET_VAL (W # 16 # ...) Descrição

80Bx instruções ModuleStates não suportado por este CPU para este LADDR.

8452 Os dados completo estado é muito grande para o parâmetro de estado atribuído. O tampão contém uma ESTADO resultado
parcial.

8.5.6 instruções GET_DIAG

Descrição

Você pode usar a instrução "GET_DIAG" para ler as informações de diagnóstico de um objeto de hardware. O
objeto hardware é selecionado com o parâmetro LADDR. Com o parâmetro modo, você seleciona quais
informações de diagnóstico deve ser lido.

Tabela 8- instrução 111 GET_DIAG

LAD / FBD SCL Descrição


ret_val: = GET_DIAG ( Lê as informações de diagnóstico a partir de um dispositivo de
modo: = _ uint_in_, laddr: = _ word_in_, hardware especificado.

cnt_diag => _ uint_out_, diag: = _


variant_inout_, detalhe: = _
variant_inout_);

parâmetros

A tabela a seguir mostra os parâmetros da instrução "GET_DIAG":

Tabela 8- 112 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

MODO EM uint Use o parâmetro MODE para selecionar quais dados de diagnóstico é estar de saída.

LADDR EM HW_ANY (Word) ID de hardware do dispositivo

RET_VAL FORA int Status da instrução

CNT_DIAG FORA uint Número de detalhes de diagnóstico de saída

DIAG InOut Variante Ponteiro para a área de dados para o armazenamento de informações de diagnóstico do modo

seleccionado

DETALHES InOut Variante Ponteiro para a área de dados para o armazenamento de dados de diagnóstico de acordo com o modo
seleccionado

controlador programável S7-1200

302 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

parâmetro MODO

Dependendo do valor no parâmetro modo, os dados diferentes diagnósticos é debitada no DIAG, CNT_DIAG e
detalhes parâmetros de saída:

Tabela parâmetro 8- 113 MODO

MODO Descrição DIAG CNT_DIAG DETALHES

0 Saída de todos suportados informações cadeia de bits dos modos suportados 0 -


de diagnóstico para um módulo como como DWORD, onde X = 1 bit indica
DWORD, onde X = Bit 1 indica que o que o modo X é suportada.
modo X é suportada.

1 Saída do estado inerente do objeto estado Diagnóstico: Saída de 0 -


hardware abordadas. acordo com a estrutura DIS.
(Nota: Consulte a informação
"estrutura DIS" abaixo e exemplo
de instruções GET_DIAG no fim
da secção.)

2 Saída do status de todos os módulos Saída de dados de diagnóstico, de 0 informações de estado do


subordinados do objeto hardware acordo com a estrutura DNN. (Nota: módulo de acordo com a
abordadas. Consulte a informação "estrutura estrutura
DNN" abaixo e exemplo de DiagnosticsDetails.
instruções GET_DIAG no fim da
secção.)

estrutura DIS

Com o parâmetro MODO = 1, a informação de diagnóstico é de saída, em conformidade com a estrutura DIS. A tabela
a seguir mostra o significado dos valores dos parâmetros individuais:

Tabela 8- 114 Estrutura da fonte de informação de diagnóstico (DIS)

Parâmetro Tipo de dados Valor Descrição

MaintenanceState DWord enum 0

Não requer manutenção

1 O módulo ou o dispositivo está desativado.

2 -

3 -

4 -

5 Manutenção requerida

6 manutenção exigiu

7 Erro

8 Estado desconhecido / erro no módulo subordinado

9 -

10 Entradas / saídas não estão disponíveis.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 303


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

Parâmetro Tipo de dados Valor Descrição


Detalhe DWord matriz de bits Estados do sub-módulo módulos:
Componentstate
• Bit 0 a 15: Estado de mensagem do módulo

• Bit 16 a 31: Estado mensagem da CPU

0-2 Informação adicional:


(enum)
• Bit 0: Nenhuma informação adicional

• Bits 1: Transferência não permitida

3 Bit 3 = 1: Pelo menos um canal suporta qualificadores para diagnóstico.

4 Bit 4 = 1: Manutenção necessária para, pelo menos, um canal ou um componente

5 O bit 5 = 1: Manutenção exigido para, pelo menos, um canal ou um componente

6 Bit 6 = 1: erro em pelo menos um canal ou um componente

7-10 -

11 a 14 Bit 11 = 1: PNIO - sub-módulo de bit correcta 12 = 1:

PNIO - substituição do módulo Bit 13 = 1: PNIO -

incorrecta módulo Bit 14 = 1: PNIO - módulo

desconectado

15 -

16 a 31 informação de estado para módulos gerados pela CPU: Bit 16 = 1: Bits

deficientes módulo 17 = 1: funcionamento Cir Bit activo 18 = 1: Entrada não

disponível Bit 19 = 1: A saída não disponível Bit 20 = 1: tampão de

diagnóstico Overflow Bit 21 = 1: Bits de diagnóstico não disponível 22-31:

Reservado (sempre 0)

OwnState Uint16 enum O valor do parâmetro OwnState descreve o estado de manutenção do módulo.

0 Sem culpa

1 O módulo ou o dispositivo está desativado.

2 Manutenção requerida

3 manutenção exigiu

4 Erro

5 O módulo ou o dispositivo não pode ser alcançada a partir da CPU (válido para os módulos e
dispositivos abaixo uma CPU).

6 Entradas / saídas não estão disponíveis.

7 -

Estado IO Uint16 matriz de bits I / O estado do módulo

0 Bit 0 = 1: Não requer manutenção

1 Bit 1 = 1: O módulo ou dispositivo é desactivado.

2 Bit 2 = 1: Manutenção necessária

3 Bit 3 = 1: Manutenção exigiu

4 Bit 4 = 1: Erro

controlador programável S7-1200

304 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

Parâmetro Tipo de dados Valor Descrição

5 O bit 5 = 1: O módulo ou o dispositivo não pode ser alcançada a partir da CPU (válido para os módulos
e dispositivos abaixo uma CPU).

6 Entradas / saídas não estão disponíveis.

7 Qualificador; o bit 7 = 1, se o bit 0, 2, ou 3 são definidos

8-15 Reservado (sempre = 0)

OperatingState UInt16 enum 0

1 Na atualização STOP / firmware

2 Em STOP / RESET memória

3 Em STOP / auto início

4 em PARAR

5 reposição da memória

6 em INÍCIO

7 em RUN

8 -

9 Em espera

10 -

11 -

12 módulo com defeito

13 -

14 Nenhum poder

15 CIR

16 Em STOP / sem DIS

17 Em

18

19

20

estrutura DiagnosticsDetail

Com o parâmetro MODE = 2, os detalhes informações de diagnóstico são emitidos de acordo com a estrutura
DiagnosticsDetail. A tabela a seguir mostra o significado dos valores dos parâmetros individuais:

Tabela 8- 115 Estrutura do DiagnosticsDetail

Parâmetro Tipo de dados Descrição

Número do canal uint Número do canal

propriedades Palavra

alid uint ID identificação de alarme

Qualificador DWord Qualificador de dados de diagnóstico

ErrorType UDINT Tipo de erro do canal

ExtErrorType UDINT Extensão tipo de erro de canal

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 305


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

Parâmetro Tipo de dados Descrição

AddValue_1 uint valor adicional

AddValue_2 uint valor adicional

AddValue_3 uint valor adicional

AddValue_4 uint valor adicional

estrutura DNN

Com o parâmetro MODE = 2, os detalhes informações de diagnóstico são emitidos de acordo com a estrutura DNN.
A tabela a seguir mostra o significado dos valores dos parâmetros individuais:

Tabela 8- 116 Estrutura do diagnóstico navegação nó (DNN)

Parâmetro Tipo de dados Valor Descrição

SubordinateState UINT enum Estado do módulo subordinado (Veja parâmetro OwnState da estrutura DIS).

SubordinateIOState PALAVRA bitarray Estado das entradas e saídas do módulo subordinado (Veja parâmetro IO
Estado da estrutura DIS).

DNNmode PALAVRA bitarray • Bit 0 = 0: Diagnóstico habilitado

• Bit 0 = 1: Diagnóstico deficientes

• Bits 1-15: Reservado

parâmetro RET_VAL

Tabela 8- 117 Códigos de erro do parâmetro RET_VAL

O código de erro Descrição

(W # 16 # ...)

0 nenhum erro

n A área de dados no parâmetro DETALHES é muito pequeno. Nem todos os detalhes dos dados de diagnóstico pode ser a saída.

8080 Valor no parâmetro modo não é suportado.

8081 Tipo no parâmetro diag não é suportado com o modo selecionado (parâmetro MODO).

8082 Tipo no parâmetro DETALHES não é suportado com o modo selecionado (parâmetro MODO).

8090 não LADDR não existe.

8091 O canal seleccionado no parâmetro do canal não existe.

80C1 insuficiência de recursos para execução paralela

controlador programável S7-1200

306 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

Exemplo

O seguinte rede lógica ladder e DB mostrar como usar os três modos com os três estruturas:

● DIS

● DiagnosticsDetail

● DNN

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 307


instruções estendidas
8,5 Diagnostics (PROFINET ou PROFIBUS)

1 2

① DNN
② DIS
③ DiagnosticsDetail

Nota

No DB, você deve digitar manualmente o tipo de dados para acessar cada uma das três estruturas; não há nenhuma seleção da lista
suspensa. Digite os tipos de dados exatamente como mostrado abaixo:

• DNN
• DIS
• DiagnosticsDetail

controlador programável S7-1200

308 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
8.6 pulso

8,6 Pulso

8.6.1 instruções CTRL_PWM

Tabela 8- 118 CTRL_PWM (Pulse Width Modulation) instrução

LAD / FBD SCL Descrição


"CTRL_PWM_DB" ( Fornece uma saída de tempo de ciclo fixo com um ciclo de trabalho variável. A saída
PWM: = _ word_in_, permitir: = de PWM é executado continuamente depois de ter sido iniciado na frequência

_ bool_in_, ocupado => _ especificada (tempo de ciclo). A largura de impulso é variado conforme requeridas

bool_out_, status => _ para afectar o controlo desejado.

word_out_);

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "CTRL_PWM_DB" é o nome da instância DB.

CTRL_HSC

Tabela 8- 119 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

PWM EM HW_PWM identificador PWM: Nomes de geradores de impulsos habilitados vai se tornar marcas na tabela tag
(Word) "constante", e estará disponível para uso como parâmetro PWM. (Valor predefinido: 0)

HABILITAR EM Bool 1 = partida gerador de impulsos do

gerador de impulsos 0 = paragem

OCUPADO FORA Bool Função ocupado (Valor padrão: 0)

STATUS FORA Palavra código de condição de execução (Valor padrão: 0)

A instrução CTRL_PWM armazena as informações de parâmetro na DB. Os parâmetros dos blocos de dados não são
alterados separadamente pelo usuário, mas são controladas pela instrução CTRL_PWM.

Especifique o gerador de impulsos activo para usar, usando seu nome de marca para o parâmetro PWM. Quando a entrada
EN for TRUE, a instrução PWM_CTRL inicia ou pára o PWM identificado com base no valor da entrada de habilitação.
largura de pulso é especificado pelo valor no endereço de saída palavra Q associado.

Porque a CPU processa o pedido quando a instrução CTRL_PWM é executado, o parâmetro OCUPADO sempre
relatará FALSE. Se for detectado um erro, então ENO está definido para FALSE, e parâmetro de status contém um
código de condição.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 309


instruções estendidas
8.6 pulso

A largura do pulso será definido como o valor inicial configurado na configuração do dispositivo quando o primeiro CPU entra no modo
EXECUTAR. Você escreve valores para o local Q-palavra especificada na configuração do dispositivo ( "endereços de saída" / "Iniciar
endereço:"), conforme necessário para alterar a largura de pulso. Você pode usar uma instrução, como um movimento, converter, matemática,
ou caixa de PID para escrever a largura de pulso desejado para a palavra Q apropriado. Você deve usar o intervalo válido para o valor
Q-palavra (por cento, milésimos, dez milésimos, ou formato analógico S7).

Nota
Digital I / O pontos atribuídos a PWM e PTO não pode ser forçado

Os I / O digitais pontos utilizados pela modulação de largura de impulso (PWM) e a saída de impulso-trem dispositivos (PTO) são
atribuídas durante a configuração do dispositivo. Quando os endereços de ponto de E / S digital são atribuídos a esses dispositivos, os
valores dos endereços / O ponto que eu atribuídos não pode ser modificado pela função de força de mesa Watch.

Tabela 8- 120 valor do parâmetro STATUS

STATUS Descrição

0 nenhum erro

80A1 identificador PWM não trata de uma PWM válido.

Tabela 8- 121 códigos de condição comum

código de condição 1 Descrição

8022 Área muito pequena para entrada

8023 Área muito pequena para a saída

8024 área de entrada ilegal

8025 área de saída ilegal

8028 atribuição de bit de entrada ilegal

8029 atribuição de bit de saída ilegal

8030 área de saída é um read-only DB.

803A O banco de dados não existe.

1
Se um desses erros ocorre quando um bloco de código é executado, a CPU entra no modo de parar a menos que você use as instruções getError ou GetErrorID dentro
desse bloco de código para criar uma reação programada para o erro.

controlador programável S7-1200

310 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
8.6 pulso

8.6.2 Operação das saídas de impulsos

largura do pulso pode ser expresso em centésimos do tempo de ciclo (0 a 100),


como milésimos (0 a 1000), a partir de dez milésimos (0 a 10000), ou como o
formato analógico S7. A largura do pulso pode variar desde 0 (sem pulso, sempre
desligado) a escala completa (sem pulso, sempre ligado).

① tempo de ciclo

② Largura do pulso

Desde a saída PWM pode variar de 0 a escala total, ele fornece uma saída digital que em muitos aspectos é o mesmo que uma saída
analógica. Por exemplo, a saída de PWM pode ser usado para controlar a velocidade de um motor de paragem a toda a velocidade, ou que
pode ser utilizado para controlar a posição de uma válvula da posição fechada para totalmente aberta.

Dois geradores de pulso estão disponíveis para controlar as funções de saída de impulso de alta velocidade: saída PWM e pulso de
trem (PTO). PTO é usado pelas instruções de controle de movimento. Você pode atribuir a cada gerador de pulso, quer PWM ou PTO,
mas não ambos ao mesmo tempo. Os dois geradores de impulsos são mapeados para saídas digitais específicas como mostrado na
tabela a seguir. Você pode usar a bordo saídas de CPU, ou você pode usar as saídas de tabuleiro sinal opcionais. Os números de
ponto de saída são mostradas na tabela seguinte (assumindo a configuração de saída padrão). Se você tiver alterado a numeração
ponto de saída, em seguida, os números de ponto de saída serão aqueles que você atribuiu. Independentemente disso, PTO1 / PWM1
usa as duas primeiras saídas digitais, e PtO2 / PWM2 usa as próximas duas saídas digitais, tanto na CPU ou na placa de sinal
anexado. Note-se que PWM requer apenas uma saída, enquanto PTO pode, opcionalmente, utilizar duas saídas por canal. Se uma
saída não é necessária para a função de pulso, ele está disponível para outros usos.

AVISO PRÉVIO

saídas de pulso-trem não pode ser usado por outras instruções no programa do usuário

Quando você configurar as saídas da placa de CPU ou sinal de como geradores de pulso (para uso com as instruções
PWM ou controle de movimento), os endereços saídas correspondentes (Q0.0, Q0.1, Q4.0 e Q4.1) são removidos da
memória Q e não pode ser usado para outros fins no seu programa de usuário. Se o seu programa de utilizador escreve
um valor a uma saída usado como um gerador de pulso, a CPU não escreve esse valor para a saída física.

Tabela 8- 122 atribuições de saída padrão para os geradores de impulsos

Descrição Pulso Direção

PTO 0

Built-in I / O Q0.0 Q0.1

SB / S Q4.0 Q4.1

PWM 0

saídas built-in Q0.0 -

saídas SB Q4.0 -

PTO 1

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 311


instruções estendidas
8.6 pulso

Descrição Pulso Direção

Built-in I / O Q0.2 Q0.3

SB / S Q4.2 Q4.3

PWM 1

saídas built-in Q0.2 -

saídas SB Q4.2 -

PTO 2

Built-in I / O Q0.4 1 Q0.5 1

SB / S Q4.0 Q4.1

PWM 2

saídas built-in Q0.4 1 -

saídas SB Q4.1 -

PTO 3

Built-in I / O Q0.6 2 Q0.7 2

SB / S Q4.2 Q4.3

PWM 3

saídas built-in Q0.6 2 -

saídas SB Q4.3 -

1 O 1211C CPU não tem saídas Q0.4, Q0.5, Q0.6 ou Q0.7. Portanto, essas saídas

não pode ser usado na 1211C CPU.


2O 1212C CPU não tem saídas Q0.6 ou Q0.7. Portanto, essas saídas não podem ser usados ​em

a 1212C CPU.
3 Esta tabela se aplica ao 1211C CPU, 1212C CPU, 1214c CPU, e 1215c CPU PTO / PWM

funções.

8.6.3 A configuração de um canal de pulso para PWM

Para preparar para a operação de PWM, primeiro configurar um canal de pulso na configuração do dispositivo, seleccionando o
processador central, em seguida, do gerador de impulsos (PTO / PWM), e escolher PWM1 ou PWM2. Ativar o gerador de impulsos
(caixa de seleção). Se um gerador de pulso é ativada, um nome padrão exclusivo é atribuído a este gerador de pulso particular.
Você pode alterar esse nome por editá-lo no "nome:" caixa de edição, mas deve ser um nome exclusivo. Nomes de geradores de
impulsos habilitados vai se tornar marcas na tabela tag "constante", e estará disponível para uso como parâmetro PWM da
instrução CTRL_PWM.

AVISO PRÉVIO

A frequência máxima de impulso dos geradores de impulsos de saída para a saída digital é de 100 KHz (para a CPU), de 20
KHz (para um SB), ou de 200 KHz (para um SB-alta velocidade). No entanto, STEP 7 não alertá-lo quando você configurar
um eixo que com uma velocidade máxima ou a frequência que excede essa limitação hardware. Isso pode causar
problemas com a sua aplicação, por isso sempre garantir que você não exceda a frequência de pulso máxima do hardware.

controlador programável S7-1200

312 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

Você tem a opção de mudar o nome do gerador de pulso, adicionar um comentário, e atribuir parâmetros da seguinte forma:

● gerador de pulso usado da seguinte maneira: PWM ou PTO (escolher PWM)

● fonte de saída: a bordo CPU ou SB

● Time Base: milissegundos ou microssegundos

● Pulso formato largura:

- Centésimos (0 a 100)

- Milésimos (0 a 1000)

- Dez milésimos (0 a 10000)

- formato analógico S7 (0-27648)

● tempo de ciclo: Digite seu valor tempo de ciclo. Este valor só pode ser alterado na configuração do dispositivo.

● largura de pulso inicial: Digite seu valor de largura de pulso inicial. O valor de largura de impulso pode ser mudado durante a
execução.

Digite o endereço de início para configurar os endereços de saída. Digite o endereço de palavra Q onde você deseja localizar o
valor de largura de pulso.

AVISO PRÉVIO

saídas de pulso-trem não pode ser usado por outras instruções no programa do usuário

Quando você configurar as saídas da placa de CPU ou sinal de como geradores de pulso (para uso com as instruções
PWM ou controle de movimento), os endereços saídas correspondentes (Q0.0, Q0.1, Q4.0 e Q4.1) são removidos da
memória Q e não pode ser usado para outros fins no seu programa de usuário. Se o seu programa de utilizador escreve
um valor a uma saída usado como um gerador de pulso, a CPU não escreve esse valor para a saída física.

O local padrão é QW1000 para PWM1 e QW1002 para PWM2. O valor neste local controla a largura do impulso e é inicializado
para a "largura de pulso inicial:" valor especificado acima de cada vez as transições da CPU a partir da paragem de modo
EXECUTAR. Você alterar esse valor Q-palavra durante o tempo de execução para causar uma mudança na largura de pulso.

8,7 Registro de dados

Seu programa de controle pode usar as instruções de registro de dados para armazenar valores de dados em tempo de execução em arquivos de log

persistentes. Os arquivos de log de dados são armazenados na memória flash (CPU ou cartão de memória). Registro de dados de arquivo é armazenado

em CSV padrão (Comma Separated Value). Os registos de dados são organizadas como uma ficheiro de registo circular de um tamanho pré-determinado.

As instruções de registro de dados são usados ​no seu programa para criar, abrir, gravar um registro, e fechar os arquivos de log. Você decide quais
valores programa será registrado através da criação de um buffer de dados que define um único registro de log. Seu buffer de dados é usada como
armazenamento temporário para um novo registro de log. Novos valores de corrente tem de ser movido por meio de programação na memória
intermédia durante o tempo de execução. Quando todos os valores de dados atuais são atualizados, você pode executar a instrução DataLogWrite
para transferir dados a partir do buffer para um registro de log de dados.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 313


instruções estendidas
logging 8,7 Dados

Use o servidor Web PLC built-in para gerenciar seus arquivos de log de dados. Baixar registros recentes, todos os registros, registros claros
ou excluir arquivos de log com a página web padrão "Data Logs". Depois de um arquivo de log de dados são transferidos para o seu PC, então
você pode analisar os dados com ferramentas de planilha padrão como Excel.

8.7.1 estrutura de registro de log de dados

Os parâmetros de dados e cabeçalho da instrução DataLogCreate atribuir o tipo de dados ea descrição cabeçalho da coluna
de todos os elementos de dados em um registro de log.

parâmetro de dados para a instrução DataLogCreate

O parâmetro de dados aponta para a memória usada como um buffer temporário para um novo registro de log e deve ser atribuído a uma
localização M ou DB.

Você pode atribuir um DB inteiro (derivada de um tipo PLC dados que você atribui quando o DB é criada) ou parte de um DB (o elemento
DB especificado pode ser qualquer tipo de dados, tipo de dados estrutura, PLC tipo de dados ou matriz de dados) .

tipos de dados de estrutura são limitados a um único nível de aninhamento. O número total de elementos de dados declarados
deve corresponder ao número de colunas especificadas no parâmetro de cabeçalho. O número máximo de elementos de dados
que você pode atribuir é 253 (com um timestamp) ou 255 (sem um timestamp). Esta restrição mantém seu registro dentro do limite
de 256 colunas de uma folha de Excel.

O parâmetro DATA pode atribuir elementos de dados, quer retentiva ou não-retentiva em um "Standard"
(compatível com S7-300 / 400) ou "Optimized" tipo DB.

Para escrever um registro de log de dados você deve primeiro carregar o registro de dados temporária com novos valores de processo e, em
seguida, executar a instrução DataLogWrite que salva novos valores recordes no arquivo de registro de dados.

parâmetro cabeçalho para a instrução DataLogCreate

Os parâmetros HEADER aponta para nomes de cabeçalho de coluna para a primeira linha da matriz de dados codificada no arquivo CSV.
dados do cabeçalho deve estar localizado na memória DB ou M e os personagens devem seguir as regras padrão de formato CSV com
vírgulas separando cada nome da coluna. O tipo de dados pode ser uma cadeia de caracteres, matriz de bytes, ou matriz de caracteres.
matrizes de caracteres / byte Permitir que o tamanho aumentado, onde as cadeias estão limitados a um máximo de 255 bytes. O parâmetro
de cabeçalho é opcional. Se o cabeçalho não é atribuído, em seguida, sem linha de cabeçalho é criado no arquivo de log de dados.

controlador programável S7-1200

314 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

8.7.2 instruções de programas que controlam registros de dados

8.7.2.1 DataLogCreate

Tabela 8- 123 instrução DataLogCreate

LAD / FBD SCL Descrição


"DataLogCreate_DB" ( Cria e inicializa um arquivo de log de dados. O arquivo é
req: = _ bool_in_, registros: = _ criado no diretório datalogs PLC \, nomeado pelo parâmetro
udint_in_, formato: = _ uint_in_, de nome, e implicitamente aberto para operações de
timestamp: = _ uint_in_, feito => _ gravação. Você pode usar as instruções de registro de

bool_out_, ocupado => _ bool_out_, dados para armazenar programaticamente dados de

erro => _ bool_out_, status => _ processo em tempo de execução na memória flash da

word_out_, name: = _ string_inout_, ID: CPU. STEP 7 cria automaticamente a instância DB


associado ao inserir a instrução.
= _ dword_inout_, cabeçalho: = _
variant_inout_, dados: = _
variant_inout_);

1
No exemplo SCL, "DataLogCreate_DB" é o nome da instância DB.

Tabela 8- 124 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

REQ EM Bool Um baixo para alto do sinal (flanco positivo) inicia a operação. (Valor padrão: False)

REGISTROS EM UDINT O número máximo de dados registra o log de dados circular pode conter antes de substituir a
entrada mais antiga:

O registro de cabeçalho não está incluído. memória de carga PLC disponível suficiente deve existir a
fim de criar com êxito o registo de dados. (Valor predefinido - 1)

FORMATO EM uint formato de registro de dados:

• 0 - Formato interno (não suportado)

• 1 - separados por vírgulas valores "csv-eng" (valor padrão)

TIMESTAMP EM uint tempo de dados formato de selo: Os cabeçalhos das colunas para campos data e hora não são necessários. O carimbo
de tempo utiliza a hora do sistema (Tempo Universal Coordenado
- UTC) e não a hora local.

• 0 - Sem carimbo de tempo

• 1 - Data e hora (valor padrão)

NOME EM Variante Nome de registo de dados: Você fornece o nome. Esta variante suporta apenas um tipo de dados String e só
podem ser localizados em, memória local DB, ou M. (Valor padrão: ' ')

A referência corda também é usado como o nome do arquivo de log de dados. Os caracteres do nome deve
seguir as restrições de nomeação do sistema de arquivos do Windows. Personagens \ / : * ? "<> | E o caractere
de espaço não são permitidos.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 315


instruções estendidas
logging 8,7 Dados

Parâmetro e tipo Tipo de dados Descrição

identidade In / Out DWord registrar dados identificador numérico: Você armazenar este valor gerado para uso com outras instruções
de registro de dados. O parâmetro ID só é usado como uma saída com a instrução DataLogCreate. (Valor
padrão: 0) acesso Nome simbólico para este parâmetro não é permitido.

CABEÇALHO In / Out Variante Ponteiro para nomes de cabeçalho de coluna de registro de dados para a primeira linha da matriz de dados codificada no

arquivo CSV. (Valor predefinido: nula). dados do cabeçalho deve estar localizado na memória DB ou M. Os caracteres

devem seguir as regras padrão de formato CSV com vírgulas separando cada nome da coluna. O tipo de dados pode ser

uma cadeia de caracteres, matriz de bytes, ou matriz de caracteres. matrizes de caracteres / byte Permitir que o tamanho

aumentado, onde as cadeias estão limitados a um máximo de 255 bytes.

O parâmetro de cabeçalho é opcional. Se o cabeçalho não é parametrizado, então nenhuma linha de cabeçalho
é criado no arquivo de log de dados.

DADOS In / Out Variante Apontador para a estrutura de dados de registo, tipo definido de utilizador (UDT), ou matriz. Gravar dados deve
estar localizado na memória DB ou M. O parâmetro de dados especifica os elementos de dados individuais
(colunas) de uma ficha de registo de dados e o seu tipo de dados. tipos de dados de estrutura são limitados a
um único nível de aninhamento. O número de elementos de dados declarados deve corresponder ao número de
colunas especificadas no parâmetro de cabeçalho. O número máximo de elementos de dados que você pode
atribuir é 253 (com um timestamp) ou 255 (sem um timestamp). Esta restrição mantém seu registro dentro do
limite de 256 coluna de uma folha de Excel.

FEITO FORA Bool O bit executado é verdade para uma varredura, após a última solicitação foi concluída com nenhum erro.
(Valor padrão: False)

OCUPADO FORA Bool • 0 - Nenhuma operação em andamento

• 1 - Operação em progresso

ERRO FORA Bool O bit de erro é verdadeiro para uma varredura, após o último pedido foi encerrado com um erro. O
valor do código de erro no parâmetro de status é válido somente durante a única varredura onde
ERROR = TRUE.

STATUS FORA Palavra código de condição de execução (Valor padrão: 0)

Um arquivo de log de dados é criado com um pré-determinado de tamanho fixo com base nos registros e parâmetros de dados. Os
registros de dados são organizados como um arquivo de log circular. Novos registros são anexados ao arquivo de log de dados, até o
número máximo de registros que é especificado pelo parâmetro de registros é armazenada. O próximo registro escrito irá substituir o
registro mais antigo. Outra operação de gravação de gravação irá substituir o registro mais antigo em seguida dados e assim por diante.

Nota

Se você quer evitar substituindo quaisquer registros de dados, então você pode usar a instrução DataLogNewFile para criar um novo registo de
dados com base no registro de dados atual, após o log de dados atual tem armazenado o número máximo de registros. Novos registros de
dados são armazenados no novo arquivo de log de dados. Os antigos dados do arquivo de log de dados e registro permanecem na memória
flash.

controlador programável S7-1200

316 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

o uso de recursos de memória:

● Os registros de dados consomem apenas memória de carga.

● Não há limite definido para o número total de registros de dados. O tamanho de todos os registros de dados combinados é limitada pelos recursos

disponíveis de memória de carga. Apenas oito registros de dados podem ser abertos ao mesmo tempo.

● O número máximo possível para o parâmetro REGISTOS é o limite para um número UDINT (4294967295). O limite
real para o parâmetro RECORD depende do tamanho de um único registro, o tamanho de outros registros de
dados, e os recursos disponíveis de memória de carga. Além disso, o Excel limita o número de linhas permitidos em
uma folha de Excel.

Nota

Uma operação DataLogCreate se estende ao longo de muitos ciclos de varredura do programa. O tempo real necessário para a
criação do arquivo de log depende da estrutura de registro e número de registros. Sua lógica programa deve monitorar e capturar a
transição do bit DataLogCreate feito para o estado TRUE, antes do novo registro de dados pode ser usado para outras operações
de registro de dados.

Tabela 8- 125 Valores de erro e de estado

ERRO Situação (W # 16 # ....) Descrição

0 0000 nenhum erro

0 7000 Chamada sem borda REQ: OCUPADO = 0, FEITO = 0

0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0

0 7002 N º ligar para (de trabalho): OCUPADO = 1, FEITO = 0

1 8070 Toda a memória instância interna está em uso.

1 807F Erro interno

1 8090 Nome de arquivo inválido

1 8091 parâmetro de nome não é uma referência da cadeia.

1 8093 registro de dados já existe.

1 8097 comprimento de arquivo pedida excede o máximo do sistema de arquivos.

1 80B3 memória de carga insuficiente disponível.

1 80B4 MC (Cartridge Memory) é protegido contra gravação.

1 80C1 Muitos arquivos abertos: Não mais do que oito abriu registrar dados arquivos são permitidos.

1 8253 contagem de registro inválido

1 8353 selecção formato inválido

1 8453 selecção timestamp inválido

1 8B24 atribuição área de cabeçalho inválido: Por exemplo, apontando para a memória local

1 8B51 Cabeçalho inválido tipo de dados parâmetro

1 8B52 Muitos elementos de dados parâmetro de cabeçalho

1 8C24 atribuição de área de dados inválidos: Por exemplo, apontando para a memória local

1 8C51 Tipo de dados de parâmetros de dados inválidos

1 8C52 Muitos elementos de dados de parâmetro DATA

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 317


instruções estendidas
logging 8,7 Dados

8.7.2.2 DataLogOpen

Tabela 8- 126 instrução DataLogOpen

LAD / FBD SCL Descrição


"DataLogOpen_DB" ( Abre um arquivo de log de dados pré-existente. Um registro de dados deve ser
req: = _ bool_in_, modo: = _ aberto antes que você pode escrever novos registros para o log. logs de dados pode
uint_in_, feito => _ bool_out_, ser aberta e fechada individualmente. Um máximo de oito registros de dados podem
ocupado => _ bool_out_, erro => _ ser abertos ao mesmo tempo. STEP 7 cria automaticamente a instância DB
bool_out_, status => _ word_out_, associado ao inserir a instrução.

name: = _ string_inout_, ID: = _


dword_inout_);

2
No exemplo SCL, "DataLogOpen_DB" é o nome da instância DB.

Tabela 8- 127 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

REQ EM Bool Um baixo para alto do sinal (flanco positivo) inicia a operação. (Valor padrão: False)

MODO EM uint Modo de operação:

• 0 - Acrescentar ao dados existentes (valor padrão)

• 1 - Limpar todos os registros existentes

NOME EM Variante Nome de um registro de dados existente: Esta variante suporta apenas um tipo de dados String e só podem
ser localizados em, memória local DB, ou M. (Valor padrão: ' ')

identidade In / Out DWord identificador numérico de um registo de dados. (Valor predefinido: 0)

Nota: Acesso nome simbólico para este parâmetro não é permitido.

FEITO FORA Bool O bit executado é verdade para uma varredura, após a última solicitação foi concluída com nenhum erro.
(Valor padrão: False)

OCUPADO FORA Bool • 0 - Nenhuma operação em andamento

• 1 - Operação em progresso

ERRO FORA Bool O bit de erro é verdadeiro para uma varredura, após o último pedido foi encerrado com um erro. O
valor do código de erro no parâmetro de status é válido somente durante a única varredura onde
ERROR = TRUE.

STATUS FORA Palavra código de condição de execução (Valor padrão: 0)

Você pode fornecer o nome ou um (parâmetro ID como uma entrada) ID de um registro de dados pré-existente. Se você
fornecer os dois parâmetros e um ID válido não corresponde ao log de dados de nome, então o ID é usado, eo nome
ignorado.

controlador programável S7-1200

318 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

O nome deve ser o nome de um log de dados criado pela instrução DataLogCreate. Se apenas o nome é fornecida e a NOME
especifica um registo de dados válido, o ID correspondente irá ser devolvido (parâmetro de identificação como uma saída).

Nota
Uso geral de arquivos de log de dados

• arquivos de log de dados são automaticamente abertas depois das operações DataLogCreate e DataLogNewFile.

• arquivos de log de dados são automaticamente fechadas após um PLC prazo para parar de transição ou um ciclo de energia PLC.

• Um arquivo de log de dados deve ser aberto antes de uma nova operação DataLogWrite é possível.

• Um máximo de oito arquivos de log de dados pode ser abertos ao mesmo tempo. log mais de oito dados podem existir arquivos, mas alguns
deles devem ser fechada para que não mais do que oito estão abertas.

Tabela 8- 128 Valores de erro e de estado

ERRO Situação (W # 16 #) Descrição

0 0000 nenhum erro

0 0002 arquivo de log de dados já aberta por este programa aplicativo: Aviso

0 7000 Chamada sem borda REQ: OCUPADO = 0, FEITO = 0

0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0

0 7002 N º ligar para (de trabalho): OCUPADO = 1, FEITO = 0

1 8070 Toda a memória instância interna está em uso.

1 8090 definição de registro de dados é inconsistente com o arquivo de log de dados existente.

1 8091 parâmetro de nome não é uma referência da cadeia.

1 8092 log de dados não existe.

1 80C0 arquivo de log de dados está bloqueado.

1 80C1 Muitos arquivos abertos: Não mais do que oito abriu registrar dados arquivos são permitidos.

8.7.2.3 DataLogClose

Tabela 8- 129 instrução DataLogClose

LAD / FBD SCL Descrição


"DataLogClose_DB" ( Fecha um arquivo de log de dados aberto. operações DataLogWrite a um resultado de
req: = _ bool_in_, feito => _ registro de dados fechada em um erro. Não há operações de gravação são permitidos para

bool_out_, ocupado => _ este log de dados até que outra operação DataLogOpen é realizada.

bool_out_, erro => _ bool_out_,


status => _ word_out_, ID: = _ A transição para o modo de paragem irá fechar todos os arquivos de log de dados aberto.

dword_inout_);
STEP 7 cria automaticamente a instância DB associado ao inserir a
instrução.

2
No exemplo SCL, "DataLogClose_DB" é o nome da instância DB.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 319


instruções estendidas
logging 8,7 Dados

Tabela 8- 130 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

REQ EM Bool Um baixo para alto do sinal (flanco positivo) inicia a operação. (Valor padrão: False)

identidade In / Out DWord identificador numérico de um registo de dados. Apenas usada como uma entrada para a instrução DataLogClose. (Valor
predefinido: 0)

Nota: Acesso nome simbólico para este parâmetro não é permitido.

FEITO FORA Bool O bit executado é verdade para uma varredura após a última solicitação foi concluída com nenhum erro.

OCUPADO FORA Bool • 0 - Nenhuma operação em andamento

• 1- Operação em progresso

ERRO FORA Bool O bit de erro é verdadeiro para uma varredura, após o último pedido foi encerrado com um erro. O
valor do código de erro no parâmetro de status é válido somente durante a única varredura onde
ERROR = TRUE.

STATUS FORA Palavra código de condição de execução (Valor padrão: 0)

Tabela 8- 131 Valores de erro e de estado

ERRO Situação (W # 16 #) Descrição

0 0000 nenhum erro

0 0001 Os dados não log abrir

0 7000 Chamada sem borda REQ: OCUPADO = 0, FEITO = 0

0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0

0 7002 N º ligar para (de trabalho): OCUPADO = 1, FEITO = 0

1 8092 log de dados não existe.

8.7.2.4 DataLogWrite

Tabela 8- 132 instrução DataLogWrite

LAD / FBD SCL Descrição


"DataLogWrite_DB" ( Grava um registro de dados para o registro de dados especificado. O registo de
req: = _ bool_in_, feito => _ dados de destino pré-existente deve ser aberto antes de uma operação
bool_out_, ocupado => _ DataLogWrite é permitido. STEP 7 cria automaticamente a instância DB
bool_out_, erro => _ bool_out_, associado ao inserir a instrução.
status => _ word_out_, ID: = _
dword_inout_);

2
No exemplo SCL, "DataLogWrite_DB" é o nome da instância DB.

controlador programável S7-1200

320 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

Tabela 8- 133 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

REQ EM Bool Um baixo para alto do sinal (flanco positivo) inicia a operação. (Valor padrão: False)

identidade In / Out DWord os dados numéricos identificador de log. Apenas usada como uma entrada para a instrução DataLogWrite. (Valor
predefinido: 0)

Nota: Acesso nome simbólico para este parâmetro não é permitido.

FEITO FORA Bool O bit executado é verdade para uma varredura, após a última solicitação foi concluída com nenhum erro.

OCUPADO FORA Bool • 0 - Nenhuma operação em andamento

• 1 - Operação em progresso

ERRO FORA Bool O bit de erro é verdadeiro para uma varredura, após o último pedido foi encerrado com um erro. O
valor do código de erro no parâmetro de status é válido somente durante a única varredura onde
ERROR = TRUE.

STATUS FORA Palavra código de condição de execução (Valor padrão: 0)

A estrutura de endereço de memória e os dados do buffer de gravação é configurado pelo parâmetro de dados de uma instrução
DataLogCreate. Você deve programaticamente carregar o buffer de registro com os valores atuais de processo em tempo de execução e,
em seguida, executar a instrução DataLogWrite para mover novos dados de registro do buffer para o log de dados.

O parâmetro ID identifica uma configuração de registro de log de dados e dados. O número de identificação é gerada quando um
log de dados é criado.

Se houver registros vazios no arquivo de log de dados circular, em seguida, o próximo registro vazio disponível será escrito. Se todos
os registros estão cheios, o registro mais antigo será substituído.

CUIDADO

Potencial de perda de dados de registro de dados durante uma falha de energia da CPU

Se houver uma falha de energia durante a operação DataLogWrite incompleta, em seguida, o registro de dados que está sendo transferido
para o registo de dados podem ser perdidos.

Tabela 8- 134 Valores de erro e de estado

ERRO Situação (W # 16 #) Descrição

0 0000 nenhum erro

0 0001 Indica que o log de dados está cheio: Cada registro de dados é criado com um número máximo especificado
de registros. O último registro do número máximo foi escrito. A operação de escrita seguinte irá substituir o
registro mais antigo.

0 7000 Chamada sem borda REQ: OCUPADO = 0, FEITO = 0

0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0

0 7002 N º ligar para (de trabalho): OCUPADO = 1, FEITO = 0

1 8070 Toda a memória instância interna está em uso.

1 8092 log de dados não existe.

1 80B0 arquivo de log de dados não é aberta (para o modo aberto explícita apenas).

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 321


instruções estendidas
logging 8,7 Dados

8.7.2.5 DataLogNewFile

Tabela 8- 135 instrução DataLogNewFile

LAD / FBD SCL Descrição


"DataLogNewFile_DB" ( Permite que o programa para criar um novo arquivo de log de
req: = _ bool_in_, registros =: _ dados com base em um arquivo de log de dados existente.
udint_in_, feito => _ bool_out_, STEP 7 cria automaticamente a instância DB associado ao
ocupado => _ bool_out_, erro => inserir a instrução.
_ bool_out_, status => _
word_out_, name =: _
DataLog_out_, ID: = _
dword_inout_);

2
No exemplo SCL, "DataLogNewFile_DB" é o nome da instância DB.

Tabela 8- 136 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

REQ EM Bool Um baixo para alto do sinal (flanco positivo) inicia a operação. (Valor padrão: False)

REGISTROS EM UDINT O número máximo de dados regista o registo de dados circular pode conter antes de substituir a
entrada mais antiga. (Valor predefinido: 1) O registo de cabeçalho não está incluído. memória carga da
CPU disponíveis suficientes deve existir a fim de criar com êxito o registo de dados.

NOME EM Variante Nome de registo de dados: Você fornece o nome. Esta variante suporta apenas um tipo de dados String e só
podem ser localizados em, memória local DB, ou M. (Valor padrão: ' ')

A referência corda também é usado como o nome do arquivo de log de dados. Os caracteres do nome deve
seguir as restrições de nomeação do sistema de arquivos do Windows. Personagens \ / : * ? "<> | E o caractere
de espaço não são permitidos).

identidade In / Out DWord identificador de log de dados numéricos (Valor padrão: 0):

• Na execução, a entrada ID identifica um registro de dados válido. A nova configuração de registro de dados é

copiado a partir deste registro de dados.

• Após a execução, o parâmetro ID torna-se uma saída que retorna o ID do arquivo de log de
dados recém-criado.
Nota: Acesso nome simbólico para este parâmetro não é permitido.

FEITO FORA Bool O bit executado é verdade para uma varredura, após a última solicitação foi concluída com nenhum erro.

OCUPADO FORA Bool • 0 - Nenhuma operação em andamento

• 1 - Operação em progresso

ERRO FORA Bool O bit de erro é verdadeiro para uma varredura, após o último pedido foi encerrado com um erro. O
valor do código de erro no parâmetro de status é válido somente durante a única varredura onde
ERROR = TRUE.

STATUS FORA Palavra código de condição de execução (Valor padrão: 0)

controlador programável S7-1200

322 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

Você pode executar a instrução DataLogNewFile quando um log de dados ficar cheia ou se considera concluída e você não quer perder todos os
dados que são armazenados no log de dados. Um novo arquivo de log de dados vazio pode ser criado com base na estrutura do arquivo de log
de dados completo. O registo de cabeçalho será duplicada a partir do registo de dados original com as propriedades do registo de dados
originais (buffer de dados de registo, o formato de dados e definições timestamp). O arquivo de log de dados original é implicitamente fechado eo
novo arquivo de log de dados é implicitamente aberto.

DataLogWrite gatilho parâmetro: O programa deve monitorar os parâmetros de erro eo status de cada operação DataLogWrite.
Quando o registro final é escrita e um log de dados está cheio, o erro bit DataLogWrite = 1 eo estado DataLogWrite palavra = 1.
Estes valores erro e de estado são válidos para uma varredura apenas, portanto, a sua lógica de monitoramento deve usar
ERROR = 1 como um janela de tempo para capturar o valor de estado e, em seguida, para testar ESTADO = 1 (o registo de
dados está cheia).

operação DataLogNewFile: Quando a sua lógica do programa fica o registo de dados é sinal completo, este estado é usado para ativar uma
operação DataLogNewFile. Você deve executar DataLogNewFile com o ID de um registro de dados existente (geralmente cheio) e aberto,
mas um novo parâmetro de nome único. Após a operação DataLogNewFile é feito, um novo valor de registro de dados ID é retornado
(como um parâmetro de saída) que corresponde ao nome de registrar os novos dados. O novo arquivo de log de dados é implicitamente
aberto e está pronto para armazenar novos registros. Novas operações DataLogWrite que são direcionados para o novo arquivo de log de
dados, deve usar o valor ID retornado pela operação DataLogNewFile.

Nota

Uma operação DataLogNewFile se estende ao longo de muitos ciclos de varredura do programa. O tempo real necessário para a criação
do arquivo de log depende da estrutura de registro e número de registros. Sua lógica programa deve monitorar e capturar a transição do
bit DataLogNewFile feito para o estado TRUE, antes do novo registro de dados pode ser usado para outras operações de registro de
dados.

Tabela 8- 137 Valores de erro e de estado

ERRO Situação (W # 16 #) Descrição

0 0000 nenhum erro

0 7000 Chamada sem borda REQ: OCUPADO = 0, FEITO = 0

0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0

0 7002 N º ligar para (de trabalho): OCUPADO = 1, FEITO = 0

1 8070 Toda a memória instância interna está em uso.

1 8090 Nome de arquivo inválido

1 8091 parâmetro de nome não é uma referência da cadeia.

1 8092 log de dados não existe.

1 8093 registro de dados já existe.

1 8097 comprimento de arquivo pedida excede o máximo do sistema de arquivos.

1 80B3 memória de carga insuficiente disponível.

1 80B4 MC está protegido contra gravação.

1 80C1 Muitos arquivos abertos.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 323


instruções estendidas
logging 8,7 Dados

8.7.3 Trabalhando com registros de dados

Os arquivos de log de dados são armazenados como formato de valores separados por vírgulas (* .csv) na memória flash persistente.
Você pode ver os registros de dados usando o recurso de servidor Web PLC ou removendo o cartão de memória do PLC e inseri-lo em
um leitor de cartão de PC padrão.

Exibição de registros de dados com o recurso de servidor Web PLC

Se a porta PROFINET PLC e um PC estiver conectado a uma rede, então você pode usar um navegador PC web como o Microsoft
Internet Explorer ou o Mozilla Firefox para acessar o servidor Web PLC embutido. O PLC pode estar em modo de execução ou modo de
parada quando você operar o servidor Web PLC. Se o PLC está em modo de execução, em seguida, seu programa de controle
continua a executar enquanto o servidor Web PLC está transferindo dados de registro através da rede. acesso ao servidor Web:

1. Ativar o servidor Web na configuração do dispositivo para a CPU de destino (página 504).

2. Ligue o seu PC ao PLC através da rede PROFINET (página 505).

3. Efetue login no servidor Web embutido (página 506).

4. Faça o download dos registros recentes, todos os registros, registros claros ou excluir arquivos de log com o "Data
Log" página web padrão (página 516).

5. Depois de uma cópia de um arquivo de log de dados é baixado para o seu PC, você pode abrir o arquivo .csv com uma

aplicativo de planilhas como o Excel.

Exibição de registros de dados em um cartão de memória do PLC

Se o S7-1200 CPU tem um tipo de "Programa" cartão S7-1200 de memória inserido, então você pode remover o cartão de memória
e inserir o cartão em um padrão SD (Secure Digital) ou MMC slot para cartão (MultiMediaCard) em um PC ou PG . O PLC está em
modo de paragem quando o cartão de memória é removido e seu programa de controle não é executado.

Use o Windows File Explorer e navegue até o diretório \ DataLog no cartão de memória. arquivos de log de dados CSV todo o
seu \ *. estão localizados neste diretório.

Faça uma cópia dos arquivos de log de dados e colocar as cópias em uma unidade local do seu PC. Então, você pode usar o Excel para abrir
uma cópia local de um arquivo * .csv e não o arquivo original que está armazenado no cartão de memória.

CUIDADO

Você pode copiar, mas não modificar ou excluir arquivos de log de dados em um cartão de memória S7-1200 usando um leitor de cartão PC

A página de log de dados do servidor Web padrão é a ferramenta recomendada para visualização, download (cópia), limpar (excluir os
dados), e excluir arquivos de log de dados. O servidor Web gerencia os arquivos do cartão de memória para você e ajuda a impedir a
modificação acidental ou supressão de dados. navegação direta do sistema de arquivos do cartão de memória, o Windows Explorer tem
o risco de que você pode acidentalmente excluir / modificar log de dados ou outros arquivos de sistema que pode corromper um arquivo
ou fazer o cartão de memória inutilizável.

controlador programável S7-1200

324 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

Exibição de registros de dados a partir de um navegador da Web

Mesmo se você não usar o recurso de servidor Web, você pode visualizar os registos de dados diretamente de um navegador
Web, como o Internet Explorer ou Mozilla Firefox. Basta digitar o seguinte texto na barra de endereços do seu navegador,
usando o endereço IP do seu CPU e o nome real do arquivo de log de dados fornecido na etapa 7 em vez de "MyDataLog":

http://192.168.0.1/DataLog.html?FileName=MyDataLog.csv

Os endereços fixos de arquivos de log de dados também torná-lo possível acessá-los através de ferramentas de coleta de arquivo de terceiros.

8.7.4 Limites para o tamanho dos arquivos de log de dados

arquivos de log de dados dividir o espaço PLC memória de carga com o programa, dados do programa, dados de configuração, páginas da web
definidos pelo usuário, e dados do sistema PLC. Um grande programa usando a memória interna da carga requer uma grande quantidade de
memória de carga e pode haver espaço livre suficiente para arquivos de log de dados. Neste caso, você pode usar um "cartão de programa" para
aumentar o tamanho da memória de carga. S7-1200 CPUs pode usar memória de carga interno ou externo, mas não ambos ao mesmo tempo.

Consulte o capítulo cartão de memória para obter detalhes sobre como criar um cartão "Programa" (página 112).

regra tamanho máximo de arquivo de log de um Data

O tamanho máximo de um ficheiro de registo de dados não pode exceder 25% do tamanho da memória de carga (interno ou externo). Se a sua
aplicação requer mais entradas de registro de dados, então use a instrução "DataLogNewFile" para criar um novo arquivo quando todos os
registros no primeiro arquivo são preenchidos. Consulte a tabela abaixo para os tamanhos máximos de arquivo de log de um Data.

Tamanho da tabela 8- memória 138 de carga e tamanho máximo de arquivo de log de um Data

área de dados CPU 1211C CPU 1214c 1212C CPU 1215c CPU Armazenamento de dados

memória carga interna 1 MB (250 KB máx. 1 MB (250 KB máx. 4 MB (500 KB máx. Para o 4 MB (500 KB máx. Para o programa do usuário e do

memória flash Para o arquivo de log Para o arquivo de log arquivo de log de dados) arquivo de log de dados) programa de dados, dados de

de dados) de dados) configuração, registros de dados,

pelo usuário páginas da Web

definidos, e dados do sistema


memória carga externa 2 MB, 12 MB ou 24 MB, dependendo do tamanho do cartão SD (500 KB máx. Para o
PLC
cartões de memória flash "cartão do arquivo de log de dados utilizando um cartão de 2 MB) (6 MB max. De arquivo de log de

programa" opcionais um Dados usando um cartão de 24 MB)

Determine o tamanho do espaço livre de memória de carga

1. Estabelecer uma ligação online entre STEP 7 e o alvo S7-1200 PLC.

2. Faça o download do programa para o qual você deseja adicionar operações de registro de dados.

3. Criar páginas web definidos pelo usuário opcionais que você precisa. (As páginas web padrão
que dará acesso a registros de dados são armazenados no firmware PLC e não usam memória de carga).

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 325


instruções estendidas
logging 8,7 Dados

4. Use as ferramentas on-line e de diagnóstico para obter o tamanho de memória de carga e percentagem de livre
espaço de memória de carga (página 680).

5. Multiplique o tamanho da memória de carga pela percentagem que é livre de obter a carga atual
memória espaço livre.

regra tamanho máximo para todos os registros de dados combinados

A quantidade de espaço livre de memória de carga varia durante as operações normais, como o sistema operacional usa e libera memória.
Você deve limitar o tamanho combinado de todos os arquivos de log de dados para uma metade do espaço livre disponível.

Calcular o requisito de memória para um único registro de registro de dados

Log dados são armazenados como bytes de caracteres no CSV (valores separados por vírgulas) formato de arquivo. A seguinte tabela mostra
o número de bytes que são necessárias para armazenar cada tipo de dados.

Tabela 8- tamanhos de dados de arquivo CSV 139

Tipo de Dados Número de bytes (bytes de dados mais separador de vírgula byte)

Bool 2
Byte 5
Palavra 7
DWord 12
Caracteres 4
Corda Exemplo 1: MyString [10]
O tamanho máximo da string é atribuído como 10 caracteres. Os caracteres de texto
estofamento + automática com caracteres em branco = 10 bytes de abertura e de fecho duplos
aspas + vírgula três bytes = 10 + 3 = 13 bytes no total

Exemplo 2: Mystring2
Se nenhum tamanho é atribuído com colchetes, em seguida, 254 bytes é atribuído por padrão.

Os caracteres de texto estofamento + automática com caracteres em branco = 254 bytes de


abertura e de fecho duplos aspas + = vírgula três bytes 254 + 3 = 257 bytes no total

SINA 5
uint 7
UDINT 12
Sint 5
int 7
Força 12
Real 16
LREAL 25
Tempo 15
DTL 24

controlador programável S7-1200

326 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

Os parâmetros DataLogCreate dados apontam para uma estrutura que especifica o número de campos de dados e do tipo de dados de
cada campo de dados para a ficha de registo de dados um. As tabelas acima dão os bytes necessários no arquivo CSV para cada tipo
de dados. Multiplicar o número de ocorrências de um determinado tipo de dados pelo número de bytes que requer. Faça isso para cada
tipo de dados no registro e somar o número de bytes para obter o tamanho total do registro de dados. Adicionar um byte para o
caractere de fim de linha.

Tamanho de um registo de dados de registo = somatório de bytes necessários para todos os campos de dados + 1 (o sinal de fim de linha).

Calcular os requisitos de memória para um arquivo de log de dados inteiro

O parâmetro registros da instrução DataLogCreate define o número máximo de registros em um arquivo de log de dados.
Quando o arquivo de log de dados é criado o tamanho máximo de memória é alocada.

Tamanho do arquivo de log de dados = (número de bytes em um registro) x (número de registros).

8.7.5 registrar dados exemplo de programa

Este exemplo de programa de registro de dados não mostra toda a lógica do programa necessário para obter valores de amostra a partir de
um processo dinâmico, mas mostra as operações de teclas das instruções de registro de dados. A estrutura e número de arquivos de log que
você usa depende de suas necessidades de controle de processo.

Nota
Uso geral de arquivos de log de dados

• arquivos de log de dados são automaticamente abertas após as operações de arquivo DataLogCreate e DataLogNew.

• arquivos de log de dados são automaticamente fechadas após um PLC prazo para parar de transição ou um ciclo de energia PLC.

• Um arquivo de log de dados deve ser aberto antes de uma operação DataLogWrite é possível.

• Um máximo de oito arquivos de log de dados pode ser abertos ao mesmo tempo. log mais de oito dados podem existir arquivos, mas alguns
deles devem ser fechada para que não mais do que oito estão abertas.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 327


instruções estendidas
logging 8,7 Dados

programa log Exemplo Dados

Exemplo de Nomes de log de dados, texto de cabeçalho, e a estrutura MeusDados são criados num bloco de dados. As três variáveis
​mydata armazenar temporariamente novos valores de amostra. Os valores de amostra processo nestes locais DB são transferidos para
um arquivo de log de dados executando a instrução DataLogWrite.

rede 1 REQ borda de subida inicia o processo de criação de log de dados.

rede 2 Capturar a saída feito a partir DataLogCreate porque é válida apenas para uma varredura.

controlador programável S7-1200

328 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

rede 3 Um sinal positivo borda desencadeada quando a armazenar novos valores de processo na estrutura MeusDados.

rede 4 O estado de entrada EN baseia-se quando a operação DataLogCreate está completa. A operação de criação se estende ao
longo de muitos ciclos de digitalização e deve ser completa antes de executar uma operação de gravação. O sinal de flanco positivo na
entrada REQ é o evento que desencadeia uma operação de gravação habilitado.

rede 5 Feche o registro de dados uma vez que o último registro foi escrito. Depois de executar a operação DataLogWrite que
escreve o último registro, o arquivo de log status completo é sinalizado quando DataLogWrite saída STATUS = 1.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 329


instruções estendidas
logging 8,7 Dados

rede 6 A borda sinal positivo de entrada DataLogOpen REQ simula o usuário apertar um botão em um HMI que abre um arquivo de log de
dados. Se você abrir um arquivo de log de dados que tem todos os registros preenchidos com dados de processo, em seguida, a próxima
operação DataLogWrite irá substituir o registro mais antigo. Você pode querer preservar o log de dados de idade e, em vez criar um novo
registro de dados, como mostrado na rede 7.

rede 7 O parâmetro ID é um tipo de IN / OUT. Primeiro, você fornecer o valor ID do log de dados existente, cuja estrutura que você
deseja copiar. Após a operação DataLogNewFile estiver concluída, uma nova e única valor de identificação para o novo registro de
dados é escrito de volta para o local de referência ID. O necessário pouco FEITO = captura VERDADEIRA não é mostrado,
referem-se a redes 1, 2, e 4 para um exemplo de lógica bit feito.

controlador programável S7-1200

330 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
logging 8,7 Dados

arquivos de log de dados criados pelo exemplo de programa visto com o servidor web CPU S7-1200

Tabela 8- 140 Transferido exemplos arquivo .csv visto com Excel Dois registros escritos

em um arquivo máximo cinco recorde

Cinco registros em um arquivo de log de dados com um máximo de

cinco recorde

Depois de um registro adicional é escrito para o arquivo acima


que está cheio, a sexta operação de gravação substitui o registro
mais antigo um com registro de seis. Outra operação de
gravação irá substituir registro dois com recorde de sete e assim
por diante.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 331


instruções estendidas
bloco de controlo 8.8 Dados

8,8 controlo bloco de dados

8.8.1 READ_DBL, WRIT_DBL (ler ou escrever para um DB na memória de carga)

Tabela 8- 141 instruções READ_DBL e WRIT_DBL

LAD / FBD Descrição


READ_DBL ( Cópias DB começar valores ou parte dos valores, da
req: = _ bool_in_, srcblk: = _ memória de carga para um DB-alvo na memória de
variant_in_, ocupado => _ trabalho. O conteúdo da memória de carga não é
bool_out_, dstblk => _ variant_out_); alterado durante o processo de cópia.

WRIT_DBL ( Cópias DB valores atuais ou parte dos valores da


req: = _ bool_in_, srcblk: = _ memória de trabalho para um alvo DB na memória de
variant_in_, ocupado => _ carga. O conteúdo da memória de trabalho não é
bool_out_, dstblk => _ variant_out_); alterado durante o processo de cópia.

Tabela 8- 142 tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

REQ EM BOOL Um sinal de alta inicia a operação, se OCUPADO = 0.

SRCBLK EM VARIANTE READ_DBL: Ponteiro para o bloco de dados de origem em WRIT_DBL memória de carga: Ponteiro

para o bloco de dados de origem na memória de trabalho

RET_VAL FORA INT código de condição de execução

OCUPADO FORA BOOL OCUPADO = 1 sinais de que o processo de escrita / leitura não está completa.

DSTBLK FORA VARIANTE READ_DBL: Ponteiro para o bloco de dados destino em WRIT_DBL memória de trabalho:

ponteiro para o bloco de dados de destino na memória de carga

controlador programável S7-1200

332 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
bloco de controlo 8.8 Dados

Normalmente, um DB é armazenada tanto na memória de carga (flash) e memória de trabalho (RAM). Os valores iniciais (valores iniciais) são
sempre armazenados na memória de carga, e os valores actuais são sempre armazenados na memória de trabalho. READ_DBL pode ser usado
para copiar um conjunto de valores de início da memória de carga para os valores atuais de um DB na memória de trabalho que é referenciado
pelo seu programa. Você pode usar WRIT_DBL para atualizar os valores de início armazenados na memória de carga interna ou no cartão de
memória de valores de corrente na memória de trabalho.

Nota
Evite operações de gravação de memória flash WRIT_DBL excessiva

A instrução WRIT_DBL realiza operações em memória flash (memória de carga interna ou cartão de memória) escrever. WRIT_DBL
deve ser usado para atualizações infreqüentes como um processo de produção mudanças.

Os blocos de dados usados ​por READ_DBL e WRIT_DBL deve ter sido previamente criado por STEP 7 antes de usar estas
instruções. Se a fonte de DB é criado como um tipo de "padrão", em seguida, o DB de destino também devem ser do tipo
"standard". Se o bloco de dados de origem é criado como um tipo de "otimizado", em seguida, o bloco de dados de destino
também devem ser do tipo "otimizado".

Se os bancos de dados são padrão, então você pode especificar um nome de tag ou um valor P #. O # valor P permite que você especifique e
copiar qualquer número de elementos do tamanho especificado (Byte, Word ou DWORD). Assim, você pode copiar parte ou a totalidade de um
DB. Se os bancos de dados são otimizados, você pode especificar apenas um nome de marca; você não pode usar o operador P #. Se você
especificar um nome de marca para bancos de dados, quer padrão ou otimizados (ou para outros tipos de memória de trabalho), então o que é
referenciada por este nome tag é copiado. Isto poderia ser um tipo definido pelo utilizador, uma matriz, ou um elemento de base. Tipo struct só
pode ser usado por estas instruções se a DB é padrão, não otimizado. Você deve usar um tipo definido pelo usuário (UDT) se é uma estrutura
na memória otimizada. Apenas um tipo definido pelo usuário garante que os "tipos de dados" são exatamente os mesmos, tanto para a fonte e
as estruturas de destino.

Nota
Usando uma estrutura (tipo de dados Struct) em um DB "optimizado"

Ao usar um tipo de dados estrutura com "optimzed" DBs, você deve primeiro criar um tipo de dados definido pelo usuário (UDT) para a
estrutura. Você, então, configurar ambos os bancos de dados de origem e de destino com a UDT. A UDT assegura que os tipos de dados
dentro do Struct permanecer coerente para ambos os bancos de dados.

Para "padrão" DBs, você usa a estrutura sem criar um UDT.

READ_DBL e WRIT_DBL executar de forma assíncrona à varredura do programa cíclica. O processamento se estende por
várias chamadas READ_DBL e WRIT_DBL. Você iniciar o trabalho de transferência DB chamando com REQ = 1 e, em seguida,
monitorar as saídas ocupado e RET_VAL para determinar quando a transferência de dados é completa e exacta.

Para garantir a consistência dos dados, não modifique a área de destino durante o processamento de READ_DBL ou área de
origem durante o processamento de WRIT_DBL (isto é, desde que o parâmetro OCUPADO é TRUE).

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 333


instruções estendidas
bloco de controlo 8.8 Dados

SRCBLK e DSTBLK restrições de parâmetro:

● Um bloco de dados devem ter sido previamente criado antes que possa ser referenciado.

● O comprimento de um ponteiro variante do tipo BOOL deve ser divisível por 8.

● O comprimento de um ponteiro variante do tipo STRING deve ser o mesmo nos ponteiros origem e destino.

Receitas e configuração da máquina informações

Você pode usar as instruções READ_DBL e WRIT_DBL para gerir receitas ou informações de configuração da máquina. Isto torna-se
essencialmente um outro método de obtenção de dados retentivos para valores que não mudam frequentemente, embora você
gostaria de limitar o número de gravações para evitar desgaste o flash prematuramente. Isso efetivamente permite que você aumente
a quantidade de memória retentiva além disso suportado para os dados retentivos poder-down normais, pelo menos para valores que
não mudam frequentemente. Você pode salvar informações de receita ou informações de configuração máquina- da memória de
trabalho para carregar memória usando a instrução WRIT_DBL, e você pode recuperar essa informação da memória de carga na
memória de trabalho usando a instrução READ_DBL.

Tabela 8- 143 códigos de condição

RET_VAL (W # Descrição

16 # ...)

0000 nenhum erro

0081 Aviso: a de que a área de origem é menor do que a área de destino. Os dados de origem são copiados completamente com
os bytes extras na área de destino inalterado.

7000 Chamada com REQ = 0: OCUPADO = 0

7001 Primeira chamada com REQ = 1 (de trabalho): OCUPADO = 1

7002 N º chamar (de trabalho): OCUPADO = 1

8051 erro de tipo bloco de dados

8081 A área de origem é maior do que a área de destino. A área de destino é completamente preenchida e os bytes restantes da
fonte são ignoradas.

8251 erro fonte de dados tipo de bloco

82B1 bloco de dados fonte ausente

82C0 O DB fonte está sendo editado por outra declaração ou uma função de comunicação.

8551 erro destino de dados tipo de bloco

85B1 bloco de dados de destino ausente

85C0 O DB destino está sendo editado por outra declaração ou uma função de comunicação.

80C3 Mais de 50 READ_DBL ou 50 WRIT_DBL declarações estão atualmente na fila para execução.

controlador programável S7-1200

334 Manual do sistema, 04/2012, A5E02486680-06


instruções estendidas
8.9 códigos de erro comuns para as instruções de "extended"

8,9 códigos de erro comuns para as instruções de "extended"

Tabela 8- 144 códigos de condição comuns para as instruções estendidos

código de condição (W # 16 # ....) 1 Descrição

8022 Área muito pequena para entrada

8023 Área muito pequena para a saída

8024 área de entrada ilegal

8025 área de saída ilegal

8028 atribuição de bit de entrada ilegal

8029 atribuição de bit de saída ilegal

8030 área de saída é um read-only DB.

803A O banco de dados não existe.

1
Se um desses erros ocorre quando um bloco de código é executado a CPU entra no modo de parar, a menos que você use as instruções getError ou
GetErrorID dentro desse bloco de código e criar uma reação programada para o erro.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 335


instruções estendidas
8.9 códigos de erro comuns para as instruções de "extended"

controlador programável S7-1200

336 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia 9
9.1 contador de alta velocidade

Tabela 1 9- instrução CTRL_HSC

LAD / FBD SCL Descrição


"CTRL_HSC_0_DB" ( Cada instrução CTRL_HSC usa uma estrutura armazenada em um banco de
HSC: = _ hw_hsc_in_, dir: = _ dados para manter os dados. Você atribui o DB quando a instrução CTRL_HSC
bool_in_, CV: = _ bool_in_, rv: = _ é colocado no editor.

bool_in_, período: = _ bool_in_,


novo_dir: = _ int_in_, new_cv: = _
int_in_, new_rv: = _ dint_in_,
new_period: = _ int_in_,
ocupado: = _ bool_out_, status: =
_ word_out_);

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "CTRL_HSC_0_DB" é o nome da instância DB.

Quadro 9- dois tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

HSC EM HW_HSC identificador HSC

DIR 1, 2 EM Bool 1 = Pedir uma nova direção

cv 1 EM Bool 1 = Pedido para definir novo valor do contador

RV 1 EM Bool 1 = Pedido de constituição novo valor de referência

PERÍODO 1 EM Bool 1 = Pedido de constituição novo valor do período (apenas para o


modo de medição de frequência)

new_dir EM int Nova direcção: 1 = para a frente, para trás -1 =

NEW_CV EM Força Novo valor do contador

NEW_RV EM Força Novo valor de referência

NEW_PERIOD EM int valor novo período em segundos: 0,01, 0,1, ou 1 (apenas para o
modo de medição de frequência)

OCUPADO 3 FORA Bool Função é ocupada

STATUS FORA Palavra código de condição de execução

1
Se uma atualização de um valor de parâmetro não é solicitada, então os correspondentes valores de entrada são ignorados.

2 O parâmetro DIR só é válida se o sentido da contagem configurada é definido como "programa do usuário (controle de direção interna)".

Você determina como usar este parâmetro na configuração do dispositivo HSC.


3 Para uma HSC na CPU ou na SB, o parâmetro OCUPADO sempre tem um valor de 0.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 337


instruções de tecnologia
contra 9.1 de alta velocidade

De configurar os parâmetros para cada HSC na configuração do dispositivo para a CPU: modo de contagem, conexões I / O, a
atribuição de interrupção, e a operação como um contador de alta velocidade ou como um dispositivo para medir a frequência
de pulso.

Alguns dos parâmetros para o HSC pode ser modificado pelo seu programa de usuário para fornecer o controle do programa do
processo de contagem:

● Definir o sentido de contagem para um valor new_dir

● Defina o valor de contagem atual para um valor NEW_CV

● Defina o valor de referência para um valor NEW_RV

● Definir o valor do período (para o modo de medição da frequência) para um valor NEW_PERIOD Se os seguintes valores
booleanos bandeira está definido para 1 quando a instrução CTRL_HSC é executada, o valor NEW_xxx correspondente é
carregado para o contador. Vários pedidos (mais de um sinalizador é definido ao mesmo tempo) são processados ​em uma única
execução da instrução CTRL_HSC.

● DIR = 1 é um pedido para carregar um valor new_dir, 0 = nenhuma mudança

● CV = 1 é um pedido para carregar um valor NEW_CV, 0 = nenhuma mudança

● RV = 1 é um pedido para carregar um valor NEW_RV, 0 = nenhuma mudança

● PERÍODO = 1 é um pedido para carregar um valor NEW_PERIOD, 0 = sem alterar A instrução CTRL_HSC é
normalmente colocado em um OB interrupção de hardware que é executado quando o evento do contador hardware
interrupção é disparada. Por exemplo, se um evento CV = RV acciona o contador de interrupção, em seguida, um bloco
de código OB interrupção de hardware executa a instrução CTRL_HSC e pode alterar o valor de referência através do
carregamento de um valor NEW_RV. O valor de contagem atual não está disponível nos parâmetros CTRL_HSC. O
endereço de imagem do processo que armazena o valor de contagem atual é atribuído durante a configuração do
contador de alta velocidade hardware. Você pode usar a lógica do programa para ler diretamente o valor da contagem.
O valor retornado para seu programa será uma contagem correta para o instante em que o contador foi lido. O contador
continuará a contagem de eventos de alta velocidade. Assim sendo,

códigos de condição: No caso de um erro, ENO é definido como 0, e a saída de estado contém um código de condição.

Quadro 9- 3 valores de estado (W # 16 #)

STATUS Descrição

0 nenhum erro

80A1 identificador de HSC não trata de uma HSC

80B1 Valor ilegal em new_dir

80B2 Valor ilegal em NEW_CV

80B3 Valor ilegal em NEW_RV

80B4 Valor ilegal em NEW_PERIOD

80C0 acesso múltiplo ao contador de alta velocidade

80D0 contador de alta velocidade (HSC) não habilitado na configuração de hardware CPU

controlador programável S7-1200

338 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
contra 9.1 de alta velocidade

9.1.1 Operação do contador de alta velocidade

O contador de alta velocidade (HSC) conta eventos que ocorrem mais rapidamente do que a taxa de execução OB. Se os eventos a
serem contados ocorrer dentro a taxa de execução do OB, você pode usar instruções de contador CTU, CTD, ou CTUD. Se os eventos
ocorrem mais rapidamente do que a taxa de execução OB, em seguida, usar o HSC. A instrução CTRL_HSC permite que seu programa
do usuário para alterar programaticamente alguns dos parâmetros HSC.

Por exemplo: Você pode usar o HSC como uma entrada para um codificador de eixo incremental. O codificador de eixo proporciona um
determinado número de contagens por revolução e um impulso de reposição que ocorre uma vez por rotação. O relógio (s) e o impulso
de reposição do codificador de eixo proporcionar as entradas para a HSC.

O HSC é carregado com o primeiro de vários pré-ajustes, e as saídas são activados para o período de tempo em que a contagem de
corrente é menor do que a corrente predefinida. O HSC fornece uma interrupção quando a contagem atual é igual ao predefinido,
quando redefinição ocorre, e também quando há uma mudança de direção.

Como cada contagem de valor de corrente é igual a pré-ajuste de valor evento de interrupção ocorre, uma nova predefinição é carregado e o

próximo estado para as saídas é definido. Quando o evento de reposição interrupção ocorre, na primeira memória e os primeiros estados de saída

são definidas, e o ciclo é repetido. Desde as interrupções ocorrem em uma taxa muito mais baixa do que a taxa de contagem do HSC, controle

preciso de operações de alta velocidade pode ser implementado com relativamente menor impacto ao ciclo de varredura da CPU. O método de

fixação de interrupção permite que cada carga de uma nova memorizada a ser realizada em uma rotina de interrupção para o controlo separado

estado fácil. (Alternativamente, todos os eventos de interrupção podem ser processadas em uma rotina de interrupção único.)

Tabela 4 9- frequência máxima (KHz)

HSC Fase única Duas fases e AB quadratura

HSC1 CPU 100 KHz 80 KHz

De alta velocidade SB 200 KHz 160 KHz

SB 30 KHz 20 KHz

HSC2 CPU 100 KHz 80 KHz

De alta velocidade SB 200 KHz 160 KHz

SB 30 KHz 20 KHz

HSC3 CPU 100 KHz 80 KHz

HSC4 CPU 30 KHz 20 KHz

HSC5 CPU 30 KHz 20 KHz

De alta velocidade SB 200 KHz 160 KHz

SB 30 KHz 20 KHz

HSC6 CPU 30 KHz 20 KHz

De alta velocidade SB 200 KHz 160 KHz

SB 30 KHz 20 KHz

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 339


instruções de tecnologia
contra 9.1 de alta velocidade

Selecionando a funcionalidade para o HSC

Todos os HSCs funcionar da mesma forma para o mesmo modo de contador de operação. Há quatro tipos básicos de HSC:

● contra-fase única com controlo de direcção interno

● contra-fase única com controlo de direcção externa

● contador de duas fases com 2 entradas de relógio

● A / B contador de quadratura de fase

Você pode usar cada tipo HSC com ou sem uma entrada de reset. Quando você ativar a entrada de reset (com algumas
restrições, consulte a tabela a seguir), o valor atual é apagada e segurou claro até que você desativar a entrada de reset.

● função de freqüência: Alguns modos HSC permitir que o HSC para ser configurado (Tipo de contagem) para relatar a
frequência em vez de uma contagem atual de pulsos. Três períodos de medição de frequência diferentes estão
disponíveis: 0.01, 0.1, ou 1.0 segundos. A freqüência período de medição determina quantas vezes o HSC calcula e
relata um novo valor de frequência. A frequência relatada é um valor médio, determinado pelo número total de contagens
no último período de medição. Se a frequência está a mudar rapidamente, o valor relatado vai ser um intermediário entre
a frequência mais alta e mais baixa a ocorrer durante o período de medição. A frequência é sempre indicadas em Hertz
(pulsos por segundo), independentemente da definição-período de medição de frequência.

● modos de contagem e entradas: A tabela a seguir mostra as entradas utilizadas para o relógio, de controlo de
direcção, e repor as funções associadas com a HSC.

A mesma entrada não pode ser utilizado para duas funções diferentes, mas qualquer entrada de não ser utilizado pelo presente
modo da sua HSC pode ser usado para outra finalidade. Por exemplo, se HSC1 está num modo que utiliza entradas embutidos mas
não usa o reset externo (I0.3), em seguida, I0.3 pode ser utilizado para interrupções de borda ou para HSC2.

Tabela 5 9- modos de contagem para HSC

Tipo entrada 1 entrada 2 entrada 3 Função

contra-fase única com controlo de direcção Relógio (Opcional: - Contagem ou a frequência

interno direção) Restabelecer Contagem

contra-fase única com controlo de direcção Relógio Direção - Contagem ou a frequência

externa Restabelecer Contagem

contador de duas fases com 2 entradas de relógio relógio até relógio para baixo - Contagem ou a frequência

Restabelecer Contagem

Um contador de quadratura / B-fase fase A fase B - Contagem ou a frequência

Restabelecer 1 Contagem

1 Para um codificador: Fase Z, Casa

controlador programável S7-1200

340 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
contra 9.1 de alta velocidade

endereços de entrada para o HSC

Nota

Os I / O digitais pontos utilizados pelos dispositivos de contador de alta velocidade são atribuídas durante a configuração do dispositivo. Quando
os endereços de ponto de E / S digital são atribuídos a esses dispositivos, os valores dos endereços / O ponto que eu atribuídos não pode ser
modificado pela função de força em uma tabela relógio.

Quando você configurar a CPU, você tem a opção de ativar e configurar cada HSC. A CPU atribui automaticamente os
endereços de entrada para cada HSC de acordo com sua configuração. (Algumas das HSCs permitir que você selecione
se deseja usar as entradas de bordo da CPU ou as entradas de um SB.)

AVISO PRÉVIO

Como mostrado nas tabelas a seguir, as atribuições padrão para os sinais opcionais para os diferentes HSCs se sobrepõem.
Por exemplo, a reposição externa opcional para HSC 1 usa a mesma entrada como uma das entradas para HSC 2.

Sempre que você tiver configurado as HSCs para que qualquer um de entrada é não sendo usado por dois HSCs.

A tabela a seguir mostra as atribuições de entrada HSC tanto para a sobre-placa de E / S da 1211C CPU e uma SB. (Se o SB
tem apenas 2 entradas, apenas 4.0 e 4.1 entradas estão disponíveis.)

● Para monofásica: C é a entrada de relógio, [d] é a entrada de direcção opcional, e [R] é uma entrada de reinicialização externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

● Por duas fases: CU é a entrada do relógio para cima, CD é a entrada do relógio para baixo, e [R] é uma entrada reset externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

● Para quadratura AB-fase: Uma é o relógio de entrada, B é a entrada de relógio B, e [R] é uma entrada de reinicialização externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

Tabela 6 9- HSC atribuições de entrada para a CPU 1211C

HSC CPU on-board i n colocar (0.x) input SB (default 4.x) 3

0 1 2 3 4 5 0 1 2 3

HSC 1 1 1-fase C [D] [R] C [D] [R]

2-fase CU CD [R] CU CD [R]

AB-fase UMA B [R] UMA B [R]

HSC 2 1 1-fase [R] C [D] [R] C [D]

2-fase [R] CU CD [R] CU CD

AB-fase [R] UMA B [R] UMA B

HSC 3 1-fase C [D]

2-fase CU CD

AB-fase UMA B

HSC 5 2 1-fase C [D] [R]

2-fase CU CD [R]

AB-fase UMA B [R]

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 341


instruções de tecnologia
contra 9.1 de alta velocidade

HSC CPU on-board i n colocar (0.x) input SB (default 4.x) 3

0 1 2 3 4 5 0 1 2 3
HSC 6 2 1-fase [R] C [D]

2-fase [R] CU CD

AB-fase [R] UMA B

1 HSC 1 e 2 HSC pode ser configurada tanto para as entradas de bordo ou para um SB.

2 HSC 5 e 6 HSC são disponíveis apenas com um SB. HSC 6 está disponível apenas com um SB-4 de entrada.

3 Um SB com apenas 2 entradas digitais fornece apenas a 4.0 e 4.1 entradas.

A tabela a seguir mostra as atribuições de entrada HSC tanto para a sobre-placa de E / S da 1212C CPU e uma SB. (Se o SB
tem apenas 2 entradas, apenas 4.0 e 4.1 entradas estão disponíveis.)

● Para monofásica: C é a entrada de relógio, [d] é a entrada de direcção opcional, e [R] é uma entrada de reinicialização externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

● Por duas fases: CU é a entrada do relógio para cima, CD é a entrada do relógio para baixo, e [R] é uma entrada reset externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

● Para quadratura AB-fase: Uma é o relógio de entrada, B é a entrada de relógio B, e [R] é uma entrada de reinicialização externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

Tabela 7 9- atribuições de entrada HSC para 1212C CPU

HSC CPU o entrada n-placa (0.x) SB inp você t (4.x) 3

0 1 2 3 4 5 6 7 0 1 2 3

HSC 1 1 1-fase C [D] [R] C [D] [R]

2-fase CD CU [R] CD CU [R]

AB-fase UMA B [R] UMA B [R]

HSC 2 1 1-fase [R] C [D] [R] C [D]

2-fase [R] CD CU [R] CD CU

AB-fase [R] UMA B [R] UMA B

HSC 3 1-fase C [D] [R]

2-fase CD CU [R]

AB-fase UMA B [R]

HSC 4 1-fase [R] C [D]

2-fase [R] CD CU

AB-fase [R] UMA B

HSC 5 2 1-fase C [D] [R]

2-fase CD CU [R]

AB-fase UMA B [R]

HSC 6 2 1-fase [R] C [D]

2-fase [R] CD CU

AB-fase [R] UMA B

1 HSC 1 e 2 HSC pode ser configurada tanto para as entradas de bordo ou para um SB.

2 HSC 5 e 6 HSC são disponíveis apenas com um SB. HSC 6 está disponível apenas com um SB-4 de entrada.

3 Um SB com apenas 2 entradas digitais fornece apenas a 4.0 e 4.1 entradas.

controlador programável S7-1200

342 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
contra 9.1 de alta velocidade

As duas tabelas a seguir mostram as atribuições de entrada HSC para o on-board I / O da 1214c CPU e por um SB
opcional, se instalado.

● Para monofásica: C é a entrada de relógio, [d] é a entrada de direcção opcional, e [R] é uma entrada de reinicialização externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

● Por duas fases: CU é a entrada do relógio para cima, CD é a entrada do relógio para baixo, e [R] é uma entrada reset externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

● Para quadratura AB-fase: Uma é o relógio de entrada, B é a entrada de relógio B, e [R] é uma entrada de reinicialização externo
opcional. (Reset está disponível apenas para o modo de "Contagem".)

Tabela 8 9- atribuições de entrada HSC para 1214c CPU e 1215c CPU (apenas entradas bordo em)

HSC dígito uma l Entrada 0 (def uma ult: 0. x) entrada digital 1 (def uma ult: 1. x)

0 1 2 3 4 5 6 7 0 1 2 3 4 5

HSC 1 1 1-fase C [D] [R]

2-fase CD CU [R]

AB-fase UMA B [R]

HSC 2 1 1-fase [R] C [D]

2-fase [R] CD CU

AB-fase [R] UMA B

HSC 3 1-fase C [D] [R]

2-fase CD CU [R]

AB-fase UMA B [R]

HSC 4 1-fase [R] C [D]

2-fase [R] CD CU

AB-fase [R] UMA B

HSC 5 1 1-fase C [D] [R]

2-fase CD CU [R]

AB-fase UMA B [R]

HSC 6 1 1-fase C [D] [R]

2-fase CD CU [R]

AB-fase UMA B [R]

1 HSC 1, 2 HSC, HSC 5 e 6 HSC pode ser configurada tanto para as entradas de bordo ou para um SB.

Tabela 9- 9 tarefas de entrada de HSC para o SBS

HSC 1 entradas SB (padrão: 4. x) 2

0 1 2 3

HSC 1 1-fase C [D] [R]

2-fase CU CD [R]

AB-fase UMA B [R]

HSC 2 1-fase [R] C [D]

2-fase [R] CU CD

AB-fase [R] UMA B

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 343


instruções de tecnologia
contra 9.1 de alta velocidade

HSC 1 entradas SB (padrão: 4. x) 2

0 1 2 3
HSC 5 1-fase C [D] [R]

2-fase CU CD [R]

AB-fase UMA B [R]

HSC 6 1-fase [R] C [D]

2-fase [R] CU CD

AB-fase [R] UMA B

1 Para 1214c CPU: HSC 1, 2 HSC, HSC 5 e 6 HSC pode ser configurado para o bordo

ou entradas para um SB.

2 Um SB com apenas 2 entradas digitais fornece apenas a 4.0 e 4.1 entradas.

Acessando o valor atual para o HSC

Nota

Ao ativar um gerador de pulso para uso como um PTO, um HSC correspondente é atribuído a este PTO. HSC1 é atribuído
para PTO1 e HSC2 é atribuído para PtO2. O HSC atribuído completamente pertence ao canal de tomada de força, e a
saída normal do HSC é desactivado. O valor HSC é usado apenas para a funcionalidade interna. Não é possível controlar
o valor actual (por exemplo, em ID1000), quando os impulsos estão a ocorrer.

A CPU armazena o valor atual de cada HSC em uma (I) endereço de entrada. A tabela a seguir mostra os
endereços padrão atribuídas ao valor atual para cada HSC. É possível alterar o endereço de I para o valor atual,
modificando as propriedades da CPU na configuração do dispositivo.

Tabela 10 9- valor actual do HSC

HSC Tipo de dados Endereço padrão

HSC1 Força ID1000

HSC2 Força ID1004

HSC3 Força ID1008

HSC4 Força ID1012

HSC5 Força ID1016

HSC6 Força ID1020

controlador programável S7-1200

344 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
contra 9.1 de alta velocidade

9.1.2 Configuração do HSC

A CPU permite configurar até 6 contadores de alta velocidade. Você editar as


"Propriedades" da CPU para configurar os parâmetros de cada HSC
individual. Use a instrução CTRL_HSC em seu programa de usuário para
controlar o funcionamento do HSC. Permitir que o HSC específica
selecionando a opção "Enable" para que a HSC.

Nota

Quando você habilitar o contador de alta velocidade e selecionar pontos de entrada para isso, as configurações do filtro de entrada para estes pontos são
configurados para 800 ns. Cada ponto de entrada tem uma única configuração de filtro que se aplica a todos os usos: entradas do processo, as
interrupções, captura de pulso, e entradas HSC.

AVISO

Se o tempo de filtro para um canal de entrada digital é alterado a partir de uma configuração anterior, um novo valor de entrada do nível
de "0" pode ter de ser apresentada para cima para 20,0 ms duração acumulados antes de o filtro torna-se totalmente responsivo a novas
entradas. Durante este tempo, "0" eventos pulso curto de duração inferior a 20,0 ms podem não ser detectados ou contados.

Esta mudança dos tempos de filtro pode resultar em máquina inesperado ou operação do processo, o que pode causar a
morte ou lesões graves a pessoas e / ou danos ao equipamento. Para garantir que um novo tempo do filtro vai imediatamente
em vigor, um ciclo de energia da CPU deve ser aplicada.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 345


instruções de tecnologia
9.2 controle PID

Depois de ativar o HSC, configurar os outros parâmetros, tais como a função de contador, valores iniciais, redefinir as
opções e interromper eventos.

Para obter informações sobre como configurar o HSC, consulte a seção sobre a configuração do CPU (página 123).

9.2 controle PID

STEP 7 fornece as seguintes instruções PID para o CPU S7-1200:

● A instrução PID_Compact é usado para controlar processos técnicos com variáveis ​insumo-produto e saída
contínuas.

● A instrução PID_3Step é usada para controlar dispositivos accionados por motor, tais como válvulas que requerem sinais discretos
para accionamento abertas e estreita.

Nota

As alterações que fizer à configuração PID e download em modo RUN não terão efeito até que as transições de
CPU da paragem para o modo RUN.

Ambas as instruções de PID (PID_3Step e PID_Compact) pode calcular o P-, I-, e componentes D- durante o
arranque (se configurado para "pretuning"). Você também pode configurar a instrução de "ajuste fino" para que você
possa otimizar os parâmetros. Você não precisa determinar manualmente os parâmetros.

Nota
Executar a instrução PID em intervalos constantes de tempo de amostragem (de preferência em uma OB cíclico).

Porque o loop PID precisa de um certo tempo para responder às mudanças do valor de controle, não calculam o
valor de saída em cada ciclo. Não executar a instrução PID no principal OB ciclo do programa (como OB 1).

O tempo de amostragem do algoritmo PID representa o tempo entre dois cálculos do valor de saída (valor de controlo). O valor
de saída é calculado durante o auto-ajuste e arredondado para um múltiplo do tempo de ciclo. Todas as outras funções de
instrução PID são executados em cada chamada.

controlador programável S7-1200

346 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

algoritmo PID

O (Derivada Proporcional / Integral /) controlador PID mede o intervalo de tempo entre duas chamadas e, em seguida, avalia os
resultados para monitorar o tempo de amostragem. Um valor médio do tempo de amostragem é gerado em cada passagem e
modo durante o arranque inicial. Este valor é utilizado como referência para a função de monitorização e é utilizada para o
cálculo. Monitorização inclui o tempo de medição de corrente entre duas chamadas e o valor médio do tempo de amostragem
controlador definido.

O valor de saída para o controlador PID é composto por três componentes:

● P (proporcional): Quando calculada com o componente "P", o valor de saída é proporcional à diferença entre o
valor nominal e o valor de processo (valor de entrada).

● I (integral): Quando calculada com o "eu" componente, o valor de saída aumenta em proporção com a duração da
diferença entre o valor nominal e o valor de processo (valor de entrada) para finalmente corrigir a diferença.

● D (derivado): Quando calculada com o componente "D", o valor de saída aumenta em função do aumento da
taxa de alteração da diferença entre o valor nominal e o valor de processo (valor de entrada). O valor de saída é
corrigida para o ponto de ajuste o mais rápido possível.

O controlador PID usa a seguinte fórmula para calcular o valor de saída para a instrução
PID_Compact.

T D · Sentou D · S
y = Kp [( b · w - x) + 1 T Eu · s
(W - x) +
+1
(C · w - x) ]

y valor de saída X valor do processo

W valor nominal s LAPLACIANO


Kp ganho proporcional uma coeficiente de atraso derivado
(componente P) (componente D)

T1 tempo de ação integral b acção proporcional ponderação


(componente I) (componente P)

TD tempo de acção derivado c A acção de derivação de ponderação

(componente D) (componente D)

O controlador PID usa a seguinte fórmula para calcular o valor de saída para a instrução PID_3Step.

T D · Sentou D · S
Δ y = Kp· s · [( b · w - x) + 1 T Eu · s
(W - x) +
+1
(C · w - x) ]

y valor de saída X valor do processo

W valor nominal s LAPLACIANO


Kp ganho proporcional uma coeficiente de atraso derivado
(componente P) (componente D)

T1 tempo de ação integral b acção proporcional ponderação


(componente I) (componente P)

TD tempo de acção derivado c A acção de derivação de ponderação

(componente D) (componente D)

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 347


instruções de tecnologia
9.2 controle PID

9.2.1 Inserir a instrução PID e objeto tecnológico


STEP 7 fornece duas instruções para o controle PID:

● A instrução PID_Compact e seu objeto tecnológico associado fornecer um controlador PID universal com
tuning. O objeto tecnológico contém todas as definições para a malha de controle.

● A instrução PID_3Step e seu objeto tecnológico associado fornecer um controlador PID com configurações
específicas para válvulas activado-motoras. O objeto tecnológico contém todas as definições para a malha de
controle. O controlador fornece PID_3Step duas saídas booleanas adicionais.

Depois de criar o objeto tecnológico, é necessário configurar os parâmetros (página 363). Você também ajustar os parâmetros de
ajuste automático ( "pretuning" durante a inicialização ou manual de "sintonia fina") encomendar o funcionamento do controlador
PID (Página 365).

Tabela 9 11 Introduzir a instrução PID eo objeto tecnológico Quando você insere uma
instrução PID em seu programa de usuário, STEP 7 cria automaticamente um objeto de
tecnologia e uma instância DB para a instrução. A instância DB contém todos os
parâmetros que são usados ​pela instrução PID. Cada instrução PID deve ter sua própria
instância única DB para operar corretamente.

Depois de inserir a instrução PID e criar o objeto tecnológico e


instância DB, você pode configurar os parâmetros para o objeto
tecnológico (Página 363).

controlador programável S7-1200

348 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

Tabela 9- 12 (Opcional) Criação de um objeto tecnológico a partir do navegador do projeto

Você também pode criar objetos tecnológicos para o seu projeto antes
inserindo a instrução PID. Ao criar o objeto tecnológico antes de
inserir uma instrução PID em seu programa de usuário, você
pode selecionar o objeto tecnológico ao inserir a instrução PID.

Para criar um objeto tecnológico, clique duas vezes no ícone "Adicionar


novo objeto" no navegador do projeto.

Clique no ícone "Control" e selecione o objeto tecnológico para o


tipo de controlador PID (PID_Compact ou PID_3Step). Você pode
criar um nome opcional para o objeto tecnológico.

Clique em "OK" para criar o objeto tecnológico.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 349


instruções de tecnologia
9.2 controle PID

9.2.2 instruções PID_Compact

O controlador PID usa a seguinte fórmula para calcular o valor de saída para a instrução
PID_Compact.

T D · Sentou D · S
y = Kp [( b · w - x) + 1 T Eu · s
(W - x) +
+1
(C · w - x) ]

y valor de saída X valor do processo

W valor nominal s LAPLACIANO


Kp ganho proporcional uma coeficiente de atraso derivado
(componente P) (componente D)

T1 tempo de ação integral b acção proporcional ponderação


(componente I) (componente P)

TD tempo de acção derivado c A acção de derivação de ponderação

(componente D) (componente D)

Tabela 9 13 instrução PID_Compact

LAD / FBD SCL Descrição


"PID_Compact_1" ( PID_Compact fornece um controlador PID com
Setpoint: = _ real_in_, Entrada: = _ real_in_, auto-ajuste para o modo automático e manual.
Input_PER: = _ word_in_, ManualEnable: = _ PID_Compact é um controlador PIDT1 com anti-desfecho
bool_in_, ManualValue: = _ real_in_, Reset: e ponderação da P- e componente D.
= _ bool_in_, ScaledInput => _ real_out_,
Output => _ real_out_, Output_PER => _
word_out_, Output_PWM => _ bool_out_,
SetpointLimit_H => _ bool_out_,
SetpointLimit_L => _ bool_out_,
InputWarning_H => _ bool_out_,
InputWarning_L => _ bool_out_, Estado => _
int_out_, erro => _ dword_out_);

1 STEP 7 cria automaticamente o objeto tecnológico e instância DB quando você inserir a instrução. a instância

DB contém os parâmetros do objeto tecnológico.


2
No exemplo SCL, "PID_Compact_1" é o nome da instância DB.

controlador programável S7-1200

350 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

Quadro 9- 14 Os tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

setpoint EM Real Ponto de ajuste do controlador PID no modo automático. Valor padrão: 0,0

Entrada EM Real valor do processo. Valor padrão: 0,0

Você também deve definir sPid_Cmpt.b_Input_PER_On = FALSE.

Input_PER EM Palavra valor de processo análogo (opcional). Valor padrão: W # 16 # 0 Você também

deve definir sPid_Cmpt.b_Input_PER_On = TRUE.

ManualEnable EM Bool Activa ou desactiva o modo de operação manual. Valor padrão: FALSO:

• PID_Compact V1.0 e V1.2: Quando a CPU faz a transição para correr, se o


ManualEnable = TRUE, PID_Compact inicia no modo manual. Não é necessário para
um FALSE a transição TRUE para colocar o PID_Compact em modo manual.

• PID_Compact V1.1: Quando a CPU faz a transição para correr e o ManualEnable = TRUE, o
PID Compact começa no último estado. Uma transição de verdadeiro para falso para
verdadeiro é necessária para colocar o PID_Compact em modo manual.

ManualValue EM Real valor do processo para a operação manual. Valor padrão: 0,0

Restabelecer EM Bool O parâmetro reset reinicia o controlador. Valor padrão: FALSE Veja a "Response to
Reset" seção abaixo para PID_Compact diagramas V1.1 e resposta Repor V1.0.

ScaledInput FORA Real valor do processo em escala. Valor padrão: 0,0

Saída 1 FORA Real valor de saída. Valor padrão: 0,0

Output_PER 1 FORA Palavra valor de saída analógica. Valor padrão: W # 16 # 0

Output_PWM 1 FORA Bool valor de saída para a modulação de largura de impulso. Valor padrão: FALSE

SetpointLimit_H FORA Bool limite alto ponto de ajuste. Valor padrão: FALSE

Se SetpointLimit_H = TRUE, o limite superior absoluto do ponto de ajuste é atingido. Valor


padrão: FALSE

SetpointLimit_L FORA Bool limite baixo ponto de ajuste. Valor padrão: FALSE

Se SetpointLimit_L = true, o limite inferior absoluto do ponto de ajuste é atingido. Valor


padrão: FALSE

InputWarning_H FORA Bool Se InputWarning_H = TRUE, o valor do processo atingido ou excedido o limite de aviso
superior. Valor padrão: FALSE

InputWarning_L FORA Bool Se InputWarning_L = TRUE, o valor do processo atingiu o limite de alerta mais baixo.
Valor padrão: FALSE

Estado FORA int modo de funcionamento actual do controlador PID. Valor padrão: 0 Use

sRet.i_Mode para alterar o modo.

• Estado = 0: Inativo

• Estado = 1: Pretuning

• Estado = 2: ajuste fino manual

• Estado = 3: Modo automático

• Estado = 4: Modo manual

ErrorBits FORA DWord Os parâmetros ErrorBits instrução mesa PID_Compact (página 354) define as mensagens
de erro. Valor padrão: DW # 16 # 0000 (nenhum erro)

1 As saídas da saída, Output_PER, e parâmetros Output_PWM pode ser usado em paralelo.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 351


instruções de tecnologia
9.2 controle PID

Response redefinir

A resposta para redefinir = TRUE depende da versão da instrução PID_Compact.

Reset response PID_Compact V1.1

A borda de subida em Restabelecer repõe os erros e avisos e limpa a ação integral. A borda de descida em Restabelecer desencadeia
uma mudança para o modo operacional mais ativo recentemente.

① Ativação
② Erro
③ Restabelecer

Reset response PID_Compact V1.0

A borda de subida em Restabelecer repõe os erros e avisos e limpa a ação integral. O controlador não é reactivado
até que a próxima borda em i_Mode.

controlador programável S7-1200

352 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

① Ativação
② Erro
③ Restabelecer

A operação do controlador PID_Compact

Figura 9-1 A operação do controlador PID_Compact

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 353


instruções de tecnologia
9.2 controle PID

Figura 9-2 A operação do controlador PID_Compact como um controlador PIDT1 com anti-desfecho

9.2.3 parâmetros de instrução ErrorBit PID_Compact

Se vários erros estão pendentes, os valores dos códigos de erro são exibidas por meio de adição binária. A exibição de
código de erro 0003, por exemplo, indica que os erros 0001 e 0002 também estão pendentes.

Tabela 9- parâmetros instrução ErrorBit 15 PID_Compact

ErrorBit (DW # 16 # ...) Descrição

0000 nenhum erro

0001 O parâmetro "Input" está fora dos limites de valor processo. Entrada>

sPid_Cmpt.r_Pv_Hlmor entrada <sPid_Cmpt.r_Pv_Llm

Você não pode iniciar o atuador novamente até que você eliminar o erro.

0002 Valor inválido no parâmetro "Input_PER". Verifique se um erro está pendente na entrada
analógica.

0004 Erro durante a Oscilação ajuste fino do valor do processo não poderia ser mantida.

0008 Erro ao iniciar pré-ajuste. O valor do processo é muito perto do ponto de ajuste. Comece
ajuste fino.

0010 O valor nominal foi mudado durante a sintonização do controlador.

0020 Pré-ajuste não pode ser realizado no modo automático ou durante a sintonia fina.

0040 Erro no ajuste fino do ponto de ajuste é muito perto dos limites do ponto de ajuste.

controlador programável S7-1200

354 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

ErrorBit (DW # 16 # ...) Descrição

0080 configuração incorrecta de limites de valor de saída.

Verifique se os limites do valor de saída estão configurados corretamente e combinar a


direção na qual o controle está operando.

0100 Erro durante a sintonia de controladores resultou em parâmetros inválidos.

0200 Valor inválido no parâmetro "Input": formato numérico de valor é inválido.

0400 Calcular o valor de saída falhou. Verifique os parâmetros PID.

0800 erro de tempo de amostragem: PID_Compact não é chamado dentro do tempo de amostragem do OB alarme
cíclico.

1000 Valor inválido no parâmetro "Setpoint": formato numérico de valor é inválido.

9.2.4 instruções PID_3STEP

O controlador PID usa a seguinte fórmula para calcular o valor de saída para a instrução PID_3Step.

T D · Sentou D · S
Δ y = Kp· s · [( b · w - x) + 1 T Eu · s
(W - x) +
+1
(C · w - x) ]

y valor de saída X valor do processo

W valor nominal s LAPLACIANO


Kp ganho proporcional uma coeficiente de atraso derivado
(componente P) (componente D)

T1 tempo de ação integral b acção proporcional ponderação


(componente I) (componente P)

TD tempo de acção derivado c A acção de derivação de ponderação

(componente D) (componente D)

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 355


instruções de tecnologia
9.2 controle PID

Tabela 9- 16 instrução PID_3Step

LAD / FBD SCL Descrição


"PID_3Step_1" ( PID_3Step configura um controlador PID com
SetPoint: = _ real_in_, Entrada: = _ real_in_, capacidades de auto-ajuste que foi otimizado para
ManualValue: = _ real_in_, Feedback: = _ válvulas e atuadores controlados por motores. Ele fornece
real_in_, InputPer: = _ word_in_, duas saídas booleanas. PID_3Step é um PIDT1controller
FeedbackPer: = _ word_in_, ManualEnable: com anti conclusão e de ponderação da P- e
= _ bool_in_, ManualUP: = _ bool_in_, componentes D-.
ManualDN: = _ bool_in_, ActuatorH: = _
bool_in_, ActuatorL: = _ bool_in_, Reset: = _
bool_in_, ScaledInput => _ real_out_,
ScaledFeedback => _ real_out_, ErrorBits =>
_ dword_out_, OutputPer => _ word_out_,
Estado => _ int_out_, OutputUP => _
bool_out_, OutputDN => _ bool_out_,
SetpoIntLimitH => _ bool_out_,
SetpoIntLimitL => _ bool_out_,
InputWarningH => _ bool_out_,
InputWarningL => _ bool_out_, erro => _
bool_out_);

1 STEP 7 cria automaticamente o objeto tecnológico e instância DB quando você inserir a instrução. a instância

DB contém os parâmetros do objeto tecnológico.


2
No exemplo SCL, "PID_3Step_1" é o nome da instância DB.

Quadro 9- 17 Os tipos de dados para os parâmetros

Parâmetro e tipo Tipo de dados Descrição

setpoint EM Real Ponto de ajuste do controlador PID no modo automático. Valor padrão: 0,0

Entrada EM Real valor do processo. Valor padrão: 0.0 Você também deve definir

Config.InputPEROn = FALSE.

Input_PER EM Palavra valor de processo análogo (opcional). Valor padrão: W # 16 # 0 Você também

deve definir Config.InputPEROn = TRUE.

ManualEnable EM Bool Activa ou desactiva o modo de operação manual. Valor padrão: FALSE

• Na borda da mudança de falso para verdadeiro, o controlador PID muda para modo
manual, Estado = 4, e Retain.Mode permanece inalterado.

• Na borda da mudança de verdadeiro para falso, as chaves do controlador PID para o


último modo de operação ativo e Estado = Retain.Mode.

controlador programável S7-1200

356 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

Parâmetro e tipo Tipo de dados Descrição

ManualUP EM Bool Em modo manual, cada flanco ascendente abre a válvula em 5% de uma vasta gama de accionamento,
ou para a duração do período mínimo de accionamento do motor. ManualUP é avaliado somente se
você não estiver usando Output_PER e
não há feedback de posição. Valor padrão: FALSE

• Se Output_PER for FALSA, a entrada manual transforma em Output_UP para o tempo que
corresponde a um movimento de 5% do dispositivo.

• Se Config.ActuatorEndStopOn é TRUE, então Output_UP não se acenderá se


Actuator_H é TRUE.

ManualDN EM Bool Em modo manual, cada flanco ascendente fecha a válvula por 5% de uma vasta gama de
accionamento, ou para a duração do período mínimo de accionamento do motor. ManualDN é avaliado
somente se você não estiver usando Output_PER e
não há feedback de posição. Valor padrão: FALSE

• Se Output_PER for FALSA, a entrada manual transforma em Output_DN para o tempo que
corresponde a um movimento de 5% do dispositivo.

• Se Config.ActuatorEndStopOn é TRUE, então Output_DN não liga se Actuator_L


é TRUE.

ManualValue EM Real valor do processo para a operação manual. Valor padrão: 0.0 No modo manual, você especificar a
posição absoluta da válvula. ManualValue é avaliado somente se você estiver usando OutputPer, ou se
realimentação da posição está disponível. Valor padrão: 0,0

Comentários EM Real realimentação da posição da válvula. Valor padrão: 0.0 Para usar o feedback, em seguida,

definir Config.FeedbackPerOn = FALSE.

Feedback_PER EM Palavra o feedback analógico de posição da válvula. Valor padrão: W # 16 # 0 Para usar
Feedback_PER, definir Config.FeedbackPerOn = TRUE. Feedback_PER é
dimensionada, utilizando os seguintes parâmetros:

• Config.FeedbackScaling.LowerPointIn

• Config.FeedbackScaling.UpperPointIn

• Config.FeedbackScaling.LowerPointOut

• Config.FeedbackScaling.UpperPointOut

Actuator_H EM Bool Se Actuator_H = VERDADEIRO, a válvula está no batente superior e já não é movida
nesta direcção. Valor padrão: FALSE

Actuator_L EM Bool Se Actuator_L = VERDADEIRO, a válvula está na paragem da extremidade inferior e não é
movida nesta direcção. Valor padrão: FALSE

Restabelecer EM Bool Reinicia o controlador PID. Valor padrão: FALSE Se FALSE a


borda TRUE:

• modo de operação "Inativo"

• O valor de entrada = 0

• valores intermédios do controlador são repostos. (Parâmetros PID são retidos.)

Se TRUE para FALSE borda, mude para o mais recente modo ativo.

ScaledInput FORA Real valor do processo escalonado

ScaledFeedback FORA Real posição da válvula dimensionado

Output_PER FORA Palavra valor de saída analógica. Se Config.OutputPerOn = TRUE, o Output_PER parâmetro é
utilizado.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 357


instruções de tecnologia
9.2 controle PID

Parâmetro e tipo Tipo de dados Descrição

Output_UP FORA Bool valor digital de saída para abrir a válvula. Valor padrão: false se Config.OutputPerOn
= FALSE, o Output_UP parâmetro é utilizado.

Output_DN FORA Bool valor da saída digital para o fecho da válvula. Valor padrão: false se
Config.OutputPerOn = FALSE, o parâmetro Output_DN é usado.

SetpointLimitH FORA Bool limite alto ponto de ajuste. Valor padrão: FALSE

Se SetpointLimitH = TRUE, o limite superior absoluto do ponto de ajuste é atingido. No CPU,


o ponto de ajuste é limitado para o limite superior absoluto configurado do valor real.

SetpointLimitL FORA Bool limite baixo ponto de ajuste. Valor padrão: FALSE

Se SetpointLimitL = TRUE, o limite inferior absoluto do ponto de ajuste é atingido. No CPU


o ponto de ajuste é limitado para o limite inferior absoluto configurado do valor real.

InputWarningH FORA Bool Se InputWarningH = TRUE, o valor de entrada atingiu ou ultrapassou o limite de aviso
superior. Valor padrão: FALSE

InputWarningL FORA Bool Se InputWarningL = TRUE, o valor de entrada atingiu ou ultrapassou o limite de aviso
inferior. Valor padrão: FALSE

Estado FORA int modo de funcionamento actual do controlador PID. Valor padrão: 0 Use

Retain.Mode para mudar o modo de operação:

• Estado = 0: Inativo

• Estado = 1: Pretuning

• Estado = 2: ajuste fino manual

• Estado = 3: Modo automático

• Estado = 4: Modo manual

• Estado = 5: abordagem valor de saída substituto

• Estado = 6: medição do tempo de transição

• Estado = 7: abordagem substituto valor de saída com monitoração de erro

• Estado = 8: monitoramento de erro

Erro FORA Bool Se erro = TRUE, pelo menos, uma mensagem de erro está pendente. Valor padrão: FALSE

ErrorBits FORA DWord A tabela de parâmetros ErrorBits instrução PID_3STEP (Página 362) define as mensagens
de erro. Valor padrão: DW # 16 # 0000 (nenhum erro)

controlador programável S7-1200

358 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

Figura 9-3 A operação do controlador PID_3Step como um controlador PIDT1 com anti-desfecho

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 359


instruções de tecnologia
9.2 controle PID

Figura 9-4 A operação do controlador de realimentação de posição sem PID_3Step

controlador programável S7-1200

360 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

Figura 9-5 A operação do controlador PID_3Step a realimentação da posição activada

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 361


instruções de tecnologia
9.2 controle PID

9.2.5 parâmetros de instrução ErrorBit PID_3STEP

Se vários erros estão pendentes, os valores dos códigos de erro são exibidas por meio de adição binária. A exibição de
código de erro 0003, por exemplo, indica que os erros 0001 e 0002 também estão pendentes.

Tabela parâmetros instrução ErrorBit 9- 18 PID_3STEP

ErrorBit (DW # 16 # ...) Descrição

0000 nenhum erro

0001 O parâmetro "Input" está fora dos limites de valor processo: entrada>

Config.InputUpperLimit ou Input <Config.InputLowerLimit

Se ActivateRecoverMode = VERDADEIRO e ErrorBehaviour = 1, o actuador move-se para o


valor de saída substituto. Se ActivateRecoverMode = true e ErrorBehaviour = 0, o atuador pára
na sua posição atual. Se ActivateRecoverMode = false, o atuador pára na sua posição atual.
PID_3STEP V1.1: Você pode mover o atuador em modo manual. PID_3STEP V1.0: O modo
manual não é possível neste estado. Você não pode iniciar o atuador novamente até que você
eliminar o erro.

0002 Valor inválido no parâmetro "Input_PER". Verifique se um erro está pendente na entrada
analógica.

Se o modo automático estava ativo antes da ocorrência do erro,


ActivateRecoverMode = TRUE eo erro já não está pendente, PID_3STEP volta
para o modo automático.

0004 Erro durante a Oscilação ajuste fino do valor do processo não poderia ser mantida.

0008 Erro ao iniciar pré-ajuste. O valor do processo é muito perto do ponto de ajuste. Comece
ajuste fino.

0010 O ponto de ajuste não pode ser alterado durante a sintonia fina.

0020 Pré-ajuste não pode ser realizado no modo automático ou durante a sintonia fina.

0040 Erro no ajuste fino do ponto de ajuste é muito perto dos limites do ponto de ajuste.

0080 Erro no pré-ajuste. configuração incorrecta de limites de valor de saída. Verifique se os limites do
valor de saída estão configurados corretamente e combinar a direção na qual o controle está
operando.

0100 Erro durante a sintonia fina resultou em parâmetros inválidos.

0200 Valor inválido no parâmetro "Input": formato numérico de valor é inválido. Se o modo
automático estava ativo antes da ocorrência do erro, ActivateRecoverMode = TRUE eo
erro já não está pendente, PID_3STEP volta para o modo automático.

0400 Calcular o valor de saída falhou. Verifique os parâmetros PID.

0800 tempo de amostragem de erro: PID_3STEP não é chamado dentro do tempo de amostragem do OB alarme
cíclico.

Se o modo automático estava ativo antes da ocorrência do erro,


ActivateRecoverMode = TRUE eo erro já não está pendente, PID_3STEP volta
para o modo automático.

controlador programável S7-1200

362 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

ErrorBit (DW # 16 # ...) Descrição

1000 Valor inválido no parâmetro "Setpoint": formato numérico de valor é inválido. Se o modo
automático estava ativo antes da ocorrência do erro, ActivateRecoverMode = TRUE eo erro
já não está pendente, PID_3STEP volta para o modo automático.

2000 Valor inválido no parâmetro Feedback_PER. Verifique se um erro está pendente na entrada
analógica. O actuador não pode ser movido para o valor de saída do substituto e não se move a
partir da posição actual. O modo manual não é possível neste estado. Você tem que desativar
retorno de posição (config. FeedbackOn = FALSE) para mover o atuador deste estado. Se o
modo automático estava ativo antes da ocorrência do erro, ActivateRecoverMode = TRUE eo
erro já não está pendente, PID_3STEP volta para o modo automático.

4000 Valor inválido no parâmetro de Comentários. formato numérico de valor é inválido. O actuador
não pode ser movido para o valor de saída do substituto e não se move a partir da posição
actual. O modo manual não é possível neste estado. Você tem que desativar retorno de posição
(config. FeedbackOn = FALSE) para mover o atuador deste estado. Se o modo automático
estava ativo antes da ocorrência do erro, ActivateRecoverMode = TRUE eo erro já não está
pendente, PID_3STEP volta para o modo automático.

8000 Erro na resposta digital. Actuator_H = TRUE e Actuator_L = TRUE.

O actuador não pode ser movido para o valor de saída do substituto e não se move a partir da
posição actual. O modo manual não é possível neste estado. Você tem que desativar "sinais de fim
de curso do atuador" (Config.ActuatorEndStopOn = FALSE) para mover o atuador deste estado. Se
o modo automático estava ativo antes da ocorrência do erro, ActivateRecoverMode = TRUE eo erro
já não está pendente, PID_3STEP volta para o modo automático.

9.2.6 Configurando o Controlador PID

Os parâmetros do objeto tecnológico determinar a operação do controlador PID. Use o ícone para
abrir o editor de configuração.

editor Figura Configuração 9-6 para PID_Compact (Definições básicas)

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 363


instruções de tecnologia
9.2 controle PID

definições de configuração 19 Amostra Tabela 9 para a instrução PID_Compact

Definições Descrição

básico tipo de controlador Selecciona as unidades de engenharia.

Inverta a lógica de controlo permite a seleção de um loop de PID de acção inversa.

• Se não for seleccionado, o circuito PID está no modo de acção directa e a saída do laço PID aumenta se o valor de
entrada <nominais.

• Se selecionado, a saída do loop PID aumenta se o valor de entrada> ponto de ajuste.

Ativar último modo após o Reinicia o loop PID depois de ser reposto ou se um limite de entrada foi ultrapassado e voltou para o
reinício CPU intervalo válido.

Entrada Selecciona quer o parâmetro de entrada ou o parâmetro Input_PER (para analógico) para o valor de processo. Input_PER
pode vir directamente a partir de um módulo de entrada analógico.

Saída Selecciona quer o parâmetro de saída ou o parâmetro Output_PER (para analógico) para o valor de saída.
Output_PER pode ir directamente para um módulo de saída analógico.

valor do Escalas tanto a gama e os limites para o valor do processo. Se o valor de processo vai abaixo do limite mínimo ou acima do limite alto, o loop
processo PID vai para o modo inativo e define o valor de saída para 0. Para usar Input_PER, você devo dimensionar o valor processo análogo (valor de
entrada).

editor Figura Configuração 9-7 para PID_3Step (Definições básicas)

Tabela 9- definições de configuração 20 de amostra para a instrução PID_3Step

Definições Descrição

básico tipo de controlador Selecciona as unidades de engenharia.

Inverta a lógica de controlo permite a seleção de um loop de PID de acção inversa.

• Se não for seleccionado, o circuito PID está no modo de acção directa, e a saída do laço PID aumenta se o valor
de entrada <nominal).

• Se selecionado, a saída do loop PID aumenta se o valor de entrada> ponto de ajuste.

Ativar último modo após o Reinicia o loop PID depois de ser reposto ou se um limite de entrada foi ultrapassado e voltou para o
reinício CPU intervalo válido.

Entrada Selecciona quer o parâmetro de entrada ou o parâmetro Input_PER (para analógico) para o valor de processo. Input_PER
pode vir directamente a partir de um módulo de entrada analógico.

controlador programável S7-1200

364 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.2 controle PID

Definições Descrição

Saída Selecciona quer utilizar as saídas digitais (Output_UP e Output_DN) ou de usar a saída analógica
(Output_PER) para o valor de saída.

Comentários Seleciona o tipo de status do dispositivo retornou ao circuito PID:

• Sem feedback (padrão)

• Comentários

• Feedback_PER

valor do Escalas tanto a gama e os limites para o valor do processo. Se o valor de processo vai abaixo do limite mínimo ou acima do limite alto, o loop PID
processo vai para o modo inativo e define o valor de saída para 0. Para usar Input_PER, você devo dimensionar o valor processo análogo (valor de entrada).
tempo de transição Motor

Atuador do Define o tempo de aberto para fechar a válvula para. (Localizar este valor na folha de dados ou a placa da
válvula.)

Mínimo tempo Define o tempo mínimo de movimento para a válvula. (Localizar este valor na folha de dados ou
a placa da válvula.)

Tempo mínimo OFF Define o tempo mínimo de pausa para a válvula. (Localizar este valor na folha de dados ou a placa da
válvula.)

comportamento de erro Define o comportamento da válvula quando é detectado um erro ou quando a malha PID é reposto. Se você optar por usar
uma posição substituto, entrar na "posição de segurança". Para o feedback analógico ou de saída analógico, seleccionar um
valor entre o limite superior ou inferior para a saída. Para saídas digitais, você pode escolher apenas 0% (desligado) ou 100%
(on).

Escala Posição • "Alta paragem" e "inferior paragem limite" define a posição de máximo positivo (de totalmente aberta) e a
feedback 1
posição máxima negativa (full-fechado). "High stop" deve ser maior que "Lower batente".

• "Valor limite de processo de alta" e "valor limite processo Baixo" definir as posições superior e inferior da
válvula durante o ajuste e modo automático.

• "FeedbackPER" ( "baixo" e "alto") define o feedback analógico de posição da válvula.


"FeedbackPER alta" deve ser maior que "FeedbackPER Low".

1
"Escala Posição Feedback" é editável somente se você habilitado "Feedback" nas configurações de "Basic".

9.2.7 Colocar o controlador PID

Use o editor de comissionamento para configurar o controlador PID para autotuning na inicialização e para auto-ajuste
durante a operação. Para abrir o editor comissionamento, clique no ícone em ambos a instrução ou o navegador do
projeto.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 365


instruções de tecnologia
9.3 Movimento controle

Tabela 21 Amostra 9- tela de configuração (PID_3Step)

• Medição: Para exibir o valor nominal, o valor do processo (valor de


entrada) e o valor de saída em uma tendência em tempo real, digite o
tempo de amostra e clique no botão "Start".

• modo de sintonia: Para sintonizar o loop de PID, selecione "Pretuning" ou


"ajuste fino" (manual) e clique no botão "Start". O controlador PID funciona
através de múltiplas fases para calcular resposta do sistema e tempos de
atualização. Os parâmetros de ajuste apropriadas são calculados a partir
desses valores. Após a conclusão do processo de ajuste, você pode
armazenar os novos parâmetros clicando no botão "parâmetros Carregar
PID" na seção "PID Parameters" do editor de comissionamento. Se ocorrer
um erro durante a sintonização, o valor do PID de saída passa a 0. O modo
PID, em seguida, é definido para o modo "inactivo". O status indica o erro.

9,3 Controle de movimento

A CPU fornece a funcionalidade de controlo de movimento para a operação de motores de passo e servo-motores com interface de
pulso. A funcionalidade de controle de movimento assume o controle e monitoramento das unidades.

● O objeto tecnologia "Eixo" configura os dados de transmissão mecânica, interface de unidade, parâmetros dinâmicos, e
outras propriedades da unidade.

● Você configurar as saídas de pulso e direção da CPU para controlar a unidade.

● Seu programa de usuário usa as instruções de controle de movimento para controlar o eixo e para iniciar tarefas de movimento.

● Use a interface PROFINET para estabelecer a conexão on-line entre a CPU e o dispositivo de programação.
Além das funções online da CPU, comissionamento adicional e funções de diagnóstico estão disponíveis
para controle de movimento.

Nota

As alterações que fizer à configuração controle de movimento e de download em modo RUN não terão efeito até que as
transições de CPU da paragem para o modo RUN.

controlador programável S7-1200

366 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

S
① PROFINET
② saídas de pulso e direção
③ Secção de potência para o motor de passo

④ Secção de potência para o motor servo

As variantes DC / DC / DC do S7-1200 CPU têm saídas a bordo para controle


direto de unidades. As variantes de relé da CPU requerem a placa de sinal
com saídas CC para o controle rígido.

Uma placa de sinal (SB) se expande a bordo de I / O para incluir alguns adicionais pontos I / O. Um SB com 2 saídas digitais pode ser usado
como saída de impulsos e de direcção para controlar um motor. Um SB com 4 saídas digitais pode ser usado como saída de impulsos e de
direcção para controlar dois motores. Embutida de saídas de relê não pode ser usado como saídas de impulsos para controlar os motores.

Nota
saídas de pulso-trem não pode ser usado por outras instruções no programa do usuário

Quando você configurar as saídas do CPU ou placa sinal como geradores de pulso (para uso com as instruções PWM ou
controle de movimento), os endereços de saída correspondentes (Q0.0 para Q0.3, Q4.0 para Q4.3) são removidos a memória
Q e não pode ser usado para outros fins no seu programa de usuário. Se o seu programa de utilizador escreve um valor a uma
saída usado como um gerador de pulso, a CPU não escreve esse valor para a saída física.

Tabela 22 9- número máximo de unidades controláveis

Tipo de CPU Sem SB instalado Com uma SB (2 x Com uma SB (4 x


saídas CC) saídas CC)

1211C CPU DC / DC / DC 2 2 2

AC / DC / RLY 0 1 2

DC / DC / RLY 0 1 2

1212C CPU DC / DC / DC 2 2 2

AC / DC / RLY 0 1 2

DC / DC / RLY 0 1 2

1214c CPU DC / DC / DC 2 2 2

AC / DC / RLY 0 1 2

DC / DC / RLY 0 1 2

1215c CPU DC / DC / DC 4 4 4

AC / DC / RLY 0 1 2

DC / DC / RLY 0 1 2

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 367


instruções de tecnologia
9.3 Movimento controle

Quadro 9- 23 frequências limite de saídas de impulsos

saída de pulso Freqüência

A bordo 2 PTO: 2 Hz ≤ f ≤ 100 KHz

2 PTO: 2 Hz ≤ f ≤ 20 KHz

SB padrão 2 Hz ≤ f ≤ 20 KHz

De alta velocidade (200 KHz) RNM instruções MC V2: 2 Hz ≤ f ≤ 200 KHz instruções
MC V1: 2 Hz ≤ f ≤ 100 KHz 1

1 instruções MC V1 apoiar uma frequência máxima de 100 KHz.

AVISO PRÉVIO

A frequência máxima de impulso dos geradores de saída de impulso é de 100 KHz para as saídas digitais da CPU,
20 KHz para as saídas digitais do SB padrão, e 200 KHz para as saídas digitais dos SBS-alta velocidade (ou 100
KHz para MC instruções V1).

A configuração de um gerador de impulsos

1. Adicionar um objeto tecnológico:

controlador programável S7-1200

368 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

- Na árvore de projeto, expanda o nó "objetos tecnológicos" e selecione "Adicionar novo objeto".

- Selecione o ícone do "Eixo" (renomear, se necessário) e clique em "OK" para abrir o editor de configuração para o objeto
eixo.

- Mostrar a "Select PTO para controle do eixo" propriedades sob o título "Parâmetros básicos" e selecione o pulso
desejado. Observe as duas saídas Q atribuídos por pulso e direção.

Nota

Se o PTO não tenha sido previamente configurado nas propriedades da CPU, o PTO está configurado para
usar uma das saídas a bordo.

Se você usar uma placa de sinal de saída, em seguida, selecione o botão "Configuração do dispositivo" para ir para as
propriedades da CPU. Em "Parâmetro de atribuição", nas "Opções de pulso", configurar a fonte de saída para uma
saída bordo sinal. "Pulse_1" e "Pulse_3" são as únicas saídas de pulso disponíveis na placa do sinal.

- Configure os restantes parâmetros básicas e estendidas.

2. Programar sua aplicação: Inserir a instrução MC_Power em um bloco de código.

- Para a entrada Axis, selecione o objeto tecnologia eixo que você criou e configurou.

- Definir a entrada Ativar para TRUE permite que as outras instruções de movimento para funcionar.

- Definir a entrada Ativar FALSE cancela as outras instruções de posicionamento.

Nota

Incluir apenas uma instrução MC_Power por eixo.

3. Insira as outras instruções de posicionamento para produzir o movimento necessário.

Nota

Configurando um gerador de pulso para sinalizar saídas de tabuleiro: Selecione a opção "geradores de pulso (PTO / PWM)"
propriedades para uma CPU (na configuração de dispositivos) e permitir um gerador de pulso. Dois geradores de pulso estão
disponíveis para cada S7-1200 V1.0 CPU, V2.0, V2.1 e V2.2. CPU S7-1200 CPUs V3.0 tem quatro geradores de impulsos
disponíveis. Nesta mesma área configuração em "Opções de pulso", selecione gerador de pulso usadas como: "PTO".

Nota

A CPU calcula tarefas de movimento em "fatias" ou segmentos de 10 ms. Como uma fatia está sendo executado, a próxima
fatia está esperando na fila para ser executado. Se você interromper a tarefa de movimento em um eixo (executando uma
nova tarefa de movimento para o eixo), a nova tarefa de movimento não pode ser executado por um máximo de 20 ms (o
restante da fatia atual mais a fatia na fila).

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 369


instruções de tecnologia
9.3 Movimento controle

9.3.1 Configurando o eixo

STEP 7 fornece as ferramentas de configuração, as ferramentas de comissionamento, e as ferramentas de diagnóstico para o "Eixo"
objeto tecnológico.

① Dirigir ④ comissionamento
② objeto tecnológico ⑤ Diagnostics
③ Configuração

Nota

O PTO requer a funcionalidade interna de um contador de alta velocidade (HSC). Isto significa que o correspondente
contador de alta velocidade não pode ser utilizado noutro local. A atribuição entre PTO e HSC é fixo. Quando PTO1 é
ativado, ele será conectado a HSC1. Se PtO2 é ativado, ele será conectado a HSC2. Isso só é verdade para S7-1200
V1.0, V2.0, V2.1 e V2.2 CPUs. S7-1200 V3.0 CPUs não tem essa restrição.

Você não pode monitorar o valor atual (por exemplo, em ID 1000), quando pulsos estão ocorrendo.

Tabela 9 24 STEP 7 ferramentas para controle de movimento

Ferramenta Descrição

Configuração Configura as seguintes propriedades do "Eixo" objeto tecnologia:

• A selecção da tomada de força a ser usado e da configuração da interface de unidade

• Propriedades da mecânica e o rácio de transmissão da unidade (ou máquina ou sistema)

• Propriedades para os limites de posição, dinâmica e homing Salve a


configuração no bloco de dados do objeto tecnologia.

comissionamento Testa a função do seu eixo sem ter que criar um programa de usuário. Quando a ferramenta é iniciado, o painel de controle
será exibida. Os comandos seguintes estão disponíveis no painel de controlo:

• Ativar e desativar eixo

• Mova o eixo em modo manual

• eixo de posição em termos absolutos e relativos

• eixo Início

• reconhecer erros
A velocidade e a aceleração / desaceleração pode ser especificado para os comandos de movimento. O painel de controlo também
apresenta o estado actual eixo.

Diagnostics Monitores da informação de estado e de erro atual para o eixo e unidade.

controlador programável S7-1200

370 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Depois de criar o objeto tecnológico para o eixo, você pode configurar


o eixo, definindo os parâmetros básicos, tais como a tomada de força
e a configuração da interface de unidade. Você também configurar as
outras propriedades do eixo, tais como limites de posição, dinâmica e
homing.

AVISO PRÉVIO

Você pode ter que adaptar os valores dos parâmetros de entrada de instruções de controle de movimento para a nova unidade
dimensão no programa do usuário.

Configurar as propriedades para os sinais de accionamento, unidade mecânica,


e de monitorização de posição (interruptores de hardware e software de limite).

Você configurar a dinâmica de movimento e o comportamento do


comando de paragem de emergência.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 371


instruções de tecnologia
9.3 Movimento controle

Você também configurar o comportamento de homing (passiva e ativa).

Use o painel de controle "em funcionamento" para testar a funcionalidade independentemente do seu programa de usuário.

Clique no ícone "Iniciar" para comissionar o eixo.

O painel de controle mostra o estado atual do eixo. Não apenas você pode ativar e desativar o eixo, mas você também
pode testar o posicionamento do eixo (tanto em termos absolutos e relativos) e pode especificar a velocidade, aceleração e
desaceleração. Você também pode testar as tarefas homing e jogging. O painel de controle também permite reconhecer
erros.

9.3.2 Configurando o TO_CommandTable_PTO

Você pode configurar uma instrução CommandTable usando os objetos tecnológicos.

Adicionando um objecto Tecnológico

1. Na árvore de projeto, expanda o nó "objetos tecnológicos" e selecione "Adicionar novo objeto".

controlador programável S7-1200

372 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

2. Selecione o ícone "CommandTable" (renomear, se necessário) e clique em "OK" para abrir o


editor de configuração para o objeto CommandTable.

Planejar as etapas para a sua aplicação

Você pode criar a seqüência de movimento desejado na janela de configuração "Tabela de comando", e verifique o resultado contra a
visão gráfica no diagrama de tendência. Você pode selecionar os tipos de comando que devem ser usados ​para o processamento de
mesa de comando. Até 32 etapas podem ser inseridos. Os comandos são processados ​em sequência, produzindo facilmente um
perfil de movimento complexo.

Tabela 9 25 tipos de comando MC_CommandTable

tipo de comando Descrição

Esvaziar O vazio serve como um marcador de posição para todos os comandos a ser adicionado. A entrada vazia é ignorada quando a
tabela de comando é processado

parada Pausa eixo.


Nota: O comando só ocorre após um comando de "Velocidade nominal".

Relativa posicionamento Posiciona o eixo com base na distância. O comando desloca o eixo pela distância e velocidade dada.

O posicionamento absoluto Posiciona o eixo com base em localização. O comando desloca o eixo para o local determinado, utilizando a
velocidade especificada.

ponto de ajuste de velocidade Move o eixo à velocidade dada.

Esperar Aguarda até que o período dado é longo. "Espera" não parar um movimento de deslocamento ativo.

Separador Adiciona uma linha "Separator" acima da linha selecionada. A linha de separação permite que mais de um perfil a ser definido em
uma mesa de comando único.

Na figura a seguir, "comando completo" é utilizado como a transição para o próximo passo. Este tipo de transição permite que
o dispositivo para desacelerar a velocidade start / stop e depois acelerar mais uma vez no início da próxima etapa.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 373


instruções de tecnologia
9.3 Movimento controle

① Eixo desacelera para a velocidade start / stop entre as etapas.

Na figura a seguir, "movimento de fusão" é utilizado como a transição para o próximo passo. Este tipo de transição permite ao
dispositivo manter a sua velocidade no início da próximo passo, resultando numa transição suave para o dispositivo a partir de uma
etapa para a seguinte. Usando mistura pode encurtar o tempo total necessário para um perfil a executar completamente. Sem
mistura, o exemplo leva sete segundos para ser executado. Com a mistura, o tempo de execução é reduzida por um segundo para
um total de seis segundos.

① Eixo continua a mover-se e acelera ou desacelera para o próximo passo de velocidade, poupando tempo e
o desgaste mecânico.

controlador programável S7-1200

374 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

O funcionamento do seu CommandTable é controlado por uma instrução MC_CommandTable, como mostrado abaixo:

9.3.3 instruções de controle de movimento

Nota

A CPU calcula tarefas de movimento em "fatias" ou segmentos de 10 ms. Como uma fatia está sendo executado, a próxima
fatia está esperando na fila para ser executado. Se você interromper a tarefa de movimento em um eixo (executando uma
nova tarefa de movimento para o eixo), a nova tarefa de movimento não pode ser executado por um máximo de 20 ms (o
restante da fatia atual mais a fatia na fila).

9.3.3.1 instruções MC_Power

AVISO PRÉVIO

Se o eixo é desligado devido a um erro, ele será habilitado novamente automaticamente após o erro foi
eliminada e reconhecido. Isto requer que o parâmetro de entrada Ativar manteve o valor TRUE durante este
processo.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 375


instruções de tecnologia
9.3 Movimento controle

Tabela 9 26 instrução MC_Power

LAD / FBD SCL Descrição


"MC_Power_DB" ( A instrução de controle de movimento MC_Power ativa ou desativa
Axis: = _ multi_fb_in_, Ativar: = _ um eixo. Antes de poder ativar ou desativar o eixo, certifique-se as
bool_in_, StopMode: = _ int_in_, seguintes condições:
Status => _ bool_out_, Ocupado => • O objeto tecnologia tem sido configurados correctamente.
_ bool_out_, erro => _ bool_out_,
ErrorID => _ word_out_, ErrorInfo =>
• Não há pendente erro permitir inibidoras. A execução de MC_Power
_ word_out_);
não pode ser abortada por uma tarefa de controle de movimento. A
desativação do eixo (parâmetro de entrada Enable = FALSE) aborta todas
as tarefas de controle de movimento para o objeto tecnologia associada.

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_Power_DB" é o nome da instância DB.

Tabela 9- 27 Parâmetros para a instrução MC_Power

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

Habilitar EM Bool • FALSE (padrão): Todas as tarefas ativas são abortadas de acordo com o
"StopMode" parametrizado eo eixo está parado.

• VERDADEIRO: Motion Control tentativas para permitir que o eixo.

StopMode EM int • 0: Parada de emergência: Se uma solicitação para desativar o eixo está pendente, os freios de
eixo na desaceleração de emergência configurado. O eixo é desativado depois de atingir
paralisação.

• 1: Paragem imediata: Se uma solicitação para desativar o eixo está pendente, este eixo é

desativado sem desaceleração. saída de pulso é interrompido imediatamente.

• 2: Parada de emergência com controle empurrão: Se uma solicitação para desativar o eixo está pendente,

os freios de eixo na desaceleração de paragem de emergência configurado. Se o controlo de empurrão é

activado, o empurrão configurado é levada em conta. O eixo é desativado depois de atingir paralisação.

estado FORA Bool Estatuto de eixo permitir:

• FALSE: O eixo está desativado:

- O eixo não executa tarefas de controle de movimento e não aceita nenhum novas
tarefas (excepção: tarefa MC_Reset).

- O eixo não é hospedada.

- Após a desativação, o status não mudar para FALSE até o eixo alcança um
impasse.

• TRUE: O eixo está habilitado:

- O eixo está pronto para executar tarefas de controle de movimento.

- Mediante eixo permitindo, a situação não muda para TRUE até que o sinal "Drive pronto"
está pendente. Se o "Drive pronto" interface de unidade não foi configurado na
configuração do eixo, o status muda para VERDADEIRO imediatamente.

controlador programável S7-1200

376 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Parâmetro e tipo Tipo de dados Descrição

Ocupado FORA Bool FALSO: MC_Power não está ativo. TRUE:

MC_Power está ativo.

Erro FORA Bool FALSO: Nenhum erro

TRUE: Ocorreu um erro no controle de movimento instrução "MC_Power" ou no objeto


tecnologia associada. A causa do erro pode ser encontrado em parâmetros "ErrorID" e
"ErrorInfo".

ErrorID FORA Palavra ID de erro para o parâmetro "Error""

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID"

① Um eixo é habilitado e, em seguida, desativada novamente. Depois que a unidade tem sinalizado "Drive pronto" de volta para a CPU, o
bem sucedida permitem podem ser lidos através de "Status_1".

② Após um eixo permitir, ocorreu um erro que causou o eixo a ser desativado. O erro é eliminado e
reconhecido com "MC_Reset". O eixo é então habilitado novamente.

Para permitir um eixo com interface de unidade configurada, seguir estes passos:

1. Verifique os requisitos indicados acima.

2. Inicializar parâmetro de entrada "StopMode" com o valor desejado. Conjunto de parâmetros de entrada
"Enable" para TRUE.

A ativar a saída de "Drive habilitado" muda para TRUE para ativar a energia para a unidade. A CPU aguarda o
sinal de "Drive pronto" da unidade.

Quando o sinal de "Drive pronto" está disponível na entrada do pronto configurado da CPU, o eixo torna-se
habilitado. parâmetro de saída "Status" e marca de objeto tecnologia <nome Axis> .StatusBits.Enable indica o valor
TRUE. Para permitir um eixo sem interface de unidade configurada, seguir estes passos:

1. Verifique os requisitos indicados acima.

2. Inicializar parâmetro de entrada "StopMode" com o valor desejado. Conjunto de parâmetros de entrada
"Enable" para TRUE. O eixo está habilitado. parâmetro de saída "Status" e marca de objeto tecnologia <nome Axis>
.StatusBits.Enable indicar o valor TRUE.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 377


instruções de tecnologia
9.3 Movimento controle

Para desativar um eixo, siga estes passos:

1. Traga o eixo a uma paralisação.

Você pode identificar quando o eixo está parado na tecnologia objeto tag <nome Axis>
.StatusBits.StandStill.

2. Definir parâmetro de entrada "Ativar" para FALSE após a paralisação é atingido.

3. Se os parâmetros de saída "Ocupado" e "Status" e marca de objeto tecnologia <Axis


nome> .StatusBits.Enable indicar o valor FALSE, a desativação do eixo está completa.

9.3.3.2 instruções MC_Reset

Tabela 9 28 instrução MC_Reset

LAD / FBD SCL Descrição


"MC_Reset_DB" ( Use a instrução MC_Reset a reconhecer "erro operacional
Axis: = _ multi_fb_in_, Executar: = _ com parada do eixo" e "Erro de configuração". Os erros que
bool_in_, Restart: = _ bool_in_, exigem reconhecimento pode ser encontrada na "Lista de
Done => _ bool_out_, Ocupado => _ ErrorIDs e ErrorInfos" em "Solução". Antes de utilizar a
bool_out_, erro => _ bool_out_, instrução MC_Reset, você deve ter eliminado a causa de
ErrorID => _ word_out_, ErrorInfo => um erro de configuração pendentes que exigem

_ word_out_); reconhecimento (por exemplo, alterando um valor de


aceleração inválida no "Eixo" objeto tecnologia para um
valor válido).

A partir de V3.0 e, mais tarde, o comando Restart permite a


configuração de eixos para ser baixado para a memória de
trabalho no modo de operação RUN.

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_Reset_DB" é o nome da instância DB.

A tarefa MC_Reset não pode ser abortado por qualquer outra tarefa de controle de movimento. A nova tarefa MC_Reset não abortar quaisquer
outras tarefas de controle de movimento ativo.

Tabela 9 29 Parâmetros da instrução MC_Reset

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

Executar EM Bool Início da tarefa com um flanco positivo

Reiniciar EM Bool TRUE = Baixar a configuração de eixos a partir da memória de carga para a memória de trabalho.
O comando só pode ser executado quando o eixo está desativado.

= False Reconhece erros pendentes

Feito FORA Bool TRUE = erro foi reconhecido.

Ocupado FORA Bool TRUE = A tarefa está sendo executada.

controlador programável S7-1200

378 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Parâmetro e tipo Tipo de dados Descrição

Erro FORA Bool TRUE = Ocorreu um erro durante a execução da tarefa. A causa do erro pode
ser encontrado em parâmetros "ErrorID" e "ErrorInfo".

ErrorID SAIDA Palavra ID de erro para o parâmetro "Error""

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID"

Para confirmar um erro com MC_Reset, siga estes passos:

1. Verifique os requisitos indicados acima.

2. Comece o reconhecimento do erro com uma borda de subida no parâmetro de entrada Execute.

3. O erro foi reconhecido quando feito igual a true eo objeto tecnologia


tag <nome Axis> .StatusBits.Error é igual a FALSE.

9.3.3.3 instruções MC_Home

Tabela 9 30 instrução MC_Home

LAD / FBD SCL Descrição


"MC_Home_DB" ( Use a instrução MC_Home para coincidir com o eixo
Axis: = _ multi_fb_in_, Executar: = _ coordenadas para a posição de movimento real, física.
bool_in_, Posição: = _ real_in_, Mode: = _ Homing é necessário para o posicionamento absoluto
int_in_, Done => _ bool_out_, Ocupado => _ do eixo: Para utilizar a instrução MC_Home, o eixo deve
bool_out_, CommandAborted => _ primeiro ser ativado.
bool_out_, erro => _ bool_out_, ErrorID => _
word_out_, ErrorInfo => _ word_out_) ;

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_Home_DB" é o nome da instância DB.

Os seguintes tipos de homing estão disponíveis:

● homing direta absoluta (Mode = 0): A posição do eixo atual é definida como o valor do parâmetro
"Posição".

● homing direta relativa (Mode = 1): A posição atual dos eixos é compensado pelo valor do parâmetro "Posição".

● homing passiva (Mode = 2): Durante homing passiva, a instrução MC_Home não realizar qualquer movimento homing. O
movimento de deslocamento necessário para esta etapa deve ser implementado pelo usuário através de outras instruções de
controle de movimento. Quando o interruptor de ponto de referência é detectada, o eixo está hospedada.

● homing ativa (Mode = 3): O procedimento de homing é executada automaticamente.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 379


instruções de tecnologia
9.3 Movimento controle

Tabela 9- 31 Parâmetros para a instrução MC_Home

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_PTO Axis objeto tecnologia

Executar EM Bool Início da tarefa com um flanco positivo

Posição EM Real • Modo = 0, 2, e 3 (posição absoluta do eixo após a conclusão


da operação de homing)

• Modo = 1 (valor de correcção para a posição actual do eixo) Valores limite:


-1.0e 12 ≤ 1.0e ≤ Posição 12

Modo EM int modo de homing

• 0: homing direto absoluta

Nova posição do eixo é o valor da posição do parâmetro "Posição".

• 1: homing directa relativa

Nova posição do eixo é o valor da posição do eixo + posição atual do


parâmetro "Posição".

• 2: homing passiva

Homing de acordo com a configuração do eixo. Após homing, o valor do


parâmetro "Posição" é definido como a nova posição do eixo.

• 3: homing Ativo

aproximação do ponto de referência de acordo com a configuração do eixo.


Após homing, o valor do parâmetro "Posição" é definido como a nova
posição do eixo.

Feito FORA Bool TRUE = Tarefa concluída

Ocupado FORA Bool TRUE = A tarefa está sendo executada.

CommandAborted FORA Bool = Verdadeiro durante a execução da tarefa foi abortada por outra tarefa.

Erro FORA Bool TRUE = Ocorreu um erro durante a execução da tarefa. A causa do erro
pode ser encontrado em parâmetros "ErrorID" e "ErrorInfo".

ErrorID FORA Palavra ID de erro para o parâmetro "Error""

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID"

Nota
Axis homing está perdido sob as seguintes condições

• A desativação do eixo pela instrução MC_Power


• Alternância entre o controlo automático e controlo manual
• No momento do início da homing activo (Após a conclusão da operação de direcção, eixo homing está novamente
disponível.)

• Após a CPU ciclismo poder


• Após o reinício do CPU (RUN-to-STOP ou STOP-to-run)

controlador programável S7-1200

380 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Para casa do eixo, siga estes passos:

1. Verifique os requisitos indicados acima.

2. Inicializar os parâmetros de entrada necessários com os valores, e começar a operação com homing
uma borda de subida no parâmetro de entrada "Executar".

3. Se o parâmetro de saída "Done" e objeto tag tecnologia <Axis


name> .StatusBits.HomingDone indicar o valor TRUE, homing está completa.

Tabela resposta 9- 32 Substituir

Modo Descrição

0 ou 1 A tarefa MC_Home não pode ser abortado por qualquer outra tarefa de controle de movimento. A nova tarefa MC_Home não abortar quaisquer tarefas de controle de
movimento ativo. tarefas de movimento relacionados com a posição são retomadas após homing de acordo com a nova posição homing (valor no parâmetro de
entrada Position).

2 A tarefa MC_Home pode ser abortado pelas seguintes tarefas de controle de movimento:

MC_Home Modo tarefa = 2, 3: A nova tarefa MC_Home aborta a seguinte tarefa de controlo de movimento activo. MC_Home Modo task = 2: tarefas
de movimento relacionados com a posição são retomadas após homing de acordo com a nova posição homing (valor no parâmetro de entrada
Position).

3 A tarefa MC_Home pode ser abortado pelas seguintes tarefas de controle de A nova tarefa MC_Home aborta as seguintes tarefas de controle de
movimento: movimento ativo:

• Modo MC_Home = 3 • Modo MC_Home = 2, 3

• MC_Halt • MC_Halt

• MC_MoveAbsolute • MC_MoveAbsolute

• MC_MoveRelative • MC_MoveRelative

• MC_MoveVelocity • MC_MoveVelocity

• MC_MoveJog • MC_MoveJog

9.3.3.4 instruções MC_Halt

Tabela 9- 33 instrução MC_Halt

LAD / FBD SCL Descrição


"MC_Halt_DB" ( Use a instrução MC_Halt para parar todo o movimento
Axis: = _ multi_fb_in_, Executar: = _ e traz o eixo de um stand ainda. A posição
bool_in_, Done => _ bool_out_, Ocupado => stand-ainda não está definido. Para utilizar a instrução
_ bool_out_, CommandAborted => _ MC_Halt, o eixo deve primeiro ser ativado.
bool_out_, erro => _ bool_out_, ErrorID => _
word_out_, ErrorInfo => _ word_out_);

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_Halt_DB" é o nome da instância DB.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 381


instruções de tecnologia
9.3 Movimento controle

Tabela 9- 34 Parâmetros para a instrução MC_Halt

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

Executar EM Bool Início da tarefa com um flanco positivo

Feito FORA Bool VERDADEIRO velocidade = Zero alcançado

Ocupado FORA Bool TRUE = A tarefa está sendo executada.

CommandAborted FORA Bool = Verdadeiro durante a execução da tarefa foi abortada por outra tarefa.

Erro FORA Bool TRUE = Ocorreu um erro durante a execução da tarefa. A causa do erro
pode ser encontrado em parâmetros "ErrorID" e "ErrorInfo".

ErrorID FORA Palavra ID de erro para o parâmetro "Error"

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID"

Os seguintes valores foram configurados na janela de configuração "Dynamics> Geral": Aceleração = 10,0 e desaceleração = 5,0

① O eixo é freado por uma tarefa MC_Halt até que chega a um impasse. A paralisação eixo é sinalizado através de "Done_2".
② Enquanto uma tarefa MC_Halt está freando o eixo, esta tarefa é abortada por outra tarefa movimento. O aborto é sinalizada através
"Abort_2".

controlador programável S7-1200

382 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

resposta override
A tarefa MC_Halt pode ser abortado pelas seguintes tarefas de A nova tarefa MC_Halt aborta as seguintes tarefas de controle
controle de movimento: de movimento ativo:

• Modo MC_Home = 3 • Modo MC_Home = 3


• MC_Halt • MC_Halt
• MC_MoveAbsolute • MC_MoveAbsolute
• MC_MoveRelative • MC_MoveRelative
• MC_MoveVelocity • MC_MoveVelocity
• MC_MoveJog • MC_MoveJog

9.3.3.5 instruções MC_MoveAbsolute

Tabela 9- 35 instrução MC_MoveAbsolute

LAD / FBD SCL Descrição


"MC_MoveAbsolute_DB" ( Use a instrução MC_MoveAbsolute para iniciar
Axis: = _ multi_fb_in_, Executar: = _ um movimento de posicionamento do eixo para
bool_in_, Posição: = _ real_in_, Velocity: = _ uma posição absoluta. Para utilizar a instrução
real_in_, Done => _ bool_out_, Ocupado => MC_MoveAbsolute, o eixo deve primeiro ser
_ bool_out_, CommandAborted => _ ativado e também deve ser hospedados.
bool_out_, erro => _ bool_out_, ErrorID => _
word_out_, ErrorInfo => _ word_out_) ;

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_MoveAbsolute_DB" é o nome da instância DB.

Tabela 9- 36 Parâmetros para a instrução MC_MoveAbsolute

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

Executar EM Bool Início da tarefa com um flanco positivo (Valor padrão: False)

Posição EM Real posição alvo absoluto (valor padrão: 0,0) Os


valores-limite: -1.0e 12 ≤ 1.0e ≤ Posição 12

Velocidade EM Real Velocidade de (valor padrão: 10,0) eixo Esta velocidade nem sempre é
alcançada devido à aceleração e desaceleração configurado e da posição do
alvo a ser abordada.

valores-limite: Velocity Start / stop velocidade ≤ ≤ velocidade máxima

Feito FORA Bool posição TRUE = alvo absoluta alcançado

Ocupado FORA Bool TRUE = A tarefa está sendo executada.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 383


instruções de tecnologia
9.3 Movimento controle

Parâmetro e tipo Tipo de dados Descrição

CommandAborted FORA Bool = Verdadeiro durante a execução da tarefa foi abortada por outra tarefa.

Erro FORA Bool TRUE = Ocorreu um erro durante a execução da tarefa. A causa do erro pode
ser encontrado em parâmetros "ErrorID" e "ErrorInfo".

ErrorID FORA Palavra ID de erro para o parâmetro "Error" (Valor padrão: 0000)

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID" (Valor padrão: 0000)

Os seguintes valores foram configurados na janela de configuração "Dynamics> Geral": Aceleração = 10,0 e desaceleração = 10,0

① Um eixo é movido para a posição absoluta 1000,0 com uma tarefa MC_MoveAbsolute. Quando o eixo atinge o alvo
posição, esta é sinalizada através de "Done_1". Quando "Done_1" = TRUE, outra tarefa MC_MoveAbsolute, com posição de destino 1500.0, é iniciado. Devido aos
tempos de resposta (por exemplo, o tempo de ciclo do programa do utilizador, etc), o eixo trata de um brevemente parado (ver ampliada em detalhe). Quando o eixo
alcança a nova posição do alvo, isto é sinalizado através de "Done_2".

② Uma tarefa MC_MoveAbsolute ativo é abortada por outra tarefa MC_MoveAbsolute. O aborto é sinalizada através
"Abort_1". O eixo é então movido para a nova velocidade para a nova posição do alvo 1500,0. Quando a nova posição do alvo é atingido, esta é
sinalizada através de "Done_2".

controlador programável S7-1200

384 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

resposta override
A tarefa MC_MoveAbsolute pode ser abortado pelas A nova tarefa MC_MoveAbsolute aborta as seguintes
seguintes tarefas de controle de movimento: tarefas de controle de movimento ativo:

• Modo MC_Home = 3
• Modo MC_Home = 3 • MC_Halt
• MC_Halt • MC_MoveAbsolute
• MC_MoveAbsolute • MC_MoveRelative
• MC_MoveRelative • MC_MoveVelocity
• MC_MoveVelocity • MC_MoveJog
• MC_MoveJog

9.3.3.6 instruções MC_MoveRelative

Tabela 9- 37 instrução MC_MoveRelative

LAD / FBD SCL Descrição


"MC_MoveRelative_DB" ( Use a instrução MC_MoveRelative para iniciar
Axis: = _ multi_fb_in_, Executar: = _ um posicionamento movimento relativo à
bool_in_, Distância: = _ real_in_, Velocity: = posição inicial. Para utilizar a instrução
_ real_in_, Done => _ bool_out_, Ocupado MC_MoveRelative, o eixo deve primeiro ser
=> _ bool_out_, CommandAborted => _ ativado.
bool_out_, erro => _ bool_out_, ErrorID => _
word_out_, ErrorInfo => _ word_out_) ;

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_MoveRelative_DB" é o nome da instância DB.

Tabela 9- 38 Parâmetros para a instrução MC_MoveRelative

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

Executar EM Bool Início da tarefa com um flanco positivo (Valor padrão: False)

Distância EM Real distância do curso para a operação de posicionamento (Valor padrão: 0,0) Os valores-limite:
-1.0e 12 ≤ 1.0e ≤ Distância 12

Velocidade EM Real Velocidade de eixo (valor padrão: 10,0)

Esta velocidade nem sempre é alcançada em virtude da aceleração e desaceleração


configurado e da distância a ser percorrida. valores-limite: Velocity Start / stop
velocidade ≤ ≤ velocidade máxima

Feito FORA Bool TRUE = Posição de destino alcançada

Ocupado FORA Bool TRUE = A tarefa está sendo executada.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 385


instruções de tecnologia
9.3 Movimento controle

Parâmetro e tipo Tipo de dados Descrição

CommandAborted FORA Bool = Verdadeiro durante a execução da tarefa foi abortada por outra tarefa.

Erro FORA Bool TRUE = Ocorreu um erro durante a execução da tarefa. A causa do erro pode
ser encontrado em parâmetros "ErrorID" e "ErrorInfo".

ErrorID FORA Palavra ID de erro para o parâmetro "Error" (Valor padrão: 0000)

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID" (Valor padrão: 0000)

Os seguintes valores foram configurados na janela de configuração "Dynamics> Geral": Aceleração = 10,0 e desaceleração = 10,0

① O eixo é movido por uma tarefa MC_MoveRelative pela distância ( "Distância") 1000.0. Quando o eixo atinge o
posição alvo, este é sinalizado através de "Done_1". Quando "Done_1" = TRUE, outra tarefa MC_MoveRelative, com distância de viagem 500,0, é iniciado. Devido
aos tempos de resposta (por exemplo, o tempo de ciclo do programa do utilizador), o eixo trata de um brevemente parado (ver ampliada em detalhe). Quando o
eixo alcança a nova posição do alvo, isto é sinalizado através de "Done_2".

② Uma tarefa MC_MoveRelative ativo é abortada por outra tarefa MC_MoveRelative. O aborto é sinalizada através
"Abort_1". O eixo é então movido para a nova velocidade da nova distância ( "Distância") 500,0. Quando a nova posição do alvo é atingido, esta é
sinalizada através de "Done_2".

controlador programável S7-1200

386 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

resposta override
A tarefa MC_MoveRelative pode ser abortado pelas seguintes A nova tarefa MC_MoveRelative aborta as seguintes tarefas de
tarefas de controle de movimento: controle de movimento ativo:

• Modo MC_Home = 3 • Modo MC_Home = 3


• MC_Halt • MC_Halt
• MC_MoveAbsolute • MC_MoveAbsolute
• MC_MoveRelative • MC_MoveRelative
• MC_MoveVelocity • MC_MoveVelocity
• MC_MoveJog • MC_MoveJog

9.3.3.7 instruções MC_MoveVelocity

Tabela 9 39 instrução MC_MoveVelocity

LAD / FBD SCL Descrição


"MC_MoveVelocity_DB" ( Use a instrução MC_MoveVelocity para
Axis: = _ multi_fb_in_, Executar: = _ mover o eixo constantemente na velocidade
bool_in_, Velocity: = _ real_in_, Direção: = _ especificada. Para utilizar a instrução
int_in_, atual: = _ bool_in_, InVelocity => _ MC_MoveVelocity, o eixo deve primeiro ser
bool_out_, Ocupado => _ bool_out_, ativado.
CommandAborted => _ bool_out_, erro => _
bool_out_, ErrorID => _ word_out_, ErrorInfo
=> _ word_out_);

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_MoveVelocity_DB" é o nome da instância DB.

Tabela 9- 40 Parâmetros para a instrução MC_MoveVelocity

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

Executar EM Bool Início da tarefa com um flanco positivo (Valor padrão: False)

Velocidade EM Real especificação de velocidade para o movimento do eixo (Valor padrão: 10.0) valores-limite: Iniciar

velocidade / stop ≤ | Velocity | ≤ velocidade máxima (velocidade = 0,0 é permitido)

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 387


instruções de tecnologia
9.3 Movimento controle

Parâmetro e tipo Tipo de dados Descrição

Direção EM int especificação de direção:

• 0: Sentido de rotação corresponde ao sinal do valor no parâmetro "Velocity"


(Valor padrão)

• 1: (. O sinal do valor no parâmetro "Velocity" é ignorado) sentido de


rotação positivo

• 2: (. O sinal do valor no parâmetro "Velocity" é ignorado) direção de


rotação negativo

Atual EM Bool Manter a velocidade da corrente:

• FALSO: "Manter a velocidade da corrente" é desativado. Os valores dos


parâmetros "Velocity" e "Direção" são usados. (Valor padrão)

• TRUE: "Manter a velocidade da corrente" é ativado. Os valores dos


parâmetros "Velocity" e "Direção" não são levados em conta.

Quando o eixo retoma movimento na velocidade atual, o parâmetro


"InVelocity" retorna o valor TRUE.
InVelocity FORA Bool VERDADE:

• Se "Current" = FALSE: A velocidade especificada no parâmetro "Velocity" foi


atingido.

• Se "Current" = TRUE: O eixo viaja na velocidade da corrente na hora de início.

Ocupado FORA Bool TRUE = A tarefa está sendo executada.

CommandAborted FORA Bool = Verdadeiro durante a execução da tarefa foi abortada por outra tarefa.

Erro FORA Bool TRUE = Ocorreu um erro durante a execução da tarefa. A causa do erro pode
ser encontrado em parâmetros "ErrorID" e "ErrorInfo".

ErrorID FORA Palavra ID de erro para o parâmetro "Error" (Valor padrão: 0000)

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID" (Valor padrão: 0000)

controlador programável S7-1200

388 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Os seguintes valores foram configurados na janela de configuração "Dynamics> Geral": Aceleração = 10,0 e desaceleração = 10,0

① Um sinais de tarefas activas MC_MoveVelocity via "InVel_1" que a sua velocidade do alvo foi atingida. Em seguida, é abortada
por outra tarefa MC_MoveVelocity. O aborto é sinalizado através de "Abort_1". Quando a nova velocidade do alvo é atingido 15,0, este é sinalizado através
de "InVel_2". O eixo, em seguida, continua a mover na nova velocidade constante.

② Uma tarefa MC_MoveVelocity activo é abortada por uma outra tarefa MC_MoveVelocity antes de atingir a sua velocidade do alvo.
O aborto é sinalizado através de "Abort_1". Quando a nova velocidade do alvo é atingido 15,0, este é sinalizado através de "InVel_2". O eixo, em seguida, continua
a mover na nova velocidade constante.

resposta override
A tarefa MC_MoveVelocity pode ser abortado pelas seguintes A nova tarefa MC_MoveVelocity aborta as seguintes tarefas de
tarefas de controle de movimento: controle de movimento ativo:

• Modo MC_Home = 3 • Modo MC_Home = 3


• MC_Halt • MC_Halt
• MC_MoveAbsolute • MC_MoveAbsolute
• MC_MoveRelative • MC_MoveRelative
• MC_MoveVelocity • MC_MoveVelocity
• MC_MoveJog • MC_MoveJog

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 389


instruções de tecnologia
9.3 Movimento controle

Nota
Comportamento com a velocidade do ponto zero (velocidade = 0,0)

Uma tarefa MC_MoveVelocity com "Velocity" = 0,0 (tal como uma tarefa MC_Halt) aborta tarefas de movimento activas e pára o
eixo com a desaceleração configurado. Quando o eixo chega a um impasse, parâmetro de saída "InVelocity" indica
VERDADEIRO por pelo menos um ciclo do programa. "Ocupado" indica o valor TRUE durante a operação de desaceleração e as
mudanças para FALSE, juntamente com "InVelocity". Se o parâmetro "Executar" = TRUE está definida, "InVelocity" e "Ocupado"
está travada.

Quando a tarefa MC_MoveVelocity é iniciado, pouco status "SpeedCommand" é definido no objeto tecnologia. bit Status
"ConstantVelocity" é definido em cima paralisação eixo. Ambos os bits são adaptados à nova situação, quando uma nova
tarefa de movimento é iniciado.

9.3.3.8 instruções MC_MoveJog

Tabela 9 41 instrução MC_MoveJog

LAD / FBD SCL Descrição


"MC_MoveJog_DB" ( Use a instrução MC_MoveJog para mover o eixo
Axis: = _ multi_fb_in_, JogForward: = _ constantemente na velocidade especificada no modo
bool_in_, JogBackward: = _ bool_in_, manual. Esta instrução é normalmente usado para fins
Velocity: = _ real_in_, InVelocity => _ de comissionamento testes e. Para utilizar a instrução
bool_out_, Ocupado => _ bool_out_, MC_MoveJog, o eixo deve primeiro ser ativado.
CommandAborted => _ bool_out_, erro => _
bool_out_, ErrorID => _ word_out_, ErrorInfo
=> _ word_out_) ;

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_MoveJog_DB" é o nome da instância DB.

Tabela 9- 42 Parâmetros para a instrução MC_MoveJog

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

JogForward 1 EM Bool Contanto que o parâmetro é verdadeiro, o eixo se move no sentido positivo na
velocidade especificada no parâmetro "Velocity". O sinal do valor no parâmetro
"Velocity" é ignorado. (Valor padrão: False)

JogBackward 1 EM Bool Contanto que o parâmetro é verdadeiro, o eixo se move na direcção negativa na
velocidade especificada no parâmetro "Velocity". O sinal do valor no parâmetro
"Velocity" é ignorado. (Valor padrão: False)

Velocidade EM Real velocidade pré-definido para o modo Jog (Valor padrão: 10.0) Os valores-limite: Iniciar velocidade

/ stop ≤ | Velocity | ≤ velocidade máxima

controlador programável S7-1200

390 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Parâmetro e tipo Tipo de dados Descrição

InVelocity FORA Bool True = A velocidade especificada no parâmetro "Velocity" foi atingido.

Ocupado FORA Bool TRUE = A tarefa está sendo executada.

CommandAborted FORA Bool = Verdadeiro durante a execução da tarefa foi abortada por outra tarefa.

Erro FORA Bool TRUE = Ocorreu um erro durante a execução da tarefa. A causa do erro pode
ser encontrado em parâmetros "ErrorID" e "ErrorInfo".

ErrorID FORA Palavra ID de erro para o parâmetro "Error" (Valor padrão: 0000)

ErrorInfo FORA Palavra Erro informações ID para o parâmetro "ErrorID" (Valor padrão: 0000)

1
Se tanto o JogForward e parâmetros JogBackward são simultaneamente TRUE, o eixo é parado com a desaceleração configurado. Um erro é
indicado nos parâmetros "Erro", "ErrorID", e "ErrorInfo".

Os seguintes valores foram configurados na janela de configuração "Dynamics> Geral": Aceleração = 10,0 e desaceleração = 5,0

① O eixo é movido na direção positiva em modo manual através de "Jog_F". Quando a velocidade do alvo 50,0 for alcançado, isto é
sinalizado através de "InVelo_1". Os freios de eixo para um impasse novamente após Jog_F é reposto.

② O eixo é movido na direção negativa em modo manual através de "Jog_B". Quando a velocidade do alvo é atingido 50,0, este
é sinalizado através de "InVelo_1". Os freios de eixo para um impasse novamente após Jog_B é reposto.

resposta override
A tarefa MC_MoveJog pode ser abortado pelas seguintes A nova tarefa MC_MoveJog aborta as seguintes tarefas
tarefas de controle de movimento: de controle de movimento ativo:

• Modo MC_Home = 3 • Modo MC_Home = 3


• MC_Halt • MC_Halt
• MC_MoveAbsolute • MC_MoveAbsolute
• MC_MoveRelative • MC_MoveRelative
• MC_MoveVelocity • MC_MoveVelocity
• MC_MoveJog • MC_MoveJog

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 391


instruções de tecnologia
9.3 Movimento controle

9.3.3.9 instruções MC_CommandTable

Tabela 9 43 instrução MC_CommandTable

LAD / FBD SCL Descrição


"MC_CommandTable_DB" ( Executa uma série de movimentos individuais para
Axis: = _ multi_fb_in_, CommandTable: = _ um eixo de controlo de motor que se podem
multi_fb_in_, Executar: = _ bool_in_, combinar em uma sequência de movimentos.

StartIndex: = _ uint_in_, endIndex: = _ movimentos individuais são configurados em uma

uint_in_, Done => _ bool_out_, Ocupado => _ mesa de comando tecnologia objecto para a saída

bool_out_, CommandAborted => _ bool_out_, do trem de impulsos (TO_CommandTable_PTO).

erro => _ bool_out_, ErrorID => _ word_out_,


ErrorInfo => _ word_out_, CurrentIndex => _
uint_out_, Code => _ word_out_);

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_CommandTable_DB" é o nome da instância DB.

Quadro 9- 44 Parâmetros para a instrução MC_CommandTable

Parâmetro e tipo Tipo de dados Valor inicial Descrição

Eixo EM TO_Axis_1 - Axis objeto tecnologia

Mesa EM TO_CommandTable_1 - objeto de tabela tecnologia de comando

Executar EM Booll FALSO Iniciar o trabalho com borda de subida

StartIndex EM int 1 Iniciar o processamento de mesa de comando com isso limita passo: 1

≤ StartIndex ≤ índiceFinal

endIndex EM int 32 processamento de mesa de comando End com isso limita passo:

StartIndex ≤ endIndex ≤ 32

Feito FORA Bool FALSO processamento MC_CommandTable concluído com


êxito

Ocupado FORA Bool FALSO Operação em andamento

CommandAborted FORA Bool FALSO A tarefa foi abortada durante o processamento por outra
tarefa.

Erro FORA Bool FALSO Ocorreu um erro durante o processamento. A causa é indicado
pelos parâmetros errorID e errorInfo.

ErrorID OUT Palavra 16 # 0000 identificador de erro

ErrorInfo OUT Palavra 16 # 0000 informações de erro

Degrau FORA int 0 Passo actualmente em processo de

Código OUT Palavra 16 # 0000 Usuário identificador definido da etapa atualmente em processo

Você pode criar a seqüência de movimento desejado na janela de configuração "Tabela de Comando" e verificar o
resultado contra a visão gráfica no diagrama de tendência.

controlador programável S7-1200

392 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Você pode selecionar os tipos de comando que devem ser usados ​para o processamento de mesa de comando. Até 32 postos de trabalho
podem ser inseridos. Os comandos são processados ​em sequência.

Tabela 9- 45 tipos de comando MC_CommandTable

tipo de comando Descrição

Esvaziar O vazio serve como um marcador de posição para todos os comandos a ser adicionado. A entrada vazia é ignorada quando a
tabela de comando é processado

parada Pausa eixo.


Nota: O comando só ocorre após um comando de "Velocidade nominal".

Relativa posicionamento Posiciona o eixo com base na distância. O comando desloca o eixo pela distância e velocidade dada.

O posicionamento absoluto Posiciona o eixo com base em localização. O comando desloca o eixo para o local determinado, utilizando a
velocidade especificada.

ponto de ajuste de velocidade Move o eixo à velocidade dada.

Esperar Aguarda até que o período dado é longo. "Espera" não parar um movimento de deslocamento ativo.

Separador Adiciona uma linha "Separator" acima da linha selecionada. A linha de separação permite que mais de um perfil a ser definido em
uma mesa de comando único.

Pré-requisitos para a execução MC_CommandTable:

● O TO_Axis_PTO V2.0 tecnologia objecto tem de ser correctamente configurado.

● O objecto TO_CommandTable_PTO tecnologia deve ser correctamente configurado.

● O eixo deve ser liberado.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 393


instruções de tecnologia
9.3 Movimento controle

resposta override
A tarefa MC_CommandTable pode ser abortado pelas A nova tarefa MC_CommandTable aborta as seguintes tarefas de
seguintes tarefas de controle de movimento: controle de movimento ativo:

• Modo MC_Home = 3
• Modo MC_Home = 3 • MC_Halt
• MC_Halt • MC_MoveAbsolute
• MC_MoveAbsolute • MC_MoveRelative
• MC_MoveRelative • MC_MoveVelocity
• MC_MoveVelocity • MC_MoveJog
• MC_MoveJog • MC_CommandTable
• MC_CommandTable • O trabalho de controle de movimento atual com o lançamento do
primeiro "Posicionamento Relativo", "posicionamento absoluto",
"ponto de ajuste Velocity" ou comando "Halt"

9.3.3.10 MC_ChangeDynamic

Tabela 9- 46 instrução MC_ChangeDynamic

LAD / FBD SCL Descrição


"MC_ChangeDynamic_DB" ( Altera as configurações de dinâmica de um eixo de
Execute: = _ bool_in_, ChangeRampUp: = _ controle de movimento:

bool_in_, RampUpTime: = _ real_in_,


• Alterar o valor tempo de
ChangeRampDown: = _ bool_in_,
aceleração (aceleração)
RampDownTime: = _ real_in_,
• Alterar o tempo de desaceleração valor
ChangeEmergency: = _ bool_in_,
(desaceleração)
EmergencyRampTime: = _ real_in_,
ChangeJerkTime: = _ bool_in_, JerkTime: = _ • Alterar o tempo de paragem de emergência de

real_in_, Done => _ bool_out_, erro => _ desaceleração valor (desaceleração de paragem

bool_out_, ErrorID => _ word_out_, ErrorInfo => de emergência)

_ word_out_); • Alterar o tempo de alisamento valor


(empurrão)

1 STEP 7 cria automaticamente o DB quando você inserir a instrução.

2
No exemplo SCL, "MC_ChangeDynamic_DB" é o nome da instância DB.

Tabela 9- 47 Parâmetros para a instrução MC_ChangeDynamic

Parâmetro e tipo Tipo de dados Descrição

Eixo EM TO_Axis_1 Axis objeto tecnologia

Executar EM Bool Comece do comando com um flanco positivo. Valor padrão: FALSE

controlador programável S7-1200

394 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Parâmetro e tipo Tipo de dados Descrição

ChangeRampUp EM Bool TRUE = Mudança de tempo de aceleração em linha com parâmetro de entrada
"RampUpTime". Valor padrão: FALSE

RampUpTime EM Real Tempo (em segundos) para acelerar a partir do repouso para a velocidade máxima
configurado sem limite de empurrão. Valor padrão: 5.00 A mudança vai influenciar
a tag <nome Axis>. Config.DynamicDefaults.Acceleration. A eficácia da mudança é
mostrado na descrição dessa marca.

ChangeRampDown EM Bool TRUE = Alterar tempo de desaceleração em linha com parâmetro de entrada
"RampDownTime". Valor padrão: FALSE

RampDownTime EM Real Tempo (em segundos) para desacelerar eixo a partir da velocidade máxima configurado para
paralisação sem limitador de empurrão. Valor padrão:
5.00
A mudança vai influenciar o tag <nome Axis>.
Config.DynamicDefaults.Deceleration. A eficácia da mudança é mostrado na
descrição dessa marca.

ChangeEmergency EM Bool tempo de parada de desaceleração TRUE = Mudança de emergência em linha com parâmetro
de entrada "EmergencyRampTime" Valor padrão: FALSE

EmergencyRampTime EM Real Tempo (em segundos) para desacelerar o eixo de velocidade máximo configurado
para paralisação sem limitador de empurrão em modo de paragem de emergência.
Valor padrão: 2.00 A mudança vai influenciar a tag <nome Axis>.
Config.DynamicDefaults.EmergencyDeceleration. A eficácia da mudança é mostrado
na descrição dessa marca.

ChangeJerkTime EM Bool TRUE = Mudança suavização tempo de acordo com o parâmetro de entrada
"JerkTime". Valor padrão: FALSE

JerkTime EM Real Alisando tempo (em segundos) utilizado para a aceleração do eixo e as rampas de
desaceleração. Valor padrão: 0,25 A mudança irá influenciar a tag <nome Axis>.
Config.DynamicDefaults.Jerk. A eficácia da mudança é mostrado na descrição
dessa marca.

Feito FORA Bool TRUE = Os valores alterados foram escritos para o bloco de dados
tecnologia. A descrição das tags mostrará quando a mudança se torna
efetiva. Valor padrão: FALSE

Erro FORA Bool TRUE = Ocorreu um erro durante a execução do comando. A causa do erro
pode ser encontrado em parâmetros "ErrorID" e "ErrorInfo". Valor padrão: FALSE

ErrorID OUT Palavra identificador de erro. Valor padrão: 16 # 0000

ErrorInfo EM Palavra Informações de erro. Valor padrão: 16 # 0000

Pré-requisitos para a execução MC_ ChangeDynamic:

● O TO_Axis_PTO V2.0 tecnologia objecto tem de ser correctamente configurado.

● O eixo deve ser liberado.

resposta override

Um comando MC_ChangeDynamic não pode ser abortado por qualquer outro comando Controle de Movimento.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 395


instruções de tecnologia
9.3 Movimento controle

Um novo comando MC_ChangeDynamic não abortar quaisquer trabalhos de Controle de Movimento ativos.

Nota

Os parâmetros de entrada "RampUpTime", "RampDownTime", "EmergencyRampTime" e "RoundingOffTime" pode ser


especificado com valores que faz com que os parâmetros do eixo resultantes "aceleração", "atraso", "paragem de atraso
de emergência" e "empurrão" fora do admissível limites. Certifique-se de manter os parâmetros MC_ChangeDynamic
dentro dos limites das definições de configuração dinâmica para o objeto tecnológico eixo.

9.3.4 Operação de controle de movimento para S7-1200

9.3.4.1 saídas de CPU usado para controle de movimento

A CPU fornece quatro geradores de saída de pulso. Cada gerador de saída de pulso fornece uma saída de impulsos e uma saída de
sentido para controlar uma unidade de motor de passo ou um servo motor de accionamento com interface de pulso. A saída de
impulsos fornece o accionamento com os impulsos requeridos para o movimento do motor. A saída de direção controla a direção de
deslocamento da unidade. saídas de pulso e direção são permanentemente atribuído a um outro. Bordo saídas e saídas de uma placa
de sinal da CPU pode ser usada como saída de impulsos e de direcção. Você seleciona entre as saídas de CPU bordo e saídas do
conselho do sinal durante a configuração do dispositivo sob geradores de pulso (PTO / PWM) na guia "Propriedades". Apenas PTO
(trem de pulso de saída) se aplica ao controle de movimento.

A saída PTO gera uma saída de frequência variável de onda quadrada. geração de impulsos é controlado pela
configuração e execução informações fornecidas através H / W configuração e / ou SFC / SFBs.

Com base na seleção do usuário enquanto a CPU está no modo RUN, quer os valores armazenados no registo de
imagem ou as saídas do gerador de pulsos conduzir as saídas digitais. No modo STOP, o gerador de PTO não controla
as saídas.

Quadro 9- 48 atribuições de endereço do saídas de impulsos e de direcção

Uso de saídas para controle de movimento

Pulso Direção

PTO 0

Built-in I / O Q0.0 Q0.1

SB / S Q4.0 Q4.1

PTO 1

Built-in I / O Q0.2 Q0.3

SB / S Q4.2 Q4.3

PTO 2

Built-in I / O Q0.4 1 Q0.5 1

SB / S Q4.0 Q4.1

PTO 3

controlador programável S7-1200

396 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

Uso de saídas para controle de movimento

Built-in I / O Q0.6 2 Q0.7 2

SB / S Q4.2 Q4.3

1 O 1211C CPU não tem saídas Q0.4, Q0.5, Q0.6 ou Q0.7. Portanto, essas saídas

não pode ser usado na 1211C CPU.


2O 1212C CPU não tem saídas Q0.6 ou Q0.7. Portanto, essas saídas não podem ser usados ​em

a 1212C CPU.
3 Esta tabela se aplica ao 1211C CPU, 1212C CPU, 1214c CPU, e as funções PTO 1215c CPU

interface de unidade

Para controle de movimento, você pode opcionalmente configurar uma interface de unidade para "Drive habilitado" e "Drive pronto". Quando
se utiliza a interface da unidade, a saída digital para o acionamento e a entrada digital para "conduzir pronto" pode ser seleccionado
livremente.

Nota

O firmware irá assumir o controlo via os correspondentes saídas de impulsos e direcção, se a tomada de força (trem de pulso
de saída) foi seleccionado e atribuído a um eixo.

Com esta aquisição da função de controlo, a ligação entre a imagem do processo e de I / O de saída é também desligado.
Enquanto o usuário tem a possibilidade de escrever a imagem do processo de saídas de pulso e direção através do programa de
usuário ou assistir a mesa, isso nunca é transferido para a saída I / O. Assim, também não é possível monitorar a saída I / O por
meio do programa de usuário ou assistir a mesa. As informações ler apenas reflete o valor da imagem do processo e não coincide
com o estado real da saída I / O em qualquer aspecto. Para todas as outras saídas de CPU que não são usados ​de forma
permanente pelo firmware do CPU, o estado da saída I / O podem ser controlados ou monitorados via a imagem do processo,
como de costume.

9.3.4.2 interruptores de hardware e de curso de software para controle de movimento

Use as chaves de hardware e software limite para limitar a "faixa de deslocamento permitido" e da "faixa de trabalho" do
seu eixo.

① parada mecânica A faixa de deslocamento admitidos para o eixo

② limites de hardware inferior e superior B gama de trabalho do eixo


③ limites de software inferior e superior C Distância

Hardware e software de limite interruptores deve ser activado antes de ser utilizado na configuração ou no programa do utilizador.
interruptores de limite de software só estão activos depois de homing do eixo.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 397


instruções de tecnologia
9.3 Movimento controle

interruptores de limite de hardware

interruptores de limite de hardware determinar o intervalo de percurso máximo do eixo. interruptores de limite de hardware são elementos
de comutação físicas que devem ser ligados para interromper-capazes entradas da CPU. Use apenas interruptores de limite de hardware
que permanecem permanentemente ligado depois de ser abordado. Este estado de comutação só pode ser revogada após um retorno à
faixa de deslocamento permitido.

Quadro 9- 49 entradas disponíveis para geradores de impulsos

Descrição RPS limi- LIM +

PTO 0

Built-in I / O I0.0 - I1.5

SB / S I4.0 - I4.3

PTO 1

Built-in I / O I0.0 - I1.5

SB / S I4.0 - I4.3

PTO 2

Built-in I / O I0.0 - I1.5

SB / S I4.0 - I4.3

PTO 3

Built-in I / O I0.0 - I1.5

SB / S I4.0 - I4.3

Quando os interruptores de limite de hardware são abordados, os freios de eixo para uma paralisação na desaceleração de
urgência configurado. A desaceleração de urgência especificado deve ser suficiente para parar de forma fiável o eixo antes da
paragem mecânica. O diagrama a seguir apresenta o comportamento do eixo depois se aproxima dos interruptores de limite
de hardware.

controlador programável S7-1200

398 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

① Os freios de eixo para uma paralisação no decleration emergência configurado.


② Faixa em que as chaves fim de curso de hardware sinalizar as estatísticas "se aproximou". UMA
[Velocidade] B

Permitiu faixa de deslocamento C

Distância D

parada mecânica E

Lower fim de curso de hardware F

interruptor de limite de hardware superior

AVISO

Se o tempo de filtro para um canal de entrada digital é alterado a partir de uma configuração anterior, um novo valor de entrada do nível
de "0" pode ter de ser apresentada para cima para 20,0 ms duração acumulados antes de o filtro torna-se totalmente responsivo a novas
entradas. Durante este tempo, "0" eventos pulso curto de duração inferior a 20,0 ms podem não ser detectados ou contados.

Esta mudança dos tempos de filtro pode resultar em máquina inesperado ou operação do processo, o que pode causar a
morte ou lesões graves a pessoas e / ou danos ao equipamento. Para garantir que um novo tempo do filtro vai imediatamente
em vigor, um ciclo de energia da CPU deve ser aplicada.

interruptores de limite de software

interruptores de limite software limitar a "faixa de trabalho" do eixo. Eles devem cair dentro do limite de hardware muda em relação à faixa
de deslocamento. Uma vez que as posições dos interruptores de limite software pode ser configurado de forma flexível, a gama de
trabalho do eixo pode ser restringida numa base individual, dependendo do perfil de deslocamento actual. Em contraste com interruptores
de limite de hardware, chaves fim de curso de software são implementadas exclusivamente por meio do software e não requerem os seus
próprios elementos de comutação.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 399


instruções de tecnologia
9.3 Movimento controle

Se chaves fim de curso de software são ativadas, um movimento ativo é parado na posição do fim de curso de software.
O eixo é travado na desaceleração configurado. O diagrama a seguir apresenta o comportamento do eixo até que ele
atinja os comutadores de limite de software.

① Os freios de eixo para uma paralisação na desaceleração configurado. UMA


[Velocidade] B

gama de trabalho C

Distância D

software Lower interruptor de limite E

interruptor de limite software superior

Use interruptores de limite de hardware adicionais se um fim de curso mecânico está localizado após os interruptores de limite
software e há um risco de danos mecânicos.

Informação adicional

Seu programa de usuário pode substituir os limites de hardware ou software de posição por ativar ou desativar a
funcionalidade de hardware e limites de software. A seleção é feita a partir do eixo DB.

● Para ativar ou desativar a funcionalidade limite de hardware, acessar a tag "Ativo" (Bool) no caminho DB "<eixo
name> / Config / PositonLimits_HW". O estado da tag "Ativo" ativa ou desativa o uso de limites de posição
hardware.

● Para activar ou desactivar software funcionalidade limite de posição, o acesso tag "Ativo" (Bool) no caminho DB "<eixo
name> / Config / Posição Limits_SW". O estado desta tag "Ativo" ativa ou desativa os limites de posição software.

Você também pode modificar os limites de posição de software com o seu programa de usuário (por exemplo, para adicionar flexibilidade para a
configuração da máquina ou para encurtar change-over máquina do tempo). Seu programa de usuário pode escrever novos valores para o
"MinPosition" e tags "MaxPosition" (unidades de engenharia em formato real) no DB "<eixo name> / Config / PositionLimits_SW".

controlador programável S7-1200

400 Manual do sistema, 04/2012, A5E02486680-06


instruções de tecnologia
9.3 Movimento controle

9.3.4.3 homing

Homing refere-se à combinação do eixo coordenadas para a posição de movimento físico real. (Se a unidade estiver actualmente
na posição x, o eixo será ajustado para estar na posição x.) Para eixos controlada posição-, as entradas e visores para a posição
referem-se exactamente para essas coordenadas de eixo.

Nota

O acordo entre as coordenadas dos eixos e a situação real é extremamente importante. Este passo é necessário para
garantir que a posição alvo absoluta do eixo também é conseguida exactamente com a unidade.

A instrução MC_Home inicia o homing do eixo.

Existem 4 funções homing diferentes. As primeiras duas funções permitem ao utilizador definir a posição actual do
eixo e a segunda posição dois do eixo relativamente a um sensor de referência inicial.

● Modo 0 - Direct referência absoluta: Quando executado deste modo diz o eixo exatamente onde ele está. Ele define a
variável posição interna para o valor da entrada Posição da instrução Homing. Isto é usado para calibração de máquinas e
configuração. A posição do eixo é definido independentemente do interruptor de ponto de referência. movimentos de
deslocamento ativos não são abortados. O valor do parâmetro de entrada Posição da instrução MC_Home é definido
imediatamente como o ponto de referência do eixo. Para atribuir o ponto de referência para uma posição mecânico exacto, o
eixo deve estar parado nesta posição no momento da operação de homing.

● Modo 1 - Direct referência relativa: Quando executado este modo usa a variável posição interna e adiciona o valor
da entrada de posição sobre a instrução Homing a ele. Isto é tipicamente usado para contabilizar compensar
máquina.

A posição do eixo é definido independentemente do interruptor de ponto de referência. movimentos de deslocamento ativos
não são abortados. A declaração a seguir aplica-se à posição do eixo após homing: Posição New eixo = posição atual dos
eixos + valor do parâmetro Posição da instrução MC_Home.

S7-1200 programável Manual do controlador do sistema,

04/2012, A5E02486680-06 401

Você também pode gostar