Você está na página 1de 5

Guia de Desenvolvimento ScadaBR

APRESENTAO
O ScadaBR um software para aquisicao e supervisao de dados obtidos a partir de
um instrumento de medicao. Os modulos essenciais do scadabr compreendem as
seguintes funcionalidades:
- leitura de variveis de transdutores no padro modbus (aquisicao de dados em
instrumentos de medicao que utilizam o protocolo modbus)
- registro peridico das variveis lidas (armazenamento dos dados adquiridos)
- correo de "offset" e "ganho" para as medies (permite facil ajuste de
configuracoes de medicao, tal como ganho e offset entre outras)
- visualizao de variveis via Internet, atualizadas a cada 1 minuto
(monitoramento e visualizacao grafica das variaveis medidas)
- visualizao de grficos com histrico das medies, por varivel e por
perodo
- suporte experimental a "variveis calculadas"
-(acredito que podemos colocar mais umas coisas aqui, enfatizando nossas
features, coisas que os outros nao tem, por exemplo, ???. Facilidade de operacao
e interface grafica amigavel, afinal, a maior parte desses software scada que a
gente ve na net me parecem um tanto complicado em termos de interface. O que
quero dizer eh que um usuario nivel medio (que jah tenha configurado algum
software) deve ser capaz de baixar nosso software e usa-lo...
ESTRUTURA
--------O ScadaBR composto dos seguintes mdulos:
1. Base de Dados (armazenamento e configuraes)
2. ScadaBR Core (Ncleo do Sistema)
- modbus server
- tags manager
- logger
3. ScadaBR Web (Interface do Usurio)
(podemos dividir os modulos responsaveis por cada operacao, assim sendo,
teriamos modulos de aquisicao, monitoramento e visualizacao.)
-Aquisicao
-remote server
-Monitoramento
-tag manager
-logger
-alarm
-analyser
-Visualizacao
-webapp
-guiapp

DEPENDENCIAS
----------mono ou .net framework
maquina virtual java (jre)
servidor apache com modulos para php e mysql
servidor xsp
OBS: testado em todas as versoes mais recentes desses componentes

INSTALAO

---------As instrues a seguir se referem a instalao no Debian 4, podendo ser adaptado


para outras distribuies (ex ubuntu)
Passo-a-passo:
1. instalao apache2, php5 (com suporte gd), mysql 5
deve ser feito conforme instrues de cada pacote
exemplo: apt-get install apache2 php mysql
2. instalao mono, xsp2 (>= 1.9)
3. cpia dos arquivos da pasta "web" para a pasta pblica do apache (exemplo
/var/www/)
4. importar o banco para o mysql a partir do arquivo scadabr.sql
5. configurar os mdulos MCADataAnalyzer, MCALogger, ModbusRemoting e WebTags
usando os respectivos arquivos "*.config"
P-a-P:
1. certifique-se de todas as dependencias estao funcionando corretamente.
2. transforme a pasta ScadaBR em um servidor
EXECUTANDO O SCADABR
-------------------Abra um terminal e execute, a partir da pasta scadabr-0.01:
./runModbusRemoting &
./runWebTags
A partir de um segundo terminal executar na pasta scadabr-0.01:
./runMCALogger
PERSONALIZAO
-------------As configuraes de variveis, registradores, ganho e offset etc. esto na base
de dados mysql. Recomenda-se configurar o sistema utilizando um front-end como o
phpMyAdmin.

Remote
Introducao:
OpacoteScadaBr.Remotedestinadoaaquisicaodedadosdeuminstrumentodemedicaoquese
comunica via protocolo modbus com o computador. Com o pacote ScadaBR.Remote o
desenvolvedorcapazdeobterosdadosatravesdaleituraespecificadeumenderecoeregistrador,
metodoestequepassadoporumainterfaceremotaviaTcp.
DiagramadeClasse:

Configuracao:
Opacote ScadaBR.Remote.RemotingServer possui2arquivos deconfiguracao, umresponsavel
pelapartedemonitoramentodoservidorremotoeoutropelapartedecomunicaodoservidorcomo
canal Tcp(portadefault=9999)disponibilizado etambem comoenderecododisposivoserial
(enderecodefault=/dev/ttyS0).
NopacoteRemotingClientasconfiguracoessaoreferentesaportaTcpabertapeloservidor.(no
caso=9999)
Utilizacao:
Parautilizacao final docomponentebastarodalocomocomando monoRemotingServer.exe.E
possiveltambem,abriroprojetonaIDEMonoDeveloperodaratravesdaIDE.
Instalacao:
Para que o componente inicialize junto com o sistema operacional eh necessario configurar
manualmentecadaSO. (mecompromentoemmudaroqueestaescritoaquiparaapenas:rodeo
arquivoinstall.exe;))
TagManager

Introducao:
O pacote ScadaBr.Webservice destinado a aquisicao de dados como cliente do componente
Remoteetambempelofornecimentodewebmetodosviahttp.OpacoteAquisitorodesenvolvedor
capazdeobteros dados atravesdaleituraespecificadeumenderecoeregistradorapenaspelo
nomedetagcorrespondenteacadaamostra,metodoestequepassadoporumainterfaceremota
viawebservice.Podeserutilizadoparaobterinformacoesdeconexaocombancodedados.
DiagramadeClasse:

Configuracao:
Aconfiguracaoapriorirelativaaconexaocomobancodedados.
Utilizacao:
Parautilizacaofinaldocomponenteexistemdiversasformasdetransformaloemumwebservice.
Sevocejusaoservidorxspemcomumapastaespecifica,bastacopiaropacoteTagManagerpara
dentrodapastarootdoseuservidorxsp.Outramaneira(linux)irateolocalondeestaapasta
TagManagercomoterminalerodarocomandoxsp2port8080,dessaformaosmetodosficarao
disponiveisnoseuhostlocalnaporta8080.possiveltambemrodaroscriptrunlocalizadodentro
dapastaTagManager.Epossiveltambem,abriroprojetonaIDEMonoDeveloperodaratravesda
IDE.
Instalacao:
Para que o componente inicialize junto com o sistema operacional eh necessario configurar
manualmentecadaSO.(mecompromentoemmudaroqueestaescritoaquiparaapenas:rodeo
arquivoinstall.exe;))
Observacoes:
QuandoaopacoteTagManagertransformadoemumwebserveratravesdoservidorxspeledeve,
necessariamente,conterapastabin.
Logger
Introducao:
OpacoteScadaBr.LoggerdestinadoaaquisicaodedadoscomoclientedocomponenteRemotee
tambempelofornecimentodewebmetodosviahttp.OpacoteAquisitorodesenvolvedorcapazde
obterosdadosatravesdaleituraespecificadeumenderecoeregistradorapenaspelonomedetag
correspondente a cada amostra, metodo este que passado por uma interface remota via
webservice.Podeserutilizadoparaobterinformacoesdeconexaocombancodedados.
DiagramadeClasse:

Configuracao:
Aconfiguracaoapriorirelativaaconexaocomobancodedados.
Utilizacao:
Parautilizacaofinaldocomponenteexistemdiversasformasdetransformaloemumwebservice.
Sevocejusaoservidorxspemcomumapastaespecifica,bastacopiaropacoteTagManagerpara
dentrodapastarootdoseuservidorxsp.Outramaneira(linux)irateolocalondeestaapasta
TagManagercomoterminalerodarocomandoxsp2port8080,dessaformaosmetodosficarao
disponiveisnoseuhostlocalnaporta8080.possiveltambemrodaroscriptrunlocalizadodentro
dapastaTagManager.Epossiveltambem,abriroprojetonaIDEMonoDeveloperodaratravesda
IDE.
Instalacao:
Para que o componente inicialize junto com o sistema operacional eh necessario configurar
manualmentecadaSO.(mecompromentoemmudaroqueestaescritoaquiparaapenas:rodeo
arquivoinstall.exe;))
Observacoes:
QuandoaopacoteTagManagertransformadoemumwebserveratravesdoservidorxspeledeve,
necessariamente,conterapastabin.