221 |
Um medidor de energia elétrica integrado em redes de comunicações / An electricity power meter integrated into communications networksCesário Júnior, José Maria, 1979- 24 August 2018 (has links)
Orientadores: Varese Salvador Timóteo, Francisco José Arnold / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Tecnologia / Made available in DSpace on 2018-08-24T09:10:01Z (GMT). No. of bitstreams: 1
CesarioJunior_JoseMaria_M.pdf: 2596300 bytes, checksum: 6b11eb547957a0632bbc647946da04ce (MD5)
Previous issue date: 2014 / Resumo: A crescente evolução mundial dos sistemas de medição inteligentes, a liberação de regulamentações Brasileiras, incentivando a adoção de sistemas de medição de energia elétrica inteligentes, direcionaram a presente dissertação a propor um sistema composto de um equipamento eletrônico para medição, em tempo real, das grandezas de corrente, tensão e calcular a energia consumida e terá canais de comunicação com as tecnologias Wi-Fi, GSM/GPRS e GPS. As informações sobre consumo serão disponibilizadas para os usuários finais com o objetivo de mudar o padrão de consumo de energia elétrica, ou até reduzi-lo, através da conscientização e disponibilização das informações de consumo em tempo real / Abstract: The growing worldwide trend of smart metering systems, the release of Brazilian regulations, encouraging the adoption of smart electricity metering systems, guided this dissertation to propose a system composed of an electronic device for measuring, in real time, the magnitudes of current, voltage and calculate the consumed power and will have communication channels based on Wi-Fi, GSM /GPRS and GPS technologies. The consumption information will be made available to end users with the goal of changing the electricity consumption pattern, or even reduce it, through awareness and provision of consumer information in real time / Mestrado / Tecnologia e Inovação / Mestre em Tecnologia
|
222 |
Detekce pohybu pomocí inerciálních senzorů / Motion detection based on an accelerometer measurementŠtancl, František January 2015 (has links)
This thesis is devoted to detect motion and it is focused on energy consumption. The introduction involves possible ways for acceleration measuring and discusses The MEMS technology in accelerometers. It also describes components used in a low-power module and some suggestions leading to resolution of this issue. This thesis includes the module design as well, PCB design and software equipment. Finally, it evaluates the results and the solution accuracy.
|
223 |
Interpret dynamického programovacího jazyka pro vědecké výpočty / Interpreter of a Dynamic Programming Language for Scientific ComputingOcelík, Tomáš January 2012 (has links)
The master's thesis deals with design of a dynamic reflective prototype-based language. First, basic principles of this language group are explained and well known representatives are described. Then languages for scientific computing are shortly discussed. Next section of the thesis describes in detail the proposed programming language, its grammar and semantics. Principles of type checking and inheritance are explained. Thesis also demonstrates implementation of basic control structures known from other languages. Next section shows design of virtual machine for the language described before. Section explains used computational model, organization of the object memory and internal representation of important structures of the designed language. Finally, dynamic type checking, compiler and compilation of typical structures to the virtual machine internal code are discussed.
|
224 |
Composants multiplateformes pour la prise en compte de l'hétérogénéité des terminaux mobiles / Cross-platform components to manage the heterogenity of mobile devicesPerchat, Joachim 08 January 2015 (has links)
Ces travaux de thèse visent à diminuer le coût de développement des applications mobilespour smartphones Android, iOS, etc. Les applications mobiles sont de plus en plus complexes. Auparavant, une application mobile se contentait d’afficher des données provenant du web. Maintenant, en plus de cela, elles communiquent avec le monde extérieur. Par exemple, certaines applications communiquent avec des montres, avec des écrans de télévision etc. D’autres permettent le scan de codes barres ou encore l’interaction avec des objets réels à travers la réalité augmentée. Les serveurs peuvent envoyer des notifications aux applications, etc. Une application mobile est devenue un logiciel à part entière. Cependant, pour toucher un maximum d’utilisateurs de smartphones, les applications mobiles doivent être conçues, implémentées et déployées sur tous les smartphones possibles. Avec la multiplication des configurations matérielles différentes ainsi que la multiplication des systèmes d’exploitation mobiles, cette tâche devient de plus en plus ardue. En effet, une application mobile doit souvent être réalisée une fois pour chaque plate-forme cible (Android, iOS, Windows Phone 8, etc.). Le temps et le coût de réalisation d’applications mobiles est donc multiplié par le nombre de plates-formes ciblées. Dans ces travaux, nous proposons de combiner le développement natif avec la programmation par composants. Pour ce faire, nous introduisons la notion de composants multiplateformes. Ce sont des composants qui peuvent être exécutés sur plusieurs plates-formes mobiles. Pour la représentation des composants, nous avons introduit la notion d’interface indépendante à n’importe quelle plate-forme mobile. Ainsi, l’intégration et l’assemblage se font d’une façon unique, que l’on soit dans un environnement de développement Android, iOS ou autre. Pour ce faire, nous avons spécifié un nouveau langage de programmation basé sur les annotations. Cette approche a été validée à travers le développement d’une application mobile pour Android et iOS avec notre solution. L’application implémentée a été réalisée en concordance avec les problématiques que rencontrent les entreprises de développement mobile et plus particulièrement Keyneosoft. Ensuite, nous avons comparé ces versions de l’application avec les versions développées nativement. Nous avons montré qu’avec notre solution nous diminuons le temps de développement d’au moins 30% sans aucune limitation pour les développeurs d’applications (même expérience utilisateur, même performance). Nous avons aussi comparé notre solution avec des produits disponibles sur le marché Phonegap, Titanium mobile et Xamarin. Nous en avons conclu que notre solutiton offrait le plus de possibilités sans aucune limitation. / In this thesis, we aim to decrease the development cost of applications for smartphones running Android, iOS, etc. Mobile applications are more and more complex. A few year ago, a mobile application was only design to display web content. Today, in addition, they are connected with the external world. For example, some applications are connected with watches, TVs, etc. Mobile applications became real softwares. However, in order to be visible by all smartphones users, mobile applications are designed, developed and deployed on every kind of smartphone. With the increase of the multiplicity of hardware configurations and the diversity of mobile operating systems, this task is becoming more and more laborious. Indeed, a mobile application is often implemented one time for each target platform (Android, iOS, Windows Phone 8, etc.). Therefore, the time and the cost for a mobile application implementation is multiplied by the number of target platforms. In this thesis, we propose to combine native development with the advantages of component-based software engineering. To do that, we have introduced the concept of multiplatform components. Those components are capable to be executed on any mobile platform. In order to describe components, we have introduced interfaces that are independent of any mobile platform. Thus, component integration and assembly are common on Android, iOS and others systems. To achieve that, we have specified a new programming language based on Annotations. We have validated this approach with the implementation of a real mobile application for Android and iOS. We have compared this application with the same application developed natively. Results show that with our solution, developers implement a multiplatform application 30% faster than native development. Moreover, our solution does not show any limitation for developers (same user experience, same performances). Finally, we have compared our solution with real products available on the software market: Phonegap, Titanium mobile and Xamarin. This comparison illustrates that our solution provides the best features and does not limit developers possibilities.
|
225 |
Modelling prehistoric terrain Models using LiDAR-data: A geomorphological approachHöfler, Veit, Wessollek, Christine, Karrasch, Pierre 29 August 2019 (has links)
Terrain surfaces conserve human activities in terms of textures and structures. With reference to archaeological questions, the geological archive is investigated by means of models regarding anthropogenic traces. In doing so, the high-resolution digital terrain model is of inestimable value for the decoding of the archive. The evaluation of these terrain models and the reconstruction of historical surfaces is still a challenging issue. Due to the data collection by means of LiDAR systems (light detection and ranging) and despite their subsequent pre-processing and filtering, recently anthropogenic artefacts are still present in the digital terrain model. Analysis have shown that elements, such as contour lines and channels, can well be extracted from a highresolution digital terrain model.
This way, channels in settlement areas show a clear anthropogenic character. This fact can also be observed for contour lines. Some contour lines representing a possibly natural ground surface and avoid anthropogenic artefacts. Comparable to channels, noticeable patterns of contour lines become visible in areas with anthropogenic artefacts. The presented work ow uses functionalities of ArcGIS and the programming language R.¹ The method starts with the extraction of contour lines from the digital terrain model. Through macroscopic analyses based on geomorphological expert knowledge, contour lines are selected representing the natural geomorphological character of the surface. In a first step, points are determined along each contour line in regular intervals. This points and the corresponding height information which is taken from an original digital terrain model is saved as a point cloud. Using the programme library gstat, a variographic analysis and the use of a Kriging-procedure based on this follow.
The result is a digital terrain model filtered considering geomorphological expert knowledge showing no human degradation in terms of artefacts, preserving the landscape-genetic character and can be called a prehistoric terrain model.
|
226 |
Knowledge-based modelling of historical surfaces using lidar dataHöfler, Veit, Wessollek, Christine, Karrasch, Pierre 30 August 2019 (has links)
Currently in archaeological studies digital elevation models are mainly used especially in terms of shaded reliefs for the prospection of archaeological sites. Hesse (2010) provides a supporting software tool for the determination of local relief models during the prospection using LiDAR scans. Furthermore the search for relicts from WW2 is also in the focus of his research.¹ In James et al. (2006) the determined contour lines were used to reconstruct locations of archaeological artefacts such as buildings.² This study is much more and presents an innovative workflow of determining historical high resolution terrain surfaces using recent high resolution terrain models and sedimentological expert knowledge. Based on archaeological field studies (Franconian Saale near Bad Neustadt in Germany) the sedimentological analyses shows that archaeological interesting horizon and geomorphological expert knowledge in combination with particle size analyses (Köhn, DIN ISO 11277) are useful components for reconstructing surfaces of the early Middle Ages.³ Furthermore the paper traces how it is possible to use additional information (extracted from a recent digital terrain model) to support the process of determination historical surfaces. Conceptual this research is based on methodology of geomorphometry and geo-statistics. The basic idea is that the working procedure is based on the different input data. One aims at tracking the quantitative data and the other aims at processing the qualitative data. Thus, the first quantitative data were available for further processing, which were later processed with the qualitative data to convert them to historical heights. In the final stage of the work ow all gathered information are stored in a large data matrix for spatial interpolation using the geostatistical method of Kriging. Besides the historical surface, the algorithm also provides a first estimation of accuracy of the modelling. The presented workflow is characterized by a high exibility and the opportunity to include new available data in the process at any time.
|
227 |
Reusable semantics for implementation of Python optimizing compilersMelançon, Olivier 08 1900 (has links)
Le langage de programmation Python est aujourd'hui parmi les plus populaires au monde grâce à son accessibilité ainsi que l'existence d'un grand nombre de librairies standards. Paradoxalement, Python est également reconnu pour ses performances médiocres lors de l'exécution de nombreuses tâches. Ainsi, l'écriture d’implémentations efficaces du langage est nécessaire. Elle est toutefois freinée par la sémantique complexe de Python, ainsi que par l’absence de sémantique formelle officielle.
Pour régler ce problème, nous présentons une sémantique formelle pour Python axée sur l’implémentation de compilateurs optimisants. Cette sémantique est écrite de manière à pouvoir être intégrée et analysée aisément par des compilateurs déjà existants.
Nous introduisons également semPy, un évaluateur partiel de notre sémantique formelle. Celui-ci permet d'identifier et de retirer automatiquement certaines opérations redondantes dans la sémantique de Python. Ce faisant, semPy génère une sémantique naturellement plus performante lorsqu'exécutée.
Nous terminons en présentant Zipi, un compilateur optimisant pour le langage Python développé avec l'assistance de semPy. Sur certaines tâches, Zipi offre des performances compétitionnant avec celle de PyPy, un compilateur Python reconnu pour ses bonnes performances. Ces résultats ouvrent la porte à des optimisations basées sur une évaluation partielle générant une implémentation spécialisée pour les cas d'usage fréquent du langage. / Python is among the most popular programming language in the world due to its accessibility and extensive standard library. Paradoxically, Python is also known for its poor performance on many tasks. Hence, more efficient implementations of the language are required. The development of such optimized implementations is nevertheless hampered by the complex semantics of Python and the lack of an official formal semantics. We address this issue by presenting a formal semantics for Python focussed on the development of optimizing compilers. This semantics is written as to be easily reusable by existing compilers. We also introduce semPy, a partial evaluator of our formal semantics. This tool allows to automatically target and remove redundant operations from the semantics of Python. As such, semPy generates a semantics which naturally executes more efficiently. Finally, we present Zipi, a Python optimizing compiler developped with the aid of semPy. On some tasks, Zipi displays performance competing with those of PyPy, a Python compiler known for its good performance. These results open the door to optimizations based on a partial evaluation technique which generates specialized implementations for frequent use cases.
|
228 |
Zobrazování objemových dat pomocí programovatelného HW / Volume Rendering Using Programmable HWJošth, Radovan Unknown Date (has links)
This work describes and implementing method for volume data rendering. Main purpose of this work is visualization of scanned 3D data with some current method used for the 3D volumetric scanning. The 3D volumetric scanning is mainly used in medicine and chemistry. System is using programmable pipeline of current graphic cards, which provides us fast parallel work with large volumetric data. This paper introduces some basics about the volumetric rendering and scanning, describes design and at the end, the implementation steps. Result of this project is application which renders volumetric data with OpenGL.
|
229 |
Performance-Aware Code Size Optimization of Generic Functions through Automatic Implementation of Dynamic Dispatch / Prestandamedveten kodstorleksoptimering av generiska funktioner genom automatisk tillämpning av dynamic dispatchHärnqvist, Ivar January 2022 (has links)
Monomorphization and dynamic dispatch are two common techniques for implementing polymorphism in statically typed programming languages. Function templates in C++ use the former technique to enable algorithms written as generic functions to be efficiently reused with multiple different data types by producing a separate function instantiation for each invocation that uses a unique permutation of argument types. This avoids the overhead of indirection associated with dynamic dispatch and allows the generated code of each instantiation to be optimized by the compiler for its specific concrete types, which typically yields great improvements in runtime performance over any dynamic approach. The disadvantage of this implementation, compared to the type-erased generics found in many other programming languages, is that careless over-use of templates with many different argument types can lead to an excessive amount of redundant code being generated for the same function. This increase in code size may increase the binary size of the final program and reduce the amount of useful code that can fit into the processor's instruction cache during execution, reducing code locality and thereby potentially reducing performance. Monomorphization can also increase compilation time due to the increase in generated code that needs to be compiled and optimized. This thesis presents a heuristic-based approach to generic programming that allows function templates to be automatically converted to use dynamic dispatch in scenarios where the resulting negative impact on runtime performance is predicted to be low. The thesis project includes the development of a proof of concept plugin for the Clang compiler frontend that can be used to compile existing C++ projects with the conversions applied. The design of a heuristic function for determining whether a given function template should use monomorphization or dynamic dispatch based on statically known metrics is proposed based on the results of an experiment. This heuristic is shown to achieve a small general improvement in program size across a set of open-source C++ projects when they are compiled using the plugin. The key findings from the experiment and from the development of the plugin are summarized with a general strategy for how the approach can be integrated into the design of future programming languages to promote more extensive use of generic programming in performance-sensitive code while avoiding regressions in program size and compilation time.
|
230 |
[en] A SURVEY OF FUNCTION VALUES IN IMPERATIVE PROGRAMMING LANGUAGES / [pt] UM LEVANTAMENTO SOBRE O SUPORTE A FUNÇÕES COMO VALORES EM LINGUAGENS IMPERATIVASLUIZ ROMARIO SANTANA RIOS 30 March 2020 (has links)
[pt] Se diz que uma linguagem de programação tem funções de primeira classe quando ela fornece a capacidade de manipular funções da mesma maneira que outros valores, isto é, guardar em variáveis, passar como parâmetros, etc.. Programar com funções de primeira classe abre o programadora novas formas de abstração e é o padrão em linguagens de programação funcionais. Porém, se tratando de linguagens imperativas (incluindo linguagens orientadas a objeto), cada linguagem tem semântica, propriedades e terminologia diferentes para funções—em grande parte graças a seu foco em mutabilidade, que as linguagens funcionais não têm. Para esclarecer essas diferenças, nós fizemos um levantamento sobre a especificação de funções como valores em linguagens de programação imperativas de várias disciplinas diferentes. Para cada linguagem, nós ilustramos, nos baseando em exemplos, as propriedades dos valores de funções nela,destacando onde ela difere de outras linguagens—tudo isso usando uma terminologia consistente em todas as linguagens. Nós esperamos oferecer uma referência para desenvolvedores compararem e contrastarem as diferentes versões de funções num só lugar. / [en] A programming language is said to have first-class functions when it provides the capability of manipulating functions in the same way as other values, i.e., storing in variables, passing as parameters, etc.. Programming with first-class functions opens the programmer to new forms of abstractions and it s the default in functional programming languages. However, in the realm of imperative languages (including object-oriented languages), each language has different semantics, properties, and terminology for functions—in great part, thanks to their focus on mutability, which isn t present in functional languages. To help shed light on these differences, we made a survey of the specifi-cation of function values in imperative programming languages from many different disciplines. For each language, we illustrate, based on examples,the properties of function values in it, highlighting where it differs from other languages—all this with a consistent terminology in all languages. We provide a reference that compares and contrasts different renditions offunctions in one single place and conclude that the design of functions in a language depends on the interaction of its features and constraints with its functions.
|
Page generated in 0.104 seconds