62 resultados para Framework Android robot Arduino Uno Bluetooth


Relevância:

40.00% 40.00%

Publicador:

Resumo:

La tesi sviluppa, attraverso un processo definito e gestito, una libreria Android che permette di far comunicare diversi dispositivi mobili tramite Bluetooth. Inoltre gestisce: • le richieste di connessione sia che esse provengano dall’esterno, sia che partano dal dispositivo stesso; • la dinamicità del sistema utilizzando dispositivi mobili, cioè capaci di muoversi in diverse direzioni costantemente. In tal senso, la lista dei dispositivi vicini è costantemente aggiornata. • la comunicazione in stile Peer-to-Peer(P2P). In questo caso si viene a formare un gap in quanto la libreria Android di Bluetooth usa lo stile Master-Slave per i suoi dispositivi. Per colmare questo gap, la libreria sviluppata crea un layer soprastante la libreria Bluetooth di Android e maschera lo stile di comunicazione di quest’ultima a favo- re di una comunicazione paritaria, nella quale un dispositivo può sia accettare le richieste di connessione, sia connettersi ad altri dispositivi.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

Negli ultimi anni si è imposto il concetto di Ubiquitous Computing, ovvero la possibilità di accedere al web e di usare applicazioni per divertimento o lavoro in qualsiasi momento e in qualsiasi luogo. Questo fenomeno sta cambiando notevolmente le abitudini delle persone e ciò è testimoniato anche dal fatto che il mercato mobile è in forte ascesa: da fine 2014 sono 45 milioni gli smartphone e 12 milioni i tablet in circolazione in Italia. Sembra quasi impossibile, dunque, rinunciare al mobile, soprattutto per le aziende: il nuovo modo di comunicare ha reso necessaria l’introduzione del Mobile Marketing e per raggiungere i propri clienti ora uno degli strumenti più efficaci e diretti sono le applicazioni. Esse si definiscono native se si pongono come traguardo un determinato smartphone e possono funzionare solo per quel sistema operativo. Infatti un’app costruita, per esempio, per Android non può funzionare su dispositivi Apple o Windows Phone a meno che non si ricorra al processo di porting. Ultimamente però è richiesto un numero sempre maggiore di app per piattaforma e i dispositivi presenti attualmente sul mercato presentano differenze tra le CPU, le interfacce (Application Programming Interface), i sistemi operativi, l’hardware, etc. Nasce quindi la necessità di creare applicazioni che possano funzionare su più sistemi operativi, ovvero le applicazioni platform-independent. Per facilitare e supportare questo genere di lavoro sono stati definiti nuovi ambienti di sviluppo tra i quali Sencha Touch e Apache Cordova. Il risultato finale dello sviluppo di un’app attraverso questi framework è proprio quello di ottenere un oggetto che possa essere eseguito su qualsiasi dispositivo. Naturalmente la resa non sarà la stessa di un’app nativa, la quale ha libero accesso a tutte le funzionalità del dispositivo (rubrica, messaggi, notifiche, geolocalizzazione, fotocamera, accelerometro, etc.), però con questa nuova app vi è la garanzia di un costo di sviluppo minore e di una richiesta considerevole sul mercato. L’obiettivo della tesi è quello di analizzare questo scenario attraverso un caso di studio proveniente da una realtà aziendale che presenta proprio la necessità di sviluppare un’applicazione per più piattaforme. Nella prima parte della tesi viene affrontata la tematica del mobile computing e quella del dualismo tra la programmazione nativa e le web app: verranno analizzate le caratteristiche delle due diverse tipologie cercando di capire quale delle due risulti essere la migliore. Nella seconda parte sarà data luce a uno dei più importanti framework per la costruzione di app multi-piattaforma: Sencha Touch. Ne verranno analizzate le caratteristiche, soffermandosi in particolare sul pattern MVC e si potrà vedere un confronto con altri framework. Nella terza parte si tratterà il caso di studio, un app mobile per Retail basata su Sencha Touch e Apache Cordova. Nella parte finale si troveranno alcune riflessioni e conclusioni sul mobile platform-independent e sui vantaggi e gli svantaggi dell’utilizzo di JavaScript per sviluppare app.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

La tesi nasce da un'attività di ricerca approfondita su alcune tecnologie innovative e all'avanguardia nell'ambito del mobile computing e dell'Internet of Things. Tra queste il focus principale è orientato allo studio del Bluetooth Low Energy, nuova specifica di Bluetooth caratterizzata principalmente da un consumo di energia assai ridotto. In particolare, si è approfondito il suo funzionamento nel caso dei beacon, piccoli dispositivi che permettono una localizzazione mediante l'invio di un segnale BLE. Inoltre è stata analizzata la possibilità di interazione con Android, poiché oggigiorno non si può evitare di pensare a come queste tecnologie possano interfacciarsi con il mondo degli smartphone e dei tablet. Come conseguenza di tale attività di ricerca è stato analizzato un caso di studio che permettesse di applicare le tecnologie studiate e la loro interazione. Si è pensato quindi a un piccolo sistema distribuito per schermi adattativi (capaci di modificare i contenuti visualizzati in relazione ad eventi esterni) affinché ogni schermo mostrasse dinamicamente l'orario delle lezioni di ciascuno studente all'avvicinarsi di quest'ultimo, e solo per il tempo di permanenza nei pressi dello schermo. Si è quindi progettato e sviluppato un prototipo, e infine durante il testing si sono potute verificare le attuali potenzialità di queste tecnologie e trarre conclusioni sulla possibilità della loro futura diffusione e di impiego in contesti differenti.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

Lo scopo dell’elaborato di tesi è la progettazione e lo sviluppo di un’applicazione per il modulo Bluetooth Low Energy (BLE) Texas Instrument CC2650 in grado di leggere le informazioni da un sensore analogico, tramite un Analog-Digital- Converter (ADC), e di scambiare i dati con uno smartphone Android in tempo reale. L’interfaccia realizzata deve essere universale, ovvero dovrà essere compatibile con sensori di diverso tipo, facilmente estensibile per l’aggiunta di un numero maggiore di periferiche di lettura e utilizzabile con un ampio numero di dispositivi.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

La tesi tratta dell'esplorazione di una possibile interfaccia utente per Smart Glass in un contesto di utilizzo hands-free con elementi virtuali appartenenti ad un sistema di riferimento solidale all'utente e non al dispositivo, e la conseguente realizzazione di un Framework per lo sviluppo di applicazioni Andoid rispondenti a tale interfaccia e relativo test.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

Sviluppare e manutenere applicativi destinati a differenti piattaforme è un’opzione esclusiva di quelle entità capaci di sostenere costi molto alti per la realizzazione di queste applicazioni. Questo esclude gli sviluppatori indipendenti, che spesso realizzano prodotti in totale autonomia; le start-up, che hanno l’esigenza di sviluppare un’idea di business avendo a disposizione budget estremamente ridotti; le piccole aziende, alle quali viene così preclusa la possibilità di competere con player più importanti. Questo tipo di emergenze rende lo sviluppo cross-platform una soluzione interessante per la realizzazione delle applicazioni mobili, abbattendo i costi di sviluppo e permettendo di raggiungere più velocemente un pubblico più ampio. C'è quindi sempre maggiore interesse, da parte degli sviluppatori, per gli strumenti di sviluppo cross-platform. Per catturare l’attenzione degli sviluppatori è necessario che lo strumento sia dotato di buona stabilità, che offra un ambiente di sviluppo confortevole, una buona user experience, facilità di aggiornamento, tempi di sviluppo contenuti e possibilità di immissione delle applicazioni su diversi ecosistemi software. L’idea alla base di questa Tesi di laurea è valutare i pro e i contro di uno di questi framework cross-platform e compararlo con le tecnologie native. Il framework scelto è Ionic per via della sua popolarità tra gli sviluppatori e della ridotta bibliografia scientifica a riguardo. Molte ricerche scientifiche valutano le prestazioni di uno o più framework cross-platform rispetto ad una soluzione nativa, tuttavia è raro un confronto tra un framework e più soluzioni native. Per questo, oltre a valutare i pro e i contro del framework, verrà anche effettuata una comparazione tra gli applicativi nativi per Android e iOS e le controparti sviluppate attraverso Ionic, permettendo di identificare eventuali differenze di performance e aiutare gli sviluppatori nelle scelte tecnologiche.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

Negli ultimi anni il crescere della capacità di calcolo dei dispositivi e il diminuire delle loro dimensioni ha permesso di far nascere idee innovative e di esplorare più in dettaglio alcuni settori. Uno di questi è sicuramente quello della realtà aumentata (Augmented reality), infatti, la discussione su questo argomento nasce già negli anni 40 del novecento, ma, per mancanza di mezzi tecnologici adeguati, solo ora si iniziano a realizzare le prime applicazioni che si basano su questa idea e il grande pubblico inizia ad interessarsi all'argomento. La costruzione di applicazioni di realtà aumentata, al momento, è basata sull'utilizzo di alcuni framework che mettono a disposizione dello sviluppatore alcune funzioni molto comuni in questi software, come il tracking di marker e l'utilizzo di bottoni virtuali. Questi strumenti, seppur comodi, non garantiscono sempre la buona progettazione dell'applicazione e tendono a unire insieme parti di logica applicativa e di grafica. Per questo motivo, anche nella ricerca, si stanno cercando di studiare dei metodi in grado di permettere una divisione ottimale dei compiti in modo da ottenere un software riusabile e facilmente mantenibile, ma che permetta anche di sfruttare appieno le potenzialità dell'AR attraverso, per esempio, sistemi distribuiti. Un framework concettuale che rientra in questa categoria è sicuramente quello degli Augmented Worlds, mondi virtuali collegati a quello fisico che ne incrementano le caratteristiche e le possibilità tramite la presenza di entità aumentate. La tesi, quindi, si propone di sviluppare un prototipo di un framework con le caratteristiche sopra citate di estendibilità, utilizzando le piattaforme in questo momento a disposizione e ispirandosi alla visione degli Augmented Worlds.

Relevância:

40.00% 40.00%

Publicador:

Resumo:

La tesi tratta l'esplorazione dell'idea per una nuova tipologia di interfacce utente, progettate specificatamente per dispositivi wearable hands free (più nel dettaglio per un'accoppiata smart glass Android based e gesture recognizer). Per facilitare lo sviluppo di applicazioni basate su questi dispositivi è stato realizzato un framework che permetta di costruire, in maniera relativamente semplice, interfacce utente innovative, che consentano all'utente di interagire con i contenuti digitali senza interrompere il suo contatto con la realtà e senza costringerlo a utilizzare le mani.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Uno dei principali ambiti di ricerca dell’intelligenza artificiale concerne la realizzazione di agenti (in particolare, robot) in grado di aiutare o sostituire l’uomo nell’esecuzione di determinate attività. A tal fine, è possibile procedere seguendo due diversi metodi di progettazione: la progettazione manuale e la progettazione automatica. Quest’ultima può essere preferita alla prima nei contesti in cui occorra tenere in considerazione requisiti quali flessibilità e adattamento, spesso essenziali per lo svolgimento di compiti non banali in contesti reali. La progettazione automatica prende in considerazione un modello col quale rappresentare il comportamento dell’agente e una tecnica di ricerca (oppure di apprendimento) che iterativamente modifica il modello al fine di renderlo il più adatto possibile al compito in esame. In questo lavoro, il modello utilizzato per la rappresentazione del comportamento del robot è una rete booleana (Boolean network o Kauffman network). La scelta di tale modello deriva dal fatto che possiede una semplice struttura che rende agevolmente studiabili le dinamiche tuttavia complesse che si manifestano al suo interno. Inoltre, la letteratura recente mostra che i modelli a rete, quali ad esempio le reti neuronali artificiali, si sono dimostrati efficaci nella programmazione di robot. La metodologia per l’evoluzione di tale modello riguarda l’uso di tecniche di ricerca meta-euristiche in grado di trovare buone soluzioni in tempi contenuti, nonostante i grandi spazi di ricerca. Lavori precedenti hanno gia dimostrato l’applicabilità e investigato la metodologia su un singolo robot. Lo scopo di questo lavoro è quello di fornire prova di principio relativa a un insieme di robot, aprendo nuove strade per la progettazione in swarm robotics. In questo scenario, semplici agenti autonomi, interagendo fra loro, portano all’emergere di un comportamento coordinato adempiendo a task impossibili per la singola unità. Questo lavoro fornisce utili ed interessanti opportunità anche per lo studio delle interazioni fra reti booleane. Infatti, ogni robot è controllato da una rete booleana che determina l’output in funzione della propria configurazione interna ma anche dagli input ricevuti dai robot vicini. In questo lavoro definiamo un task in cui lo swarm deve discriminare due diversi pattern sul pavimento dell’arena utilizzando solo informazioni scambiate localmente. Dopo una prima serie di esperimenti preliminari che hanno permesso di identificare i parametri e il migliore algoritmo di ricerca, abbiamo semplificato l’istanza del problema per meglio investigare i criteri che possono influire sulle prestazioni. E’ stata così identificata una particolare combinazione di informazione che, scambiata localmente fra robot, porta al miglioramento delle prestazioni. L’ipotesi è stata confermata applicando successivamente questo risultato ad un’istanza più difficile del problema. Il lavoro si conclude suggerendo nuovi strumenti per lo studio dei fenomeni emergenti in contesti in cui le reti booleane interagiscono fra loro.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

La tesi ha lo scopo di esplorare la produzione di sistemi software per Embedded Systems mediante l'utilizzo di tecniche relative al mondo del Model Driven Software Development. La fase più importante dello sviluppo sarà la definizione di un Meta-Modello che caratterizza i concetti fondamentali relativi agli embedded systems. Tale modello cercherà di astrarre dalla particolare piattaforma utilizzata ed individuare quali astrazioni caratterizzano il mondo degli embedded systems in generale. Tale meta-modello sarà quindi di tipo platform-independent. Per la generazione automatica di codice è stata adottata una piattaforma di riferimento, cioè Arduino. Arduino è un sistema embedded che si sta sempre più affermando perché coniuga un buon livello di performance ed un prezzo relativamente basso. Tale piattaforma permette lo sviluppo di sistemi special purpose che utilizzano sensori ed attuatori di vario genere, facilmente connessi ai pin messi a disposizione. Il meta-modello definito è un'istanza del meta-metamodello MOF, definito formalmente dall'organizzazione OMG. Questo permette allo sviluppatore di pensare ad un sistema sotto forma di modello, istanza del meta-modello definito. Un meta-modello può essere considerato anche come la sintassi astratta di un linguaggio, quindi può essere definito da un insieme di regole EBNF. La tecnologia utilizzata per la definizione del meta-modello è stata Xtext: un framework che permette la scrittura di regole EBNF e che genera automaticamente il modello Ecore associato al meta-modello definito. Ecore è l'implementazione di EMOF in ambiente Eclipse. Xtext genera inoltre dei plugin che permettono di avere un editor guidato dalla sintassi, definita nel meta-modello. La generazione automatica di codice è stata realizzata usando il linguaggio Xtend2. Tale linguaggio permette di esplorare l'Abstract Syntax Tree generato dalla traduzione del modello in Ecore e di generare tutti i file di codice necessari. Il codice generato fornisce praticamente tutta la schematic part dell'applicazione, mentre lascia all'application designer lo sviluppo della business logic. Dopo la definizione del meta-modello di un sistema embedded, il livello di astrazione è stato spostato più in alto, andando verso la definizione della parte di meta-modello relativa all'interazione di un sistema embedded con altri sistemi. Ci si è quindi spostati verso un ottica di Sistema, inteso come insieme di sistemi concentrati che interagiscono. Tale difinizione viene fatta dal punto di vista del sistema concentrato di cui si sta definendo il modello. Nella tesi viene inoltre introdotto un caso di studio che, anche se abbastanza semplice, fornisce un esempio ed un tutorial allo sviluppo di applicazioni mediante l'uso del meta-modello. Ci permette inoltre di notare come il compito dell'application designer diventi piuttosto semplice ed immediato, sempre se basato su una buona analisi del problema. I risultati ottenuti sono stati di buona qualità ed il meta-modello viene tradotto in codice che funziona correttamente.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Il progetto descritto in questo documento consiste fondamentalmente nell'integrazione di applicazioni context-aware su dispositivi mobili con reti di sensori e nello studio delle problematiche derivanti, vantaggi e potenziali utilizzi. La rete è stata costruita sfruttando l'insieme di protocolli per comunicazioni via radio Zigbee, particolarmente adatti per interazione tra dispositivi a basso consumo energetico e che necessitano di uno scarso tasso di trasferimento di dati. Le informazioni ottenute da sensori di varia natura sono processate da microcontrollori Arduino, scelti per la loro versatilità di utilizzo e design open source. Uno o più dispositivi sono designati per aggregare i dati rilevati dai singoli nodi in un unico pacchetto di informazioni, semanticamente correlate tra loro, quindi emetterle in broadcast su una diversa interfaccia di rete, in modo che diverse applicazioni esterne in ascolto possano riceverle e manipolarle. Viene utilizzato un protocollo specifico per la comunicazione tra i microcontrollori e le applicazioni che si interfacciano con la rete, costruito su misura per dispositivi con risorse limitate. L'applicazione context-aware che interagisce con la rete è stata sviluppata su piattaforma Android, la cui particolare flessibilità favorisce una migliore capacità di gestire i dati ottenuti. Questa applicazione è in grado di comunicare con la rete, manipolare i dati ricevuti ed eventualmente intraprendere azioni specifiche in totale indipendenza dal suo utilizzatore. Obiettivo del progetto è quello di costruire un meccanismo di interazione tra le tecnologie più adattivo e funzionale possibile.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Il campo della coordinazione può beneficiare di nuovi strumenti e tecnologie per il proprio sviluppo o per rendere accessibili le sue funzionalità ad un pubblico più vasto. Il progetto TuCSoN, in particolare, include lo strumento Inspector tramite il quale è possibile monitorare ed interagire con l'intero spazio di coordinazione. Al fine di rendere disponibili queste funzionalità anche al mondo mobile è necessario eseguire il porting dell'applicazione. In questa tesi, perciò, verranno prima di tutto analizzate le caratteristiche principali dei modelli di coordinazione e, in particolare, del modello TuCSoN. In seguito eseguiremo un'introduzione sulla tecnologia Android, che ci fornirà gli strumenti necessari per la creazione di un framework mobile equivalente all'Inspector. Infine verranno affrontate le problematiche principali per eseguire con successo il porting, come ad esempio la necessità di ridefinire l'intera interfaccia grafica o l'utilizzo di nuovi componenti quali i service e le activity. Questa operazione, quindi, dimostrerà l'esigenza di adattare l'Inspector ai meccanismi appartenenti al nuovo ambiente di esecuzione.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Sommario Il progetto descritto in questo documento consiste nella realizzazione di una prima applicazione pratica di uno specifico studio di ricerca rivolto al ripristino di reti wireless in scenari post-calamità naturali. In principio è stata descritta un’ampia analisi delle problematiche di rete che si vengono a creare in seguito ad eventi catastrofici. Successivamente, analizzando le varie tecniche e tecnologie oggetto di studio di diversi gruppi di ricerca, si è scelto di collaborare con il progetto STEM-Mesh, essendo ancora in fase sperimentale, il quale affronta il problema di ristabilire la connettività di rete in questi particolari scenari, attraverso l’utilizzo di tecnologie Cognitive Radio (CR), mobilità controllata e principi di reti auto-organizzanti. Di questo primo approccio pratico sono state poi descritte le fasi di progettazione, implementazione e testing. Nella fase di progettazione sono state studiate le componenti hardware e software che rispettassero il più possibile i requisiti e le caratteristiche dei dispositivi “staminali” STEM-Node cuore del progetto STEM-Mesh, ovvero dei dispositivi wireless altamente auto-riconfiguranti ed auto-organizzanti che possono diventare dispositivi sostituivi ai nodi compromessi in una rete, riconfigurandosi appunto in base alle funzionalità interrotte. Nella fase di implementazione si è passati alla stesura del codice, in Python e Wiring, abilitante il dispositivo STEM-Node. Infine nella fase di testing si è verificato che i risultati fossero quelli desiderati e che il sistema realizzato funzionasse come previsto.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Introduzione alle strategie di robotic patrolling e analisi delle stesse. Applicazione ad uno scenario di una strategia e realizzazione di un robot patroller.

Relevância:

30.00% 30.00%

Publicador:

Resumo:

Il documento di tesi è composto da tre capitoli, che in successione analizzano gli aspetti teorici del progetto fino ad arrivare all’implementazione vera e propria dell’applicazione. Nel primo capitolo vediamo definito il tema dell’accessibilità accennando alle normative presenti in Italia e all’estero sull’argomento. Successivamente viene spiegato il concetto di Smart City e le tecniche che vengono utilizzate allo scopo di migliorare la qualità di vita nelle città. Vengono introdotti i concetti di crowdsourcing e participatory sensing, ideologie alla base delle Smart City. Al termine del capitolo viene introdotto uno studio sul grado di accessibilità degli smartphone presenti oggi sul mercato, analizzando anche le tecnologie assistive disponibili per questi dispositivi. Nel secondo capitolo si descrivono le tecnologie e i servizi utilizzati durante la creazione del progetto. In particolare viene presentato Android ed il suo funzionamento, essendo quest’ultimo il sistema operativo per cui è stata sviluppata l’applicazione. In seguito troviamo una breve analisi di tutti i servizi impiegati nel progetto: Foursquare, Fusion Table e Google Maps. Infine vengono descritte le tecnologie intermedie utilizzate per far comunicare fra loro gli strumenti spiegati in precedenza. Nel terzo capitolo viene presentata in modo dettagliato l’implementazione del progetto. Inizialmente vengono definite le classi principali create per progettare le funzionalità di base del software e per interagire con i servizi scelti. Successivamente viene descritto il funzionamento e l’aspetto dell’applicazione sviluppata insieme a degli screenshot, che permetteranno al lettore di avere un riferimento visivo di ciò che è stato esposto nel corso della tesi.