PATROL - SISTEMA NA INTERNET PARA APOIO AO ENSINO DE CONTROLE



Documentos relacionados
CARDS - Jogo Educativo na Internet para Ensino a Distância

Satélite. Manual de instalação e configuração. CENPECT Informática cenpect@cenpect.com.br

02 - Usando o SiteMaster - Informações importantes

CENTRO UNIVERSITÁRIO CATÓLICA DE SANTA CATARINA PRÓ-REITORIA ACADÊMICA NÚCLEO DE EDUCAÇÃO EM AMBIENTES DIGITAIS NEAD

ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente

EQUIPE: ANA IZABEL DAYSE FRANÇA JENNIFER MARTINS MARIA VÂNIA RENATA FREIRE SAMARA ARAÚJO

Desenvolvendo Websites com PHP

Procedimentos para Reinstalação do Sisloc

Considerações a serem feitas antes da implantação.

MANUAL EXPORTAÇÃO IMPORTAÇÃO

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3

Manual do Visualizador NF e KEY BEST

Manual de Utilização do Sistema GRServer Cam on-line (Gerenciamento de Câmeras On-line)

Análise de Ponto de Função

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO

Manual Geral do OASIS

agility made possible

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

Moodle - Tutorial para Professores

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

Manual de Operação do Sistema de Tickets Support Suite

MANUAL DO ALUNO DE EDUCAÇÃO A DISTÂNCIA (EAD) I-UMA

Moodle - CEAD Manual do Estudante

Unidade Gestora de Integração de Sistemas Tributários

MANUAL PARA UTILIZAÇÃO DO MOODLE FACULDADE INTERAÇÃO AMERICANA VIRTUAL - Versão: Aluno

QUALIDATA Soluções em Informática. Módulo CIEE com convênio empresas

Procedimentos para Instalação do Sisloc

Procedimentos para Instalação do SISLOC

SISTEMA INTEGRADO DE GESTÃO ACADÊMICA

AULA: BrOffice Impress terceira parte. Ao final dessa aula, você deverá ser capaz de:

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão Atualização 26/01/2009 Depto de TI - FASUL Página 1

INSTRUMENTO NORMATIVO 004 IN004

Funcionalidades do Sistema de Negociação de Créditos de Carbono. Anexo VIII

GUIA BÁSICO DA SALA VIRTUAL

O Oficina Integrada é um sistema completo para o controle e gerenciamento de oficinas mecânicas. É o primeiro e único software que controla o fluxo

ÍNDICE MANUAL SITE ADMINISTRÁVEL TV. 1. Introdução 2. Acessando o site administrável/webtv SITE ADMINISTRÁVEL 3. CONFIGURAÇÕES

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Módulo 1 Configuração de Cursos. Robson Santos da Silva Ms.

Histórico de Revisão Data Versão Descrição Autor

Manual SAGe Versão 1.2 (a partir da versão )

Sumário INTRODUÇÃO Acesso ao Ambiente do Aluno Ferramentas e Configurações Ver Perfil Modificar Perfil...

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

Guia Site Empresarial

2 Diagrama de Caso de Uso

e-ouv Passo-a-passo Sistema de Ouvidorias do Poder Executivo Federal Junho, 2015 Controladoria-Geral da União

Sumário. Apresentação O que é o Centro de Gerenciamento de Serviços (CGS) NTI? Terminologia Status do seu chamado Utilização do Portal Web

Manual Q-Acadêmico 2.0 Módulo Web - Aluno

Sistema de Controle de Solicitação de Desenvolvimento

Projeto SIGA-EPT. Manual do usuário Módulo Requisição de Almoxarifado SISTEMA INTEGRADO DE GESTÃO ACADÊMICA

MANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC GOVERNO FEDERAL SOFTWARE PÚBLICO

Síntese das discussões do fórum Livro-APF: Julho/2010

Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5.

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

REAL LACOS: CONTROLE DIGITAL EM TEMPO REAL

APOO Análise e Projeto Orientado a Objetos. Requisitos

Planejando o aplicativo

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

MANUAL. Perfil de Professor

18/04/2006 Micropagamento F2b Web Services Web rev 00

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração.

Mantis Sistema de controle de chamados Versão Roteiros

FCT Faculdade de Ciências e Tecnologia Serviço Técnico de Informática STI SGCD Sistema Gerenciador de Conteúdos Dinâmicos

Software. Gerenciamento de Manutenção

Tutorial WEB CONTENT MANAGEMENT [WCM] Obtenha benefícios a partir das aplicações customizadas da ADMT.

Guia de Acesso Rápido AVA Ambiente Virtual de Aprendizagem Aluno

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

1 Sumário O Easy Chat Conceitos Perfil Categoria Instalação O Aplicativo HTML...

CONSTRUÇÃO DE BLOG COM O BLOGGER

Módulo e-rede VirtueMart v1.0. Manual de. Instalação do Módulo. estamos todos ligados

TUTORIAL DO ALUNO. Olá, bem vindo à plataforma de cursos a distância da Uniapae!!!

Procedimento de anexação de peças e envio

Sistema de de Bilhetagem Eletrônica MANUAL MÓDULO PDV

Como incluir artigos:

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

Noções de. Microsoft SQL Server. Microsoft SQL Server

Manual do Usuário. Protocolo

Manual de Utilização

Ambiente Moodle 2º Semestre de 2010 Modelo A4

Manual de Utilização Moodle

Registro e Acompanhamento de Chamados

Manual do usuário. Softcall Java. versão 1.0.5

Plano de Gerenciamento do Projeto

MANUAL DO ALUNO PARA NAVEGAR NO AMBIENTE VIRTUAL DE APRENDIZAGEM - AVA

Cadastramento de Computadores. Manual do Usuário

INTRODUÇÃO AO AMBIENTE MOODLE DA UFPA. Guia rápido

Manual do Painel Administrativo

A PÁGINA DISCIPLINAR DE MATEMÁTICA DO PORTAL DIA A DIA EDUCAÇÃO

Manual do usuário - Service Desk SDM - COPASA. Service Desk

Sagômetro Digital. Manual de Instalação e Operação

Ferramentas de Acesso Remoto

Automação de Bancada Pneumática

MONTAGEM DE PROCESSO VIRTUAL

Aplicação Prática de Lua para Web

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

Solitaire Interglobal

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Transcrição:

PATROL - SISTEMA NA INTERNET PARA APOIO AO ENSINO DE CONTROLE Fabio Lattario Fonseca 1, Sergio Barbosa Villas-Boas 2 UFRJ - DEL (Departamento de Engehiaria Eletrônica e Computação) 1 fabiolf@coppe.ufrj.br UFRJ - DEL (Departamento de Engehiaria Eletrônica e Computação) 2 Ilha do Fundão, Centro de Tecnologia, Sala H-219 Rio de Janeiro - RJ Cx. Postal 68.564 CEP 21.945-970 villas@del.ufrj.br www.del.ufrj.br/~villas Resumo. O PATROL é um sistema na Internet para apoio ao ensino de disciplinas relacionadas a controle linear de sistemas dinâmicos. A idéia é levar o ensino de disciplinas dessa área a ser feito com o complemento do sistema que se está propondo. O PATROL consiste de um conjunto de páginas web, sendo parte delas estáticas e outra parte interativa. A parte estática serve como uma referência rápida para os tópicos abordados. A parte interativa permite ao usuário final executar diversos tipos de simulações, obtendo resultados numéricos e gráficos pelo browser. Um assunto de especial interesse na área de controle é o ensino da sintonia de controladores, especificamente o controlador do tipo PID. Esse assunto é tratado com especial atenção pelo PATROL, sendo que o professor pode observar e medir o nível de conhecimento de um aluno na tarefa de obter a sintonia adequada para o controlador numa situação específica, a partir do número de interações que o aluno requer para obter um resultado satisfatório. Referência: http://del.ufrj.br/~villas/patrol.html Palavras-chave: Ensino a Distância, Sistema na Internet, Controle, Sistemas Dinâmicos, Controlador PID NTM - 215

1. INTRODUÇÃO Uma das áreas do ensino de engenharia é a área de controle linear de sistemas dinâmicos, também conhecida simplesmente como controle. Trata-se de uma área multidiciplinar, com fundamentos e aplicações em eletricidade, eletrônica, mecânica, química, aeronáutica, etc. A aplicação de sistemas de controle tem o potencial de trazer grande eficiência a unidades industriais. Mas a realidade em muitos países do mundo, em particular o Brasil, é que boa parte dos conhecimentos acadêmicos da área de controle estão distanciados da realidade da maioria das aplicações práticas. A importância na aproximação entre universidade e indústrias pode ser verificado por vários artigos publicados e workshops enfatizando essa aproximação, dentre os quais cita-se como exemplo o workshop de Denis et al. na American Control Conference [4]. Esse distanciamento não é benéfico nem para o setor acadêmico (que se isola dos problemas reais), nem para o setor industrial (que deixa de aplicar técnicas já conhecidas, portanto operando potencialmente em eficiência menor que a possível). O uso de técnicas de ensino a distância, particularmente de técnicas baseadas em Internet, pode ser a chave para uma integração maior entre a setor acadêmico e o setor industrial. O DEL [1] é um departamento que tem tradição de ensino tanto no setor de controle linear de sistemas dinâmicos quanto no ensino de técnicas de desenvolvimento de sistemas de software, inclusive para Internet. Considerando-se a motivação já exposta, iniciou-se o projeto PATROL [2], que é uma experiência concreta de um sistema na Internet para ser utilizado como apoio ao ensino de controle linear de sistemas dinâmicos. Sendo um sistema na Internet, o PATROL poderá ser usado em estruturas acadêmicas de ensino a distância. Utilizando-se o PATROL, o aluno (usuário final) pode verificar uma coletânea de referências rápidas sobre diversos assuntos relacionados a área de controle. Essas referências são consideradas como conteúdo estático (no sentido que não há interatividade nessa parte). Além disso, existe a parte interativa do sistema, em que o aluno pode executar simulações numéricas, sendo que o resultado gráfico dessa simulação é obtido diretamente no browser. Dessa forma, pode-se oferecer um ambiente de estudo sofisticado sem que se exija que o aluno (usuário final) precise fazer qualquer instalação complexa de software. Um simples computador conectado a web é a ferramenta básica de acesso ao PATROL. Um recurso em destaque no PATROL é a opção de controladores PID. Trata-se de um recurso interativo específico para treinamento simulado de sintonia de controladores tipo PID. Ressalte-se que o controlador PID é o tipo de controlador dos mais usados em diversos tipos de aplicações, e o conhecimento de sua sintonia é de importância estratégica para o profissional de controle [5]. 2. UTILIZAÇÃO DO PATROL 2.1 Interface A versão atual do PATROL está disponível sem senha a partir da URL [2]. Nessa versão, o usuário final pode acessar tanto a sua parte estática quanto a sua parte interativa. No menu principal ainda consta referência aos fundamentos tecnológicos que foram usados para o desenvolvimento do sistema, bem como crédito aos autores e um link para uma introdução ao uso do sistema. O menu principal está sempre disponível. O menu de módulos estáticos dá acesso a diversos links com referências rápidas, estáticas, de assuntos relacionados ao tema do PATROL, que é controle linear de sistemas dinâmicos. A partir desses módulos estáticos, o usuário final (aluno) pode rever conceitos relacionados ao assunto que se está estudando. Esses módulos estáticos são uma coletânea de assuntos dentro da área de controle, selecionados a partir de boas referências bibliográficas. A lista dos módulos estáticos disponíveis no PATROL é acessível diretamente a partir do menu módulos estáticos no menu principal. Os módulos dinâmicos são os módulos que oferecem interatividade ao usuário final. A interatividade nesse caso é a capacidade de executar simulações numéricas, inclusive com a visualização gráfica dos resultados no browser do usuário final. Para o ensino de controle, é de particular importância que se consolide os conhecimentos em estudo a partir da execução de simulações numéricas. A partir do PATROL, as simulações de problemas elucidativos selecionados especialmente para finalidade didática são possíveis a partir dos dados que o aluno preenche em formulários no próprio browser. A lista dos módulos interativos disponíveis no PATROL é acessível diretamente a partir do menu módulos interativos no menu principal. A figura Figura 1 mostra a tela inicial do PATROL, com o menu principal (a esquerda), sendo que a seta enfatiza os dois itens principais do menu - módulos estáticos e módulos interativos. O trabalho completo, incluindo figuras e tabelas, deve ser limitado a 10 (dez) páginas em tamanho A4 (21 cm x 29,7 cm). Por favor, atenda a esta limitação escrevendo de forma concisa e não reduzindo figuras e tabelas a tamanhos que sacrifiquem o entendimento dos símbolos e legendas nelas incluídos. NTM - 216

Figura 1: Tela inicial do PATROL, vista pelo browser 2.2 Módulos estáticos A parte de módulos estáticos contém um conjunto de referências rápidas para itens de interesse da área de controle. Atualmente, os módulos estáticos abordam os itens mostrados abaixo. Mas a estrutura do sistema PATROL permite facilmente que mais módulos estáticos possam ser acrescentados, ou ter o seu conteúdo modificado. Estabilidade de Sistemas Dinâmicos Pólos e Zeros Função de transferência Espaço de estados Simplificação de sistemas dinâmicos Interconecção de sistemas lineares Sistemas multivariáveis Cálculo de controladores Resposta no tempo Resposta em freqüência Observabilidade e controlabilidade 2.3 Módulos interativos A parte de módulos interativos é aquela que permite ao usuário final executar simulações numéricas. Esses módulos são uma parte essencial do PATROL, pois faz o sistema tornar-se uma versão bastante melhorada de um livro. Enquanto um livro é basicamente um conteúdo estático, o sistema na Internet se diferencia pela possibilidade de interatividade. A partir de exemplos didáticos do próprio sistema, o aluno pode livremente alterar os parâmetros da simulação e repeti-la com os novos parâmetros. Além disso, as simulações podem ser feitas de qualquer computador conectado a web, sem a necessidade de instalação de softwares especiais no computador do usuário final, o que facilita bastante o uso. Na versão atual do PATROL, os módulos interativos implementados são aqueles listados abaixo. Novamente ressaltamos que novos módulos podem ser adicionados ao sistema com facilidade devido a forma pela qual foi estruturado o sistema. Resposta ao degrau de 1a. ordem Resposta ao degrau de 2a. ordem Resposta ao degrau de ordem qualquer Resposta em freqüência Root-Locus (lugar das raízes) Controladores PID 3. IMPACTO NO ENSINO A versão atual do PATROL está no estágio utilização direta. Neste estágio, qualquer usuário final pode entrar na página sem senha e utilizá-la, seja para os módulos estáticos, seja para os módulos interativos. A idéia de tornar a página de livre acesso é adequada para a fase inicial de implantação do projeto. Utilizar um sistema na Internet para NTM - 217

apoio ao ensino de controle é ainda um conceito por se estabelecer. Proteger com senha as funcionalidades da página seria um procedimento cerceador para o projeto nesse momento inicial. Contudo, a tendência do sistema é que tenha as suas funcionalidades protegidas por senha, para que se possa saber quem o está utilizando. Cada aluno, identificado previamente, poderia ter um arquivo onde todas as suas atividades no site ficariam registradas em uma espécie de log. Com isso, o professor poderia analisar esse arquivo e assim obteria informações importantes sobre o nível de aprendizado de cada aluno individualmente. O log de utilização de uma ferramenta didática por um aluno é informação de grande relevância para um tutor. Supondo que cada aluno possui uma senha própria e que não a revela aos demais, a informação de log dá uma medida de quanto tempo o aluno ficou trabalhando com a ferramenta. No caso de estudos empíricos, como é o caso do estudo de sintonia de controladores PID, o log é uma ferramenta de particular valor, como é mostrado na seção abaixo. 3.1 Ensino de sintonia de controladores PID Dentro da área de controle, há um item em especial de grande importância, que é o estudo de sintonia de controladores PID. O controlador PID (Proporcional Integral Derivativo) é a opção de controlador adotada pela grande maioria dos problemas industriais de controle linear. A indústria petro-química é um segmento que faz uso particularmente intenso desse tipo de controlador. Trata-se de um controlador cuja lei de controle é de certa forma empírica. Contudo, sua robustez e desempenho são consagrados pelo uso prático. O controlador PID possui 3 parâmetros de ajuste, e quando ajustados adequadamente o controlador adquire grande versatilidade. Para um profissional da área de controle, uma competência importante é ser capaz de sintonizar (ajustar parâmetros) de um controlador PID. Ou seja, a partir de um dado sistema de controle baseado em controlador PID, o profissional deve ser capaz de propor ajustes para o controlador de modo a obter um sistema de controle com bom desempenho. Caso o sistema já esteja ajustado, mas com desempenho insatisfatório, o profissional deve ser capaz de analisar os sinais de controle e re-sintonizar o controlador no sentido de obter melhores respostas do sistema. Uma das funcionalidades do PATROL é exatamente exercitar o treinamento e educação associados a competência descrita no parágrafo anterior. Selecionando a opção módulos interativos - controladores PID, o PATROL mostra uma tela em que o usuário final entra com um modelo do objeto a ser controlado (também conhecido como planta ). A partir desse modelo, o PATROL inicialmente mostra as curvas de reação do modelo (planta em malha aberta). Em seguida, oferece a opção de simular o comportamento dessa planta em malha fechada (planta conectada ao controlador), sendo que a sintonia do controlador é aquela que o usuário final entrou por formulário de página web. O resultado é mostrado graficamente no browser do usuário final. Caso a resposta da simulação não seja satisfatória, o ciclo de propor nova sintonia para o controlador e obter nova simulação pode ser repetido indefinidamente. A cada nova interação, o usuário final observa todas as tentativas anteriores de obter sintonias para o controlador. Dessa forma, por observar e analisar a influência dos parâmetros de ajuste na evolução das curvas de reação simuladas, a verdadeira essência da competência de sintonizar o controlador está sendo exercitada. Além disso, um tutor pode ter uma medida de quanto conhecimento um aluno possui na tarefa de sintonizar um controlador por verificar o número de interações que são necessárias para o aluno obter um resultado satisfatório. Na Figura 2, é mostrado o modelo da visualização no browser pelo usuário final, de como o PATROL funciona na opção controlador PID. Nesse modelo, a partir de uma planta em particular, o usuário final pode verificar a curva de resposta em malha aberta (sem controlador), e também duas respostas com controlador. Como pode-se ver pela simulação, a planta é instável (a resposta cresce indefinidamente a partir de entrada degrau). Na interação 1, o controlador foi ajustado com sintonia (Kc=1, Ti=15, Td=0.1); a resposta é estável, mas muito oscilatória e portanto não é boa. Numa segunda interação, o controlador foi ajustado aumentando-se o tempo integral (essa é uma das técnicas para reduzir a oscilação [5]), e a nova sintonia do controlador é (Kc=1, Ti=1500, Td=0.1). A resposta melhorou, pois a oscilação é amortecida mais rapidamente, mas ainda ocorre considerável oscilação e sintonia melhor poderia ser obtida prosseguindo a procura pelos parâmetros adequados de sintonia do controlador. O usuário final inicialmente observa apenas a resposta da planta em malha aberta. O PATROL oferece a possibilidade de acrescentar o controlador PID com uma sintonia obtida pelo usuário final, que requisita tantas interações quanto queira. A medida em que novas interações são solicitadas, o histórico do que foi requerido aparece no browser. A boa habilidade de sintonizar o controlador é relacionada a obtenção de um ajuste adequado do controlador com poucas interações. NTM - 218

Malha Aberta Interação 1 Kc=1,Ti=15,Td=0.1 Interação 2 Kc = 1, Ti = 1500, Td = 0.1 4. TECNOLOGIA Figura 2: Modelo da visualização do PATROL, na opção de controlador PID, após o usuário final ter feito 2 interações para sintonizar o controlador PID 4.1 Estratégia para uso de tecnologia A tecnologia utilizada para o desenvolvimento do PATROL foi totalmente desenvolvida no âmbito da universidade. Optou-se por desenvolver toda a tecnologia, ao invés de escolher uma tecnologia pronta, por motivação estratégica. O objetivo de se desenvolver o sistema PATROL desde o início é não somente o de se obter um sistema para apoio ao ensino de controle, mas também o de fazer aumentar a competência no desenvolvimento de sistemas de Internet para aplicação geral. Em outras palavras, o PATROL serve também como um laboratório para tecnologias de desenvolvimento de software para Internet. Caso fosse usada uma tecnologia pronta, algo como um produto de prateleira, para o desenvolvimento do sistema, seria bem provável que o fornecedor da tecnologia se tornaria cada vez mais competente no desenvolvimento de sistemas de software para Internet. Enquanto isso a equipe que desenvolvesse o PATROL tornar-se-ia a ser capaz de desenvolver sistemas para Internet apenas utilizando a tecnologia escolhida. Além disso, caso alguma limitação tecnológica surgisse no decorrer do desenvolvimento, a resolução dessa limitação estaria atrelada a tecnologia escolhida. Mas a opção de desenvolver toda a tecnologia de programação interativa, fez aumentar a competência em detalhes intrincados de tecnologia de informação, particularmente de programação interativa para Internet. A partir dessa competência, foi possível, por exemplo resolver o problema de execução de simulação numérica com saída gráfica no browser, como descrito abaixo. Além disso, surgiu um importante sub-produto do desenvolvimento do PATROL, que é uma biblioteca para programação interativa na Internet, também descrita abaixo. 4.2 Programação interativa na Internet O PATROL é um sistema na Internet formado basicamente por páginas HTML e programas CGI. Para a programação CGI, optou-se por se desenvolver todos os programas na linguagem C++. A opção pela linguagem C++ deve-se basicamente por: ser gratuita ser multiplataforma NTM - 219

ser orientada a objetos (portanto manter a programação simples) ser versátil haver interesse em aumentar o conhecimento no uso dessa linguagem Como C++ é uma linguagem bastante sofisticada, o desenvolvimento de programas CGI com essa linguagem é muito facilitado pelo uso de uma biblioteca de apoio. Paralelamente ao desenvolvimento do PATROL, obteve-se um subproduto que é uma biblioteca em C++, muitiplataforma, para programação CGI. Essa biblioteca, chamada de VBMcgi, está atualmente sendo oferecida como alternativa para programação CGI para aplicação geral. Os detalhes sobre a biblioteca VBMcgi podem ser vistos na URL [3]. O uso da linguagem C++ para programação CGI mostrou-se bastante adequado para os objetivos do PATROL. Em primeiro lugar, pela versatilidade que essa linguagem possui. Mas apesar de sua sofisticação e versatilidade, o uso da linguagem C++ não tornou-se um fator de complicação no desenvolvimento do sistema, ao contrário. Com as complexidades específicas da programação CGI isoladas na biblioteca VBMcgi, o desenvolvimento do sistema foi bastante simples. Uma das características importantes da desta biblioteca é o fato de que toda a programação visual do sistema na Internet, feita em HTML, é totalmente isolada da programação CGI em si. Em outras palavras, o uso de programas externos para design HTML (e.g. DreamWeaver) é não só possível, mas também recomendável. Em resumo, o desenvolvimento do PATROL fez aumentar os conhecimentos sobre o desenvolvimento de sistemas de software na Internet baseado em CGI. A opção estratégica de utilizar C++ e VBMcgi mostrou-se adequada para o desenvolvimento do PATROL. 4.3 Execução de simulação numérica com saída gráfica no browser Durante o desenvolvimento do sistema, deparou-se com um problema técnico interessante. Seria de grande valor para o PATROL que uma simulação numérica pudesse ser feita por um programa externo, executado no servidor, sendo a saída gráfica fosse direcionada para o browser do usuário final. Dessa forma, qualquer computador que estiver apenas conectado a web pode utilizar integralmente o PATROL, inclusive realizando simulações complexas, e sem que se exija a instalação de software no computador do cliente. O programa simulador, executado no servidor, deve receber parâmetros do usuário final vindos de formulário html, processar esses dados, gerar saída gráfica e direcionar a página de saída do usuário final para que exiba a saída gráfica gerada. Além disso, parte das saídas gráficas devem ficar armazenadas para visualização múltipla, como no caso da funcionalidade em que se trabalha a sintonia de controladores PID. Nesse caso, o usuário final precisa ver ao mesmo tempo todas as saída gráficas das interações que já fez, para com isso obter conclusões sobre novas sintonias para o controlador. Esse problema foi resolvido utilizando-se uma série de artifícios, descritos a seguir. 1. Passar parâmetros do formulário html do usuário final para o programa simulador. O programa simulador numérico geralmente trabalha baseado numa linguagem de programação própria. Portanto, para uma dada simulação, pode-se escrever um programa na linguagem do programa simulador. Mas os parâmetros de entrada da simulação devem ser, pelo menos em parte, oriundos de formulário html (pelo usuário final). A solução desse problema foi fazer um template (molde) de programa simulador para cada situação implementada pelo PATROL. Utilizando-se funcionalidades de procura e troca de strings (seqüência de letras) implementadas pela biblioteca VBMcgi, o programa template é alterado para o programa real de simulação utilizando os dados que vêm do formulário html. O simulador recebe apenas o programa real, já com os dados que vieram do formulário. 2. Obter a saída gráfica no browser. Obter essa funcionalidade parece ser um problema simples, mas alguns detalhes são necessários. O primeiro detalhe é conseguir que o programa simulador seja capaz de salvar o arquivo gráfico no formato desejado (no caso JPG). Essa é uma opção do programa simulador, mas que deve ser configurada para funcionar sem o carregamento do cliente X Windows. Além disso, o nome dos arquivos gráficos gerados deve sempre ser diferente (no caso, o nome é baseado em data-hora), para forçar o browser do usuário final a mostrar sempre a última versão do arquivo gráfico gerado (do contrário, o cache do browser faria mostrar a versão anterior deste arquivo). A página html que mostra o resultado da simulação deve, obviamente, fazer referência aos nomes dos arquivos gráficos gerados pelo programa simulador. 5. CONCLUSÃO O PATROL é um projeto de desenvolvimento de uma ferramenta de apoio ao ensino de controle linear de sistemas dinâmicos, utilizando tecnologia de Internet. A versão atual do PATROL foi desenvolvida com finalidade de servir como fonte de referência (módulos estáticos), e também como laboratório virtual (módulos interativos). Em especial, o PATROL desenvolveu um módulo específico para uma necessidade particular da área de controle, que é o treinamento para sintonia de controladores PID. Com o desenvolvimento do PATROL, indiretamente obteve-se aumento do conhecimento no desenvolvimento de sistemas interativos com tecnologia de Internet. Em particular, obteve-se como importante sub-produto a biblioteca VBMcgi, de uso geral para programação CGI com a linguagem C++. Atualmente, o projeto PATROL encontra-se em fase de utilização direta, ou seja, acessível sem proteção por senha. Esta fase é essencial para se realizar diversos testes nas suas funcionalidades já implementadas e receber sugestões e críticas dos seus usuários para melhorar o sistema. NTM - 220

Dentre as facilidades planejadas para serem implementadas no futuro cita-se novos módulos estáticos e dinâmicos para enriquecer a experiência de aprendizagem do aluno; além disso, o sistema poderia ser melhor aproveitado caso existisse no sistema uma área específica para o professor. Com esse recurso, o professor poderá acompanhar com detalhes o andamento do aprendizado do aluno, por meio de logs. 6. REFERÊNCIAS [1] DEL - Departamento de Engenharia Eletrônica e Computação da UFRJ. http://www.del.ufrj.br [2] PATROL - http://del.ufrj.br/~villas/patrol.html [3] VBMcgi - Biblioteca Villas-Boas e Martins para programação CGI muitiplataforma, em C++, com código gratuito. http://www.vbmcgi.org [4] Dennis S. Bernstein, R. Scott Erwin, Carl Knospe, Tobin Van Pelt, Ravinder Venugopal. Practical techniques for control engineering: Bridging the gap between theory and pratice, workshop on the 2000 American Control Conference, June 28-30, 2000. [5] Karl J. Åström, Tore Hägglund, PID controllers: Theory, Design and Tuning -2nd ed, ISBN 1556175167, 1995. NTM - 221