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 1


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

Resource Resource

Task Task Task Task

Program Program Program Program

FB FB 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)
IEC define algumas funes padro (ADD, ABS, SQRT, SIN, COS) e funes definidas pelo
usurio.
Blocos de funes (Functions blocks diagrams - FBD)

Profa. Carmela Maria Polito Braga DELT / EEUFMG 2


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 Enche

Transio 1

STEP 2
S Esvazia

Transio 2

STEP 3

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 3


Lista de Instrues Texto Estruturado

LD A

ANDN B C = A AND NOT B

ST C

Diagrama de Blocos Diagrama Ladder

A C A B C
( )
B

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

Profa. Carmela Maria Polito Braga DELT / EEUFMG 4


softlogic (como o IsaGraf) para sistemas de controle baseado em PC (utilizando-se apenas um rack
remoto de 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 GE-Fanuc, 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 5


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 6


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

1. 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.
2. Criar a base de dados, ou declarar as variveis e seus tipos (no menu do programa em
File/Dictionary).
3. 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).
4. Editar os programas;
5. Verificar (no menu do programa Make/Verify, ou clicando no cone correspondente na segunda
linha do menu).
6. 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);
7. Compilar o programa (no menu do programa Make/Make application ou no cone
correspondente na segunda linha do menu).
8. 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.
9. Se desejado, desenvolver interface grfica do processo, por emio da cirao de um Spotlight.

Profa. Carmela Maria Polito Braga DELT / EEUFMG 7

Você também pode gostar