Taking Arduino to the Internet of Things: the ASIP programming model

Abstract : Micro-controllers such as Arduino are widely used by all kinds of makers worldwide. Popularity has been driven by Arduino's simplicity of use and the large number of sensors and libraries available to extend the basic capabilities of these controllers. The last decade has witnessed a surge of software engineering solutions for " the Internet of Things " , but in several cases these solutions require computational resources that are more advanced than simple, resource-limited micro-controllers. Surprisingly, in spite of being the basic ingredients of complex hardware-software systems, there does not seem to be a simple and flexible way to (1) extend the basic capabilities of micro-controllers, and (2) to coordinate interconnected micro-controllers in " the Internet of Things ". Indeed, new capabilities are added on a per-application basis and interactions are mainly limited to bespoke, point-to-point protocols that target the hardware I/O rather than the services provided by this hardware. In this paper we present the Arduino Service Interface Programming (ASIP) model, a new model that addresses the issues above by (1) providing a " Service " abstraction to easily add new capabilities to micro-controllers, and (2) providing support for networked boards using a range of strategies, including socket connections, bridging devices, MQTT-based publish-subscribe messaging, discovery services, etc. We provide an open-source implementation of the code running on Arduino boards and client libraries in Java, Python, Racket and Erlang. We show how ASIP enables the rapid development of non-trivial applications (coordination of input/output on distributed boards and implementation of a line-following algorithm for a remote robot) and we assess the performance of ASIP in several ways, both quantitative and qualitative.
Type de document :
Article dans une revue
Computer Communications, Elsevier, 2016, 00, pp.1 - 15. 〈10.1016/j.comcom.2016.03.016〉
Liste complète des métadonnées

Littérature citée [40 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01416490
Contributeur : Gianluca Barbon <>
Soumis le : mercredi 14 décembre 2016 - 15:14:24
Dernière modification le : jeudi 11 janvier 2018 - 06:23:43
Document(s) archivé(s) le : mercredi 15 mars 2017 - 13:24:58

Fichier

comcom16.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

Collections

Citation

Gianluca Barbon, Michael Margolis, Filippo Palumbo, Franco Raimondi, Nick Weldin. Taking Arduino to the Internet of Things: the ASIP programming model. Computer Communications, Elsevier, 2016, 00, pp.1 - 15. 〈10.1016/j.comcom.2016.03.016〉. 〈hal-01416490〉

Partager

Métriques

Consultations de la notice

348

Téléchargements de fichiers

293