Escolar Documentos
Profissional Documentos
Cultura Documentos
TwinCAT - 2 - PLC - Control - EN (1) (251-300) .En - PT
TwinCAT - 2 - PLC - Control - EN (1) (251-300) .En - PT
com
Visualização
OBSERVAÇÃO
Nomes únicos
As visualizações usadas em um projeto devem ter nomes exclusivos. Pode ser problemático se, por exemplo, uma
visualização de uma biblioteca for chamada ou referenciada com o mesmo nome de uma presente no projeto. Pois, ao
processar referências ou chamadas de visualização no programa, primeiro serão implementadas as visualizações do
projeto, e só depois as das bibliotecas carregadas.
Se um programa de controle contiver visualizações associadas, elas serão exibidas no modo de tela inteira quando o TwinCAT PLC
IHMcomeçou. O usuário pode operar as funções de controle e monitoramento contidas no projeto subjacente por meio do mouse ou
do teclado. Isso é possível mesmo se o arquivo de projeto TwinCAT PLC estiver protegido contra leitura. No entanto, o usuário não
pode editar o programa de controle e nenhum menu ou barra de ferramentas está disponível, ou seja, apenas a 'operação' pura dos
elementos de visualização está disponível.
As principais funções de controle e monitoramento de um projeto destinado à versão do operador, portanto, devem ser associadas aos
elementos de visualização durante a criação do projeto e operadas no modo online. Um recurso de entrada especial está disponível para
essa finalidade na caixa de diálogo de configuração para um elemento de visualização.
• Não é necessária uma lista de tags das variáveis a serem usadas. É possível trabalhar diretamente com as variáveis
TwinCAT PLC Control.
• Os valores das variáveis nos campos de entrada podem ser modificados por expressões (por exemplo, “Variável1+ Variável2 * 12 + 5”)
• Um poderoso conceito de espaço reservado permite ao usuário criar máscaras orientadas a objetos.
• As funções TwinCAT "Sampling Trace" e "ler/escrever receita" também estão disponíveis emTwinCAT PLC IHM.
Instalação:
O TwinCAT PLC HMI está disponível como suplemento e pode ser instalado com o setup. Uma licença tem custos, uma versão de
demonstração por tempo limitado não está disponível.
Começar:
TwinCAT PLC HMI (TCatPlcCtrlHmi.exe) é iniciado por uma conexão ou linha de comando:
Em cada caso, pelo menos, o projeto TwinCAT PLC Control desejado deve ser fornecido. Se nenhum parâmetro adicional for
definido, o TwinCAT PLC HMI iniciará automaticamente com uma POU de visualização chamadaTC_VISU(se existente no
projeto) e naquele modo de destino, que foi definido quando o projeto foi salvo pela última vez.
Além disso, a linha de comando conhecida e os comandos de arquivo de comando (consulte o Manual do Usuário TwinCAT PLC Control)
como o seguinte parâmetro especial podem ser usados:
Se o projeto contiver uma POU de visualização denominada TC_VISU, ela iniciará automaticamente com esta. Se outra
POU deve ser a entrada, ela deve ser definida na linha de comando com "/visu <nome da POU de visualização>".
O projeto project.pro começará com a visualização POU 'v_firstvisupage'. Se a visualização deve ser iniciada
automaticamente com TwinCAT PLC Control, isso pode ser feito com uma conexão em TwinCAT StartUp (All Users)
para o 'TCatPlcCtrlHmi.exe' e os parâmetros nomeados.
Operativo:
O TwinCAT PLC HMI pode ser operado de acordo com as funções dos elementos de visualização via
teclado e mouse.
Se não houver elemento de visualização configurado com uma função correspondente, TwinCAT PLC HMI a qualquer
momento pode ser encerrado pressionando<Alt><F4>.
Assim, se for suportado pelo sistema de destino e se um monitor apropriado estiver disponível, a visualização pode ser
iniciada diretamente no computador PLC. Não é mais necessário que o sistema de programação esteja rodando para
executar a visualização. Isso significa uma redução considerável do uso de armazenamento.
Requisitos
Controle CLP CLP IHM CLP IHM Web CLP IHM CE Comente
Retângulo
Arredondado
retângulo
Elipse
Polígono
Curva
Torta
Bitmap
Visualização
Botão
Ficheiro WMF/JPG
Mesa
ActiveX
elemento
Tendência IHM CE: Apenas
/ tendência online é
disponível
tabela de alarme
Metro
Exibição de barra
Histograma
Invisível
elementos
Mudar cor
Fundo
bitmap
Botão
fundo
Dica de ferramenta IHM CE:
Elementos não muito
perto da borda ou dica de
ferramenta é
fora da
janela
Controle CLP CLP IHM CLP IHM Web CLP IHM CE Comente
Segurança
com
espaços reservados em
o zoom
comando não é
possível
Função de impressão
Senha
mudar
Mudar usuário
nível
Linguagem
diálogo
Linguagem
automático
mudar
Saída
Vestígio
Restrições
Restrições [ }261]
9.7.2 Requisitos
• O sistema de destino deve suportar a funcionalidade; isso significa que nas configurações de destino (Projeto->Opções-
> TwinCAT) a opção 'Enable CE Target-Visualization' deve ser ativada. Se definido no arquivo de destino, isso pode ser
feito pelo usuário.
• Se você for usar a função de tendência no Windows CE, deverá inserir o SysLibAlarmTrend.lib em seu projeto
manualmente. A função de tendência com dispositivos ARM não é suportada.
Para otimizar o desempenho da visualização, coloque o máximo de elementos, que sejam estáticos (sem movimento,
sem textos dinâmicos, sem mudanças dinâmicas de cores),para as costas.
Dica: Usando 'Extras' 'Elementlist' vários ou todos os elementos podem ser "Enviados para trás" ou "Enviados para a frente" em um
único golpe. (Explicação: Todos os elementos estáticos apenas uma vez serão desenhados em um bitmap de fundo. Assim, o tempo
de repintura cíclica será reduzido. Isso será lucrativo especialmente para polígonos ou bitmaps complexos.
Se houver um objeto de visualizaçãoTC_VISU, a Target-Visualization posteriormente será iniciada com este objeto. Caso
contrário, iniciará com aquele objeto que é o primeiro na lista de objetos de visualização no Organizador de Objetos.
Considere se as variáveis de visualização implícitas no projeto atual devem ser tratadas comoremanescente
variáveis e adicione as declarações apropriadas noLista de variáveis globais [ }261] .
Para cada objeto de visualização, que não deve fazer parte da Target-Visualization, desative a opção 'Target-
Visualization' na caixa de diálogo Object Properties ('Projeto' 'Objeto' 'Propriedades') na categoria 'Visualização
3. Configurar...
Nas Configurações de destino na guia 'Visualização' (depende do sistema de destino, se as opções específicas estão disponíveis
nesta caixa de diálogo!) Configure que o projeto deve ser preparado para uso na Visualização de destino: Ative a opção
'Visualização de destino'
Além disso, aqui você pode definir se as entradas do usuário e a repintura dos elementos de visualização.... . . . deve
ser controlado através de tarefas VISU que são geradas automaticamente ou através de programação individual: Ative
a opção 'Desativar geração de tarefas'.
. . . deve ser processado por uma ou duas POUs respectivamente. tarefas:
Ative a opção 'UsarVISU_INPUT_TASK'. (Não se irrite com o termo "..._TASK" neste caso; esta opção também é
válida se nenhum VISU_INPUT_TASK for gerado.)
Assim, além da possibilidade de desativar o uso do teclado para mesa, são possíveis as seguintes
configurações:
Caso A:
UsarVISU_INPUT_TASKestá ativado:
Claro que os parâmetros podem ser modificados. Mas: VISU_INPUT_TASK sempre deve ser processado antes de
VISU_TASK para garantir uma interação útil das entradas do usuário e atualização da visualização. A tarefa que
chama o programa principal (por exemplo, PLC_PRG), deve ser processada pelo menos com a frequência de
VISU_INPUT_TASK, idealmente mesmo com uma prioridade mais alta, mas também pode ser adicionada diretamente
a VISU_INPUT_TASK
Caso B:
UsarVISU_INPUT_TASKestá desligado:
Esta configuração destina-se a sistemas que não permitem multitarefa. De forma desvantajosa, nenhum tempo de ciclo
diferenciado pode ser configurado para o processamento de entradas do usuário e a repintura dos elementos de
visualização, veja acima.
Caso C:
Ambas as POUs implícitas estão disponíveis e podem ser chamadas individualmente resp. pode ser anexado a qualquer
tarefa. (Referindo-se a este respeito as dicas em (Caso A).
n:=n+1;
SE (n MOD 4) =0 ENTÃO
MAINTARGETVISU_PAINT_CODE(); FIM
SE;
MAINTARGETVISU_INPUT_CODE();
Aqui no programa visu_control, a POU que processa as entradas do usuário é chamada apenas após cada quarta
chamada da POU de repintura - reduzindo assim o perigo de perturbar a repintura por outra entrada do usuário.
Ao criar o programa aplicativo, preste muita atenção para reduzir esse perigo de exibição
incorreta!
Caso D:
UsarVISU_INPUT_TASKestá desligado:
Apenas o programa implícito disponível POU MAINTARGET VISU_PAINT_CODE pode ser usado, mas neste caso
incluirá adicionalmente a funcionalidade de MAINTARGET VISU _INPUT_CODE.
Esta POU pode ser chamada no programa aplicativo resp. pode ser anexado a qualquer tarefa.
4. Carregue o projeto
A biblioteca SysLibTargetVisu.lib, que é incluída automaticamente assim que a configuração de destino 'Target-Visualization' é
ativada, oferece as seguintes funções para escanear as resp. entradas da lista de texto dinâmica atualmente usada para
exibição de texto dependente de idioma na visualização.
Esta função fornece um texto dependente do idioma da lista de texto dinâmica atualmente usada.
Parâmetros:
Valor de retorno:
FALSE – Nenhum texto correspondente a „stPrefix“ e „dwID“ foi encontrado.
VERDADEIRO - Foi encontrado um texto correspondente a „stPrefix“ e „dwID“.
Esta função - como a função GetText - pode fornecer um texto dependente do idioma da lista de texto dinâmica usada
atualmente. A diferença para GetTest é: O ID da entrada de texto é dado como uma string no parâmetro „stID“ ao invés de um
valor numérico. Assim também é possível usar IDs que são definidos como strings no arquivo xml para os textos dinâmicos
(por exemplo „Texto123“).
Parâmetros:
Valor de retorno:
FALSE – Nenhum texto correspondente a „stPrefix“ e „stID“ foi encontrado.
TRUE - Foi encontrado um texto correspondente a „stPrefix“ e „stID“.
Além disso, é possível verificar os eventos do mouse do usuário. Para isso é necessário inserir a
biblioteca TcMouseEvents.lib com a seguinte funcionalidade:
Esta função fornece informações sobre a última resp. "Esquerda" realizada. Evento MouseDown "Direito". Ele contém
um ponteiro (pMouseEvent : POINTER TO MOUSEEVENT;) na estrutura MouseEvent que consiste nos seguintes
parâmetros:
Valor de retorno:
Sem valor de retorno.
Esta função fornece informações sobre o último MouseMove-Event executado. Ele contém um
ponteiro (pMouseEvent : POINTER TO MOUSEEVENT;) na estrutura MouseEvent, veja acima: function
GetLastMouseDownEvent.
Valor de retorno:
Sem valor de retorno.
Esta função fornece informações sobre a última resp. "Esquerda" executada. Evento MouseUp "Direito". Ele contém
um ponteiro (pMouseEvent : POINTER TO MOUSEEVENT;) na estrutura MouseEvent, veja acima: função
GetLastLeftMouseDownEvent resp. GetLastRightMouseDownEvent
Valor de retorno:
Sem valor de retorno.
9.7.6 Restrições
comandos internos
IMPRIMIR
EXITPROGRAM
Este comando não é suportado.
VESTÍGIO
Este comando para abrir a janela Sampling Trace não é suportado.
SALVAR PROJETO
Este comando para salvar o projeto não é utilizável para o Target-Visualization.
formatos gráficos
No Target-Visualization atualmente, apenas bitmaps simples são suportados. Formatos não suportados: .jpg, .tif, .ico O
formato .jpg é suportado a partir da versão 1.0.9 da DLL TargetVisu.
Outros
Texto:% s
Manipulação de alarme
TheAlarming não é suportado.
Tendência
titular do lugar
A entrega do parâmetro para substituir o espaço reservado na chamada não é suportada.
Exemplo:
<Visuname>(<Placeholder1>:=<Texto1>, <Placeholder2>:=<Text2>,..., <Placeholder n>:=<Textn>)
VAR_IN_OUT
Não é possível usar variáveis VAR_IN_OUT no TwinCAT HMI CE.
Lado visual
Não é possível utilizar a barra de rolagem da HMI CE do lado da visualização.
Requisitos
10 Apêndice
Combinações de teclas
Funções Gerais
Mover entre a parte de declaração e a parte de <F6>
instrução de uma POU
Mover entre o organizador de objetos, o objeto e a <Alt>+<F6>
janela de mensagem
Menu contextual <Shift>+<F10>
Modo de atalho para declarações <Ctrl>+<Enter>
Mover de uma mensagem na janela Mensagem de volta <Enter>
para a posição original no editor
Abrir e fechar variáveis multicamadas <Enter>
Abrir e fechar pastas <Enter>
Alternar cartões de registro no organizador de objetos e no <teclas de seta>
gerenciador de bibliotecas
Comandos Gerais
"Arquivo" "Salvar" <Ctrl>+<S>
"Arquivo" "Imprimir" <Ctrl>+<P>
"Arquivo" "Sair" <Alt>+<F4>
"Projeto" "Excluir objeto" <Del>
"Projeto" "Adicionar objeto" <Ins>
"Projeto" "Renomear objeto" <Barra de espaço>
Comandos do Editor LD
'Inserir''Rede (depois)' <Shift>+<T>
'Inserir''Contato' <Ctrl>+<O>
'Inserir''Contato Paralelo' <Ctrl>+<R>
'Inserir' 'Bloco de função' <Ctrl>+<B>
'Inserir''Bobina' <Ctrl>+<L>
'Extras''Colar Abaixo' <Ctrl>+<U>
'Extras''Negar' <Ctrl>+<N>
Avisos
da imagem do processo.
Exemplo:
Configuração da Variável:
VAR_CONFIG
plc_prg.aprg.ainst.in AT %IB0 :
INT;
END_VAR
plc_prg:
index := INDEXOF(aprg);
O programa aprg é referenciado, mas não
chamado. Por isso
plc_prg.aprg.ainst.in nunca obterá
o real
valor de %IB0.
1412 Token inesperado '<name>' no Você está usando um pragma que não
pragma {pragma name} está escrito corretamente resp. que não
pode ser usado neste local. Consulte a
palavra-chave 'pragma' nesta Ajuda on-
line para obter ajuda para uma correção.
1413 '<nome>' não é uma chave válida para a No pragma é especificada uma lista de
lista '<nome>'. A chave será ignorada parâmetros inexistente. Verifique o nome
da lista resp. dê uma olhada no
Gerenciador de Parâmetros para as listas
atualmente disponíveis.
Expressão não contém O resultado desta expressão não é
atribuição. Nenhum código usado. Por esse motivo, não há
foi gerado. código gerado para toda a
expressão.
1501 Constante de string passada como A constante não pode ser escrita
'VAR_IN_OUT': '<nome>' não deve ser dentro da POU, pois não há
sobrescrito! verificação de tamanho possível.
1502 A variável '<nome>' tem o mesmo Uma variável é usada, que tem o
nome de uma POU. A POU não será mesmo nome de uma POU
chamada! Exemplo:
PROGRAMAR um
...
VAR_GLOBAL
não;
END_VAR
...
parâmetros'.
1853 Um PDO (índice: '<número>') pode não Atualmente, o PDO nomeado é controlado por
ser atualizado ciclicamente na tarefa de meio da tarefa de evento nomeada. Mas se
evento '<nome>' você quiser que ele seja chamado ciclicamente,
você deve atribuir uma tarefa apropriada ao
PDO, deslocando as referências de IO para
essa tarefa.
POU '<nome>' (rotina principal) não está A Start-POU (zB PLC_PRG) não estará
disponível na biblioteca disponível, quando o projeto for
utilizado como biblioteca.
1901 Variáveis de acesso e configurações de Variáveis de acesso e configuração de
variáveis não são salvas em uma variáveis não são armazenadas na
biblioteca! biblioteca.
1902 '<nome>': não há biblioteca para o O arquivo .obj da lib foi gerado
tipo de máquina atual! para outro dispositivo.
1903 <nome>: não é uma Biblioteca válida O arquivo não tem o formato
solicitado para o destino real.
1904 A constante '<nome>' esconde uma Em seu projeto, você definiu uma
constante de mesmo nome em uma constante que tem o mesmo nome de
biblioteca uma definida em uma biblioteca
vinculada. A variável da biblioteca será
substituída!
1970 Gerenciador de parâmetros: Lista Verifique o arquivo de importação *.prm
'<nome>' , Coluna '<nome>', Valor para entradas que não correspondam à
'<nome>' não pôde ser importado! configuração atual (valores padrão resp.
arquivo de descrição XML) do gerenciador
de parâmetros.
Tarefa '<nome da tarefa>': nenhum tempo de Na configuração da Tarefa foi criada uma
ciclo especificado para tarefa cíclica tarefa cíclica, para a qual não foi definido
nenhum tempo de ciclo. Insira um intervalo
de tempo apropriado na caixa de diálogo
'Taskattributes' em "Interval".
Erros do compilador
3101 Total de dados muito grande. Tamanho máximo: A memória foi excedida. Reduza o uso de dados do
'<número>' Byte (<número>K) aplicativo.
3110 Erro no arquivo de biblioteca '<nome>'. O arquivo .hex não está no formato INTEL Hex.
3111 A biblioteca '<nome>' é muito grande. Tamanho máximo: O arquivo .hex excede o tamanho máximo definido.
64K
3112 Instrução não relocável na biblioteca. O arquivo .hex contém uma instrução não relocável. O
código da biblioteca não pode ser vinculado.
3113 O código da biblioteca substitui as tabelas de funções. Os intervalos para tabelas de código e função estão
sobrepostos.
3114 A biblioteca usa mais de um segmento. As tabelas e o código no arquivo .hex usam
mais de um segmento.
3115 Não é possível atribuir constante a VAR_IN_OUT. O formato de ponteiro interno para constantes de string não pode
Tipos de dados incompatíveis. ser convertido para o formato de ponteiro interno de VAR_IN_OUT,
porque os dados são definidos como "próximos", mas as
constantes de string são definidas como "grandes" ou "distantes".
Se possível, altere essas configurações de destino.
3116 As tabelas de função substituem o código da biblioteca ou Código 166x: A biblioteca externa não pode ser usada com as
um limite de segmento. configurações de destino atuais. Estes devem ser adaptados
resp. a biblioteca deve ser reconstruída com as configurações
apropriadas.
3117 <Nome> (<Zahl>): Expressão muito complexa. Não há A expressão nomeada é muito complexa para ser
mais registros disponíveis tratada pelos registradores disponíveis. Tente
reduzir a expressão usando variáveis temporárias.
3120 O segmento de código atual excede 64K. O código gerado atualmente é maior que 64K.
Eventualmente, muito código de inicialização é
criado.
3121 POU muito grande." Uma POU não pode exceder o Uma POU não pode exceder o tamanho de 64K.
tamanho de 64K.
3122 Inicialização muito grande. Tamanho máximo: 64K O código de inicialização para uma função ou
estrutura POU não pode exceder 64K.
3123 Segmento de dados muito grande: segmento Entre em contato com o fabricante.
'<Número>%s', tamanho <tamanho> bytes (máximo
<número> bytes)
3124 Constante de string muito grande: <número> caracteres A constante fornecida deve ser reduzida em número de
(máximo de 253 caracteres) caracteres.
3130 Pilha de usuário muito pequena: '<número>' DWORD A profundidade de aninhamento das chamadas POU é muito grande.
necessário, '<número>' DWORD disponível. Insira um tamanho de pilha maior nas configurações de destino ou
compile o projeto de compilação sem a opção 'Depurar' (pode ser
definido na caixa de diálogo 'Projeto' 'Opções' 'Construir').
3131 Pilha de usuário muito pequena: '<número>' PALAVRA Entre em contato com o fabricante do PLC.
necessária, '<número>' PALAVRA disponível.
3132 Pilha do sistema muito pequena: '<número>' PALAVRA Entre em contato com o fabricante do PLC.
necessária, '<número>' PALAVRA disponível.
3150 Parâmetro <número> da função '<nome>': Não é Use uma variável intermediária, à qual o
possível passar o resultado de uma função IEC como resultado da função IEC é atribuído.
parâmetro de string para uma função C.
3160 Não é possível abrir o arquivo de biblioteca '<nome>'. Uma biblioteca <nome> está incluída no gerenciador de
bibliotecas para este projeto, mas o arquivo de biblioteca não
existe no caminho fornecido.
3161 A biblioteca '<nome>' não contém nenhum segmento de código Um arquivo .obj de uma biblioteca deve conter pelo
menos uma função C. Insira uma função fictícia no
arquivo .obj, que não está definida no arquivo .lib.
3252 tamanho da pilha excede <número> bytes O alvo atualmente não é suportado.
3253 Não foi possível encontrar o arquivo hexadecimal: '<nome>' O alvo atualmente não é suportado.
3254 A chamada para a função de biblioteca externa não pôde ser O alvo atualmente não é suportado.
resolvida.
Ocorreu um erro durante a importação de variáveis do O arquivo .exp contém uma seção de variáveis de
Access acesso incorreta.
3401 Ocorreu um erro durante a importação da O arquivo .exp contém uma seção de variáveis de
configuração da variável configuração incorreta.
3402 Ocorreu um erro durante a importação de O arquivo .exp contém uma seção de variáveis
variáveis globais globais incorreta.
3413 Erro durante a importação dos CAMs. Você importou um arquivo de exportação (*.exp) que contém
informações incorretas sobre um CAM. Verifique o arquivo de
exportação.
3414 Erro durante a importação da lista de programas CNC Você importou um arquivo de exportação (*.exp) que
contém informações incorretas sobre um programa CNC.
Verifique o arquivo de exportação.
3415 Erro durante a importação da configuração do Alarme Você importou um arquivo de exportação (*.exp) que
contém informações erradas sobre a Configuração de
Alarme. Verifique o arquivo de exportação.
3450 PDO'<PDO-name>': COB-Id ausente! Clique no botão ‚Propriedades' na caixa de diálogo de
configuração do PLC para o módulo e insira um ID COB
para o PDO <Nome PDO>.
3451 Erro durante o carregamento: o arquivo EDS '<nome>' não foi Eventualmente, o arquivo do dispositivo necessário para a
encontrado, mas é referenciado na configuração de hardware! configuração do CAN não está no diretório correto. Verifique a
configuração do diretório para arquivos de configuração em
'Projeto' 'Opções' 'Diretórios'.
3452 O módulo '<nome>' não pôde ser criado! O arquivo de dispositivo para o módulo <nome> não se
ajusta à configuração atual. Eventualmente, ele foi
modificado desde que a configuração foi definida ou
está corrompido.
3453 O canal '<name>' não pôde ser criado! O arquivo de dispositivo para o canal <nome> não se
ajusta à configuração atual. Eventualmente, ele foi
modificado desde que a configuração foi definida ou
está corrompido.
3454 O endereço '<nome>' aponta para uma A opção 'Verificar endereços sobrepostos' está ativada
memória usada! na caixa de diálogo 'Definições' da configuração do PLC e
foi detectada uma sobreposição. Observe que a
verificação da área é baseada no tamanho que resulta
dos tipos de dados dos módulos, tamanho que é dado
pela entrada 'tamanho' no arquivo de configuração.
3455 Erro durante o carregamento: GSD-File '<nome>' não foi Eventualmente, o arquivo do dispositivo requerido pela
encontrado, mas é referenciado na configuração de configuração do Profibus não está no diretório correto. .
hardware! Verifique a configuração do diretório para arquivos de
configuração em 'Projeto' 'Opções' 'Diretórios'.
Sem 'VAR_CONFIG' para '<nome>' Insira uma declaração para esta variável na lista de
variáveis globais que contém o
'Variable_Configuration'.
3501 Nenhum endereço em 'VAR_CONFIG' para '<nome>'. Atribua um endereço a esta variável na lista de
variáveis globais que contém o
'Variable_Configuration'.
3502 Tipo de dados incorreto para '<nome>' em 'VAR_CONFIG Na lista de variáveis globais que contém a
‚Variable_Configuration', a variável é declarada
com um tipo de dado diferente da POU.
3503 Tipo de dados incorreto para '<nome>' em 'VAR_CONFIG' Na lista de variáveis globais que contém a
‚Variable_Configuration' a variável é declarada
com endereço diferente da POU.
3507 Nenhuma especificação de endereço para variáveis A lista de variáveis globais para variáveis de acesso
'VAR_ACCESS' contém uma atribuição de endereço para uma variável.
Isso não é permitido. Definição de variável válida:
<Identificador>:'<Caminho de acesso>':<Tipo> <Modo de
acesso>
3550 Definição duplicada do identificador '<nome>' Existem duas tarefas definidas com um mesmo
nome idêntico. Renomeie um deles.
3551 A tarefa '<nome>' deve conter pelo menos uma chamada Insira uma chamada de programa ou exclua uma tarefa.
de programa
3552 Variável de evento '<nome>' na tarefa '%s' não definida Há uma variável de evento definida no campo 'Single' da
caixa de diálogo de propriedades da tarefa que não é
declarada globalmente no projeto. Use outra variável ou
defina a variável globalmente.
3553 "A variável de evento '<nome>' na tarefa '%s' deve ser do Use uma variável do tipo BOOL como variável de evento no
tipo 'BOOL' campo 'Single' do diálogo de propriedades da tarefa.
3554 A entrada de tarefa '<nome>' deve ser um programa ou No campo 'Chamada do programa' é inserida uma função ou
instância de bloco de função global uma POU não definida. Insira um nome de programa válido.
3555 A entrada da tarefa '<nome>' contém No campo ‚Append program call' existem
parâmetros inválidos parâmetros utilizados que não estão de acordo com
a declaração da POU do programa.
3556 As tarefas não são suportadas pelo destino A configuração de tarefa definida atualmente não pode ser
atualmente selecionado usada para o sistema de destino definido atualmente. Altere o
destino ou modifique a configuração da tarefa
correspondentemente.
3557 Número máximo de Tarefas ('<número>') O número de tarefas atualmente definido excede o
excedido número máximo permitido para o sistema de destino
atualmente definido. Altere o destino ou modifique a
configuração da tarefa correspondentemente. Atenção:
Não edite o arquivo de descrição XML da configuração
da tarefa!
3558 A prioridade da tarefa '<nome>' está fora do intervalo A prioridade atualmente definida para a tarefa não é válida
válido entre '<limite inferior>' e '<limite superior>' para o sistema de destino atualmente definido. Mude o alvo
ou modifique a configuração da tarefa
correspondentemente.
3559 Tarefa '<nome>': Tarefas de intervalo não A configuração de tarefa atual contém uma tarefa de
são suportadas pelo destino atual intervalo. Isso não é permitido pelo sistema de destino
atualmente definido. Altere o destino ou modifique a
configuração da tarefa correspondentemente.
3560 Tarefa '<nome>': tarefas de roda livre não A configuração de tarefa atual contém uma tarefa de roda
são suportadas pelo alvo atual livre. Isso não é permitido pelo sistema de destino
atualmente definido. Altere o destino ou modifique a
configuração da tarefa correspondentemente.
3561 Tarefa '<nome>': as tarefas de evento não são suportadas A configuração de tarefa atual contém tarefas de evento
pelo destino atual que não são suportadas pelo sistema de destino
atualmente definido. Altere o destino ou modifique a
configuração da tarefa correspondentemente.
3570 As tarefas '<nome>' e '<nome>' compartilham a mesma Modifique a configuração da tarefa para que cada tarefa tenha
prioridade uma prioridade diferente.
3571 A biblioteca 'SysLibCallback' não está inclusa no Para criar tarefas de evento, o SysLibCallback.lib é
projeto! Os eventos do sistema não podem ser necessário. Vincule esta biblioteca ao projeto no
gerados. gerenciador de bibliotecas ou modifique a configuração da
tarefa (atributos da tarefa) de forma que não haja nenhuma
tarefa acionada por um evento.
3575 Tarefa <'nome>': o tempo de ciclo deve ser um Corrija o tempo de ciclo adequadamente na caixa de
múltiplo de <número> μs. diálogo Atributos da tarefa para esta tarefa. O sistema
de destino define um tempo base e prescreve que o
tempo de ciclo deve ser igual ou múltiplo desse tempo
base.
Variáveis implícitas não encontradas! Use o comando 'Reconstruir tudo'. Se, no entanto, você receber
a mensagem de erro novamente, entre em contato com o
fabricante do PLC.
3620 A POU '<nome>' não deve estar presente dentro de uma Você deseja salvar o projeto como uma biblioteca da
biblioteca versão 2.1. Nesta versão uma biblioteca não pode
conter um objeto PLC_PRG. Use um nome de POU
diferente.
3621 "Não é possível gravar o arquivo de compilação '<nome>'" Provavelmente no caminho especificado para o arquivo
de compilação já existe um arquivo com o mesmo nome,
que é "somente leitura". Remova esse arquivo resp.
alterar os direitos de acesso.
3622 "O arquivo de símbolo '<nome>' não pôde ser criado" Provavelmente no caminho especificado para o arquivo de
símbolo (geralmente diretório do projeto) já existe um
arquivo com o mesmo nome, que é "somente leitura".
Remova esse arquivo resp. alterar os direitos de acesso.
3623 "Não é possível gravar o arquivo de projeto de inicialização '<nome>'" Provavelmente no caminho especificado para o arquivo
de símbolo (alvo específico) já existe um arquivo com o
mesmo nome, que é "somente leitura".
Remova esse arquivo resp. alterar os direitos de acesso.
3624 "Configuração de destino <targetsetting1>=<valor definido> Verifique e corrija essas configurações nas caixas de
não compatível com <targetsetting2>=<valor definido>" diálogo Targetsettings (guia Recursos). Se as
configurações não estiverem visíveis, resp. editável lá,
entre em contato com o fabricante do PLC.
POU com nome '<nome>' já está na biblioteca Um nome de POU é usado no projeto, que já é
'<nome>' usado para uma biblioteca POU. Renomeie a
POU.
3701 O nome usado na interface não é idêntico ao Use o comando 'Projeto' 'Renomear objeto' para
nome da POU renomear a POU no organizador de objetos, ou
altere o nome da POU na janela de declaração. Lá, o
nome da POU deve ser colocado próximo a uma das
palavras-chave PROGRAM, FUNCTION ou
FUNCTIONBLOCK.
3702 Estouro da lista de identificadores Máximo de 100 identificadores podem ser inseridos em uma
declaração de variável.
3703 Definição duplicada do identificador '<nome>' Tome cuidado para que haja apenas um identificador
com o nome fornecido na parte de declaração da
POU.
3704 recursão de dados: Foi utilizada uma instância FB, que precisa de si mesma.
<POU 0> -> <POU 1> -> .. -> <POU 0>
3721 Apenas 'VAR' e 'VAR_GLOBAL' podem ser localizados Coloque a declaração em uma área de declaração VAR
para endereços ou VAR_GLOBAL.
3722 Somente variáveis 'BOOL' permitidas em endereços de bit Modifique o endereço ou modifique o tipo da
variável à qual o endereço é atribuído.
3726 Constantes não podem ser colocadas em endereços diretos Modifique a atribuição de endereço
correspondentemente.
3727 Nenhuma declaração de matriz permitida neste endereço Modifique a atribuição de endereço
correspondentemente.
3728 Endereço inválido: '<endereço>' Este endereço não é suportado pela configuração do
CP. Verifique a configuração do PLC resp. Modificar
endereço.
3729 Tipo inválido '<nome>' no endereço: '<nome>' O tipo desta variável não pode ser colocado no
endereço fornecido. Exemplo: Para um sistema de
destino trabalhando com 'alinhamento 2', a seguinte
declaração não é válida: var1 AT %IB1:WORD;
3740 Tipo inválido: '<nome>' Um tipo de dados inválido é usado em uma declaração
de variável.
3745 Subfaixas só são permitidas em inteiros! Os tipos de subfaixa só podem ser definidos com base em
tipos de dados inteiros.
3746 O subintervalo '<nome>' não é compatível com o tipo Um dos limites definidos para a faixa do tipo
'<nome>' subfaixa está fora da faixa válida para o tipo
base.
3747 comprimento de string desconhecido: '<nome>' Existe uma constante inválida usada para a
definição do comprimento da string.
3748 Mais de três dimensões não são permitidas para Mais do que as três dimensões permitidas são
arrays dadas na definição de uma matriz. Se aplicável,
use um ARRAY OF ARRAY.
3749 limite inferior '<nome>' não definido Existe uma constante não definida usada para definir o
limite inferior para um subintervalo ou tipo de matriz.
3750 limite superior '<nome>' não definido Há uma constante não definida usada para definir o limite
superior para um subintervalo ou tipo de matriz.
3751 Comprimento de string inválido '<número de caracteres>' O comprimento da string aqui definido excede o
valor máximo definido para o sistema de destino
atualmente definido.
3784 O destino atual não oferece suporte ao atributo O sistema de destino não suporta este tipo de
<nome do atributo> variáveis (por exemplo, RETAIN, PERSISTENT)
As variáveis globais precisam de muita memória. Aumente o número de segmentos fornecidos nas configurações
Aumente a memória disponível nas opções do da caixa de diálogo ‚Projeto' ‚Opções' ‚Construir'.
projeto.
3801 A variável '<nome>' é muito grande (<Tamanho> Byte) A variável usa um tipo maior que 1 segmento de dados.
O tamanho do segmento é um parâmetro específico do
alvo e pode ser modificado nas configurações do alvo/
layout da memória. Se você não encontrar isso nas
configurações de destino atuais, entre em contato com o
fabricante do PLC.
3802 Sem memória retida. Variável '<nome>', O espaço de memória disponível para reter variáveis está
<número> bytes. esgotado. O tamanho da área de memória pode ser definido de
acordo com o alvo nas configurações do alvo/layout da memória.
Se você não encontrar o campo de configurações na caixa de
diálogo, entre em contato com o fabricante do PLC. (Por favor,
considere: Se variáveis retidas forem usadas em uma instância
de bloco funcional, a POU de instância completa será
armazenada na área de memória retida!)
3803 Fora da memória de dados global. Variável '<nome>', O espaço de memória disponível para variáveis globais está
‚<número>' bytes. esgotado. O tamanho da área de memória pode ser definido de
acordo com o alvo nas configurações do alvo/layout da
memória. Se você não encontrar o campo de configurações na
caixa de diálogo, entre em contato com o fabricante do PLC.
3820 "'VAR_OUTPUT' e 'VAR_IN_OUT' não são Em uma função, nenhuma variável de saída ou in_output
permitidos em funções pode ser definida.
3821 Pelo menos uma entrada necessária para funções Adicione pelo menos um parâmetro de entrada para a função.
3840 Variável global desconhecida '<nome>'! Na POU é utilizada uma variável VAR_EXTERNAL, para a
qual não foi declarada nenhuma variável global.
4021 Nenhum acesso de gravação à variável '%s' permitido Substitua a variável por uma variável com acesso de
gravação.
4022 Operando esperado Adicione um operando atrás do comando.
4023 Número esperado após '+' ou '-' Insira um dígito.
4024 <operador 0> ou <operador 1> ou ... esperado Insira um operando válido na posição nomeada.
antes de '<nome>'
4025 ':=' ou '=>' esperado antes de '<nome>' Insira um dos dois operadores na posição
nomeada.
4026 'BITADR' espera um endereço de bit ou uma variável em um Use um endereço de bit válido (por exemplo, %IX0.1).
endereço de bit
4027 Número inteiro ou constante simbólica esperada Insira um número inteiro ou o identificador de uma
constante válida.
4028 O operador 'INI' precisa da instância do bloco de funções ou da Verifique o tipo de dados da variável, para o qual
instância do tipo de unidade de dados o operador INI é usado.
4029 Chamadas aninhadas da mesma função não são Em sistemas de destino não reentrantes e no modo de
possíveis. simulação, uma chamada de função pode não conter uma
chamada de si mesma como um parâmetro. Exemplo:
fun1(a,fun1(b,c,d),e); Use uma mesa intermediária.
4030 Expressões e constantes não são permitidas como Substitua a constante ou a expressão por uma
operandos de 'ADR' variável ou um endereço direto.
4031 'ADR' não é permitido em bits! Em vez disso, use Use BITADR. Observe: A função BITADR
'BITADR'. não retorna um endereço de memória
física
4032 Os operandos '<número>' são muito poucos para '<nome>'. Verifique quantos operandos o operador nomeado
Pelo menos '<número>' são necessários requer e adicione os operandos ausentes.
4033 Os operandos '<número>' são muitos para '<nome>'. Verifique quantos operandos o operador nomeado
Pelo menos '<número>' são necessários requer e remova os operandos excedentes.
4034 Divisão por 0 Você está usando uma divisão por 0 em uma expressão
constante. Se você quiser provocar um erro de tempo de
execução, use – se aplicável – uma variável com o valor 0.
4035 ADR não deve ser aplicado em 'VAR CONSTANT' se Um acesso de endereço em constantes para as quais
'replaced constants' estiver ativado os valores diretos são usados não é possível. Se
aplicável, desative a opção ‚Substituir Constantes' em
‚Projeto' ‚Opções' ‚Construir'.
4040 O rótulo '<nome>' não está definido Defina um rótulo com o nome <LabelName> ou
altere o nome <LabelName> para o de um rótulo
definido.
4041 Definição duplicada do rótulo '<nome>' O rótulo '<nome>' é múltiplo definido na POU.
Renomeie o rótulo ou remova uma das
definições.
4042 Não são permitidos mais de %d rótulos em O número de rótulos de salto é limitado a
sequência '<Anzahl>'. Insira uma instrução fictícia.
4043 Formato da etiqueta inválido. Um rótulo deve ser um nome O nome do rótulo não é válido ou os dois pontos
opcionalmente seguido por dois pontos. estão faltando na definição.
4050 POU '%s' não está definido Defina uma POU com o nome '<nome>' usando o
comando 'Projeto' 'Adicionar Objeto' ou altere
'<nome>' para o nome de uma POU definida.
4051 '%s' não é função Use em vez de <nome> um nome de função
definido no projeto ou nas bibliotecas.
4052 '%s' deve ser uma instância declarada do FB '%s' Use uma instância do tipo de dados '<name>' que é
definido no projeto ou altere o tipo de <Instance
name> para '<name>' .
4061 O parâmetro 'VAR_IN_OUT' '%s' de '%s' deve ser Um parâmetro VAR_IN_OUT deve receber uma
usado. variável com acesso de escrita, porque um
VAR_IN_OUT pode ser modificado dentro da POU.
4062 Sem acesso externo ao parâmetro O parâmetro VAR_IN_OUT somente pode ser
'VAR_IN_OUT' '%s' de '%s'. escrito ou lido dentro da POU, pois são entregues
por referência.
4063 O parâmetro 'VAR_IN_OUT' '%s' de '%s' não deve ser Um endereço de bit não é um endereço físico válido.
usado com endereços de bit. Entregue uma variável ou um endereço direto sem bits.
4064 'VAR_IN_OUT' não deve ser sobrescrito na chamada de Exclua os parâmetros definidos para a variável
ação local! VAR_IN_OUT na chamada de ação local.
4070 A POU contém uma expressão muito complexa Diminua a profundidade de aninhamento
dividindo a expressão em várias expressões. Use
variáveis intermediárias para essa finalidade.
4071 Rede muito complexa Divida a rede em várias redes.
4072 Uso inconsistente de um identificador de ação Você definiu duas ações de um bloco funcional fb:
no tipo FB ('<nome>') e instância ('<nome>'). por exemplo a1 e a2, mas na chamada de uma das
ações no FBD você está usando um tipo (string
dentro da caixa, por exemplo fb.a1 diferente do
usado no nome da instância (por exemplo, inst.a2,
caixa acima) Corrija o nome correspondente ao
nome da ação desejada.
'^' precisa de um tipo de ponteiro Você está tentando desreferenciar uma variável que não é
declarada como um ponteiro.
4110 '[<index>]' precisa de variável de matriz [<índice>] é usado para uma variável que não é
declarada como uma matriz com ARRAY OF.
4111 A expressão de índice de uma matriz deve ser do tipo Use uma expressão do tipo correto ou uma
'INT' conversão de tipo.
4112 Muitos índices para array Verifique o número de índices (1, 2, ou 3) para
os quais o array é declarado e remova o
excedente.
4113 Poucos índices para array Verifique o número de índices (1, 2, ou 3) para os
quais o array é declarado e adicione os que
faltam.
4114 Um dos indicadores constantes não está dentro do Certifique-se de que os índices usados estejam dentro
intervalo do array dos limites da matriz.
4120 '.' precisa de variável de estrutura" O identificador à esquerda do ponto deve ser uma
variável do tipo STRUCT ou
FUNCTION_BLOCK ou o nome de
uma FUNCTION ou PROGRAM.
4121 '<nome>' não é um componente de <nome do objeto> O componente '<nome>' não está incluído na
definição do objeto <nome do objeto>.
4122 '%s' não é uma variável de entrada do bloco de Verifique as variáveis de entrada do bloco de funções
função chamado chamado e altere '<nome>' para uma delas.
'LD' esperado Insira pelo menos uma instrução LD após o rótulo
de salto no editor IL.
4201 Operador de IL esperado Cada instrução IL deve começar com um operador ou um
rótulo de salto.
4203 <nome> entre colchetes não permitido O operador <nome> não é válido em uma expressão
de colchetes IL. (inválidos são: 'JMP', 'RET', 'CAL',
'LDN', 'LD', 'TIME')
4204 Colchete de fechamento sem colchete de abertura Insira um suporte de abertura ou remova o de
correspondente fechamento.
4205 Nenhuma vírgula é permitida após ')' Remova a vírgula após fechar o colchete.
4206 Rótulo entre colchetes não permitido Desloque o rótulo do salto para que fique fora dos
colchetes.
4207 O modificador 'N' requer operando do tipo O modificador N requer um tipo de dados, para o qual uma
'BOOL', 'BYTE', 'WORD' ou 'DWORD' negação booleana pode ser executada.
4208 O operador condicional requer o tipo 'BOOL' Certifique-se de que a expressão forneça um
resultado booleano ou use uma conversão de tipo.
4209 Nome da função não permitido aqui Substitua a chamada de função por uma variável ou uma
constante.
4210 'CAL', 'CALC' e 'CALN' requerem uma instância de bloco Declare uma instância do bloco de função que você
de função como operando deseja chamar.
4211 Comentários só são permitidos no final da linha em IL Desloca o comentário para o final da linha ou para uma
linha extra.
4212 O acumulador é inválido antes da instrução A conta não está definida. Isso acontece se uma instrução
condicional está precedendo que não apresenta um resultado (por
exemplo, 'CAL').
4213 'S' e 'R' requerem o operando 'BOOL' Use uma variável booleana neste local.
4250 Espera-se outra instrução 'ST' ou fim da POU A linha não começa com uma instrução
ST válida.
4251 Muitos parâmetros na função '%s' Existem mais parâmetros fornecidos do
que declarados na definição da função.
4252 Poucos parâmetros na função '%s' Existem menos parâmetros fornecidos do que
os declarados na definição da função.
4253 'IF' ou 'ELSIF' requerem a expressão 'BOOL' como Certifique-se de que a condição para IF ou ELSIF seja uma
condição expressão booleana.
4254 'WHILE' requer a expressão 'BOOL' como Certifique-se de que a condição após
condição 'WHILE' seja uma expressão booleana.
4255 'UNTIL' requer a expressão 'BOOL' como condição Certifique-se de que a condição após
'UNTIL' seja uma expressão booleana.
4256 'NOT' requer o operando 'BOOL' Certifique-se de que a condição após 'NOT' seja
uma expressão booleana.
4257 A variável da instrução 'FOR' deve ser do tipo Certifique-se de que a variável do contador seja do
'INT' tipo inteiro ou bitstring (por exemplo, DINT,
DWORD).
4258 A expressão na instrução 'FOR' não é uma variável com Substitua a variável do contador por uma variável com acesso
acesso de gravação de gravação.
4259 O valor inicial na instrução 'FOR' não é uma variável com O valor inicial na instrução ‚FOR' deve ser
acesso de gravação compatível com o tipo da variável do contador.
4260 O valor final da instrução 'FOR' deve ser do tipo O valor final da instrução ‚FOR' deve ser
'INT' compatível com o tipo da variável do contador.
4261 O valor de incremento da instrução 'FOR' deve ser do O valor incremental na instrução ‚FOR' deve
tipo 'INT' ser compatível com o tipo da variável do
contador.
4262 'EXIT' fora de um loop Use 'EXIT' somente dentro das instruções 'FOR', 'WHILE'
ou 'UNTIL'.
4263 Número esperado, 'ELSE' ou 'END_CASE' Dentro de uma expressão 'CASE' você só pode usar
um número ou uma instrução 'ELSE' ou a instrução
final 'END_CASE'.
4266 Pelo menos uma declaração é necessária Insira uma instrução, pelo menos um ponto e vírgula.
4267 A chamada do bloco de funções requer instância do bloco de O identificador na chamada do bloco de funções
funções não é uma instância. Declare uma instância do
bloco de função desejado ou use o nome de uma
instância já definida.
4268 Expressão esperada Insira uma impressão aqui.
4269 'END_CASE' esperado após ramificação 'ELSE' Termine a instrução 'CASE' após a parte
'ELSE' com um 'END_CASE'.
4270 Constante 'CASE' '%ld' já usada Um seletor 'CASE' só pode ser usado uma vez dentro de
uma instrução 'CASE'.
4271 A borda inferior do intervalo é maior que a Modifique os limites de área dos seletores para que a
borda superior. borda inferior não seja mais alta que a borda superior.
4272 Esperando o parâmetro '%s' no local %d na chamada de Você pode editar uma chamada de função dessa forma, de
'%s'! forma que também os nomes dos parâmetros estejam
contidos, não apenas os valores dos parâmetros. Mas, no
entanto, a posição (sequência) dos parâmetros deve ser a
mesma que na definição da função.
4273 Partes do intervalo 'CASE' '%ld..%ld' já usadas Certifique-se de que as áreas dos seletores usados
no intervalo '%ld..%ld' na instrução CASE não se sobreponham.
4274 Ramificação múltipla 'ELSE' na instrução 'CASE' Uma instrução CASE não pode conter mais de
uma instrução ‚ELSE'.
Jump requer 'BOOL' como tipo de entrada Certifique-se de que a entrada para o salto,
respectivamente, a instrução RETURN seja uma
expressão booleana.
4301 POU '%s' precisa exatamente %d entradas O número de entradas não corresponde ao
número de variáveis VAR_INPUT e VAR_IN_OUT
que é fornecido na definição da POU.
4302 POU '%s' precisa exatamente %d saídas O número de saídas não corresponde ao
número de variáveis VAR_OUTPUT que é
fornecido na definição da POU.
4303 '%s' não é operador Substitua '<nome>' por um operador válido.
4320 Expressão não booleana '<nome>' usada com O sinal de comutação de um contato deve ser uma
contato expressão booleana.
4321 Expressão não booleana '<nome>' usada com A variável de saída de uma bobina deve ser do tipo
bobina BOOL.
4330 Expressão esperada na entrada 'EN' da caixa Atribua uma entrada ou uma expressão à
'<nome>' entrada EN da POU '<nome>'.
4331 Expressão esperada na entrada '<número>' da caixa A entrada <número> da operadora POU não está
'<nome>' atribuída.
4332 Expressão esperada na entrada '<nome>' da A entrada da POU é do tipo VAR_IN_OUT e
caixa '<nome>' não é atribuída.
4333 Identificador no salto esperado A marca de salto fornecida não é um identificador válido.
4334 Expressão esperada na entrada do salto Atribua uma expressão booleana à entrada do
salto. Se for TRUE, o salto será executado.
4335 Expressão esperada na entrada do retorno Atribua uma expressão booleana à entrada da
instrução RETURN. Se for TRUE, o salto será
executado.
4336 Expressão esperada na entrada da saída Atribua uma expressão adequada à caixa de saída.
4338 A caixa '%s' não tem entradas A nenhuma das entradas do operador POU
'<nome>' é atribuída uma expressão válida.
4339 Tipo incompatível na saída: não é possível O tipo da expressão na caixa de saída não é
converter '<nome>' em '<nome>'. compatível com o da expressão que deve ser
atribuída a ela.
4340 Jump requer 'BOOL' como tipo de entrada Certifique-se de que a entrada para o salto seja
uma expressão booleana.
4341 O retorno requer 'BOOL' como tipo de entrada Certifique-se de que a entrada para a instrução
RETURN seja uma expressão booleana.
4342 Expressão esperada na entrada 'EN' da caixa Atribua uma expressão booleana válida à
'<nome>' entrada EN da caixa.
4343 Valores das Constantes: '<nome>' A entrada '<nome>' da caixa '<nome>' é declarada
como VAR_INPUT CONSTANT. Mas para esta caixa POU
uma expressão foi atribuída na caixa de diálogo 'Editar
Parâmetros' que não é compatível com o tipo.
4344 'S' e 'R' requerem o operando 'BOOL' Insira uma expressão booleana válida após Set
resp. Reiniciar instrução.
4345 Tipo inválido para o parâmetro '<nome>' de '<nome>': Uma expressão é atribuída à entrada '<nome>' da
Não é possível converter '<tipo>' para '<tipo>'. caixa POU '<nome>' que não é do tipo
compatível.
4346 Não é permitido usar uma constante como saída" Você só pode atribuir uma saída a uma variável ou um
endereço direto com acesso de gravação.
4347 O parâmetro 'VAR_IN_OUT' precisa de uma variável com acesso de Para os parâmetros VAR_IN_OUT somente variáveis
gravação como entrada. com acesso de escrita podem ser passadas, pois estas
podem ser modificadas dentro da POU.
4348 Nome de programa inválido '<nome>'. Já existe uma Você inseriu uma caixa de programa no editor
variável com o mesmo nome. CFC, que tem o mesmo nome de uma variável
(global) já existente em seu projeto. Você deve
renomear de acordo.
4349 A entrada ou saída na POU <nome> foi excluída: Corrija a POU apropriadamente.
Verifique todas as conexões com a caixa. Esta
mensagem de erro desaparece somente após a edição
do CFC
4350 Uma ação SFC não pode ser acessada de As ações SFC só podem ser chamadas dentro da
fora! POU SFC na qual são definidas.
4351 O nome da etapa não é identificador: '<nome>' Renomeie a etapa ou escolha um identificador válido como
nome da etapa.
4352 Caracteres extras após o nome da etapa Remova os caracteres inválidos no nome da
válida:'<nome>' etapa.
4353 Nome do passo duplicado: '<nome>' Renomeie uma das etapas.
4354 Ir para a etapa indefinida: '<nome>' Escolha um nome de passo existente como objetivo do
salto resp. insira uma etapa com o nome ‚<nome>'.
4355 Uma transição não deve ter nenhum efeito Uma transição deve ser uma expressão booleana.
colateral (Assignments, FB-Calls etc.)
4356 Salto sem nome de passo válido: '<nome>' Use um identificador válido como objetivo (marca) do salto.
4357 Biblioteca IEC não encontrada Verifique se a biblioteca iecsfc.lib está inserida no
gerenciador de bibliotecas e se os caminhos da biblioteca
definidos em 'Projeto' 'Opções' 'Caminhos' estão corretos.
4366 O rótulo da ramificação paralela não é um Insira um identificador válido ao lado do triângulo que
identificador válido: '<nome>' marca o rótulo de salto.
4367 O rótulo '<nome>' já é usado Já existe um rótulo de salto ou uma etapa com este nome.
Por favor, renomeie correspondentemente.
4368 A ação '<nome>' é usada em várias cadeias de A ação '<nome>' é utilizada na POU, bem como
etapas, onde uma contém a outra! em uma ou várias ações da POU.
4369 Exatamente uma rede necessária para uma transição São usados vários FBD resp. Redes LD para
uma transição. Reduza para 1 rede.
4370 Linhas adicionais encontradas após a transição IL correta Remova as linhas desnecessárias no final da
transição.
4371 Caracteres inválidos após expressão válida: Remova os caracteres desnecessários no final
'<nome> da transição.
4372 Passo '<nome>': Limite de tempo precisa digitar 'TIME' Defina os limites de tempo da etapa nos atributos da etapa
usando uma variável do tipo TIME ou por uma definição de
hora no formato correto (por exemplo
"t#200ms").
4373 Ações IEC são permitidas apenas com SFC-POUs Existe uma ação atribuída a uma POU não-SFC
(ver no Object Organizer), que é programada
em SFC e que contém ações IEC. Substitua esta
ação por uma que não contenha ações IEC.
4374 Etapa esperada em vez da transição '<nome>' A POU SFC está corrompida, possivelmente devido a qualquer
ação de exportação/importação.
4375 Transição esperada em vez da etapa '<nome>' A POU SFC está corrompida, possivelmente devido a qualquer
ação de exportação/importação.
4376 Etapa esperada após a transição '<nome>' A POU SFC está corrompida, possivelmente devido a qualquer
ação de exportação/importação.
4377 Transição esperada após a etapa '<nome>' A POU SFC está corrompida, possivelmente devido a qualquer
ação de exportação/importação.
Variável ou endereço não reconhecido A variável watch não é declarada dentro do projeto.
Ao pressionar <F2> você obtém o assistente de
entrada que lista as variáveis declaradas.
4501 Caracteres extras seguindo a expressão de Remova os sinais excedentes.
observação válida
4520 Erro no Pragma: sinalizador esperado antes de O pragma não está correto. Verifique se '<nome>'
'<nome>'! é um sinalizador válido.
4521 Erro no Pragma: elemento inesperado Verifique se o pragma está composto corretamente.
'<nome>'!
4558 A memória variável necessária é muito grande O tamanho máximo de dados que podem ser carregados por
meio de listas de parâmetros do tipo Variáveis para o
controlador foi excedido. Esse tamanho é definido pelo sistema
de destino. As informações sobre o tamanho dos dados são
exibidas na janela de mensagem durante a compilação. Reduza o
tamanho das listas de parâmetros.
4560 Valor inválido: Dicionário '<Nome>', coluna Verifique esta entrada. Depende da definição da coluna
'<Nome>', linha '<número da linha>' (atributo) usada atualmente quais entradas são válidas
para este campo. Essa definição é fornecida pelo arquivo de
descrição XML específico do destino do gerenciador de
parâmetros resp. pelas configurações padrão que serão
usadas se não houver arquivo de descrição.
4561 Coluna não definida: '<Nome>' As entradas em uma coluna da lista de parâmetros referem-
se a outra coluna, porém não definida. As definições de
coluna são fornecidas pelo arquivo de descrição (XML) do
Gerenciador de Parâmetros para o destino atual. Se um
arquivo de descrição não estiver disponível, as configurações
padrão serão usadas.
4562 Índice/subíndice já usado: Dicionário A combinação Índice/Subíndice deve ser única em
'<Nome>', linha '<Número da linha>' todas as listas de parâmetros, pois pode ser usada
para o acesso aos parâmetros. Corrija os índices
correspondentemente.
4563 Identificador '<Nome>' já usado: Dicionário O nome deve ser único em todas as listas de
'<Nome>', linha '<Número da linha>' parâmetros, pois pode ser usado para acesso a
parâmetros.
4565 O subíndice '<Nome>' está fora do intervalo: Dicionário Insira um subíndice que esteja dentro do intervalo definido nas
'<Nome>', linha '<Número da linha>' configurações de destino, funcionalidade de rede de categoria
no campo 'Intervalo de subíndice'.
4566 Ocorreu um erro durante a importação do Você importou um arquivo de exportação que
gerenciador de parâmetros contém informações incorretas no Parameter
Manager. Verifique o arquivo *.exp.
Variáveis de rede: a expressão '<nome>' não é Certifique-se de que a variável definida na caixa de diálogo
do tipo bool! de propriedades da lista de variáveis de rede na opção
'Transmitir no evento' seja do tipo BOOL.
4601 Variáveis de rede '<nome>': Nenhuma tarefa Não há tarefa cíclica ou de roda livre resp. PLC_PRG
cíclica ou de roda livre para troca de variável de no projeto onde são utilizadas as variáveis de rede
rede encontrada do tipo CAN ou UDP da lista dada (somente
declaração não é suficiente!). Deve-se tomar cuidado
para que as variáveis sejam utilizadas em uma tarefa
apropriada ou em PLC_PRG. Se você quiser usá-los
em várias tarefas, considere que, na troca de dados, a
tarefa com maior prioridade será considerada.
4602 '<nome da lista de variáveis de rede>': O objeto usa a Nas configurações da lista de variáveis de rede nomeadas,
porta UDP '<número da porta>' em vez de '<número da é usado um número de porta que não é o mesmo usado na
porta>' primeira lista de variáveis de rede encontrada na pasta de
variáveis globais. Tome cuidado para que todas as listas de
variáveis de rede estejam usando a mesma porta!
4620 Variáveis não utilizadas foram encontradas no Variáveis não utilizadas foram encontradas no
projeto. projeto.
4621 Existem sobreposições na atribuição de Existem sobreposições na atribuição de
variáveis para áreas de memória através da variáveis para áreas de memória através da
declaração „AT"-. declaração „AT"-.
4622 Os endereços IEC atribuídos à mesma área de Os endereços IEC atribuídos à mesma área de
memória são referenciados em mais de uma tarefa. memória são referenciados em mais de uma tarefa.
4623 O projeto obtém acesso de gravação à mesma O projeto obtém acesso de gravação à mesma
área de memória em mais de um local. área de memória em mais de um local.
4650 AxisGroup '<Nome>': A tarefa '<Nome>' não Na Configuração do CP na definição do grupo de eixos
existe. (diálogo 'Parâmetros do módulo', coluna 'Valor') existe
um nome definido para a tarefa que está controlando a
transferência de dados deste grupo de eixos, que não é
conhecido na tarefa
Configuração. Configuração correta da tarefa resp.
Configuração do PLC correspondentemente.
4651 AxisGroup '<Nome>': Cycletime (dwCycle) não definido. Na caixa de diálogo 'Parâmetros do módulo' do grupo de eixos,
insira um valor para o tempo de ciclo (dwCycle).
4670 Programa CNC '<Nome>': Variável global No programa CNC utiliza-se uma variável global
'<Nome>' não encontrada. (p.ex. $glob_var$), que não está definida no
projeto. Adicione a declaração apropriada resp.
corrija a atribuição à variável no programa
CNC.
4671 Programa CNC '<Nome>': A variável '<Nome>' é de Há uma variável atribuída em uma instrução do
tipo incompatível. programa CNC, que é declarada de um tipo de
dado que não é válido neste local. Use outra
variável resp. corrija a especificação do tipo.
4686 CAM '<Nome>': o ponto CAM excede o intervalo do tipo de Neste CAM são utilizados pontos que estão fora da faixa de
dados. dados especificada para a tabela de pontos. Para a
definição do intervalo atual, consulte a caixa de diálogo
'Compile options..' no CAM-Editor.
'<Number>' ('<Name>'): A expressão de observação Na configuração da visualização é utilizada uma
'<Name>' não é uma variável numérica. variável que não é um número, conforme requerido
neste local (por exemplo, na configuração dos valores
XOffset ou Angle etc.).
4701 '<Nome>' ('<Número>'): A expressão de Na configuração da visualização é utilizada uma
observação '<nome>' não é do tipo BOOL. variável que não é do tipo BOOL, conforme
requerido neste local.
4702 '<Nome>' ('<Número>'): A expressão de A visualização contém uma variável que não é do
observação '<nome>' não é do tipo STRING. tipo STRING, embora seja necessária neste local
(por exemplo, na configuração do tooltip).
4703 '<Nome>' ('<Number>' ): Expressão de A visualização contém uma variável inválida.
observação inválida '<Nome>'
4704 '<Nome>'('<Número>'): Valor inicial inválido na lista de Nesta watchlist, utilizada em uma visualização
observação '<Nome>'. (comando INTERN na categoria Input), existe um
erro
valor inicial. Confira a lista de usados.
4705 '<nome>' ('<número>'): Nenhum grupo de alarme válido Insira um grupo de alarme válido Na caixa de diálogo de
atribuído à tabela de alarmes. configuração da tabela de alarmes (categoria Tabela de alarmes).
Tipo inválido para conversão Você está usando uma conversão de tipo que não é
suportada pelo atualmente escolhido
gerador de código.
4901 Erro interno: Estouro no acesso ao array! Os limites da matriz são muito grandes para uma variável de
32 bits. Reduza o intervalo do índice da matriz.
Quando o TwinCAT PLC Control é iniciado, você pode adicionar comandos na linha de comando que serão ativados durante a
execução do programa. Esses comandos começam com um "/". Capitalização/Uso de letras minúsculas não é considerado. Os
comandos serão executados sequencialmente da esquerda para a direita.
Comando Descrição
/depurar
/on-line
/correr
O projeto ampel.pro é aberto, mas nenhuma janela é aberta. Os comandos incluídos no arquivo de comando
command.cmd serão executados.
Consulte a tabela a seguir para obter uma lista de comandos que podem ser usados em um arquivo de comando (<cmdfile>). O
arquivo de comando que você pode chamar por uma linha de comando (veja acima). O uso de letras maiúsculas/minúsculas não é
considerado. A linha de comando será exibida como uma mensagem na janela de mensagem e pode ser fornecida em um arquivo de
mensagem (veja abaixo). Além do comando, um "@" é prefixado. Todos os sinais após um ponto e vírgula (;) serão ignorados
(comentário).
Comandos Descrição
login online Faça o login com o projeto carregado ('Login Online')
logoff online Sair ('Online' 'Logout')
corrida online Início do programa aplicativo ('Online' 'Executar')
chip online Ligar o modo de simulação 'Online' 'Simulação')
sim on-line desligado Desligar o modo de simulação ('Online' 'Simulação')
Comandos Descrição
arquivo novo Um novo projeto é criado ('Arquivo' 'Novo').
arquivo aberto <arquivo de projeto> O projeto <projectfile> será carregado ('File' 'Open').
fechar arquivo O projeto atual será fechado ('Arquivo' 'Fechar').
salvar arquivo O projeto atual será armazenado ('Arquivo' 'Salvar').
arquivo salvo como <arquivo de projeto> O projeto atual será salvo com o nome de arquivo
<projectfile> ('Arquivo' 'Salvar como').
sair do arquivo O TwinCAT PLC Control será fechado ('Arquivo' 'Sair').
Comandos Descrição
compilação do projeto O projeto atual será compilado por "Reconstruir
tudo" ('Projeto' 'Reconstruir tudo').
verificação do projeto O projeto atual será verificado ('Projeto' 'Verificar').
construção do projeto O projeto atual será compilado ('Projeto' 'Construir').
importação de projeto <arquivo1> ... <arquivoN> Os arquivos <arquivo1> ... <arquivoN> são importados para
o projeto atual ('Projeto' 'Importar').
exportação do projeto <arquivo exp> O projeto atual será exportado no arquivo
<expfile> ('Projeto' 'Exportar')
projeto expmul <arquivo exp> Cada objeto do projeto atual será exportado em um
arquivo próprio, que recebe o nome do objeto.
Comandos Descrição
fora abrir <msgfile> O arquivo <msgfile> abre como arquivo de mensagem.
Novas mensagens serão anexadas.
de perto O arquivo de mensagem exibido no momento será fechado.
Comandos Descrição
eco em As linhas de comando serão exibidas como mensagens.
eco desligado As linhas de comando não serão exibidas como
mensagens.
eco <texto> <texto> será exibido na janela de mensagem.
Comandos para controle de substituição de objetos respectivamente para controle de arquivos para importação, exportação, substituição:
Comandos Descrição
substituir ok Substituir
substituir sim
substituir não não substitua
substituir noall Substituir nenhum
Comandos Descrição
consulta sobre Os diálogos são exibidos e precisam de entrada do usuário.
consulta desligada ok Todas as caixas de diálogo respondem como se o usuário tivesse clicado
no botão 'OK'.
consulta desligada não Todas as caixas de diálogo respondem como se o usuário tivesse clicado
no botão 'Não'.
consulta desativada cancelar Todas as caixas de diálogo respondem como se o usuário tivesse clicado
no botão 'Cancelar'.
Comando de depuração:
Comandos Descrição
depurar corresponde ao comando "/debug" na linha de
comando
Comandos Descrição
chamar <parâmetro1>... <parâmetro10> Os arquivos de comando são chamados como sub-rotinas. Até
dez parâmetros podem ser consignados. Na sub-rotina chamada
você pode acessar os parâmetros usando $0 - $9.
Comandos Descrição
dir lib <libdir> <libdir> é definido como diretório da biblioteca
dir compilar <compiledir> <compiledir> é definido como diretório para arquivos de compilação
Comandos Descrição
atraso 5000 Esperando 5 segundos.
Comandos Descrição
carregamento da lista de observação <arquivo> A lista de observação salva em <arquivo> será carregada e a
janela apropriada será aberta ('Extras' 'Carregar Lista de
Observação').
lista de observação salvar <arquivo> Salva a lista de observação atual em <arquivo> ('Extras' 'Salvar lista
de observação').
conjunto de lista de observação <texto> Uma lista de observação carregada anteriormente recebe o nome
<texto> ('Extras' 'Renomear lista de observação').
Comandos Descrição
library add <arquivo de biblioteca1> <arquivo de biblioteca2> .. <arquivo de Anexa o arquivo de biblioteca especificado à lista de bibliotecas do
bibliotecaN> projeto aberto no momento. Se o caminho do arquivo for um caminho
relativo, o diretório da biblioteca inserido no projeto será usado como
raiz do caminho.
biblioteca excluir [<biblioteca1> <biblioteca2> .. <bibliotecaN>] Exclui a biblioteca especificada ou (se nenhum nome de biblioteca for
especificado) todas as bibliotecas da lista de bibliotecas do projeto
aberto no momento.
Comandos Descrição
cópia de objeto <arquivo de projeto de origem> <caminho de origem> Copia objetos do caminho especificado do arquivo de projeto
<caminho de destino> de origem para o caminho de destino do projeto já aberto.
Comandos Descrição
sistema <comando> Executa o comando do sistema operacional especificado.
Comandos Descrição
Reiniciar Se você inicializou as variáveis com um valor
específico, este comando redefinirá as variáveis para
o valor inicializado.
Reiniciar tudo Este comando redefine todas as variáveis, incluindo as
persistentes, para seus valores de inicialização e apaga
o programa do usuário no controlador.
CreateBootproject Com este comando, o projeto compilado é configurado no
controlador.
Escolha Runtime <texto> Um sistema de tempo de execução específico pode ser escolhido.
Para <text> use o Net-Id e separe com ":" o número da porta.
Exemplo:EscolhaRuntime 172.16.77.23.1.1:811 ou
ChooseRuntime 5.2.122.255.1.1:801
Um arquivo de comando como mostrado abaixo abrirá o arquivo de projeto ampel.pro, carregará uma lista de observação,
que foi armazenada como w.wtc, iniciará o programa aplicativo e gravará - após 1 segundo de atraso - os valores das
variáveis em a lista de observação watch.wtc (que será salva) e finalmente fechará o projeto.
arquivo aberto C:\work\projects\ampel.pro
consulta desligada ok
login online
corrida online
atraso 1000
CreateBootproject
logoff online
fechar arquivo
Você pode usar tipos de dados padrão e tipos de dados definidos pelo usuário ao programar. Cada identificador é atribuído a
um tipo de dados que determina quanto espaço de memória será reservado e que tipo de valores ele armazena.
OBSERVAÇÃO
Perda de dados
Os diferentes tipos de dados cobrem diferentes faixas de valores. Se forem usadas conversões de tipos maiores para menores, as
informações podem ser perdidas.
Requisitos
INT [ }298]
UINT [ }298]
DINT [ }298]
UDINT [ }298]
LINT (número inteiro de 64 bits, atualmente não suportado
pelo TwinCAT)
REAL [ }298]
LREAL [ }299]
CORDA [ }299]
TEMPO [ }299]
10.4.1.1 BOOL
As variáveis do tipo BOOL podem receber os valores TRUE e FALSE.
BOOL 8 bits
Uma variável do tipo BOOL é verdadeira, se o bit menos significativo na memória estiver definido (por exemplo,
2#00000001 ). Se nenhum bit for definido na memória, a variável é FALSE (2#00000000). Todos os outros valores não podem
ser interpretados com precisão e exibidos (***INVALID: 16#xy *** na Visualização Online). Tais problemas podem aparecer,
se, por exemplo, faixas de memória sobrepostas forem usadas no programa PLC.
Exemplo:
SE bBool ENTÃO
bIsTRUE := VERDADEIRO;
OUTRO
bIsVERDADEIRO := FALSO;
FIM SE
10.4.1.2 BYTE
Tipo de dado inteiro.
10.4.1.3 PALAVRA
10.4.1.4 DWORD
Tipo de dado inteiro.
10.4.1.5 SINT
Tipo de dados de número inteiro com sinal (curto).
10.4.1.6 USINT
Tipo de dados inteiro sem sinal (curto).
10.4.1.7 INT
Tipo de dados inteiro com sinal.
10.4.1.8 UINT
Tipo de dados inteiro não assinado.
10.4.1.9 FORÇA
10.4.1.10 UDINT
Tipo de dados inteiro não assinado.
10.4.1.11 REAL
Tipo de dados de ponto flutuante de 32 bits. É necessário representar números racionais.
10.4.1.12 LREAL
Tipo de dados de ponto flutuante de 64 bits. É necessário representar números racionais.
LREAL ~ ~ 64 bits
- 1.79769313486231E308 1.79769313486232E308
10.4.1.13 CADEIRA
Uma variável do tipo STRING pode conter qualquer string de caracteres. A entrada de tamanho na declaração
determina quanto espaço de memória deve ser reservado para a variável. Refere-se ao número de caracteres na
string e pode ser colocado entre parênteses ou colchetes.
10.4.1.14 TEMPO
Tempo de duração. O dígito menos significativo é um milissegundo. O tipo de dados é tratado internamente como DWORD.
10.4.1.15 TOD
Hora do dia. O dígito menos significativo é um milissegundo. O tipo de dados é tratado internamente como DWORD.
10.4.1.16 DATA
Data. O dígito menos significativo é um segundo. O tipo de dados é tratado internamente como DWORD.
10.4.1.17 DT
Data e hora. O dígito menos significativo é um segundo. O tipo de dados é tratado internamente como DWORD.
10.4.2.1 Matrizes
Campos unidimensionais, bidimensionais e tridimensionais (arrays) são suportados como tipos de dados elementares. Arrays podem ser
definidos tanto na parte de declaração de uma POU quanto nas listas de variáveis globais.
Sintaxe:
<Field_Name>:ARRAY
[<LowLim1>..<UpLim1>, <LowLim2>..<UpLim2>] OF
<elem. Digite>
Exemplo:
Card_game: ARRAY [1..13, 1..4] OF INT;
Inicialização de Arrays
Elementos aos quais nenhum valor é pré-atribuído são inicializados com o valor inicial padrão do tipo básico. No
exemplo acima, os elementosarr1[3] paraarr1[10] são, portanto, inicializados com 0.
Exemplo:
Card_game[9,2]