multi sensory communication 1/2

52
Introduction to Multi sensory communication AtsuroUeki Satoru Tokuhisa 2011.11.28

Upload: satoru-tokuhisa

Post on 16-Apr-2017

42 views

Category:

Design


0 download

TRANSCRIPT

Page 1: Multi Sensory Communication 1/2

Introduction to Multi sensory communication

AtsuroUeki Satoru Tokuhisa

2011.11.28

Page 2: Multi Sensory Communication 1/2

Parts

• Arduino UNO x1• USB cable x1• GROVE - Starter Bundle x 1pkg ※Please keep these parts until 12/20

Multi Sensory Communication 2

Page 3: Multi Sensory Communication 1/2

Download

• Arduino IDE– http://www.arduino.cc/en/Main/software

Multi Sensory Communication 3

Page 4: Multi Sensory Communication 1/2

Reference

• Language Reference– http://arduino.cc/en/Reference/HomePage

• Tutorial– http://arduino.cc/en/Tutorial/HomePage

Multi Sensory Communication 4

Page 5: Multi Sensory Communication 1/2

Schedule

• 11/28 – Introduction to Multi sensory communication

• 11/29 – Sensor & Actuator

• 12/05 – Prototyping

• 12/06 – Haptic Workshop01

• 12/19  – Haptic Workshop02

• 12/20 – Quick Presentation

Multi Sensory Communication 5

Page 6: Multi Sensory Communication 1/2

Presentation

• Prototyping– What is your Multi Sensory Communication System?

• Storytelling– What is your concept?

Multi Sensory Communication 6

Page 7: Multi Sensory Communication 1/2

Outline

• Introduction to Multi Sensory Communication– Definition– Example

• Basis of Arduino

Multi Sensory Communication 7

Page 8: Multi Sensory Communication 1/2

What is Multi Sensory Communication?

Multi Sensory Communication 8

Page 9: Multi Sensory Communication 1/2

Interaction

Multi Sensory Communication 9

Page 10: Multi Sensory Communication 1/2

Multi Senses

Multi Sensory Communicationhttp://mindchimes.net/wp-images/love-at-first-sight.jpg

10

Page 11: Multi Sensory Communication 1/2

Example

Multi Sensory Communication 11

Page 12: Multi Sensory Communication 1/2

Multi Senses

Multi Sensory Communicationhttp://s3.amazonaws.com/readers/2010/07/17/hearingkids_1.jpg

12

Page 13: Multi Sensory Communication 1/2

Example

Multi Sensory Communication 13

Page 14: Multi Sensory Communication 1/2

Example

Multi Sensory Communication 14

Page 15: Multi Sensory Communication 1/2

Multi Senses

Multi Sensory Communicationhttp://img4.blogs.yahoo.co.jp/ybi/1/77/ba/suiko_den_108/folder/161839/

img_161839_6357312_0?1318763981 15

Page 16: Multi Sensory Communication 1/2

Example

Multi Sensory Communication 16

Page 17: Multi Sensory Communication 1/2

Example

Multi Sensory Communication 17

Page 18: Multi Sensory Communication 1/2

Multi Senses

Multi Sensory Communicationhttp://purplepaperplanes.wordpress.com/2010/03/05/my-favorite-smells/

18

Page 19: Multi Sensory Communication 1/2

Multi Senses

Multi Sensory Communicationhttp://purplepaperplanes.wordpress.com/2010/03/05/my-favorite-smells/

19

Page 20: Multi Sensory Communication 1/2

Example

Multi Sensory Communication 20

Page 21: Multi Sensory Communication 1/2

Team Building

Multi Sensory Communication 21

Page 22: Multi Sensory Communication 1/2

What is Arduino?

Multi Sensory Communication 22

Page 23: Multi Sensory Communication 1/2

Arduino

• Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software.

• It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.

Multi Sensory Communication 23

Page 24: Multi Sensory Communication 1/2

Arduino

• Arduino Board– ATMega328– USB– Open Source

• Arduino IDE(Integrated Development Environment)– Windows, Linux, Mac OSX– Opern Source– Based on Processing

• Arudino Programming language– Based on Wiring

Multi Sensory Communication 24

Page 25: Multi Sensory Communication 1/2

Arduino Board / UNO

Multi Sensory Communication

Analog Input x 6

Digital Input and Output x 14

3.3VGround

Ground

5V

Power Indicator

External Power

25

Page 26: Multi Sensory Communication 1/2

Install(Windows)

• Connect Arduino to PC with USB cable.

Multi Sensory Communication 26

Page 27: Multi Sensory Communication 1/2

Install(Windows)

• Connect Arduino to PC with USB cable.

Multi Sensory Communication 27

Page 28: Multi Sensory Communication 1/2

Install(Windows)

• Connect Arduino to PC with USB cable.

Multi Sensory Communication 28

Page 29: Multi Sensory Communication 1/2

Install(Mac OS X)

• Open FTDIUSBSerialDriver_10_4_10_5_10_6.mpkg

Multi Sensory Communication 29

Page 30: Multi Sensory Communication 1/2

Arduino IDE

Multi Sensory Communication

Tab

Toolbar

Text Editor

Message Area

Text Console

30

Page 31: Multi Sensory Communication 1/2

Arduino IDE

Multi Sensory Communication

Verify

Checks your code for errors.

Stop

Stops the serial monitor, or unhighlight other buttons. .

Creates a new sketch..

New

Presents a menu of all the sketches in your sketchbook. Clicking one will open it within the current window.

Open

Upload

Compiles your code and uploads it to the Arduino I/O board.

Serial Monitor

Opens the serial monitor.

Save

Saves your sketch.

31

Page 32: Multi Sensory Communication 1/2

Setup(Windows)

• Tools-> Board-> Arduino UNO• Tools->Serial Port COMxx※Please Check Device Manager[XP] My Computer->Right Click->Property->Hardware-> Device Manager[Vista/Win7] Start->Control Panel->System & Security-> Device Manager

32Multi Sensory Communication

Page 33: Multi Sensory Communication 1/2

Setup(Mac OS X)

• Tools-> Board-> Arduino UNO• Tools->Serial Port -> /dev/tty.usbserial-xxxxxxxx

Multi Sensory Communication 33

Page 34: Multi Sensory Communication 1/2

Hello (Physical) World!

Multi Sensory Communication 34

Page 35: Multi Sensory Communication 1/2

Test

1. Open a example file.Menu->File->Examples->Basics->Blink

Multi Sensory Communication 35

Page 36: Multi Sensory Communication 1/2

Hello World!

void setup() { // initialize the digital pin as an output. // Pin 13 has an LED connected on most Arduino boards: pinMode(13, OUTPUT); }

void loop() { digitalWrite(13, HIGH); // set the LED on delay(1000); // wait for a second digitalWrite(13, LOW); // set the LED off delay(1000); // wait for a second}

36Multi Sensory Communication

Page 37: Multi Sensory Communication 1/2

Change the Blink Interval

void setup() { // initialize the digital pin as an output. // Pin 13 has an LED connected on most Arduino boards: pinMode(13, OUTPUT); }

void loop() { digitalWrite(13, HIGH); // set the LED on delay(100); // wait for a second digitalWrite(13, LOW); // set the LED off delay(100); // wait for a second}

37Multi Sensory Communication

Page 38: Multi Sensory Communication 1/2

Change the Blink Ratio

void setup() { // initialize the digital pin as an output. // Pin 13 has an LED connected on most Arduino boards: pinMode(13, OUTPUT); }

void loop() { digitalWrite(13, HIGH); // set the LED on delay(5); // wait for a second digitalWrite(13, LOW); // set the LED off delay(5); // wait for a second}

38Multi Sensory Communication

Page 39: Multi Sensory Communication 1/2

Change the Blink Ratio

void setup() { // initialize the digital pin as an output. // Pin 13 has an LED connected on most Arduino boards: pinMode(13, OUTPUT); }

void loop() { digitalWrite(13, HIGH); // set the LED on delay(1); // wait for a second digitalWrite(13, LOW); // set the LED off delay(9); // wait for a second}

39Multi Sensory Communication

Page 40: Multi Sensory Communication 1/2

Change the Blink Ratio

void setup() { // initialize the digital pin as an output. // Pin 13 has an LED connected on most Arduino boards: pinMode(13, OUTPUT); }

void loop() { digitalWrite(13, HIGH); // set the LED on delay(9); // wait for a second digitalWrite(13, LOW); // set the LED off delay(1); // wait for a second}

40Multi Sensory Communication

Page 41: Multi Sensory Communication 1/2

PWM

• PWM(Pulse Width Modulation)

D = τ/ TD : duty cycleτ: pulseT : transition

Multi Sensory Communication

ex: 0.25(D) = 1(τ)/4(T)

Pulse

time

41

Page 42: Multi Sensory Communication 1/2

PWM

Multi Sensory Communication

Analog Input x 6

Digital Input and Output x 14

3.3VGround

Ground

5V

Power Indicator

External Power

42

Page 43: Multi Sensory Communication 1/2

Practice

void setup() { pinMode(11, OUTPUT); // 3, 5, 6, 9, 10, 11,}

void loop() { analogWrite(11, 255); // 0-255}

• analogWrite• http://arduino.cc/en/Reference/AnalogWrite

43Multi Sensory Communication

Page 44: Multi Sensory Communication 1/2

Basis of Electrical Circuit

Multi Sensory Communication 44

Page 45: Multi Sensory Communication 1/2

Basic Knowledge

• Voltage – The difference in electric potential between

two points.– Unit symbol V(Volt)

• Electric current – A flow of electric charge through a medium.– Unit symbol A(Ampere)

• Resistance – The opposition to the passage of an electric

current.– Unit symbol Ω(Ohm)

Multi Sensory Communication 45

Page 46: Multi Sensory Communication 1/2

Voltage

Multi Sensory Communication

Electric potential A

Electric potential B

The difference in electric potential

Ground(GND)

46

Page 47: Multi Sensory Communication 1/2

Ohm’s law

Multi Sensory Communication

Same Pressure

lessmoreSame

amount

LowPressure

HighPressure

47

Page 48: Multi Sensory Communication 1/2

What is servo motor?

Multi Sensory Communication 48http://www.seattlerobotics.org/guide/servos.html

Page 49: Multi Sensory Communication 1/2

Movement

Multi Sensory Communication 49

20ms Pulse

1.25/20ms

1.5/20ms

1.75/20ms

Neutral

-90 degrees

+90 degrees

Arduino Digital Pin

Page 50: Multi Sensory Communication 1/2

Control using servo library

Methods see… http://www.arduino.cc/en/Reference/Servo– attach(pin/number)

• Attach the Servo variable to a pin– write(angle/degrees 0 - 180)– writeMicroseconds(time/micro seconds1250 - 1750)– read(pin/number)

• The angle of the servo, from 0 to 180 degrees. – attached()

• Use as ServoObject.attached() returns true/false – detach()

• Use as ServoObject.detach() detach pin from servo

Multi Sensory Communication 50

Page 51: Multi Sensory Communication 1/2

Tutrial

• File > Examples > Servo > Sweep

Multi Sensory Communication 51http://arduino.cc/en/Tutorial/Sweep

orange

brownred

Page 52: Multi Sensory Communication 1/2

Points

#include <Servo.h> //a maximum of eight servo objects can be created

Servo myservo; // create servo object to control a servo int pos = 0; // variable to store the servo position void setup() { myservo.attach(9); // attaches the servo on pin 9 to the servo object } void loop() { for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees { // in steps of 1 degree myservo.write(pos); // tell servo to go to position in variable 'pos' delay(15); // waits 15ms for the servo to reach the position } for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees { myservo.write(pos); // tell servo to go to position in variable 'pos' delay(15); // waits 15ms for the servo to reach the position } }

Multi Sensory Communication 52