midlet suite para acesso remoto a sistemas de

Propaganda
Universidade Federal de Ouro Preto - UFOP
Escola de Minas
Colegiado do Curso de Engenharia de
Controle e Automação - CECAU
MIDLET SUITE PARA ACESSO REMOTO A SISTEMAS DE
SUPERVISÃO
MONOGRAFIA DE GRADUAÇÃO EM ENGENHARIA DE CONTROLE E
AUTOMAÇÃO
Pablo Parreiras Drumond
Ouro Preto
Julho de 2005
Pablo Parreiras Drumond
II
MIDLET SUITE PARA ACESSO REMOTO A SISTEMAS DE
SUPERVISÃO
Monografia apresentada ao Curso de Engenharia
de Controle e Automação da Universidade Federal
de Ouro Preto como parte dos requisitos para a
obtenção do Grau de Engenheiro de Controle e
Automação
Orientador: Milton Realino de Paula
Ouro Preto
Julho de 2005
III
IV
“Deus ajuda é verdade, vai na fé, não na sorte.”
Sabotage
V
A Brena pelo amor e dedicação, aos meus pais pela minha formação, e aos camisas azuis
pela minha realização acadêmica
VI
A Milton Realino de Paula por acreditar na idéia, ao GTI pela compreensão das faltas e por
permitir minha sobrevivência em Ouro Preto
VII
RESUMO
Esse trabalho tem como objetivo o desenvolvimento de uma MIDlet Suite, aplicativo Java
projetado para ser executado em um dispositivo móvel, para acesso a Sistemas de Supervisão,
permitindo monitoração e ajuste remoto de processos industriais, em tempo de execução. Essa
MIDlet estabelecerá uma conexão HTTP com uma Servlet, programa Java destinado à
construção de aplicativos web de conteúdo dinâmico, estendendo a funcionalidade do
servidor. Para transmissão de dados será utilizado o padrão XML (Extensible Markup
Language), metalinguagem definida pelo W3C, um mecanismo de codificação que independe
da linguagem de programação. A servlet proverá comunicação com a base de dados, sistema
responsável pelo armazenamento de todos os registros do processo, bem como dados de
configuração do sistema de supervisão, entregando ao navegador, celular ou PDA (Personal
Digital Assistant), o conteúdo solicitado. Para implementação será utilizada a plataforma
J2ME (Java 2 Micro Edition) versão especial projetada para dispositivos com memória, vídeo
e poder de processamento limitado, bem como o pacote J2ME Wireless Toolkit distribuído
pela Sun Microsystems.
Palavras-chave: Java, J2ME, MIDlet, Servlet, Sistema de Supervisão, Dispositivo Móvel
VIII
ABSTRACT
The aim of this project is the development of a MIDlet Suite, Java application projected to be
executed in a mobile device, for access the Supervisory Systems, allowing monitoring and
adjusting remote of industrial processes, in runtime. This MIDlet make a HTTP connection
with a Servlet, Java program destined to build dynamic web applications. For the data
transmission, the method used is XML (Extensible Markup Language), mechanism of codifies
that independe of the program language. Servlet make a comunication with the database,
system for the storage of all the registers of the process, as well as data of configuration of the
supervisory system, delivering to navigator, cellular or PDA (Personal Digital Assistant), the
information requested. For it implementation the platform J2ME (Java 2 Micro Edition),
specification for devices with memory, video and limited power processing, as well as
package J2ME Wireless Toolkit.
Key words: Java, J2ME, MIDlet, Servlet, Supervisory System, Mobile Devices
IX
LISTA DE SIGLAS
API
Application Program Interface
CDC
Connected Device Configuration
CIM
Manufatura Integrada por Computador
CLDC
Connected Limited Device Configuration
EJB
Enterprise Java Beans
ERP
Enterprise Resource Planning
HTML
Hyper Text Markup Language
HTTP
Hyper Text Transfer Protocol
J2EE
Java 2 Enterprise Edition
J2ME
Java 2 Micro Edition
J2SE
Java 2 Standard Edition
JAD
Java Application Descriptor
JAR
Java Archive
JDBC
Java DataBase Connectivity
JTWI
Java Technology for the Wireless Industry
JVM
Java Virtual Machine
KVM
K Virtual Machine
MIDP
Mobile Information Device Profile
OTA
Over the Air User Initiated Provisioning Recommended Pratice
PCP
Planejamento e Controle da Produção
X
PDA
Personal Digital Assistant
PIMS
Plant Information Management System
REPIMS
Remote Plant Information Management System
XML
Extensible Markup Language
W3C
World Wide Web Consortium
WAR
Web Archive
WORA
Write Once Run Anywhere
XI
LISTA DE FIGURAS
Figura 3.1: Edições e Máquinas Virtuais de Java
Figura 3.2: Relacionamento entre API J2SE e API das Configurações
Figura 3.3: Variação das máquinas virtuais com os dispositivos
Figura 4.1: Arquitetura do Projeto
Figura 4.2: MIDlets empacotadas na Suite
Figura 4.3: MIDlet para requisição de dados através de comandos SQL
Figura 4.4: Dados apresentados em XML
Figura 4.5: Processos registrados na base de dados
Figura 4.6: Operações disponíveis para o processo selecionado
Figura 4.7: Controladores implementados no processo
Figura 4.8: Alteração de parâmetros do controlador
Figura 4.9: Equipamentos implantados no processo
Figura 4.10: Operações disponíveis para o equipamento
Figura 4.11: Alteração de status do equipamento
Figura 4.12: Visualização de dados de manutenção do equipamento
Figura 4.13: Outras informações sobre o equipamento
Figura 4.14: Exibição das variáveis do processo
Figura 4.15: Operações disponíveis para variáveis
Figura 4.16: Alteração de Set-Point de uma variável
Figura 4.17: Visualização de valores recentes, hora de medição e set-point de uma variável
Figura 4.18: Outras informações da variável selecionada
XII
XII
SUMÁRIO
1 INTRODUÇÃO ..................................................................................................................... 1
1.1.
ORIGEM DO TRABALHO............................................................................................... 1
1.2.
IMPORTÂNCIA DO TRABALHO ..................................................................................... 1
1.2.1 Dispositivos Móveis na Corporação........................................................................... 1
1.2.2 Investimento na Mobilidade........................................................................................ 2
1.2.3 JTWI............................................................................................................................ 2
1.3.
OBJETIVOS .................................................................................................................. 2
1.3.1 Objetivo Geral ............................................................................................................ 2
1.3.2 Objetivos Específicos .................................................................................................. 2
1.4.
LIMITAÇÕES DO TRABALHO ........................................................................................ 2
1.5.
ESTRUTURA DO TRABALHO ........................................................................................ 3
2 REVISÃO BIBLIOGRÁFICA ............................................................................................. 4
3 METODOLOGIA.................................................................................................................. 5
3.1.
LINGUAGEM JAVA....................................................................................................... 5
3.2.
EDIÇÕES DE JAVA ....................................................................................................... 5
3.3.
POR QUE J2ME ........................................................................................................... 6
3.4.
CONFIGURAÇÕES ........................................................................................................ 7
3.5.
PERFIS ......................................................................................................................... 9
3.6.
MIDLET ...................................................................................................................... 9
3.7.
SERVLET ................................................................................................................... 10
3.8.
CONEXÃO HTTP....................................................................................................... 10
3.9.
EXTENSIBLE MARKUP LANGUAGE (XML) ............................................................... 11
3.10.
JBOSS ....................................................................................................................... 11
4 APLICAÇÃO DO MODELO PROPOSTO...................................................................... 12
4.1.
ARQUITETURA DO PROJETO ...................................................................................... 12
XIII
4.2.
OVER THE AIR USER INITIATED PROVISIONING RECOMMENDED PRATICE (OTA) .... 13
4.3.
RESULTADOS OBTIDOS ............................................................................................. 13
5 CONCLUSÃO...................................................................................................................... 31
5.1.
REPIMS ................................................................................................................... 31
5.2.
REPIMS COMO FERRAMENTA PCP........................................................................... 31
REFERÊNCIAS BIBLIOGRÁFICAS ................................................................................. 32
1
1 INTRODUÇÃO
A necessidade humana da informação independente de lugar e hora em
conjunto com o significativo avanço da microeletrônica e aumento do poder de
processamento são fatores que permitiram a invasão dos dispositivos móveis na sociedade,
como destaca BRITO (2004). Aplicativos e jogos que antes exigiam arquiteturas
computacionais robustas, hoje podem ser executados em celulares, smartphones e PDAs. O
mercado de transmissão de dados sem fio explodiu depois de um período inicial que se
prolongou pelos últimos dez anos e pode ser sentido pelo crescimento de operadoras e
empresas que apostam na integração dessa tecnologia com a Web. Deixando de ser
ferramenta de finalidade especial e dispendiosa para ser amplamente adotada.
1.1. Origem do Trabalho
A oportunidade para os interessados em desenvolver programas para a
plataforma J2ME destaca-se por si própria. Com seu suporte para uma ampla variedade de
dispositivos e portabilidade entre plataformas, a aceitação entre os fabricantes e provedores de
serviço tem sido enorme.
Dessa forma, esse trabalho surgiu da idéia de aliar a presença dos dispositivos
móveis no cotidiano, a potencialidade da plataforma presente neles e a necessidade do acesso
a informação na indústria, gerenciada por sistemas de supervisão.
1.2. Importância do Trabalho
Com a explosão do mercado wireless, fica impossível imaginar uma empresa
trabalhando com eficiência e competitividade sem dominar esta tecnologia (RISCHPATER,
2001). Essa solução vem propor uma superação de barreiras físicas e técnicas que oferecem
limites à produtividade industrial oferecendo ao operador acesso, ajuste e monitoramento
remoto ao sistema de supervisão.
1.2.1 Dispositivos Móveis na Corporação
Mais que simplesmente a evolução da visão de uma empresa para os negócios,
"qualquer hora, qualquer lugar e qualquer dispositivo", é a máxima que reflete a mudança
fundamental das indústrias no século 21, como enfatiza DEDO (2001). O avanço da
tecnologia dos dispositivos móveis, juntamente com a influência da internet, são fatores
responsáveis pela popularização dos serviços baseados na web, e possibilidade das
organizações estenderem suas estruturas computacionais tradicionais em força móvel.
2
Destacando emprego nas áreas de Sistemas de ERP (Enterprise Resource Planning),
Manufatura e Marketing.
1.2.2 Investimento na Mobilidade
Munidos de inteligentes dispositivos de mão, operadores em uma indústria
podem reduzir os formulários específicos de papel e, conseqüentemente, diminuir o tempo de
execução da ordem, o que irá refletir significativamente na produção e possibilitará o real
emprego de ferramentas, até então, somente idealizadas.
1.2.3 JTWI
É apostando nesse panorama que a Sun Microsystems lançou a JTWI (Java
Technology for the Wireless Industry), a especificação J2ME (Java 2 Micro Edition) e
JavaCard.
1.3. Objetivos
O objetivo desse projeto será classificado em objetivo geral, demonstrando seu
escopo, e objetivos específicos, abordando os alvos de cada tecnologia.
1.3.1 Objetivo Geral
Este trabalho tem como objetivo o desenvolvimento de uma MIDlet Suite,
aplicativo Java projetado para ser executado em um dispositivo móvel, para acesso a Sistemas
de Supervisão, permitindo monitoração e ajuste remoto de processos industriais, em tempo de
execução.
1.3.2 Objetivos Específicos
A garantia de independência de sistema de supervisão e banco de dados, i.e., a
utilização de uma linguagem de programação portável, para o desenvolvimento de um projeto
capaz de prover comunicação, através da especificação de drivers JDBC para acesso a bases
de dados, com qualquer sistema, destaca-se como um objetivo específico para esse trabalho.
Além disso a comunicação em XML entre a MIDlet Suite e a Servlet tem como meta
possibilitar o acoplamento de projetos no futuro, evitando, problemas de comunicação, que
representa, atualmente, uma constante na indústria.
1.4. Limitações do Trabalho
Dentre as limitações do projeto se destaca o fato da maioria dos celulares no
Brasil ainda não possuírem uma máquina virtual java embarcada. O perfil dos aparelhos mais
3
recentes no mercado ainda é o primeiro adotado pelo consórcio de empresas que aprovaram a
especificação, disponibilizando uma biblioteca com recursos não tão sofisticados. Além disso,
ainda existe uma certa dificuldade dos aparelhos realizarem o download do aplicativo, por não
seguirem a prática recomendada pela especificação.
1.5. Estrutura do Trabalho
O projeto é dividido em Capítulos, sendo o segundo Revisão Bibliográfica
onde ocorre a exemplificação de projetos bem como as tendências. No Capítulo 3
Metodologia serão descritas as ferramentas utilizadas para implementação, além de destacar
suas vantagens, e principais razões para adoção no modelo. Seguido pelo Capítulo 4
Aplicação do Modelo Proposto responsável por relacionar características específicas do
projeto e sua aplicabilidade na indústria. Terminando no Capítulo 5 Conclusão onde serão
propostos um novo conceito e a integração com outras tecnologias.
4
2 REVISÃO BIBLIOGRÁFICA
J2ME é uma especificação extremamente nova. Fala-se de java em dispositivos
móveis há pouco tempo. Ainda assim conseguimos destacar alguns trabalhos realizados, como
o MobMed (MURAKAMI, 2004) - Inovando a Prática Médica Através de Sistemas Móveis
de Informação, projeto realizado no Instituto do Coração (InCor), parte do complexo do
Hospital das Clínicas, onde foi desenvolvido o Prontuário Eletrônico do Paciente (PEP). O
PEP armazena, de maneira eletrônica, todos os dados dos pacientes do hospital, disponibiliza
informações textuais (laudos, históricos clínicos, diagnósticos), como também permite
execução de ordens médicas (prescrição eletrônica, pedidos de exames).
Deve ser citado também uma grande atitude do Governo Brasileiro, o apoio e
desenvolvimento do sistema de Declaração de Imposto de Renda em Java, tornando-o
independente da plataforma (ELTON, 2005). O Governo investe agora no desenvolvimento
desse sistema voltado para dispositivos móveis baseado em J2ME que já se encontra em fase
avançada. A liberação está prevista para 2006.
Vale
ressaltar,
a
forte
tendência
da
especificação
J2ME
para
o
desenvolvimento de jogos, com bibliotecas específicas de programação em perfis mais
avançados.
E, ainda, destacar os concursos propostos por empresas da telefonia celular
como a Siemens, para a implementação de aplicativos nessa plataforma, baseados na operação
correta, e apelo da aplicação, como na facilidade de uso e potencial de negócio.
5
3 METODOLOGIA
3.1. Linguagem Java
Tudo começou com uma versão de Java - agora conhecida como Java 2
Standard Edition (J2SE) - e a frase "Write Once, Run Anywhaere TM" (Escreva uma vez,
execute em qualquer lugar). A idéia era desenvolver uma linguagem na qual você escreveria
seu código uma só vez, e então o executaria em qualquer plataforma que suportasse uma
máquina virtual Java.
Desde seu lançamento, em 1995, o panorama mudou significativamente. A
linguagem Java ampliou o seu alcance bem além das máquinas simples dos computadores
pessoais.
Dois anos após a introdução da linguagem, uma nova edição foi lançada a Java
2 Enterprise Edition, fornecendo suporte para aplicativos em nível empresarial de larga
escala. A inclusão mais revolucionária na família é a Micro Edition, que objetiva "ferramentas
de informação", variando desde máquinas ligadas à TV habilitadas para internet até telefones
celulares.
3.2. Edições de Java
J2SE (Java 2 Standard Edition): projetada para execução em máquinas simples
de computadores pessoais e estações de trabalho.
J2EE (Java 2 Enterprise Edition): com suporte interno para Servlets, JSP e
XML essa edição é destinada a aplicativos baseados no servidor.
J2ME (Java 2 Micro Edition): projetada para dispositivos com memória, vídeo
e poder de processamento limitados.
Todas as edições são classificadas quanto à máquina virtual e poder de
processamento de acordo com a figura 3.1
6
Figura 3.1: Edições e Máquinas Virtuais de Java
Fonte: JAVA, 2005
3.3. Por que J2ME
J2ME é destinado diretamente aos dispositivos comsumidores com poder
limitado. Muitos desses dispositivos (por exemplo, celular ou pager) não têm opção de
download e software de instalação, além daquele que foi configurado durante o processo de
fabricação. Com a introdução do J2ME, os dispositivos “micros” não precisam ter natureza
“estática”. Exatamente como um navegador Web fazendo download de applets Java, uma
implementação de J2ME em um dispositivo permite a opção de navegar, fazer download e
instalar aplicativos Java e conteúdo.
Com a introdução de Java para tais dispositivos, temos agora acesso aos
recursos inerentes da linguagem e da plataforma Java, i.e., uma linguagem de programação
fácil de dominar, um ambiente em tempo de execução que fornece uma plataforma segura e
portável, e acesso a conteúdo dinâmico. Sem mencionar a comunidade de desenvolvedores
estimada em mais de 2 milhões de pessoas, são características apontadas por MUCHOW
(2004).
7
Por todos esses motivos e pela fundamental característica de portabilidade,
afinal de contas, existe uma ampla variedade de aparelhos, J2ME foi a linguagem de
programação escolhida para o desenvolvimento desse projeto. Portanto, para prosseguir com o
conceito WORA, foram apresentados dois novos conceitos: configurações e perfis.
3.4. Configurações
Para suportar uma ampla variedade de produtos que se encaixam dentro do
escopo do J2ME, a Sun introduziu a Configuração.
Uma Configuração define uma plataforma Java para uma ampla variedade de
dispositivos. Ela está intimamente vinculada a uma máquina virtual Java (JVM, Java Virtual
Machine). Na verdade, uma configuração define recursos da linguagem Java e as bibliotecas
Java básicas da JVM para essa configuração em particular.
A linha divisória de aplicação de uma configuração é, de modo geral, baseada
ma memória, no vídeo e na conectividade de rede (ou limitações disso) e no poder de
processamento disponível em um dispositivo.
A seguir as características típicas dentro de duas configurações corretamente
definidas:
Configuração de Dispositivo Conectado (CDC)
•
512 kilobytes (no mínimo) de memória para executar o Java
•
256 kilobytes (no mínimo) de memória para alocação de memória em tempo de
execução
•
Conectividade de rede, largura de banda possivelmente persistente e alta
Configuração de Dispositivo Conectado Limitado (CLDC)
•
128 kilobytes de Memória para executar o Java
•
32 kilobytes para alocação de memória em tempo de execução.
•
Interface restrita com o usuário
•
Baixo poder, normalmente alimentado por bateria
•
Conectividade de rede, normalmente dispositivos sem fio com largura de banda baixa
e acesso intermitente.
8
Na figura 3.2 ilustra-se o relacionamento entre a API J2SE e as APIs das
configurações especificadas pela Sun.
Figura 3.2: Relacionamento entre API J2SE e API das Configurações
Fonte: JAVA, 2005
A questão é, à medida que a tecnologia nos oferecer mais poder de
processamento, com mais memória e recursos de tela, a sobreposição entre essas categorias se
tornará maior.
Para a CDC, a máquina virtual tem a mesma especificação do J2SE. Para a
CLDC, a Sun desenvolveu o que é chamado de implementação de referência de uma máquina
virtual
conhecida como K Virtual Machine. Essa KVM foi projetada para manipular
considerações especiais dos dispositivos de recurso restrito.
Na figura 3.3 descreve-se a variação das máquinas virtuais nos dispositivos de
acordo com o poder de processamento.
9
Figura 3.3: Variação das máquinas virtuais com os dispositivos
Fonte: JAVA, 2005
3.5. Perfis
Tudo bem que os dispositivos caiam dentro de uma ou de outra categoria de
configuração, constante da figura 3.3. Por exemplo, um telefone celular, PDA e pager típicos
se encaixarão todos nas diretrizes da CLDC. Entretanto, o que parece limitante para um
dispositivo numa configuração, pode parecer uma abundância para outro. O que pode ser
observado se fizermos uma analogia entre o tamanho da tela do telefone celular em relação à
do PDA.
Para tratar dessa ampla variação de recursos e para dar mais flexibilidade à
medida que a tecnologia muda, a Sun introduziu o conceito de perfil na plataforma J2ME.
Um perfil é uma extensão de uma configuração. Ele fornece as bibliotecas para
um desenvolvedor escrever aplicativos para um tipo em particular de dispositivo. Por
exemplo, o MIDP (Perfil de Dispositivo de Informação Móvel) define APIs para
componentes, entrada e tratamento de eventos de interface com o usuário, armazenamento
persistente, interligação em redes e cronômetros, levando em consideração as limitações de
tela e memória dos dispositivos.
3.6. MIDlet
Uma MIDlet é um aplicativo Java projetado para ser executado em um
dispositivo móvel. Mais especificamente, uma MIDlet tem como classes Java básicas a CLDC
10
e o MIDP. MIDlet Suite consiste em um conjunto de MIDlets empacotadas, usando um
arquivo JAR.
Para execução da MIDlet será utilizado o pacote “J2ME Wireless Toolkit”
distribuído gratuitamente pela Sun Microsystems que será responsável por emular o
dispositivo móvel.
3.7. Servlet
Uma servlet é um componente do lado do servidor. Ela pode ser usada para
estender a funcionalidade de qualquer servidor compatível com Java, mas normalmente as
servlets são usadas para escrever aplicativos Web em um servidor da Web, descreve BOND
(2003) e acrescenta os principais recursos e vantagens das servlets:
•
A API (Aplication Program Interface) de servlets fornece uma interface personalizada
para aplicativos Web.
•
As servlets são independentes do servidor e da plataforma. Isso torna as servlets
portáveis e reutilizáveis.
•
As servlets são eficientes e flexíveis.
•
As servlets são executadas dentro do servidor; portanto, elas podem delegar certas
funções para serem executadas pelo servidor em seu nome, como a autenticação do
usuário.
3.8. Conexão HTTP
O desenvolvimento de aplicações para celular utilizando a plataforma J2ME
não é uma tarefa tão complicada. Porém, ainda esbarramos em um grande problema: na
capacidade limitada de processamento e de armazenamento de informações. Uma alternativa
viável, como sugere BRITO (2005), é a utilização de servidores remotos para processar
informações e armazenar dados em um repositório central facilitando o acesso a informações
que poderão ser feitos por outros mecanismos.
O MIDP possui mecanismos genéricos para acesso à rede. Na MIDP 1.0, perfil
utilizado nesse projeto, a conexão pode ser feita apenas por HTTP. A partir do MIDP 2.0 foi
disponibilizado o recurso de conexão segura o HTTPS.
Características do Protocolo HTTP: HTTP (Hyper Text Transfer Protocol) é o
protocolo de transferência de dados utilizado na web e é a base de toda sua funcionalidade.
11
Leve e veloz, foi construído sobre o protocolo TCP/IP, sendo também, orientado a conexão.
Na verdade, o protocolo HTTP permite que dispositivos e browser conversem com os
servidores web, façam pedidos e recebam respostas em forma de texto através de uma
conexão internet (BOND, 2003).
3.9. Extensible Markup Language (XML)
XML (eXtensible Markup Language) é uma linguagem definida pelo W3C, o
órgão que define os padrões para a web. Fortemente indicada para criação de elementos, com
uma marcação personalizada, como infere HOLZNER (2001). Desse modo, a XML supera
outras linguagens de marcação, como HTML (Hyper Text Markup Language), onde os
elementos são predefinidos. Na verdade, adiciona HOLZNER (2001), XML é uma
metalinguagem, pois permite que você crie sua própria linguagem de marcação. E é por esse
motivo, e, também pelo fato de independer da linguagem de ambas as camadas, que foi
definida como padrão de comunicação entre MIDlet e Servlet nesse projeto.
3.10. JBoss
JBoss, é hoje, sem dúvida nenhuma o servidor de aplicação que mais vem
chamando a atenção no mundo J2EE (KANTEK, 2005). Um servidor de aplicação consiste
em um EJB Contêiner (Enterprise Java Beans) juntamente com um Web Contêiner, nesse
caso, JBoss operando com o Tomcat. Um contêiner fornece serviços para um componente.
Esses serviços podem incluir gerenciamento de ciclo de vida, segurança, conectividade,
transações e persistência (BOND, 2003). Cada tipo de componente J2EE é implantado dentro
de seu próprio tipo de contêiner. Nesse projeto o deploy do aplicativo WAR (Web Archive)
contendo
a
servlet
será
realizado
nessa
ferramenta.
12
4 APLICAÇÃO DO MODELO PROPOSTO
O projeto proposto tem como objetivo agilizar a tomada de decisões integrando
o chão de fábrica com o nível corporativo, e, em nome dessa agilidade transformar a
informação do processo em informação de negócios. A implementação dessa ferramenta
permitirá a visualização de dados relacionados a produção em todas as unidades da respectiva
indústria e integrá-los com outros dados de mercado, como cotações do mercado financeiro dólar ou petróleo. A intenção é transformar os relatórios em papel em informações
eletrônicas.
A grande preocupação de implantação do projeto é trabalhar sempre com
novidades que aproveitem a tecnologia instalada, como ressalta PETRO (2005), para causar o
menor distúrbio possível na produção. Nenhuma indústria permite ser cobaia, e ficar testando
tecnologia. Porque, em nome da competitividade e da produtividade, cada vez mais as
empresas procurar parar o mínimo possível as unidades.
É importante, o destaque desse projeto, no que diz a respeito independência dos
seguintes componentes
•
plataforma de servidor: afinal, a grande característica da linguagem java, descrita
anteriormente, é a portabilidade.
•
DBMS (Database Management System) Sistema Gerenciador de Banco de Dados:
através da API JDBC é possível conectar a qualquer banco de dados por meio de um
driver.
•
do dispositivo móvel: pelas características de configurações e perfis citados
anteriormente.
4.1. Arquitetura do Projeto
Na figura 4.1 esboça-se a arquitetura do projeto
Figura 4.1: Arquitetura do Projeto
13
A MIDlet estabelece uma conexão HTTP com uma Servlet requisitando dados
do processo.
A servlet proverá comunicação com a base de dados, sistema responsável pelo
armazenamento de todos os registros do processo, bem como dados de configuração do
sistema de supervisão, através de um driver específico e da API JDBC. Entregando ao
navegador, celular ou PDA, o conteúdo solicitado em formato XML.
4.2. Over the Air User Initiated Provisioning Recommended Pratice (OTA)
OTA (Over the Air User Initiated Provisioning Recommended Pratice) Prática
Recomendada de Provisão Iniciada pelo Usuário Através do Ar. A especificação da
plataforma J2ME não define como as MIDlet devem ser descarregadas nos dispositivos
móveis. OTA, como a própria sigla sugere diz respeito a uma prática recomendada.
Primeiramente, o dispositivo móvel faz o download do arquivo JAD, o
descritor do pacote, gerado pela ferramenta J2ME Wireless Toolkit. Depois se as
especificações de CLDC e MIDP, assim como espaço para armazenagem, forem atendidas
pelo dispositivo móvel, o usuário poderá realizar o download do pacote propriamente dito, o
arquivo JAR, também gerado pela ferramenta.
4.3. Resultados Obtidos
Nas figuras 4.2 a 4.18 ilustra-se os resultados enviados pela Servlet, e,
apresentados pelo dispositivo móvel, através da conexão HTTP.
14
Figura 4.2: MIDlets empacotadas na Suite
Na figura 4.2 apresenta-se as MIDlet empacotadas na Suite, instalada no dispositivo móvel,
que podem ser executadas pela opção Launch, no canto inferior esquerdo da tela.
15
Figura 4.3: MIDlet para requisição de dados através de comandos SQL
Na figura 4.3, selecionando a primeira MIDlet, SQLHttp, exibe-se uma tela para edição dos
parâmetros que serão enviados para a Servlet.
16
Figura 4.4: Dados apresentados em XML
Na figura 4.4, apresenta-se a resposta enviada pela Servlet, em formato XML, após a
realização da consulta SQL no banco.
17
Figura 4.5: Processos registrados na base de dados
Na figura 4.5, selecionando a segunda MIDlet, SupervisaoHttp, exibe-se os processos
industriais registrados no banco de dados.
18
Figura 4.6: Operações disponíveis para o processo selecionado
Na figura 4.6, selecionando o primeiro processo listado na figura 4.5, Processo Diamante.
Tem-se acesso aos componentes do mesmo, Controladores, Equipamentos, Status e Variáveis.
19
Figura 4.7: Controladores implementados no processo
Na figura 4.7, apresenta-se os controladores PID para o Processo Diamante.
20
Figura 4.8: Alteração de parâmetros do controlador
Na figura 4.8, exibe-se a alteração de parâmetros do Controlador PID.
21
Figura 4.9: Equipamentos implantados no processo
Na figura 4.9, lista-se todos os equipamentos associados ao processo diamante.
22
Figura 4.10: Operações disponíveis para o equipamento
Na figura 4.10, selecionando o equipamento Sensor de Nível, exibido na figura 4.9, tem-se
acesso às funções de Alteração de Status do Equipamento, bem como, aos Dados de
Manutenção e outras Informações.
23
Figura 4.11: Alteração de status do equipamento
Na figura 4.11, ao usuário é permitida a alteração de status do equipamento, ou seja, através
do dispositivo móvel, pode-se parar ou reiniciar o equipamento selecionado.
24
Figura 4.12: Visualização de dados de manutenção do equipamento
Na figura 4.12, exibe-se os dados de manutenção do equipamento, a data e a validade em dias,
para que o operador possa assegurar o funcionamento do processo.
25
Figura 4.13: Outras informações sobre o equipamento
Na figura 4.13, apresenta-se informações de auxílio do equipamento selecionado, como tipo,
marca e modelo.
26
Figura 4.14: Exibição das variáveis do processo
Na figura 4.14, exibe-se as variáveis associadas ao Processo Diamante.
27
Figura 4.15: Operações disponíveis para variáveis
Na figura 4.15, apresenta-se as operações disponíveis para a variável selecionada na figura
4.14.
28
Figura 4.16: Alteração de Set-Point de uma variável
Na figura 4.16, apresenta-se a tela que permite, ao operador do dispositivo móvel, a alteração
do Set-Point da variável, dando suporte a flexibilização da produção, um dos principais
objetivos do projeto.
29
Figura 4.17: Visualização de valores recentes, hora de medição e set-point de uma variável
Na figura 4.17, visualiza-se, num dispositivo do tipo QWERTY, comparado a um PDA
(Personal Digital Assistant), os 10 valores mais recentes da variável, assim como a data e
hora da medição e o valor do Set-Point, permitindo comparação e constatação da estabilização
do sistema.
30
Figura 4.18: Outras informações da variável selecionada
Na figura 4.18, exibe-se as informações associadas à variável selecionada na figura 4.14,
como Tipo da Variável e ainda o equipamento relacionado à sua medição.
31
5 CONCLUSÃO
5.1. REPIMS
O projeto desenvolvido, baseado no conceito PIMS (Plant Information
Management System), consiste em novo conceito proposto, denominado REPIMS (Remote
Plant Information Management System). Esse Sistema Gerenciador Remoto de Informações
da Planta, pode ser utilizado por empresas, com os seguintes benefícios para o processo
produtivo:
•
maior integração entre a área produtiva e o nível corporativo
•
ajuste de parâmetros do processo por dispositivo remoto
•
aquisição e transformação de dados da planta
•
maior agilidade na tomada de decisões
5.2. REPIMS como ferramenta PCP
Dentro do contexto iniciado pelo REPIMS, pode-se ainda, indicá-lo como
ferramenta PCP, em projeto futuro, com implementação de módulos para emissão de ordem
de compra e emissão de ordem de fabricação remotos, pois ainda representam uma realidade
no âmbito industrial, os formulários de papel específico, mesmo com significativo avanço
tecnológico. E adição de módulo de gerenciamento de fluxo de informações e operações,
gerenciando não só o processo, como atividades exercidas pelos seus operadores. Enfim,
aprimorando o conceito de CIM (Manufatura Integrada Por Computador) para a Manufatura
Integrada Por Dispositivos Móveis.
32
REFERÊNCIAS BIBLIOGRÁFICAS
BOND, Martin Et. All Aprenda J2EE Com EJB, JSP, Servlets, JNDI, JDBC e XML em 21
Dias - São Paulo: Pearson Education, 2003
BRITO, Robison Cris. Desenvolvimento de Aplicativos Para Celular: Java 2 Micro Edition.
Disponível em <http://www.portaljava.com.br> Acessado em 20/08/2004
BRITO, Robison Cris. Conexão HTTP com J2ME: Comunicando aplicações J2ME com
servidores remotos - Revista Web-Mobile Edição 2, Ano 1
DEDO, Douglas. Mobile Devices in the Enterprise: Mobility Group - Microsoft Corporation Outubro 2001
ELTON, K. Declaração do Imposto de Renda pelo Celular. Acessado em 16/04/2005
Disponível em <http://www.portaljava.com.br>
HOLZNER, Steven. Desvendando XML - Rio de Janeiro: Campus, 2001
KANTEK, Antonio; TAKAHASHI, Kentaro. Introdução ao JBoss, o servidor de aplicação
open source. Disponível em <http://www.mundooo.com.br> Acessado em 19/04/2005
MUCHOW, John W. Core J2ME – Tecnologia & MIDP – São Paulo: Pearson Makron
Books, 2004
MURAKAMI, Alexandre. MobMed - Inovando a Prática Médica Através de Sistemas Móveis
de Informação Disponível em <http://www.linux.ime.usp.br/~cef/mac499-03> Acessado em
18/08/2004
PETRO. A Fábrica na Palma da Mão - Revista Petro & Química - Edição 260 - Maio, 2004.
Disponível em <http://www.petroequimica.com.br> Acessado em 13/04/2005
RISCHPATER, Ray. Desenvolvendo Wireless para Web – São Paulo: Makron Books, 2001
JAVA, Sun Microsystems. Dísponível em <http://www.java.sun.com> Acessado em
22/02/2005
Download