M
anual
do Software
Fundação
Centros de Referência em Tecnologias Inovadoras
Financiadora
de Estudos e Projetos
Serviço
de Apoio às Micro e Pequenas Empresas
Conselho
Nacional de Desenvolvimento Científico e Tecnológico
ScadaBR
0.7
Sistema
Open-Source para Supervisão e Controle
Manual
do Software
Outubro
de 2010
Sumário
2.1. JDK
(Java Development Kit) 7
2.1.2. Configurando
a JAVA_HOME 7
2.2. Instalando
o ScadaBR manualmente 8
2.3. Instalando
o ScadaBR via Instalador 8
3.2. Adicionando
Data Sources e Data Points 15
3.3. Visualizando
os dados: Watch List e Gráficos 17
3.5. Representações
Gráficas 22
4.1.3. Configuração
do data point 27
4.2.3.
Configuração do data point 28
5.2. Gerando
relatórios no ScadaBR 30
5.2.1.
Configurando um novo modelo de relatório 30
5.2.2.
Agendamento de Relatórios 31
5.2.3.
Envio de relatórios por e-mail 31
5.2.4.
Gerenciamento de modelos 33
5.3. Gerando
relatórios utilizando softwares de terceiros. 34
5.3.1.
Pentaho: Configurando a base de dados do ScadaBR 34
5.3.2.
Pentaho: Exemplo de criação de um relatório 38
5.3.3.
iReport: Configurando a base de dados do ScadaBR 45
5.3.4.
iReport: Selecionando os dados da base a serem utilizados 48
6.2. Criando
o Data Source e os Data Points 50
6.3. 6.3.
Criando um Meta Data Source e seus Data Points 55
Este
tutorial tem como propósito auxiliar os usuários no uso do software
ScadaBR.
Informações adicionais sobre as funcionalidades
disponíveis no software podem ser encontradas no menu principal
clicando no ícone
.
Informações
mais específicas sobre cada funcionalidade também estão
disponíveis nas telas de configuração de cada uma delas, clicando
no ícone similar
.
A
sigla SCADA é uma sigla do inglês para Supervisory
Control
And
Data
Acquisition,
o que significa Controle Supervisório e Aquisição de Dados.
Sistemas SCADA servem como interface entre o operador e processos dos
mais variados tipos, como máquinas industriais, controladores
automáticos e sensores dos mais variados tipos. Com sistemas SCADA
são construídos desde aplicativos simples de sensoreamento e
automação, até os famosos "Painéis de Controle" em
empresas de geração e distribuição de energia elétrica, centrais
de controle de tráfego e assim por diante.
Um
SCADA típico deve oferecer drivers de comunicação com
equipamentos, um sistema para registro contínuo de dados
("datalogger") e uma interface gráfica para usuário,
conhecida como "IHM" ou Interface Homem-Máquina. Na IHM
são disponibilizados elementos gráficos como botões, ícones e
displays, representando o processo real que está sendo monitorado ou
controlado. Entre algumas das funções mais utilizadas em sistemas
SCADA estão:
–
Geração de gráficos e relatórios com o histórico do processo;
–
Detecção de alarmes e registro de eventos em sistemas
automatizados;
–
Controle de processos incluindo envio remoto de parâmetros e
set-points, acionamento e comando de equipamentos;
–
Uso de linguagens de script para desenvolvimento de lógicas de
automação ("receitas").
O
software ScadaBR
é desenvolvido em modelo "open-source", possuindo
licença
gratuita. Toda a documentação e o código-fonte do sistema estão à
disposição, inclusive sendo permitido modificar e re-distribuir o
software se necessário.
O
ScadaBR é uma aplicação multiplataforma baseada em Java, ou seja,
PCs rodando o Windows, Linux e outros sistemas operacionais e podem
executar o software a partir de um servidor de aplicações (sendo o
Apache Tomcat a escolha padrão).
Ao
executar o aplicativo, ele pode ser acessado a partir de um navegador
de Internet, preferencialmente o Firefox ou o Chrome. A interface
principal do ScadaBR é de fácil utilização e já oferece
visualização das variáveis, gráficos, estatísticas, configuração
dos protocolos, alarmes, construção de telas tipo HMI e uma série
de opções de configuração.
Após
configurar os protocolos de comunicação com os equipamentos e
definir as variáveis (entradas e saídas, ou "tags") de
uma aplicação automatizada, é possível montar interfaces de
operador Web utilizando o próprio navegador. Também é possível
criar aplicativos personalizados, em qualquer linguagem de
programação moderna, a partir do código-fonte disponibilizado ou
de sua API "web-services".
Em
nosso site encontra-se um vídeo demonstrativo que aborda exemplos
com as funcionalidades básicas do ScadaBR.
O
Tomcat exige do sistema uma JDK, com a variável de ambiente
JAVA_HOME devidamente declarada. Certifique-se de que você possui
uma JDK 1.6 (ou maior) instalada em seu sistema e de que a variável
JAVA_HOME esteja corretamente configurada digitando: java
-version
em um console.
Faça
o download da JDK no site da Sun:
(http://java.sun.com/javase/downloads/index.jsp).
Siga
as instruções de instalação padrão.
–
No Windows XP ou 2000
Navegue:
Painel de Controle → Sistema → Avançado → Variáveis de
Ambiente
Clique
em adicionar e insira JAVA_HOME com o endereço do diretório de
instalação da JDK.
Inicie
um console e entre com java
-version
para certificar-se que tudo funcionou corretamente.
–
No Windows Vista ou 7, navegue: Painel de Controle → Sistema e
segurança → Sistema → Configurações Avançadas do Sistema →
Avançado → Variáveis de Ambiente
Clique
em adicionar e insira JAVA_HOME com o endereço do diretório de
instalação da JDK.
Inicie
um console e entre com java
-version
para certificar-se que tudo funcionou corretamente.
–
No Linux
No
Ubuntu, edite o arquivo .bashrc (em /home/<seu_usuario>/),
inserindo a linha:
export
JAVA_HOME=<endereço do diretório de instalação da JDK>
Feche
o console, abra novamente e entre com java
-version
para certificar-se que tudo funcionou corretamente.
Faça
o download da última versão do Apache Tomcat no site oficial
(http://tomcat.apache.org/).
Extraia
os arquivos para um diretório de sua escolha "<tomcat-home>".
Execute
o arquivo startup.bat
(Windows) ou startup.sh
(Linux) do diretório <tomcat-home>/bin/ para iniciar o Tomcat.
Em
um browser, entre com o endereço: localhost:8080/.
Caso a página de configuração do Tomcat inicie, o mesmo está
corretamente configurado. Caso contrário, certifique-se que todos os
passos anteriores (principalmente a instalação da JDK e
configuração da variável JAVA_HOME) foram executados corretamente.
Para
parar o Tomcat, execute o arquivo shutdown.bat
(Windows) ou shutdown.sh
(Linux) do diretório <tomcat-home>/bin/
para
iniciar o Tomcat.
Faça
o download do arquivo ScadaBR.war
(http://www.scadabr.org.br/?q=webfm).
Coloque
este arquivo no diretório <tomcat-home>/webapps/.
Inicie
o Tomcat.
Em
um browser, entre com o endereço:
localhost:8080/ScadaBR/
(username: "admin" password: "admin").
Para
instalar o ScadaBR via instalador, faça o download do arquivo
ScadaBR-Win-Installer_<ver>.exe
e execute-o. Siga os passos clicando em Next..
Ao
final dos passos, clique em Install.
Obs.1:
Recomenda-se desinstalar todas os Tomcat já instalados na máquina
antes de utilizar o instalador do ScadaBR.
Obs.2:
No Windows Vista e no Windows 7, deve-se executar o instalador em
modo de administrador, clicando com o botão direito sobre o arquivo
e selecionando Executar
como administrador.
As
funcionalidades nesta aplicação são acessadas pelos controles no
cabeçalho. Dependendo das permissões de sua conta de usuário,
vários ícones serão exibidos abaixo do logotipo da aplicação.
Quando o cursor do mouse pairar sobre um ícone, será exibida um
balão de texto com uma descrição resumida da funcionalidade
daquele ícone.
Além
dos ícones de controle, no lado direito do cabeçalho é mostrado o
nome de usuário que está logado no sistema.
Quando
sua aplicação tiver um alarme ativo, um ícone de uma bandeira (
)
ficará
piscando e será associada uma descrição do alarme próximo ao
centro do cabeçalho. A cor da bandeira indicará a severidade do
alarme:
Informação
Urgente
Crítico
Risco
de Vida
É
possível clicar no ícone ou na descrição para exibir a lista de
alarmes ativos.
São
suportados cinco tipos de dados:
Valores
Binários
(ou
booleanos) podem ter apenas dois estados, referidos no sistema com
os valores zero
(0)
e um
(1).
É possível utilizar conversores para exibir os valores binários
em quaisquer rótulos necessários, como "ligado/desligado",
“alto/baixo", "iniciado/parado", etc.
Valores
de Estados
Múltiplos têm
múltiplos estados distintos. Por essa abordagem, o tipo binário é
um caso particular de um estado múltiplo. Valores são
primitivamente representados como inteiros (ex. 0, 1, 2, 7, …),
mas, como nos valores binários é possível atribuir rótulos a
cada valor como, por exemplo, "ligado/desligado/desativado",
"aquecer/resfriar/desligado", ou quaisquer outros.
Valores
Numéricos
(ou
analógicos) são valores decimais representados no sistema com uma
variável de ponto flutuante. Podem ser citados como exemplos de
valores numéricos: temperatura, umidade, preço e altitude.
Renderizadores de texto podem ser usados para determinar exibição
de características como número de casas decimais, separação de
milhar (com pontos ou vírgulas), exibição de sufixos (°F, kW/h,
moles, etc.). Renderizadores de faixas podem ser usados para
converter faixas de valores em rótulos de texto.
Valores
Alfanuméricos
são
simplesmente seqüências de caracteres, como a descrição O/S de
uma fonte SNMP.
Valores
em Imagens
são
representações binárias de dados de imagens. São armazenados em
arquivos no sistema de arquivos do servidor host (e não no banco de
dados) e são guardados em memória. Renderizadores podem ser usados
para criar imagens escaladas, como thumbnails, para exibição.
Data
sources (fontes de dados) são parte fundamental para a operação
desta aplicação. Um data
source é
um "lugar" de onde os dados são recebidos. Virtualmente,
qualquer coisa pode ser um data source, desde que o protocolo de
comunicação seja suportado pela aplicação. Alguns exemplos:
Se
você tem uma rede Modbus acessível por RS232, RS485, TCP/IP ou
UDP/IP, você pode criar um data source Modbus que irá "pollar"
(poll) a rede em um intervalo definido.
Se
você tem equipamentos ou aplicações que podem enviar dados sobre
HTTP, você pode iniciar um data source HTTP receiver que irá
escutar conexões recebidas e enviar os dados aos pontos
apropriados.
Para
hardware qeu suporta SNMP, inicie um data source SNMP. Valores
poderão ser "pollados" em intervalos definidos, ou traps
podem ser recebidos para report-on-exception.
Dados
podem ser lidos e atualizados em uma base de dados SQL externa ao
sistema.
Dados
podem ser gerados randomicamente ou preditivamente usando um data
source Virtual.
Valores
de dados recebidos ou coletados por um data source são armazenados
em data points.
Um
data
point é
uma coleção de valores históricos associados. Por exemplo, um
ponto particular pode ser uma leitura de temperatura de um quarto,
enquanto outro ponto poderia ser a leitura de umidade do mesmo
quarto. Pontos também podem ser valores de controle, como um
indicador para ligar ou desligar um equipamento.
Existem
muitos atributos que são usados para controlar o comportamento de
pontos. Inicialmente existe o conceito de um point
locator.
Locators
são
usados por data sources para determinar como "achar" os
dados para o ponto particular. Por exemplo, um data source SQL tem
atributos incluindo onde achar a instância da base de dados; point
locators para o data source indicam o nome da tabela e dos campos
onde podem ser achados valores específicos. A separação lógica de
data source e de data point dependem do protocolo de comunicação em
questão.
Atributos
de data points também podem determinar muitos outros aspectos do
ponto, como seu nome, como deve ser registrado (todos os dados,
apenas mudanças no valor, ou nenhum), por quanto tempo manter os
dados, como formatar os dados para exibição e como traçar um
gráfico com os valores.
Você
também pode configurar data points com detectores
de valor,
que são usados para detectar condições de interesse nos valores
dos pontos, como por exemplo, se o valor esteve muito alto por muito
tempo, se é muito baixo, se muda com freqüência, se não muda,
etc.
Pontos
podem ser arranjados em um uma hierarquia, ou árvore, para
simplificar sua gerência e exibição usando a funcionalidade de
Hierarquia.
Monitoramento
de pontos dentro do sistema pode ser feito de duas maneiras. É
possível usar uma watch
list para
criar listas dinâmicas de pontos com seus valores, últimos tempos
de atualização, e gráficos de informações históricas (se a
configuração do ponto permitir). Valores e gráficos são
atualizados em tempo real sem ter que atualizar a janela do
navegador. Gráficos de múltiplos pontos também podem ser exibidos
sob demanda.
Também
é possível criar representações
gráficas de
pontos usando a funcionalidade drag and drop para posicionar
representações gráficas de pontos sobre uma imagem de fundo
arbitrária. Imagens animadas podem ser usadas para criar uma
visualização altamente dinâmica do comportamento do sistema, e,
como as watch lists, valores são representados em tempo real sem
necessitar de atualização do navegador. Essas visualizações podem
ser marcadas como "públicas" para que possam ser
utilizadas em web sites públicos.
O
controle de sistemas externos pode ser obtido para pontos que podem
ser "setados" (ou que permitem escrita ou saída). Um ponto
setável
pode
ser "setado" para um valor definido pelo usuário, como uma
configuração de um termostato ou de um controle interruptor para um
equipamento. Ambas watch lists e graphical views proporcionam meios
simples para determinar a entrada de um valor. O point locator para
um ponto "setável" determina como o data source define o
valor no equipamento externo.
Um
evento
é
a ocorrência de uma condição definida no sistema. Existem tanto
eventos definidos pelo sistema como definidos pelo usuário. Eventos
definidos pelo sistema incluem erros de operação de data sources,
logins de usuários, e inicialização e parada do sistema. Eventos
definidos pelo usuário incluem detectores de valor, eventos
agendados, e eventos compostos que detectam condições sobre pontos
múltiplos usando argumentos lógicos. Há também os "eventos
autidatos" que ocorrem quando usuários fazem alterações
(adições, modificações e remoções) que afetam objetos em tempo
de execução, incluindo data sources, data points, detectores de
valor, eventos agendados, eventos compostos e tratadores de eventos.
Uma
vez que um evento foi detectado, é manipulado por tratadores. Um
tratador
de eventos é
um comportamento definido pelo usuário que deve ser executado quando
um evento particular ocorre, como envio de email ou "setar"
o valor a um ponto setável.
Data
source
Data
point
Gráfico
Set
point
Watch
list
Representação
gráfica
Atualizar
Detector
de valor
Evento
composto
Evento
agendado
Tratadores
de eventos
Alarme
Usuário
Comentário
de usuário
Relatório
Listas
de envio
Publisher
Aviso
Logout
O
ScadaBR pode executar sons quando alarmes estão ativos. Por
definição, sons para alarmes são executados para alames urgentes,
críticos e de risco de vida e não para alarmes de informação, mas
os sons dos alarmes podem ser definidos individualmente. Para
habilitar sons de alarmes particulares, arquivos válidos no formato
mp3 devem ser colocados em:
<ScadaBR_home>/audio/information.mp3
<ScadaBR_home>/audio/urgent.mp3
<ScadaBR_home>/audio/critical.mp3
<ScadaBR_home>/audio/lifesafety.mp3
Para
desabilitar um som, remova o arquivo de som associado. Uma coleção
de sons pode ser achada na pasta <ScadaBR_home>/audio/lib.
O
ScadaBR contém uma pequena biblioteca de gráficos que pode ser
achada na pasta <ScadaBR_home>/graphics.
Cada sub-pasta contém todas as imagens daquela definição de imagem
e um arquivo opcional de propriedades chamado info.txt.
Este arquivo de propriedades contém pares nome/valor para os
seguintes atributos (todos opcionais):
name:
O nome que será usado para descrever a imagem na interface de
usuário. Se não fornecido, a imagem assume por padrão o nome da
pasta.
width:
A largura da imagem. Por padrão, todas as imagens são do mesmo
tamanho. Se não fornecido, a largura da primeira imagem será
utilizada.
height:
A altura da imagem. Por padrão, todas as imagens são do mesmo
tamanho. Se não fornecido, a altura da primeira imagem será
utilizada.
text.x:
A posição de texto relativo ao limite esquerdo da imagem, em
pixels. Se não fornecido, o valor padrão é 5.
text.y:
A posicão de texto relativo ao limite superior da imagem, em
pixels. Se não fornecido, o valor padrão é 5.
Uma
vez que é utilizada uma definição de imagem nas views a pasta não
deve ser renomeada! O
nome da pasta é usada internamente como o identificador da definição
de imagem.
Arquivos
de imagens são arranjados alfabeticamente por nome e são sensíveis
à caixa. Pares nome/valor são separados por ‘=’. Linhas iniciadas
por ‘#’ são consideradas comentários. Arquivos ‘thumbs.db’ são
ignorados. Arquivos compactados (zip, gz, tar, etc) não podem ser
usados por que os arquivos de imagens devem ser acessados pelo web
server. As definições de imagens são carregadas na inicialização
do sistema, então quaisquer alterações requerem reinicialização.
Para
que as futuras versões do ScadaBR tenham mais gráficos, por favor
forneça os gráficos que você criar para o projeto ScadaBR.
Este
tópico mostra um exemplo de criação de Data Sources e Data Points.
Para fins didáticos, criou-se um Data Source do tipo Virtual
Data Source,
que se trata de um data source simulado.
No
menu principal, escolha a opção DataSources
.
Selecione
o tipo Virtual
Data Source
na lista e clique sobre o ícone Adicionar
.
Preencha
como abaixo e salve suas configurações.
Ao
salvar o data source, as opções para inclusão de data points serão
habilitadas. Clique em Adicionar
e preencha como abaixo e salve suas configurações.
Adicione
mais alguns pontos de diferentes tipos.
Agora,
habilite todos os pontos clicando sobre os ícones
em cada um deles e habilite também o data source
.
Agora
que você possui cadastrado no sistema seus data sources e data
points, basta visualizá-los. No menu principal, escolha a opção
Watch
List
.
Os
data points cadastrados encontram-se à esquerda. Para monitorar seus
valores, clique sobre cada um para adicioná-lo à watch list atual.
Você
pode acessar e editar mais informações a respeito de cada data
point clicando em Detalhes
do data point
.
Clique no ícone citado relativo ao data point numérico e observe
seu histórico e o gráfico dos seus valores.
Ainda
é possível editar as propriedades de renderização de texto.
Em
sua watch list, clique em Detalhes
do data point
.
Na
próxima tela, clique em Editar
data point
.
Na
área Propriedades
de renderização de texto,
tem-se diferentes opções de renderização. Por exemplo, com as
configurações da figura abaixo:
Alteramos
a renderização do data point de:
Para:
Em
sua watch list, clique em Detalhes
do data point
.
Na
próxima tela, clique em Editar
data point
.
Na
lista de Detectores de Eventos, selecione "Limite inferior"
e clique em Adicionar
para adicionar um novo detector.
Preencha
os campos como abaixo e clique no botão Salvar
,
no lado direito inferior da tela.
Pronto.
Agora o sistema o informará (na tela de "Alarmes", no menu
principal) toda vez que o valor de seu data point ficar abaixo do
limite mínimo (22) por mais de 5 segundos.
Para
criar visualizações mais elaboradas dos dados, podemos construir
"Representações Gráficas". No menu principal, escolha a
opção Representação
gráfica
.
Clique
em Nova
representação
.
Escolha
um nome para sua primeira representação, clique sobre Escolher
arquivo,
selecione uma imagem, confirme e clique em Fazer
upload de imagem.
N
a
lista de componentes, selecione Data
point simples
e clique em Adicionar
componente à representação
para
adicioná-lo.
Navegue
até o ícone adicionado sobre a figura e clique sobre a segunda
opção: Editar
configurações de componente de ponto.
Escolha
um dos seus pontos cadastrados na lista e salve suas configurações.
Adicione
outros componentes, associe aos seus data points cadastrados e
posicione-os sobre a tela.
Clique
sobre o botão "Salvar".
O
data source Modbus é utilizado para adquirir dados tanto de um
equipamento modbus acessível por meio de uma rede I/P – podendo
estar em uma rede local ou intranet, ou então estar em qualquer
lugar na internet – (Modbus IP), quanto de uma rede local modbus
acessível via RS232 ou RS485 (Modbus Serial). O mecanismo de
controle de acesso é do tipo mestre-escravo
ou
Cliente-Servidor.
O
campo Nome
define
o nome do data source, e pode ser qualquer descrição. O Período
de atualização
determina a frequencia com que são solicitados os dados do
equipamento Modbus. O campos Timeout
e
os Retries
determinam
o comportamento do sistema no caso de uma solicitação falhar. O
data source aguarda por uma resposta pelo tempo (em milisegundos)
definido como timeout.
Se não receber resposta, o data source tentará novamente quantas
vezes estiver definido em retries.
A
opção Contiguous
batches only pode
ser usada para especificar que a implementação de modbus não deve
tentar otimizar solicitações por valores diferentes numa única
solicitação. Ativando esta opção fará com que a implementação
somente realize solicitações por valores múltiplos quando estes
valores formarem um espaço contínuo no registrador.
Pode-se
scanear nodos escravos na rede utilizando a funcionalidade Node
scan.
Esta funcionalidade itera sobre os escravos de 1 a 240, enviando a
cada um um ReadExceptionStatus (código de funcionamento 7). Se uma
resposta for recebida (considerando as configurações de timeout e
retries), o nodo é considerado disponível. Note que nem todos os
equipamentos suportam este código de funcionamento, então
falsos-negativos são possíveis.
O
campo Create
slave monitor points
faz com que “monitoradores de escravos” sejam criados
automaticamente. Um “monitorador de escravo” é um ponto binário
que indica o atual estado de um escravo. Se uma solicitação de poll
a um escravo falhar devido ao timeout ou a um erro, o escravo é
considerado off
line.
Estes pontos podem ser utilizados para controle como qualquer outro
ponto.
Modbus
IP
Três
Transport
types
são suportados. Verifique a documentação do seu equipamento para
determinar qual configuração pode ser usada.
A
configuração TCP
usa um novo socket TCP a cada poll. O número de retries definido
aplica-se quando ocorrem exceções na conexão durante a abertura do
socket. O timeout usado para a conexão depende de se a pilha TCP
está sendo usada.
A
configuração TCP
with keep-alive
cria uma conexão TCP no primeiro poll, o qual é deixado aberto para
re-uso. Se a conexão é fechada por algum motivo, uma nova é criada
quando necessário. O comportamento para exceções na conexão para
esta opção é a mesma para o TCP.
Esta é a configuração recomendada para a maioria dos usuários,
visto que ela provê uma comunicação eficiente e robusta enquanto
evita muitos dos problemas de configuração típicos ao UDP.
A
configuração UDP
utiliza
pacotes UDP para comunicação. Esta configuração provê a maior
eficiente de rede, mas tipicamente requer uma configuração maior da
rede, visto que tanto o ScadaBR quanto o equipamento precisam ser
visíveis na rede (em oposição ao TCP, no qual o ScadaBR pode estar
protegido por uma firewall.
As
configurações de Host
e Port
determinam
como encontrar o equipamento Modbus na rede. O host pode ser o nome
de um domínio ou um endereço IP.
Modbus
Serial
A
comunincação Serial é controlado com os valores de Baud
Rate,
Flow
control in,
Flow
control out,
Data
bits,
Stop
bits,
and Parity.
O Echo
pode
ser usado com a rede RS485 se for apropriado.
O
valor de Encoding
determina como as solicitações Modbus são formatadas. A maioria
parte dos equipamentos utilizam mensagens formatadas em RTU.
Verifique a documentação do seu equipamento Modbus para determinar
como configurar este campo.
Ambos,
serial e redes IP, utilizam os mesmos atributos de ponto. O Slave
id
é o id com o qual o nodo Modbus foi configurado e é um número
entre 1 e 240.
O
Register
range
determina em qual dos quatro ranges
o valor será encontrado. Consulte a documentação do seu
equipamento para determinar qual deve ser usado.
Coil
status
representa o range
hexadecimal de 0x00000 a 0x0FFFF. Cada registrador contém um único
e configurável bit. Valores neste range
são sempre Binários.
Input
status representa
o range
hexadecimal de 0x10000 a 0x1FFFF. Cada registrador contém um único
e read-only
bit.
Valores neste range
são sempre Binários.
Holding
register representa
o range
hexadecimal
de 0x40000 a 0x4FFFF. Cada registrador possui 2 bytes (ou uma
“palavra”) e é configurável. Valores neste range
podem ser Binários ou Numéricos dependendo das demais
configurações.
Input
register
representa o range
hexadecimal de 0x30000 a 0x3FFFF. Cada registrador possui 2 bytes
(ou uma “palavra”) e é read-only.
Valores neste range
podem ser Binários ou Numéricos, dependendo das demais
configurações.
Valores
de Coil
status e
Input
status
são sempre Binários. Entretanto, fornecedores de Modbus são
frequentemente muito criativos nas maneiras com que os Holding
e
Input
registers
são usados. O campo Modbus
data type
reflete as várias maneiras nas quais os dados podem ser codificados.
Consulte a documentação de seu equipamento Modbus para determinar a
configuração apropiada.
Valores
específicos estão localizados na configuração do Offset.
Este campo é um valor 0-indexed,
o que significa que sua contagem inicia em 0. Alguns fornecedores de
Modbus fornecem documentação no qual ele é 1-indexed,
no qual a contagem inicia em 1. Portanto, às vezes é necessario
subtrair 1 do índice documentado para determinar o offset 0-indexed.
Quando
os registradores incluem seus ranges,
como por exemplo, escrito como 0x30001, 1-indexed
está tipicamente implícito. O campo Bit
é usado quando valoers binários são codificados em bits de
registradores individuais.
O
campo Settable
pode ser usado para tornar um ponto, que normalmente seria
configurável (de acordo com seu range),
não configurável.
Os
campos Multiplier
e
Additive
podem ser usados quando conversões triviais de valores são
necessárias. Valores numéricos lidos da rede são calculados da
seguinte maneira: (valor bruto) * multiplier
+ additive.
O
contrário é aplicado quando um valor numérico é escrito na rede.
A
especificação OPC
DA (OPC
Data Access) é a primeira de um grupo de especificações conhecido
como OPC
Specifications,
e nasceu da colaboração de diversos líderes mundiais em
fornecimento de equipamentos de automação trabalhando em cooperação
com a Microsoft.
Originalmente
baseado nas tecnologias OLE
COM (component
object model)
e DCOM
(distributed
component object model),
a especificação define um conjunto padrão de objetos, interfaces e
métodos para utilizar em aplicativos de controle de processos e de
automação de manufaturas para facilitar a interoperabilidade. As
tecnologias COM/DCOM fornecem o framework
para os softwares serem desenvolvidos. Atualmente existem centenas de
servidores e clientes OPC DA.
O
campo Nome
define
o nome do data source, e pode ser qualquer descrição. O Período
de atualização
determina a frequencia com que são solicitados os dados do servidor
OPC DA.
Os
campos Host,
Domínio,
Usuário
e
Senha
definem o endereço e as “credenciais” do servidor a ser
utilizado. Após preencher estes campos, clique em Atualizar,
e uma lista com os servidores disponíveis no endereço definido será
criada.
Após
selecionar o servidor OPC DA, clique em Listar
Tags
na caixa à direita das configurações do data source. As tags
disponíveis no servidor serão listadas, juntamente com seus tipos,
se são configuráveis ou não e com um checkbox
na coluna Add.
Para
adicioná-los como data points, basta dar check
nas tags desejadas e em seguida clicar em Adicionar
Tags.
As tags selecionadas irão aparecer numa caixa abaixo das
configurações do data source, podendo ser habilitadas ou
desabilitadas.
Obs.1:
Antes de adicionar as tags, é necessário salvar o data source.
Obs.2:
Tags adicionadas que já foram previamente adicionadas, aparecerão
na lista duplicadas.
O
ScadaBR possui um gerador de relatórios próprio, além de ser
compatível com os principais geradores de relatórios customizados.
Neste
item serão abordadas as duas maneiras de gerar relatórios a partir
do ScadaBR.
No
menu principal, escolha a opção Relatórios
.
Modelos
de relatórios proporcionam uma definição de como criar instâncias
de relatórios.
Para
adicionar um novo modelo de relatório, clique em Novo
relatório
.
Nesta
tela, deve-se definir o modelo do relatório:
O
Nome
do
modelo é usado como uma referência visual do modelo. Recomenda-se a
utilização de um nome único para cada modelo.
Utilize
a lista de Data
points para
selecionar os pontos que devem ser incluídos no relatório. Para
adicionar data points, selecione o ponto desejado na lista e clique
no ícone . Para remover um ponto existente, clique no ícone
associado ao ponto.
O
valor Faixa
de datas é
utilizado para determinar uma faixa de tempo utilizada para filtrar
valores que serão utilizados no relatório.
Relatórios
podem ser "agendados"
para serem gerados automaticamente. Use a seleção Executar
a cada…
para
determinar um simples evento de tempo a partir do qual o relatório
será gerado, ou defina uma rotina de acordo com o padrão cron para
controle mais específico (veja a documentação de "Cron
patterns" para mais informação). Eventos de tempo ocorrem no
início do período compreendido. Um Atraso
de execução pode
ser aplicado se os dados esperados para o relatório tendem a serem
coletados após o tempo de execução absoluto do relatório.
Apesar
dos relatórios não poderem ser explicitamente compartilhados pelo
sistema, podem ser implicitamente compartilhados por meio da criação
de uma lista de envio de emails para a qual o sistema enviará
instâncias de relatórios gerados. O conteúdo desse email é o
mesmo da janela "gráfico de relatório" aberta no painel
de Relatórios. Para incluir o arquivo de exportação com o formato
CSV no email, selecione a caixa Incluir
tabela de dados.
Selecione
os Destinatários
de email para
os quais enviar o email com o relatório. Os destinatários podem ser
listas de discussão, usuários do sistema ou endereços de email
digitados. Clique no ícone Enviar
e-mail de teste
para
enviar uma mensagem de teste para os destinatários selecionados.
Importante:
Instâncias de relatórios enviadas por email são automaticamente
apagadas depois de serem enviadas.
Para
salvar um modelo de relatório clique no ícone no canto direito
superior do painel de criação de modelos. Para apagar um modelo
existente, clique no ícone
.
Para gerar um relatório imediatamente a partir de um modelo, clique
em “Executar agora”. Note que alguns modelos de relatórios podem
incluir uma grande quantidade de informações e, por causa disso,
podem levar algum tempo para serem gerados. Assim, todos os
relatórios são gerados de maneira assíncrona da interface de
usuário. Quando um ícone é clicado, a instância de relatório
será incluída em uma fila onde o usuário pode monitorar seu
progresso.
A
Fila de relatórios lista todas as instâncias de relatórios para o
usuário em questão. Esta lista não é atualizada automaticamente.
Uma atualização pode ser invocada ao clicar em
.
Alguns eventos, entretanto, também irão invocar uma atualização
desta lista, como a geração de um relatório.
Instâncias
de relatórios em qualquer estado serão listadas, estejam completos
ou em execução. As colunas da lista irão refletir o estado atual
da instância.
As
colunas da lista têm as seguintes definições:
Nome
do relatório:
o nome herdado do modelo de relatório. Uma vez criada a instância,
o nome do relatório não é alterado mesmo se o nome do modelo
mudar.
Início
da execução:
o momento de tempo em que a instância começou a ser gerada.
Duração
da execução:
quanto tempo a geração da instância consumiu.
De:
o tempo a partir do qual os registros foram selecionados..
Até:
o tempo até o qual os registros foram selecionados.
Registros:
o número total de registros selecionados.
A
caixa Não
Descartar permite
que usuários previnam que instâncias de relatórios importantes
sejam descartadas (veja a documentação "Outras configurações"
para mais informações a respeito do processo de descarte de
relatórios). Esta funcionalidade deve apenas ser usada quando
estritamente necessária, pois as instâncias de relatórios podem
consumir quantidades consideráveis de armazenamento.
A
coluna final da tabela oferece controles para o gerenciamento das
instâncias. O ícone
inicia
o download de um arquivo CSV com os dados do relatório, para
importação em softwares de planilha eletrônica. O ícone
abre uma nova janela do navegador exibindo informações da instância
de relatório, dados estatísticos e uma imagem do gráfico dos dados
do relatório. Clicando no ícone
,
a instância do relatório é apagada. Instâncias de relatório
particularmente grandes podem levar algum tempo para serem apagadas.
Após
fazer o download do RPD, basta descompactar o arquivo e executar o
arquivo report-designer.bat no Windows ou o report-designer.sh no
Linux que estará dentro da pasta descompactada.
A
tela inicial do programa ira abrir.
Vá
em File
-> New,
para criar um novo Report.
Agora
é hora de criar um DataSource.
O DataSource
será
a fonte dos dados utilizados no Report.
Neste
exemplo, será utilizado o MySQL
como
DataSource.
Para
utilizar utilizar o Apacha Derby, basta trocar a Connection
Type.
Então
vá em Data
→ Add Data Source → JDBC