Você está na página 1de 7

NORMA IEC 1131-3

Padronizao em Programao de Controle Industrial


Considerando-se o reconhecimento da necessidade de um padro para CLPs, por parte da comunidade industrial internacional, em 1979, foi designado um grupo de trabalho com o IEC (International Electro-technical comission) voltado para este propsito. Este grupo tinha como objetivo analisar o projeto completo de CLPs (inclusive hardware), instalao, testes, documentao, programao e comunicaes. Este grupo designou 8 frentes de trabalho para desenvolver diferentes partes do padro para CLPs. A primeira parte do padro foi publicada em 1992 (General Information conceitos e definies de terminologias bsicas). A parte 3, referente s linguagens de programao, foi publicada em 1993. A IEC 1131-3 o nico padro global para programao de controle industrial. Uma interface de programao padro permite a pessoas com diferentes habilidades e formaes, criar elementos diferentes de um programa durante estgios diferentes do ciclo de vida de um software: especificao, projeto, implementao, teste, instalao e manuteno. O padro inclui a definio da linguagem Sequential Function Chart (SFC), usada para estruturar a organizao interna do programa, e de quatro linguagens: Lista de Instruo (IL), Diagrama Ladder (LD), Diagrama de blocos de funes (FBD) e Texto Estruturado (ST). Uma maneira elegante de se olhar para o padro IEC 1131-3 dividindo-o em duas partes: Elementos comuns; Linguagens de Programao; Analisando-se com mais detalhes cada uma destas partes:

Elementos Comuns
Tipos de dados
Usado para definir o tipo de dado de qualquer parmetro, evitando-se dividir tipos diferentes de variveis, por exemplo. Os tipos de dados so: booleana, inteiro, real, byte e word, mas tambm data, hora e string. Baseado nestes tipos, possvel tambm definir-se um tipo de dado prprio, chamado tipo derivado de dado. Por exemplo, pode-se definir um tipo de dado como sendo analog input channel.

Variveis
Variveis podem ser atribuidas somente para explicitar endereos de hardware (entradas e sadas) em configuraes, recursos e programas. Isto garante um alto nvel de independncia do hardware, viabilizando sua reutilizao. O uso dos nomes das variveis normalmente limitado POU em que ela foi declarada, e podem, portanto, serem reusadas em outras POUs, sem conflito. Para que uma varivel seja global, deve ser declarada como tal.

Configurao, Recursos e Tarefas

Profa. Carmela Maria Polito Braga DELT / EEUFMG

Para entender melhor estes conceitos, vamos nos referenciar figura 01, que mostra o modelo de software proposto pelo padro IEC 1131-3.

Configuration Resource
Task Program Task Program
FB FB

Resource
Task Program Task Program
FB FB

Figura 01: Modelo de software proposto pelo padro IEC 1131-3 Configurao (configuration): formulao de um software completo, requerido para resolver um problema particular de controle. Uma configurao especificada para um tipo particular de sistema de controle, incluindo os recursos de hardware. Para uma dada configurao pode-se definir um ou mais recursos (resources). Recursos (resources): corresponde a uma facilidade de processamento que capaz de executar programas baseados no padro IEC. Para um dado recurso uma ou vrias tarefas podem ser definidas. Tarefas (tasks): controlam a execuo de um conjunto de programas e/ou blocos de funo. Podem ser executadas periodicamente ou na ocorrncia de algum evento (trigger), como, por ex., a mudana de uma varivel para uma regio limite. Programas (programs): construidos a partir de elementos diferentes de software, escritos em qualquer linguagem definida pelo padro IEC. CLP convencional: contm um recurso, executa uma nica tarefa, controlando um nico programa, executado em malha fechada. IEC 1131-3: oferece muito mais possibilidades que isto. Abre novas perspectivas para o futuro. Incluindo multiprocessamento e programas de execuo controlada por evento.

Unidades de Organizao de Programas (Program Organization Units - POU) Funes (Functions) Blocos de funes (Functions blocks diagrams - FBD)

IEC define algumas funes padro (ADD, ABS, SQRT, SIN, COS) e funes definidas pelo usurio.

Profa. Carmela Maria Polito Braga DELT / EEUFMG

So equivalentes a circuitos integrados, Ics, representando uma funo de controle especializada. Eles contm dados e algoritmo, o que equivale a dizer que possuem memria passada ( o que consiste em uma das diferenas entre uma FBD e uma funo). Como um CI ou uma caixa preta, eles possuem uma interface bem definida. Permite separar bem os nveis de programao e manuteno. Ex.: PID. So altamente reutilizveis.

Programas (Programs)

Tipicamente, um programa consiste em uma rede de funes (functions) e blocos de funo (function blocks), que podem trocar dados. Funes e blocos de funes so blocos de construo, bsicos, contendo uma estrutura de dados e um algoritmo.

Linguagens de Programao
Grficas

Sequential Function Chart (SFC): descreve graficamente o comportamento sequencial de um programa de controle. derivado de redes de Petri e do Grafcet IEC 848. O SFC estrutura a organizao interna de um programa, ajudando a decompor um problema de controle em partes gerenciveis, enquanto mantm uma viso global da soluo do problema. Consiste em um conjunto de steps, ligados a blocos de ao e transies. Cada step representa um estado particular do sistema sob controle. A transio associada com a condio, que, quando verdadeira, desativa o step anterior a ela e ativa o step seguinte. Cada elemento pode ser programado em qualquer linguagem IEC, inclusive o prprio SFC. possvel a implementaao, inclusive, de sequncias paralelas, como usualmente requerido em aplicaes de processos batch.
STEP 1 N Transio 1 STEP 2 S Transio 2 STEP 3 Esvazia Enche

Figura 02: Programa SFC Diagrama Ladder (Ladder Diagram LD) Blocos de Funo (Function Block Diagram FBD)

Textuais
Lista de Instrues (Instruction List IL) Texto Estruturado (Structured Text ST)

Profa. Carmela Maria Polito Braga DELT / EEUFMG

LD A Lista de Instrues ANDN B ST C

Texto Estruturado C = A AND NOT B

Diagrama de Blocos A B

A B Diagrama Ladder

C ( )

Figura 03: Exemplo de um mesmo cdigo implementado nas 4 linguagens IEC

A figura 03 mostra um mesmo pedao de cdigo implementado nas quatro linguagens IEC. A escolha da linguagem de programao dependente de: background o programador; do problema a ser tratado; do nvel de descrio do problema; da estrutura do sistema de controle; da interface para outros departametos/pessoas; Diagrama Ladder tem suas razes nos EUA. baseado na representao grfica de logica de rels em escada. Lista de instrues a contra-parte europia. Como linguagem textual semelhante ao assembler. Diagrama de blocos muito comum para a indstria de processos. Ele expressa o comportamento de funes, blocos de funes e programas como um conjunto de blocos grficos interconectados., como em um desenho de circuito eletrnico.Assemelha-se representao de um sistema em termos do fluxo de sinais entre os elementos de processamento. Texto estruturado uma linguagem muito poderosa com suas razes em Ada, Pascal e "C'. Pode ser usada na definio de blocos de funo complexos, que podem ser utilizados com quaisquer outras linguagens, e no detalhamento das aes e transies de um programa SFC.

Consideraes Finais
O padro IEC 1131-3 est provocando grande impacto na indstria de controle industrial. Isto, visivelmente, est acontecendo para os CLP's convencionais, que comeam a apresentar ambientes de programao com mais de uma linguagem (dentre as recomendadas pela norma, o GE-Fanuc 90-30, por exemplo, oferece alm do Ladder, a lista de instrues), mas tambm nos pacotes de softlogic (como o IsaGraf) para sistemas de controle baseado em PC (utilizando-se apenas um rack remoto de
Profa. Carmela Maria Polito Braga DELT / EEUFMG 4

I/O para aquisio de dados), incluindo os pacotes SCADA (Cimplicity, da GE-Fanuc, por exemplo, oferece a linguagem SFC). Fabricantes de CLP convencionais tambm j oferecem pacotes de softlogic (fxControl, da GE-Fanuc, por exemplo) e hardware para I/O apenas (Versamax, da GEFanuc, por exemplo. Mas tambm, os fornecedores de software SCADA esto oferecendo seus pacotes de softlogic ( o Wizcontrol, da Wiscon, por exemplo). Isto deixa claro que embora ainda muito precisa ser feito at que o padro se torne de fato, um padro na programao de controle de processos, ele tem tido um impacto muito grande sobre o setor, ganhando adeso crescente, e trazendo inmeros benefcios tanto para o desenvolvimento de projetos quanto para a manuteno dos sistemas desenvolvidos.

Profa. Carmela Maria Polito Braga DELT / EEUFMG

O pacote IsaGraf
O IsaGraf um ambiente de de desenvolvimento de Soft Logic, em windows, independente de hardware, baseado no padro internacional para linguagens de programao de controle e automao , IEC 61131-3. Foi desenvolvido pela CJ International. Ele oferece um ambiente de trabalho (Workbench) incluindo as cinco linguagens de programao de CLPs recomendadas pela norma, quais sejam: Sequential function chart (SFC), Function blocks diagram (FBD), Ladder diagram (LD), Structured Text (ST), e Instruction List (IL). Alm destas cinco, o pacote IsaGraf inclui tambm a linguagem Flow chart (FC). Em agosto de 1996, o editor de IsaGraf recebeu o certificado de consentimento (compliance) da organizao PLCopen. O IsaGraf composto de duas partes: a bancada de trabalho (Workbench) e o alvo (hardware ) de execuo de programas (Target). O workbench oferece um ambiente completo de programao de soft Logic sob windows 3.1x, 95, 98, NT (e todos os pacotes de emulao de windows). Oferece tambm ferramentas de depurao e simulao dos programas, modificao dos mesmos e monitorao on-line. As aplicaes geradas possuem portabilidade que asseguram ao Target executar a aplicao em qualquer hardware (conhecido como Target Independent Code TIC).

Regras de Execuo
O IsaGraf um sistema sncrono. Todas as operaes so disparadas por um relgio. A durao bsica do relgio chamada de tempo de ciclo. A hierarquia dos programas dividida em quatro sees ou grupos: BEGIN, SEQUENTIAL, END e FUNCTIONS. As operaes bsicas processadas durante um ciclo so: Os programas das sees BEGIN e END descrevem operaes cclicas. Eles no dependem do tempo. Os programas da seo SEQUENTIAL descrevem operaes sequenciais, onde a varivel tempo aparece, explicitamente, para distinguir as operaes bsicas. Os programas da seo BEGIN so sistematicamente executados no incio de cada ciclo de execuo. Os programas da seo END so sistematicamente executados a cada fim de ciclo de execuo. Os programas da seo SEQUENTIAL, implementados em SFC ou FC, so executados com base nas regras dinmicas destas linguagens. Programas das sees BEGIN e END no podem ser escritos em SFC ou FC. Programas da seo FUNCTION so sub-programas que podem ser chamados por outro programa no projeto. Um programa da seo FUNCTION pode chamar outro programa desta seo. Obs.: Um programa pode ser totalmente executado somente no BEGIN.

Profa. Carmela Maria Polito Braga DELT / EEUFMG

L variveis de entrada

Processa os programas da seo BEGIN

Processa os programas da seo SEQUENTIAL de acordo com as regras de evoluo de SFC/FC

Processa os programas da seo END

Atualiza os dispositivos de Sada

Metodologia de Projeto
Criar um projeto (no menu Project Management, em File/Open/New/ nomeprojeto); Inicia-se com a preparao de uma especificao detalhada do projeto criado (referncia, autor, data, verso, descrio). Abrir o projeto com duplo clique no nome ou no menu File/Open. 1. Criar a base de dados, ou declarar as variveis e seus tipos (no menu do programa em File/Dictionary). 2. Criar novo programa, quantos desejar dentro do projeto, definindo, na criao, a seo de que far parte, bem como, a linguagem de programao a ser utilizada no seu desenvolvimento (no menu do programa em File/New). 3. Editar os programas; 4. Verificar (no menu do programa Make/Verify, ou clicando no cone correspondente na segunda linha do menu). 5. Conexo de I/O, que dependente do hardware externo de aquisio (no menu do programa Project/ I/O conection ou clicando no cone correspondente na segunda linha do menu. Cuidar para usar E/S simuladas no teste do programa); 6. Compilar o programa (no menu do programa Make/Make application ou no cone correspondente na segunda linha do menu). 7. Simular o programa (no menu do programa Debug/Simulate ou no cone correspondente na segunda linha do menu). Para definir previamente quais programas sero abertos no momento da simulao, ir no menu do programa Debug/Workspace e selecionar quais programas devem ser abertos. 8. Se desejado, desenvolver interface grfica do processo, por emio da cirao de um Spotlight.

Profa. Carmela Maria Polito Braga DELT / EEUFMG

Você também pode gostar