Hardware Connections between Arduino and IMU Nori Wilkins Apr. 5, 2013



Similar documents
Application Note IMU Visualization Software

Adafruit MCP9808 Precision I2C Temperature Sensor Guide

BUILDING INSTRUCTIONS

The $25 Son of a cheap timer This is not suitable for a beginner. You must have soldering skills in order to build this kit.

Arduino Due Back. Warning: Unlike other Arduino boards, the Arduino Due board runs at 3.3V. The maximum. Overview

Your Multimeter. The Arduino Uno 10/1/2012. Using Your Arduino, Breadboard and Multimeter. EAS 199A Fall Work in teams of two!

Adafruit SHT31-D Temperature & Humidity Sensor Breakout

ARDUINO SEVERINO SERIAL SINGLE SIDED VERSION 3 S3v3 (REVISION 2) USER MANUAL

- 35mA Standby, mA Speaking pre-defined phrases with up to 1925 total characters.

DC Circuits (Combination of resistances)

Arduino ADK Back. For information on using the board with the Android OS, see Google's ADK documentation.

Mobile Device Power Monitor Battery Connection Quick Start Guide

revolution Contents: Introduction Power 28-pin Project Board with input/output cables

Data Sheet. Adaptive Design ltd. Arduino Dual L6470 Stepper Motor Shield V th November L6470 Stepper Motor Shield

Adafruit BME280 Humidity + Barometric Pressure + Temperature Sensor Breakout

LMU Hardware and Installation Guide

Wireless Security Camera

PN532 NFC RFID Module User Guide

CHAPTER 11: Flip Flops

Capacitive Touch Sensor Project:

NB3H5150 I2C Programming Guide. I2C/SMBus Custom Configuration Application Note

MCP4725 Digital to Analog Converter Hookup Guide

UniPi technical documentation REV 1.1

Part Number:

1993 ACCESSORIES & EQUIPMENT Volkswagen Instrument Panels. Volkswagen; EuroVan, Passat

Series and Parallel Resistive Circuits Physics Lab VIII

RECOMMENDED TOOLS PERSONAL & VEHICLE PROTECTION SAFETY GLASSES

Electrical Engineering Department College of Engineering California State University, Long Beach Long Beach, California, 90840

Sensors and Cellphones

Model 201 Wiegand Touchpad Reader Installation Guide

DIY QUAD. Build Manual V.A 2014

INTRODUCTION TO SERIAL ARM

Future Technology Devices International Ltd

TEECES DOME LIGHTING SYSTEMS

MODULE BOUSSOLE ÉLECTRONIQUE CMPS03 Référence :


KTA-223 Arduino Compatible Relay Controller

An inertial haptic interface for robotic applications

DMX-K-DRV. Integrated Step Motor Driver + (Basic Controller) Manual

System theremino MasterDIL-V3

DS1307 Real Time Clock Breakout Board Kit

Data Acquisition Module with I2C interface «I2C-FLEXEL» User s Guide

ECEN 1400, Introduction to Analog and Digital Electronics

User and installation manual

EVAL-UFDC-1/UFDC-1M-16

7 OUT1 8 OUT2 9 OUT3 10 OUT4 11 OUT5 12 OUT6 13 OUT7 14 OUT8 15 OUT9 16 OUT10 17 OUT11 18 OUT12 19 OUT13 20 OUT14 21 OUT15 22 OUT16 OUT17 23 OUT18

RECOMMENDED TOOLS PERSONAL & VEHICLE PROTECTION SAFETY GLASSES

InvenSense Motion Sensor Universal Evaluation Board (UEVB) User Guide

Switch board datasheet EB

The self-starting solar-powered Stirling engine

ic-mq EVAL MQ1D EVALUATION BOARD DESCRIPTION

The I2C Bus. NXP Semiconductors: UM10204 I2C-bus specification and user manual HAW - Arduino 1

DIY Y6. Build Manual V.A 2014

EEL 4924 Electrical Engineering Design (Senior Design) Final Report. 19 April Name: Brandon Kalarovich

SD21-21 Channel Servo Driver Module Power Servo's

Road Vehicles - Diagnostic Systems

BrightSign Expander Hardware Guide

Green House Monitoring and Controlling Using Android Mobile Application

Build A Video Switcher. Reprinted with permission from Electronics Now Magazine September 1997 issue

Bi-directional level shifter for I²C-bus and other systems.

Web Site: Forums: forums.parallax.com Sales: Technical:

TDAS G5-DB Hardware User s Manual

Pololu DRV8835 Dual Motor Driver Shield for Arduino

Six-servo Robot Arm. DAGU Hi-Tech Electronic Co., LTD Six-servo Robot Arm

Integration of Arduino as a slave system to LonWorks based System using I2C Interface

User s Manual of Board Microcontroller ET-MEGA2560-ADK ET-MEGA2560-ADK

Dynamax Inc Copyright

Tristan s Guide to: Solving Parallel Circuits. Version: 1.0 Written in Written By: Tristan Miller Tristan@CatherineNorth.com

GLOLAB Universal Telephone Hold

Bluetooth + USB 16 Servo Controller [RKI-1005 & RKI-1205]

PHYS 2P32 Project: MIDI for Arduino/ 8 Note Keyboard

User s Manual. BNC Mini-High Res, 75 Ohm Termination Kit Connector Installation Guide ( )

i C A N 1 5 S w i s s C o n t e s t P r o j e c t A b s t r a c t

Designing VM2 Application Boards

BUILD YOUR OWN RC SWITCH (Issue 3)

A&A CORVETTE PERFORMANCE C6 BOOST & FUEL GAUGE INSTALLATION INSTRUCTIONS

Pmod peripheral modules are powered by the host via the interface s power and ground pins.

Design and implementation of modular home security system with short messaging system

Modern Market Sensors in Smartphones: State-of-the-art How to make smartphones even more smarter? Conclusions

USB I/O CONTROL BOX 8 relays, 8 digital I/O lines and 8 HV inputs

ZX-NUNCHUK (# )

WICE-SPI Hardware Operation Manual

Touch Screen for Pictiva OLED display. Application Note. Introduction

ezsystem elab16m Project 1F: Alarm System (Full Project description)

Arduino Lesson 13. DC Motors. Created by Simon Monk

MFRD52x. Mifare Contactless Smart Card Reader Reference Design. Document information

Experiment NO.3 Series and parallel connection

STF THRU STF203-33

Universal EXTension connector (UEXT)

Easy Step 1000 Stepper Driver Module

THE MODULAR INTEGRATED STACKABLE LAYERS SYSTEM: A NASA DEVELOPMENT PARTNERSHIP

1000BASE-T and 10/100/1000BASE-T Copper SFP Transceiver

Accessing I2C devices with Digi Embedded Linux 5.2 example on Digi Connect ME 9210

Microcontroller Based Low Cost Portable PC Mouse and Keyboard Tester

An internal gyroscope minimizes the influence of dynamic linear acceleration on slope sensor readings.

PICAXE-28X2 SHIELD BASE (AXE401)

Robot Board Sub-System Testing. Abstract. Introduction and Theory. Equipment. Procedures. EE 101 Spring 2006 Date: Lab Section # Lab #6

Accident Notification System by using Two Modems GSM and GPS

Real Time Clock USB Evaluation Board V3.0

Transcription:

Hardware Connections between Arduino and IMU Nori Wilkins Apr. 5, 2013

Abstract Sensors are commonly used throughout many world wide applications. Out of many sensors that are used, the inertial measurement unit (IMU) can be used to capture an object s position. Through the use of a microcontroller such as an Arduino, the data the sensor captures can be collected and used for analysis. This document will provide the hardware connections specifically for the Arduino Uno and one IMU sensor. Keywords Arduino Uno, IMU-MPU9150, Resistor, I2C bus Hardware Communication between Arduino and IMU: Page 1

Table of Contents Abstract...2 Keywords 2 Introduction...3 Hardware Components Arduino...3 IMU.4 Resistor 6 Hardware Communication I2C Bus 6 Assembly of Components..7 Conclusion 12 References.13 Hardware Communication between Arduino and IMU: Page 2

Introduction The ECE 480 Design Team 8 was assigned to capture motion of a runner. With many recreational runners throughout the world, many have faced challenges of having bad running form. The product that the team has come up with is a body suit that will capture a runner s motion and compare it to a baseline proper running form. The body suit will consist of a central processing unit on the person that will communicate with the sensors that are attached to the suit. To communicate with the sensor and the processing unit, the devices can be hard wired. Through processes stated in this document, the hard-wired process with a background of each component. The central processing unit consists of the Arduino while the sensor used for capturing motion is the IMU- MPU 9150. Hardware Components Arduino Uno The Arduino Uno, is a series of microcontroller platforms manufactured by Arduino. It is used for many applications. It is an open-source product which means that it can be built by hand or preassembled to customize to one s own needs. Also there is a lot of support throughout the internet community, that already made code is available for anyone that is interested. Other Arduinos consist of the Arduino Leonardo and Due. Different accessories to use wireless applications are available as well. Figure 1: Arduino Uno Rev. 3 Hardware Communication between Arduino and IMU: Page 3

Figure 2: Partial Schematic of Arduino Uno Both Figure 1 and Figure 2 show the components of the Arduino Uno. It operates at 5 Volts (V). Some components include 14 digital input and output pins, as well as 5 digital pins. There is an option of 3.3Volt (V) or 5V pin as well as a ground pin. The Arduino can be powered either by a USB cable that connects to an external personal computer (PC) or a connection to a battery source. (1). IMU: MPU-9150 The MPU-9150 is a product made by InvenSense. It is a 9 axis motion capture device. The components include an accelerometer, gyroscope, and a magnetometer. The device used in this application note is the MPU9150-breakout board which includes the device as well as easy to access pins to connect to microcontrollers. This break out board is made by Sparkfun Electronics. Sparkfun had made a break out board include the I2C communication available which will be discussed further on. The MPU-9150 is applied in smartphones and tablet manufacturers to enhance gaming as well as other controls. Hardware Communication between Arduino and IMU: Page 4

Figure 3: MPU9150 Breakout Board The accelerometer measures accelerometer, the gyroscope measures the angular velocity, and the magnetometer acts as compass. The break out board easily shows the axes directions for each component. The voltage limitations are in the range of 2.375 Volts (V) to 3.465 V (2). Figure 4: MPU 9150 Schematic (Left) Breakout Board (Right) Hardware Communication between Arduino and IMU: Page 5

Resistor A resistor is an electrical component to limit the current flow throughout the circuit. There are 4 color bands on the resistor to show the resistance value. The first three shows the value of the resistor and the last band shows the tolerance of the resistor. Hardware Communication I2C Bus Figure 5: Resistor Color Code (3). The I2C Bus is the communication that will be used for the IMU and Arduino communication. The I2C bus has 2 physical wires; the SCL (clock line) and the SDA (data line). The two lines are so called open-drain drivers; because the outputs of the lines are both low. For these lines to both work and to be output high, pull0up resistors are needed. It is recommended to have at least a 1.8 kilo Ohm resistor, but the resistance value specifically does not matter. The resistance just needs to be high enough for the I2C bus to work. The I2C bus has 2 components; the master and slave. The master is the device that drives the clock which is the Arduino in this case, while the slave is the IMU. Generally there is only one Hardware Communication between Arduino and IMU: Page 6

master but multiple slaves. The data line can only be changed while the clock is output low. 8-bit packets are transferred every clock pulse. After the data is transferred an acknowledgement bit is also transferred from the slave to ensure the data was transferred (4). Figure 6: I2C diagram Assembly of Components 4 connections are needed for the connection between the IMU and Arduino. First it is necessary to connect the pull-up resistors between the wires that will be connected to the SCL/SDA and the power supply. In this example, a 2.2 kilo Ohm resistor is used (Figure 7). Figure 7: Pull-up resistors Hardware Communication between Arduino and IMU: Page 7

Figure 8: Wires with pull up resistor Figure 8 shows the wiring needed for the communication. The brown wire is for ground, red is for power, and SDA/SCL lines are yellow and orange. It is recommended to use heat shrink which is tubing that can be used to cover and protect exposed wires. It is also recommended to use connector pins as seen above. This is recommended so the wires that get connected and disconnected will not be broken or damaged. Also, the pins will be connected to the connector that has been soldered onto the IMU so it can be connected to different devices if needed. Also, if the pins are present, the wires do not need to be directly soldered onto the IMU. Figure 9 shows the connector pins and Figure 10 has a connector to the IMU for easy connections. Hardware Communication between Arduino and IMU: Page 8

Figure 9: Connector pins with heat shrink tubing Hardware Communication between Arduino and IMU: Page 9

Figure 10: Connector soldered onto the IMU Now the connections can be made between the IMU and Arduino. Figure 11 shows the part of the Arduino that is going to be used. Only the top 4 pins will be used in this application note. Figure 11: Arduino pins There are 2 options to supply power from the Arduino to the IMU. Due to the voltage limitations of the IMU, the 3.3 V pin needs to be used. Either ground pins can be used. The A4 pin is the SDA and A5 pin is the SCL line. Figure 12 shows the schematic of the Arduino and the IMU. Because of the connector pins that were added to the wires, the connections should be easy to make. Hardware Communication between Arduino and IMU: Page 10

Figure 12: Schematic of the Connections. Rp stands for the pull-up resistors Hardware Communication between Arduino and IMU: Page 11

The finished product should look below (Figure 13). Conclusion Figure 13: Finished product All and all the connections between the Arduino and the IMU are fairly simple. The through Arduino programming, the connections can be ensured that it is working. If it is working correctly, the values for each axis should be able to read on a PC. It is recommended to make sure all connections are covered as previously stated with heat shrink and the wires should be color coded to make sure no connections get mixed up. Hardware Communication between Arduino and IMU: Page 12

References 1. "Arduino - ArduinoBoardUno." Arduino - ArduinoBoardUno. Arduino, n.d. Web. 05 Apr. 2013. <http://arduino.cc/en/main/arduinoboarduno>. 2. "9 Degrees of Freedom- MPU-9150." 9 Degrees of Freedom. Sparkfun Electronics, n.d. Web. 05 Apr. 2013. <https://www.sparkfun.com/products/11486>. 3. "Resistor Color Code Guide." Electronics Reference:. N.p., n.d. Web. 05 Apr. 2013. <http://www.elexp.com/t_resist.htm>. 4. "Using the I2C Bus." I2C Tutorial. Robot Electronics, n.d. Web. 05 Apr. 2013. <http://www.robot-electronics.co.uk/acatalog/i2c_tutorial.html>. Hardware Communication between Arduino and IMU: Page 13