ebook img

UNIVERSITÁ DEGLI STUDI DI UDINE Tesi di Laurea Arduino PDF

97 Pages·2012·4.28 MB·Italian
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview UNIVERSITÁ DEGLI STUDI DI UDINE Tesi di Laurea Arduino

UNIVERSITÁ DEGLI STUDI DI UDINE Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Dipartimento di Ingegneria Elettrica, Gestionale e Meccanica Tesi di Laurea Arduino programming using Matlab and Simulink Relatore: Laureando: Prof. Pier Luca Montessoro Walter Miani Correlatori: Ing. Rui P. Rocha Ing. Micael Couceiro Ing. David Portugal Anno Accademico 2011-2012 ...a chi crede in me Abstract The scale and scope of robotics continues to expand, and so also software for robotic applications has to follow this growth. As the number of robotic platforms available for research and development continue to increase, code reusability and extensibility appear as a major challenge that needs to be overcome. On top of this, the size of the required experience must contain a deep stack starting from driver-level software and continuing up through higher levels of abstraction. Since the required expertise is well beyond the capabilities of single researcher, robotics software architectures must also support large-scale software integration efforts. To meet these challenges, many researchers created a wide variety of frameworks, manage complexity and facilitate prototyping of software for experiments. Furthermore, when writing a code, many individuals have preferences for some programming languages or environments above others. These preferences are the result of personal tradeoffs between programming time, ease of debugging, syntax, runtime efficiency, and a lots of other reasons, both technical and cultural. Each of these frameworks was designed for a particular purpose, perhaps in response to perceived weakness of other available frameworks, or to place emphasisonaspectswhichwereseenasmostimportantinthedesignprocess. The field of robotics is far too broad for a single solution; it’s up to every researcher or student to find which is the better way to follow to realize at best his own project. i ii Resumo A escala e o alcance da rob´otica continua a se expandir, e assim tamb´em um software para aplica¸co˜es de robo´tica tem que seguir esse crescimento. Como o nu´mero de plataformas rob´oticas dispon´ıveis para pesquisa e o de- senvolvimento continuam a aumentar, a reutilizac¸˜ao e a extensibilidade do co´digo aparecem como um grande desafio que precisa ser superado. Al´em disso, o tamanho da pesquisa deve cobrir todos os n´ıveis de programa¸ca˜o, a partir de inferior (linguagem de m´aquina) at´e ao n´ıvel mais alto de ab- strac¸ca˜o. Por ser a per´ıcia requerida bem al´em das capacidades de um u´nico programador, arquiteturas de software de rob´otica devem tamb´em suportar grandes esfor¸cos de integra¸c˜ao de software. Para enfrentar esses desafios, muitos pesquisadores criaram uma grande variedade de quadros,para contro- lar a complexidade e facilitar a criac¸˜ao de proto´tipos de software para experi- mentos. Mais, os va´rios utilizadores tˆem preferˆencias por algumas linguagens de programac¸˜ao ou ambientes em detrimento de outras. Estas preferˆencias sa˜o o resultado de compromissos pessoais entre o tempo de programac¸˜ao, fa- cilidade de depurac¸˜ao, sintaxe, eficiˆencia de execu¸c˜ao, e uma s´erie de outras razo˜es, t´ecnicas e culturais. Cada uma destas estruturas foi projectada para uma finalidade espec´ıfica, talvez em resposta a` fraqueza percebida em outras estruturas dispon´ıveis, ou para colocar ˆenfase em aspectos que foram vistos como mais importante no processo de design. O campo da robo´tica ´e muito amplo para uma u´nica soluc¸˜ao, e ´e tarefa de cada pesquisador ou estudante descobrir qual ´e o melhor caminho a seguir para realizar o melhor de seu pro´prio projeto. iii iv Sommario La scala e la portata della robotica continuano ad espandersi, e cos`ı anche il software per applicazioni robotiche deve seguire questa crescita. Poich´e il numero di piattaforme robotiche disponibili per la ricerca e lo sviluppo con- tinua ad aumentare, arrivare ad una buona riusabilita` ed estensibilita` del codice appare come una grande sfida che deve essere superata. In cima a questo, la dimensione della ricerca deve coprire tutti i livelli di program- mazione, dal piu` basso (linguaggio macchina) fino al livello piu` alto di as- trazione. Dal momento che l’esperienza richiesta `e di ben oltre le capacit`a del singolo ricercatore, le architetture di software per la robotica devono an- che sostenere grandi sforzi di integrazione software. Per rispondere a queste sfide, molti programmatori hanno creato una vasta gamma di strutture, per gestire la complessit`a e facilitare la realizzazione di prototipi di software per simulazioni ed esperimenti. Inoltre, i vari utenti hanno preferenze per alcuni linguaggi di programmazione o ambienti a scapito di altri. Queste preferenze sono il risultato di compromessi personali tra i tempi di programmazione, facilita` di debug, sintassi, efficienza di esecuzione e una serie di altri motivi, sia tecnici che culturali. Ognuno di questi quadri `e stato progettato per uno scopo particolare, forse in risposta alla debolezza percepita di altri quadri disponibili, o per porre l’accento su aspetti che sono stati considerati piu` importante nel processo di progettazione. Il campo della robotica `e troppo ampio per una soluzione unica, ma `e compito di ogni ricercatore o studente trovare quale `e la via migliore da seguire per realizzare al meglio il proprio progetto. v vi Contents List of Figures x List of Tables xii 1 Programming languages for robotics 7 1.1 Pyro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.1.2 Phyton . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.1.3 Pros & Cons . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2 ROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.2 Nomenclature . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.3 Pros & Cons . . . . . . . . . . . . . . . . . . . . . . . . 11 1.3 Microsoft Robotics Developer Studio . . . . . . . . . . . . . . 11 1.3.1 DSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.3.2 CCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.3.3 VPL . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.3.4 VSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.3.5 Pros & Cons . . . . . . . . . . . . . . . . . . . . . . . . 12 1.4 Player/Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.4.1 Stage Simulation Environment . . . . . . . . . . . . . . 13 1.4.2 Pros & Cons . . . . . . . . . . . . . . . . . . . . . . . . 14 1.5 Urbi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 vii

Description:
Corso di Laurea in Ingegneria Elettronica. Dipartimento di Ingegneria Elettrica, Gestionale e. Meccanica. Tesi di Laurea. Arduino programming using Matlab and .
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.