Análise da Melhor Tecnologia para a Implementação de um Editor

Transcrição

Análise da Melhor Tecnologia para a Implementação de um Editor
Análise da Melhor Tecnologia para a Implementação
de um Editor Diagramático Avançado
Pedro Portilha
Braga, Departamento de Informática
Universidade do Minho, Portugal
[email protected]
Abstract.
Keywords: Diagramas, Sinópticos, SCADA, Editor
1 Introdução
A automatização dos sistemas de planeamento e gestão das grandes infra-estruturas
do país são necessárias a fim de evitar erros humanos e diminuir o seu ciclo de
desenvolvimento.
Neste contexto surge na necessidade de modernização de um editor de sinópticos já
existente na empresa EFACEC, a oportunidade do desenvolvimento de um editor de
desenho para sinópticos de grandes dimensões e com funcionalidades mais actuais e
poderosas.
Computed Aided Design (CAD) ou desenho auxiliado por computador, é uma
tecnologia utilizada cada vez mais por engenheiros, designers, arquitectos e muitos
outros profissionais para facilitar o processo de desenho.
Esta tecnologia tornou-se especialmente importante devido a proporcionar grandes
benefícios como diminuir os custos de desenvolvimento do produto e encurtar
grandemente o ciclo de desenho.
CAD possibilita aos seus utilizadores a criação de projectos no ecrã, a sua
impressão, exportação e entre muitas outras possibilidades a capacidade de guardar
para futuras edições poupando tempo com os seus desenhos.
1.1 Motivação e Objectivos
Os objectivos esperados com este projecto são a minimização dos recursos gastos na
concretização do projecto, sendo estes tanto financeiros como temporais, bem como
conseguir incorporar no produto uma tecnologia ou Framework que traga mais
benefícios e funcionalidades ao utilizador final.
1.2 Estrutura do Artigo
Irei começar por descrever o problema aqui em questão
2 Descrição do Problema
Os requisitos do componente são de extrema importância e foram devidamente
documentados no inicio do projecto a fim de levar uma concretização que
corresponde se as necessidades actuais e futuras.
A aplicação fundamental deste componente será a edição interactiva WYSIWYG
de diagramas sinópticos de instalação para aplicação aos seguintes domínios:
Subestações de Distribuição (SED), Subestações de Transporte (SET), Subestações de
Tracção e Catenárias (SEF), Pequenas Redes de Distribuição Integradas (RD),
Centrais Eólicas (CE), Centrais Hídricas (CH) e instalações afins.
Os mecanismos, padrões e metáforas de edição são próximos dos disponibilizados
pelas aplicações de desenho vectorial existentes no mercado.
O modelo gráfico e o editor não limitam estruturalmente o número máximo de
elementos gráficos presentes de qualquer tipo e em qualquer âmbito (desde o número
de páginas ou símbolos até ao número de elementos primitivos ou elementos de
interactividade).
Perfis de Utilizadores:
Engenheiro de automação capaz de conceber e configurar sistemas de
automação nos quais a componente de visualização gráfica (HMIs de instalação)
também se insere.
Desenhador de Sinópticos, técnico com competências de desenho gráfico
capaz de utilizar ferramentas de ilustração gráfica e elaborar diagramas sinópticos.
2.1 Sinópticos
Sinópticos são diagramas que representam ambientes SCADA, isto é, sistemas
reais que oferecem um HMI (Human – Machine Interface) de modo a suportar acções
dos seus utilizadores, como alternar variáveis, verificar estados.
Fig. 1. Barragem do Alqueva (fonte: Importador de SCATEX)
2.2 SCADA
SCADA é o acrónimo para Sistemas de Supervisão e Aquisição de Dados,
(proveniente do seu nome em inglês Supervisory Control and Data Aquisition) são
sistemas que utilizam software para monitorar e supervisionar as variáveis e os
dispositivos de sistemas de controlo conectados através de dispositivos específicos.
Estes sistemas podem assumir topologia monoposto, cliente/servidor ou múltiplos
servidores/clientes. Actualmente tendem a libertar-se de protocolos de comunicação
proprietários, como os dispositivos PACs (Controladores Programáveis para
Automação), módulos de entradas/saídas remotas, controladores programáveis
(CLPs), registradores , entre outros, para arquitecturas cliente-servidor OPC (OLE for
Process Control). Para os próximos anos, a tendência dos sistemas de supervisão será
a supervisão remota, usando sistemas de telemetria através de tecnologias sem fios,
como telemóveis, rádio ou satélite. Através destas tecnologias, os sistemas SCADA
terão a capacidade de controlar processos industriais numa planta de trabalho local, ou
etnologicamente espalhada. Aplicações de logística e controle de frotas são um bom
exemplo prático, assim como controle de distribuição de serviços públicos, como
água, esgotos, gás ou energia. SCADA indica precisamente um sistema com cobertura
geográfica, em alternativa a topologia DCS (Distributed Control System) que actua no
mesmo campo, mas com características locais. A diferença é importante, porque no
SCADA implica na gestão dos protocolos de transmissão típicos de uma rede WAN
(WAN) e com dados temporais mais complexos. Como exemplo podemos comentar
que o sistema de controlo e supervisão de uma rede eléctrica é tipicamente um
SCADA, um sistema do mesmo tipo dedicado a uma refinaria é um DCS.
(Adaptado de [Wikipedia08])
2.3 Alternativas Tecnológicas
Foi seleccionado um conjunto de tecnologias para análise
Algumas das tecnologias nesta lista foram incluídas como o propósito de
estudo de boas maneiras de edição de diagramas, como o OpenOffice, que não pode
ser integrado no Automation Studio.
•
•
•
•
•
•
•
•
•
•
•
Essential Diagram: www.syncfusion.com
Ilog Diagram for. Net: www.ilog.com
Nevron Diagram for .Net: www.nevron.com
Aurora XAML Editor: www.mobiform.com/products/Aurora/aurora.htm
Expression Studio 2: www.microsoft.com/expression/
Microsoft Visio Studio 2007: office.microsoft.com/visio
Inkscape: www.inkscape.org
Netron: www.orbifold.net/default/?page_id=1272
GraphSquare: www.orbifold.net/default/?page_id=1315
OpenOffice Impress: www.openoffice.org
OpenOffice Draw: www.openoffice.org
2.3.1 Implementação de uma solução de Raiz
Para um maior entendimento do custo e das características que o desenvolvimento
de um projecto especialidade.
A solução do problema pode advir de várias vertentes, seja de uma integração de
uma framework já existe no mercado ou do desenvolvimento de uma solução “de
raiz”.
Fig. 2. Protótipo até a data
2.2.1 Windows Presentation Framework (WPF)
Numa anterior análise realizada a uns anos com o mesmo objectivo deste projecto
([AdrianoMeira07]), esta tecnologia é referida como umas das tecnologias mais
enquadradas nas necessidades do projecto de implementação do Editor de Sinópticos.
WPF, ou anteriormente conhecida como Avalon, é o sistema gráfico da framework
.Net 3.0 formalmente conhecida por WinFX.
// Falta de documentação
3 Parâmetros de Avaliação
Neste capítulo vamos falar das características que foram definidas importantes, ao
mesmo essenciais para a análise do custo da adopção das diferentes alternativas.
A fim da quantificação e de uma melhor análise de um motor de edição
diagramática foram observados e registados vários valores de forma
3.1 Características funcionais
•
•
•
•
•
•
Edição Propriedades Gráficas
Primitivas básicas (Figuras Geométricas e Polilinhas)
Widgets (Botões, Imagens, ComboBoxs…)
Texto e Manipulação Inplace
Simbologia (Possibilidade de incorporar outros símbolos)
Animações Real Time (Eventos e Animações)
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Layers
Zoom / Pan
Undo / Redo
Grelha
Transformações (Rotação, Skew …)
Painel Ferramentas
Salvar para ficheiro
Impressão
Importação (SVG, Sino,..)
Exportação (SVG, Bitmap)
Régua (Para expansão futura)
Master Pages (Para expansão futura)
Conectividade
Routing
Linguagem de Codificação
Licença
Flexibilidade de Utilização (Possibilidade de alterar/optimizar o código fonte)
Preço
3.2 Desempenho / Escalabilidade
Considera-se como páginas sinópticas de dimensão elevada aquelas que apresentam
cerca de:
• 20 Camadas
•
•
4.000 Primitivas
1500 Animações
*
Considera-se como páginas sinópticas de dimensão mais frequente aquelas que
apresentam cerca de:
• 6 Camadas
•
•
2.000 Primitivas
600 Animações
*
Considera-se como páginas sinópticas de dimensão reduzida aquelas que apresentam
cerca de:
• 2 Camadas
•
•
150 Primitivas
50 Animações
*
* Considera planificação de símbolos e agrupamentos e inclui figuras de todas as tipologias (primitivas, grupos,
etc.)
Custo de licenças mais o esforço de desenvolvimento/integração necessário para o
produto final
Expansibilidade
Master Pages, Régua, Conectividade e Routing de Ligações.
Gostava de ver no relatório de avaliação uma real matriz/tabela em que cada linha
identifica o parâmetro/critério em avaliação, em cada coluna uma alternativa
tecnológica e, naturalmente, nas células o resultado da avaliação realizada. Assim a
análise é mais evidente.
- Quanto ao desempenho não esquecer avaliar a edição de um ou n objectos em
simultâneo para as várias acções de edição identificadas (selection, move, resize, prop
edit, etc.).
- Quanto à transformação pensar na geração de SVG, importação de formato sino e
importação de um formato vectorial existente no mercado, esses serão os targets mais
importantes.
4 Comparação e Resultados
Neste capítulo vamos mostrar os resultados obtidos nas diferentes características
observadas nas diferentes características apresentadas no capítulo anterior.
Características da Máquina de Testes:
Sistema Operativo:
Microsoft Windows Vista Bussiness
Processador:
Mobile DualCore Intel Core 2 Duo T5500, 1666 MHz (10 x 167)
Memoria Principal:
2048 MB
Processador Gráfico:
nVIDIA GeForce Go 7400 (HP)
4.1 Características funcionais
Ex
Esse
Ilog
Nevr
Aur
pressi
ntial
Diagra
on
ora
Visi
on
Diagra m for Diagram XAML
o 2007
Blend
m
.NET for .Net Editor
2
+
+
+
+
+
+
O
O
N
G
Inks
O
O
etro raph
cape
Dra Imp
n
2
w ress
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
SVG
-
XA
ML
Bitm
ap
SVG,
Bitmap
?
XA
ML
+
DW
SV
G,
G,
SVG, XAML
Bitma
,
p
Bitmap
DW
G,
SV
SVG,
G,
Bitma Bitmap
p
+
+
?
?
+
+
+
+
+
-
+
-
-
+
+
+
-
+
+
+
+
-
+
+
+
+
C#,
C#,
C#,
WinFor WinFor
WPF
ms
ms
C#,
WPF
Lice
nciame
nto
WP
F
C+
+
Pro
Pro
prietár prietári
ia
a
Sou
rce
Code /
Binary
Clos
e
Source
Close
Source
Syn
cFusio
n
Ilog
Nevr
on
C
C
C
C
#
#,
C++
++, ++ .
,GD WP
Java Java
I+
F
F
ree
S
S
Clo
O
O
Clo
Ope ourc ourc
se
pen pen
se
n
e
e
Sourc
Sou Sou
Source Source Cod Cod
e
rce rce
e
e
0
0
0
Aur
ora
4.2 Desempenho e Escalabilidade
5 Conclusões
Para concluir, a implementação de raiz de um editor gráfico que cumprisse todos
os requisitos beneficiaria muito com a implementação de raiz com a tecnologia
Windows Presentation Foundation.
6. Reconhecimentos
Eu gostaria de agradecer…lol
Bibliografia
1.
[Wikipedia08] Vários autores - SCADA, Wikipedia, the free encyclopedia,
Wikimedia Foundation, Janeiro 2008. (http://pt.wikipedia.org/wiki/SCADA)
2.
[AdrianoMeira07] Adriano Meira - Automation Studio Designer – Editor Gráfico
, EFACEC, Agosto 2007
3.
[RogérioPaulo08a] Rogério Paulo – Inpact, Requisitos e Especificações Técnicas
para Editor de Sinópticos, Outubro de 2008
4.
Anexo: Gráficos da comparação