994 resultados para Java (Linguagem de programação de computador)
Resumo:
Os osciloscópios digitais são utilizados em diversas áreas do conhecimento, assumindo-se no âmbito da engenharia electrónica, como instrumentos indispensáveis. Graças ao advento das Field Programmable Gate Arrays (FPGAs), os instrumentos de medição reconfiguráveis, dadas as suas vantagens, i.e., altos desempenhos, baixos custos e elevada flexibilidade, são cada vez mais uma alternativa aos instrumentos tradicionalmente usados nos laboratórios. Tendo como objectivo a normalização no acesso e no controlo deste tipo de instrumentos, esta tese descreve o projecto e implementação de um osciloscópio digital reconfigurável baseado na norma IEEE 1451.0. Definido de acordo com uma arquitectura baseada nesta norma, as características do osciloscópio são descritas numa estrutura de dados denominada Transducer Electronic Data Sheet (TEDS), e o seu controlo é efectuado utilizando um conjunto de comandos normalizados. O osciloscópio implementa um conjunto de características e funcionalidades básicas, todas verificadas experimentalmente. Destas, destaca-se uma largura de banda de 575kHz, um intervalo de medição de 0.4V a 2.9V, a possibilidade de se definir um conjunto de escalas horizontais, o nível e declive de sincronismo e o modo de acoplamento com o circuito sob análise. Arquitecturalmente, o osciloscópio é constituído por um módulo especificado com a linguagem de descrição de hardware (HDL, Hardware Description Language) Verilog e por uma interface desenvolvida na linguagem de programação Java®. O módulo é embutido numa FPGA, definindo todo o processamento do osciloscópio. A interface permite o seu controlo e a representação do sinal medido. Durante o projecto foi utilizado um conversor Analógico/Digital (A/D) com uma frequência máxima de amostragem de 1.5MHz e 14 bits de resolução que, devido às suas limitações, obrigaram à implementação de um sistema de interpolação multi-estágio com filtros digitais.
Resumo:
Trabalho apresentado no âmbito do Mestrado em Engenharia Informática, como requisito parcial para obtenção do grau de Mestre em Engenharia Informática
Resumo:
A Smart TV é um equipamento novo e em evolução que incorpora um computador e acesso à Internet em ecrãs de grande qualidade. Permite a implementação de serviços interactivos, acesso à Internet e televisão. À medida que a tecnologia melhora, muitos equipamentos estão a tornar-se tão capazes quanto os computadores normais quando se trata de navegação na web e até mesmo vídeo na Internet (Video-on-Demand e streaming de vídeo). O projecto de estágio “NONIUS.TV na Smart TV LG Pro:Centric” foi desenvolvido na empresa Nonius Software que está inserida no ramo das telecomunicações. Uma das suas áreas de actividade está relacionada com o desenvolvimento de plataformas de entretenimento para o mercado hoteleiro, combinando diversos serviços e funcionalidades a pensar no hóspede. Este projecto teve como finalidade implementar alguns dos serviços e funcionalidades já existentes em plataformas que usam uma Set-Top Box da Nonius Software, numa Smart TV, aproveitando também para inovar e criar novos serviços. Nesse conjunto está incluída a implementação de uma Caixa de Mensagens, Serviço de Quartos, Serviço de Desporto e Lazer, Serviços Informativos, um cliente RTSP, um despertador, um sistema de mudança de idioma e outras pequenas funcionalidades desenvolvidas ao longo de toda a aplicação. Esta dissertação apresenta um estudo sobre as tecnologias Smart TV existentes no mercado, assim como as vantagens e desvantagens da sua utilização para este projecto. Após uma análise de requisitos de forma a estruturar e desenhar os serviços e funcionalidades a serem criados para a aplicação, implementou-se um conjunto de serviços, usando a linguagem de programação ActionScript 2.0, que permitiram à empresa disponibilizar um novo produto baseado na televisão Pro:Centric da LG.
Resumo:
Dissertação para obtenção do Grau de Mestre em Engenharia Informática
Resumo:
O desenvolvimento aplicacional é uma área em grande expansão no mercado das tecnologias de informação e como tal, é uma área que evolui rápido. Os impulsionadores para esta característica são as comunicações e os equipamentos informáticos, pois detêm características mais robustas e são cada vez mais rápidos. A função das aplicações é acompanhar esta evolução, possuindo arquiteturas mais complexas/completas visando suportar todos os pedidos dos clientes, através da produção de respostas em tempos aceitáveis. Esta dissertação aborda várias arquiteturas aplicacionais possíveis de implementar, mediante o contexto que esteja inserida, como por exemplo, um cenário com poucos ou muitos clientes, pouco ou muito capital para investir em servidores, etc. É fornecido um nivelamento acerca dos conceitos subjacentes ao desenvolvimento aplicacional. Posteriormente é analisado o estado de arte das linguagens de programação web e orientadas a objetos, bases de dados, frameworks em JavaScript, arquiteturas aplicacionais e, por fim, as abordagens para definir objetivos mensuráveis no desenvolvimento aplicacional. Foram implementados dois protótipos. Um deles, numa arquitetura multicamada com várias linguagens de programação e tecnologias. O segundo, numa única camada (monolítica) com uma única linguagem de programação. Os dois protótipos foram testados e comparados com o intuito de escolher uma das arquiteturas, num determinado cenário de utilização.
Resumo:
Os controladores lógicos programáveis (PLC) são muito ,e cada vez mais, utilizados na indústria. Este tipo de equipamento, além de ser inerentemente caro, pode causar situações perigosas e perda de produtividade caso sejam incorretamente programados. Existem programas de alguns fabricantes que permitem a simulação de linguagens utilizadas na programação de autómatos (segundo a norma internacional IEC 61131-3), mas uma simulação da linguagem em Texto Estruturado (ST) em particular, é complicada e de difícil acesso. O principal objetivo deste projeto é a realização de um simulador em tempo real, capaz de realizar testes e simulações prévias de código de Texto Estruturado, a testar posteriormente no autómato TSX Micro 3721 da Schneider. É necessário a construção de um compilador e interpretador de linguagens de programação, para realização do simulador e interface gráfica. Os dois sistemas utilizados para gerar as regras formais gramaticais e de produção em linguagens de programação são o Lex e o Yacc. O Lex gera um analisador léxico dividindo o ficheiro de linguagem em texto estruturado em tokens (símbolos significativos). O Yacc, através desses símbolos recebidos, forma as regras de produção e a respetiva estrutura hierárquica do programa. A partir da interpretação desta estrutura gerada é possível traduzir ou compilar qualquer linguagem de programação, neste caso o texto estruturado, e criar um simulador correspondente numa outra linguagem. O simulador recebe o código ST e através de funções definidas pelo sistema de compilação, interpretação e tradução, reconhece as instruções em linguagem de texto estruturado correspondente e realiza o conjunto de ações propostas. Analisando os testes no autómato e os resultados apresentados pela interface, podemos concluir que é possível realizar compiladores e respetivos simuladores, utilizando análises gramaticais das linguagens de programação, em particular, podemos concluir que o simulador para linguagem em Texto Estruturado foi realizado com sucesso.
Resumo:
A espectroscopia de fotoelectrões de raios-X (XPS - X-ray Photoelectron Spectroscopy)é uma das técnicas de análise de superfícies mais importantes e mais usadas em diversasáreas científico-tecnológicas e industriais. Com ela é possível determinar quantitativa equalitativamente a composição elementar e a composição química aproximada, respectivamente,e estrutura electrónica dos elementos presentes para diferentes tipos de materiais. O laboratório de ciência de superfícies do Departamento de Física da FCT-UNL encontra-se equipado com um sistema de ultra-alto vácuo Kratos XSAM 800 contendo a instrumentação necessária para se realizar XPS. No entanto, o equipamento precisava de uma requalificação. O controlo e aquisição de dados do espectrómetro era feito por um computador PDP11 de 16-bits que actualmente não é comercializado e não tem qualquer suporte técnico por parte do fabricante. Foi substituído por um computador moderno e por uma placa genérica de aquisição de dados. Para que a análise quantitativa pela técnica de XPS seja precisa, é necesssário fazer a caracterização do sistema. Isso implica o conhecimento de parâmetros como a função de transmissão do espectrómetro e a linearidade da resposta do sistema de detecção. Foi feito um estudo da linearidade da resposta do sistema de detecção e determinou-se experimentalmente a função de transmissão do espectrómetro. Os resultados obtidos para a função de transmissão mostraram estar qualitativamente de acordo com os resultados obtidos por outros na literatura. A transmissão da coluna óptica do analisador de energia de electrões foi posteriormente submetida a um processo de optimização, através da implementação de um algoritmo evolutivo diferencial para optimização de funções, recorrendo a linguagem de programação gráfica LabVIEWTM.
Resumo:
Com o passar do tempo, a aposta em energias renováveis tem vindo a aumentar. De forma a prever o que se irá produzir com os sistemas de energias renováveis, é necessário desenvolver modelos preditivos, específicos para cada situação. No Departamento de Engenharia Electrotécnica (DEE) da Faculdade de Ciências e Tecnologia (FCT) encontra-se um sistema fotovoltaico e um sistema eólico em funcionamento, e assim de forma a ter uma estimativa da produção de energia de ambos os sistemas, propôs-se nesta dissertação desenvolver um modelo de previsão de produção de energia eléctrica para os sistemas fotovoltaico e eólico. Para desenvolver o modelo preditivo pretendido, em primeiro lugar recolheram-se os dados meteorológicos e de produção de energia no ano 2013 e realizou-se um processamento desses mesmos dados, com a linguagem de programação Java, uma vez que não se encontravam na melhor forma para serem analisados e utilizados para construção do modelo. Após realizado o processamento, como os dados do ano de 2014 existentes não eram suficientes para testar o modelo depois de ser desenvolvido, geraram-se dados meteorológicos para 2014 tendo em consideração os dados de 2013. Para os dados de energia produzida, criaram-se superfícies de aproximação a partir dos dados de 2013, e utilizando os dados meteorológicos gerados para 2014 obteve-se uma aproximação da energia produzida. Tendo todos os dados necessários para a construção do modelo e posteriormente para o testar, iniciouse o pré-processamento dos dados com recurso a filtros e à Análise em Componentes Principais. Por fim, construíram-se duas estruturas diferentes de Redes Neuronais Artificiais de modo a verificar qual se adequa melhor aos sistemas existentes. Para validar o modelo construído com base em redes neuronais testou-se o modelo com os dados de 2014, diferentes dos utilizados na sua construção. Com os resultados obtidos concluiu-se que o filtro mais adequado para o pré-processamento é o filtro Savitzky-Golay e a estrutura do modelo mais indicada para o pretendido será a Rede Neuronal Artificial (RNA) com apenas uma camada intermédia.
Resumo:
O controlo de segurança para preservação da integridade estrutural da barragens é, durante a fase de exploração normal, uma actividade que tem essencialmente como elemento fulcral as inspecções à estrutura e os dados resultantes das observações periódicas da obra, apoiando-se em modelos de comportamento da mesma. Neste sentido, a análise de situações de emergência requer, em regra, a atenção de um especialista em segurança de barragens, o qual poderá, perante os resultados da observação disponíveis e da aplicação de modelos do comportamento da estrutura, identificar o nível de alerta adequado à situação que se está a viver na barragem. Esta abordagem tradicional de controlo de segurança é um processo eficaz mas que apresenta a desvantagem de poder decorrer um período de tempo significativo entre a identificação de um processo anómalo e a definição do respectivo nível de gravidade. O uso de novas tecnologias de apoio à decisão e o planeamento de emergência podem contribuir para minorar os efeitos desta desvantagem. O presente trabalho consiste no desenvolvimento de um modelo de aferição do comportamento de uma barragem através da aplicação de redes neuronais do tipo Perceptrão Multicamadas aos resultados da observação de uma barragem de aterro, por forma a identificar anomalias de comportamento e a quantificar o correspondente nível de alerta. A tese divide-se essencialmente em duas partes. A primeira parte aborda os aspectos que se relacionam com as barragens de aterro, nomeadamente definindo as soluções estruturais mais correntes e identificando os principais tipos de deteriorações que podem surgir nestas estruturas. São, igualmente, abordadas as questões que se relacionam com o controlo de segurança e o planeamento de emergência em barragens de aterro. A segunda parte do trabalho versa sobre o modelo de rede neuronal desenvolvido em linguagem de programação java – o modelo ALBATROZ. Este modelo permite definir o nível de alerta em função do nível de água na albufeira, da pressão registada em quatro piezómetros localizados no corpo e na fundação da barragem e do caudal percolado através da barragem e respectiva fundação. Nesta parte, o trabalho recorre, aos resultados da observação da barragem de Valtorno/Mourão e usa os resultados de um modelo de elementos finitos (desenvolvido no Laboratório Nacional de Engenharia Civil, no âmbito do plano de observação da obra) por forma a simular o comportamento da barragem e fornecer dados para o treino da rede neuronal desenvolvida.
Resumo:
O Android é um sistema operativo de código fonte aberto desenvolvido com foco principal nos dispositivos móveis. Este trabalho pretende aplicar os recursos disponíveis no Android, nomeadamente os serviços de geolocalização (GPS), API do Google Maps, suporte a dados, entre outros para desenvolver uma aplicação móvel de apoio a serviços de emergências de saúde na cidade do Mindelo denominada de SOS Mindelo. A aplicação SOS Mindelo é uma ferramenta que permite localizar as farmácias, hospitais, clínicas e centros de saúde que estejam mais próximos geograficamente da posição do utilizador no momento da utilização da aplicação. As classes que compõe o código fonte da aplicação foram implementadas com uso da linguagem de programação JAVA enquanto que para as interfaces de utilizador se baseou na linguagem XML. A base de dados foi desenvolvida com recurso às linguagens PHP e MySql e o mesmo se encontra alojado na internet no servidor online Hostinger. Para a interligação entre a base de dados remota e a aplicação instalada no dispositivo do utilizador se recorreu á ferramenta Java Script Object Notation. Para a estimação da distância e a selecção de rotas entre a posição do dispositivo do utilizador e os possíveis destinos se recorreu ao API do Google Maps para além da implementação de um método para o cálculo da distância euclidiana entre dois pontos. Tendo em conta os parcos recursos que caracterizam os dispositivos móveis em termos de poder de processamento, espaço de armazenamento e eficiência energética as imagens, textos e outros recursos são guardados na base de dados online e acessados pelo terminal do utilizador quando necessário. O presente relatório está organizado da seguinte forma: na introdução são descritos os objectivos do desenvolvimento desta aplicação, bem como as vantagens da sua implementação. O primeiro capítulo apresenta a fundamentação teórica e as tecnologias utilizadas para o desenvolvimento da aplicação. O segundo capítulo descreve o processo de desenvolvimento da aplicação, nomeadamente a especificação dos requisitos, a apresentação dos diagramas de casos de usos e de classes, a implementação da base de dados remota, as implementações em código e as correspondentes interfaces de utilizador. Finalmente serão apresentados as conclusões finais do projecto e as perspectivas para trabalhos futuros.
Resumo:
OBJETIVO: Apresentar a implementação de "toolkits" para visualização de imagens médicas no padrão DICOM e fazer uma revisão dos fundamentos e características deste padrão. É apresentado o VDTApplication para visualização das imagens locais e remotas, e o VDTApplet, que possibilita a visualização das imagens utilizando um navegador. MATERIAIS E MÉTODOS: Os "toolkits" foram implementados utilizando a linguagem de programação Java. Para seu desenvolvimento foram consideradas as variações do padrão DICOM, tornando-o um sistema genérico, capaz de ler e abrir imagens geradas por diferentes modalidades de diversos fabricantes. As ferramentas foram avaliadas qualitativamente por médicos, considerando a interface do sistema, a qualidade das imagens e o ajuste da imagem. RESULTADOS: A avaliação foi feita com base em conceitos de 1 (muito ruim) a 5 (muito bom) para cada item, sendo os resultados: 5 para interface do sistema, 4 para qualidade das imagens e 3 para ajuste da imagem. Baseando-se nos conceitos obtidos pode-se classificar as ferramentas como boas. CONCLUSÃO: As ferramentas são práticas, amigáveis e deverão ser incorporadas ao projeto PACS ("picture archiving and communication system") do Hospital das Clínicas da Faculdade de Medicina de Ribeirão Preto - Universidade de São Paulo.
Resumo:
OBJETIVO: Neste artigo são descritas a implementação e avaliação de um sistema de gerenciamento de imagens médicas com suporte à recuperação baseada em conteúdo (PACS-CBIR), integrando módulos voltados para a aquisição, armazenamento e distribuição de imagens, e a recuperação de informação textual por palavras-chave e de imagens por similaridade. MATERIAIS E MÉTODOS: O sistema foi implementado com tecnologias para Internet, utilizando-se programas livres, plataforma Linux e linguagem de programação C++, PHP e Java. Há um módulo de gerenciamento de imagens compatível com o padrão DICOM e outros dois módulos de busca, um baseado em informações textuais e outro na similaridade de atributos de textura de imagens. RESULTADOS: Os resultados obtidos indicaram que as imagens são gerenciadas e armazenadas corretamente e que o tempo de retorno das imagens, sempre menor do que 15 segundos, foi considerado bom pelos usuários. As avaliações da recuperação por similaridade demonstraram que o extrator escolhido possibilitou a separação das imagens por região anatômica. CONCLUSÃO: Com os resultados obtidos pode-se concluir que é viável a implementação de um PACS-CBIR. O sistema apresentou-se compatível com as funcionalidades do DICOM e integrável ao sistema de informação local. A funcionalidade de recuperação de imagens similares pode ser melhorada com a inclusão de outros descritores.
Resumo:
O controlo de segurança para preservação da integridade estrutural da barragens é, durante a fase de exploração normal, uma actividade que tem essencialmente como elemento fulcral as inspecções à estrutura e os dados resultantes das observações periódicas da obra, apoiando-se em modelos de comportamento da mesma. Neste sentido, a análise de situações de emergência requer, em regra, a atenção de um especialista em segurança de barragens, o qual poderá, perante os resultados da observação disponíveis e da aplicação de modelos do comportamento da estrutura, identificar o nível de alerta adequado à situação que se está a viver na barragem. Esta abordagem tradicional de controlo de segurança é um processo eficaz mas que apresenta a desvantagem de poder decorrer um período de tempo significativo entre a identificação de um processo anómalo e a definição do respectivo nível de gravidade. O uso de novas tecnologias de apoio à decisão e o planeamento de emergência podem contribuir para minorar os efeitos desta desvantagem. O presente trabalho consiste no desenvolvimento de um modelo de aferição do comportamento de uma barragem através da aplicação de redes neuronais do tipo Perceptrão Multicamadas aos resultados da observação de uma barragem de aterro, por forma a identificar anomalias de comportamento e a quantificar o correspondente nível de alerta. A tese divide-se essencialmente em duas partes. A primeira parte aborda os aspectos que se relacionam com as barragens de aterro, nomeadamente definindo as soluções estruturais mais correntes e identificando os principais tipos de deteriorações que podem surgir nestas estruturas. São, igualmente, abordadas as questões que se relacionam com o controlo de segurança e o planeamento de emergência em barragens de aterro. A segunda parte do trabalho versa sobre o modelo de rede neuronal desenvolvido em linguagem de programação java – o modelo ALBATROZ. Este modelo permite definir o nível de alerta em função do nível de água na albufeira, da pressão registada em quatro piezómetros localizados no corpo e na fundação da barragem e do caudal percolado através da barragem e respectiva fundação. Nesta parte, o trabalho recorre, aos resultados da observação da barragem de Valtorno/Mourão e usa os resultados de um modelo de elementos finitos (desenvolvido no Laboratório Nacional de Engenharia Civil, no âmbito do plano de observação da obra) por forma a simular o comportamento da barragem e fornecer dados para o treino da rede neuronal desenvolvida.O presente trabalho concluiu que o desenvolvimento de redes neuronais que relacionem o valor registado em algumas das grandezas monitorizadas pelo sistema de observação com o nível de alerta associado a uma situação anómala na barragem pode contribuir para a identificação rápida de situações de emergência e permitir agir atempadamente na sua resolução. Esta característica transforma a redes neuronais numa peça importante no planeamento de emergência em barragens e constitui, igualmente, um instrumento de apoio ao controlo de segurança das mesmas.
Resumo:
O artigo apresenta uma ferramenta que auxilia na implementação de aplicações que empregam mais de uma linguagem de programação. Tais aplicações são ditas multilinguagens e quando as linguagens que as compõem representam diferentes paradigmas de programação, também são denominadas multiparadigmas. A técnica de programação multilinguagem permite que se utilize a linguagem de programação mais adequada à cada parte da aplicação. Em caso de equipes híbridas de programação podemos aproveitar o conhecimento de cada uma das equipes no uso das linguagens que irão compor a aplicação. A ferramenta descrita no artigo, implementada através de um conjunto de processos Win32, monitora e executa serviços de transferência de dados e controle entre os processos que compõem a aplicação. Através de uma interface gráfica o programador pode operá-la por meio de dois modos: desenvolvimento e execução. Dentre as áreas que poderiam se beneficiar com a a ferramenta, podemos citar a aplicação pedagógica relacionada ao ensino de paradigmas de programação, aplicações já existentes que necessitam estender-se com o emprego de outras linguagens de programação e aplicações cujos problemas envolvidos se constituem em diferentes paradigmas de programação.
Resumo:
Dispositivos adaptativos apresentam a característica de se modificarem dinamicamente em resposta a estímulos de entrada, sem interferência de agentes externos. Eventuais necessidades de modificação de comportamento são automaticamente detectadas por estes dispositivos para, em seguida, reagirem a elas de forma espontânea. Historicamente tais dispositivos emergiram das pesquisas na área de linguagens formais e autômatos. No entanto, o formalismo suscitou aplicações em diversas outras áreas. Programas com código auto-modificável, que perderam terreno em conseqüência do advento da Engenharia de Software nos anos 70, voltaram à vida recentemente em aplicações diversas. Uma das formas de programação de código auto-modificável é a utilização de linguagens de programação especificamente projetadas para isso. Linguagens adaptativas de programação são dispositivos adaptativos que empregam uma linguagem de programação convencional como mecanismo subjacente. Com o correr de sua execução, um programa escrito em uma linguagem adaptativa exibirá um comportamento auto-modificável em decorrência da ativação de suas ações adaptativas. O artigo apresenta aspectos do projeto e implementação de um ambiente para gerenciar a execução de uma linguagem adaptativa. Com o emprego de linguagem adaptiva, um novo estilo de programação é concebido, uma vez que o seu comportamento está diretamente associado ao conjunto de regras que o define, o qual se altera à medida que o código é executado.