My MoS Thesis: Using Arduino for Tangible Human Computer Interaction

I’m happy to announce that last week I’ve got degreed with a cum laude degree in a Master of Science in Computer Science. Great!

I can now share my thesis: Using Arduino for Tangible Human Computer Interaction.

The thesis is available in PDF as well as Latex project archive (~80MB) where you will find all the Latex sources, images sources (where available), bibliography, etc.. this could be pretty useful if you plan to produce documents regarding the topics I covered in my thesis. The thesis and the sources are released under CC-BY-SA.

Abstract

This thesis presents the results of a nine months internal stage at the Department of Computer Science, Università degli Studi di Torino.

During my stage, supervised by Prof. Luca Console, I experienced with electronics, Arduino, micro-electromechanical sensors (accelerometers, gyroscopes and magnetometers), orientation sensing algorithms and 3D computer graphics to develop prototypes of Human Computer Interaction devices, with a a particular interest on Tangible User Interfaces.

Table of Contents

  1. Introduction
    1. How everything got started
  2. Electronic Circuits in DC
    1. Basic concepts of electricity
    2. Schematic Diagrams
    3. Ohm’s law
    4. Capacitors
    5. Kirchoff’s circuit laws
    6. Series And Parallel Circuits
  3. Arduino
    1. Why Arduino?
    2. What can we do with Arduino?
    3. Arduino Hardware
    4. Arduino Shields
    5. Kirchoff’s circuit laws
    6. Series And Parallel Circuits
    7. Arduino Duemilanove
    8. Arduino Base Workshop KIT
    9. Arduino Software
    10. Arduino Community
    11. Critics to Arduino
  4. First steps with Arduino and electronic prototyping
    1. Hello World!
    2. digitalRead(): using pushbuttons and tilt sensors
    3. analogRead(): Reading analog values with Arduino
    4. Driving bigger loads: Transistors and Optocouplers
    5. Pulse Width Modulation (PWM): analog outputs with digital means
    6. Serial communication with Arduino
    7. A multisensors game controller with Arduino and Processing
  5. MEMS Sensors: accelerometers, gyroscopes and magnetometers
    1. The accelerometer
    2. The gyroscope
    3. The Magnetometer
    4. ADXL330: an analog 3-axis accelerometer
    5. Digital sensors
    6. Low cost, do-it-yourself method for making printed circuit boards
    7. ADXL345: a digital 3-axis accelerometer
    8. ITG3200: a digital 3-axis gyroscope
    9. HMC5843: a digital 3-axis magnetometer
    10. 9 degrees of measurement MARG sensor array on a breadboard
  6. Orientation Sensing
    1. Tilt sensing using an accelerometer
    2. Fusing accelerometer and gyroscope data for reliable tilt sensing
    3. Tilt compensated digital compass
    4. Accelerometer, gyroscope and magnetometer fusion for orientation sensing
  7. FreeIMU
    1. Dorkbot PDX group PCB buying service
    2. FreeIMU version 0.1
    3. FreeIMU version 0.2
    4. Making FreeIMU a libre hardware project
    5. Competing commercial products
  8. Palla
    1. Previous works
    2. Palla’s schematics
    3. Building Palla
    4. Palla capabilities and possible usages
  9. Femtoduino
    1. Schematics
    2. PCB desing
    3. A libre hardware: media coverage and commercial productions
  10. Conclusions
    1. Future Works
    2. PCB desing
    3. Acknowledgments
Scroll to Top