Leveraging the Arduino Platform to Develop Information Technology Devices

Leveraging the Arduino Platform to Develop Information Technology Devices

Diego Reforgiato Recupero (University of Cagliari, Italy), Valentino Artizzu (University of Cagliari, Italy), Francesca Cella (University of Cagliari, Italy), Alessandro Cotza (University of Cagliari, Italy), Davide Curcio (University of Cagliari, Italy), Giorgio Amedeo Iengo (University of Cagliari, Italy), Riccardo Macis (University of Cagliari, Italy), Andrea Marras (University of Cagliari, Italy), Simone Picci (University of Cagliari, Italy), Michael Planu (University of Cagliari, Italy) and Riccardo Scasseddu (University of Cagliari, Italy)
Copyright: © 2018 |Pages: 14
DOI: 10.4018/978-1-5225-2255-3.ch285
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

Arduino is a famous board, which incorporates serial communication interfaces, including universal serial bus (USB), and an integrated development environment (IDE) based on Processing, a programming language that supports C and C++. It consists of a microcontroller with several other components that provide easy interconnections with other devices. Arduino and its components have been studied during the class of Computer Architecture for the degree in Computer Science at the University of Cagliari in 2016. At the end of the class, seven groups of students have been selected and chosen to carry out a device prototype on top of Arduino and show their methodology, the sensors they embedded on top, how data could be extracted, collected, stored in database for further processing and analytics. The development has been performed following the open source best practices, documentation and codes of these projects have been made online for free downloading and sharing in order to further contribute to the advancement and widespread usage of the Arduino platform.
Chapter Preview
Top

Introduction

Arduino is a famous board, which incorporates serial communication interfaces, including universal serial bus (USB), and an integrated development environment (IDE) based on Processing, a programming language that supports C and C++. It consists of a microcontroller with several other components that provide easy interconnections with other devices.

An increasing number of developers utilizes Arduino for projects related to information technology and its community is growing and expanding in different domains, areas and countries creating several opportunities both in research and within the market sector. It is not surprising that several start-ups have initiated their business basing their services on Arduino. If the reader browses Kickstarter1, the world’s largest funding platform for creative projects, he would notice that there have been a number of successful projects revolving around the Arduino platform. Moreover, there are also many devices that are Arduino’s compatible that represent information technology products where companies and individuals can exploit for their business.

A lot of information is today exchanged within the domain of home automation. Home automation is what makes houses getting smart giving the users the possibility to monitor it using an interface on their computer, tablet or smartphone, or even panels mounted around the house. More in detail, home automation involves the control and automation of lighting, heating, ventilation, air conditioning, appliances and security. With a simple push of a button or a voice command it is possible to control items around the house, setting up a lamp to turn on or off according to certain events, switching on or off particular appliances depending on specific actions, etc. It is even possible to check the operating status and power consumption of any appliances through the web when they are connected to the Internet. As there are very few world-wide accepted industry standards and the fact that the smart home space is heavily fragmented, today, thanks to the availability of tools such as Arduino, it is possible to easily design, build and use smart appliances self made. Sometimes, it is even possible to disassemble a certain device to see how it is made or getting its core and build around a desired sub-device that can provide functions not present within the original hardware. One example that we provide in this chapter is represented by a joypad used for video games that has been taken apart to see how it was designed and an Arduino board has been embedded to provide a mechanism that counts all the times a button is pressed or a certain position of the controller has been pushed. In fact, the signals and data that the sensors on top of Arduino collect can be easily stored in a database for further processing and analytics.

Arduino and its components have been studied during the class of Computer Architecture for the degree in Computer Science at the University of Cagliari in 2016. At the end of the class, seven groups of students have chosen to carry out an information system prototype on top of Arduino and show their methodology and possible obstacles they encountered. Within their projects, students had to integrate Arduino with sensors of different kind, extract data from sensors and perform some operations on them, such as analytics or store them in a database for further processing. Information science and technology includes several software technologies but with the widespread of the Internet of Things, it is possible to collect data of several kind from the every object equipped with sensors. One of the goals was to let the young researchers understand the vast amount of data that is possible to gather using sensors embedded in the Arduino board.

The first two projects presented in this chapter integrate Arduino with temperature sensors, a LCD and a button that gives the option to switch among the different information the system reads from its sensors (temperature, humidity level, date and time). Data read from the sensors are stored using NoSQL approach (we have adopted Spark) and ready for visualization and quick analytics.

One more project has been focused on a security appliance to be used in houses: a photocell detects a light with certain intensity. If the intensity is greater (lower) than a fixed threshold, a relay is activated to turn on (off) an electric appliance. A shift register has been used to both leave free some pins of the Arduino board and to modularize the project. Two push buttons with a rotary encoder have also been adopted to easily change the threshold levels. Read values can be stored in a database.

Key Terms in this Chapter

Breadboard: It is a solderless device for prototyping of electronics and test circuit designs. Most electronic components in electronic circuits can be interconnected by inserting their leads or terminals into the holes and then making connections through wires where appropriate. The breadboard has strips of metal underneath the board and connect the holes on the top of the board.

Ghosting: Effect appearing in some models of keyboards when some key combinations pressed together cause some keypresses to disappear, although they are physically pressed.

Kickstarter: The world's largest crowdfunding platform for creative projects developed by an American corporation based in Brooklyn, New York.

NoSQL Approaches: Provide a mechanism for storage and retrieval of data without using a predefined schema as that present in relational databases. NoSQL indicates non relational.

Fritzing: Open source hardware initiative that makes electronics accessible as creative material for everyone.

Arduino Board: Open source board provided with Atmel 8, 16 or 32 bit AVR microcontroller with other components used to program for development and embedding in other systems.

RESTful Web Services: Software architectural style of the World Wide Web that specifies constraints that if applied to a web service induce desirable properties. Data and functionality are resources accessed using Uniform Resource Identifiers.

Internet of Things: A development of the Internet where common objects have network connection and send and receive data.

Arduboy: A credit card sized game system developed using Arduino whose cost is $39. The original project was funded through Kickstarter.

Complete Chapter List

Search this Book:
Reset