Escolar Documentos
Profissional Documentos
Cultura Documentos
Livro de Formação Técnica TwinCAT 3.1 (01 - 2017) v0.3
Livro de Formação Técnica TwinCAT 3.1 (01 - 2017) v0.3
01 / 2017
A Bresimar Automação S.A., é uma empresa familiar Possui uma equipa técnica qualificada, que presta serviços
especializada em Automação Industrial. Fundada em 1982 de assistência pré e pós-venda, que propõe e aconselha
foi evoluindo a sua atividade comercial e atualmente soluções tecnológicas inovadoras.
divide-se em 3 áreas de negócios.
A gestão está focada e orientada para os clientes, pelo que
Essas áreas de negócios são as seguintes: efetua uma seleção muito criteriosa de fornecedores. A
formação é um fator determinante para a qualidade dos
Comercialização de equipamentos para serviços prestados por todos os colaboradores.
automação industrial através da representação
exclusiva de diversas marcas, mundialmente Espero que estes apontamentos técnicos vos sejam úteis
conceituadas (INSYS-icom , Beckhoff , Siemens nas vossas aplicações de automação industrial!
, Turck , Beijer , entre outras ) .
Obrigado pela vossa atenção.
Serviços de engenharia de automação e controlo
para processos industriais com desenvolvimento
de software para PLCs e HMIs . Este serviço Saudações
possui a marca registada asaTek . Jorge Andril
j.andril@bresimar.pt
Produção e desenvolvimento de transmissores e
http://pt.linkedin.com/in/jorgeandril
sensores de temperatura incluindo sistemas sem
fios. Estes equipamentos tem a marca registada
tekOn .
LISTA DE CONTEÚDOS
II – TwinCAT 3.1 - IO
II-1 – Comunicação com o controlador “target” 23
II-2 – Configuração dos IO´s (hardware) 28
II-3 – Linkagens dos IO´s (software) 32
A versão completa do TwinCAT v3.1 é dividida em duas partes e que são as seguintes:
Nos passos seguintes iremos explicar a instalação do softPLC TwinCAT v3.1 build 4020 e o Infosys (aplicação que
instala toda a documentação técnica do TwinCAT 3.1).
Completada a descarga do software, para o seu PC, inicie a instalação clicando duas vezes na aplicação:
[asaTek / J.Andril] 1
BRESIMAR AUTOMAÇÃO Capitulo I
Completado o processo de instalação clique no comando “Finish” e reinicie o seu PC através do comando “Yes”.
[asaTek / J.Andril] 2
BRESIMAR AUTOMAÇÃO Capitulo I
De seguida deverá dar inicio à instalação da aplicação informática TC3-InfoSys que instala, no seu PC, toda a
documentação técnica (“Help file”) do TwinCAT v3.1.
Deveremos optar pela instalação “Complete”. Clique no comando “Next” para iniciar o processo de instalação do
TC3-InfoSys.
Caso pretenda escolher a versão do Visual Studio e o idioma pretendido, para a documentação técnica, podemos
optar pela configuração “Custom”.
[asaTek / J.Andril] 3
BRESIMAR AUTOMAÇÃO Capitulo I
Com este ultimo passo completa-se a instalação do software TwinCAT 3.1. Após a instalação poderá abrir o TwinCAT
3.1 e clicar no comando HELP / View Help (Ctrl+F1). Assim poderá visualizar toda a documentação técnica da
Beckhoff designada por Beckhoff Information System (TC3-InfoSys).
Se pretender atualizar a documentação técnica de ajuda (Help) manualmente poderá fazê-lo clicando em “Update
TC3-InfoSys (en-us)”, dentro da pasta Beckhoff, utilizando o botão “Start” do Windows.
[asaTek / J.Andril] 4
BRESIMAR AUTOMAÇÃO Capitulo I
Caso pretenda instalar só o TwinCAT 3.1 (XAR), na sua máquina, poderá recorrer ao site da Beckhoff
(http://www.beckhoff.com) e descarregar a ultima versão do TwinCAT 3.1 (XAR). De seguida apresentamos os
passos necessários para a sua instalação (idêntica à instalação da versão completa).
Caso o utilizador não queira instalar o pacote completo poderá, através das opções, selecionar as pretendidas. Na
sua instalação o software irá detetar automaticamente se o sistema é de 32 ou 64 bits. Só a partir da versão TwinCAT
3.1 é que suporta ambientes de 32 ou 64 bits.
[asaTek / J.Andril] 5
BRESIMAR AUTOMAÇÃO Capitulo I
Após efetuado o desenvolvimento do projeto e compilado ao descarregarmos para o softPLC o TwinCAT3.1 deteta
automaticamente quais as licenças necessárias a serem ativadas.
Podemos ativar as licenças manualmente, em versão trial durante um período de 7 dias, clicando na pasta “SYSTEM”
/” License” da plataforma de desenvolvimento TwinCAT (XAE).
“Order Information (Runtime)”: Menu onde pode solicitar a licença trial ou definitiva
“Manage Licenses” : Podemos ativar manualmente as licenças requeridas
“Project Licenses” : As licenças necessárias para o projeto em curso
“Online Licenses” : Licenças que se encontram ativas
Na subpasta “Manage Licenses” ativamos manualmente as licenças pretendidas pondo um visto no campo “Add
License”.
[asaTek / J.Andril] 6
BRESIMAR AUTOMAÇÃO Capitulo I
Retorne à subpasta “Order Information (Runtime)” e clique no botão de comando ”7 Days Trial License…”.
De seguida surgirá uma janela pop-up de verificação de código. Aqui terá de replicar o código de 5 carateres (case
sensitive) indicado na janela superior.
Após clicar em “OK” será mostrado uma janela que informa que temos 7 dias de autorização para o uso do softPLC.
Este processo pode-se repetir após os 7 dias de licença.
Caso haja uma incompatibilidade de licenças, já residentes, o softPLC não passará para run-mode. Esse estado é
indicado pela mensagem “license issue time in the future -> check system time”.
[asaTek / J.Andril] 7
BRESIMAR AUTOMAÇÃO Capitulo I
Esta incompatibilidade reside no sincronismo do relógio de tempo real (system time) do controlador remoto e o do
PC em que se encontra o editor de programa TwinCAT (XAE). Acerte o relógio, do seu PC ou do controlador remoto
(IPC / EPC-CX), de maneira a ficarem sincronizados.
Caso pretenda visualizar e selecionar as licenças existentes no sistema, independente do projeto, selecione o
comando “Ignore Project Licenses”.
[asaTek / J.Andril] 8
BRESIMAR AUTOMAÇÃO Capitulo I
“System Id” : Este campo não necessita ser preenchido . Serve para confirmar a autorização
de ativação da licença no seu PC residente ou no controlador remoto. Neste caso terá de
estar ligado por rede ao controlador/PC remoto.
“Platform” : Não precisa ser preenchido, somente para confirmação.
“License Id” : Introduza o nº da licença comprada.
“Customer Id”: Poderá deixar em branco ou por o nome da empresa ou do equipamento.
“Comment” : Poderá por um comentário da aplicação em que é usada.
Clique de seguida no botão comando “Generate File …”. O sistema irá gerar um ficheiro de requisição de licença,
que deverá guardar no seu disco rígido.
De seguida aparece uma janela pop-up a perguntar se pretende enviar o ficheiro gerado para a Beckhoff. Caso o
pretenda clique em “Yes”.
Caso tenha selecionado “Yes” o sistema enviará uma mensagem para a caixa de correio tclicense@beckhoff.com.
Esta mensagem contem toda a informação necessária para a Beckhoff gerar a licença definitiva.
[asaTek / J.Andril] 9
BRESIMAR AUTOMAÇÃO Capitulo I
Caso este PC não tenha rede Internet poderá copiar o ficheiro e envia-lo, para o endereço anterior, através do seu
serviço de edição de email´s.
Após a receção, na Beckhoff, desse email será verificada a informação relevante existente no ficheiro. Caso não haja
erros será reenviado um email, de resposta, para si com um ficheiro de ativação definitiva.
De seguida selecione o comando “License Response File …” e selecione o ficheiro enviado pela Beckhoff.
[asaTek / J.Andril] 10
BRESIMAR AUTOMAÇÃO Capitulo I
Será boa politica, de gestão documental, arquivar este ficheiro. Serve de back-up de segurança na eventualidade de
surgir uma avaria grave no controlador que suporta o softPLC TwinCAT 3.1 e que se perca a licença residente.
Após o varrimento do hardware existente no seu controlador IPC/EPC-CX selecione, na pasta SYSTEM, a subpasta
“License Device”. Aqui selecione na opção “Dongle ………” e de seguida “Search”.
De seguida volte para a subpasta “Order Information (Runtime)” e selecione, na janela “System Id”, a opção “Dongle
Hardware Id”.
Clique no comando “Generate File…” para ser enviado um email, para a Beckhoff, com a solicitação da licença (os
mesmos procedimentos do capitulo 2.1.2). Após ter recebido a licença da Beckhoff introduza-a em “License Id”.
Após o varrimento do hardware existente no seu controlador IPC/EPC-CX selecione, na pasta SYSTEM, a subpasta
“License Device”. Aqui selecione na opção “Dongle ………” e de seguida “Search”.
[asaTek / J.Andril] 12
BRESIMAR AUTOMAÇÃO Capitulo I
De seguida volte para a subpasta “Order Information (Runtime)” e selecione, na janela “System Id”, a opção “Dongle
Hardware Id”.
Clique no comando “Generate File…” para ser enviado um email, para a Beckhoff, com a solicitação da licença (os
mesmos procedimentos do capitulo 2.1.2).
[asaTek / J.Andril] 13
BRESIMAR AUTOMAÇÃO Capitulo I
Após o procedimento anterior e inserido o dongle (EL6070 ou C990-L100) no IPC ou EPC efetue um scanning ao
hardware existente. As licenças serão detetadas e será apresentada uma janela pop-up para ativar as licenças no
seu controlador target (IPC ou EPC). Clique em “Yes”.
As causas desses erros são diversas. A lista seguinte apresenta alguns erros e como os podemos eliminar.
[asaTek / J.Andril] 14
BRESIMAR AUTOMAÇÃO Capitulo I
Esse erro é reportado quando executamos a ordem de Startup do runtime, do softPLC TwinCAR-XAR, em realtime.
As mensagens que surgem são as seguintes:
[asaTek / J.Andril] 15
BRESIMAR AUTOMAÇÃO Capitulo I
É necessário executar o “Enable” da opção VT-X, no BIOS. Para executar essa operação no PC deverá inicia-lo.
Durante o processo de arranque carregue na tecla função F2 até que o ecrã do BIOS seja exibido. De seguida vá para
o submenu “Advanced” / “CPU Configuration”.
e selecione “Enabled”.
[asaTek / J.Andril] 16
BRESIMAR AUTOMAÇÃO Capitulo I
Nas especificações do TwinCAT 3.1 é mencionado claramente que os sistemas operativos de 64bit deverão suportar
o serviço de “Intel Virtulization Tecnlogy – VT-x”, como podemos verificar na figura seguinte.
“- for x64CPU with Windows 64-bit OS, the VT-x CPU feature is mandatory and neeeds to be enabled in the BIOS”
Caso o seu PC não suporte, o serviço VT-x, existe uma outra solução alternativa. Essa alternativa passa por ativar
isoladamente um único core do microprocessador.
Surgirá uma janela pop-up onde colocará em “Available (Windows/Other):” o nº de 1. De seguida clique em “Set” e
o PC será reiniciado.
Após o reiniciar do PC abra o TwinCAT 3.1 e clique no comando “Read from Target”. Verifique se existe, na janela
apresentada, somente um RT-CPU ativo e com o limite máximo de 100%.
Caso exista essa configuração a TASK, do RT-CPU do softPLC, encontra-se atribuída a 100% ao kernel do core 3 da
CPU. O erro anterior deverá ser eliminado.
[asaTek / J.Andril] 17
BRESIMAR AUTOMAÇÃO Capitulo I
[asaTek / J.Andril] 18
BRESIMAR AUTOMAÇÃO Capitulo I
Neste caso deverá abrir e correr um programa batch residente no PC com TwinCAT (XAR). Esse programa está
localizado na seguinte pasta C:\TwinCAT\3.1\System\win8settick.bat . De seguida reinicie o PC.
Caso não seja possível a atualização do sistema operativo, a outra alternativa, é continuar a usar o sistema operativo
Windows XP e descarregar o VS2010 shell do site da Microsoft. De seguida instale o TC3.1.4020 usando a plataforma
Visual Studio 2010 shell.
Este erro deve-se à existência de software antivírus que inibe a instalação do TwinCAT 3.1. Neste caso deverá, antes
da instalação, desativar o software antivírus e se possível a firewall (não é obrigatório).
[asaTek / J.Andril] 19
BRESIMAR AUTOMAÇÃO Capitulo I
O motivo é a ausência, no seu PC, dessa pagina na pasta “Documents”. Essa pagina tem o formato xml e tem o nome
“TcXaeStartPage.3.1.xaml”. Caso tenha uma copia, em outro PC, pode copia-la e coloca-la na pasta
“\Libraries\Documents\Visual Studio 2013 \ StartPages”.
[asaTek / J.Andril] 20
BRESIMAR AUTOMAÇÃO Capitulo I
No TwinCAT 3.1 o alinhamento de dados é feito com 8 bytes. Isto significa que temos dados consistentes num pacote
de 8 bytes.
[asaTek / J.Andril] 21
BRESIMAR AUTOMAÇÃO Capitulo I
Por exemplo:
[asaTek / J.Andril] 22
BRESIMAR AUTOMAÇÃO Capitulo II
II – TwinCAT 3.1 - IO
Visão geral da aplicação TwinCAT 3.1 IO
Para os utilizadores que estão habituados a programar no TwinCAT v2 existe
uma aplicação informática, separada do editor de programa PLC Control,
designada de System Manager. Esta aplicação serve para configurar o IO´s
(Inputs/Outputs) do hardware utilizado no projeto de automação.
Nos capítulos seguintes iremos explicar os procedimentos necessários para configurar os IO’s, do hardware
encontrado no controlador remoto, com o software TwinCAT 3.1.
Ligue-se ao seu controlador IPC / EPC-CX, através de uma ligação Ethernet, usando um cabo com ficha RJ45.
De seguida inicialize o editor de projeto TwinCAT 3.1 (XAE) e crie um novo projeto.
Para efetuar esse passo clique em “New TwinCAT Project…” ou na barra de comandos clique em “File”/”New”.
De seguida, na pasta “TwinCAT Project”, selecione no template “TwinCAT XAE Project (XML format)”. Caso pretenda,
poderá alterar o nome do projeto “TwinCAT Project1”. Defina o caminho (“Location”) onde pretende guardar o
projeto (“Solution name”) escrevendo ou usando o comando “Browse…”.
[asaTek / J.Andril] 23
BRESIMAR AUTOMAÇÃO Capitulo II
De seguida surgirá uma janela pop-up. Selecione o botão de comando “Search (Ethernet)”.
[asaTek / J.Andril] 24
BRESIMAR AUTOMAÇÃO Capitulo II
Clique no botão de comando “Broadcast Search” para iniciar o varrimento (“scan”) dos controladores existentes no
“terreno” (“target”). Se souber o endereço IP do controlador “target” poderá inseri-lo na janela “Enter Host Name
/ IP :” e de seguida carregue na tecla “Enter”.
Após a execução deverá aparecer, na janela inferior, toda a informação do controlador “target”. No exemplo temos
a seguinte informação:
De seguida escolha o controlador com que pretende trabalhar e clique no botão de comando “Add Route”.
[asaTek / J.Andril] 25
BRESIMAR AUTOMAÇÃO Capitulo II
Poderá registar o controlador no “router virtual” por nome “Host Name” ou por endereço IP “IP Address”.
Para registar o controlador no “router virtual” terá de colocar o “User name : ” e a “Password :”.
Nos controladores, dependendo do Sistema Operativo, temos os seguintes valores “vindos de fabrica”:
[asaTek / J.Andril] 26
BRESIMAR AUTOMAÇÃO Capitulo II
Após a execução da tarefa anterior de registo, com sucesso, deverá aparecer na coluna “Connected” o simbolo “X”.
Deverá aparecer na lista o controlador registado anteriormente. Selecione-o clicando em cima do nome e de seguida
clique em “OK”. Na barra de comandos, do editor de programa TwinCAT 3.1 (XAE), deverá aparecer o controlador
“target” selecionado.
Clique, na mesma barra de comandos anterior, no icon do TwinCAT (cor azul) para colocarmos o softPLC TwinCAT
(XAR) em modo de configuração (“Config Mode”). De seguida clique em “OK”.
[asaTek / J.Andril] 27
BRESIMAR AUTOMAÇÃO Capitulo II
Execute o comando “Scan” para iniciar o processo de varrimento. Surgirá um pop-up informativo a alertar que o
processo automático, de deteção de hardware, poderá não encontrar todos equipamentos. Clique em “OK”.
Após a execução do “scan” selecione os “devices” pretendidos para trabalhar no controlador “target”. Surgirão
janelas pop-up informativas em que deverá clicar em “Yes”.
Finalizado o processo de “scan” deverá surgir na pasta I/O, do editor TwinCAT 3.1 (XAE), a seguinte “árvore” com o
hardware detetado no controlador “target”.
[asaTek / J.Andril] 28
BRESIMAR AUTOMAÇÃO Capitulo II
De seguida, em cima de “Device 1 (EtherCAT)”e com a tecla direita do rato, selecione em “Add New Item…”. Da lista
apresentada deverá selecionar, na pasta “System Couplers”, o drive “ EK1100 EtherCAT Coupler (2A E-Bus)”.
[asaTek / J.Andril] 29
BRESIMAR AUTOMAÇÃO Capitulo II
O passo seguinte é colocar cartas de entradas e saídas e uma porta de expansão. No icon “Term1 (EK1100)”, com a
tecla direita do rato, selecione o comando “Add New Item”. Selecione a carta de entradas digitais “Digital Input
Terminals (EL1xxx)” “EL1004”.
Com o mesmo método anterior, adicione uma carta de saídas digitais e uma porta EtherCAT de expansão. Selecione
a carta de entradas digitais em “Digital Output Terminals (EL2xxx)” “EL2024”e em “System Terminals”
“EK1110 EtherCAT extension” uma carta com uma porta EtherCAT.
Se de seguida registarmos e ativarmos no TwinCAT (XAR), esta configuração, deverá surgir uma janela com uma
informação de erro. Isto deve-se a que a porta da rede EtherCAT não se encontra configurada.
[asaTek / J.Andril] 30
BRESIMAR AUTOMAÇÃO Capitulo II
Para configurar esta porta “Device 1 (EtherCAT)” selecione a segunda sub-pasta “Adapter”. No campo “PCI Bus/Slot”
clique o comando “Search”.
Deverá surgir uma janela pop-up onde deve escolher o device “PCI Bus/Slot 4/0,Slot 7 (0xF0020000)”.
Após a colocação, na janela “PCI Bus/Slot:”, do device selecionado poderá ativar a configuração no TwinCAT (XAR).
[asaTek / J.Andril] 31
BRESIMAR AUTOMAÇÃO Capitulo II
Para iniciarmos a execução de um novo projeto teremos de selecionar no icon “PLC”, com a tecla direita do rato, o
comando “Add New Item…”.
Selecione o template “Standard PLC Project” e atribua ao projeto um nome (ex. “test”).
[asaTek / J.Andril] 32
BRESIMAR AUTOMAÇÃO Capitulo II
Na pasta “POUs” deverá clicar, duas vezes seguidas, em “MAIN”. De seguida poderá dar início à escrita do programa
do automatismo em ST (“Structured Text”).
Após a finalização do programa deverá compila-lo. Para isso deverá ir para a pasta “test Project” e com a tecla direita
selecione o comando “Build”.
O sistema automaticamente compila o programa para “código máquina”. Se não houver erros de compilação, na
janela inferior do editor de programa TwinCAT 3.1 (XAE), deverá surgir a seguinte mensagem “Build complete – 0
errors, 0 warnings : ready for download”.
[asaTek / J.Andril] 33
BRESIMAR AUTOMAÇÃO Capitulo II
Para começar a executar as linkagens entre as variáveis IO´s do programa (software) e os IO´s físicos (hardware)
clique na pasta “test Instance”.
Deverá colocar cada variável em cada um dos IO´s das respetivas cartas (hardware).
[asaTek / J.Andril] 34
BRESIMAR AUTOMAÇÃO Capitulo II
Depois das variáveis linkadas deverá registar, essa configuração, no SoftPLC TwinCAT 3.1 (XAR). Execute o comando
“Activate Configuration” na pasta “TwinCAT” da barra de comandos.
Se surgir uma janela pop-up a informar que é necessária uma licença e se a não possuir poderá gerar uma licença
temporária de 7 dias (trial license). Clique em “Yes”. Copie os 5 dígitos apresentados na janela de cima e de seguida
clique em “OK”.
“Descarregue” o programa (“download”) para o softPLC TwinCAT 3.1 “target”. Clique na barra de comandos em
“Login”.
[asaTek / J.Andril] 35
BRESIMAR AUTOMAÇÃO Capitulo II
De seguida ponha o programa, “descarregado” anteriormente, a “correr”. Clique no botão “Start (F5)”.
[asaTek / J.Andril] 36
BRESIMAR AUTOMAÇÃO Capitulo III
Em projetos que tenha uma componente de automatismos electropneumáticos a melhor opção de programação é a
linguagem Ladder (LD) ou a linguagem GRAFCET (SFC). Isto deve-se que a que as linguagens gráficas permitem mais
facilmente, à equipa de manutenção, a deteção de avarias na instrumentação e nos acionamentos. Nas partes do
projeto em que é necessário tratar, calcular e movimentar dados a melhor opção é a utilização de linguagem
estruturada ( ST).
Nota-se muitas vezes a origem dos programadores e a respetiva “escola”. Geralmente os programadores de empresas
Alemãs optam pelas linguagens FBD e ST. As empesas Americanas o Ladder e as Francesas o GRAFCET (SFC).
Na norma IEC-61131-3 todas variáveis terão de ser declaradas com um tipo de dado standard ou um tipo de dado
complexo. Os tipos de dados standard permitidos são os representados na tabela seguinte:
As variáveis declaradas são para ser utilizadas dentro dos programas (POU´s). Poderão ser declaradas como LOCAIS
ou GLOBAIS.
[asaTek / J.Andril] 38
BRESIMAR AUTOMAÇÃO Capitulo III
Podemos também declarar variáveis com o tipo de dados complexos. É o caso dos ARRAY, STRUCTURE,
ENUMERATION, etc.
O ARRAY é representado por “ARRAY [0..n] OF data_type”. No exemplo seguinte apresentamos a declaração de
variáveis ARRAY com diversos tipos de dados.
Caso necessitemos de controlar a violação dos limites do ARRAY (ex: b: ARRAY [0..90] OF INT), inferior a 0 e superior
a 90, podemos usar a Função Checkbound para controlar e corrigir esses desvios.
Esta Função é muito simples de utilizar e deverá sempre ser usada nos programas, como “POU for Implicit Checks..”,
para controlar o índex dos ARRAY´s.
Todas as variáveis quando declaradas, alem de cumprir regras de sintaxe, poderão também ser alocadas a endereços
absolutos (%I* , %Q* ou %M*). Esses endereços absolutos de memória correspondem a entradas físicas (Inputs -
%I), saídas físicas (Outputs - %Q) ou posições de memória fixas (%M).
O sinal “*” significa que não estamos a indicar o endereço real, mas um endereço que será atribuído
automaticamente pelo software TwinCAT 3, posteriormente. Caso saibamos o endereço real absoluto dos inputs ou
dos outputs poderá declara-lo como mostra a figura seguinte.
[asaTek / J.Andril] 39
BRESIMAR AUTOMAÇÃO Capitulo III
O endereço poderá ser representado por “X” BOOL ou “B” BYTE ou “W” WORD ou “D” DWORD.
Todas as variáveis terão de ser declaradas como LOCAIS (só manuseáveis no POU em que foi declarada) ou GLOBAIS
(manuseáveis em todos os POU´s do projeto).
Existem campos predefinidos quando se cria um POU. Esses campos, de variáveis declaradas, dos POU´s são
representados pelas seguintes palavra-chave:
// Variáveis de Entrada
VAR_INPUT END_VAR
// Variáveis de Saída
VAR_OUTPUT END_VAR
VAR_IN_OUT END_VAR
// Variáveis Locais
VAR END_VAR
As variáveis GLOBAIS terão de ser declaradas na pasta com a designação GVLs (“Global Variable List”). Clique em
cima dessa pasta com a tecla direita do rato e de seguida escolha em “Add” o comando “Global Variable List…”.
[asaTek / J.Andril] 40
BRESIMAR AUTOMAÇÃO Capitulo III
A partir na versão TwinCAT v3.1.4020 as variáveis globais são automaticamente indexadas ao nome atribuído ao
GVL´s. Isto significa que deveremos identificar essas variáveis por esse atributo.
Caso não pretenda utilizar este método é possível apagar essa propriedade [ {atribute ‘qualified_only’} ]
apresentada na 1º linha da pasta das variáveis globais GVLs.
Existem Funções Bloco que automaticamente executam o backup desses dados na memória (flash ou disco duro)
antes do corte de energia. Para evitar falhas de dados recomenda-se que os PLCs tenham uma UPS externa ou
interna ( supercondensador de 1s).
As variáveis retentivas terão de ser declaradas, no campo das variáveis, como VAR_PERSISTENT.
[asaTek / J.Andril] 41
BRESIMAR AUTOMAÇÃO Capitulo III
Alem do tipo de dados standard, apresentados no capitulo anterior, a norma IEC-61131-3 permite declarar variáveis
com outro tipo de dados. Esses dados são designados de complexos.
Esses dados são declarados como DTUs (“Data Unit Type”) e deverão ser declarados dentro de uma estrutura com
os limites definidos pelas palavras-chave TYPE e END_TYPE. Os tipos de dados complexos disponíveis na norma são
STRUCTURE, ENUMERATION, ALIAS e UNION.
Clique em cima da pasta DTU´s, com a tecla direita do rato, e de seguida escolha o comando “Add” / “DTUs”.
De seguida deverá surgir a janela em que escolhe o tipo de dado complexo pretendido.
Sintaxe:
TYPE <Identificador>:
STRUCT
<Nome_variavel_0> : <Tipo_dado>;
<Nome_Variavel_1> : <Tipo_dado>;
<Nome_Variavel_n> : <Tipo_dado>;
END_STRUCT
END_TYPE
[asaTek / J.Andril] 42
BRESIMAR AUTOMAÇÃO Capitulo III
Exemplo:
Com a utilização de variáveis do tipo ENUMERATION permite-nos uma leitura clara e fácil do funcionamento do
programa desenvolvido. Como cada nome “string”, declarada na ENUMERATION, deve ter um significado
funcional no algoritmo serve-nos como comentário visível tambem em modo online. Se tivéssemos de usar
constantes inteiras, em vez de ENUMERATION, a interpretação do algoritmo era mais difícil.
Sintaxe:
TYPE <Identificador>:
<Enum_0>,<Enum_1>…<Enum_n>;
END_TYPE
Podemos usar o mesmo nome de enumeração ( <Enum_x> ), com constantes diferentes, desde que sejam
declaradas em identificadores de enumeração diferentes.
Exemplo:
TYPE Fim_semana:
(Sabado, Dom); (*Sabado = 0 Dom = 1*)
END_TYPE
Sintaxe:
TYPE <Identificador>:
<Tipo_de_dado>;
END_TYPE
Exemplo:
[asaTek / J.Andril] 43
BRESIMAR AUTOMAÇÃO Capitulo III
Sintaxe:
TYPE <Identificador>:
UNION
<Nome_variavel_0> : <Tipo_dado>;
<Nome_Variavel_1> : <Tipo_dado>;
<Nome_Variavel_n> : <Tipo_dado>;
END_UNION
END_TYPE
Exemplo:
Em vez de utilizarmos uma UNION podíamos endereçar as mesmas variáveis a endereços absolutos do tipo %M.
Neste caso, tal como nas UNION, as variáveis irão ficar localizados sempre nos mesmos endereços absolutos.
[asaTek / J.Andril] 44
BRESIMAR AUTOMAÇÃO Capitulo III
A escolha estará sempre dependente do programador, embora se recomende alguns tipos de linguagem de
programação para cada tipo de automatismos.
Em projetos que tenha uma componente de automatismos eletropneumáticos, a melhor opção de programação é a
linguagem Ladder (LD) ou a linguagem GRAFCET (SFC). Isto deve-se que as linguagens gráficas permitem mais
facilmente, à equipa de manutenção, a deteção de avarias na instrumentação e nos acionamentos. Nas partes do
projeto em que é necessário tratar, calcular e movimentar dados a melhor opção é a utilização de linguagem
estruturada (ST).
[asaTek / J.Andril] 45
BRESIMAR AUTOMAÇÃO Capitulo III
Não cabe no âmbito deste Manual de Formação a explicação detalhada de cada uma destas linguagens. Todavia,
iremos de seguida explicar resumidamente a linguagem mais “apetecível” dos programadores modernos. A
linguagem estruturada designada por ST-“Structured Text”.
Instruções de decisão
[asaTek / J.Andril] 46
BRESIMAR AUTOMAÇÃO Capitulo III
Instruções de seleção
Multiseleção (CASE…OF…0:…1:…n:…ELSE…END_CASE)
Instruções de loop
[asaTek / J.Andril] 47
BRESIMAR AUTOMAÇÃO Capitulo III
Como exemplo, de um programa feito em estruturado (ST), temos o caso apresentado na figura seguinte.
[asaTek / J.Andril] 48
BRESIMAR AUTOMAÇÃO Capitulo III
Neste capitulo, de uma maneira simples e concisa, iremos descrever os passos necessários para a execução de um
pequeno projeto a correr no TwinCAT PLC v3.1.
Abra um novo projeto no TwinCAT V3.1 clicando, com a tecla direita do rato, no icon PLC e de seguida no comando
“Add New Item…”.
Na janela pop-up atribua um nome ao seu projeto, selecione o template “Standard PLC Project” e clique no botão
de comando “Add”.
Automaticamente será criada, na pasta POUs, um programa PRG em linguagem estruturada (ST) com o nome MAIN.
Este programa é chamado por uma Task temporal.
[asaTek / J.Andril] 49
BRESIMAR AUTOMAÇÃO Capitulo III
Para adicionar novos POUs devemos clicar em cima do icon POUs com a tecla direita do rato e escolher o comando
“Add” / “ POU…”.
De seguida, neste projeto, iremos adicionar uma Função Bloco (FB) com o nome “FB_Flash” e em linguagem
estruturada (ST). Neste novo FB iremos, em primeiro lugar, declarar as variáveis de entrada (VAR_INPUT), as
variáveis de saída (VAR_OUTPUT) e as variáveis locais (VAR).
O modo de funcionamento pretendido para este FB é de um automatismo de “pisca pisca”. Para executar este modo
de funcionamento iremos usar um temporizador do tipo TON. A instancia desse temporizador é fb_Ton1.
Ao longo do desenvolvimento do programa poderá usar a tecla função F2 para escolher as instancias ou as variáveis.
[asaTek / J.Andril] 50
BRESIMAR AUTOMAÇÃO Capitulo III
O programa a escrever em estruturado (ST), na Função Bloco (FB), deverá ser o seguinte:
Para que este FB de nome FB_Flash corra é necessário, em primeiro lugar, instancia-lo no programa MAIN. O nome
dessa instancia é FB_Flash1.
Na primeira linha de texto do programa MAIN pressione na tecla função F2 e escolha, na pasta “Instance Calls”, a
instancia FB_Flash1 e clique em “OK”.
Parametrize as entradas da instancia (indicadas pelo símbolo := ) e as saídas (indicadas pelo símbolo => ).
[asaTek / J.Andril] 51
BRESIMAR AUTOMAÇÃO Capitulo III
Uma vez o programa concluído daremos inicio à sua compilação (“build”). Clique , com a tecla direita do rato, em
cima do icon “SampleProject Project” e escolha o comando “Build”.
Após a compilação, sem erros, será apresentada na janela “Output” o seguinte relatório.
Após a conclusão da compilação do projeto teremos de ativar a configuração no sistema. Para isso deverá fazer o
Login ao PLC target selecionado. Ao fazermos o Login o programa é descarregado para o softPLC residente no
controlador target. Para começar a correr o programa clique em “Start PLC”.
O Login só será permitido se o seu softPLC target estiver em modo RUN. Caso esteja em modo CONFIG (icon com
cor azul) deverá coloca-lo em modo RUN (icon cor verde)
[asaTek / J.Andril] 52
BRESIMAR AUTOMAÇÃO Capitulo III
É possível modificar o tempo de “pisca pisca” em online. Por exemplo colocar 1s (T#1s) em vez de 3s.
Para efetuar esta alteração deverá dar ordem de escrita clicando, na barra de comandos, no seguinte icon :
O programa poderá ser analisado e depurado passo a passo utilizando os seguintes comandos :
Se pretender parar o debugging clique na linha onde tinha colocado o comando breakpoint e pressione de novo na
tecla função F9. O sinal vermelho, colocado do lado esquerdo, desaparece permanecendo só o fundo amarelo.
[asaTek / J.Andril] 53
BRESIMAR AUTOMAÇÃO Capitulo III
Ao selecionar o comando “Flow Control”, na barra de ferramentas, surgirá uma janela pop-up informativa. Clique
em “OK”.
A partir deste momento as linhas de codigo, que estão ativas no programa, são assinaladas com uma cor de fundo
verde. As restantes com a cor de fundo branco. Assim, mais facilmente sabemos qual das linhas de código se
encontram ativas e a serem executadas.
Na mesma barra de ferramentas, ao lado do icon de “FlowControl”, existe um icon de “Single Cycle”. Cada vez que
clicarmos neste icon o programa corre um ciclo (um scanning de cada vez).
Na barra de menus selecione no comando “PLC” / “Windows”. Tem disponíveis 4 opções de janelas de visualização.
[asaTek / J.Andril] 54
BRESIMAR AUTOMAÇÃO Capitulo III
Escolha as variáveis que pretende visualizar em online. Poderá usar o “Input Assistant”
[asaTek / J.Andril] 55
BRESIMAR AUTOMAÇÃO Capitulo III
[asaTek / J.Andril] 56
BRESIMAR AUTOMAÇÃO Capitulo IV
Nos capítulos seguintes iremos, passo a passo, explicar o modo de programação de uma Interface Homem Máquina
(HMI) para visualização de um processo integrado no TwinCAT softPLC 3.1.
Para criar um novo projeto de visualização teremos de clicar na pasta VISUs com a tecla direita do rato. De seguida
clique em “Add” e escolha o comando “Visualization…”.
[asaTek / J.Andril] 57
BRESIMAR AUTOMAÇÃO Capitulo IV
“VisuSymbols (System)”
Será carregada no
gestor de livrarias, do
projeto, “References”
diversas livrarias de
símbolos e que são
visíveis na “Toolbox
graphics controls”.
Após executar o comando anterior surgirá no editor de programa, na coluna do lado direito, uma subpasta designada
“Toolbox”. Nesta subpasta “Toolbox” estão guardados uma vasta lista de símbolos gráficos.
[asaTek / J.Andril] 58
BRESIMAR AUTOMAÇÃO Capitulo IV
Após a execução do programa do PLC coloque no ecrã de visualização “visu1” um botão e de seguida um sinalizador.
Selecione, na coluna esquerda “Toolbox”, na pasta “Basic” a subpasta de símbolos “Lamps/Switches/Bitmaps”.
Escolha os símbolos “Dip switch” e “Lamp”. Arraste-os para o ecrã “Visu1”.
De seguida teremos de configurar cada um destes dois símbolos. Para isso teremos de recorrer a cada uma das
propriedades da “Lamp” e do “Dip switch”. Selecione com o rato o símbolo pretendido e verifique as suas
propriedades no submenu “Properties”.
Para conseguirmos que os símbolos do botão e do sinalizador tenham os seus estados dinâmicos, teremos de atribuir
a cada um deles uma variável do programa.
Teremos, no campo das propriedades “Variable”, escolher a variável booleana “input” que foi atribuída ao botão do
tipo “Dip switch” e a variável “output” atribuída ao sinalizador do tipo “Lamp”.
[asaTek / J.Andril] 59
BRESIMAR AUTOMAÇÃO Capitulo IV
Após a configuração das propriedades dos dois objetos colocados na HMI “visu1” compile o programa fazendo “Build
Solution”(não é obrigatório) e descarregue-o para o softPLC fazendo “Login” “Run”.
O “Login” só será permitido se o seu softPLC target estiver em modo RUN. Caso esteja em modo
CONFIG (icon com cor azul) deverá coloca-lo em modo RUN (icon cor verde)
Clicando em cima do símbolo “Dip switch” o sinalizador deverá mudar de cor como indicam as figuras seguintes:
Em edição Em funcionamento
Em edição
[asaTek / J.Andril] 60
BRESIMAR AUTOMAÇÃO Capitulo IV
De seguida teremos de configurar este símbolo analógico. Para isso teremos de selecionar com o rato o símbolo
“Meter” e de seguida recorra ao submenu das propriedades.
No campo das propriedades “Value” clique na parte direita da janela em branco. Deverá surgir uma janela pop-up
para selecionarmos a variável atribuída, no programa do PLC, a este símbolo analógico.
Após a escolha da variável daremos inicio à configuração dos limites funcionais de escala do “Meter”. Deverá na
propriedade “Scale” alterar 4 parâmetros. Substitua os valores de defeito pelos seguintes:
”Main scale” = [20] 200 - Traço maior das divisórias da régua de escala
Em funcionamento
Coloque, em cada umas das propriedades, os valores apresentados na figura anterior. Após essa configuração
descarregue o programa para o PLC clicando em “Login” “Run”.
Na HMI poderá verificar, em online, a variação da variável MAIN.a do programa do PLC. A variação desse valor
analógico, no símbolo “Meter”, faz-se dentro da escala de 0.0 até 1000.0.
[asaTek / J.Andril] 61
BRESIMAR AUTOMAÇÃO Capitulo IV
No programa foi declarada a variável “arr1”, do tipo de dado WSTRING, com a frase inicial “BECKHOFF”. Na HMI
iremos colocar um objeto retangular. Para isso deverá na Toolbox (coluna do lado direito do editor) e na pasta de
símbolos “Basic” escolher o símbolo “Rectangle”. Arraste-o para o ecrã “Visu1”.
Em cima do retângulo será colocada uma etiqueta informativa. Na pasta “Common Controls”, da Toolbox,
escolhemos o símbolo “Label”. Arrastamos para cima do retângulo colocado na visualização “visu1”.
De seguida teremos de configurar o objeto “Rectangle” colocado na visualização. Clicamos nesse objeto e saltamos
para as suas propriedades (coluna esquerda “Properties”). Selecione a propriedade “Texts” e “Text variable” e
configure com os dados apresentados nas figuras seguintes:
Clique duas vezes na janela em branco da propriedade “Texts”/”Text” e escreva %s . De seguida clique duas vezes
na janela em branco da propriedade “Text variables”/” Text variable” e clique o comando existente
nessa janela. Deverá surgir uma janela pop-up com a lista de variáveis já declaradas no seu programa do PLC. Escolha
a variável “MAIN.arr1” do tipo wstring.
Como pretendemos que o objeto “Rectangle” seja sensível ao toque do rato, quando o colocamos em cima dele,
será necessário configurar a propriedade “Inputconfiguration” / “OnMouseDown”. Selecione e coloque a ação
“Write a Variable”.
[asaTek / J.Andril] 62
BRESIMAR AUTOMAÇÃO Capitulo IV
Uma vez selecionada a ação “Write a variable” escolha a opção “Use another variable” e clique em
Escolha, na janela pop-up que surgir, a variável do tipo wstring “arr1” e termine com “OK”.
A seguir teremos de configurar a etiqueta “Label” colocada em cima do retângulo. Clique nesse símbolo. Nas suas
propriedades “Texts”/”Text” escreva “string”. Outra opção é escrever, na janela em branco do símbolo, “Label”
Depois de efetuadas todas as configurações das propriedades dos objetos descarregue o programa para o PLC
clicando em “Login” “Run”.
Nesta janela, como esta declarada uma variável do tipo wstring, aceita a escrita de carateres não nacionais tais como
carateres em chinês, árabe, etc.
[asaTek / J.Andril] 63
BRESIMAR AUTOMAÇÃO Capitulo IV
Uma vez criado o novo ecrã coloque um botão que vai permitir saltar para o ecrã anterior “visu1”. Clique na coluna
Toolbox e selecione “Button” que se encontra dentro da pasta “Common Controls”. Arraste-o para a visualização.
Selecione com o rato o símbolo gráfico “Button”. Altere as propriedades “Texts”/“Text” escrevendo “Go to viso2”.
Este texto, colocado no botão, é informativo para os operadores da HMI.
De seguida iremos configurar a ação a efetuar por este botão. Neste caso pretendemos saltar para o ecrã “visu1”.
Clique na propriedade “Inputconfiguration” e escolha a ação “OnMouseClick” na janela “Configure…”.
Deverá surgir uma janela pop-up para selecionarmos a ação pretendida para o botão anterior. Selecione a ação
“Change shown Visualization” e coloque-a na coluna esquerda dessa janela pop-up.
[asaTek / J.Andril] 64
BRESIMAR AUTOMAÇÃO Capitulo IV
Uma vez selecionada a ação “Change shown Visualization” escolha a opção “Assign” e clique em
Selecione a visualização “visu1” e cilque em “OK”. O mesmo passo terá de efetuar, no ecrã de visualização “visu1”,
de maneira a poder saltar para a visualização “visu2”. O botão de comando de salto é igual ao colocado e explicado
no ecrã “visu2”.
Depois de efetuadas todas as configurações das propriedades dos botões de comando, de salto de ecrãs,
descarregue o programa para o PLC clicando em “Login” “Run”. Clique no botão de comando “Go to visu2” e o
ecrã seguinte deverá surgir no PC.
Se clicar, no ecrã “visu2”, no botão de comando “Go to visu1” voltará para o ecrã anterior.
[asaTek / J.Andril] 65
BRESIMAR AUTOMAÇÃO Capitulo IV
De seguida iremos criar uma lista de texto com os erros de processo que pretendemos reportar na HMI. Clique na
pasta VISU´s, com a tecla direita, em “Add” / “Text List…”.
Na janela pop-up que surgir escreva “ErrorList” como nome da lista de texto. Clique em “Open”.
Nesta lista de texto “ErrorList” comece a escrever a lista de erros, na coluna “Default”, indexado a um nº inteiro
(coluna “ID”).
Após a construção da “base de dados”, com uma lista de erros, teremos de criar um display que mostre em dinâmico
o estado ou o erro que a máquina apresenta. Para isso teremos de acrescentar, no ecrã “visu2”, um símbolo gráfico
do tipo retângulo. Clique na Toolbox em “Basic” / “Rectangle”.
[asaTek / J.Andril] 66
BRESIMAR AUTOMAÇÃO Capitulo IV
Após a colocação do símbolo gráfico, do tipo retângulo, clique na “Properties” desse objeto gráfico e configure a
propriedade “Dynamic texts”/“Text list”. Na janela em branco clique e escolha “ErrorList” como mostra a figura
seguinte:
Clique no comando existente na parte direita da janela em branco da propriedade “Text índex”. Deverá surgir
uma janela pop-up com a lista de variáveis declaradas no programa do PLC. Escolha a variável INT com o nome
“iVar1”. De seguida clique em “OK”.
Caso pretendamos alterar na HMI a variável INT “iVar1”, para assim visualizarmos a lista de erros, podemos colocar
no ecrã um comando gráfico do tipo “combo”. Para isso recorra à Toolbox e escolha o comando “Common Controls”
/ “SpinControl” e arraste-o para o ecrã “visu2”.
Clique neste novo objeto gráfico e configure a propriedade “Position” / “Variable” com a variável “MAIN.iVar1”.
De seguida clique em “OK”.
[asaTek / J.Andril] 67
BRESIMAR AUTOMAÇÃO Capitulo IV
Depois de efetuadas todas as configurações das propriedades dos objetos gráficos, colocados anteriormente,
descarregue o programa para o PLC clicando em “Login” “Run”.
No ecrã “visu2” clique no símbolo de controlo “SpinControl” que mostra o nº inteiro “0” e altere para “2”.
Imediatamente o texto, apresentado no display de texto em cima, altera.
Clique duas vezes em “GlobalTextList”. Surgirá uma janela pop-up com o texto já escrito na HMI. Clique nessa janela,
com a tecla direita do rato. Escolha o comando “Add Language”.
[asaTek / J.Andril] 68
BRESIMAR AUTOMAÇÃO Capitulo IV
De imediato surgirá uma nova coluna, do lado direito da janela, com o titulo de “Chinese”.
Este procedimento também poderá ser feito para a “ErrorList”, configurada no capitulo 1.2.5.
Para podermos escolher o idioma, que pretendemos trabalhar na HMI, teremos de colocar no ecrã dois icons que
representem cada uma das línguas. Usaremos icons com os símbolos das bandeiras da China e a da UK. Para executar
esta operação vamos clicar na pasta VISUs e escolher a função “Image Pool…”.
[asaTek / J.Andril] 69
BRESIMAR AUTOMAÇÃO Capitulo IV
Surgirá uma janela pop-up, após clicar na função “Image Pool…”. Atribua o nome “ImagePool” e clique em “Open”.
Uma nova janela “ImagePool” surgirá no seu editor de programa. Clique, na 1º linha em branco da coluna “File
name”, no comando .
No pop-up que surge, de seguida, escolha as figuras pretendidas para representar cada um dos idiomas. No nosso
caso o Chinês e o Inglês. É possível escolher diversos tipos de formato de imagem, como mostra a figura seguinte.
Após a execução das tarefas anteriores estamos prontos a colocar, no ecrã “visu1”, dois símbolos que permitam ao
operador escolher o idioma com que pretende trabalhar.
[asaTek / J.Andril] 70
BRESIMAR AUTOMAÇÃO Capitulo IV
Na coluna do lado direito “Toolbox” selecione, na pasta “Basic”, o símbolo “Image”. Arraste-o para o ecrã “visu1”.
Ao efetuarmos o arrasto do símbolo “Image”, para a área de trabalho do ecrã, surgirá automaticamente um pop-up
designado de “Input Assistant”. Devemos selecionar a categoria “Imagepool” e escolher a figura pretendida. De
seguida clique em “OK”.
[asaTek / J.Andril] 71
BRESIMAR AUTOMAÇÃO Capitulo IV
Após colocarmos as duas imagens, como mostra o ecrã anterior, devemos dar inicio à configuração destes dois
objetos de maneira a ficarem ativos ao toque do rato. Isto é, quando pretendermos alterar a língua apresentada na
HMI devemos clicar no símbolo com a bandeira da China ou da UK.
Depois de efetuadas todas as configurações das propriedades dos objetos gráficos, colocados anteriormente,
descarregue o programa para o PLC clicando em “Login” “Run”.
[asaTek / J.Andril] 72
BRESIMAR AUTOMAÇÃO Capitulo IV
Até este capitulo explicámos o modo de colocar e parametrizar diversos símbolos numa HMI e que se encontram
disponíveis na Toolbox. Uma vez completada a Interface Homem Máquina seria importante que a nossa Interface
fosse visível num ecrã em full-screen e em modo Run. Esta solução irá permitir substituir uma possível consola
gráfica, diminuindo assim os custos da automação. Utilizaremos a HMI desenvolvida na plataforma do TwinCAT 3.1
(XAE) em modo stand-alone.
Nos casos de máquinas IPC ou EPCs/CX em que temos instalados sistemas operativos Windows XP ou 7 teremos de
efetuar alguns procedimentos para conseguirmos ter uma HMI em stand-alone.
Para criar uma HMI de arranque automático, quando a máquina inicializa, teremos de recorrer à pasta “Visualization
Manager”. Clique nessa pasta.
Escolha qual o ecrã (“Start screen”) que pretende quando a máquina é inicializada (ex. “visu1”)
Clique nas propriedades do ecrã selecionado como “Start screen” (ex. “visu1”) e coloque um visto em “Expert”.
[asaTek / J.Andril] 73
BRESIMAR AUTOMAÇÃO Capitulo IV
Como se pretende que sejam visíveis os carateres chineses é necessário ativar a propriedade “Unicode”. Clique duas
vezes na pasta “Visualization Manager” e coloque um visto em “Use Unicode strings”.
Como a aplicação HMI runtime, a correr em IPC ou EPC-CX com o TwinCAT PLC 3.1, não é gratuita teremos de
comprar e ativar uma licença. Caso pretenda só utilizar como demonstração poderá gerar uma licença de 7 dias.
Depois de efetuadas as configurações anteriores ative as configurações clicando no icon “Active configuration”. De
seguida descarregue o programa para o PLC clicando em “Login” “Run”.
De seguida, caso queira correr a HMI em modo stand-alone e não integrada no editor TwinCAT 3.1 (XAE) clique no
ficheiro Tc3PlcHmi.exe. Não poderá estar aberto, em simultâneo, o editor TC 3.1(XAE) (só é possível um cliente).
[asaTek / J.Andril] 74
BRESIMAR AUTOMAÇÃO Capitulo IV
A boa visualização da HMI do TwinCAT 3.1 está dependente do monitor e da sua resolução com que pretendemos
trabalhar. Por isso, muitas vezes, temos de configurar o ecrã para a resolução mais adequada.
Para executar esta configuração deverá clicar na coluna do lado esquerdo no ecrã inicial “Visualization”. De seguida,
na coluna do lado direito das “Properties” selecione a propriedade “Visualization”/“Size”/”Size mode” e escolha a
opção “Specified”.
Nos casos de máquinas EPCs-CX em que temos instalados sistemas operativos Windows CE teremos de efetuar os
mesmos procedimentos feitos para máquinas com sistemas operativos Windows XP ou 7 (ver cap. IV.2.1).
De seguida, caso queira correr a HMI em modo stand-alone no controlador remoto com o Windows CE, clique no
ficheiro Tc3PlcHmi.exe . O procedimento, neste caso, é diferente dos equipamentos com sistemas operativos
Windows XP ou 7.
Deverá utilizar os comandos “Start”/“Run” e na janela branca do pop-up escreva “\”. De seguida clique em “OK”.
[asaTek / J.Andril] 75
BRESIMAR AUTOMAÇÃO Capitulo IV
Clique duas vezes no ficheiro executável Tc3PlcHmiCe7x86.exe, que se encontra no diretório \Hard Disk\ TwinCAT\
3.1\ Components\ Plc\ Tc3PlcHmi, para abrir a HMI em modo full-screen.
Para corrigir este defeito deverá selecionar na HMI, para ambientes WinCE, em “Selected style” a
opção “Default, 3.0.0.0 (Beckhoff Automation GmbH)”.
[asaTek / J.Andril] 76
BRESIMAR AUTOMAÇÃO Capitulo IV
Deverá instalar essa fonte de carateres, em falta, no diretório \Hard Disk\ do seu PC embedded com
o Sistema Operativo WinCE.
[asaTek / J.Andril] 77
BRESIMAR AUTOMAÇÃO Capitulo IV
De seguida registe, no sistema operativo, as novas fontes. Para isso clique duas vezes no ficheiro
de registry e de seguida “Yes”.
[asaTek / J.Andril] 78
BRESIMAR AUTOMAÇÃO Capitulo IV
Abra a aplicação “Startup Manager” que se encontra no botão “Start”/”StartMan”. Clique em “OK”.
Na janela pop-up, que aparece, clique em “New”. De seguida, na janela “Add Item”, adicione o comando
“ShellCommand”.
[asaTek / J.Andril] 79
BRESIMAR AUTOMAÇÃO Capitulo IV
Na janela pop-up “Edit Item” e na subpasta “General” selecione, com um visto, no campo “Startup Options” as
opções “Autostart” e “Start Focused”. Não recomendamos colocar 0ms no campo “Delay(ms)”. Coloque 1000ms.
Na subpasta “Shell Command” e na janela “Enter Shell command” escreva o caminho “\hard Disk\ TwinCAT \ 3.1
\ Components\ Plc \Tc3PlcHmi\Tc3PlcHmiCE7x86.exe” e de seguida clique em “OK”.
Na janela pop-up “Beckhoff Startup Manager” surgirá, na 1ª linha, uma ação de tipo “Shell Command”.
[asaTek / J.Andril] 80
BRESIMAR AUTOMAÇÃO Capitulo IV
Clique, nessa janela pop-up, em “Save” para salvar as configurações anteriores e reiniciar o sistema.
Se no processo de reboot do sistema operativo surgir um erro, o sistema não o conseguiu arrancar com as
configurações anteriormente feitas. Será apresentada uma janela de aviso.
Verifique se não colocou um tempo de delay de 0ms ou o valor introduzido é baixo. Aumente esse tempo de delay.
Neste capitulo daremos uma explicação breve como podemos gerir o acesso funcional à HMI em run-time ou a certos
ecrãs de visualização. A gestão de login permite definir níveis de controlo e de permissões a áreas da HMI ou de
comandos.
Na pasta da coluna esquerda designada por “Visualization Manager” temos diversas subpastas, entre as quais uma
designada por “User management”
É nesta pasta que podemos criar os grupos de utilizadores, os seus níveis de acesso e permissões. Clique em “Create
user management with default groups and users”. Uma vez criado esta configuração verificamos que foram criados,
por defeito, 3 grupos: “Admin”; “Service” e “Operator”.
[asaTek / J.Andril] 81
BRESIMAR AUTOMAÇÃO Capitulo IV
Clique na subpasta “Users” e verificará que também tem 3 utilizadores, de defeito, “Admin”; “Service”; “Operator”.
Em ambas subpastas podemos criar novos grupos de utilizadores, novos utilizadores, novas passwords, modificar
os login, etc.
Para testarmos estas funcionalidades vamos acrescentar no ecrã “visu1” dois comandos “Button”. Um com a função
de Login e outra com a função Logout.
[asaTek / J.Andril] 82
BRESIMAR AUTOMAÇÃO Capitulo IV
Configure os botões, na função “User Management”, com a ação de “Login” e outro com a de “Logout”.
Podemos configurar diferentes controlos para diferentes permissões de acesso. Se pretendemos dar acesso só a
utilizadores do tipo “Admin” temos de selecionar nas propriedades “Background”/ “Access Rigths”.
Clique em “Access rigths”. Na janela pop-up que surgir configure as opções pretendidas, como mostra a figura
seguinte.
No caso de restringir o acesso, à seleção do idioma na HMI (“English” ou “Chinese”), aos utilizadores que estejam
nos grupos “Service” e “Operator” deverá por um visto na coluna de “invisible” nesses dois grupos. Neste caso os
símbolos, com as bandeiras da China e da UK, não ficam visíveis aos utilizadores destes dois grupos.
[asaTek / J.Andril] 83
BRESIMAR AUTOMAÇÃO Capitulo IV
Após as configurações efetuadas anteriormente compile o programa e ponha a aplicação a “correr”. Verificará que
os símbolos de escolha do idioma não se encontram visíveis na HMI.
O comando do tipo Dip switch também será inibido à operação. Para isso deverá fazer as mesmas parametrizações,
como efetuadas anteriormente, com os símbolos gráficos das bandeiras da China e UK.
Quando a HMI estiver em run-time e para ter acesso a estes comandos deverá clicar em “Login”. Coloque o “User
name” de “Admin” e na “Password” escreva “1”.
Clique em “OK”. A partir deste momento terá acesso à manobra do switch e os símbolos gráficos, com as bandeiras
da China e UK, ficam visíveis.
[asaTek / J.Andril] 84
BRESIMAR AUTOMAÇÃO Capitulo IV
Cada vez mais as plataformas de HMI estão a migrar de aplicações informáticas residentes em IPC ou EPC para
servidores web. Esta é a tendência atual devido à grande capacidade de processamento dos controladores e da
memória disponível, permitindo assim a instalação de servidores web.
O TwinCAT 3 permite reconfigurar toda Interface Homem Máquina para o formato web. Para isso ser possível é
necessário a instalação, nas versões superiores ao TwinCAT 3.1.4018.13, de um novo pacote plug-in designado por
HMI-Web com a referencia TF1810-PLC-HMI-Web.
Para dar inicio ao funcionamento da HMI, baseada na Web, iremos criar uma rede LAN com um IPC ou EPC, um
switch e um PC com o software de desenvolvimento de edição TwinCAT 3.1 (XAE). O Controlador baseado no IPC
ou EPC terá o endereço IP 192.168.1.100 e a gateway o 192.168.1.1 como mostra a figura seguinte.
O endereço da rede é o 192.168.0.0. O PC remoto, com o editor de programa TwinCAT 3.1 (XAE), ficará dentro da
mesma rede com o endereço 192.168.1.123 como mostra a figura seguinte.
[asaTek / J.Andril] 85
BRESIMAR AUTOMAÇÃO Capitulo IV
De seguida abra o seu projeto com o editor do TwinCAT 3.1 (XAE). Na coluna esquerda do seu projeto clique na pasta
“System” e no botão de comando “Choose target…”. Faça um varrimento aos controladores existentes na rede. Para
esse fim utilize o comando “Search (Ethernet)”/“Broadcast Search”. Registe o controlador encontrado, no seu router
virtual.
De seguida deverá configurar o seu projeto, da HMI, para plataforma web. Para isso deverá, na coluna esquerda
“Solution Explorer”, clicar na pasta de gestão das visualizações “Visualization Manager” e adicionar a função
“WebVisualization”.
De seguida deverá registar a sua configuração , descarregar o projeto para o controlador EPC-CX e por
Depois de finalizado com sucesso, o processo anterior, poderá fechar e sair do editor de programa TwinCAT-XAE.
Abra o browser que tenha disponível no seu PC. Coloque na janela do browser o seguinte caminho:
No nosso caso o controlador IPC/EPC-CX tem o IP 192.168.1.100. Surgirá no browser a HMI desenvolvida para a
plataforma Web. Assim podemos visualizar e manobrar o nosso automatismo, através de um simples browser
instalado no PC, sem necessidade de termos o TwinCAT 3.1.
[asaTek / J.Andril] 86
BRESIMAR AUTOMAÇÃO Capitulo IV
Uma segunda via de acesso ao controlador pode ser, em vez de rede Ethernet física LAN, a utilização de
comunicações wireless em equipamentos moveis tais como PC portáteis, tablets ou smartphones. Neste capitulo
explico os procedimentos de configuração necessários para concretizarmos essas comunicações.
Teremos de colocar o nosso controlador IPC ou EPC-CX com o IP 192.168.1.100, tal como foi feito no capitulo
anterior.
Com o seu equipamento móvel (PC portátil, tablet ou smartphone) entre na rede wireless disponível (ex. TP-LINK).
Caso tenha uma password ou chave de encriptação deverá coloca-la. Uma vez concretizado, com sucesso, o acesso
à rede wireless está pronto a comunicar com o controlador remoto (IP: 192.168.1.100).
Surgirá no browser do seu equipamento móvel (PC portátil, tablet ou smartphone) a HMI desenvolvida para a
plataforma Web. Assim podemos, de uma maneira simples, visualizar e manobrar o nosso automatismo.
[asaTek / J.Andril] 87
BRESIMAR AUTOMAÇÃO Capitulo IV
[asaTek / J.Andril] 88
BRESIMAR AUTOMAÇÃO Capitulo V
Em todos os projetos obrigatoriamente utilizamos livrarias. Estas livrarias encontram-se na pasta “References”. As
livrarias que são sempre “carregadas” automaticamente em um novo projeto são a “Tc2_Standard”, a “Tc2_System”
e a “Tc3_Module”. Alem destas temos à nossa disposição, no Library repository, uma vasta gama de livrarias criadas
pela Beckhoff e por outras empresas. Nem todas as livrarias disponíveis são free.
Para adicionar novas livrarias terá, na pasta “References”, de clicar com a tecla direita do rato. Surgirá um janela
pop-up com um menu com os seguintes 5 comandos :
“Add Library…” : Adiciona uma nova livraria
“Placeholders…” : Mostra os placeholders que contem as livrarias instaladas no projeto
“Library repository…” : Localização do repositório de livrarias (caminho/path)
“Set to Effective Version” : Mostra a versão usada, no projeto, dos placeholders das livrarias
“Set to Always Newest Version” : Mostra a versão mais recente dos placeholders das livrarias
[asaTek / J.Andril] 89
BRESIMAR AUTOMAÇÃO Capitulo V
Com o comando “Add library…” conseguimos visualizar todas as livrarias à nossa disposição e selecionar a que
desejamos usar no projeto. No pop-up, que surge quando clicamos em “Add library…”, se selecionarmos o comando
“Advanced…” surgirá uma janela com as seguintes pastas.
Na pasta “Company:” conseguimos visualizar a empresa autora da livraria. A maioria é da Beckhoff mas também
podemos ter outras empresas.
Se selecionarmos a opção “Display all versions (for experts only)”, com um visto, conseguimos visualizar todas as
versões instaladas no placeholder da livraria do nosso PC.
[asaTek / J.Andril] 90
BRESIMAR AUTOMAÇÃO Capitulo V
Também poderá adicionar a livraria através do seu placeholder. Clique na subpasta “Placeholder”.
Podemos também fazer a seleção sem ser por grupo. Opção “Group by category” não ativo.
[asaTek / J.Andril] 91
BRESIMAR AUTOMAÇÃO Capitulo V
A outra opção de escolher a livraria pretendida para o projeto é, na janela de cima, escrever a o nome da livraria. À
medida que se escreve a designação vai surgindo, na janela de baixo (assinalado com a cor amarela), as livrarias que
contem essas letras embutidas.
Como vimos anteriormente existem diversas maneiras de encontrarmos, no editor de projeto, as livrarias. Após a
seleção feita clique em “OK”.
[asaTek / J.Andril] 92
BRESIMAR AUTOMAÇÃO Capitulo V
Crie um projeto de PLC do tipo “Empty PLC Project”. De seguida crie os POUs que pretende colocar em livraria, tal
como FBs, FUNs, etc. No nosso exemplo temos uma FB com o nome “FB_test”.
De seguida necessitamos carregar e encapsular as nossas POUs no gestor de livraria do TwinCAT 3.1. Para isso
deverá clicar, com a tecla direita do rato, em cima do projeto do PLC e escolher o comando “Properties”.
[asaTek / J.Andril] 93
BRESIMAR AUTOMAÇÃO Capitulo V
Surgirá uma janela pop-up em que deverá introduzir dados com informação da livraria que pretende criar. Deverá
preencher no formulário, obrigatoriamente, as janelas que tem o titulo em black bold . Esses campos são o nome
da empresa que criou a livraria (“Company”), o titulo da livraria (“Title”) e a versão ex. 1.0 ou 1.0.0 (“Version”).
Também poderá designar o “Default namespace”, o “Placeholder”, o “Author” e a “Description”. Se quiser deixar
em branco poderá faze-lo.
Após o preenchimento da ficha com os dados informativos da livraria clique, com a tecla direita do rato, em cima do
projeto do PLC. Na janela pop-up que surgir encontrará duas opções que permitem salvar a livraria : “Save library…”
e “Save as library and install…”.
O comando “Save as library…” simplesmente guarda a livraria mas não a instala no repositório geral das livrarias
“Library repositor”. As livrarias poderão ser guardadas com duas diferentes extensões. Uma tem a extensão “
.library” em que podemos visualizar o programa fonte e a outra tem a extensão “ .compiled-library” em que não é
possível visualizar o programa fonte (“source code”).
[asaTek / J.Andril] 94
BRESIMAR AUTOMAÇÃO Capitulo V
Uma vez guardada a livraria podemos passar estes ficheiros a colegas de projeto ou fornecer a outras empresas ou
clientes. Essas entidades terão de a instalar no editor de projeto TwinCAT 3.1 (XAE).
Na pasta “References” clique, com a tecla direita do rato, no comando “Library repository…”.
[asaTek / J.Andril] 95
BRESIMAR AUTOMAÇÃO Capitulo V
Se a instalação da livraria for bem-sucedida deverá surgir na pasta das livrarias “(Miscellaneous)” a sua nova livraria,
como mostra a figura seguinte.
Também podemos confirmar a sua instalação, usando o Explorador de ficheiros do sistema operativo, no caminho
C: \ TwinCAT \ 3.1 \ Componets \ Plc \ Managed Libraries. Verifique a sua presença.
[asaTek / J.Andril] 96
BRESIMAR AUTOMAÇÃO Capitulo V
Outra alternativa à instalação de livrarias é usar o comando “Save as library and install”. Este comando permite
guardar e instalar, ao mesmo tempo, as suas livrarias. Este comando deve ser usado se estivermos a usar o PC de
desenvolvimento dos projetos de automação TwinCAT 3.1 (XAE).
Como nota final deste capitulo, informo que é possível atribuir nomes iguais a POUs e que pertencem a livrarias
diferentes. A seleção desses POUs (FBs ou FUNs), no programa, é feita pelo namespace como mostra a figura
seguinte.
[asaTek / J.Andril] 97
BRESIMAR AUTOMAÇÃO Capitulo V
[asaTek / J.Andril] 98
BRESIMAR AUTOMAÇÃO Capitulo VI
Este capitulo aborda os procedimentos necessários para o upload de programas residentes em softPLCs com TwinCAT
3.1, o backup dos projetos executados no editor TwinCAT 3.1 (XAE) e a gestão de compatibilidade de versões.
Para conseguirmos executar o upload de um programa residente no softPLC TwinCAT 3.1 é necessário e obrigatório
proceder à “descarga” (“download”) do programa designado por sourcecode (“Project Sources”).
Clique duas vezes na pasta do projeto do PLC (ex. “Untitled1”) e na subpasta “Settings” ative a propriedade “Project
Sources”, como mostra a figura seguinte:
Se pretendemos que o nosso projeto fique protegido a possíveis copias, por terceiros, não coloque o visto em
“Project Sources”. Assim ninguém conseguirá fazer o “upload” do programa residente no softPLC. Esta operação era
designada no TwinCAT v2 por “Sourcecode download”.
Quando executamos o comando “Activate Configuration”, com a opção “Project Sources”, irá ativar/registar a
configuração do hardware no sistema e criar o ficheiro que permitirá o upload do programa.
Uma vez completada a operação anterior poderá encontrar, na pasta “Boot” do seu IPC ou EPC-CX, uma subpasta
com o nome “CurrentConfig” e um ficheiro com extensão *.tszip com o mesmo nome. Estes ficheiros correspondem
ao ficheiro soucecode que permitirá executar o upload do programa residente no softPLC. Se copiarmos estes
ficheiros para a pasta “Boot”, de outro PC com o softPLC TC 3.1 , temos uma copia do projeto feita manualmente.
[asaTek / J.Andril] 99
BRESIMAR AUTOMAÇÃO Capitulo VI
Um procedimento, também muito importante, que terá de ser sempre efetuado é a inicialização automática do
programa do automatismo residente no softPLC TwinCAT 3.1. Para isso terá de parametrizar a opção “Autostart
Boot Project”, como mostra a figura seguinte.
Destaco e relembro os comandos que existem e que terão de ser ativados, após a finalização do projeto de
automação. Destaco os seguintes:
1º - “Activate Boot Project…” - Executa o Boot manualmente
2º -“Autostart Boot Project…” - Executa automaticamente o Boot quando se fizer “Activate Configuration”
O programa sourcecode e a sua configuração é descarregada para o softPLC target quando se fizer “Activate
Configuration”.
Após a execução dos diversos procedimentos, explicados anteriormente, estamos pronto para fazer uma copia
residente no softPLC target. Para isso deverá cumprir os passos seguintes:
Na barra de comando existente na parte superior do editor do TwinCAT 3 clique em “File” / “Open”. Na janela pop-
up escolha o comando “Open Project from Target…”.
Na janela pop-up, de seleção do controlador, escolha o softPLC target que deseja fazer o backup do programa.
Se o controlador (softPLC target) estiver conectado e ativo surgirá uma janela pop-up onde poderá selecionar a pasta
onde quer guardar o ficheiro do upload.
Geralmente o programa fonte do nosso automatismo é guardado diretamente no nosso editor de projeto TwinCAT-
XAE. Este programa fica guardado no PC do editor e automaticamente são criadas diversas pastas em que contem
todos os ficheiros e código do projeto.
Muitas vezes quando abrimos este projeto, em outro PC, com uma versão do Visual Studio diferente do original em
que foi feito surge uma janela de erro, como mostra a figura seguinte.
Para evitar este erro podemos escolher o arquivamento do nosso projeto em outro formato do Visual Studio.
Para conseguirmos facilmente abrir um projeto, em outro PC, com o editor TwinCAT 3.1 (XAE) devemos guardar o
projeto completo. De seguida mostramos quais os passos a executar.
Para “salvar” o projeto completo clique, com a tecla direita do rato, na pasta do projeto do TwinCAT 3.1 (ex.
“TwinCAT Project3”) e escolha o comando “Save TwinCAT Project3 as Archive…”.
Na janela pop-up que surgir escolha o caminho onde quer colocar o ficheiro e o seu formato (ex. *.tszip). Clique em
“Save” (“Guardar”).
Após efetuado o procedimento anterior podemos abrir o projeto num editor instalado em outro PC. O procedimento
para a abertura desse projeto é o seguinte:
Clique, na barra de comando superior do editor TwinCAT 3.1, no comando “FILE”/”Open”/“Project/Solution…”. Na
janela pop-up que surgir selecione o ficheiro *.tszip guardado anteriormente.
Na janela pop-up selecione a pasta onde quer colocar este novo projeto completo.
Para conseguirmos guardar projetos, do softPLC TwinCAT 3.1, que sejam facilmente abertos em outros PC´s devemos
seguir os seguintes procedimentos:
Para salvar o projeto do PLC (ex. New) clique, com a tecla direita do rato, na pasta do projeto designado por PLC e
escolha o comando “Save New as Archive…” como mostra o exemplo (ex. “New”) da figura seguinte.
Na janela pop-up selecione a pasta onde deseja guardar este novo projeto de PLC, em formato *.tpzip. De seguida
clique em “Save” (“Guardar”).
Para abrirmos um projeto de PLC já arquivado anteriormente em formato *.tpzip clique, com a tecla direita, na pasta
PLC e escolha o comando “Add Existing Item…” como mostra a figura seguinte.
Na janela pop-up selecione a pasta onde foi guardado o projeto PLC. De seguida clique em “Open” (“Abrir”).
Para conseguirmos guardar partes de POUs existentes nos projetos, para transferi-los para outros, devemos seguir
os seguintes procedimentos:
No exemplo o arquivo é um POU do tipo FB. O procedimento é idêntico para outros tipos (PRGs,FBs,VISUs ou GVLs).
Clique no POU que pretende arquivar, com a tecla direita do rato, e escolha o comando “Export PLCopenXML…”.
Na janela pop-up selecione a pasta onde pretende arquivar este POU. De seguida clique em “Save”.
Para abrirmos um POU já arquivado clique, com a tecla direita, na pasta POUs e escolha o comando “Import
PLCopenXML…” como mostra a figura seguinte.
Na janela pop-up selecione a pasta onde está o POU arquivado. De seguida clique em “Open” (“Abrir”),
Na janela pop-up que surgir pode ativar e selecionar os Method e Property se o POU possuir estas propriedades. Por
defeito ambos estão selecionados. Clique de seguida em “OK”.
Para conseguirmos guardar programas de “segurança máquina” SAFETY, que poderão existir em alguns projetos,
para transferi-los para outros devemos seguir os seguintes procedimentos:
Clique na pasta SAFETY, com a tecla direita do rato, e escolha o comando “Save Safety New as Archive…” como
mostra o exemplo (Ex. “Safety New”) da figura seguinte.
Na janela pop-up selecione a pasta onde quer guardar o ficheiro em formato “.tfzip” e clique em “Save” (“Guardar”).
Para abrirmos um projeto de SAFETY já arquivado anteriormente clique, com a tecla direita, na pasta SAFETY e
selecione o comando “Add Existing Item…” como mostra a figura seguinte.
Na janela pop-up selecione a pasta onde se encontra o projeto SAFETY arquivado e clique em “Open” (“Abrir”).
Para conseguirmos guardar os programas desenvolvidos em “linguagem de alto nível C++” clique na pasta C++, com
tecla direita do rato, e selecione o comando “Save Untitled2 as Archive…” como mostra o exemplo (Ex. “Untitled2”)
da figura seguinte.
Na janela pop-up selecione a pasta onde quer guardar o ficheiro em formato “.tczip” e clique em “Save”.
Para abrirmos um projeto de C++ já arquivado anteriormente clique, com a tecla direita, na pasta C++ e selecione o
comando “Add Existing Item…” como mostra a figura seguinte.
Na janela pop-up selecione a pasta onde se encontra o projeto C++ arquivado e clique em “Open”.
Para conseguirmos guardar a configuração de IO´s, que anteriormente no TwinCAT 2 correspondia ao ficheiro do
System Manager, clique com a tecla direita do rato na pasta “Device 1”. De seguida selecione o comando “Save
Device 1 (EtherCAT) As…” como mostra o exemplo (Ex. “Device 1 (EtherCAT)”) da figura seguinte.
Na janela pop-up selecione a pasta onde quer guardar o ficheiro em formato “.xti” e clique em “Save”
Para abrirmos um projeto dos “Devices” já arquivado anteriormente clique, com a tecla direita, na pasta “Devices”
e selecione o comando “Add Existing Item…” como mostra a figura seguinte.
Na janela pop-up selecione o caminho e a pasta onde se encontra o projeto arquivado e clique em “Open”.
A partir da versão 4020 do TwinCAT 3.1 notou-se um incremento de novas funções e que são incompatíveis com as
versões anteriores. Para evitar este problema, a partir da versão 4020 do TC 3.1, a instalação de novas versões é
feita criando pastas paralelas. Assim tendo estas diferentes atualizações e versões, instaladas em pastas do mesmo
PC, conseguimos facilmente comutar de uma versão para a outra. Evita-se assim a dificuldade, por não possuirmos
a versão correta, de abertura de projetos já feitos.
NOTA: A instalação de uma versão do TwinCAT 3.1 “Remote Manager” não apaga outras versões.
Para evitar erros e incompatibilidades de versões de desenvolvimento e de runtime convém termos as versões
antigas de desenvolvimento. Correntemente existem duas versões de “Engineering Remote Manager” no site da
Beckhoff .
De seguida mostro os procedimentos necessários para comutar de versão se tivermos alguma incompatibilidade da
versão de runtime, a correr num PC target, com a versão do editor de programa TwinCAT 3.1.
Se no PC tivermos mais do que uma versão instalada deverá, através do Visual Studio, selecionar a opção “TwinCAT
XAE Remote Manager”. Clique, com a tecla direita do rato, na parte vazia da barra de comandos da “Start Page” do
Visual Studio.
De seguida, na janela “TwinCAT XAE Remote Manager Toolbar” da barra de ferramentas, selecione a versão com
que pretende trabalhar. No exemplo da figura seguinte temos instaladas diversas versões RM e FULL.
Assumindo, como exemplo, que temos um controlador target com uma versão de run-time TC3.1.4018.44 nós
devemos escolher a versão antiga Build 4018.44 no nosso editor de programa TwinCAT 3.1, baseado no Visual Studio.
Esta comutação é fácil de se fazer, caso tenhamos a opção de switch de versões, no nosso PC.
Esta comutação só é permitida fazer uma vez. Caso queiramos comutar para outra versão terá de fechar o Visual
Studio e voltar a abri-lo.
Para não termos diversas versões de desenvolvimento do TwinCAT 3.1 podemos fixar a versão de edição compatível
com a versão do runtime com que estamos a trabalhar. Podemos assim fixar a versão configurando a seguinte
propriedade:
Uma vez a versão fixa, todas as vezes que abrirmos o editor de programa TwinCAT 3.1 (XAE) a função RM comuta
automaticamente para a versão compatível com o runtime.
Se o editor de programa TwinCAT 3.1 do seu PC for a ultima versão e não é compatível com a versão do runtime o
software lançará uma janela de aviso. Se desejar executar a comutação de versões clique em “OK”.
Este capitulo apresenta os diversos métodos que podemos utilizar para converter projetos feitos em TwinCAT 2 para
TwinCAT 3.1.
Neste capitulo iremos abordar os procedimentos para converter ficheiros, do tipo *.lib, do TwinCAT 2.
A livraria terá de ser obrigatoriamente compilada, sem erros, no TwinCAT 2. Na figura seguinte mostramos um
exemplo de um POU (“FB_test1”) escrito no editor de programa PLC Control do TwinCAT 2 e guardado com o nome
“libtest.lib”
De seguida abra o editor de programa TwinCAT 3.1 e na pasta (ex. “TwinCAT Project5”) clique, com a tecla direita do
rato, em PLC. De seguida clique no comando “Add Existing Item…”.
Na janela pop-up, que surge, escolha o ficheiro do tipo “Plc 2.x Library Import (*.lib)”.
Encontre a pasta onde tem arquivado esse ficheiro e clique em “Open” (“Abrir”).
Após este procedimento verifique, na pasta POUs, se está instalada a FB “FB_test1” pertencente ao ficheiro *.lib
criado no TwinCAT 2. Clique, com a tecla direita do rato, na pasta “libtest Project” e escolha o comando “Properties”.
Na janela pop-up que surge preencha, no formulário, os campos “Company”, “Title” e “Version”. Poderá também
preencher os campos “Default namespace” e “Placeholder” se o desejar (não é obrigatório).
Após o preenchimento do formulário clique, com a tecla direita do rato, no item com o nome do ficheiro e escolha
o comando “Save as library and install…”. Isto significa que será guardada e instalada uma nova livraria no
repositório das livrarias. Se optar por clicar no comando “Save as library…” só guarda o ficheiro da livraria.
De seguida, quando surgir a janela pop-up, escolha o formato do ficheiro. Se escolhermos o formato “*.library” é
guardada a livraria compilada. Se escolhermos a opção “*.compiled-library” a livraria é guardada num ficheiro
compilado e encriptado. Isso significa que não será possível ver o código fonte dos POUs existentes nessa livraria.
Clique na pasta “References”. De seguida, com a tecla direita do rato, clique no comando “Add library…”.
Para podermos converter um projeto completo, anteriormente feito em TwinCAT v2, terá de se fazer algum trabalho
preparatório. Comece por criar, no seu ambiente de trabalho (desktop), uma pasta (ex. TC2program) para os
ficheiros do projeto do TwinCAT 2. Nessa pasta crie uma subpasta de nome “Lib”. Nesta subpasta guarde todas as
livrarias utilizadas no projeto.
Abra o editor de programa TwinCAT 3.1 (XAE) e crie um novo projeto. Clique, com a tecla direita do rato, na pasta
“TwinCAT project1” e escolha o comando “Load Project from TwinCAT 2.xx Version…”.
Na janela pop-up escolha o formato do ficheiro “*.tsm”, com o comando “TwinCAT 2.xx Project (*tsm)”. Selecione
o ficheiro “*.tsm” (ex. testp) que se encontra na pasta criada inicialmente. De seguida clique em “Open” (“Abrir”).
Surgirá uma janela a avisar que irá tentar converter o projeto (Ex. testp) do formato TwinCAT 2 para o TwinCAT 3.1.
Clique em “OK”.
Se na pasta criada inicialmente não se encontra o ficheiro do programa (*.pro) do TwinCAT 2 surgirá a seguinte
janela de aviso.
Coloque o programa “*.prg” (ex. testp.pro) na pasta criada inicialmente ou procure o caminho da pasta onde ele se
encontra. De seguida clique em “Open” (“Abrir”).
Adicionado o ficheiro “*.pro” (ex. testp.pro) ao nosso projeto, de seguida, poderá surgir a seguinte caixa de dialogo.
Esta janela informa que não encontra 1 das livrarias (no nosso exemplo) e pergunta se podemos alterar o caminho
da sua localização. Clique em “Yes”(“Sim”).
Selecione, na janela “Libraries”, o caminho da localização das livrarias em falta usando o comando “Select…”
A opção mais correta é logo no início da criação da pasta no ambiente de trabalho (ex. TC2program), onde temos o
projeto completo do TC2, colocar todas as livrarias na subpasta “Lib” . Assim torna-se mais fácil encontrar o caminho.
O processo de reconversão será iniciado com a apresentação de uma janela pop-up designada por “Library
Reference Conversion”. Nesta janela teremos de escolher qual a tarefa a executar.
Se selecionarmos a 1ª opção “Convert and install the libary as well” a conversão será feita com a livraria que se
encontra na subpasta “Lib” (c:\users\andril\desktop\tc2program\lib) e será instalada no nosso editor TwinCAT 3.1.
Se esta livraria ainda não existe no seu editor de programa surgirá uma janela pop-up com um formulário, a ser
preenchido pelo programador, com o nome e versão da livraria e a empresa que a criou.
A 2ª opção “Use the following library that has already been installed :” permite escolher livrarias já existente no
nosso editor de programa TwinCAT 3. Se selecionar esta 2ª opção o botão “Browser” ficará ativo. Se clicarmos nele
surgirá a janela “Select Library”.
Na pasta “Miscellaneous” escolha a livraria já instalada (ex. Lib_test). De seguida a livraria selecionada aparece no
lado direito do comando “Browser”, como mostra a figura a seguir.
Clique em “OK”.
Também se usa a 2ª opção “Use the following library that has already been installed :” para converter
manualmente programas Standard já existentes no TwinCAT 2 . Clique no botão “Browse”.
Todas as livrarias estão referenciadas no Visual Studio. Para verificarmos essas referencias recorremos ao comando
“TOOLS” da barra superior (“Options” “TwinCAT” “PLC Environment” “Libraries”).
Após os passos anteriores concretizados, com sucesso, a conversão do projeto está concluída. Poderá visualizar na
arvore do editor de programa do TwinCAT 3.1 todas as livrarias, linkagens e POUs.
Depois de criarmos um novo projeto no editor de programa do TwinCAT 3.1 clique, com a tecla direita do rato, na
pasta PLC e selecione o comando “Add Existing Item…”.
Selecione o ficheiro, do tipo “*.pro”, com o comando “Plc 2.x Project Import (*.pro)”
De seguida deverá seguir os mesmos passos, explicados no capitulo anterior VII-2, para o caminho da pasta das
livrarias utilizadas no programa.
NOTA: Em muitas conversões quando efetuamos a compilação do novo projeto, convertido do TwinCAT 2, surgem
erros de compilação. Isso deve-se a que existem em algumas instruções do TC2 versus TC3 diferenças de sintaxe e
formatação. Com pequenas correções conseguimos eliminar esses erros.
Recomendo recorrer ao Help / Information System para verificar a causa dos erros de compilação.
Por exemplo, para o erro referenciado ao TRUNC, coloque a palavra na janela de pesquisa e clique “search”.