6
IEC-61131-3 - Vantagens e desvantagens da programação de CLPs Com os avanços da tecnologia, os controladores modernos vão ficando cada vez mais complexos, responsáveis por transmitir e receber um fluxo crescente de informações, mas ainda devem manter o compromisso com a robustez e confiabilidade Rodrigo de Toledo Caropreso Histórico dos Sistemas de Controle Para entender melhor como a norma IEC-61131 foi criada é interessante mostrar rapidamente um pouco da história dos sistemas de controle, mostrando alguns aspectos relevantes dos avanços tecnológicos que ocorreram ao longo dos anos. A primeira necessidade de se desenvolver um sistema de controle surgiu durante a Revolução Industrial (no século XIX) e a solução veio através dos sistemas mecânicos, responsáveis pela automatização de certas tarefas. Apesar de serem uma solução inovadora, estes sistemas tinham a desvantagem de serem específicos a uma determinada tarefa e possuírem uma vida útil relativamente curta. Já no início do século 20, entraram em cena os sistemas baseados em lógica de relés, que permitiam o desenvolvimento de uma lógica de controle mais sofisticada e foram largamente empregados na indústria. Na década de 60, o surgimento dos circuitos integrados revolucionou a Eletrônica, proporcionando também a criação de uma nova geração de sistemas de controle mais modernos e robustos (a vida útil dos sistemas baseados na nova tecnologia era significativamente maior do que aqueles baseados em relés). Quando os primeiros computadores comerciais começaram a se popularizar, sua utilização como controladores de sistemas de grande porte foi cogitada e isso culminou em uma nova 0“revolução” na área de controle (sua principal vantagem era a maior flexibilidade de programação em relação aos sistemas com relés e CIs). A demanda por computadores adequados à realidade das fábricas acabou por tornar o surgimento do CLP uma realidade no início da década de 70. A possibilidade de se rodar um ou mais programas, que podiam ser escritos e compilados em um computador comum e depois transferidos e carregados na CPU do controlador fizeram com que o CLP fosse largamente empregado na indústria e até hoje ele é um dos elementos mais importantes de toda a planta. Os avanços da tecnologia não pararam e vários fornecedores de software apresentaram o conceito do Soft PLC: um software de tempo real que executa o programa de controle em um computador PC padrão, tornando o equipamento (hardware) independente do fabricante. Essa proposta é relativamente nova e ainda não foi adotada pelos fabricantes como um padrão industrial, ou seja, ainda existe incompatibilidade entre programas de controle desenvolvidos por Soft PLCs de fornecedores diferentes. Todo esse avanço também traz consigo uma série de desvantagens que devem ser analisadas e dentre elas é possível destacar:

IEC-61131-3

Embed Size (px)

Citation preview

Page 1: IEC-61131-3

IEC-61131-3 - Vantagens e desvantagens da programação de CLPs

Com os avanços da tecnologia, os controladores modernos vão ficando cada vez mais

complexos, responsáveis por transmitir e receber um fluxo crescente de informações, mas

ainda devem manter o compromisso com a robustez e confiabilidade

Rodrigo de Toledo Caropreso

Histórico dos Sistemas de Controle

Para entender melhor como a norma IEC-61131 foi criada é interessante mostrar rapidamente

um pouco da história dos sistemas de controle, mostrando alguns aspectos relevantes dos

avanços tecnológicos que ocorreram ao longo dos anos.

A primeira necessidade de se desenvolver um sistema de controle surgiu durante a Revolução

Industrial (no século XIX) e a solução veio através dos sistemas mecânicos, responsáveis pela

automatização de certas tarefas. Apesar de serem uma solução inovadora, estes sistemas

tinham a desvantagem de serem específicos a uma determinada tarefa e possuírem uma vida

útil relativamente curta.

Já no início do século 20, entraram em cena os sistemas baseados em lógica de relés, que

permitiam o desenvolvimento de uma lógica de controle mais sofisticada e foram largamente

empregados na indústria.

Na década de 60, o surgimento dos circuitos integrados revolucionou a Eletrônica,

proporcionando também a criação de uma nova geração de sistemas de controle mais

modernos e robustos (a vida útil dos sistemas baseados na nova tecnologia era

significativamente maior do que aqueles baseados em relés).

Quando os primeiros computadores comerciais começaram a se popularizar, sua utilização

como controladores de sistemas de grande porte foi cogitada e isso culminou em uma nova

0“revolução” na área de controle (sua principal vantagem era a maior flexibilidade de

programação em relação aos sistemas com relés e CIs). A demanda por computadores

adequados à realidade das fábricas acabou por tornar o surgimento do CLP uma realidade no

início da década de 70. A possibilidade de se rodar um ou mais programas, que podiam ser

escritos e compilados em um computador comum e depois transferidos e carregados na CPU

do controlador fizeram com que o CLP fosse largamente empregado na indústria e até hoje

ele é um dos elementos mais importantes de toda a planta.

Os avanços da tecnologia não pararam e vários fornecedores de software apresentaram o

conceito do Soft PLC: um software de tempo real que executa o programa de controle em um

computador PC padrão, tornando o equipamento (hardware) independente do fabricante. Essa

proposta é relativamente nova e ainda não foi adotada pelos fabricantes como um padrão

industrial, ou seja, ainda existe incompatibilidade entre programas de controle desenvolvidos

por Soft PLCs de fornecedores diferentes.

Todo esse avanço também traz consigo uma série de desvantagens que devem ser analisadas

e dentre elas é possível destacar:

Page 2: IEC-61131-3

Linguagens de Desenvolvimento Proprietárias: as soluções apresentadas pelos fabricantes,

apesar de similares, apresentam peculiaridades no tocante às linguagens de programação.

Essas diferenças podem resultar em incompatibilidade de hardware, retrabalho e custo

adicional ao usuário de CLP.

Qualidade de Software: com o aumento na taxa de automatização de sistemas, a

complexidade dos programas de controle também cresce e a qualidade de software se torna

uma necessidade para a indústria. A Engenharia de Software precisa atuar de forma cada vez

mais intensa no desenvolvimento de projetos.

Redução de Custos de Software: a padronização de pacotes de software proporciona uma

grande redução de custo.

Portabilidade de aplicações: o mercado de CLPs não possui uma portabilidade de

aplicações tão eficiente quanto os PCs modernos. Entretanto, essa portabilidade garantiria

maior confiabilidade nos sistemas, minimização de retrabalho e conseqüente redução de

custos.

Reutilização de Software: este é um requisito cada vez mais freqüente quando o assunto é

desenvolvimento de sistemas baseados em software. Proporciona todas as vantagens citadas

logo acima.

Uma forma de resolver os problemas propostos acima e atender às necessidades da

comunidade industrial foi adotada pela International Electrotechnichal Commision (IEC), em

1979, baseada na avaliação toda a situação, uma norma que pudesse auxiliar no

desenvolvimento de sistemas.

Norma IEC-61131 – Principais Características

A norma IEC-61131 foi criada para atender a demanda do mercado de controle industrial e

padroniza as múltiplas linguagens, conjuntos de instruções e conceitos existentes no campo

da automação de sistemas. Essa norma é dividida em partes de acordo com a tabela 1.

Page 3: IEC-61131-3

T1 – Partes da Norma IEC 61131.

A norma IEC 61131-3 é a mais importante de toda a tabela, pois trata exatamente de estrutura

de software que deve ser adotada e das principais características que devem ser

implementadas e suportadas pelas linguagens de programação (que ela também define).

Além da criação da norma IEC-61131, foi fundada em 1992, a PLCOpen (www.plcopen.org),

uma associação independente, cuja principal “missão” é tratar de assuntos relacionados à

programação de controle (as informações da tabela 1 acima foram obtidas no site da

PLCOpen). E dentre suas principais atribuições está a divulgação e suporte ao uso da norma

IEC-61131-3, como também a certificação de produtos.

Modelo de Software e linguagens de programação

A norma IEC-61131-3 foi desenvolvida levando-se em conta um aspecto muito importante

para a programação de sistemas complexos: a componentização, ou seja, a capacidade de

decompor o software em partes menores (componentes), capazes de serem gerenciadas

adequadamente e de forma independente (também chamada de modularização).

Além disso, outro conceito muito importante para a produtividade na área de software é o de

“reutilização”. Aliado ao conceito de modularização, esse conjunto se torna uma ferramenta

poderosa para o desenvolvimento de sistemas.

Ao propor seu modelo de software, a norma já inova em sua proposta, mostrando uma visão

diferente em relação ao CLP convencional. Enquanto este utiliza o modelo “1 – Lê entradas;

2 – Executa instruções; 3 – Atualiza saídas”, a norma define um modelo baseado em

multitarefa, onde é possível o processamento de mais de uma tarefa, de forma periódica ou

então baseada em eventos que disparam processos específicos. A figura 1 mostra o modelo

proposto pela norma.

Page 4: IEC-61131-3

F1 – Modelo de Software da Norma IEC 61131.

Cabe aqui a definição dos conceitos mostrados pela figura 1:

-Configuração: define todos os elementos que interagem entre si para executar a lógica de controle.

Normalmente, corresponde ao software necessário para um único CLP, mas pode comportar

diversos controladores;

-Recurso: elemento com capacidade de processamento, responsável pela execução de programas;

-Programa: contém a lógica de controle, escrita em uma das 5 linguagens padrão IEC, definidas pela

norma;

-Tarefas: controlam a execução de programas ou blocos funcionais, de forma periódica ou

engatilhada por eventos (triggers);

-Blocos Funcionais (Function Blocks): elemento-chave da norma IEC-61131. Permite criação de

elementos de software reutilizáveis e programas;

-Caminhos de acesso: permitem a transferência de dados (escrita/leitura) entre diferentes recursos

e/ou configurações.

Além do modelo de software, a norma também define as linguagens de programação a serem

utilizadas, seus elementos comuns, padrões e conjuntos de caracteres, tipos e estruturas de dados,

palavras-chave e identificadores. São 5 as linguagens de programação definidas pela norma:

-Lista de Instruções (IL): linguagem textual de baixo nível, similar ao Assembler, baseada em

acumulador simples. Normalmente utilizada para problemas menos complexos ou como resultado

de compilação de uma linguagem mais complexa;

-Texto Estruturado (ST): linguagem textual de alto nível, similar ao Pascal (ISO 7185), mais fácil de

interpretar e entender. Recomendada para cálculos aritméticos mais complexos, por apresentar

uma lista de instruções superior à IL;

-Diagramas Ladder (LD): linguagem gráfica baseada em diagramas elétricos que

representam contatos e bobinas, seguindo o modelo de lógica de relés. As versões híbridas

desta linguagem contam com blocos funcionais para temporizadores (timers) e contadores,

dentre outros;

Page 5: IEC-61131-3

-Diagramas de Blocos Funcionais (FBD): linguagem gráfica baseada em diagramas de

circuitos que representam blocos, modelando o sistema em termos de fluxo de sinais entre os

elementos de processamento;

-Sequenciamento Gráfico Funções (SFC): linguagem gráfica baseada em técnicas correntes

de descrição de fluxo seqüencial, composta por blocos de ação e transições, similar a uma

“máquina de estados”. O modelo SFC tem suas origens nos estudos das Redes de Petri e é

uma representação adequada para processos de “batelada” (batch).

Dentre as linguagens citadas acima, os diagramas Ladder (figura 2) são utilizados com maior

freqüência na indústria, devido ao fato de estarem diretamente relacionados à lógica de relés,

adotada há muito tempo pelas empresas como lógica de controle. Entretanto, a constante

busca por modelos que possam representar o fluxo do sistema de forma mais ampla, tem

resultado num interesse cada vez maior do mercado em relação às demais linguagens

gráficas, principalmente a SFC.

F.2 – Exemplo de diagrama Ladder, linguagem de programação muito comum em sistemas

de controle.

Vantagens e aplicações da norma

A multitarefa, juntamente com a modularização e elementos que permitem sua reutilização

(oriundos dos conceitos de Programação Orientada a Objetos – OOP), tornam o modelo proposto

pela norma extremamente flexível e poderoso. Ele permite o processamento distribuído e a forma

de representar o mundo real (modelagem do sistema) apresenta vantagens para o desenvolvedor

em comparação ao modelo anterior à criação do padrão IEC-61131, em todas as etapas de

desenvolvimento: captação e tratamento de pré-requisitos, onde o programador já pode criar

“classes de requisitos”, sabendo que poderá representar essas classes e seus processos através dos

“módulos” que as linguagens da norma permitem utilizar; estruturação do sistema, onde o

programador pode criar seus componentes e blocos funcionais de acordo com sua necessidade e

reutilizá-los em desenvolvimentos e projetos posteriores; na implantação, onde o sistema pode ser

dividido em tarefas adequadamente e distribuído em CLPs multiprocessados; e na fase de

manutenção, onde um componente de software pode ser atualizado ou corrigido sem que haja

necessidade de se interferir na lógica completa do sistema, diminuindo o retrabalho e “efeitos

colaterais” no software de controle.

Uma conseqüência da utilização da norma é a exigência de um hardware de controle (CLP) mais

poderoso, com mais memória e capacidade de gerenciamento dinâmico dela (para a alocação de

Page 6: IEC-61131-3

objetos e function blocks). Isso poderia tornar o projeto de um sistema mais oneroso, porém os

benefícios proporcionados pelo modelo de software reduzem os custos nas fases mais

problemáticas do projeto (implantação e manutenção), o que viabiliza a utilização dele em sistemas

industriais.

E de fato isso vem ocorrendo: cada vez mais empresas estão adequando seus controladores de

sistemas à norma IEC-61131, fornecendo soluções de software baseadas nela. Já é possível

encontrar plantas industriais controladas por CLPs rodando sistemas distribuídos em Ladder ou SFC e

fazendo uso de multitarefa preemptiva, seguindo os conceitos do padrão IEC 61131, demonstrando

que esse modelo está realmente sendo aceito e está se firmando cada vez mais (para a alegria dos

programadores).

*Rodrigo de Toledo Caropreso é engenheiro eletricista do departamento de desenvolvimento

eletrônico da Smar Equipamentos Industriais Ltda.