99
Hardware prototyping: Arduino, sensors, and NFC [email protected]

Physical Computing and IoT

Embed Size (px)

DESCRIPTION

Physical Computing and IoT

Citation preview

Hardware prototyping: Arduino, sensors, and NFC

[email protected]

Too

MANYthings inmy

Where to Start?

Physical Computing and IoT

[email protected]

Physical computing

What is Physical Computing?

What is Physical Computing?

handmade art, design or DIY hobby projects that use sensors and microcontrollers to translate input to a software system, and/or control electro-mechanical

devices such as motors, servos, lighting or other hardware

What is Physical Computing?

• use of computing and electronics [sensors and actuators] in the prototyping of physical objects to interact with humans

• behaviour implemented by software

• use of microcontrollers

• the goal is to link the physical world with the virtual world

• way to create communication and interaction between people

How we see computers?

How computers see us?

How computers see us?

https://www.youtube.com/watch?v=a6cNdhOKwi0

The world is changing...

"If I have seen a little farther than others, it is because I have stood on the shoulders of giants," I am forced to say, "Today we stand on each other's feet."

Perhaps the central problem we face in all of computer science is how we are to get to the situation where we build on top of the work of others rather than redoing so much of it in a trivially different way. Science is supposed to be cumulative, not almost endless duplication of the same kind of things”.

Richard Hamming 1968 Turning Award Lecture

How computers see us?

How computers see us?

Physical Computing vs Robotics

UCD

[empowerment]

Physical Computing

“change the way that computers see us will

change how they interact with us”

Tom Igoe – Physical Computing

Moore’s Law

Moore’s Law

Koomey’s Law

Electricity

Maybe… a workshop/course in future

Arduino and Sensors

http://arduino.cc/

Arduino is a tool for making computers that can sense and control more ofthe physical world than your desktop computer.

Whaaaaaaaaaaaaaat?

Arduino - Advantages

• Atmel microcontroller (ATMEGA8 and ATMEGA168)

• programming using Wiring (subset of processing, based on C / C ++)

• open-source, platform evolution through contributions from users

Arduino - Capabilities

Arduino - Platforms

duemilanovemini

lilypad

boarduino

paperduino megapro

• driver – windows: FTDI Serial USB– mac|linux: nothing to be installed

• software – unzip and run

download: http://arduino.cc/en/Main/Software

Arduino - Installation

Arduino - MEGA

Arduino – MEGA - Summary

• use of computing and electronics [sensors and actuators] in the prototyping of physical objects to interact with humans

• behaviour implemented by software

• use of microcontrollers

• the goal is to link the physical world with the virtual world

• way to create communication and interaction between people

Microcontroller ATmega2560Operating Voltage 5VInput Voltage (recommended) 7-12VInput Voltage (limits) 6-20VDigital I/O Pins 54 (of which 15 provide PWM output)Analog Input Pins 16DC Current per I/O Pin 40 mADC Current for 3.3V Pin 50 mA

Flash Memory 256 KB of which 8 KB used by bootloader

SRAM 8 KBEEPROM 4 KBClock Speed 16 MHz

Arduino – IDE [Board and Serial Port]

Arduino – Platform

IDE

Arduino – Platform

Sketch

Arduino – Platform

Libraries

Arduino – Platform

• Programming language: C-based (but more simple)

• Functions– Digital I/O

• pinMode()• digitalWrite()• digitalRead()

– Analog I/O• analogReference()• analogRead()• analogWrite() - PWM

– Time• millis()• micros()• delay()

• Constants

- HIGH | LOW – (0V or 5V)- INPUT | OUTPUT

More: http://arduino.cc/en/Reference/HomePage

Arduino – Example

int led = 13;

void setup() {// initialize the digital pin as an output.pinMode(led, OUTPUT);

}

// the loop routine runs over and over again forever:void loop() {

digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)delay(1000); // wait for a seconddigitalWrite(led, LOW); // turn the LED off by making the voltage LOWdelay(1000); // wait for a second

}

Breadboard?

Electronic - Breadboard?

Jumpers

Electronic - Jumpers

Arduino – Example

int led = 9; // the pin that the LED is attached toint brightness = 0; // how bright the LED isint fadeAmount = 5; // how many points to fade the LED by

// the setup routine runs once when you press reset:void setup() {// declare pin 9 to be an output:pinMode(led, OUTPUT);

}

// the loop routine runs over and over again forever:void loop() {// set the brightness of pin 9:analogWrite(led, brightness);// change the brightness for next time through the loop:brightness = brightness + fadeAmount;

// reverse the direction of the fading at the ends of the fade:if (brightness == 0 || brightness == 255) {fadeAmount = -fadeAmount ;

}// wait for 30 milliseconds to see the dimming

effect delay(30);

}

Sensors and Shields

http://www.instructables.com/tag/type-id/category-technology/channel-arduino/http://blog.arduino.cc/

Light Painting with an Arduino:https://www.youtube.com/watch?v=cYo66PIuYTE

Touch Board: https://www.youtube.com/watch?v=Y3eSrUQTesg

DrawDio: https://www.youtube.com/watch?v=PV_w38ldZaE

Hammer pong: https://www.youtube.com/watch?v=IiiWKhS2X_o

Traffic Lights – Pong: https://www.youtube.com/watch?v=C3Ozz6_pdMI

Women + Bike + Wall: https://www.youtube.com/watch?v=cO7iCbtlcIc

Laser Harp:https://www.youtube.com/watch?v=sLVXmsbVwUs

opportunity

Similar technologies?

MIT Tangible Media: https://www.youtube.com/watch?v=lvtfD_rJ2hE

Dancing Traffic Light: https://www.youtube.com/watch?v=SB_0vRnkeOk

Internet of Things (IoT)

Motivation: Devices Miniaturisation

2010 5 billion devices. Population of 7 billion people.

202020 billion devices. Population 7.7 billion people.

Motivation: Global amount of connected devices

Internet of Things

The Internet of Things (IoT) is the interconnection of uniquely

identifiable embedded computing devices within the

existing Internet infrastructure

is not made up only of Smart Things

IoT

And if all object types were connected?

INTERACTION / INFORMATIONAsk them where they came from, who owns them, what they do, etc.INTERACTION / INFORMATIONAsk them where they came from, who owns them, what they do, etc.

billions or even trillions of objectsbillions or even trillions of objects

And the objects that do not communicate over the network?

Radio Frequency Identification

Each product even being identical to another, has a unique ID

Tags can store small amount of data

Read-only or read-write tags

Ability to destroy ("kill") a tag

With RFID, objects are unique

Term presented/used in 1999 by Kevin Ashton, director of Auto-ID Labs at MIT

Several objects tagged with RFID would be part of avast network of sensors. Objects could be found andtracked, so that there was an IoT.

The IoT term emerged from RFID world

Bar codes are equals

Even when differents

Point to point communication

RFID-based technology

Multiple uses

Near Field Communication

Near Field Communication

https://www.youtube.com/watch?v=Wim4TqMzgVQ

Near Field Communication

https://www.youtube.com/watch?v=mnLtjhC6HqA

Tag/Reader/Writer (terminal)

Peer to Peer (device to device)

Card emulation

Connect apps with real world

Connect devices

Connect your virtual wallet

Near Field Communication

Until 201550% of smartphones will support NFC (Gartner)

In 2015Mobile transactions will exceed $1 Trillion (Yankee Group)NFC will be the most used solution in the world for payments (Frost & Sullivan)

In 20171/4 from US consumers will buy using NFC technology (Juniper Research)

Near Field Communication: perspective

Before users can use NFC Tags, they will need to enable the NFC feature on their NFC capable smartphone.

1. Go to the "settings" screen (from the home screen, select menu->settings)2. select "more settings" (this is the forth item down on the settings screen)3. in the "more settings" screen, you will see an option for "NFC". If there is a

checkmark, NFC is already enabled. If no checkmark, select "NFC" to enable.

In summary..."menu->settings->more settings->NFC"

it's that easy!

How to enable NFC in my smartphone?

Who sells NFC?

Acer Cloud MobileAcer E320 Liquid ExpressAcer Liquid GlowAcer Liquid S2Adlink IMX-2000Alcatel One Touch 922Alcatel One Touch 996Alcatel Onetouch Idol 2Alcatel Onetouch Idol 2 Mini SAlcatel Onetouch Idol 2SAlcatel Onetouch Pop FitAmazon Fire PhoneApple iPhone 6 and iPhone 6 PlusAsmaitha Sruta 7? TabletAsus Padfone 2Asus Padfone InfinityAsus Vivo TabAsus Vivo Tab RTAsus VivoTab SmartBBK Vivo XplayBenq T80BlackBerry Bold 9790BlackBerry Bold 9900/9930BlackBerry Curve 9350/9360/9370BlackBerry Curve 9380BlackBerry PlayBookBlackBerry Q10BlackBerry Q5BlackBerry Z10BlackBerry Z30Blu Life Pure XLBWC ToughSlate 7?C-Mii 1C-Mii 3Casio DT-X8Casio G’zOne CA-201LCasio IT-800Cetrix CB250Cetrix CD661Cetrix CT973GCetrix CV300Dell Venue 11 Pro

DLI 9000Faea F1Faea F2Faea F2SFirefox OS FlameFujitsu Arrows AFujitsu Arrows µ F-07DFujitsu Arrows KissFujitsu Arrows TabFujitsu Arrows VG.To N800Gentag GT-601v2Gionee Elife E7Google Nexus 10Google Nexus 5Google Nexus 7 (2013)Google Project Tango tabletHike X1Hike X1DHisense Sero 7 ProHP Elitebook RevolveHP Elitepad 900HTC Desire 500HTC Desire 510HTC Desire 610HTC Desire 816HTC Desire CHTC Droid DNA/HTC J ButterflyHTC Droid Incredible 4G LTEHTC Evo 4G LTEHTC FirstHTC IncredibleHTC MiniHTC OneHTC One M8HTC One MaxHTC One SVHTC One VXHTC One X/XLHTC Ruby/Amaze 4GHTC Windows Phone 8XHuawei Ascend G300

Huawei Ascend G6 4GHuawei Ascend G600Huawei Ascend P2Huawei Ascend Y201Huawei Sonic/Turkcell T20Huawei TalkBand B1iBerry Auxus Nuclea N2Jolla by JollaKuoziro FT701W NFC TabletKyocera Hydro EliteKyocera Hydro IconKyocera Hydro VibeKyocera TorqueLenovo K800Lenovo ThinkPad Tablet 2LG G FlexLG G Pro 2LG G2LG G3LG G3 Beat/LG G3 SLG KU380-NFCLG MachLG Optimus 3D MaxLG Optimus 4X HDLG Optimus EliteLG Optimus GLG Optimus L5LG Optimus L7LG Optimus LTELG Optimus LTE TagLG Optimus NetLG Optimus VuLG T530 EgoLG ViperLumigon T2Lumigon T2 HDM3 Android NFC CommunicatorMegafon MintMeizu MX3Motorola Droid MaxxMotorola Droid MiniMotorola Droid Razr

Motorola Droid Razr HDMotorola Droid Razr MMotorola Droid Razr M 4G LTEMotorola Droid Razr Maxx HDMotorola Droid UltraMotorola MC75A HFMotorola Moto XMotorola Photon Q 4G LTEMotorola Razr D3Motorola Razr i/MT788MTS 975Nokia 603Nokia 700Nokia 701Nokia 801TNokia 808 PureViewNokia C7/AstoundNokia Lumia 1020Nokia Lumia 1520Nokia Lumia 2520Nokia Lumia 610 NFCNokia Lumia 620Nokia Lumia 720Nokia Lumia 820Nokia Lumia 920Nokia Lumia 925Nokia Lumia 928Nokia Lumia 930Nokia Lumia IconNokia N9Nokia OroOnePlus OneOppo Find 5Oppo Find 7Oppo N1Orange Infinity 996Orange San DiegoOrientPhone P6 PlusPanasonic BizPadPanasonic ElugaPanasonic Eluga PowerPantech Discover

Pantech Sky Vega LTEPantech Sky Vega RacerPhilips Xenium W336Porsche Design P’9981Porsche Design P’9982Prada phone by LG 3.0Samsung Ativ OdysseySamsung Ativ S NeoSamsung Ativ SESamsung Galaxy Ace 2Samsung Galaxy Ace StyleSamsung Galaxy AlphaSamsung Galaxy AvantSamsung Galaxy Axiom/Samsung GalaxyAdmire2 Samsung Galaxy Core AdvanceSamsung Galaxy Core LTESamsung Galaxy ExpressSamsung Galaxy Express 2Samsung Galaxy Grand 2 LTESamsung Galaxy K ZoomSamsung Galaxy LightSamsung Galaxy MegaSamsung Galaxy Mini 2Samsung Galaxy NoteSamsung Galaxy Note 3Samsung Galaxy Note IISamsung Galaxy PremierSamsung Galaxy RoundSamsung Galaxy Rugby LTE/ProSamsung Galaxy S AdvanceSamsung Galaxy S Blaze 4GSamsung Galaxy S IISamsung Galaxy S II PlusSamsung Galaxy S IIISamsung Galaxy S III MiniSamsung Galaxy S4Samsung Galaxy S4 ActiveSamsung Galaxy S4 MiniSamsung Galaxy S4 ZoomSamsung Galaxy S5Samsung Galaxy S5 Active/SportSamsung Galaxy S5 Mini

Samsung Galaxy Stratosphere IISamsung Galaxy Victory 4G LTESamsung Galaxy YoungSamsung S5230 NFCSamsung S5260 NFCSamsung SHW-A170KSamsung Wave 578Samsung Wave MSamsung Wave YSamsung Windows RT Ativ TabletSamsung WP8 Ativ SSamsung ZSharp Aquos Phone SerieSharp Aquos Phone ZetaSharp RW-T107 NFC TabletSharp RW-T110 NFC TabletSonim XP1301 Core NFCSonim XPand NFCSony SWR10 SmartBandSony Vaio FitSony Xperia Acro SSony Xperia AXSony Xperia IonSony Xperia LSony Xperia MSony Xperia M2Sony Xperia PSony Xperia SSony Xperia SolaSony Xperia SPSony Xperia TSony Xperia T2 UltraSony Xperia Tablet ZSony Xperia VSony Xperia VLSony Xperia ZSony Xperia Z UltraSony Xperia Z1Sony Xperia Z1 CompactSony Xperia Z2Sony Xperia Z2 TabletSony Xperia ZL

Sony Xperia ZRTazTag TazPadTazTag TPH-OneThe Toughphone DefenderToughshield R-500Toughshield T700Turkcell MaxiPRO5Turkcell T11/ZTE Racer IITurkcell T40Umi CrossUmi X2SVertu ConstellationVertu TiVodafone Smart 4 PowerVodafone Smart 4 TurboVodafone Smart IIIXiaomi Mi 2AXiaomi Mi3Xiaomi Mi4Xolo X900Yota Devices YotaPhone (2014)Yulong Coolpad 8870 NFCZopo ZP998ZTE Blade IIZTE GoTa GH800ZTE Grand X INZTE KisZTE Nubia Z5ZTE OrbitZTE PF200ZTE R233ZTE Turkcell MaxiPLUS5

Apple?Supported Smartphones

Just label your objects and identify them

QR Code

And if you don’t want traceability?

- One step - Various steps

- OS supported - App install

- Doesn’t need light - Needs light

- Until 1MB - Until 3KB

- Active and Passive - Passive

NFC x QR Code

NFC examples

Supermarket in Paris (2012)

Wine temperature monitoring

(2008)

NFC Cases

USA(2012) Rio de Janeiro (Brazil)(2013)

NFC CasesNFC Cases

Angry Birds

NFC examplesNFC Cases

32-bit ARM® Cortex M0 CPU with 256kB flashmemory, accelerometer, temperature sensorand what is most important – 2.4 GHzBluetooth 4.0 Smart (also known as BLE orBluetooth low energy) bidirectional radio.

http://www.youtube.com/watch?v=sUIqfjpInxY

That’s it! ;)

Thank you

so much!

Physical Computing and IoT

[email protected]