2014 Programacao Saia

  • Upload
    jccunha

  • View
    37

  • Download
    1

Embed Size (px)

DESCRIPTION

basic tuturial for saia pg5

Citation preview

  • IST/DEM

    Laboratrios de Automao Industrial

    Caldas Pinto

  • Laboratrio de Automao Industrial IST/DEM i

    ndice

    1 Introduo ............................................................................................................................. 3

    1.1 Motivao ...................................................................................................................... 3

    1.2 Laboratrios de Automao Industrial .......................................................................... 3

    1.2.1 Laboratrio virtual/remoto ................................................................................... 4

    1.2.2 Laboratrio presencial .......................................................................................... 6

    1.3 Organizao deste documento ..................................................................................... 6

    2 Instalao da VPN e Teste do Painel Web ............................................................................. 8

    2.1 Ligao VPN do LV/R .................................................................................................. 8

    2.2 Teste do painel web ...................................................................................................... 9

    2.3 Instalao e configurao do IPVIEW .......................................................................... 11

    3 Instalao do programa PG5 v 2.0 ...................................................................................... 13

    3.1 Introduo ................................................................................................................... 13

    3.2 Processo de instalao ................................................................................................ 13

    3.3 Processo de desinstalao para nova instalao ........................................................ 14

    4 O meu Primeiro Programa .................................................................................................. 17

    4.1 Introduo ................................................................................................................... 17

    4.2 Enunciado .................................................................................................................... 17

    4.3 Programao passo a passo ........................................................................................ 17

    4.3.1 Configurao das pastas de trabalho .................................................................. 18

    4.3.2 Configuraes do programa ................................................................................ 18

    4.3.3 .................................................... 20

    4.3.4 Compilao e ligao (linkagem) dos diferentes mdulos .................................. 22

    4.3.5 Download do programa para o autmato .......................................................... 22

    4.3.6 Implementao do programa pedido: programao de uma funo lgica ...... 24

    4.3.7 Correr o programa final ....................................................................................... 27

    4.3.8 Debug do programa ............................................................................................ 27

    4.3.9 Sair do programa ................................................................................................. 29

    5 Programao em PG5. ......................................................................................................... 30

    5.1 Introduo ................................................................................................................... 30

    5.1.1 Sistemas de comando lgico. Problemas combinatrios e sequenciais. ............ 30

  • ii Laboratrio de Automao Industrial IST/DEM

    5.1.2 Linguagens de programao ............................................................................... 30

    5.2 Conceitos introdutrios............................................................................................... 32

    5.2.1 Variveis lgicas .................................................................................................. 32

    5.2.2 Deteo de patamares e flancos em variveis lgicas ........................................ 33

    5.2.3 Utilizao das instrues OUT, SET e RES............................................................ 36

    5.3 Problema 1: sistema de equaes lgicas ................................................................... 37

    5.4 Problema 2: contagem ............................................................................................... 40

    5.4.1 Lista de Instrues: .............................................................................................. 40

    5.4.2 Blocos Funcionais ................................................................................................ 41

    5.4.3 Exemplo ............................................................................................................... 41

    5.5 Problema 3: medida do tempo .................................................................................. 44

    5.5.1 Lista de Instrues: .............................................................................................. 44

    5.5.2 Blocos funcionais: ................................................................................................ 45

    5.5.3 Exemplo ............................................................................................................... 45

    5.5.4 Cronmetro ......................................................................................................... 46

    5.5.5 Controlo duma lmpada a piscar (blinker) .......................................................... 46

    5.6 Visualizao de variveis. Debug................................................................................. 47

    5.6.1 Utilizao da Watch Window (WW) .................................................................... 47

    6 Programao em GRAFTEC ................................................................................................. 49

    6.1 Introduo ................................................................................................................... 49

    6.2 A norma GRAFCET e as linguagens no sequenciais ................................................... 49

    6.3 A norma GRAFCET e o GRAFTEC.................................................................................. 49

    6.4 Paradigma Mestre/Escravo em GRAFTEC ................................................................... 52

    6.4.1 Variveis de situao e ordens de foragem....................................................... 52

    6.5 Utilizao de macros no GRAFTEC .............................................................................. 57

    6.6 Observaes finais na utilizao do GRAFTEC............................................................. 57

    6.7 Utilizao do GRAFCET como algoritmo para programar em linguagens no

    sequenciais .............................................................................................................................. 58

    ANEXO I: Ligao a uma VPN....................................................................................................... 59

    ANEXO II: Mensagens de segurana do Java ............................................................................... 70

    ANEXO III: Tabela de smbolos nas bancadas virtuais ................................................................. 73

    ANEXO IV: Gama de endereos no PG5 2.0 ................................................................................ 75

    ANEXO V: Controlo do Tapete Rolante e do Elevador ................................................................ 77

    Index ............................................................................................................................................ 78

  • 3 Laboratrio de Automao Industrial IST/DEM

    1 Introduo

    1.1 Motiv ao

    Umas das componentes mais importantes no ensino desta Unidade curricular (UC) a

    programao de autmatos programveis (AP).

    Os AP devem ser considerados computadores industriais em que dada principal nfase s

    cartas de interface com equipamentos, em particular cartas de entrada e de sada. Estas

    podem ser lgicas recebendo ou enviando sinais binrios, ou analgicas recebendo sinais

    contnuos e procedendo sua discretizao (cartas de entrada) ou enviando sinais contnuos

    aps a converso digital analgica dos sinais de comando gerados no AP (cartas de sada).

    Pela sua versatilidade, custo e robustez aparecem em qualquer soluo de automao no s

    nas unidades industriais mas tambm em edifcios e escritrios (domtica).

    Por este motivo absolutamente necessrio e que os futuros engenheiros mecnicos

    adquiram bons conhecimentos deste equipamento e da sua programao.

    Os autmatos SAIA, no sendo to populares como por exemplo os Siemens so na Europa,

    permitem ser programados com linguagens paradigmticas da maioria das linguagens dos AP

    do mercado. Tm tido desde sempre a vantagem de permitir a utilizao livre do seu software

    de programao a todos os alunos durante 3 meses, tempo necessrio para a execuo dos

    trabalhos.

    1.2 Laboratrios de Automao Industrial

    A UC de Automao industrial apoiada por dois laboratrios:

    Laboratrio remoto/virtual (LR/LV) para o trabalho em casa relativo resoluo de

    problemas e preparao dos trabalhos de laboratrio que fazem parte do processo de

    avaliao.

    Laboratrio presencial (LP) onde so demonstrados os trabalhos de laboratrio

    propostos. Devido ao atual nmero de aulas laboratoriais atribudas UC este

  • 4 Laboratrio de Automao Industrial IST/DEM

    laboratrio destina-se sobretudo ao processo de avaliao de programas j escritos e

    no ao seu desenvolvimento.

    1.2.1 Laboratrio virtual/remoto

    Laboratrio Virtual

    Um laboratrio diz-se virtual se todo o equipamento controlado virtual. Ou seja so

    objetos desenhados numa pgina web, a , cujos

    estados dependem de comandos do computador, neste caso o AP. Por exemplo um

    interruptor um objeto com dois estados, um que representa o estado ligado e o outro o

    desligado.

    As vantagens destes laboratrios que podem e simples

    e mudar todo o equipamento corresponde apenas mudando a pgina web acessvel. Nesta UC

    o painel web instalado permite reproduzir quase exatamente o equipamento disponvel no LP.

    Os painis web correspondem a pginas web instaladas no prprio AP. No se destinam

    apenas a criar LVs. A sua principal funo permitir uma extenso do mundo real fornecendo

    interruptores e botes de presso remotos e permitindo a visualizao do estado de

    instalaes reais emuladas nos painis web.

    Na Fig. 1-1 est representado o painel web que vai ser usada nesta UC e que ser descrito mais

    frente.

    Fig. 1-1. Painel web a ser usado em Automao Industrial

  • Laboratrio de Automao Industrial IST/DEM 5

    Na verso atual do LV existem 8 postos (ver Fig. 1-2) para utilizao dos 8 grupos de cada

    turma. Cada um destes postos pode ser acedido, aps se ter feito a ligao VPN do LV (ver

    cap. 2), nos seguintes endereos1:

    http://192.168.77.1/bancada1.html

    http://192.168.77.2/bancada2.html

    http://192.168.77.8/bancada8.html

    Laboratrio Remoto

    Um laboratrio diz-se remoto se o seu equipamento, que real, pode ser manipulado

    remotamente. Este equipamento est localmente associado a um computador ou AP que, por

    sua vez, est ligado internet.

    O LR instalado est ligado a 4 dos AP que tambm pertencem ao LV. Consiste em 4 postos em

    que cada um constitudo por 3 cilindros e respetivos sensores e atuadores, mais um conjunto

    de lmpadas. (Ver Fig. 1-2)

    Fig. 1-2. Equipamento do laboratrio remoto

    1 S pode aceder a estes sites com a ligao VPN do LV/R estabelecida, ver captulo 2.

  • 6 Laboratrio de Automao Industrial IST/DEM

    Apesar de estar completamente funcional e v ser usado em demonstraes, no vai ser

    utilizado pelos estudantes na realizao dos trabalhos, por duas razes:

    1. O equipamento existente no permite simular todo o equipamento disponvel no LP.

    2. O seu funcionamento exige a disponibilidade permanente de ar comprimido, o que nas

    nossas instalaes, no , infelizmente, uma certeza.

    1.2.2 Laboratrio presencial

    Este laboratrio est situado nas instalaes do laboratrio de Controlo, Automao e

    Robtica do DEM. Nele se iro realizar 3 aulas, onde, em cada uma delas, ser avaliado um

    trabalho desenvolvido no LV.

    um laboratrio com 8 bancadas para grupos de 2 a 3 estudantes. Para alm de um

    computador e de um AP, esto equipadas com diverso equipamento semelhante em todas.

    Como, apesar de tudo, h algumas diferenas, a sua descrio exaustiva fica reservada para

    documentos dedicados, um por bancada.

    Na Fig. 1-3 apresentada uma fotografia de uma das bancadas deste laboratrio.

    Fig. 1-3. Fotografia de uma bancada do LP

    1.3 Organizao deste documento

    Este documento est organizado em captulos, cada um descrevendo os procedimentos a

    seguir pelos estudantes at serem completamente capazes de escrever e testar programas nos

    AP. Serve tambm de apoio ao desenvolvimento dos seus prprios programas. Ou seja:

  • Laboratrio de Automao Industrial IST/DEM 7

    Instalao da VPN que permite aceder ao LV e exemplo de uma ligao ao mesmo.

    Esta ligao deve ser estabelecida no incio, ou mesmo antes, das aulas comearem

    no necessitando que os grupos estejam constitudos.

    Instalao do programa que permite escrever cdigo e envi-lo para os APs. Nesta UC

    ser o PG5 v2.0 da SAIA.

    Utilizao do painel web

    Reviso de conceitos e procedimentos bsicos na escrita de programas em PG5

    Em diferentes anexos ser fornecida informao relevante de apoio a ambos os

    laboratrios.

    Finalmente faz-se notar que muita da informao aqui veiculada deve ser complementada com

    o livro de texto da disciplina e com o manual do PG5.

  • 8 Laboratrio de Automao Industrial IST/DEM

    2 Instalao da VPN e Teste do Painel

    Web

    2.1 Ligao VPN do LV/R

    Os APs que constituem o LV/R, uma cmara web e um computador tipo PC esto ligados entre

    si por protocolo ethernet, desempenhando este ltimo o papel de servidor e estando, por isso,

    ligado rede internet. A rede assim definida designa-se por rede privada virtual ou

    simplesmente VPN (Virtual Private Network). Sobre este conceito aconselha-se uma pesquisa

    na internet, a comear pela wikipedia.

    Estas redes esto protegidas por um username e uma password que preciso conhecer. No

    caso do LV/R :

    Username: vpn

    Password: vpngcar

    Com estes elementos s tem de configurar o seu computador para estabelecer a ligao.

    Infelizmente no h uma configurao padro, pois depende do sistema operativo. O que se

    recomenda que sejam seguidos um dos variados procedimentos disponveis na internet,

    principalmente os transmitidos via youtube.

    Como segunda abordagem sugerido que sigam os passos descritos no Anexo I para os

    sistemas operativos mais importantes.

    Aps ter configurado a sua ligao VPN do LV/R deve testar o acesso mesma de acordo

    com os seguintes passos:

    Clicar no shortcut para a VPN e introduzir o username e a password. (ver Fig. 2-1)

    Abrir o browser e introduzir o endereo correspondente sua bancada (ver seco

    anterior). Se lhe aparecer uma srie de mensagens com avisos do JAVA proceder de

    acordo com o Anexo II.

    Pode ainda visualizar o LR se se ligar Webcam (software recomendado IPVIEW) 2.

    2 Esta ligao opcional j que no vai ser necessria. Para instalar o IPView ver seco 2.3

  • Laboratrio de Automao Industrial IST/DEM 9

    Fig. 2-1. Ligao VPN

    2.2 Teste do painel web

    Os APs do LV apesar de terem uma ligao pr-determinada aos painis web neles alojados, s

    correm naturalmente os programas que l forem instalados. No incio de cada semestre

    (durante a 1 semana) enquanto os estudantes no tm o software PG5 instalado nos seus

    computadores, no podendo assim instalar os seus prprios programas nos APs, ser posto a

    correr nesses autmatos um programa de teste, que permite ilustrar a forma como

    normalmente vai ser utilizado3.

    Para correr este programa necessrio abrir o painel web da bancada remota que lhe foi

    atribuda e cujo endereo est dado no Cap.1. Quando o fizer muito provavelmente vai obter

    uma srie imensa de avisos JAVA que pode mesmo recusar-se a aceder ao endereo dado.

    Para resolver o problema consulte o Anexo II deste documento.

    Quando deixar de obter esta srie de avisos pode comear as suas experincias.

    Os testes descritos a seguir referem os nomes dos smbolos fixados para este painel e que

    esto referidos na Fig. 2-2.

    PARTE 1: semforos e Luzes

    Atuar o Botao0 (tipo Toggle4) OU manter atuado o Sensor de Bancada (tipo sensor de presso5)

    3 O cdigo ser posteriormente fornecido de forma que os utilizadores possam repor o programa no AP

    se assim o entenderem. 4 Um boto diz-se tipo Toggle quando tem duas posies estveis. Ou seja atua-se uma vez e fica numa

    posio e quando se atua de novo muda a posio. Tambm se designam por botes tipo ON/OFF. 5 Um boto diz-se de presso quando uma posio corresponde ao estar atuado e a outo corresponde

    ao estar desatuado. No LV atuar o boto consiste em atuar o rato sobre ele. Infelizmente no LV no se pode ter mais de um boto deste tipo atuado ao contrrio do que se passa com estes botes quando so reais.

  • 10 Laboratrio de Automao Industrial IST/DEM

    OU manter atuado o Detetor de presena OU manter atuado TapeteCdir OU manter atuado Tapete Cesq

    Actua Alarme

    Atuar Botao1 Acende Todas as lmpadas do semforo 1

    Atuar Botao2 Acende Todas as lmpadas do semforo 2

    Atuar Botao3 Acende Todas as lmpadas do semforo 3

    Atuar Botao4 Acende Todas as lmpadas do semforo 4

    Atuar o Botao5 OU Atuar o Botao6 OU manter atuado o Boto de Pulso Encarnado (PEnc)

    Acende

    Luz Encarnada (LENC)

    Manter atuado o Boto de Pulso verde (PVerde)

    Acende Luz Verde

    Atuar ElevadorP0 OU ElevadorP1 OU ElevadorP2 OU ElevadorP3

    Acende

    Luz Amarela

    Deslocar Roda Modifica Registo 1105 (visualizar campo de registos)

    Parte 2: tapete, elevador e cilindros

    Desde que o boto de start esteja ativo:

    Acende-se uma luz verde e o tapete colocado em andamento (da esquerda para a direita).

    detetada uma pea do tipo 1 ou 2 ou 3

    os algarismos 1,2 ou 36. O tapete continua a andar. A luz verde apaga.

    Se for do tipo X (X pode ser 1,2 ou 3):

    O tapete para quando se atuar no sensor da direita no tapete7. Com o tapete parado: O cilindro X avana e o elevador sobe para o piso X (Cil_A X=1, ). Nesse piso fica 2s. Depois regressa ao piso 0 e ao mesmo tempo o cilindro X tambm recua. Aps o recuo do cilindro o tapete volta a rolar. A luz verde

    6 No laboratrio presencial essa deteo feita por um programa de viso computacional, ou ento

    modificando o mesmo registo na watch window (a estudar mais tarde) 7 No laboratrio presencial ser usualmente a palete a atuar este sensor.

  • Laboratrio de Automao Industrial IST/DEM 11

    volta a acender.

    O process start se desligue. Nesta altura o tapete deve parar e a luz verde apagar-se, mas s quando o processo em curso terminar.

    O nmero de peas de cada tipo entre duas atuaes de Start colocado respetivamente nos registos 1201, 1202 e 1203, que pode ser observado no campo de visualizao de registos

    Fig. 2-2. Smbolos usados no Painel Web

    2.3 Instalao e configurao do IPVIEW

    Utilize o software oferecido, que de utilizao livre, e proceda sua instalao.

    Depois de instalado o IPview necessrio fazer a sua configurao. Antes de a fazer

    necessrio ligar-se VPN.

    Depois de clicar em IPView SE aparece a interface da Fig. 2-3. Seguir o seguinte procedimento:

    1. Clica-se na cmara que se quer configurar. Seja a 1.

    2. A seguir faz-se Input IP e introduz-se o IP da cmara: 192.168.77.12

    O nome e password pedidos so os seguintes:

    username: aind_gcar

    pass: aifo

  • 12 Laboratrio de Automao Industrial IST/DEM

    Fig. 2-3. Configurao do IPView

  • Laboratrio de Automao Industrial IST/DEM 13

    3 Instalao do programa PG5 v 2.0

    3.1 Introduo

    O PG5 o programa disponibilizado pela Saia Burgess para programao dos seus autmatos.

    Infelizmente todas os fabricantes tm software prprio, todas as tentativas de normalizao

    no tm ainda resultados visveis. Contudo, todas as linguagens ao dispor de cada marca

    seguem paradigmas muito semelhantes e, por isso, torna-se simples programar qualquer AP,

    desde que se tenha compreendido esse paradigma com um deles.

    Descreve-se na seco a seguir os passos a dar na instalao do PG5 verso 2.0. Na

    documentao disponibilizada est o manual desta linguagem. A sua leitura integral

    vivamente recomendada embora possa apenas ser utilizado para dvidas pontuais que possam

    surgir.

    O pacote que vai ser instalado tem uma licena demo de 1 ms que no interessa usar. Assim

    o representante em Portugal deste software, a Infocontrol, fornece uma licena de 3 meses

    aos estudantes do IST. Para no terem de encetar um processo de atualizao de licenas,

    sempre complicado, os estudantes devem esperar pela licena fornecida para fazer a

    instalao.

    3.2 Processo de instalao

    Pode ser feito o descarregamento do pacote PG5 2.0 (verso 32 bits e 64 bits) diretamente do

    site da Saia:

    http://www.saia-support.com/en/software/pg5-controls-suite/pg5-20-current-version/pg5-

    20-suite.html

    Contudo para evitar variaes de verses recomenda-se que a instalao seja feita a partir do

    site de apoio disciplina:

    http://web.ist.utl.pt/ist11390/

    Tenha em ateno os seguintes pontos:

    Deve fazer a instalao como administrador

    http://www.saia-support.com/en/software/pg5-controls-suite/pg5-20-current-version/pg5-20-suite.htmlhttp://www.saia-support.com/en/software/pg5-controls-suite/pg5-20-current-version/pg5-20-suite.htmlhttp://web.ist.utl.pt/ist11390/
  • 14 Laboratrio de Automao Industrial IST/DEM

    Antes de instalar deve colocar a licena fornecida (FENIX ou no site de apoio) numa

    pasta que saiba onde est. Desta forma, quando na instalao lhe pedirem a licena,

    deve dar o caminho dessa pasta. No use a que vem por defeito no pacote pois essa

    s vlida por um ms e no fcil de substituir pela nova.

    Quando pedido para indicar o "path" para instalao das pastas, tanto do software

    como dos projetos, deve evitar que haja espaos no caminho indicado. Ex: "PG5 2_0"

    ou "PG5 Projects 2_0" , devendo ser, respetivamente, "PG5_2_0" e

    "PG5_Projects_2_0".

    indispensvel ter disponvel o Help do PG5. Contudo o Windows 7 (e possivelmente

    o 8) no compatvel com os ficheiros hlp. A soluo instalar o programa de ajuda

    do windows WinHLP32.exe que vai permitir correr este tipo de ficheiros tornando

    acessvel a ajuda do SAIA.

    3.3 Processo de desinstalao para nova instalao

    Quando se d como licena, uma que s vlida por um ms, desinstalar o programa

    normalmente no basta caso a nova licena no seja aceite. Caso isso acontea os seguintes

    procedimentos costumam resultar:

  • Laboratrio de Automao Industrial IST/DEM 15

    1) apagar a diretoria indicada depois de ter

    feito o unstall

    2) Na command line do Windows

    correr o registry editor (regedit)

    Aparece uma srie de diretorias.

    no HKEY_CURRENT_USER apagar

    a pasta SAIA Burgess

  • 16 Laboratrio de Automao Industrial IST/DEM

  • Laboratrio de Automao Industrial IST/DEM 17

    4 O meu Primeiro Programa

    4.1 Introduo

    Neste captulo descreve-se passo a passo os procedimentos a seguir at ter a funcionar um

    programa escrito em PG5. Devem ser seguidos com rigor para que os programas no resultem

    em erros incompreensveis, em painis web destrudos e noutros problemas que conduzem a

    perdas de tempo.

    4.2 Enunciado

    O seu 1 programa vai ser uma simples implementao duma funo lgica.

    Esta funo est sempre a ser lida pelo autmato (AP/PLC8) e testada sempre que se carrega

    em PVerde mantendo este atuado. A funo deve usar os botes 0 a 2. Sempre que for 0 a

    lmpada encarnada acende, sempre que for 1 esta lmpada apaga.

    9

    Para se saber que o cdigo est a ser lido deve acender-se uma luz verde enquanto PVerde

    estiver atuado.

    Cenrio do problema:

    Configura os botes 0 a 2 (interruptores)

    Atua PVerde (boto de presso) Luz Encarnada acesa ou apagada de acordo

    com a configurao dos botes.

    Luz Verde acesa

    4.3 Programao passo a passo

    Supe-se naturalmente que j tem o PG5 instalado e a ligao VPN estabelecida. Sabe

    tambm a bancada que lhe foi atribuda.

    8 Autmato programvel/ Programmable Logic Controller

    9 Em todos os textos fornecidos sempre que se use a varivel est a pensar-se no interruptor virtual

    ou fsico botaon.

  • 18 Laboratrio de Automao Industrial IST/DEM

    4.3.1 Configurao das pastas de trabalho

    Seja ProgramasSaia a sua pasta de trabalho, que vai passar a usar para ter os programas

    que desenvolver para o lab remoto:

    FicheirosApoio.zip fornecido10.

    4.3.2 Configuraes do programa

    Corra o Project

    manager PG5 2.0

    Escolha um nome

    para o projeto. Ser

    criada uma pasta com

    este nome

    Nota: Se tiver no clipboard o path da sua pasta pode fazer o paste para o projects directory

    Faa OK

    Verifique as pastas

    criadas no seu

    computador

    Para poder aceder ao painel web vai copiar

    para dentro da pasta Device1 a pasta html

    fornecida nos ficheiros de apoio.

    Do menu criado s se

    vai preocupar com os

    submenus que esto

    sublinhados.

    Antes de prosseguir deve ligar-se VPN

    Vai agora configurar o seu

    autmato. Primeiro tem que

    10

    Estes ficheiros passaro a ser usados para todos os seus programas

  • Laboratrio de Automao Industrial IST/DEM 19

    o escolher, atravs do IP que

    indicar:

    Passo 1: declarar que o

    channel socket

    Passo 2: introduzir o IP do

    autmato que corresponde

    sua bancada

    192.168.77.BANCADA

    e fazer OK.

    (este exemplo para correr

    na bancada 7)

    Passo 3: Copiar para o seu

    PC (upload) as

    caractersticas do PLC no IP

    fornecido. Selecione:

    Clique em Upload

    configurations.

    NO FAA

    ABSOLUTAMENTE MAIS

    NADA11

    Carregar em Download

    pode ter efeitos imprevistos

    e tornar o autmato

    inoperacional

    Note que ele vai buscar ao autmato a configurao e da ter de

    estar ligado VPN

    11

    S um perito deve mexer nas configuraes dentro do menu fornecido, pois estas podem provocar mau funcionamento inesperado do PLC. Se quiser esclarecer algum dos pontos fale com um docente.

  • 20 Laboratrio de Automao Industrial IST/DEM

    Confirme O Upload e a

    seguir feche a janela do

    Device Configurator fazendo

    SAVE.

    Repare que o Device1 foi

    alterado para o seu

    autmato12

    Clique em Build Options e

    defina a entrada na figura ao

    lado como 013.

    4.3.3

    Neste momento est preparado para comear a escrever/incluir files do seu programa.

    As primeiras files a incluir so:

    1. Smbolos usados no laboratrio nos equipamentos instalados no lab virtual: em

    LV_global.sy514

    2. File com o programa principal e outras files necessrias15. Neste caso inclua

    main(primeiroprograma)

    3. File para ligao ao painel web do autmato: tem de ser criada

    Este processo descrito com mais detalhe a seguir:

    12

    Se no for alterado de imediato faa Device/rebuilt e mesmo dando um erro a alterao feita. 13

    Esta alterao prende-se com a possibilidade dos alunos escreverem o seu nome ou nmero no painel. A sua necessidade ser revista noutra edio deste painel. 14

    Aconselha-se vivamente que seja lido o cap. 5 do manual do PG5. Uma m utilizao das variveis uma causa frequente de definidos fora dos mdulos de programa introduzidos, podendo por isso ser ou no utilizados. Por isso a sua definio global e no particular a um mdulo de programa. nesta tabela que as variveis so inicializadas. 15

    Este problema no vai fazer uso nem do elevador, nem dos cilindros. Por isso no preciso incluir os blocos de programa a eles associados. Contudo no pode mexer na tabela de smbolos que envolve esses elementos, pois o autmato necessita saber referir-se a eles

  • Laboratrio de Automao Industrial IST/DEM 21

    1. Incluso de:

    LV_Global.sy5

    As variveis aqui

    declaradas so as

    definidas para o lab virtual

    Se fizer F5 aparecer uma janela (SAIA Symbol Editor) com todos os

    smbolos importados16. Definidos como pblicos podem passar a

    ser usados nos outros mdulos17 No Anexo I

    dada esta tabela e o seu significado no lab virtual18

    main(MyFirstProgram).src

    Para poder ligar (link) e correr o seu programa falta ter uma

    program file com os blocos principais XOB 16 e COB 0 019.

    Vai incluir o ficheiro fornecido, main(MyFirstProgram).src, com

    estes dois blocos, o XOB 16 para eventuais inicializaes20 e

    termina com a instruo EXOB e o COB 0 0 no faz nada (para j) e

    termina com a instruo ECOB.

    2. Ligao pg web do

    autmato:

    Crie uma program file do

    tipo wsp e escolha um

    nome para ela : seja

    webserver e escreva-o em

    vez de untitled 1.

    Aparece de imediato a

    janela21:

    Deve selecionar os ficheiros apresentados22, fazer Add e depois generate. Toda a informao

    que este programa precisa de saber da pgina web ficou agora inserida23.

    16

    O nome destes smbolos no pode ser alterado, pois tambm so usados no Painel Web. 17

    Define-se como mdulo, uma file tipo Fupla, Lista de Instrues ou GRAFTEC que pode conter um ou mais blocos de programa. 18

    Tem de clicar duplamente em LV_Global.sy5 se quer ver a tabela com os smbolos inicializados (ver frente) 19

    Sobre o que significam estes termos ver manual do PG5 cap 7 seces 7.1 e 7.4 20

    Neste programa no h inicializaes a fazer para alm das referentes s variveis do painel web 21

    Se aparecer vazia porque se esqueceu de colocar a pasta html dentro da pasta device1 22

    que foram previamente colocados na pasta html

  • 22 Laboratrio de Automao Industrial IST/DEM

    Neste momento j pode ligar as files includas e correr o programa no LV. O programa no far

    nada mas poder ver o painel como est definido. Note que a visualizao do painel de forma

    correta depende da correo dos passos anteriores. Sob este ponto de vista o autmato no

    4.3.4 Compilao e ligao (linkagem) dos diferentes mdulos

    Quando um programa tem vrios mdulos de cada vez que se termina o mdulo deve ser feito

    Quando todos os mdulos esto terminados tem de fazer a linkagem dos diferentes mdulos

    das files presentes s so ligadas as que tiverem uma seta no icon. Essa seta que quer dizer

    que a file vai ser ligada, surge por defeito quando a file criada e pode ser removida clicando

    no boto direito do rato.24 Resumindo:

    Clicando Sobre Device1-

    com o boto direito do

    rato faa Rebuild all

    files

    H de aparecer uma

    listagem como esta

    4.3.5 Download do programa para o autmato

    Antes de prosseguir deve certificar-se que nenhum colega est a trabalhar na sua bancada pois

    o seu programa ir sobrepor-se ao dele. Para isso abra o painel web da sua bancada e

    certifique-se que o seu estado livre. Se estiver ocupado entre em contacto com o USER ID

    para se certificar que est a trabalhar efetivamente no painel.

    23

    Sai fora do mbito deste curso uma explicao mais detalhada deste tema. 24

    Esta facilidade pode ser usada para ter diferentes mdulos no compatveis entre si no mesmo programa

  • Laboratrio de Automao Industrial IST/DEM 23

    Neste momento o seu PLC ou est parado ou tem um programa a correr25. Quando l coloca o

    seu programa o PLC vai parar e comear a correr o seu programa. No momento de descarregar

    o programa corre o XOB 16, e tambm as variveis inicializadas nas tabelas de smbolos. Em

    resumo:

    Faa o download do

    programa

    Limite-se a clicar em

    Download

    Faa OK

    Normalmente corre bem. Se obtiver uma resposta a dizer que no possvel estabelecer o

    contacto e tiver ligado VPN, dever fazer mais umas tentativas e de seguida enviar um email

    para o Eng. Camilo Cristo com conhecimento para o responsvel da UC

    Clique em Go-OnLine

    Carregue na seta verde

    para por o programa a

    correr (a bola vermelha

    para o parar)

    Visualize agora o painel web apresentado no autmato definido pelo IP que introduziu nas

    configuraes. Neste caso fazendo:

    http://192.168.77.7/bancada7.html

    25

    O estado normal do autmato ter um programa a correr, mas claro que o podem ter deixar parado.

    http://192.168.77.7/bancada7.html
  • 24 Laboratrio de Automao Industrial IST/DEM

    obtm a seguinte imagem26:

    Finalmente se clicar nos interruptores e botes v que eles tm dois estados, mas nada mais

    acontece pois no h qualquer conjunto de instrues nesse sentido. Repare unicamente no

    estado de ocupao e no user ID. Deve escrever o seu nmero ou nome.

    4.3.6 Implementao do programa pedido: programao de uma funo

    lgica

    Apesar de haver vrias possibilidades como, com o tempo, podero constatar, vamos seguir o

    princpio de que todos os programas tm um programa principal escrito em lista de instrues

    ou blocos funcionais que por sua vez vai chamar blocos de programa(PB) e blocos sequenciais

    (SB)27. Neste neste vai-se usar sempre Lista de Instrues. No se esquea de por o PG5 off-

    line.

    Analisando a program file j includa temos :

    1) Bloco de inicializao XOB 16

    XOB 16 ; neste programa no h variveis adicionais a inicializar EXOB

    2) Bloco cclico: COB 0 0

    26

    Se em vez desta imagem obtiver mensagem relativas ao Java porque no o tem bem instalado e deve ler o anexo correspondente deste documento. Se esta imagem aparecer deteriorada porque no criou o ficheiro webserver.wsp ou tem erros na tabela de smbolos globais. 27

    A estudar mais tarde

  • Laboratrio de Automao Industrial IST/DEM 25

    COB 0 0 ; o seu cdigo: ECOB

    Vamos agora escrever o programa pedido28, ou seja a implementao de uma funo lgica.

    Esta funo vai ser escrita em linguagem de contactos e colocada no Program Block FLogica.

    Siga os seguintes procedimentos para criar esta funo:

    Criar uma program file tipo

    fupla que abre um editor para

    linguagem de contactos e

    blocos funcionais. Atribua um

    nome significativo file29

    Comece para definir para o

    bloco um nome30.

    Preencha-o de acordo com a

    figura ao lado

    Repare que aparece o symbol

    editor em que este bloco j

    vem declarado

    28

    No captulo a seguir explicar-se- de forma detalhada aspetos relativos programao em PG5 29

    Se a file contiver um bloco nico pode dar-se a essa file o nome pensado para o bloco. Se contiver vrios dever ser sempre dado um nome significativo. 30

    Haver um endereo associado mas pode omitir o nmero, que o programa atribuir um (endereo dinmico).

  • 26 Laboratrio de Automao Industrial IST/DEM

    A partir da equao dada

    desenhe o circuito sem se

    preocupar com as variveis

    que sero colocadas a seguir

    Vai agora selecionar as variveis que, estando relacionadas com o painel web, esto

    declaradas em LV_Global.sy5. Abra esta tabela (faa F5) e arraste para cima dos pontos de

    interrogao as variveis pretendidas. De notar que na tabela de smbolos de FLogica.fup

    aparecem de imediato estes smbolos declarados (como External)

    No final h-de ter uma representao grfica como a seguinte:

    Faa save mas deixe a janela

    aberta (pode fechar a do

    symbol editor (F5)

    Este bloco deve ser chamado pelo programa principal

    Passos a seguir:

    Abra a file main(MyFirstProgram).src

    Escreva o cdigo

    CPB FLogica

    Quando escreve abre-se automaticamente o Symbol Editor. Selecione a deste programa

    e acrescente esta varivel tabela de smbolos:

  • Laboratrio de Automao Industrial IST/DEM 27

    Faa save e repare que este smbolo encontrado e declarado logo como External.

    4.3.7 Correr o programa final

    Deve agora fazer o rebuild do programa e verifique que no tem erros.

    Abra o painel web da sua bancada e certifique-se que o seu estado livre. Se estiver

    ocupado entre em contacto com o USER ID para se certificar que est a trabalhar

    efetivamente no painel.

    Faa o seu download para o autmato, coloque-se on-line e corra o programa. Estes

    passos j foram explicados atrs.

    Escreva o seu nmero ou nome no

    Corra o programa de acordo com o cenrio.

    4.3.8 Debug do programa

    Este programa muito simples e por isso basta observar o painel web para garantir que

    trabalha. Contudo o PG5 fornece um conjunto de ferramentas de debug31 de que se faz agora

    a introduo de duas delas.

    Visualizao do cdigo escrito em linguagem de contactos ou blocos funcionais (Fupla)

    Nos blocos escritos nestas linguagens e no modo run (o PLC a correr o programa) as linhas

    com energia aparecem a cheio32. Na figura abaixo esto ilustradas duas situaes.

    (a) b)

    Fig. 4-1. a bold esto os contactos atuados e as linhas com energia. Em (a) Lverde acende e em

    (b) ambas as luzes acendem.

    31

    Este tpico completado no final do captulo seguinte 32

    n com formato de lupa)

  • 28 Laboratrio de Automao Industrial IST/DEM

    Isto permite extrair informaes sobre algum mau funcionamento do programa

    Utilizao da Watch Window

    Clique em watch

    window

    H-de obter a janela ao

    lado.

    Ative o icon dos culos

    para se verem os

    estados actualizados.

    Escreva por exemplo

    Botao0. Se no

    aparecer logo associado

    um endereo porque

    falhou algum passo

    anterior

    Quando carregar no

    botao0 no painel

    verifica que o valor da

    flag passa de 0 para 1

    Pode usar a mesma

    para observar as sadas

    Pode modificar uma

    sada33 colocando o

    valor desejado em

    modify e fazendo

    Download Values (seta

    vermelha)

    33

    Certifique-se que essa varivel no usada ou o PLC est parado.

  • Laboratrio de Automao Industrial IST/DEM 29

    Ver a luz acender no

    painel

    E terminou o seu programa

    Pode fazer novos testes, desde que nenhum outro colega deseje utilizar a bancada.

    4.3.9 Sair do programa

    No painel web passe o estado de ocupao para livre.

    Pode deixar o programa a correr e simplesmente colocar-se

    off-line (carregar na ficha), ou pode parar mesmo o programa

    (situao recomendada) carregando primeiro na bola

    vermelha, antes de carregar na ficha.

    Desligue-se da VPN

    Sugesto: crie verses sucessivas deste programa at ser capaz de o fazer sem consultar este

    documento.

  • 30 Laboratrio de Automao Industrial IST/DEM

    5 Programa o em PG5.

    5.1 Introduo

    Neste captulo iremos aplicar as diferentes linguagens de APs aos problemas tpicos que

    iremos tratar na disciplina. Para cada um dos problemas far-se- uma abordagem o mais geral

    possvel de como as diferentes linguagens do APs os implementa. Esta implementao ser

    ilustrada com problemas concretos usando o PG5 2.0. So feitas algumas consideraes sobre

    as instrues usadas mas, naturalmente, no se pretende substituir o manual do PG5 que deve

    ser lido numa fase inicial e consultado sempre que subsistirem dvidas.

    Contudo, antes de entrar nos problemas tpicos vamos rever alguns conceitos e instrues

    bsicas.

    5.1.1 Sistemas de comando lgico. Problemas combinatrios e sequenciais.

    Muito resumidamente34 um sistema de comando diz-se combinatrio quando o valor do

    estado de um conjunto de sadas depende apenas do valor do estado de um conjunto de

    entradas, funo constante no tempo. Estes problemas traduzem-se em geral por um sistema

    de equaes lgicas facilmente programveis em qualquer das linguagens disponveis nos APs

    Por outro lado um problema diz-se sequencial quando o comportamento do sistema se

    descreve por uma sucesso de estados que evoluem entre si em funo de eventos temporais

    (em determinados instantes de tempo) ou fsicos (quando dada varivel lgica muda de

    estado). A programao destes sistemas de comando torna-se muito mais simples se se basear

    num diagrama de estados do mesmo. Na automao industrial o diagrama de estados mais

    utilizado o GRAFCET.

    5.1.2 Linguagens de programao

    Segundo o standard internacional IEC61131 para APs, cuja 3 edio de Fevereiro de 2013,

    definem-se 5 linguagens de programao, trs grficas e duas baseadas em texto.

    1. Diagrama de contactos (Ladder Diagram)

    2. Diagrama de blocos (Function block diagram)

    34

    Este tema encontra-

  • Laboratrio de Automao Industrial IST/DEM 31

    3. Lista de instrues (Instruction list)

    4. Texto estruturado (Structured text)

    5. Diagrama Sequencial (Sequential function chart)

    Linguagens baseadas em texto

    A linguagem mais usada deste tipo a chamada Lista de Instrues35. No fundo trata-se de

    uma linguagem de muito baixo nvel com instrues que permitem aceder aos dados ao nvel

    do seu endereo. Contudo, a possibilidade/necessidade de processar dados como inteiros e

    depois como reais conduziu necessariamente a instrues mais complexas. Neste curso, a Lista

    de Instrues vai ser essencialmente usada para escrever alguns blocos de programa (rotinas)

    e sobretudo para escrever o programa principal que ir ser responsvel por chamar os

    diferentes blocos de programa que o constituem. As principais famlias de instrues tm

    nomenclatura no muito diferente nas diferentes marcas de APs.

    Texto estruturado, a outra linguagem baseada em texto, est a ser cada vez mais considerada

    como opo de programao das diferentes marcas de APs.

    Diferentes verses desta linguagem podem assemelhar-se ao Basic, ao Pascal ou ao C. No

    existe no PG5.

    Linguagens grficas

    As linguagens baseadas na representao grfica de variveis e funes tiveram a sua gnese

    na linguagem de contactos. Esta linguagem era a nica linguagem grfica existente nos APs

    mais antigos. Permite emular circuitos eltricos com interruptores e rels a comandar a

    abertura ou fecho de atuadores eltricos. Atualmente a prpria LC integra contactos e rels

    36 que no iremos aprofundar.

    A outra linguagem grfica baseia-se num conjunto de blocos, cada um realizando uma dada

    funo. Por isso se designa por Linguagem de Blocos Funcionais. Estas funes comearam por

    ser muito simples como por exemplo as correspondentes s funes lgicas. Atualmente

    podem realizar funes muito complexas e parametrizveis online como, por exemplo, as

    35

    36

    Ver no menu Binary/Ladder Diagram no ambiente Fupla.

  • 32 Laboratrio de Automao Industrial IST/DEM

    utilizadas nos sistemas AVAC37. O PG5 integra a linguagem de contactos e a dos blocos

    funcionais num ambiente de programao que denomina de Fupla.

    Finalmente, o Diagrama Sequencial uma linguagem baseada na representao em diagrama

    de estados do sistema, em particular no GRAFCET. Os diferentes fabricantes de APs oferecem

    ambientes grficos que permitem desenhar um modelo sequencial e fazer a programao para

    os seus diferentes elementos38. No caso do PG5 oferecido o GRAFTEC que, como o nome

    sugere, se baseia diretamente no GRAFCET. Cada dos elementos do GRAFTEC39 programado,

    ou em lista de Instrues, em Linguagem de Contactos ou Blocos Funcionais.

    Como foi dito acima um sistema sequencial deve comear por ser representado por um

    diagrama de estados, mesmo que n Diagrama Sequencial para

    o programar. O GRAFCET pode ser olhado como um algoritmo a implementar e, a partir dele,

    fazer a programao na linguagem escolhida.

    5.2 Conceitos introdutrios

    5.2.1 Variveis lgicas

    As variveis lgicas que correspondem a entradas e sadas fsicas tm necessariamente um

    endereo fixo definido pelo hardware. vantajoso ser-lhes atribudo um nome para facilitar a

    escrita e leitura dos programas.

    Todas as restantes variveis lgicas podem ser apenas referidas explicitamente pelo nome

    deixando o AP atribuir-lhes um endereo (posio ocupada na memria). o chamado

    endereamento dinmico40. Contudo nalguns casos41 obrigatrio definir um endereo

    esttico.

    Como nas linguagens de programao de alto nvel todas as variveis usadas num dado

    mdulo do programa devem ser declaradas. Deve ser definido o seu tipo e o mbito (scope).

    Sero locais quando apenas definidas e usadas num mdulo, pblicas quando so definidas

    nesse mdulo podendo ser usadas nos restantes e externas se so usadas no mdulo mas

    37

    Tanto "AVAC" como "HVAC" so siglas que significam "aquecimento, ventilao e ar condicionado" (em ingls "heating, ventilating and air conditioning"). Wikipdia. 38

    O sonho do engenheiro que modela dar o modelo e ser o compilador a gerar todo o cdigo. Apesar de haver uma evoluo nesse sentido ainda est longe de poder dizer-se estar concretizado. 39

    Como ser estudado, estes elementos so as etapas e as transies. 40

    De notar que em todas as linguagens de programao de alto nvel o endereo atribudo de forma dinmica. 41

    Ser chamada a ateno destes casos sempre que for oportuno. Na programao a ser feita nesta UC no ocorrero, com exceo das variveis definidas na tabela global de smbolos usadas no painel web.

  • Laboratrio de Automao Industrial IST/DEM 33

    foram inicializadas noutro.42. Na Fig. 5-1 apresentada uma tabela de smbolos tpica de um

    dado mdulo de programa.

    Fig. 5-1. tabela de smbolos tpica

    Inicializao de variveis lgicas

    Uma varivel usada pela primeira vez num mdulo do programa tem de ser declarada ou como

    local ou como pblica. Por qualquer motivo pode pretender-se que essa varivel tenha um

    dado valor quando o programa arranca. Isso facilmente feito na tabela de smbolos onde a

    varivel foi definida. Isto est explicado no manual do PG5 e ilustrado na figura abaixo para a

    situao da varivel a que se atribu um endereo e a uma em que este dinmico

    (a)

    (b)

    Fig. 5-2. Inicializao de variveis (a) estticas (b) dinmicas

    5.2.2 Deteo de patamares e flancos em variveis lgicas

    Como foi estudado numa varivel lgica definem-se duas regies, respetivamente as

    transies ou flancos de durao terica nula, e os patamares ou condies, onde o valor da

    varivel mantido constante durante um tempo mensurvel (ver Fig. 5-3)

    Fig. 5-3. Elementos dum sinal lgico

    42

    conveniente que o estudante perca algum tempo a estudar e a manipular a tabela de smbolos de cada mdulo pois a segurana nesta manipulao permite evitar muitos problemas na compilao dos programas.