CURIE Academy 2014 Design Project: Exploring an Internet of Things Christopher Batten School of Electrical and Computer Engineering Cornell University http://www.csl.cornell.edu/curie2014
CURIE Academy 2014Design Project: Exploring an Internet of Things
Christopher BattenSchool of Electrical and Computer Engineering
Cornell University
http://www.csl.cornell.edu/curie2014
Electrical and Computer Engineering The Internet of Things CURIE Design Project
MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY
8:15-9:00amBreakfast
8:15-9:00amBreakfast
8:15-9:00amBreakfast
8:15-9:00amBreakfast
8:15-9:00amBreakfast
9:30-10:30amFieldSessionMaterialsScience&Engr
9:30-10:30amFieldSessionApplied&EngrPhysics
9:30-10:30amFieldSessionCivil &Environmental Engr
9:30-10:30amFieldSessionChemicalandBiomolecularEngr
9:30-10:30amFieldSessionMechanical&AerospaceEngr
10:30am –Transition
10:30am –Transition
10:30am –Transition
10:30am –Transition
10:30am –Transition
10:45-11:45amFieldSessionComputerScience&ISST
10:45-11:45amFieldSessionOperationsResearch&InformationEngr
10:45-11:45amFieldSessionEarth&AtmosphericSci.
10:45-11:45amFieldSessionBiomedicalEngr
10:45-11:45amFieldSessionEngineeringAdmissions
Lunch
11:45 am-12:45pmLunch
11:45 am-12:45pmLunch
11:45 am-12:45 pmLunch
11:45-12:45pmLunch
1-5 pmDesignProjectSession
1-5 pmDesignProjectSession
1-5 pmDesignProjectSession
1-5 pmDesignProjectSession
1-5 pmDesignProjectSession
11:45 am-12:45pm
MSE
CS
AEP
ORIE
CEE
EAS
CBE
BME
MAE
ECE: Electrical and Computer Engineering
CURIE Academy 2014 Design Project Overview 2 / 37
Electrical and Computer Engineering The Internet of Things CURIE Design Project
Talk Outline
Electrical and Computer Engineering
The Internet of Things
CURIE Design Project
CURIE Academy 2014 Design Project Overview 3 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
PowerSystems
ComputerEngineering
ElectricalCircuits
ElectricalDevices
SignalProcessing
Telecomm
CURIE Academy 2014 Design Project Overview 4 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
ECE is the Study and Application ofElectricity, Micro-Electronics, and Electro-Magnetism
ECE
Power Systems
Computer Engineering
ElectricalCircuits
Electrical Devices
Signal Processing
Telecomm
Bio-Electrical Engineering
Micro-Electro-Mechanical Devices
Opto-Electrical Devices
Fusion and Plasma Physics
Image, Audio, VideoProcessing
Information Theory
Smart Grid and Smart Buildings
Systems and Synthetic Biology
Atmospheric Science Control Theory
Robotics
Network Protocolsand Optimization
Analog and DigitalCircuits
Computer-AidedDesign
CURIE Academy 2014 Design Project Overview 5 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
ECE is everywhere!
Data Centers
Solar PanelsMedical ImagingPortable Medical Devices
Internet Routers
Humanoid RobotsUnmanned Vehicles
GPS Devicesand Satellites
Electric andHybrid Vehicles
Fiber OpticNetworks
Automobiles
DigitalCameras
Computing: From Handhelds to Servers
GameConsoles
CURIE Academy 2014 Design Project Overview 6 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
What can one do with a background in ECE?
I ECE Industry: Intel, AMD, Analog Devices, NVIDIA, HP, Apple
I General Engineering Industry: GE, Lockheed Martin, Raytheon
I Software Industry: Microsoft, Amazon, Mathworks
I Join a Startup: Achronix, Hillcrest Labs
I Research Lab: Sandia National Labs, Draper Labs, NASA
I Consulting: McKinsey, Accenture, Deloitte, Booz Allen Hamilton
I Finance: Deutsche Bank, Capital One, UBS, Bloomberg
I Graduate School: Law School, Business School, Med School
I Found a university!
CURIE Academy 2014 Design Project Overview 7 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
Cornell was founded because of ECE!
Samuel Morse invented thetelegraph (a digital communicationdevice), but needed help buildingthe network
Ezra Cornell built the firsttelegraph line (the beginning oftelecommunications), and investedin the Western Union Telegraph Co
"What hathGod wrought?"
Ezra Cornell’s investments created the fortunethat eventually enabled the founding of Cornell University
CURIE Academy 2014 Design Project Overview 8 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
“Optional Homework”
I Visit the statue of Ezra Cornellon the Arts Quad
I Does something on the back ofthe statue relate to ECE?
I Take a picture with your cellphoneand send it to your friend!. Power systems. Computer engineering. Electrical circuits. Electrical devices. Signal processing. Telecommunications
CURIE Academy 2014 Design Project Overview 9 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
Computer Engineering
ECE
Power Systems
Computer Engineering
ElectricalCircuits
Electrical Devices
Signal Processing
Telecomm
Bio-Electrical Engineering
Micro-Electro-Mechanical Devices
Opto-Electrical Devices
Fusion and Plasma Physics
Image, Audio, VideoProcessing
Information Theory
Smart Grid and Smart Buildings
Systems and Synthetic Biology
Atmospheric Science Control Theory
Robotics
Network Protocolsand Optimization
Analog and DigitalCircuits
Computer-AidedDesign
CURIE Academy 2014 Design Project Overview 10 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
The Computer Systems Stack
Technology
Application
Gap too large to bridge in one step(but there are exceptions, e.g., a magnetic compass)
In its broadest definition, computer engineering is thedevelopment of the abstraction/implementation layers that allow us to
execute information processing applications efficientlyusing available manufacturing technologies
CURIE Academy 2014 Design Project Overview 11 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
The Computer Systems Stack
Register-Transfer Level
Circuits
Devices
Instruction Set Architecture
Programming Language
Algorithm
Microarchitecture
Com
pute
r E
ng
ineeri
ng
Technology
Application
Operating System
Gate Level
Sort an array of numbers
2,6,3,8,4,5 -> 2,3,4,5,6,8
1. Find minimum number in input array2. Move minimum number into output array3. Repeat steps 1 and 2 until finished
Insertion sort algorithm
void isort( int b[], int a[], int n ) { for ( int idx, k = 0; k < n; k++ ) { int min = 100; for ( int i = 0; i < n; i++ ) { if ( a[i] < min ) { min = a[i]; idx = i; } } b[k] = min; a[idx] = 100; }}
C implementation of insertion sort
CURIE Academy 2014 Design Project Overview 11 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
The Computer Systems Stack
Register-Transfer Level
Circuits
Devices
Instruction Set Architecture
Programming Language
Algorithm
Microarchitecture
Com
pute
r E
ng
ineeri
ng
Technology
Application
Operating System
Gate Level
Mac OS X, Windows, LinuxHandles low-level hardware management
blez $a2, donemove $a7, $zeroli $t4, 99move $a4, $a1move $v1, $zeroli $a3, 99lw $a5, 0($a4)addiu $a4, $a4, 4slt $a6, $a5, $a3movn $v0, $v1, $a6addiu $v1, $v1, 1movn $a3, $a5, $a6
MIPS32 Instruction SetInstructions that machine executes
CURIE Academy 2014 Design Project Overview 11 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
The Computer Systems Stack
Register-Transfer Level
Circuits
Devices
Instruction Set Architecture
Programming Language
Algorithm
Microarchitecture
Com
pute
r E
ng
ineeri
ng
Technology
Application
Operating System
Gate Level
Silicon processtechnology
Si Si Si
SiSiSi
Transistors and wires
Combining devicesto do useful work
Boolean logic gatesand functions
How data flowsthrough system
CURIE Academy 2014 Design Project Overview 11 / 37
• Electrical and Computer Engineering • The Internet of Things CURIE Design Project
Computer Systems: CS vs. EE vs. CE
In its broadest definition, computer engineering is thedevelopment of the abstraction/implementation layers that allow us to
execute information processing applications efficientlyusing available manufacturing technologies
Register-Transfer Level
Circuits
Devices
Instruction Set Architecture
Programming Language
Algorithm
Microarchitecture
Com
pute
r E
ng
ineeri
ng
Technology
Application
Operating System
Gate Level
TraditionalComputer Science
TraditionalElectrical Engineering
Computer Engineering is at theinterface between hardware and softwareand considers the entire system
CURIE Academy 2014 Design Project Overview 12 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
Talk Outline
Electrical and Computer Engineering
The Internet of Things
CURIE Design Project
CURIE Academy 2014 Design Project Overview 13 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
The “Traditional” Internet
Internetof
People
Human beings mustcollect, enter, publish, and analyze
almost all of the informationthat is transmitted over the Internet
CURIE Academy 2014 Design Project Overview 14 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
Bell’s Law
Roughly every decade a new, smaller, lower priced computer class formsbased on a new programming platform resulting in entire new industries
103
104
105
106
107
108
102
Pri
ce
in
Do
lla
rs
1950 1960 1970 1980 2000 2010
G. Bell. "Bell's Law for the Birth and Death of Computer Classes."CACM, Jan 2008.
1990
104
106
108
1010
1012
102
100
Vo
lum
e in
mm
3
2020 1950 1960 1970 1980 2000 20101990 2020
Y. Lee et al. "Modular 1mm3 Die-Stacked Sensing Platform ..."JSSC, Jan 2013.
Mainframes
Mainframes
Minicomputers
Minicomputers
Workstations
Workstations
PersonalComputers
PersonalComputers
Laptops
LaptopsHandhelds
Handhelds
Supercomputers
ScalableClusters
CloudComputing
Internet of ThingsIoT
CURIE Academy 2014 Design Project Overview 15 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
Emerging Trend Towards an Internet of Things
Internetof
Things
Interconnected "things" augmented with inexpensiveembedded controllers, sensors, actuators tocollect information and interact with the world
CURIE Academy 2014 Design Project Overview 16 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
IoT Example: Spending the Day Hiking
CURIE Academy 2014 Design Project Overview 17 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
IoT Smart Home
CURIE Academy 2014 Design Project Overview 18 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
IoT Smart Power Distribution Grid
CURIE Academy 2014 Design Project Overview 19 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
IoT Early Disaster Warning System
CURIE Academy 2014 Design Project Overview 20 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
IoT Wildlife Tracking System
CURIE Academy 2014 Design Project Overview 21 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
IoT Wearable Health Monitor
CURIE Academy 2014 Design Project Overview 22 / 37
Electrical and Computer Engineering • The Internet of Things • CURIE Design Project
Internet of Things + Computer Engineering
Internetof
Things
Field of computer engineering is well-situatedto serve as a foundation for students
interested in this emerging area
Register-Transfer Level
Circuits
Devices
Instruction Set Architecture
Programming Language
Algorithm
MicroarchitectureComputer
Engineering
Technology
Application
Operating System
Gate Level
CURIE Academy 2014 Design Project Overview 23 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
Talk Outline
Electrical and Computer Engineering
The Internet of Things
CURIE Design Project
CURIE Academy 2014 Design Project Overview 24 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE Design Project Schedule
Monday Lab 1: Computer Engineering – Hardware PerspectiveSimple calculator out of basic logic gates
Tuesday Lab 2: Computer Engineering – Software PerspectiveMobile robot control application
Wednesday Lab 3: “Smart Door” IoT SystemBegin Designing IoT System for Project
Thursday Design, Implement, and Test IoT System
Friday Test IoT SystemPrepare Project Demonstration and Presentation
CURIE Academy 2014 Design Project Overview 25 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
Lab 1: Computer Engineering – Hardware Perspective
Register-Transfer Level
Circuits
Devices
Instruction Set Architecture
Programming Language
Algorithm
Microarchitecture
Technology
Application
Operating System
Gate Level
Scholars will incrementally build a simple "calculator"capable of adding small binary numbers using basic logic gates
CURIE Academy 2014 Design Project Overview 26 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
Lab 2: Computer Engineering – Software Perspective
Register-Transfer Level
Circuits
Devices
Instruction Set Architecture
Programming Language
Algorithm
Microarchitecture
Technology
Application
Operating System
Gate Level
Scholars will incrementally build a mobile robot controlapplication capable of wandering an environment to find a target
using the popular Arduino micro-controller
CURIE Academy 2014 Design Project Overview 27 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
Lab 3: “Smart Door” IoT System
IoTCloud
IoT InputDevice
IoT OutputDevice
Scholars will build a basic IoT systemincluding an IoT device to send the
door status to the cloud and anIoT device to display the door status
CURIE Academy 2014 Design Project Overview 28 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Design Projects
IoTCloud
IoT InputDevice
IoT OutputDevice
IoT InputDevice
IoT Input Modules(sensors)
IoT Output Modules(displays,actuators)
CURIE Academy 2014 Design Project Overview 29 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Input Modules
Light Temperature RangeForce
Pulse Water CurrentAcceleration
CURIE Academy 2014 Design Project Overview 30 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Output Modules
RGB LED Piezo Buzzer RelayLED Matrix
Miniprinter Servo
CURIE Academy 2014 Design Project Overview 31 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Smart Home
IoTCloud
IoT InputDevice
IoT OutputDevice
IoT InputDevice
Light Temperature Range RelayLED Matrix
CURIE Academy 2014 Design Project Overview 32 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Smart Power Distribution Grid
IoTCloud
IoT InputDevice
IoT OutputDevice
IoT InputDevice
RelayLED Matrix RelayLED MatrixCurrent
CURIE Academy 2014 Design Project Overview 33 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Early Disaster Warning System
IoTCloud
IoT InputDevice
IoT OutputDevice
IoT InputDevice
ForceWater Acceleration RGB LED Piezo Buzzer
CURIE Academy 2014 Design Project Overview 34 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Wildlife Tracking System
IoTCloud
IoT InputDevice
IoT OutputDevice
IoT InputDevice
Range Piezo BuzzerLED MatrixLocation
CURIE Academy 2014 Design Project Overview 35 / 37
Electrical and Computer Engineering The Internet of Things • CURIE Design Project •
CURIE IoT Wearable Health Monitor
IoTCloud
IoT InputDevice
IoT OutputDevice
IoT InputDevice
AccelerationPulse Miniprinter
CURIE Academy 2014 Design Project Overview 36 / 37
Electrical and Computer Engineering The Internet of Things CURIE Design Project
Design Project Summary
I Lab 1: Computer Engineering from theHardware Perspective
I Lab 2: Computer Engineering from theSoftware Perspective
I Lab 3: “Smart Door” IoT System
I Projects will involve designing, implementing,and testing a simple IoT device inspired byreal-world applications of IoT
Goal: Introduce CURIE scholars broadly to thepractice of engineering and more specifically to
computer engineering
CURIE Academy 2014 Design Project Overview 37 / 37