Você está na página 1de 127

BECKHOFF AUTOMATION

MANUAL DE FORMAO DE INICIAO


TwinCAT 3.1

por Jorge Andril

01 / 2017

BRESIMAR AUTOMAO , S.A. Departamento de Engenharia ASATEK www.bresimar.pt


Quinta do Simo EN109 - Esgueira Apartado 3080 3800-230 Aveiro PORTUGAL
O agradecimento BECKHOFF AUTOMATION pelo fornecimento de
documentao tcnica e BRESIMAR AUTOMAO S.A. pela
disponibilidade de equipamentos para a execuo de testes de campo.
A BRESIMAR AUTOMAO uma
empresa com sede em Aveiro, Portugal

A Bresimar Automao S.A., uma empresa familiar Possui uma equipa tcnica qualificada, que presta servios
especializada em Automao Industrial. Fundada em 1982 de assistncia pr e ps-venda, que prope e aconselha
foi evoluindo a sua atividade comercial e atualmente solues tecnolgicas inovadoras.
divide-se em 3 reas de negcios.
A gesto est focada e orientada para os clientes, pelo que
Essas reas de negcios so as seguintes: efetua uma seleo muito criteriosa de fornecedores. A
formao um fator determinante para a qualidade dos
Comercializao de equipamentos para servios prestados por todos os colaboradores.
automao industrial atravs da representao
exclusiva de diversas marcas, mundialmente Espero que estes apontamentos tcnicos vos sejam teis
conceituadas (INSYS-icom , Beckhoff , Siemens nas vossas aplicaes de automao industrial!
, Turck , Beijer , entre outras ) .
Obrigado pela vossa ateno.
Servios de engenharia de automao e controlo
para processos industriais com desenvolvimento
de software para PLCs e HMIs . Este servio Saudaes
possui a marca registada asaTek . Jorge Andril
j.andril@bresimar.pt
Produo 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 CONTEDOS

I Instalao do software TwinCAT 3.1


I-1 Instalao do softPLC TwinCAT V3.1 1
I-1.1 Instalao do software de engenharia TwinCAT v3.1 (XAE) 1
I-1.2 Instalao do software runtime TwinCAT V3.1 (XAR) 5
I-2 Ativao das licenas do software 6
I-2.1 Ativao das licenas do XAR por software 6
I-2.1.1 Ativao de licenas trial 6
I-2.1.2 Ativao de licenas defnitivas 8
I-2.2 Ativao das licenas do XAR por hardware 11
I-2.2.1 Ativao com dongle EL6070 11
I-2.2.2 Ativao com dongle C9900-L100 USB 12
I-2.2.3 Como usar o dongle EL6070 e C9900-L100 USB 13
I-2.3 Erros na ativao das licenas 14
I-3 Solues para incompatibilidades e erros do software TwinCAT 3.1 15
I-3.1 Habilitar a funo INTEL VT-x 15
I-3.2 Erro de arranque de real-time com Windows 10 / 64bit 18
I-3.3 Erro de arranque do real-time com Windows 8 / 64bit 19
I-3.4 Incompatibilidade do TwinCAT 3.1 com Windows XP 19
I-3.5 Erro de instalao (Error 1406) 19
I-3.6 Erro de no abertura de porta (Error 0x748) 20
I-3.7 Falha da pagina inicial do TwinCAT 3.1 (Start Page) 20
I-3.8 Simultaneidade do softPLC TwinCAT (XAR) v2 e v3 no mesmo PC 21
I-3.9 Alinhamento de dados consistentes no TwinCAT 3.1 21

II TwinCAT 3.1 - IO
II-1 Comunicao com o controlador target 23
II-2 Configurao dos IOs (hardware) 28
II-3 Linkagens dos IOs (software) 32

III TwinCAT 3.1 - PLC


III-1 Introduo norma IEC 61131-3 37
III-1.1 Tipo de dados standard 37
III-1.1.1 Variveis Constantes 41
III-1.1.2 Variveis Retentivas 41
III-1.2 Tipo de dados complexos 42
III-1.2.1 DUTs do tipo Structure 42
III-1.2.2 DUTs do tipo Enumeration 43
III-1.2.3 DUTs do tipo Alias 43
III-1.2.4 DUTs do tipo Union 44
III-1.3 Tipo de Unidade de Organizao de Programa (POUs) 44
III-1.3.1 Programas Program (PRG) 45
III-1.3.2 Programas Function Block (FB) 45
III-1.3.3 Programas Function (FUN) 45
III-1.4 Linguagens de programao 45
III-1.4.1 Linguagem ST Structured Text 46
III-2 Execuo de um projeto para TwinCAT PLC 3.1 49
III-2.1 Execuo do programa 49
III-2.2 Ativao do programa 52
III-2.3 Debugging do programa 53
III-2.3.1 Pontos de paragem (Breakpoint) 53
III-2.3.2 Monitorizao do fluxo de codigo (Flow control) 54
III-2.3.3 Monitorizao multivariveis (Watch 14) 54
BECKHOFF AUTOMATION
TwinCAT V3.1

IV - TwinCAT 3.1 - HMI


IV-1 Programao do TwinCAT 3.1 HMI (Interface Homem Mquina) 57
IV-1.1 Criar um projeto de visualizao 58
IV-1.2 Desenho da visualizao 58
IV-1.2.1 Simbolos grficos para valores digitais 58
IV-1.2.2 Simbolos grficos para valores analgicos 60
IV-1.2.3 Simbolos grficos para caracteres 62
IV-1.2.4 Comando de mudana de ecrs 64
IV-1.2.5 Display de lista de texto dinamico 66
IV-1.2.6 Comando multilingue 68
IV-2 TwinCAT 3.1 HMI em stand-alone 73
IV-2.1 TwinCAT 3.1 HMI em sistemas operativos Windows XE e 7 73
IV-2.1.1 Configurao do boot do TwinCAT 3.1 HMI (XP e Win 7) 75
IV-2.2 TwinCAT 3.1 HMI em sistemas operativos Windows CE 75
IV-2.2.1 Problemas com o TwinCAT 3.1 HMI em full-screen com Windows CE 76
IV-2.2.2 Configurao do boot do TwinCAT 3.1 HMI (Win CE) 79
IV-3 Gesto do acesso funcional ao TwinCAT 3.1 HMI 81
IV-4 TwinCAT 3.1 HMI em plataforma web 85
IV-4.1 TwinCAT 3.1 HMI Web em redes LAN 85
IV-4.2 TwinCAT 3.1 HMI Web em redes Wireless 87

V TwinCAT 3.1 - Gesto de Livrarias


V-1 Gesto da biblioteca de livrarias 89
V-2 Criao de livrarias prprias 93

VI TwinCAT 3.1 - Gesto dos programas de projeto


VI-1 Gerir programas de configurao, arranque e de upload 99
VI-2 Guardar cdigo fonte dos projetos 101
VI-2.1 Guardar projetos completos 101
VI-2.2 Guardar projetos do PLC 103
VI-2.3 Guardar POUs (PRGs, FBs, FUNs, VISUs, GVLs) 104
VI-2.4 Guardar programas de SAFETY 106
VI-2.5 Guardar programas de C++ 107
VI-2.6 Guardar configurao de IOs 108
VI-3 Gesto de verses de projeto 109

VII Converso de projetos feitos em TwinCAT 2


VII-1 Converso de livrarias de TwinCAT 2 (*lib) 111
VII-2 Converso de projetos completos de TwinCAT 2 114
ix
VII-3 Converso de programas de TwinCAT 2 (*.pro) 119
BRESIMAR AUTOMAO Capitulo I

I Instalao do software TwinCAT 3.1


Viso geral e instalao do TwinCAT 3.1
A marca alem BECKHOFF com sede em Verl, localidade situada no
estado da Rennia do Norte-Vestflia, especialista em
equipamentos de automao e redes industriais. As suas solues
podem ser encontradas, por exemplo, na automao de cho de
fabrica com o objetivo de controlo de mquinas industriais ou no
controlo de edifcios. A tecnologia utilizada, desde o seu
aparecimento nos anos 80 do seculo XX, baseada na soluo soft-
PLC. No caso da BECKHOFF tem a designao de TwinCAT.

Este manual tcnico ir focalizar-se na programao dos PLCs da


BECKHOFF utilizando o software TwinCAT verso 3.1. A verso 3 foi apresentada em 2011 e ir substituir a verso V2,
num futuro prximo.

A verso completa do TwinCAT v3.1 dividida em duas partes e que so as seguintes:

+ XAE eXtended Automation Engineering


O XAE a plataforma de desenvolvimento de software multicodigo e configurao de hardware.
+ XAR eXtended Automation Runtime
O XAR a plataforma que corre em tempo real (TwinCAT runtime) a aplicao desenvolvida no TwinCAT
(XAE). A verso TwinCAT 3.1 runtime para Sistemas Operativos de 32 e 64 bit a partir do SO Windows 7.
A verso TC 3.1 build 4020 suporta o Visual Studio 2015 e o Sistema Operativo Windows 10.
A verso do Visual Studio dever ser a de lngua Inglesa.

Nos passos seguintes iremos explicar a instalao do softPLC TwinCAT v3.1 build 4020 e o Infosys (aplicao que
instala toda a documentao tcnica do TwinCAT 3.1).

I-1 Instalao do softPLC TwinCAT v3.1

I-1.1 Instalao do software de engenharia TwinCAT v3.1 (XAE)


Poder recorrer ao site da BECKHOFF ( http://www.beckhoff.com) para descarregar a ultima verso disponvel do
software TwinCAT. Para isso dirija-se, no site anterior, seguinte pasta (coluna do lado esquerdo):
Download / Software / TwinCAT3 / TE1xxx Engineering
Clique na pasta e descarregue a Verso 3.1.4020.28 ou superior disponvel do TwinCAT 3.1 (XAE):

Completada a descarga do software, para o seu PC, inicie a instalao clicando duas vezes na aplicao:

[asaTek / J.Andril] 1
BRESIMAR AUTOMAO Capitulo I

Deveremos optar pela instalao completa, Complete.

Clique no comando Next para iniciar o processo e de seguida Install.

Completado o processo de instalao clique no comando Finish e reinicie o seu PC atravs do comando Yes.

[asaTek / J.Andril] 2
BRESIMAR AUTOMAO Capitulo I

De seguida dever dar inicio instalao da aplicao informtica TC3-InfoSys que instala, no seu PC, toda a
documentao tcnica (Help file) do TwinCAT v3.1.

Deveremos optar pela instalao Complete. Clique no comando Next para iniciar o processo de instalao do
TC3-InfoSys.

Caso pretenda escolher a verso do Visual Studio e o idioma pretendido, para a documentao tcnica, podemos
optar pela configurao Custom.

Clique no comando Next para iniciar o processo e de seguida Install.

[asaTek / J.Andril] 3
BRESIMAR AUTOMAO Capitulo I

Clique no comando Yes para prosseguir e no final em Finish.

Com este ultimo passo completa-se a instalao do software TwinCAT 3.1. Aps a instalao poder abrir o TwinCAT
3.1 e clicar no comando HELP / View Help (Ctrl+F1). Assim poder visualizar toda a documentao tcnica da
Beckhoff designada por Beckhoff Information System (TC3-InfoSys).

Se pretender atualizar a documentao tcnica de ajuda (Help) manualmente poder faz-lo clicando em Update
TC3-InfoSys (en-us), dentro da pasta Beckhoff, utilizando o boto Start do Windows.

[asaTek / J.Andril] 4
BRESIMAR AUTOMAO Capitulo I

I-1.2 Instalao do software runtime TwinCAT 3.1 (XAR)


Normalmente nos PC embedded - CX s vem instalado, no seu disco rgido, a verso XAR do TwinCAT 3.1. Como os
discos rgidos so geralmente pequenos e para poupar recursos de memria a plataforma de desenvolvimento no
vem instalada nessas mquinas.

Caso pretenda instalar s o TwinCAT 3.1 (XAR), na sua mquina, poder recorrer ao site da Beckhoff
(http://www.beckhoff.com) e descarregar a ultima verso do TwinCAT 3.1 (XAR). De seguida apresentamos os
passos necessrios para a sua instalao (idntica instalao da verso completa).

Poder verificar e analisar os contedos dos seguintes dois pacotes:

Completa (XAE+XAR) : XAR :

Caso o utilizador no queira instalar o pacote completo poder, atravs das opes, selecionar as pretendidas. Na
sua instalao o software ir detetar automaticamente se o sistema de 32 ou 64 bits. S a partir da verso TwinCAT
3.1 que suporta ambientes de 32 ou 64 bits.

O caminho (path) da instalao do software por defeito a pasta C:\TwinCAT\.

[asaTek / J.Andril] 5
BRESIMAR AUTOMAO Capitulo I

I-2 Ativao das licenas do software

I-2.1 Ativao das licenas do XAR por software


De seguida iremos explicar como devemos ativar as licenas trial ou definitiva das aplicaes desenvolvidas no
TwinCAT XAE e descarregadas no softPLC TwinCAT 3.1 (XAR).

I-2.1.1 Ativao de licenas trial


A grande vantagem do TwinCAT podermos utilizar o seu software runtime livremente, durante 7 dias. Isso permite
o teste funcional dos programas de automatismo desenvolvidos no XAE. Finalizado esse perodo de tempo o softPLC
TwinCAT 3.1 (XAR) runtime deixa de funcionar e o programa descarregado no corre. Poder ativar uma nova licena
por mais 7 dias e repetir esse processo as vezes que quiser, desde que o no utilize para fins comerciais.

Aps efetuado o desenvolvimento do projeto e compilado ao descarregarmos para o softPLC o TwinCAT3.1 deteta
automaticamente quais as licenas necessrias a serem ativadas.

Podemos ativar as licenas manualmente, em verso trial durante um perodo de 7 dias, clicando na pasta SYSTEM
/ License da plataforma de desenvolvimento TwinCAT (XAE).

Existem 4 opes no menu License.

Order Information (Runtime): Menu onde pode solicitar a licena trial ou definitiva
Manage Licenses : Podemos ativar manualmente as licenas requeridas
Project Licenses : As licenas necessrias para o projeto em curso
Online Licenses : Licenas que se encontram ativas

Na subpasta Manage Licenses ativamos manualmente as licenas pretendidas pondo um visto no campo Add
License.

[asaTek / J.Andril] 6
BRESIMAR AUTOMAO Capitulo I

Retorne subpasta Order Information (Runtime) e clique no boto de comando 7 Days Trial License.

De seguida surgir uma janela pop-up de verificao de cdigo. Aqui ter de replicar o cdigo de 5 carateres (case
sensitive) indicado na janela superior.

Aps clicar em OK ser mostrado uma janela que informa que temos 7 dias de autorizao para o uso do softPLC.
Este processo pode-se repetir aps os 7 dias de licena.

Caso haja uma incompatibilidade de licenas, j residentes, o softPLC no passar para run-mode. Esse estado
indicado pela mensagem license issue time in the future -> check system time.

[asaTek / J.Andril] 7
BRESIMAR AUTOMAO Capitulo I

Esta incompatibilidade reside no sincronismo do relgio de tempo real (system time) do controlador remoto e o do
PC em que se encontra o editor de programa TwinCAT (XAE). Acerte o relgio, do seu PC ou do controlador remoto
(IPC / EPC-CX), de maneira a ficarem sincronizados.

I-2.1.2 Ativao de licenas definitivas


Quando se compra o TwinCAT 3.1 incorporado em hardware Beckhoff IPC/EPC-CX geralmente no necessrio
ativar as licenas. S necessrio se compramos separadamente o software do hardware. Nesse caso necessitamos
executar os passos indicados a seguir.

Selecione a subpasta Manage Licenses e em Add License selecione a licena pretendida.

Caso pretenda visualizar e selecionar as licenas existentes no sistema, independente do projeto, selecione o
comando Ignore Project Licenses.

Selecione a subpasta Order Information (Runtime).

[asaTek / J.Andril] 8
BRESIMAR AUTOMAO Capitulo I

System Id : Este campo no necessita ser preenchido . Serve para confirmar a autorizao
de ativao da licena no seu PC residente ou no controlador remoto. Neste caso ter de
estar ligado por rede ao controlador/PC remoto.
Platform : No precisa ser preenchido, somente para confirmao.
License Id : Introduza o n da licena comprada.
Customer Id: Poder deixar em branco ou por o nome da empresa ou do equipamento.
Comment : Poder por um comentrio da aplicao em que usada.

Clique de seguida no boto comando Generate File . O sistema ir gerar um ficheiro de requisio de licena,
que dever guardar no seu disco rgido.

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 informao necessria para a Beckhoff gerar a licena definitiva.

[asaTek / J.Andril] 9
BRESIMAR AUTOMAO Capitulo I

Caso este PC no tenha rede Internet poder copiar o ficheiro e envia-lo, para o endereo anterior, atravs do seu
servio de edio de emails.

Aps a receo, na Beckhoff, desse email ser verificada a informao relevante existente no ficheiro. Caso no haja
erros ser reenviado um email, de resposta, para si com um ficheiro de ativao definitiva.

De seguida selecione o comando License Response File e selecione o ficheiro enviado pela Beckhoff.

Selecione o ficheiro enviado pela Beckhoff.

Aps este procedimento o seu softPLC ficar registado definitivamente.

[asaTek / J.Andril] 10
BRESIMAR AUTOMAO Capitulo I

O ficheiro da licena ser automaticamente copiado para C:\TwinCAT\3.1\Target\License. Se o controlador remoto


tiver o sistema operativo Windows CE o ficheiro ficar guardado em \Hard Disk\TwinCAT\3.1\Target\License.

Ser boa politica, de gesto documental, arquivar este ficheiro. Serve de back-up de segurana na eventualidade de
surgir uma avaria grave no controlador que suporta o softPLC TwinCAT 3.1 e que se perca a licena residente.

I-2.2 Ativao das licenas do XAR por hardware


De seguida iremos explicar como devemos ativar as licenas trial ou definitiva das aplicaes desenvolvidas no
TwinCAT XAE e descarregadas no softPLC TwinCAT3 XAR, utilizando um dongle / hardlock.

I-2.2.1 Ativao com dongle EL6070


Podemos utilizar a carta EL6070 como dongle. Esta carta contem a aplicao Autorization Tool para as verses
TC3.1.4018 ou superior.

Aps o varrimento do hardware existente no seu controlador IPC/EPC-CX selecione, na pasta SYSTEM, a subpasta
License Device. Aqui selecione na opo Dongle e de seguida Search.

Na janela pop-up, que surgir, selecione EL6070 e clique em OK.


[asaTek / J.Andril] 11
BRESIMAR AUTOMAO Capitulo I

De seguida volte para a subpasta Order Information (Runtime) e selecione, na janela System Id, a opo Dongle
Hardware Id.

Clique no comando Generate File para ser enviado um email, para a Beckhoff, com a solicitao da licena (os
mesmos procedimentos do capitulo 2.1.2). Aps ter recebido a licena da Beckhoff introduza-a em License Id.

I-2.2.2 Ativao com dongle C9900-L100 USB


Podemos utilizar a pen USB C9900-L100 como dongle. Esta pen USB contem a aplicao Autorization Tool para as
verses TwinCAT 3.1.4018.26 ou superior.

Aps o varrimento do hardware existente no seu controlador IPC/EPC-CX selecione, na pasta SYSTEM, a subpasta
License Device. Aqui selecione na opo Dongle e de seguida Search.

Na janela pop-up, que surgir, selecione C9900-L100 e clique em OK.

[asaTek / J.Andril] 12
BRESIMAR AUTOMAO Capitulo I

De seguida volte para a subpasta Order Information (Runtime) e selecione, na janela System Id, a opo Dongle
Hardware Id.

Finalmente, introduza a License Id.

Clique no comando Generate File para ser enviado um email, para a Beckhoff, com a solicitao da licena (os
mesmos procedimentos do capitulo 2.1.2).

I-2.2.3 Como usar o dongle EL6070 e C9900-L100 USB


Depois de obtermos o ficheiro de autorizao, enviado pela Beckhoff, necessitamos ativar o dongle com as licenas
adquiridas. Para isso tem de voltar a subpasta License Device e selecionar o comando Download License To
Device para o dongle EL6070 ou C9900-L100.

[asaTek / J.Andril] 13
BRESIMAR AUTOMAO Capitulo I

Aps o procedimento anterior e inserido o dongle (EL6070 ou C990-L100) no IPC ou EPC efetue um scanning ao
hardware existente. As licenas sero detetadas e ser apresentada uma janela pop-up para ativar as licenas no
seu controlador target (IPC ou EPC). Clique em Yes.

O ficheiro da licena ser automaticamente copiado para c:\TwinCAT\3.1\Target\License. Se o controlador remoto


tiver o sistema operativo Windows CE o ficheiro ficar guardado em \Hard Disk\TwinCAT\3.1\Target\License.

I-2.3 Erros na ativao das licenas


A solicitao do ficheiro de autorizao das licenas necessrias para a aplicao no IPC ou EPC, como anteriormente
explicado, ter de ser enviado para a caixa de correio tclicense@beckhoff.com . Por vezes em vez de obtermos esse
ficheiro, em reposta, -nos enviado uma notificao de erros como mostra a figura seguinte.

As causas desses erros so diversas. A lista seguinte apresenta alguns erros e como os podemos eliminar.

[asaTek / J.Andril] 14
BRESIMAR AUTOMAO Capitulo I

I-3 Solues para incompatibilidades e erros do software TwinCAT 3.1

I-3.1 Habilitar a funo INTEL VT-x


Em algumas mquinas, com SO de 64bit, em que instalamos o TwinCAT 3.1 podemos ter alguns problemas de
funcionamento do softPLC inerentes configurao do BIOS do PC. Isso deve-se configurao da funo Tecnologia
de Virtualizao Intel VT-x existente no BIOS do IPC com o TwinCAT 3.1.

Esse erro reportado quando executamos a ordem de Startup do runtime, do softPLC TwinCAR-XAR, em realtime.
As mensagens que surgem so as seguintes:

Na verso TwinCAT 3.1.4020 a janela a seguinte:

[asaTek / J.Andril] 15
BRESIMAR AUTOMAO Capitulo I

necessrio executar o Enable da opo VT-X, no BIOS. Para executar essa operao no PC dever inicia-lo.
Durante o processo de arranque carregue na tecla funo F2 at que o ecr do BIOS seja exibido. De seguida v para
o submenu Advanced / CPU Configuration.

V para Hyper-threading / Intel Virtualization Technology

e selecione Enabled.

Para finalizar reinicie o PC clicando em Save Changes and Reset

[asaTek / J.Andril] 16
BRESIMAR AUTOMAO Capitulo I

Nas especificaes do TwinCAT 3.1 mencionado claramente que os sistemas operativos de 64bit devero suportar
o servio 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 no suporte, o servio VT-x, existe uma outra soluo alternativa. Essa alternativa passa por ativar
isoladamente um nico core do microprocessador.

Clique na pasta Real-Time no comando Set on target.

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.

Aps 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 mximo de 100%.

Caso exista essa configurao a TASK, do RT-CPU do softPLC, encontra-se atribuda a 100% ao kernel do core 3 da
CPU. O erro anterior dever ser eliminado.

[asaTek / J.Andril] 17
BRESIMAR AUTOMAO Capitulo I

I-3.2 Erro de arranque do real-time com Windows 10 / 64bit


Em algumas mquinas, com SO Windows 10 de 64bit, em que instalamos o TwinCAT v3.1 podem surgir alguns
problemas de funcionamento do softPLC no arranque do real-time. Neste caso dever seguir o mesmo
procedimento, anteriormente descrito, no que se refere a isolar o processamento num nico core da CPU.

[asaTek / J.Andril] 18
BRESIMAR AUTOMAO Capitulo I

I-3.3 Erro de arranque do real-time com Windows 8 / 64bit


Em algumas mquinas, com SO Windows 8 de 64bit, em que instalamos o TwinCAT v3.1 podem surgir alguns
problemas de funcionamento do softPLC no arranque do real-time. Esse erro reportado por system clock setup
fails.

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.

I-3.4 Incompatibilidade do TwinCAT 3.1 com Windows XP


A nova verso TwinCAT3.1.4020 no pode ser instalada nos sistemas operativos Windows XP. Isso deve-se a que
este sistema operativo suporta o NET4.0 e a verso TC3.1.4020 vem com o VS2013 shell. Esta verso do VS2013
necessita do NET4.5. Neste caso recomendamos atualizar o sistema operativo para Windows 7 ou superior, se
possvel.

Caso no seja possvel a atualizao 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.

I-3.5 Erro de instalao (Error 1406)

Este erro deve-se existncia de software antivrus que inibe a instalao do TwinCAT 3.1. Neste caso dever, antes
da instalao, desativar o software antivrus e se possvel a firewall (no obrigatrio).

[asaTek / J.Andril] 19
BRESIMAR AUTOMAO Capitulo I

I-3.6 Erro de no abertura de porta (Error 0x748)


No TwinCAT 3.1 poder surgir um erro de abertura de porta quando do arranque do TwinCAT PLC Control.

A soluo reinstalar o TwinCAT 3.1.

I-3.7 Falha da pagina inicial do TwinCAT 3.1 (Start Page)


Quando o software TwinCAT 3.1 (XAE) iniciado dever apresentar uma pagina principal (Start Page). Por vezes,
quando inicializamos o software, essa pagina no apresentada e mostrada uma janela de aviso de erro.

O motivo a ausncia, 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 AUTOMAO Capitulo I

I-3.8 Simultaneidade do softPLC TwinCAT (XAR) v2 e v3 no mesmo PC


possvel em PCs com Sistemas Operativos de 32bit instalar o softPLC TwinCAT (XAR) v2 e v3. O nico requisito
no poder correr as duas verses ao mesmo tempo. Teremos de optar por qual das verses do softPLC queremos
em funcionamento. Existe uma aplicao informtica que nos permite comutar de uma verso para a outra e que
tem o nome de TcSwitchRuntime. instalada automaticamente quando da instalao do TwinCAT 3.1.

I-3.9 Alinhamento de dados consistentes no TwinCAT 3.1


No TwinCAT v2 os dados eram alinhados por byte. Caso tenhamos de converter um programa feito em TwinCAT v2
para v3 temos de ter em conta que na verso 3, do TwinCAT, diferente. Isso pode provocar, se no tivermos
conhecimento desse fato, problemas de funcionamento do algoritmo do programa.

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 AUTOMAO Capitulo I

Por exemplo:

[asaTek / J.Andril] 22
BRESIMAR AUTOMAO Capitulo II

II TwinCAT 3.1 - IO
Viso geral da aplicao TwinCAT 3.1 IO
Para os utilizadores que esto habituados a programar no TwinCAT v2 existe
uma aplicao informtica, separada do editor de programa PLC Control,
designada de System Manager. Esta aplicao serve para configurar o IOs
(Inputs/Outputs) do hardware utilizado no projeto de automao.

No TwinCAT 3 o configurador de hardware encontra-se integrado na mesma


plataforma do editor de programa TwinCAT 3.1 (XAE) e designa-se por
TwinCAT IO.

O TwinCAT IO vai permitir fazer o varrimento do hardware colocado no


terreno e deteta-lo de uma forma automtica, evitando assim erros de
configurao. Na pasta IO encontrar posteriormente todos os drives
(representados por icons com o nome Term x) do hardware encontrado.

Nos captulos seguintes iremos explicar os procedimentos necessrios para configurar os IOs, do hardware
encontrado no controlador remoto, com o software TwinCAT 3.1.

II-1 Comunicao com o controlador target

Ligue-se ao seu controlador IPC / EPC-CX, atravs de uma ligao 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 AUTOMAO Capitulo II

Criado o projeto abra a pasta SYSTEM e clique em Choose Target.

De seguida surgir uma janela pop-up. Selecione o boto de comando Search (Ethernet).

[asaTek / J.Andril] 24
BRESIMAR AUTOMAO Capitulo II

Clique no boto de comando Broadcast Search para iniciar o varrimento (scan) dos controladores existentes no
terreno (target). Se souber o endereo IP do controlador target poder inseri-lo na janela Enter Host Name
/ IP : e de seguida carregue na tecla Enter.

Aps a execuo dever aparecer, na janela inferior, toda a informao do controlador target. No exemplo temos
a seguinte informao:

Host Name : CP-0C5DFA Nome do controlador do CX, IPC ou CP

Connected : x x indica que foi efetuada a ligao

Address : 169.254.162.186 Endereo IP do controlador remoto (target)

AMS NetID : 169.254.163.186.1.1 Endereo do protocolo de comunicao AMS

TwinCAT : 3.1.4018 Indicao da verso do TC3 instalada no controlador

OS Version : Windows 7 Verso do Sistema Operativo instalado (CE, WinXP, Win7)

De seguida escolha o controlador com que pretende trabalhar e clique no boto de comando Add Route.

[asaTek / J.Andril] 25
BRESIMAR AUTOMAO Capitulo II

Poder registar o controlador no router virtual por nome Host Name ou por endereo 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:

Windows XP / 7 User name : Administrator ; Password : 1

Windows CE User name : (no tem) ; Password : (no tem)

[asaTek / J.Andril] 26
BRESIMAR AUTOMAO Capitulo II

Aps a execuo da tarefa anterior de registo, com sucesso, dever aparecer na coluna Connected o simbolo X.

Feche a janela para voltarmos forma anterior.

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 configurao (Config Mode). De seguida clique em OK.

[asaTek / J.Andril] 27
BRESIMAR AUTOMAO Capitulo II

II-2 Configurao dos IOs (hardware)


Aps comunicao e registo do controlador target dever dar inicio ao varrimento (scan) do hardware IOs
(Inputs/Outputs) existente no controlador target.

Execute o comando Scan para iniciar o processo de varrimento. Surgir um pop-up informativo a alertar que o
processo automtico, de deteo de hardware, poder no encontrar todos equipamentos. Clique em OK.

Aps a execuo do scan selecione os devices pretendidos para trabalhar no controlador target. Surgiro
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 AUTOMAO Capitulo II

possvel manualmente configurar (adicionar/remover) novos componentes na rvore anterior. O procedimento


colocar o rato em cima do icon I/O / Devices e selecionar Add New Item, com a tecla direita. Coloque o drive
EtherCAT Master ( EtherCAT / EtherCAT Master ) .

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 AUTOMAO Capitulo II

O passo seguinte colocar cartas de entradas e sadas e uma porta de expanso. 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 mtodo anterior, adicione uma carta de sadas digitais e uma porta EtherCAT de expanso. Selecione
a carta de entradas digitais em Digital Output Terminals (EL2xxx) EL2024e em System Terminals
EK1110 EtherCAT extension uma carta com uma porta EtherCAT.

Se de seguida registarmos e ativarmos no TwinCAT (XAR), esta configurao, dever surgir uma janela com uma
informao de erro. Isto deve-se a que a porta da rede EtherCAT no se encontra configurada.
[asaTek / J.Andril] 30
BRESIMAR AUTOMAO 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).

Aps a colocao, na janela PCI Bus/Slot:, do device selecionado poder ativar a configurao no TwinCAT (XAR).

[asaTek / J.Andril] 31
BRESIMAR AUTOMAO Capitulo II

Os dados finais, aps a ativao, devero ser os seguintes:

II-3 Linkagens dos IOs (software)


Aps a definio do hardware existente no controlador target teremos de executar o programa de automao que
posteriormente ser descarregado (download) para o softPLC TwinCAT 3.1.

Para iniciarmos a execuo 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 AUTOMAO Capitulo II

Na pasta POUs dever clicar, duas vezes seguidas, em MAIN. De seguida poder dar incio escrita do programa
do automatismo em ST (Structured Text).

Aps a finalizao 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 cdigo mquina. Se no houver erros de compilao, 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 AUTOMAO Capitulo II

Para comear a executar as linkagens entre as variveis IOs do programa (software) e os IOs fsicos (hardware)
clique na pasta test Instance.

Dever colocar cada varivel em cada um dos IOs das respetivas cartas (hardware).

[asaTek / J.Andril] 34
BRESIMAR AUTOMAO Capitulo II

Depois das variveis linkadas dever registar, essa configurao, no SoftPLC TwinCAT 3.1 (XAR). Execute o comando
Activate Configuration na pasta TwinCAT da barra de comandos.

Surgir uma janela pop-up de informao. Clique em OK.

Se surgir uma janela pop-up a informar que necessria uma licena e se a no possuir poder gerar uma licena
temporria de 7 dias (trial license). Clique em Yes. Copie os 5 dgitos apresentados na janela de cima e de seguida
clique em OK.

Coloque o softPLC TwinCAT 3.1 (XAR) em modo RUN clicando 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 AUTOMAO Capitulo II

Na janela pop-up de informao, que surgir, clique em Yes.

De seguida ponha o programa, descarregado anteriormente, a correr. Clique no boto Start (F5).

A partir deste momento poder monitorizar os dados em online.

[asaTek / J.Andril] 36
BRESIMAR AUTOMAO Capitulo III

III TwinCAT 3.1 - PLC


Viso geral da aplicao TwinCAT 3.1 PLC
Na verso 2 do TwinCAT o editor de programa designado por PLC
Control e separado do configurador de hardware System Manager. Na
nova verso 3 do TwinCAT estas duas aplicaes esto incorporadas na
mesma plataforma informtica.

A programao no TwinCAT 3 baseada na norma IEC-61131-3.

Esta norma veio permitir a uniformizao das linguagens de


programao de PLCs. Anteriormente cada fabricante criava a sua
prpria linguagem de programao, para os seus equipamentos, o que
dificultava a sua uniformizao. Assim o estagio de adaptao a uma
nova linguagem deixa de existir, poupando assim recursos e tempo.

A norma disponibiliza, para o desenvolvimento das unidades de


programa (POUs), diversos tipos de linguagens.

Podemos dividir as linguagens em dois grupos:

Linguagens em modo Texto

Structured Text (ST) e Instruction List (IL)

Linguagens em modo grfico

Continuous Function Chart (CFC); Function Block Diagram (FBD)

Ladder Logic Diagram (LD); Sequential Function Chart (SFC)

A escolha estar sempre dependente do programador, embora se


recomende alguns tipos de linguagem de programao para cada tipo de automatismos.

Em projetos que tenha uma componente de automatismos electropneumticos a melhor opo de programao a
linguagem Ladder (LD) ou a linguagem GRAFCET (SFC). Isto deve-se que a que as linguagens grficas permitem mais
facilmente, equipa de manuteno, a deteo de avarias na instrumentao e nos acionamentos. Nas partes do
projeto em que necessrio tratar, calcular e movimentar dados a melhor opo a utilizao de linguagem
estruturada ( ST).

Nota-se muitas vezes a origem dos programadores e a respetiva escola. Geralmente os programadores de empresas
Alems optam pelas linguagens FBD e ST. As empesas Americanas o Ladder e as Francesas o GRAFCET (SFC).

III-1 Introduo norma IEC 61131-3

III-1.1 Tipo de dados standard

Na norma IEC-61131-3 todas variveis tero de ser declaradas com um tipo de dado standard ou um tipo de dado
complexo. Os tipos de dados standard permitidos so os representados na tabela seguinte:

Tipo de dado Valor Max. Valor Min. Tamanho


BOOL False True 1 bit
BYTE 0 255 8 bit
WORD 0 65535 16 bit
DWORD 0 4294967295 32 bit
SINT -127 127 8 bit
USINT 0 255 8 bit
INT -32768 32767 16 bit
[asaTek / J.Andril] 37
BRESIMAR AUTOMAO Capitulo III

UINT 0 65535 16 bit


DINT -2147483648 2147483647 32 bit
UDINT 0 4294967295 32 bit
LINT -263 263-1 64 bit
ULINT 0 264-1 64 bit
TIME_OF_DAY TOD#00:00:00 TOD#23:59:59 32 bit
DATE D#1970-01-01 D#2106-02-07 32 bit
DATE_AND_TIME DT#1970-01-01- DT#2106-02-07- 32 bit
00:00:00 06:28:15
TIME T#0s T#49D17H2M47S295MS 32 bit
REAL -3.4*10 38 3.4*1038 32 bit
LREAL -1.7*10 308 1.7*10 308 64 bit
STRING So dados ASCII. Cada carater ocupa um BYTE. A dimenso
mxima de 255 caracteres.
WSTRING So dados UNICODE. Permite carateres em chins, japons,
rabe, etc. Cada carater ocupa dois BYTES. No h dimenso
mxima para a string.

No TwinCAT 3 o tipo de dados mais comuns so representados da seguinte forma :

Tipo varivel Exemplo


BOOL True 2#1 16#1 1
False 2#0 16#0 0
WORD 2#1010111111111110 16#AFFE 45054
INT 2#1000000000000001 16#8001 -32768
TIME T#1h T#60m T#3600000ms
D Dia
H Horas T#0.5 T#12h T#43200000ms
M Minutos
S Seg. T#30m18s90ms T#0.505025h T#1818090ms
mS mS
REAL 0.3333 3.333e-1

As variveis declaradas so para ser utilizadas dentro dos programas (POUs). Podero ser declaradas como LOCAIS
ou GLOBAIS.

[asaTek / J.Andril] 38
BRESIMAR AUTOMAO Capitulo III

Podemos tambm declarar variveis 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 declarao de
variveis ARRAY com diversos tipos de dados.

Caso necessitemos de controlar a violao dos limites do ARRAY (ex: b: ARRAY [0..90] OF INT), inferior a 0 e superior
a 90, podemos usar a Funo Checkbound para controlar e corrigir esses desvios.

Esta Funo muito simples de utilizar e dever sempre ser usada nos programas, como POU for Implicit Checks..,
para controlar o ndex dos ARRAYs.

Todas as variveis quando declaradas, alem de cumprir regras de sintaxe, podero tambm ser alocadas a endereos
absolutos (%I* , %Q* ou %M*). Esses endereos absolutos de memria correspondem a entradas fsicas (Inputs -
%I), sadas fsicas (Outputs - %Q) ou posies de memria fixas (%M).

O sinal * significa que no estamos a indicar o endereo real, mas um endereo que ser atribudo
automaticamente pelo software TwinCAT 3, posteriormente. Caso saibamos o endereo real absoluto dos inputs ou
dos outputs poder declara-lo como mostra a figura seguinte.

[asaTek / J.Andril] 39
BRESIMAR AUTOMAO Capitulo III

O endereo poder ser representado por X BOOL ou B BYTE ou W WORD ou D DWORD.

Todas as variveis tero de ser declaradas como LOCAIS (s manuseveis no POU em que foi declarada) ou GLOBAIS
(manuseveis em todos os POUs do projeto).

Existem campos predefinidos quando se cria um POU. Esses campos, de variveis declaradas, dos POUs so
representados pelas seguintes palavra-chave:

// Variveis de Entrada

VAR_INPUT END_VAR

// Variveis de Sada

VAR_OUTPUT END_VAR

// Variveis de Entrada e Sada

VAR_IN_OUT END_VAR

// Variveis Locais

VAR END_VAR

As variveis GLOBAIS tero de ser declaradas na pasta com a designao 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 AUTOMAO Capitulo III

A partir na verso TwinCAT v3.1.4020 as variveis globais so automaticamente indexadas ao nome atribudo ao
GVLs. Isto significa que deveremos identificar essas variveis por esse atributo.

Por exemplo: GVL.a, GVL.b, GVL.c

Caso no pretenda utilizar este mtodo possvel apagar essa propriedade [ {atribute qualified_only} ]
apresentada na 1 linha da pasta das variveis globais GVLs.

III-1.1.1 Variveis Constantes


Caso pretendamos declarar uma varivel com uma constante e que no seja afetada por um corte de energia ao PLC
podemos declar-la como CONSTANT. Est varivel, aps a compilao, s permite a sua leitura e nunca permitir
escrita em online. A sua alterao s ser possvel aps a edio / compilao do programa e atualizao no PLC
(download).

III-1.1.2 Variveis Retentivas


Em muitas situaes de construo de mquinas industrias necessitamos guardar parmetros de mquina que tero
os valores de defeito do funcionamento das mesmas. Estes dados no podem ser volteis. Isto significa, se ocorrer
um corte de energia ao PLC, estes valores no se podem perder.

Essas variveis sero declaradas como PERSISTENT .

Existem Funes Bloco que automaticamente executam o backup desses dados na memria (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).

A Funo Bloco utilizada a FB_WritePersistentData que se encontra na livraria Tc2_Utilities.Lib.

As variveis retentivas tero de ser declaradas, no campo das variveis, como VAR_PERSISTENT.

[asaTek / J.Andril] 41
BRESIMAR AUTOMAO Capitulo III

III-1.2 Tipo de dados complexos

Alem do tipo de dados standard, apresentados no capitulo anterior, a norma IEC-61131-3 permite declarar variveis
com outro tipo de dados. Esses dados so designados de complexos.

Esses dados so declarados como DTUs (Data Unit Type) e devero ser declarados dentro de uma estrutura com
os limites definidos pelas palavras-chave TYPE e END_TYPE. Os tipos de dados complexos disponveis na norma so
STRUCTURE, ENUMERATION, ALIAS e UNION.

Clique em cima da pasta DTUs, 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.

III-1.2.1 DUTs do tipo Structure


STRUCTURE um tipo de dados definido pelo utilizador (DUT). So uma importante ajuda na gesto de dados.
As estruturas, do tipo de dado STRUCTURE, permitem construir base de dados com diversos elementos de tipo
de dados diferentes incluindo outras STRUCTURE. As STRUCTURE so usadas tal como uma varivel de um nico
elemento.

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 AUTOMAO Capitulo III

Exemplo:

III-1.2.2 DUT do tipo Enumeration


ENUMERATION um tipo de dados definido pelo utilizador (DUT). composto por constantes (nmeros inteiros)
referenciados a um nome string. Essas constantes so designadas por enumerao. Os valores de enumerao
so reconhecidos em todas as reas do projeto mesmo se elas foram declaradas localmente dentro do POU. As
enumeraes so declaradas como objetos na pasta DUTs.

Com a utilizao de variveis do tipo ENUMERATION permite-nos uma leitura clara e fcil do funcionamento do
programa desenvolvido. Como cada nome string, declarada na ENUMERATION, deve ter um significado
funcional no algoritmo serve-nos como comentrio visvel tambem em modo online. Se tivssemos de usar
constantes inteiras, em vez de ENUMERATION, a interpretao do algoritmo era mais difcil.

Sintaxe:

TYPE <Identificador>:
<Enum_0>,<Enum_1><Enum_n>;
END_TYPE

Podemos usar o mesmo nome de enumerao ( <Enum_x> ), com constantes diferentes, desde que sejam
declaradas em identificadores de enumerao diferentes.

Exemplo:

(*Dentro da pasta DTUs*)


TYPE Dia_semana:
(Seg,Ter,Qua,Qui,Sex,Sab,Dom:=10); (*Seg=0Sab=5 e Dom = 10*)
END_TYPE

TYPE Fim_semana:
(Sabado, Dom); (*Sabado = 0 Dom = 1*)
END_TYPE

III-1.2.3 DUT do tipo Alias


Podemos usar o tipo ALIAS quando desejamos criar um nome alternativo para uma varivel, constante ou Funo
Bloco (FB). Assim criamos um novo tipo de dado.

Sintaxe:

TYPE <Identificador>:
<Tipo_de_dado>;
END_TYPE
Exemplo:

(*Dentro da pasta DTUs*)


TYPE Mensagem:
STRING(90);
END_TYPE

[asaTek / J.Andril] 43
BRESIMAR AUTOMAO Capitulo III

III-1.2.4 DUT do tipo Union


Usamos o tipo UNION quando desejamos criar um tipo de dado, definido pelo utilizador (DUT), com a mesma
configurao de dados do tipo STRUCTURES. Ao contrrio das STRUCTURES, os dados definidos como UNION, iro
ficar localizados sempre nos mesmos endereos absolutos (offset) na rea de memria RAM. Esse endereo absoluto
no varia e independente da compilao do programa (Rebuild).

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 podamos enderear as mesmas variveis a endereos absolutos do tipo %M.
Neste caso, tal como nas UNION, as variveis iro ficar localizados sempre nos mesmos endereos absolutos.

III-1.3 Tipo de Unidade de Organizao de Programa (POUs)


Na norma IEC61131-3 existem 3 tipos de POUs (Program Organization Unit) Program (PRG); Function Block
(FB) e Function (FUN).

[asaTek / J.Andril] 44
BRESIMAR AUTOMAO Capitulo III

III-1.3.1 Programas Program (PRG)


O programa principal, por defeito, tem o nome de MAIN e do tipo Program (PRG). Este programa MAIN
inicializado por uma tarefa temporal (Task).

Os programas Program (PRG) tem as seguintes caractersticas:


Os programas PRG podem chamar FBs, FUNs e outros PRGs
Podem usar variveis de entrada VAR_INPUT
Podem usar variveis de sada VAR_OUTPUT
Podem usar variveis de transferncia VAR_IN_OUT
Podem usar variveis locais VAR estticas (disponveis no prximo ciclo)
Os dados locais so visveis em modo online

III-1.3.2 Programas Function Block (FB)


Os programas Function Block (FB) tem as seguintes caractersticas:
Os programas FB podem chamar FBs e FUNs
Podem usar variveis de entrada VAR_INPUT
Podem usar variveis de sada VAR_OUTPUT
Podem usar variveis de transferncia VAR_IN_OUT
Podem usar variveis locais VAR estticas (disponveis no prximo ciclo)
Em mltiplas chamadas (instancias) cada FB guarda as suas variveis em
reas de memria RAM diferentes
Os dados locais so visveis em modo online em cada instancia

III-1.3.3 Programas Function (FUN)


Os programas Function (FUN) tem as seguintes caractersticas:
Os programas FUN podem chamar FUNs
Podem usar variveis de entrada VAR_INPUT
Pode usar 1 varivel de sada
No podem usar variveis de transferncia VAR_IN_OUT
Variveis locais temporrias no visveis em online (???)

III-1.4 Linguagens de programao


Todos os POUs, apresentados neste capitulo, podero ser programados em diversos tipos de linguagem. Esses tipos
de linguagens dividem-se nos seguintes grupos funcionais:

Linguagens em modo Texto


Structured Text (ST)
Instruction List (IL)
Linguagens em modo grfico
Continuous Function Chart (CFC)
Function Block Diagram (FBD)
Ladder Logic Diagram (LD)
Sequencial Function Chart (SFC)

A escolha estar sempre dependente do programador, embora se recomende alguns tipos de linguagem de
programao para cada tipo de automatismos.

Em projetos que tenha uma componente de automatismos eletropneumticos, a melhor opo de programao a
linguagem Ladder (LD) ou a linguagem GRAFCET (SFC). Isto deve-se que as linguagens grficas permitem mais
facilmente, equipa de manuteno, a deteo de avarias na instrumentao e nos acionamentos. Nas partes do
projeto em que necessrio tratar, calcular e movimentar dados a melhor opo a utilizao de linguagem
estruturada (ST).

[asaTek / J.Andril] 45
BRESIMAR AUTOMAO Capitulo III

No cabe no mbito deste Manual de Formao a explicao detalhada de cada uma destas linguagens. Todavia,
iremos de seguida explicar resumidamente a linguagem mais apetecvel dos programadores modernos. A
linguagem estruturada designada por ST-Structured Text.

III-1.4.1 Linguagem ST - Structured Text


A linguagem ST uma linguagem em formato texto e parecida com a linguagem de alto nvel PASCAL. A lista de
instrues em ST dividem-se em dois grandes grupos operacionais e que so os seguintes :

Instrues de deciso

Simples deciso (IF.THEN.END_IF)

Dupla deciso (IFTHENELSEEND_IF)

Mltipla deciso (IFTHENELSIFELSIFEND_IF)

[asaTek / J.Andril] 46
BRESIMAR AUTOMAO Capitulo III

Instrues de seleo

Multiseleo (CASEOF0:1:n:ELSEEND_CASE)

Instrues de loop

Loop com n ciclos fixos e controlo inicial (FORTOBYDOEND_FOR)

Loop com n ciclos varivel e controlo inicial (WHILEDOEND_WHILE)

[asaTek / J.Andril] 47
BRESIMAR AUTOMAO Capitulo III

Loop com n ciclos varivel e controlo final (REPEATUNTILEND_REPEAT)

Como exemplo, de um programa feito em estruturado (ST), temos o caso apresentado na figura seguinte.

[asaTek / J.Andril] 48
BRESIMAR AUTOMAO Capitulo III

III-2 Execuo de um projeto para TwinCAT PLC v3.1

Neste capitulo, de uma maneira simples e concisa, iremos descrever os passos necessrios para a execuo de um
pequeno projeto a correr no TwinCAT PLC v3.1.

III-2.1 Execuo do programa

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 boto
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 AUTOMAO 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 Funo Bloco (FB) com o nome FB_Flash e em linguagem
estruturada (ST). Neste novo FB iremos, em primeiro lugar, declarar as variveis de entrada (VAR_INPUT), as
variveis de sada (VAR_OUTPUT) e as variveis 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 funo F2 para escolher as instancias ou as variveis.

[asaTek / J.Andril] 50
BRESIMAR AUTOMAO Capitulo III

O programa a escrever em estruturado (ST), na Funo Bloco (FB), dever ser o seguinte:

Para que este FB de nome FB_Flash corra necessrio, 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 funo F2 e escolha, na pasta Instance Calls, a
instancia FB_Flash1 e clique em OK.

Parametrize as entradas da instancia (indicadas pelo smbolo := ) e as sadas (indicadas pelo smbolo => ).

De seguida coloque uma instruo de deciso dupla IFELSEEND_IF.

[asaTek / J.Andril] 51
BRESIMAR AUTOMAO Capitulo III

Uma vez o programa concludo daremos inicio sua compilao (build). Clique , com a tecla direita do rato, em
cima do icon SampleProject Project e escolha o comando Build.

Aps a compilao, sem erros, ser apresentada na janela Output o seguinte relatrio.

III-2.2 Ativao do programa

Aps a concluso da compilao do projeto teremos de ativar a configurao 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 comear 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)

Em modo online podemos monitorizar o programa a correr.

[asaTek / J.Andril] 52
BRESIMAR AUTOMAO Capitulo III

possvel modificar o tempo de pisca pisca em online. Por exemplo colocar 1s (T#1s) em vez de 3s.

Para efetuar esta alterao dever dar ordem de escrita clicando, na barra de comandos, no seguinte icon :

III-2.3 Debugging do programa


Por vezes necessrio fazer o debugging (deteo de erros na programao) do algoritmo do programa. O editor
de programa TwinCAT 3.1 fornece ferramentas para depurar falhas de algoritmo.

III-2.3.1 Pontos de paragem (Breakpoint)


A ferramenta mais utilizada o comando de breakpoint. Este comando vai permitir que o programa corra s at
linha onde foi colocado. Para criar um breakpoint clique na linha pretendida e de seguida na tecla funo F9. Ir
surgir nessa linha, com o fundo amarelo, um sinal vermelho (lado esquerdo da linha).

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 funo F9. O sinal vermelho, colocado do lado esquerdo, desaparece permanecendo s o fundo amarelo.

De seguida acione o comando de Start (F5) e o programa correr sem paragens.

[asaTek / J.Andril] 53
BRESIMAR AUTOMAO Capitulo III

III-2.3.2 Monitorizao do fluxo de cdigo (Flow Control)


Outra tcnica utilizada para depurar erros de algoritmo usar o comando de controlo de fluxo (flow control) de
cdigo. Permite-nos, de uma maneira colorida (cor verde), visualizar as partes de cdigo que se encontram ativas.

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 esto ativas no programa, so assinaladas com uma cor de fundo
verde. As restantes com a cor de fundo branco. Assim, mais facilmente sabemos qual das linhas de cdigo 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).

III-2.3.3 Monitorizao de multivariveis (Watch 1 4)


Por vezes necessitamos visualizar simultaneamente diversas variveis colocadas em blocos de programas separados.
Nesta situao podemos utilizar as janelas de Watch 1, Watch 2, Watch 3 ou Watch 4.

Na barra de menus selecione no comando PLC / Windows. Tem disponveis 4 opes de janelas de visualizao.

Clique em uma delas.

[asaTek / J.Andril] 54
BRESIMAR AUTOMAO Capitulo III

Clique no campo da coluna Expression.

Escolha as variveis que pretende visualizar em online. Poder usar o Input Assistant

ou poder escrever manualmente a varivel pretendida.

Podemos monitorizar e alterar, em online, as duas variveis na Watch 1.

[asaTek / J.Andril] 55
BRESIMAR AUTOMAO Capitulo III

[asaTek / J.Andril] 56
BRESIMAR AUTOMAO Capitulo IV

IV TwinCAT 3.1 - HMI


Viso geral da aplicao TwinCAT 3.1 HMI
Na verso 2 do TwinCAT, o editor de Interface Homem Mquina
designado por Visualization e est integrado no editor de programa
TwinCAT PLC Control. Na nova verso 3 do TwinCAT esta aplicao
encontra-se na pasta PLC e dentro da subpasta designada por VISUs.

Os diversos ecrs de visualizao, que pretendemos ter para


monitorizar ou manobrar o automatismo, sero criados e colocados
dentro da subpasta VISUs. Estes ecrs podero ser chamados
automaticamente atravs de ordens vindas do programa residente
no softPLC ou atravs de ordens do operador.

possvel utilizar estes ecrs como uma HMI (Human Machine


Interface) stand-alone. Isto significa, caso tenhamos um ecr touch
ligado carta grfica do PCe-CX, que podemos visualizar todo o
automatismo como se tivssemos uma consola HMI. Neste caso no
necessitamos de ter o editor de projeto TwinCAT 3.1 (XAE) aberto.

Se a utilizarmos como ajuda programao e integrada na


plataforma de desenvolvimento TwinCAT 3.1 (XAE) poder utilizar
uma licena trial de 7 dias.

O TwinCAT 3.1 VISUs disponibiliza uma vasta gama de smbolos


grficos dinmicos. Estes smbolos podero ser utilizados na feitura
da HMI, no projeto de automao, no necessitando assim de
importar smbolos externos.

Nos captulos seguintes iremos, passo a passo, explicar o modo de programao de uma Interface Homem Mquina
(HMI) para visualizao de um processo integrado no TwinCAT softPLC 3.1.

IV-1 Programao do TwinCAT 3.1 HMI (Interface Homem Mquina)

IV-1.1 Criar um projeto de visualizao

Para criar um novo projeto de visualizao 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 AUTOMAO Capitulo IV

Atribua o nome Visualization a esse ecr de visualizao e depois clique em Open.

Nesta janela existe uma


opo de escolha com o
nome:

VisuSymbols (System)

Esta opo, caso seja


ativada, disponibiliza
uma livraria da Beckhoff
com uma vasta coleo
de smbolos.

Ser carregada no
gestor de livrarias, do
projeto, References
diversas livrarias de
smbolos e que so
visveis na Toolbox
graphics controls.

Aps executar o comando anterior surgir no editor de programa, na coluna do lado direito, uma subpasta designada
Toolbox. Nesta subpasta Toolbox esto guardados uma vasta lista de smbolos grficos.

IV-1.2 Desenho da visualizao


IV-1.2.1 Smbolos grficos para valores digitais
Neste capitulo comeamos por renomear o ecr Visualization com o nome Visu1. De seguida damos inicio ao
desenho de uma simples HMI com 2 smbolos grficos. Um boto e um sinalizador. Para podemos visualizar o seu
funcionamento teremos de escrever este pequeno programa no PLC.

[asaTek / J.Andril] 58
BRESIMAR AUTOMAO Capitulo IV

Aps a execuo do programa do PLC coloque no ecr de visualizao visu1 um boto e de seguida um sinalizador.
Selecione, na coluna esquerda Toolbox, na pasta Basic a subpasta de smbolos Lamps/Switches/Bitmaps.
Escolha os smbolos Dip switch e Lamp. Arraste-os para o ecr Visu1.

De seguida teremos de configurar cada um destes dois smbolos. Para isso teremos de recorrer a cada uma das
propriedades da Lamp e do Dip switch. Selecione com o rato o smbolo pretendido e verifique as suas
propriedades no submenu Properties.

Para conseguirmos que os smbolos do boto e do sinalizador tenham os seus estados dinmicos, teremos de atribuir
a cada um deles uma varivel do programa.

Teremos, no campo das propriedades Variable, escolher a varivel booleana input que foi atribuda ao boto do
tipo Dip switch e a varivel output atribuda ao sinalizador do tipo Lamp.

[asaTek / J.Andril] 59
BRESIMAR AUTOMAO Capitulo IV

Aps a configurao das propriedades dos dois objetos colocados na HMI visu1 compile o programa fazendo Build
Solution(no obrigatrio) 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 smbolo Dip switch o sinalizador dever mudar de cor como indicam as figuras seguintes:

Em edio Em funcionamento

IV-1.2.2 Smbolos grficos para valores analgicos


Neste passo iremos colocar na HMI um objeto analgico. Esse objeto ser escolhido na Toolbox (coluna do lado
direito do editor) na pasta de smbolos Measurement Controls o smbolo Meter. Arraste-o para o ecr Visu1.

Em edio

Para podemos visualizar o seu funcionamento teremos de


escrever um pequeno programa no PLC, com o seguinte
cdigo:

[asaTek / J.Andril] 60
BRESIMAR AUTOMAO Capitulo IV

De seguida teremos de configurar este smbolo analgico. Para isso teremos de selecionar com o rato o smbolo
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 varivel atribuda, no programa do PLC, a este smbolo analgico.

Aps a escolha da varivel daremos inicio configurao dos limites funcionais de escala do Meter. Dever na
propriedade Scale alterar 4 parmetros. Substitua os valores de defeito pelos seguintes:

Scale start = [0] 0 - Valor de incio de escala do instrumento (mnimo)

Scale end = [100] 1000 - Valor de fim de escala do instrumento (mximo)

Main scale = [20] 200 - Trao maior das divisrias da rgua de escala

Sub scale = [5] 50 - Trao menor das divisrias da rgua de escala

Em funcionamento

Coloque, em cada umas das propriedades, os valores apresentados na figura anterior. Aps essa configurao
descarregue o programa para o PLC clicando em Login Run.

Na HMI poder verificar, em online, a variao da varivel MAIN.a do programa do PLC. A variao desse valor
analgico, no smbolo Meter, faz-se dentro da escala de 0.0 at 1000.0.

[asaTek / J.Andril] 61
BRESIMAR AUTOMAO Capitulo IV

IV-1.2.3 Smbolos grficos para carateres


Neste passo iremos colocar na HMI um objeto que possa visualizar carateres de qualquer formato (chineses,
arbicos, etc). Para podemos visualizar o seu funcionamento iremos escrever o seguinte programa no PLC.

No programa foi declarada a varivel 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
smbolos Basic escolher o smbolo Rectangle. Arraste-o para o ecr Visu1.

Em cima do retngulo ser colocada uma etiqueta informativa. Na pasta Common Controls, da Toolbox,
escolhemos o smbolo Label. Arrastamos para cima do retngulo colocado na visualizao visu1.
De seguida teremos de configurar o objeto Rectangle colocado na visualizao. 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 variveis j declaradas no seu programa do PLC. Escolha
a varivel MAIN.arr1 do tipo wstring.

Como pretendemos que o objeto Rectangle seja sensvel ao toque do rato, quando o colocamos em cima dele,
ser necessrio configurar a propriedade Inputconfiguration / OnMouseDown. Selecione e coloque a ao
Write a Variable.

[asaTek / J.Andril] 62
BRESIMAR AUTOMAO Capitulo IV

Uma vez selecionada a ao Write a variable escolha a opo Use another variable e clique em

Escolha, na janela pop-up que surgir, a varivel do tipo wstring arr1 e termine com OK.

A seguir teremos de configurar a etiqueta Label colocada em cima do retngulo. Clique nesse smbolo. Nas suas
propriedades Texts/Text escreva string. Outra opo escrever, na janela em branco do smbolo, Label

Depois de efetuadas todas as configuraes das propriedades dos objetos descarregue o programa para o PLC
clicando em Login Run.

Estado inicial Clique no Input box

Nesta janela, como esta declarada uma varivel do tipo wstring, aceita a escrita de carateres no nacionais tais como
carateres em chins, rabe, etc.

[asaTek / J.Andril] 63
BRESIMAR AUTOMAO Capitulo IV

IV-1.2.4 Comando de mudana de ecrs


Na maioria dos projetos de visualizao (HMI) no temos s um ecr de visualizao, mas sim diversos. Por isso
necessrio colocar comandos, nessas visualizaes, que nos permita saltar entre ecrs. Neste capitulo iremos
explicar o procedimento para concretizar essa tarefa. De seguida iremos criar um novo ecr com o nome visu2. Na
pasta VISUs com o comando Add/Visualization atribua o nome visu2 e clique em Open.

Uma vez criado o novo ecr coloque um boto 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 visualizao.

Selecione com o rato o smbolo grfico Button. Altere as propriedades Texts/Text escrevendo Go to viso2.
Este texto, colocado no boto, informativo para os operadores da HMI.

De seguida iremos configurar a ao a efetuar por este boto. Neste caso pretendemos saltar para o ecr visu1.
Clique na propriedade Inputconfiguration e escolha a ao OnMouseClick na janela Configure.

Dever surgir uma janela pop-up para selecionarmos a ao pretendida para o boto anterior. Selecione a ao
Change shown Visualization e coloque-a na coluna esquerda dessa janela pop-up.

[asaTek / J.Andril] 64
BRESIMAR AUTOMAO Capitulo IV

Uma vez selecionada a ao Change shown Visualization escolha a opo Assign e clique em

Selecione a visualizao visu1 e cilque em OK. O mesmo passo ter de efetuar, no ecr de visualizao visu1,
de maneira a poder saltar para a visualizao visu2. O boto de comando de salto igual ao colocado e explicado
no ecr visu2.

Depois de efetuadas todas as configuraes das propriedades dos botes de comando, de salto de ecrs,
descarregue o programa para o PLC clicando em Login Run. Clique no boto de comando Go to visu2 e o
ecr seguinte dever surgir no PC.

Se clicar, no ecr visu2, no boto de comando Go to visu1 voltar para o ecr anterior.

[asaTek / J.Andril] 65
BRESIMAR AUTOMAO Capitulo IV

IV-1.2.5 Display de lista de texto dinmico


Neste capitulo iremos explicar como colocar num ecr de visualizao de uma HMI uma janela que nos permita ver
texto em modo dinmico. Utiliza-se estes objetos dinmicos para indicar o estado de funcionamento da mquina ou
mostrar alarmes de um processo.
Para podemos demonstrar o seu funcionamento iremos escrever o seguinte programa no PLC. No programa foi
declarada uma varivel iVar1 com o dado INT de 0.

De seguida iremos criar uma lista de texto com os erros de processo que pretendemos reportar na HMI. Clique na
pasta VISUs, 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).

Aps a construo da base de dados, com uma lista de erros, teremos de criar um display que mostre em dinmico
o estado ou o erro que a mquina apresenta. Para isso teremos de acrescentar, no ecr visu2, um smbolo grfico
do tipo retngulo. Clique na Toolbox em Basic / Rectangle.
[asaTek / J.Andril] 66
BRESIMAR AUTOMAO Capitulo IV

Aps a colocao do smbolo grfico, do tipo retngulo, clique na Properties desse objeto grfico 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 variveis declaradas no programa do PLC. Escolha a varivel INT com o nome
iVar1. De seguida clique em OK.

Caso pretendamos alterar na HMI a varivel INT iVar1, para assim visualizarmos a lista de erros, podemos colocar
no ecr um comando grfico 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 grfico e configure a propriedade Position / Variable com a varivel MAIN.iVar1.
De seguida clique em OK.

[asaTek / J.Andril] 67
BRESIMAR AUTOMAO Capitulo IV

Depois de efetuadas todas as configuraes das propriedades dos objetos grficos, colocados anteriormente,
descarregue o programa para o PLC clicando em Login Run.

No ecr visu2 clique no smbolo de controlo SpinControl que mostra o n inteiro 0 e altere para 2.
Imediatamente o texto, apresentado no display de texto em cima, altera.

IV-1.2.6 Comando multilingue


Cada vez mais os fabricantes de mquinas industriais exportam as suas mquinas e sistemas para diversos
continentes e pases. Por essa razo h necessidade que as HMIs se apresentem no idioma do utilizador final. Existe
a possibilidade de criar uma base de dados (lista de texto) com a traduo multilingue de todas as frases e palavras
usadas na HMI.
Nesta capitulo iremos explicar como se processa essa configurao. Iremos comear pela criao da lista de texto
com os idiomas que pretendemos utilizar na nossa HMI. Na pasta VISUs selecione GlobalTextList

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 AUTOMAO Capitulo IV

Escreva Chinese na janela do Choose language e clique em OK.

De imediato surgir uma nova coluna, do lado direito da janela, com o titulo de Chinese.

De seguida crie uma nova coluna English seguindo os procedimentos anteriores.

Este procedimento tambm 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 lnguas. Usaremos icons com os smbolos das bandeiras da China e a da UK. Para executar
esta operao vamos clicar na pasta VISUs e escolher a funo Image Pool.

[asaTek / J.Andril] 69
BRESIMAR AUTOMAO Capitulo IV

Surgir uma janela pop-up, aps clicar na funo 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 Chins e o Ingls. possvel escolher diversos tipos de formato de imagem, como mostra a figura seguinte.

Aps a escolha das respetivas imagens clique em OK.

Aps a execuo das tarefas anteriores estamos prontos a colocar, no ecr visu1, dois smbolos que permitam ao
operador escolher o idioma com que pretende trabalhar.

[asaTek / J.Andril] 70
BRESIMAR AUTOMAO Capitulo IV

Na coluna do lado direito Toolbox selecione, na pasta Basic, o smbolo Image. Arraste-o para o ecr visu1.

Ao efetuarmos o arrasto do smbolo 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 AUTOMAO Capitulo IV

Aps colocarmos as duas imagens, como mostra o ecr anterior, devemos dar inicio configurao destes dois
objetos de maneira a ficarem ativos ao toque do rato. Isto , quando pretendermos alterar a lngua apresentada na
HMI devemos clicar no smbolo com a bandeira da China ou da UK.

Clique na imagem da bandeira da China e de seguida na propriedade Inputconfiguration/OnMouseDown. Clique


na janela que diz Configure e escolha Change the language. Depois escolha em Language: Chinese.

O mesmo procedimento ter de efetuar para a seleo da lngua English.

Depois de efetuadas todas as configuraes das propriedades dos objetos grficos, colocados anteriormente,
descarregue o programa para o PLC clicando em Login Run.

[asaTek / J.Andril] 72
BRESIMAR AUTOMAO Capitulo IV

IV-2 TwinCAT 3.1 HMI em stand-alone

At este capitulo explicmos o modo de colocar e parametrizar diversos smbolos numa HMI e que se encontram
disponveis na Toolbox. Uma vez completada a Interface Homem Mquina seria importante que a nossa Interface
fosse visvel num ecr em full-screen e em modo Run. Esta soluo ir permitir substituir uma possvel consola
grfica, diminuindo assim os custos da automao. Utilizaremos a HMI desenvolvida na plataforma do TwinCAT 3.1
(XAE) em modo stand-alone.

IV-2.1 TwinCAT 3.1 HMI em sistemas operativos Windows XP e 7

Nos casos de mquinas 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 automtico, quando a mquina inicializa, teremos de recorrer pasta Visualization
Manager. Clique nessa pasta.

De seguida clique em Add/TargetVisualization e na janela pop-up termine com o comando Open.

Escolha qual o ecr (Start screen) que pretende quando a mquina 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 AUTOMAO Capitulo IV

Como se pretende que sejam visveis os carateres chineses necessrio ativar a propriedade Unicode. Clique duas
vezes na pasta Visualization Manager e coloque um visto em Use Unicode strings.

Como a aplicao HMI runtime, a correr em IPC ou EPC-CX com o TwinCAT PLC 3.1, no gratuita teremos de
comprar e ativar uma licena. Caso pretenda s utilizar como demonstrao poder gerar uma licena de 7 dias.

Depois de efetuadas as configuraes anteriores ative as configuraes clicando no icon Active configuration. De
seguida descarregue o programa para o PLC clicando em Login Run.

Selecione a pasta C:\TwinCAT\3.1\Components\Plc\Tc3PlcHmi existente no IPC. Clique duas vezes no ficheiro


TcPlcHmi.ini. Este ficheiro contem as configuraes de inicializao da HMI construda anteriormente.

Contem a seguinte informao:


AmsNetID : Endereo AMS do equipamento em que
correr a HMI (127.0.0.1.1.1)
AmsPort : Porta do softPLC (851)
StartVisualization : Ecr de inicializao (start-up)
UpdateRate(ms) : Tempo de update dos dados

De seguida, caso queira correr a HMI em modo stand-alone e no integrada no editor TwinCAT 3.1 (XAE) clique no
ficheiro Tc3PlcHmi.exe. No poder estar aberto, em simultneo, o editor TC 3.1(XAE) (s possvel um cliente).

[asaTek / J.Andril] 74
BRESIMAR AUTOMAO Capitulo IV

A boa visualizao da HMI do TwinCAT 3.1 est dependente do monitor e da sua resoluo com que pretendemos
trabalhar. Por isso, muitas vezes, temos de configurar o ecr para a resoluo mais adequada.

Para executar esta configurao 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
opo Specified.

Se pretendermos sair da HMI, em modo full-screen, pressione em Alt+F4.

IV-2.1.1 Configurao do boot do TwinCAT 3.1 HMI (XP e Win 7)


Para que a HMI seja inicializada automaticamente, em full-screen, quando do arranque do IPC ou EPC necessrio
criar um atalho do ficheiro executvel da HMI - Tc3PlcHmi.exe ( C:\ TwinCAT\ 3.1\ Components\ Plc\ Tc3PlcHmi\ )

e coloca-lo na pasta C:\ TwinCAT\ 3.1\ Target\ Startup\.

IV-2.2 TwinCAT 3.1 HMI em sistemas operativos Windows CE

Nos casos de mquinas EPCs-CX em que temos instalados sistemas operativos Windows CE teremos de efetuar os
mesmos procedimentos feitos para mquinas 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 AUTOMAO Capitulo IV

Clique duas vezes no ficheiro executvel Tc3PlcHmiCe7x86.exe, que se encontra no diretrio \Hard Disk\ TwinCAT\
3.1\ Components\ Plc\ Tc3PlcHmi, para abrir a HMI em modo full-screen.

IV-2.2.1 Problemas com o TwinCAT 3.1 HMI em full-screen com Windows CE


O sistema operativo Windows CE um sistema operativo que no tem as caractersticas operacionais dos sistemas
mais evoludos e robustos como o Windows XP, 7 ou posteriores. Consideramos um sistema operativo ligth e por
isso algumas vezes encontramos dificuldades funcionais quando utilizamos a HMI a correr em full-screen. De seguida
so apresentados alguns dos problemas que podero surgir.

1 - Ecrs da HMI aparecem incompletos

Ecr com falta de figuras Ecr completo

Para corrigir este defeito dever selecionar na HMI, para ambientes WinCE, em Selected style a
opo Default, 3.0.0.0 (Beckhoff Automation GmbH).

[asaTek / J.Andril] 76
BRESIMAR AUTOMAO Capitulo IV

2 - Ecrs da HMI que no suportam cores em gradient


Nas HMI em ambientes WinCE os smbolos de controlo no suportam Gradiant color ,
Transparancy, nem Optimized drawing. Sero apresentados em formato normal.

3 Ecrs com imagens em formato .jpg


Se numa HMI, a correr numa mquina com WinCE, no apareem imagens em formato .jpg deve-se
a que os sistemas operativos WinCE no suportam este formato. Recomenda-se a substituio
dessas imagens pelo formato .bmp. A pasta de projeto com as imagens a Image Pool/Image.

Ecr com imagem em .JPG Ecr com imagem em .BMP

4 Ecrs no apresentam os carateres chineses


Se uma HMI, a correr numa mquina com WinCE, no consegue apresentar texto com carateres
chineses deve-se a que os SOs WinCE no tem instalado a respetiva fonte de carateres.

Dever instalar essa fonte de carateres, em falta, no diretrio \Hard Disk\ do seu PC embedded com
o Sistema Operativo WinCE.

[asaTek / J.Andril] 77
BRESIMAR AUTOMAO Capitulo IV

Crie um diretrio com o nome de Fonts em Hard Disk\System.

Copie as novas fontes de carateres para esse novo diretrio.

De seguida registe, no sistema operativo, as novas fontes. Para isso clique duas vezes no ficheiro
de registry e de seguida Yes.

Faa o restart do sistema operativo clicando em Yes.

Aps este procedimento devero aparecer os carateres chineses, em falta.

[asaTek / J.Andril] 78
BRESIMAR AUTOMAO Capitulo IV

IV-2.2.2 Configurao do boot do TwinCAT 3.1 HMI (Win CE)


Para que a HMI seja inicializada automaticamente em full-screen quando do arranque do EPC, com um sistema
operativo Windows CE, necessrio criar um ficheiro de start-up. Para isso dever seguir os passos que explicarei
nos passos seguintes.

Abra a aplicao Startup Manager que se encontra no boto Start/StartMan. Clique em OK.

Na janela pop-up, que aparece, clique em New. De seguida, na janela Add Item, adicione o comando
ShellCommand.

No coloque o nome em Name. Clique em OK.

[asaTek / J.Andril] 79
BRESIMAR AUTOMAO Capitulo IV

Na janela pop-up Edit Item e na subpasta General selecione, com um visto, no campo Startup Options as
opes Autostart e Start Focused. No 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 ao de tipo Shell Command.

[asaTek / J.Andril] 80
BRESIMAR AUTOMAO Capitulo IV

Clique, nessa janela pop-up, em Save para salvar as configuraes anteriores e reiniciar o sistema.

Se no processo de reboot do sistema operativo surgir um erro, o sistema no o conseguiu arrancar com as
configuraes anteriormente feitas. Ser apresentada uma janela de aviso.

Verifique se no colocou um tempo de delay de 0ms ou o valor introduzido baixo. Aumente esse tempo de delay.

IV-3 Gesto do acesso funcional ao TwinCAT 3.1 HMI

Neste capitulo daremos uma explicao breve como podemos gerir o acesso funcional HMI em run-time ou a certos
ecrs de visualizao. A gesto de login permite definir nveis de controlo e de permisses 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 nveis de acesso e permisses. Clique em Create
user management with default groups and users. Uma vez criado esta configurao verificamos que foram criados,
por defeito, 3 grupos: Admin; Service e Operator.

[asaTek / J.Andril] 81
BRESIMAR AUTOMAO Capitulo IV

Clique na subpasta Users e verificar que tambm 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 funo
de Login e outra com a funo Logout.

Em ambos smbolos Button selecione a propriedade Inputconfiguration/OnMouseClick.

[asaTek / J.Andril] 82
BRESIMAR AUTOMAO Capitulo IV

Configure os botes, na funo User Management, com a ao de Login e outro com a de Logout.

Podemos configurar diferentes controlos para diferentes permisses 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 opes pretendidas, como mostra a figura
seguinte.

No caso de restringir o acesso, seleo 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
smbolos, com as bandeiras da China e da UK, no ficam visveis aos utilizadores destes dois grupos.

[asaTek / J.Andril] 83
BRESIMAR AUTOMAO Capitulo IV

Aps as configuraes efetuadas anteriormente compile o programa e ponha a aplicao a correr. Verificar que
os smbolos de escolha do idioma no se encontram visveis na HMI.

O comando do tipo Dip switch tambm ser inibido operao. Para isso dever fazer as mesmas parametrizaes,
como efetuadas anteriormente, com os smbolos grficos 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 smbolos grficos, com as bandeiras
da China e UK, ficam visveis.

[asaTek / J.Andril] 84
BRESIMAR AUTOMAO Capitulo IV

IV-4 TwinCAT 3.1 HMI em plataforma web

Cada vez mais as plataformas de HMI esto a migrar de aplicaes informticas residentes em IPC ou EPC para
servidores web. Esta a tendncia atual devido grande capacidade de processamento dos controladores e da
memria disponvel, permitindo assim a instalao de servidores web.

O TwinCAT 3 permite reconfigurar toda Interface Homem Mquina para o formato web. Para isso ser possvel
necessrio a instalao, nas verses superiores ao TwinCAT 3.1.4018.13, de um novo pacote plug-in designado por
HMI-Web com a referencia TF1810-PLC-HMI-Web.

IV-4.1 TwinCAT 3.1 HMI Web em redes LAN

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 edio TwinCAT 3.1 (XAE). O Controlador baseado no IPC
ou EPC ter o endereo IP 192.168.1.100 e a gateway o 192.168.1.1 como mostra a figura seguinte.

O endereo 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 endereo 192.168.1.123 como mostra a figura seguinte.

[asaTek / J.Andril] 85
BRESIMAR AUTOMAO 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 boto de comando Choose target. Faa 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 gesto das visualizaes Visualization Manager e adicionar a funo
WebVisualization.

De seguida dever registar a sua configurao , descarregar o projeto para o controlador EPC-CX e por

fim ponha a correr o programa .

Depois de finalizado com sucesso, o processo anterior, poder fechar e sair do editor de programa TwinCAT-XAE.
Abra o browser que tenha disponvel no seu PC. Coloque na janela do browser o seguinte caminho:

Http: // (IP do controlador remoto) /Tc3PlcHmiWeb/port_851/visu/webvisu.htm

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, atravs de um simples browser
instalado no PC, sem necessidade de termos o TwinCAT 3.1.

[asaTek / J.Andril] 86
BRESIMAR AUTOMAO Capitulo IV

IV-4.2 TwinCAT 3.1 HMI Web em redes Wireless

Uma segunda via de acesso ao controlador pode ser, em vez de rede Ethernet fsica LAN, a utilizao de
comunicaes wireless em equipamentos moveis tais como PC portteis, tablets ou smartphones. Neste capitulo
explico os procedimentos de configurao necessrios para concretizarmos essas comunicaes.

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 mvel (PC porttil, tablet ou smartphone) entre na rede wireless disponvel (ex. TP-LINK).
Caso tenha uma password ou chave de encriptao 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).

Utilize o browser colocando na janela o caminho seguinte :

Http: //192.168.1.100 /Tc3PlcHmiWeb/port_851/visu/webvisu.htm

Surgir no browser do seu equipamento mvel (PC porttil, 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 AUTOMAO Capitulo IV

[asaTek / J.Andril] 88
BRESIMAR AUTOMAO Capitulo V

V TwinCAT 3.1 - Gesto de Livrarias


Viso geral da gesto de livrarias no TwinCAT 3.1
A gesto de livrarias na verso 3 do TwinCAT diferente da verso
anterior 2. A gesto feita de uma maneira mais elaborada, sofisticada
e segura.

A organizao das livrarias baseada nos seguintes itens de informao:

References - Designa a pasta, no projeto, que contem todos os


contentores (placeholder) das livrarias que necessitamos.

Version - Indica a verso da livraria existente.

Company - Nome da empresa que a criou.

Placeholder - Nome do placeholder em que se encontram todas os


POUs, GVLs,VISUs da livraria. Dentro do placeholder podemos ter
tambm verses anteriores da livraria.

Namespace - Nome do atributo reservado livraria. Com este atributo


podemos ter FBs ou FUNs, como o mesmo nome, em diversas livrarias.
Para selecionar cada uma delas necessitamos atribuir o Namespace.

Install - Todas as livrarias necessrias ao projeto PLC tero de ser


instaladas na Library repository. No TwinCAT v2 bastava fazer copy e
paste.

V-1 Gesto da biblioteca de livrarias

Em todos os projetos obrigatoriamente utilizamos livrarias. Estas livrarias encontram-se na pasta References. As
livrarias que so sempre carregadas automaticamente em um novo projeto so a Tc2_Standard, a Tc2_System
e a Tc3_Module. Alem destas temos nossa disposio, no Library repository, uma vasta gama de livrarias criadas
pela Beckhoff e por outras empresas. Nem todas as livrarias disponveis so 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 : Localizao do repositrio de livrarias (caminho/path)
Set to Effective Version : Mostra a verso usada, no projeto, dos placeholders das livrarias
Set to Always Newest Version : Mostra a verso mais recente dos placeholders das livrarias

[asaTek / J.Andril] 89
BRESIMAR AUTOMAO Capitulo V

Com o comando Add library conseguimos visualizar todas as livrarias nossa disposio 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 tambm
podemos ter outras empresas.

Se selecionarmos a opo Display all versions (for experts only), com um visto, conseguimos visualizar todas as
verses instaladas no placeholder da livraria do nosso PC.

[asaTek / J.Andril] 90
BRESIMAR AUTOMAO Capitulo V

Clique no comando Details para ver todo o contedo da livraria.

Tambm poder adicionar a livraria atravs do seu placeholder. Clique na subpasta Placeholder.

Podemos tambm fazer a seleo sem ser por grupo. Opo Group by category no ativo.

[asaTek / J.Andril] 91
BRESIMAR AUTOMAO Capitulo V

A outra opo de escolher a livraria pretendida para o projeto , na janela de cima, escrever a o nome da livraria.
medida que se escreve a designao 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. Aps a
seleo feita clique em OK.

Verifique e confirme, se na pasta do projeto References, se encontra a livraria selecionada anteriormente.

[asaTek / J.Andril] 92
BRESIMAR AUTOMAO Capitulo V

Todas as livrarias disponveis encontram-se na pasta Managed Libraries :

C: \ TwinCAT \ 3.1 \ Componets \ Plc \ Managed Libraries

IV-2 Criao de livrarias prprias


No decorrer de diversos projetos natural que repitamos diversos automatismos e processos. Como boa politica de
gesto de recursos e de tempo convm criar livrarias prprias pertencentes nossa empresa. Este processo pode
ser efetuado tambm no TwinCAT 3.1. Neste capitulo iremos explicar como proceder criao dessas livrarias.

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 AUTOMAO Capitulo V

Surgir uma janela pop-up em que dever introduzir dados com informao da livraria que pretende criar. Dever
preencher no formulrio, obrigatoriamente, as janelas que tem o titulo em black bold . Esses campos so o nome
da empresa que criou a livraria (Company), o titulo da livraria (Title) e a verso ex. 1.0 ou 1.0.0 (Version).
Tambm poder designar o Default namespace, o Placeholder, o Author e a Description. Se quiser deixar
em branco poder faze-lo.

Aps 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 opes que permitem salvar a livraria : Save library
e Save as library and install.

O comando Save as library simplesmente guarda a livraria mas no a instala no repositrio geral das livrarias
Library repositor. As livrarias podero ser guardadas com duas diferentes extenses. Uma tem a extenso
.library em que podemos visualizar o programa fonte e a outra tem a extenso .compiled-library em que no
possvel visualizar o programa fonte (source code).

[asaTek / J.Andril] 94
BRESIMAR AUTOMAO Capitulo V

Uma vez guardada a livraria podemos passar estes ficheiros a colegas de projeto ou fornecer a outras empresas ou
clientes. Essas entidades tero de a instalar no editor de projeto TwinCAT 3.1 (XAE).

Os passos da instalao so os seguintes :

Na pasta References clique, com a tecla direita do rato, no comando Library repository.

De seguida clique Install

Selecione a livraria que criou e clique em Open.

[asaTek / J.Andril] 95
BRESIMAR AUTOMAO Capitulo V

Se a instalao da livraria for bem-sucedida dever surgir na pasta das livrarias (Miscellaneous) a sua nova livraria,
como mostra a figura seguinte.

Tambm podemos confirmar a sua instalao, usando o Explorador de ficheiros do sistema operativo, no caminho
C: \ TwinCAT \ 3.1 \ Componets \ Plc \ Managed Libraries. Verifique a sua presena.

Em caso de pretender desinstalar uma livraria possvel usando o comando Uninstall.

[asaTek / J.Andril] 96
BRESIMAR AUTOMAO Capitulo V

Outra alternativa instalao 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 automao TwinCAT 3.1 (XAE).

Como nota final deste capitulo, informo que possvel atribuir nomes iguais a POUs e que pertencem a livrarias
diferentes. A seleo desses POUs (FBs ou FUNs), no programa, feita pelo namespace como mostra a figura
seguinte.

[asaTek / J.Andril] 97
BRESIMAR AUTOMAO Capitulo V

[asaTek / J.Andril] 98
BRESIMAR AUTOMAO Capitulo VI

VI TwinCAT 3.1 Gesto dos programas de projeto


Viso geral da gesto dos programas de projeto no TwinCAT 3.1
Todos os projetos descarregados (download) no PLC podero ser recuperados e guardados no nosso PC. Esse
processo, designado por upload do programa, s possvel se aps o descarregar do programa para o softPLC
executarmos alguns procedimentos. Na verso 2 do TwinCAT tinha a designao de sourcecode download.

Este capitulo aborda os procedimentos necessrios 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 gesto de compatibilidade de verses.

VI-1 Gerir programas de configurao, arranque e de upload

Para conseguirmos executar o upload de um programa residente no softPLC TwinCAT 3.1 necessrio e obrigatrio
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 possveis copias, por terceiros, no coloque o visto em
Project Sources. Assim ningum conseguir fazer o upload do programa residente no softPLC. Esta operao era
designada no TwinCAT v2 por Sourcecode download.

Quando executamos o comando Activate Configuration, com a opo Project Sources, ir ativar/registar a
configurao do hardware no sistema e criar o ficheiro que permitir o upload do programa.

Uma vez completada a operao anterior poder encontrar, na pasta Boot do seu IPC ou EPC-CX, uma subpasta
com o nome CurrentConfig e um ficheiro com extenso *.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 AUTOMAO Capitulo VI

Um procedimento, tambm muito importante, que ter de ser sempre efetuado a inicializao automtica do
programa do automatismo residente no softPLC TwinCAT 3.1. Para isso ter de parametrizar a opo Autostart
Boot Project, como mostra a figura seguinte.

Destaco e relembro os comandos que existem e que tero de ser ativados, aps a finalizao do projeto de
automao. 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 configurao descarregada para o softPLC target quando se fizer Activate
Configuration.

Aps a execuo 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 seleo 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.

[asaTek / J.Andril] 100


BRESIMAR AUTOMAO Capitulo VI

VI-2 Guardar cdigo fonte dos projetos

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 so criadas diversas pastas em que contem
todos os ficheiros e cdigo do projeto.

Muitas vezes quando abrimos este projeto, em outro PC, com uma verso 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.

VI-2.1 Guardar projetos completos

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).

[asaTek / J.Andril] 101


BRESIMAR AUTOMAO Capitulo VI

Aps 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.

[asaTek / J.Andril] 102


BRESIMAR AUTOMAO Capitulo VI

VI-2.2 Guardar projetos do PLC

Para conseguirmos guardar projetos, do softPLC TwinCAT 3.1, que sejam facilmente abertos em outros PCs 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.

[asaTek / J.Andril] 103


BRESIMAR AUTOMAO Capitulo VI

Na janela pop-up selecione a pasta onde foi guardado o projeto PLC. De seguida clique em Open (Abrir).

VI-2.3 Guardar POUs (PRGs, FBs, FUNs, VISUs, GVLs)

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 idntico 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.

[asaTek / J.Andril] 104


BRESIMAR AUTOMAO Capitulo VI

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 esto selecionados. Clique de seguida em OK.

[asaTek / J.Andril] 105


BRESIMAR AUTOMAO Capitulo VI

VI-2.4 Guardar programas de SAFETY

Para conseguirmos guardar programas de segurana mquina SAFETY, que podero 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).

[asaTek / J.Andril] 106


BRESIMAR AUTOMAO Capitulo VI

VI-2.5 Guardar programas de C++

Para conseguirmos guardar os programas desenvolvidos em linguagem de alto nvel 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.

[asaTek / J.Andril] 107


BRESIMAR AUTOMAO Capitulo VI

VI-2.6 Guardar configurao de IOs

Para conseguirmos guardar a configurao de IOs, 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.

[asaTek / J.Andril] 108


BRESIMAR AUTOMAO Capitulo VI

IV-3 Gesto de verses de projeto


O grande problema atualmente a evoluo rpida do software, surgindo novas verses. Isto provoca, por vezes,
incompatibilidades entre verses devido a serem acrescentadas novas funes e que podero ser incompatveis com
verses anteriores.

A partir da verso 4020 do TwinCAT 3.1 notou-se um incremento de novas funes e que so incompatveis com as
verses anteriores. Para evitar este problema, a partir da verso 4020 do TC 3.1, a instalao de novas verses
feita criando pastas paralelas. Assim tendo estas diferentes atualizaes e verses, instaladas em pastas do mesmo
PC, conseguimos facilmente comutar de uma verso para a outra. Evita-se assim a dificuldade, por no possuirmos
a verso correta, de abertura de projetos j feitos.

NOTA: A instalao de uma verso do TwinCAT 3.1 Remote Manager no apaga outras verses.

Para evitar erros e incompatibilidades de verses de desenvolvimento e de runtime convm termos as verses
antigas de desenvolvimento. Correntemente existem duas verses de Engineering Remote Manager no site da
Beckhoff .

De seguida mostro os procedimentos necessrios para comutar de verso se tivermos alguma incompatibilidade da
verso de runtime, a correr num PC target, com a verso do editor de programa TwinCAT 3.1.

Se no PC tivermos mais do que uma verso instalada dever, atravs do Visual Studio, selecionar a opo 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 verso com
que pretende trabalhar. No exemplo da figura seguinte temos instaladas diversas verses RM e FULL.

[asaTek / J.Andril] 109


BRESIMAR AUTOMAO Capitulo VI

Assumindo, como exemplo, que temos um controlador target com uma verso de run-time TC3.1.4018.44 ns
devemos escolher a verso antiga Build 4018.44 no nosso editor de programa TwinCAT 3.1, baseado no Visual Studio.
Esta comutao fcil de se fazer, caso tenhamos a opo de switch de verses, no nosso PC.

Esta comutao s permitida fazer uma vez. Caso queiramos comutar para outra verso ter de fechar o Visual
Studio e voltar a abri-lo.

Para no termos diversas verses de desenvolvimento do TwinCAT 3.1 podemos fixar a verso de edio compatvel
com a verso do runtime com que estamos a trabalhar. Podemos assim fixar a verso configurando a seguinte
propriedade:

Uma vez a verso fixa, todas as vezes que abrirmos o editor de programa TwinCAT 3.1 (XAE) a funo RM comuta
automaticamente para a verso compatvel com o runtime.

Se o editor de programa TwinCAT 3.1 do seu PC for a ultima verso e no compatvel com a verso do runtime o
software lanar uma janela de aviso. Se desejar executar a comutao de verses clique em OK.

[asaTek / J.Andril] 110


BRESIMAR AUTOMAO Capitulo VII

VII TwinCAT 3.1 Converso de programas feitos em TwinCAT 2


Viso geral de como podemos converter programas feitos na verso 2 do TwinCAT
O TwinCAT 3.1 permite converter projetos feitos em TwinCAT 2. So os ficheiros, do TwinCAT 2, com a extenso *.tsm,
*.tpy, *, *.lib e *.pro que so utilizados no processo de converso no TwinCAT 3.1.

Este capitulo apresenta os diversos mtodos que podemos utilizar para converter projetos feitos em TwinCAT 2 para
TwinCAT 3.1.

1 Opo: Converter livrarias de um projeto de TwinCAT 2 (*.lib)


2 Opo: Converter projetos completos de TwinCAT 2 (*.tsm, *.pro e *.tpy)
3 Opo: Converter programas de um projeto de TwinCAT 2 (*.pro)

VI-1 Converso de livrarias de TwinCAT 2 (*.lib)

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.

[asaTek / J.Andril] 111


BRESIMAR AUTOMAO Capitulo VII

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).

Aps 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 formulrio, os campos Company, Title e Version. Poder tambm
preencher os campos Default namespace e Placeholder se o desejar (no obrigatrio).

[asaTek / J.Andril] 112


BRESIMAR AUTOMAO Capitulo VII

Aps o preenchimento do formulrio 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
repositrio 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 opo *.compiled-library a livraria guardada num ficheiro
compilado e encriptado. Isso significa que no ser possvel ver o cdigo fonte dos POUs existentes nessa livraria.

Clique na pasta References. De seguida, com a tecla direita do rato, clique no comando Add library.

Na janela Add Library../(Miscellaneous) verifique se existe a livraria anteriormente convertida.

[asaTek / J.Andril] 113


BRESIMAR AUTOMAO Capitulo VII

VII-2 Converso dos projetos completos de TwnCAT 2

Para podermos converter um projeto completo, anteriormente feito em TwinCAT v2, ter de se fazer algum trabalho
preparatrio. 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).

[asaTek / J.Andril] 114


BRESIMAR AUTOMAO Capitulo VII

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 no 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.

[asaTek / J.Andril] 115


BRESIMAR AUTOMAO Capitulo VII

Esta janela informa que no encontra 1 das livrarias (no nosso exemplo) e pergunta se podemos alterar o caminho
da sua localizao. Clique em Yes(Sim).

Selecione, na janela Libraries, o caminho da localizao das livrarias em falta usando o comando Select

A opo mais correta logo no incio da criao 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 fcil encontrar o caminho.

No nosso exemplo C:\users\andril\desktop\tc2program\Lib\ . Uma vez introduzido o caminho correto clique em


OK da janela Options.

O processo de reconverso ser iniciado com a apresentao de uma janela pop-up designada por Library
Reference Conversion. Nesta janela teremos de escolher qual a tarefa a executar.

Se selecionarmos a 1 opo Convert and install the libary as well a converso 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 no existe no seu editor de programa surgir uma janela pop-up com um formulrio, a ser
preenchido pelo programador, com o nome e verso da livraria e a empresa que a criou.

[asaTek / J.Andril] 116


BRESIMAR AUTOMAO Capitulo VII

A 2 opo 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 opo o boto 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.

Tambm se usa a 2 opo Use the following library that has already been installed : para converter
manualmente programas Standard j existentes no TwinCAT 2 . Clique no boto Browse.

[asaTek / J.Andril] 117


BRESIMAR AUTOMAO Capitulo VII

Selecione na pasta System a livraria standard Tc2_Standard .

Todas as livrarias esto referenciadas no Visual Studio. Para verificarmos essas referencias recorremos ao comando
TOOLS da barra superior (Options TwinCAT PLC Environment Libraries).

Aps os passos anteriores concretizados, com sucesso, a converso do projeto est concluda. Poder visualizar na
arvore do editor de programa do TwinCAT 3.1 todas as livrarias, linkagens e POUs.

[asaTek / J.Andril] 118


BRESIMAR AUTOMAO Capitulo VII

VII-3 Converso de programas de TwinCAT 2 (*.pro)


Se pretendermos converter somente programas (*.pro) do TwinCAT 2 o procedimento mais simples.

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.

Aps concretizao dos procedimentos anteriores a converso estar finalizada.

[asaTek / J.Andril] 119


BRESIMAR AUTOMAO Capitulo VII

NOTA: Em muitas converses quando efetuamos a compilao do novo projeto, convertido do TwinCAT 2, surgem
erros de compilao. Isso deve-se a que existem em algumas instrues do TC2 versus TC3 diferenas de sintaxe e
formatao. Com pequenas correes conseguimos eliminar esses erros.

Como exemplo temos:

No TwinCAT 2 a inicializao de um ARRAY no necessita de [ ]


Ex. ARRAY[1..5] OF INT:=1,2,3,4,5;
No TwinCAT 3 a inicializao de um ARRAY necessita de [ ]
Ex. ARRAY[1..5] OF INT:=[1,2,3,4,5];

No TwinCAT 2 a converso de REAL para INT usa o TRUNC


No TwinCAT 3 a converso de REAL para INT usa o TRUNC_INT

Recomendo recorrer ao Help / Information System para verificar a causa dos erros de compilao.

Por exemplo, para o erro referenciado ao TRUNC, coloque a palavra na janela de pesquisa e clique search.

[asaTek / J.Andril] 120


BRESIMAR AUTOMAO Capitulo VII

[asaTek / J.Andril] 121