Você está na página 1de 4

1

Universidade Federal de Minas Gerais


Escola de Engenharia Departamento de Engenharia Eletrnica o Laboratrio de Informtica Industrial o a a 11 Aula - Programao IEC 61131-3 no ambiente ISaGRAF ca
Objetivos: Desenvolver programas em SFC sob o ambiente ISaGRAF.

Regras de Execuo: ca
O ISaGRAF um sistema s e ncrono. Todas as operaoes so disparadas por um relgio. A duraao bsica c a o c a do relgio chamada de tempo de ciclo. o e A hierarquia dos programas dividida em 4 seoes ou grupos: Begin, Sequential, End e Functions. As e c operaoes bsicas processadas durante um ciclo so: c a a

Figura 1: Ciclo de execuo do ISaGRAF ca

Os programas das seoes BEGIN e END descrevem operaoes c c c clicas. Eles no dependem do tempo. a Os programas da seao SEQUENTIAL descrevem operaoes seqenciais, onde a varivel tempo aparece c c u a explicitamente para distinguir as operaoes bsicas. c a Os programas da seao BEGIN so sistematicamente executados no in de cada ciclo de execuao. Os c a cio c programas da seao SEQUENTIAL so executados com base nas regras dinmicas de SFC ou FC (e obc a a viamente implementados em uma destas linguagens). Os programas da seao END so sistematicamente c a executados a cada m de de ciclo de execuao. Programas das seoes BEGIN e END no podem ser c c a escritos nas linguagens SFC e FC.

Laboratrio de Informtica Industrial - Profs. Carmela M. P. Braga e Luiz T. S. Mendes - DELT/UFMG - 2008 o a

Programas da seao FUNCTIONS so sub-programas que podem ser chamados por outro programa no c a projeto. Um programa da seao FUNCTION pode chamar outro programa desta seao. c c O uso das diferentes se oes no obrigatrio. Por exemplo, um programa pode ser totalmente executado c a e o apenas na seao BEGIN. c

Projeto de Controle em Ambiente ISaGRAF


O ISaGRAF uma ferramenta orientada a projetos. Isto signica que um dado projeto pode conter um e ou mais programas, os quais podem ser totalmente independentes entre si ou, ao contrrio, representarem a diferentes mdulos de uma mesma aplicaao. As etapas de desenvolvimento de uma aplicaao de controle o c c sob o ISaGRAF so as seguintes: a 1. Iniciar o programa ISaGRAF, selecionando Menu Iniciar ProgramasProjects. O ISaGRAF apresentar sua janela principal, denominada Project Management. a 2. Selecionar o diretrio de trabalho: o Selecione FileSelect Project Group e, na janela apresentada, clique na opao New Group. c Na nova janela apresentada, clique bo boto de Browse e selecione seu diretrio de trabalho a o usual. Em seguida, digite EX1 na caixa Name e clique no boto OK. a Clique no boto Select da janela anteriormente aberta. a 3. Criar projeto: no menu da janela de Project Management, selecionar FileNew , dando nome ao projeto na janela que se abrir. Ajustar a opao IO Conguration para None. a c 4. Aps isto, abrir o projeto com duplo clique no nome, ou selecionando FileOpen; o 5. Criar a Base de Dados selecionando FileDictionary, e ento declarando as variveis e seus tipos; a a 6. Criar programa (quantos desejar dentro do projeto), denindo, na criaao do mesmo, a seao de c c que far parte, bem como a linguagem de programaao a ser utilizada no seu desenvolvimento e, no a c caso de programas em SFC, a hierarquia desejada (opao child of). Para tal, selecionar FileNew ; c 7. Editar o(s) programa(s); 8. Vericar erros de sintaxe do programa, selecionando-se MakeVerify, ou clicando no cone correspondente na barra de ferramentas; 9. Executar a conexo de I/O, que dependente do hardware externo de aquisiao. Este passo mais a e c e complexo, sendo detalhado a seguir: Selecionar ProjectI/O connection, ou clicar no cone correspondente na segunda linha do menu. Uma nova janela se abrir, onde os nmeros ` esquerda da nova janela indicam os slots a u a onde poss inserir cartes de E/S no PC. e vel o Clicando-se em um destes nmeros, abre-se uma segunda janela com as opoes dispon u c veis. Deslize a barra de rolagem desta janela, para visualizar os cartes de simulaao existentes o c (Simulate analog inputs, etc.) Selecionar uma das opoes de simulaao e clicar OK. Uma terceira janela ser aberta, mostranc c a do ` direita os pontos de E/S pass a veis de conexo. Clique em um deles e conecte a varivel a a desejada da Base de Dados ao mesmo. 10. Compilar o programa, selecionando MakeMake Application ou clicando no cone correspondente na barra de ferramentas; 11. Simular o programa, selecionando DebugSimulate ou clicando no cone correspondente na barra de ferramentas. Para denir previamente quais programas sero abertos no momento da simulaao, a c selecionar DebugWorkspace e denir quais programas devem ser abertos.

Laboratrio de Informtica Industrial - Profs. Carmela M. P. Braga e Luiz T. S. Mendes - DELT/UFMG - 2008 o a

Atividades
Dever ser desenvolvido um projeto que execute a operaao automtica de um reservatrio industrial, a c a o dotado de um agitador interno. Para implementar os programas referentes a este projeto no ambiente ISaGRAF, dena a seguinte Base de Dados no dicionrio do seu projeto. Na deniao das variveis, deixe o campo Network Address em a c a branco. Nome executa seq liga agitador valv entrada valv saida reserv vazio reserv cheio nivel seqstatus Tipo Boolean Boolean Boolean Boolean Boolean Boolean Integer Message Modo Internal Output Output Output Output Output Output Output Descriao c Parte a seqncia automtica ue a Liga o agitador Abre/fecha vlvula de entrada a Abre/fecha vlvula de sa a da Status de reservatrio vazio o Status de reservatrio cheio o N do reservatrio (faixa de 0 a 100) vel o Tamanho: 40 - Status da seqncia ue

O projeto deve conter os seguintes programas: nivelR - BEGIN (FBD) - Gera os status do reservatrio (reserv vazio (nivel = 0) e reserv cheio o (nivel >=100)). seqfull - SEQUENTIAL - Implementa uma seqncia automtica de chamada de um programa ue a de enchimento/esvaziamento de um reservatrio (programa-pai). o encheR - SEQUENTIAL - Implementa uma seqncia automtica de enchimento/esvaziamento de ue a um reservatrio (programa-lho). o simul - END (ST) - Implementa uma simulaao lgica de n c o vel do reservatrio (se valv entrada o aberta, ento nivel:=nivel+1; se valv saida aberta ento nivel:=nivel-1;). a a O programa seqfull dever implementar a seguinte sequncia: a e 1. Inicialmente o sistema permanece no estado desligado. e 2. Verica se se o operador deu a partida no sistema (ou seja, se executa seq verdadeiro). 3. Caso a condiao 2 seja verdadeira, ativar o programa-lho encheR que ir controlar o enchimento c a ou esvaziamento do reservatrio, e escrever o status da seqncia na varivel seqstatus (Partindo ). o ue a e 4. Verica se a seqncia foi desabilitada (desligada) pelo operador (ou seja, se executa seq falso). ue 5. Caso a condiao 4 seja verdadeira, parar tudo, ou seja, fechar as vlvulas, desligar o agitador e c a escrever o status da seqncia na varivel seqstatus (Desabilitada ). ue a 6. Retornar ao passo 1. O programa encheR dever implementar a seguinte sequncia: a e 1. Verica se o reservatrio est vazio (ou seja, se reserv vazio verdadeiro). o a e 2. Caso esteja, abrir a vlvula de entrada para encher o reservatrio e escrever o status da seqncia a o ue na varivel seqstatus (Enchendo ). a a 3. Quando o estado de reserv cheio for verdadeiro, fechar a vlvula de entrada e ligar o agitador por 10s, alm de escrever o status da seqncia na varivel seqstatus (Agitando ). e ue a 4. Decorridos os 10s, desligar o agitador, abrir a vlvula de sa para esvaziar o reservatrio e escrever a da o o status da seqncia na varivel seqstatus (Esvaziando ). ue a 5. Vericar se o reservatrio est vazio (ou seja, se reserv vazio verdadeiro). Caso esteja, retornar o a e ao passo 1.
Laboratrio de Informtica Industrial - Profs. Carmela M. P. Braga e Luiz T. S. Mendes - DELT/UFMG - 2008 o a

Teste seu programa minuciosamente. E comum, em automaao industrial, ignorarmos (por descuido ou c desconhecimento) algumas situaoes operacionais importantes durante o projeto, as quais porm podem c e ser reveladas mediante um teste cuidadoso. OBSERVACOES IMPORTANTES SOBRE O ISaGRAF: A lgica de cada estado do programa em SFC, quando descrita em ST (texto estruturado), deve o ser encapsulada entre o par de declaraoes ACTION(qualicador ) e END ACTION, onde qualicador c descreve um qualicador opcional para a aao. Os qualicadores mais freqentemente usados so o c u a N, que indica que a aao ser executada continuamente enquanto o estado estiver ativo, e o P, que c a indica uma aao pulsada (no ISaGRAF, executada apenas uma vez quando o estado for ativado). c e Exemplo: ACTION(N): x:= x+1; desligado := FALSE; END_ACTION; a Observe que as palavras-chave ACTION e END ACTION no podem ser usadas num programa declarado na linguagem ST. Para facilitar a construao da lgica, podem ser usados, se necessrio, estados vazios (sem nenhuma c o a aao denida) e transioes vazias (sempre avaliadas como TRUE neste caso). c c A varivel interna que acumula o tempo decorrido num dado estado designada, no ISaGRAF, a e por GSn.T onde n corresponde ao nmero do estado. Quando o estado torna-se desativado, esta u varivel passa a ter valor indenido. Por exemplo, para descrever a transiao do estado 2 para o a c estado 3 de um programa hipottico em SFC, poder-se-ia empregar a seguinte expresso: e a (FUN = TRUE) and (GS2.T < T#10s); Note, no exemplo anterior, o uso do prexo T#, que indica as constantes do tipo de dados TIME. O ISaGRAF permite a construao de estruturas hierrquicas de programas SFC, onde um programa c a pai pode controlar (disparar, encerrar...) outros programas SFC lhos. Para tal, importante e especicar, na criaao dos programas, a hierarquia apropriada. As regras vlidas nesta hierarquia c a so: a Programas SFC que no tm um pai so chamados programas principais (main SFC proa e a grams). Programas-pai so ativados pelo sistema quando a aplicaao iniciada. a c e Um programa pode ter vrios programas-lhos. a Um programa-lho no pode ter mais de um programa-pai. a Um programa-lho s pode ser controlado por seu programa-pai. o Um programa-pai no pode controlar os lhos de seus prprios programas-lhos. a o A ativaao/desativaao do programa-lho pode ser feita de duas formas: c c 1. Fora do bloco de aoes ACTION...END ACTION, na forma prog filho(N | S | R). Esta forma c usualmente a mais simples. e e c 2. Dentro de um bloco de aoes ACTION...END ACTION atravs das funoes GSTART e GKILL c do ISaGRAF. Na primeira forma, o qualicador N indica que o programa-lho inicia-se quando o passo torna-se ativo, e encerra-se quando o passo torna-se inativo. O qualicador S indica que o programa-lho iniciado quando o passo torna-se ativo, e continua sua execuao quando o passo desativado. O e c e qualicador R encerra o programa-lho quando o passo ativado. e

Bibliograa
Contedos do HELP do ISaGRAF, V. 3.30, 1990-1998, CJ International. u

Laboratrio de Informtica Industrial - Profs. Carmela M. P. Braga e Luiz T. S. Mendes - DELT/UFMG - 2008 o a

Você também pode gostar