Developer Guides scadabr

download Developer Guides scadabr

If you can't read please download the document

description

programação scadabr

Transcript of Developer Guides scadabr

Guia de Desenvolvimento ScadaBR

APRESENTAO

O ScadaBR um software para aquisicao e supervisao de dados obtidos a partir de uminstrumento 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 protocolomodbus)- 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- logger3. 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 frameworkmaquina virtual java (jre)servidor apache com modulos para php e mysqlservidor xspOBS: 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 5deve ser feito conforme instrues de cada pacoteexemplo: 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:O pacote ScadaBr.Remote destinado a aquisicao de dados de um instrumento de medicao que se comunica via protocolomodbuscom o computador. Com o pacote ScadaBR.Remote o desenvolvedor capaz de obter osdadosatraves da leitura especifica de um endereco e registrador, metodo este que passado por uma interface remota via Tcp.

Diagrama de Classe:

Configuracao:O pacote ScadaBR.Remote.RemotingServer possui 2 arquivos de configuracao, um responsavel pela parte de monitoramento do servidor remoto e outro pela parte de comunicao do servidor com o canal Tcp (porta default =9999) disponibilizado e tambem com o endereco do disposivo serial (endereco default=/dev/ttyS0).No pacote RemotingClient as configuracoes sao referentes a porta Tcp aberta pelo servidor. (no caso=9999)

Utilizacao:Para utilizacaofinaldo componente basta roda-lo com o comandomono RemotingServer.exe. E possivel tambem, abrir o projeto na IDE MonoDevelop e rodar atraves da IDE.

Instalacao:Para que o componente inicialize junto com o sistema operacional eh necessario configurar manualmente cada SO.(me compromento em mudar o que esta escrito aqui para apenas: rode o arquivo install.exe ;) )

TagManager

Introducao:O pacote ScadaBr.Webservice destinado a aquisicao de dados como cliente do componente Remote e tambem pelo fornecimento de web metodos via http. O pacote Aquisitor o desenvolvedor capaz de obter osdadosatraves da leitura especifica de um endereco e registrador apenas pelo nome de tag correspondente a cada amostra, metodo este que passado por uma interface remota via webservice. Pode ser utilizado para obter informacoes de conexao com banco de dados.

Diagrama de Classe:

Configuracao:A configuracaoa priori relativa a conexao com o banco de dados.

Utilizacao:Para utilizacaofinaldo componente existem diversas formas de transforma-lo em um webservice.Se voce j usa o servidor xsp em com uma pasta especifica, basta copiar o pacote TagManager para dentro da pasta root do seu servidor xsp. Outra maneira (linux) ir ate o local onde esta a pasta TagManager com o terminal e rodar o comandoxsp2 --port 8080,dessa forma os metodos ficarao disponiveis no seu host local na porta 8080. possivel tambem rodar o scriptrunlocalizado dentro da pasta TagManager.E possivel tambem, abrir o projeto na IDE MonoDevelop e rodar atraves da IDE.

Instalacao:Para que o componente inicialize junto com o sistema operacional eh necessario configurar manualmente cada SO. (me compromento em mudar o que esta escrito aqui para apenas: rode o arquivo install.exe ;) )

Observacoes:Quando a o pacote TagManager transformado em um webserveratraves do servidor xsp ele deve, necessariamente, conter a pasta bin.

Logger

Introducao:O pacote ScadaBr.Logger destinado a aquisicao de dados como cliente do componente Remote e tambem pelo fornecimento de web metodos via http. O pacote Aquisitor o desenvolvedor capaz de obter osdadosatraves da leitura especifica de um endereco e registrador apenas pelo nome de tag correspondente a cada amostra, metodo este que passado por uma interface remota via webservice. Pode ser utilizado para obter informacoes de conexao com banco de dados.

Diagrama de Classe:

Configuracao:A configuracaoa priori relativa a conexao com o banco de dados.

Utilizacao:Para utilizacaofinaldo componente existem diversas formas de transforma-lo em um webservice.Se voce j usa o servidor xsp em com uma pasta especifica, basta copiar o pacote TagManager para dentro da pasta root do seu servidor xsp. Outra maneira (linux) ir ate o local onde esta a pasta TagManager com o terminal e rodar o comandoxsp2 --port 8080,dessa forma os metodos ficarao disponiveis no seu host local na porta 8080. possivel tambem rodar o scriptrunlocalizado dentro da pasta TagManager.E possivel tambem, abrir o projeto na IDE MonoDevelop e rodar atraves da IDE.

Instalacao:Para que o componente inicialize junto com o sistema operacional eh necessario configurar manualmente cada SO. (me compromento em mudar o que esta escrito aqui para apenas: rode o arquivo install.exe ;) )

Observacoes:Quando a o pacote TagManager transformado em um webserveratraves do servidor xsp ele deve, necessariamente, conter a pasta bin.