SA – Soluçþes em Automação, S.A. 5FM t 'BY JOGP!TB POMJOF QU t XXX TB POMJOF QU
INFORMAĂ‡ĂƒO TÉCNICO-COMERCIAL
OS BENEFĂ?CIOS DE DESENVOLVIMENTO DE APLICAÇÕES ORIENTADAS A OBJECTOS PARA SISTEMAS DE SUPERVISĂƒO E SCADA (1.ÂŞ PARTE) 1. VISĂƒO GERAL Existem vĂĄrias diferenças fundamentais nos sistemas SCADA e supervisĂŁo HMI (Human Machine Interface), entre os que sĂŁo baseados em desenvolvimento orientado a objectos e o tradicional desenvolvimento baseado em Tags. Neste artigo, iremos diferenciar as duas metodologias.
2. INTRODUĂ‡ĂƒO As arquitecturas baseadas em Tag existem hĂĄ muitos anos no mundo da computação. O desenvolvimento orientado a objectos tambĂŠm tem vindo a ser usado jĂĄ hĂĄ algum tempo. Ambos sĂł agora estĂŁo a começar a evoluir, no processo de sistemas SCADA e supervisĂŁo HMI.
3. DEFINIÇÕES As seguintes definiçþes irĂŁo aparecer ao longo do artigo. - Programação Orientada a Objectos: Programação Orientada a Objectos (OOP) ĂŠ um modelo de linguagem de programação organizada em torno de “objectosâ€? em vez de “acçþesâ€?, e em dados em vez de lĂłgica. Historicamente, os programas eram vistos como um procedimento lĂłgico que recebem dados das entradas, processam e produzem dados de saĂda. O desafio da programação era visto como a forma de escrever a lĂłgica, e nĂŁo como definir os dados. Em contrapartida, a programação orientada a objectos preocupa-se com os objectos que queremos manipular, em vez da lĂłgica necessĂĄria para manipulĂĄ-los. - Componente: Na programação orientada a objectos e tecnologia de objectos distribuĂdos, um componente ĂŠ um bloco de construção do programa, que pode ser combinado com outros componentes, de um mesmo computador ou de outros, que estejam ligados numa rede distribuĂda, de modo a formarem uma aplicação. Os componentes podem ser distribuĂdos por servidores diferentes, dentro de uma rede, e podem comunicar uns com os outros para executar serviços. Exemplos: - Um botĂŁo, num interface grĂĄfico do utilizador; - Uma calculadora de juros; - Um interface para uma base de dados -
-
Recipiente: Os componentes funcionam dentro do contexto de um recipiente. Exemplos: - Servidores Web; - Servidores de aplicaçþes; - Base de dados; Componente baseado em objecto: Este termo refere-se a um sistema que usa um desenvolvimento orientado a objectos, para produzir uma aplicação modular, que pode ser distribuĂda atravĂŠs de qualquer quantidade de recursos computacionais. Como a ligação entre o componente, o ambiente de desenvolvimento e o ambiente Runtime ĂŠ mantida, as mudanças incrementais podem ser feitas sem ter de interromper o sistema inteiro.
-
Replicação: Este termo refere-se à criação de componentes, a partir do modelo de objecto; Propagação das Alteraçþes: Na programação orientada a objectos, este termo refere-se ao processo de alteração de um objecto modelo e a sua distribuição selectiva para uma aplicação, para vårias aplicaçþes ou para todo o sistema.
4. SISTEMA BASEADO EM TAG VERSUS SISTEMA DE COMPONENTES ORIENTADO A OBJECTOS 4.1. Sistema baseado em Tag Desde a criação dos sistemas HMI baseados em PC, e dos sistemas de supervisĂŁo SCADA, o desenvolvimento do acesso a dados, scripts, alarmes e anĂĄlise dos dados foi baseado no conceito das Tags. Embora esta abordagem possa ser simples e portĂĄtil de um projecto para outro, um ambiente baseado em Tag utiliza um “namespaceâ€? plano, o que ĂŠ uma lacuna, porque os elementos individuais nĂŁo podem ser ligados ou organizados em estruturas mais inteligentes, com relacionamentos e interdependĂŞncias internas. As alteraçþes das listagens das Tags sĂŁo geralmente executadas externamente ao ambiente de desenvolvimento, e estas modificaçþes podem ser feitas atravĂŠs de um arquivo de texto ou em ferramentas como o Microsoft Excel, sendo seguidamente reimportadas para a aplicação. A reutilização de um sistema baseado em Tag, ĂŠ geralmente aplicada atravĂŠs de referĂŞncias dinâmicas ou referĂŞncias cliente-servidor. O sistema quando se encontra em Runtime, possui grĂĄficos comuns contendo scripts que alteram as Tags. Como a estrutura da aplicação ĂŠ simples, o utilizador ao fazer alteraçþes numa Tag necessita de analisar todo o sistema, de modo a poder verificar quais as alteraçþes provocadas. 4.2 Sistema de componentes orientado a objectos O conceito de componente ou desenvolvimento orientado a objectos ĂŠ oriundo do mundo da Tecnologia da Informação (TI). O objectivo era fornecer ferramentas que libertariam o tempo de desenvolvimento, uma programação de tarefas repetitivas, e ao mesmo tempo maximizar a reutilização, atravĂŠs do desenvolvimento de componentes comuns. Como era de esperar, estas ferramentas nĂŁo se encaixaram totalmente no ambiente industrial, e os integradores de sistemas e engenheiros de produção nĂŁo sĂŁo os programadores tĂpicos de computadores. Para alĂŠm disso, existem tambĂŠm algumas diferenças fundamentais entre a arquitectura de TI e aplicaçþes de automação da produção. Por exemplo, as aplicaçþes TI envolvem tipicamente acesso a bases de dados gerais, baseadas em interfaces com formulĂĄrios, que realizam operaçþes como: banco online, relatĂłrios de negĂłcios, gestĂŁo de RH, contabilidade financeira ou simplesmente a verificação de informação estatĂstica. robĂłtica [47]