Escolar Documentos
Profissional Documentos
Cultura Documentos
• 2: Dispositivo defeituoso
• 3: dispositivo desativado
• 4: existe Dispositivo
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 estado: Estado do dispositivo de I / O com o número da estação n de acordo com o modo
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).
0 nenhum erro
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.
• 2: Módulo defeituoso
• 3: Módulo desativada
• 4: existe Módulo
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.
• bit Estado: módulo de Estado de I / O com número de slot n de acordo com o modo
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.
0 nenhum erro
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).
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.
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.
parâmetros
MODO EM uint Use o parâmetro MODE para selecionar quais dados de diagnóstico é estar 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
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:
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:
2 -
3 -
4 -
5 Manutenção requerida
6 manutenção exigiu
7 Erro
9 -
7-10 -
desconectado
15 -
Reservado (sempre 0)
OwnState Uint16 enum O valor do parâmetro OwnState descreve o estado de manutenção do módulo.
0 Sem culpa
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).
7 -
4 Bit 4 = 1: Erro
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).
4 em PARAR
5 reposição da memória
6 em INÍCIO
7 em RUN
8 -
9 Em espera
10 -
11 -
13 -
14 Nenhum poder
15 CIR
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:
propriedades Palavra
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:
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).
parâmetro RET_VAL
(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.
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).
Exemplo
O seguinte rede lógica ladder e DB mostrar como usar os três modos com os três estruturas:
● DIS
● DiagnosticsDetail
● DNN
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
8,6 Pulso
_ bool_in_, ocupado => _ especificada (tempo de ciclo). A largura de impulso é variado conforme requeridas
word_out_);
2
No exemplo SCL, "CTRL_PWM_DB" é o nome da instância DB.
CTRL_HSC
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)
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.
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.
STATUS Descrição
0 nenhum erro
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.
① 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.
PTO 0
SB / S Q4.0 Q4.1
PWM 0
saídas SB Q4.0 -
PTO 1
SB / S Q4.2 Q4.3
PWM 1
saídas SB Q4.2 -
PTO 2
SB / S Q4.0 Q4.1
PWM 2
saídas SB Q4.1 -
PTO 3
SB / S Q4.2 Q4.3
PWM 3
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
a 1212C CPU.
3 Esta tabela se aplica ao 1211C CPU, 1212C CPU, 1214c CPU, e 1215c CPU PTO / PWM
funções.
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.
Você tem a opção de mudar o nome do gerador de pulso, adicionar um comentário, e atribuir parâmetros da seguinte forma:
- Centésimos (0 a 100)
- Milésimos (0 a 1000)
● 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.
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.
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.
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.
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.
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.
8.7.2.1 DataLogCreate
erro => _ bool_out_, status => _ processo em tempo de execução na memória flash da
1
No exemplo SCL, "DataLogCreate_DB" é o nome da instância DB.
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)
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.
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 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
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)
• 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.
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.
● 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.
0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0
1 80C1 Muitos arquivos abertos: Não mais do que oito abriu registrar dados arquivos são permitidos.
1 8B24 atribuição área de cabeçalho inválido: Por exemplo, apontando para a memória local
1 8C24 atribuição de área de dados inválidos: Por exemplo, apontando para a memória local
8.7.2.2 DataLogOpen
2
No exemplo SCL, "DataLogOpen_DB" é o nome da instância DB.
REQ EM Bool Um baixo para alto do sinal (flanco positivo) inicia a operação. (Valor padrão: False)
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: ' ')
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)
• 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.
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.
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.
0 0002 arquivo de log de dados já aberta por este programa aplicativo: Aviso
0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0
1 8090 definição de registro de dados é inconsistente com o arquivo de log de dados existente.
1 80C1 Muitos arquivos abertos: Não mais do que oito abriu registrar dados arquivos são permitidos.
8.7.2.3 DataLogClose
bool_out_, ocupado => _ este log de dados até que outra operação DataLogOpen é realizada.
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.
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)
FEITO FORA Bool O bit executado é verdade para uma varredura após a última solicitação foi concluída com nenhum erro.
• 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.
0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0
8.7.2.4 DataLogWrite
2
No exemplo SCL, "DataLogWrite_DB" é o nome da instância DB.
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)
FEITO FORA Bool O bit executado é verdade para uma varredura, após a última solicitação foi concluída com nenhum erro.
• 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.
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.
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 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0
1 80B0 arquivo de log de dados não é aberta (para o modo aberto explícita apenas).
8.7.2.5 DataLogNewFile
2
No exemplo SCL, "DataLogNewFile_DB" é o nome da instância DB.
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 é
• 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.
• 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.
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.
0 7001 Primeira chamada com a borda REQ (de trabalho): OCUPADO = 1, done = 0
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.
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).
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
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.
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.
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).
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
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).
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.
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.
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.
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.
SINA 5
uint 7
UDINT 12
Sint 5
int 7
Força 12
Real 16
LREAL 25
Tempo 15
DTL 24
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).
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.
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.
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 2 Capturar a saída feito a partir DataLogCreate porque é válida apenas para uma varredura.
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.
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.
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
cinco recorde
SRCBLK EM VARIANTE READ_DBL: Ponteiro para o bloco de dados de origem em WRIT_DBL memória de carga: Ponteiro
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:
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.
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).
● Um bloco de dados devem ter sido previamente criado antes que possa ser referenciado.
● O comprimento de um ponteiro variante do tipo STRING deve ser o mesmo nos ponteiros origem e destino.
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.
RET_VAL (W # Descrição
16 # ...)
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.
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.
82C0 O DB fonte está sendo editado por outra declaração ou uma função de comunicação.
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.
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.
2
No exemplo SCL, "CTRL_HSC_0_DB" é o nome da instância DB.
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)
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)".
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 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.
● 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.
STATUS Descrição
0 nenhum erro
80D0 contador de alta velocidade (HSC) não habilitado na configuração de hardware CPU
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.)
SB 30 KHz 20 KHz
SB 30 KHz 20 KHz
SB 30 KHz 20 KHz
SB 30 KHz 20 KHz
Todos os HSCs funcionar da mesma forma para o mesmo modo de contador de operação. Há quatro tipos básicos de HSC:
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.
contador de duas fases com 2 entradas de relógio relógio até relógio para baixo - Contagem ou a frequência
Restabelecer Contagem
Restabelecer 1 Contagem
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".)
0 1 2 3 4 5 0 1 2 3
2-fase CU CD
AB-fase UMA B
2-fase CU CD [R]
0 1 2 3 4 5 0 1 2 3
HSC 6 2 1-fase [R] C [D]
2-fase [R] CU CD
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.
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".)
0 1 2 3 4 5 6 7 0 1 2 3
2-fase CD CU [R]
2-fase [R] CD CU
2-fase CD CU [R]
2-fase [R] CD CU
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.
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
2-fase CD CU [R]
2-fase [R] CD CU
2-fase CD CU [R]
2-fase [R] CD CU
2-fase CD CU [R]
2-fase CD CU [R]
1 HSC 1, 2 HSC, HSC 5 e 6 HSC pode ser configurada tanto para as entradas de bordo ou para um SB.
0 1 2 3
2-fase CU CD [R]
2-fase [R] CU CD
0 1 2 3
HSC 5 1-fase C [D] [R]
2-fase CU CD [R]
2-fase [R] CU CD
1 Para 1214c CPU: HSC 1, 2 HSC, HSC 5 e 6 HSC pode ser configurado para o bordo
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.
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.
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).
● 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.
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.
● 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) ]
(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) ]
(componente D) (componente D)
● 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.
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.
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) ]
(componente D) (componente D)
1 STEP 7 cria automaticamente o objeto tecnológico e instância DB quando você inserir a instrução. a instância
setpoint EM Real Ponto de ajuste do controlador PID no modo automático. Valor padrão: 0,0
Input_PER EM Palavra valor de processo análogo (opcional). Valor padrão: W # 16 # 0 Você também
ManualEnable EM Bool Activa ou desactiva o modo de operação manual. Valor padrão: FALSO:
• 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.
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
SetpointLimit_L FORA Bool limite baixo ponto de ajuste. 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
• Estado = 0: Inativo
• Estado = 1: Pretuning
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)
Response redefinir
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
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.
① Ativação
② Erro
③ Restabelecer
Figura 9-2 A operação do controlador PID_Compact como um controlador PIDT1 com anti-desfecho
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.
0001 O parâmetro "Input" está fora dos limites de valor processo. Entrada>
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.
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.
0800 erro de tempo de amostragem: PID_Compact não é chamado dentro do tempo de amostragem do OB alarme
cíclico.
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) ]
(componente D) (componente D)
1 STEP 7 cria automaticamente o objeto tecnológico e instância DB quando você inserir a instrução. a instância
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
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.
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.
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.
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,
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
• O valor de entrada = 0
Se TRUE para FALSE borda, mude para o mais recente modo ativo.
Output_PER FORA Palavra valor de saída analógica. Se Config.OutputPerOn = TRUE, o Output_PER parâmetro é
utilizado.
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
SetpointLimitL FORA Bool limite baixo ponto de ajuste. Valor padrão: FALSE
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
• Estado = 0: Inativo
• Estado = 1: Pretuning
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)
Figura 9-3 A operação do controlador PID_3Step como um controlador PIDT1 com anti-desfecho
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.
0001 O parâmetro "Input" está fora dos limites de valor processo: entrada>
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 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.
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.
0800 tempo de amostragem de erro: PID_3STEP 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. 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.
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.
Os parâmetros do objeto tecnológico determinar a operação do controlador PID. Use o ícone para
abrir o editor de configuração.
Definições Descrição
• 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.
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).
Definições Descrição
• 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).
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.
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
• 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.
1
"Escala Posição Feedback" é editável somente se você habilitado "Feedback" nas configurações de "Basic".
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.
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.
● 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.
S
① PROFINET
② saídas de pulso e direção
③ Secção de potência para o motor de passo
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.
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
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
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).
- 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.
- 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.
Nota
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).
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.
Ferramenta Descrição
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:
• 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.
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.
Use o painel de controle "em funcionamento" para testar a funcionalidade independentemente do seu programa de usuário.
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.
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.
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
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.
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.
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.
O funcionamento do seu CommandTable é controlado por uma instrução MC_CommandTable, como mostrado abaixo:
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).
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.
2
No exemplo SCL, "MC_Power_DB" é o nome da instância DB.
Habilitar EM Bool • FALSE (padrão): Todas as tarefas ativas são abortadas de acordo com o
"StopMode" parametrizado eo eixo está parado.
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 é
• 2: Parada de emergência com controle empurrão: Se uma solicitação para desativar o eixo está pendente,
activado, o empurrão configurado é levada em conta. O eixo é desativado depois de atingir paralisação.
- O eixo não executa tarefas de controle de movimento e não aceita nenhum novas
tarefas (excepção: tarefa MC_Reset).
- Após a desativação, o status não mudar para FALSE até o eixo alcança um
impasse.
- 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.
① 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:
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:
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.
Você pode identificar quando o eixo está parado na tecnologia objeto tag <nome Axis>
.StatusBits.StandStill.
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.
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.
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".
2. Comece o reconhecimento do erro com uma borda de subida no parâmetro de entrada Execute.
2
No exemplo SCL, "MC_Home_DB" é o nome da instância DB.
● 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.
• 2: homing passiva
• 3: homing Ativo
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".
Nota
Axis homing está perdido sob as seguintes condições
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".
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:
• MC_Halt • MC_Halt
• MC_MoveAbsolute • MC_MoveAbsolute
• MC_MoveRelative • MC_MoveRelative
• MC_MoveVelocity • MC_MoveVelocity
• MC_MoveJog • MC_MoveJog
2
No exemplo SCL, "MC_Halt_DB" é o nome da instância DB.
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".
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".
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:
2
No exemplo SCL, "MC_MoveAbsolute_DB" é o nome da instância DB.
Executar EM Bool Início da tarefa com um flanco positivo (Valor padrão: False)
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.
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".
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
2
No exemplo SCL, "MC_MoveRelative_DB" é o nome da instância DB.
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
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".
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:
2
No exemplo SCL, "MC_MoveVelocity_DB" é o nome da instância DB.
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
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 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:
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.
2
No exemplo SCL, "MC_MoveJog_DB" é o nome da instância DB.
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
InVelocity FORA Bool True = A velocidade especificada no parâmetro "Velocity" foi atingido.
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:
uint_in_, Done => _ bool_out_, Ocupado => _ mesa de comando tecnologia objecto para a saída
2
No exemplo SCL, "MC_CommandTable_DB" é o nome da instância DB.
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
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.
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.
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.
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
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.
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.
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
real_in_, Done => _ bool_out_, erro => _ desaceleração valor (desaceleração de paragem
2
No exemplo SCL, "MC_ChangeDynamic_DB" é o nome da instância DB.
Executar EM Bool Comece do comando com um flanco positivo. Valor padrão: FALSE
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
resposta override
Um comando MC_ChangeDynamic não pode ser abortado por qualquer outro comando Controle de Movimento.
Um novo comando MC_ChangeDynamic não abortar quaisquer trabalhos de Controle de Movimento ativos.
Nota
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.
Pulso Direção
PTO 0
SB / S Q4.0 Q4.1
PTO 1
SB / S Q4.2 Q4.3
PTO 2
SB / S Q4.0 Q4.1
PTO 3
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
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.
Use as chaves de hardware e software limite para limitar a "faixa de deslocamento permitido" e da "faixa de trabalho" do
seu eixo.
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.
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.
PTO 0
SB / S I4.0 - I4.3
PTO 1
SB / S I4.0 - I4.3
PTO 2
SB / S I4.0 - I4.3
PTO 3
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.
Distância D
parada mecânica E
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 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.
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.
gama de trabalho C
Distância D
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".
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.
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.