eBlocks -- Electronic Building Blocks for Everyone - PowerPoint PPT Presentation

About This Presentation
Title:

eBlocks -- Electronic Building Blocks for Everyone

Description:

eBlocks project: http://www.cs.ucr.edu/eblocks ... Tiny PIC processor in each block. Two-wire connectivity. Packet-based serial communication ... – PowerPoint PPT presentation

Number of Views:126
Avg rating:3.0/5.0
Slides: 30
Provided by: frank126
Learn more at: http://www.cs.ucr.edu
Category:

less

Transcript and Presenter's Notes

Title: eBlocks -- Electronic Building Blocks for Everyone


1
eBlocks -- Electronic Building Blocks for Everyone
  • Frank Vahid
  • Professor
  • Computer Science and Engineering
  • University of California, Riverside
  • (Also with the Center for Embedded Computer
    Systems, UC Irvine)
  • http//www.cs.ucr.edu/vahid
  • eBlocks project http//www.cs.ucr.edu/eblocks
  • This work is being supported by the National
    Science Foundation

2
My Background
  • I dont usually starts talks this way, but
    theres a reason this time
  • PhD 1994 with Prof. Dan Gajski, UC Irvine
  • DA/CAD for embedded systems
  • Publish in places like DAC, ICCAD, DATE, ISLPED,
    FPGA, FCCM, ISCA
  • Funding from NSF, SRC, various companies
  • Also involved in embedded system education,
    extensive lab development

Completing Digital Design, J. Wiley and Sons,
2005
J. Wiley Sons, 2001
Prentice-Hall 1994
3
The Beginnings of eBlocks
1998 bought a house
Garage door
Garage door left open at night Oops!
4
Simple Enough Problem Solution not so Simple
  • Alarm company too expensive
  • Off-the-shelf product hard to find, too
    expensive, not flexible
  • What I wanted electronic components (blocks)
  • Light sensor
  • Contact switch
  • Logic
  • Wireless transmit/receive
  • LED
  • Connect themdone

5
With my Embedded Systems Background, I Should Be
Able to Solve This! Not So Easy, Though
  • Catalogs, datasheets, power supplies, compilers,
    drivers, breadboards, resistors, capacitors,
    debugging (multimeters, logic analyzers),
    packet-based networking,

6
Is it Just Me?
  • Gave as embedded-system class project
  • Three weeks
  • Students had courses, from various universities,
    involving digital design, microcontrollers,
    electronics, and interfacing with
    sensors/displays
  • 50 students attempted the project, only 20
    completed the project (two different quarters)
  • Problems
  • Misunderstanding (or vague) data sheets,
    interfacing errors, debugging difficulties
  • A regular person cant build this seemingly
    simple, useful system
  • Not even perhaps an engineer in a different
    domain
  • Not even a specialist when he has three kids in
    soccer

7
Noticed Countless Applications where Electronic
Blocks would be Useful
  • Home monitoring
  • Garage door open, side fence open, sleepwalk
    detector, visitor at front door, turn on two
    lights on porch, extend motion sensor for light
    in garage, carpooler arrived
  • Stores
  • Restaurants (more rice please), car in store
    parking spot, customer entered store, aisle
    popularity
  • Office
  • Front-desk notifiers, meeting room in use, copy
    machine in use, mail in mailbox, temperature
    logging
  • School
  • Student voting systems, learning logic, learning
    arithmetic
  • Assistance
  • Hard of hearing (vibration when sound), vision
    impaired, object locators, sleepwalker detector
  • Ad-hoc security

8
Individual Applications Dont Justify Product,
but Together a Huge Market
  • Volume for garage open at night or sleepwalk
    detector individually not big
  • Product not profitable
  • High-cost product
  • Hard-to-find product
  • Typically not customizable
  • But combination of applications results in huge
    volumes
  • Blocks can be low-cost
  • Key can we create blocks that people can really
    use?

9
Need Electronic Blocks
  • Decided that what is needed is a set of
    Electronic Blocks
  • The wood and nails of electronics
  • Enable novices to build basic useful systems
  • Enable slightly more skilled people to build
    fairly complex systems (e.g., electrician)
  • Not quite my research area (DA/CAD), but
    passionate about this

10
Existing electronic block products
  • Board-based education only, not practical use
  • E.g., LogiBlocs, MagicBlocks
  • Home-automation-centric, not general
  • E.g., Existing X10 products
  • PC-centric O.K., but not easy to learn
  • E.g. Mindstorm, Phidgets (PC-based robotics)

11
eBlock Design Principles
  • Minimal abstraction for novices
  • Hands-on design (PC O.K. for non-novice)
  • Obvious connectivity using wires
  • Wireless an optional replacement for wires
  • Wires lower-power, longer communication (gt 2
    miles in test of two 98 cent uC w/ 9-volt. Bat.)
  • Obvious block functions
  • Combine, Prolong (programmable O.K. for
    non-novices)
  • Option of battery or wall-powered
  • Battery should last years
  • Wall batteries not always necessary

12
eBlock Basic Abstraction, as in our One-Page User
Handout
STEP 1 eBlocks are electronic blocks that you
connect like Legos to build useful sensor
systems around the home, office, etc.
  • Most people dont do well with abstractions
  • Whereas engineers and programmers thrive on
    abstractions!
  • Our system uses a yes/no abstraction
  • STEP 2 Build your first eBlock system a
    doorbell!
  • find a button and beeper block
  • turn each block on
  • connect the button to beeper block like this

Press the button, hear the beep!
13
eBlock Basic Abstraction, as in our One-Page User
Handout
STEP 3 eBlocks talk over the wires using YES and
NO. The button block sends YES when you press the
button, and sends NO when the button is not
pressed.
The tiny status lights blink near an eBlock's
wires tell you what's being sent  
Try pressing the button and watching the status
lights on the button and beeper blocks.  
Yes/No is the main abstraction users need to
know
14
Basic Yes/No Blocks
  • Misc
  • Wireless transmit / receive
  • Splitter
  • Compute
  • Combine (2-input)
  • Opposite
  • Yes prolonger
  • Once-yes, stays yes
  • Toggle
  • Pulse generator
  • Output
  • LED
  • Beeper
  • Electric relay
  • Sensors
  • Motion
  • Light
  • Sound
  • Button
  • Contact
  • Switch

Weve built gt100 physical prototypes
15
eBlock Technology
  • Tiny PIC processor in each block
  • Two-wire connectivity
  • Packet-based serial communication
  • Extensive sleep time
  • Agreed upon wired protocol
  • Research issues
  • 1. New Boolean digital abstraction
  • 2. Multi-layer computation / communication
    codesign
  • 3. Usability by novices
  • 4. Tools for non-novices

16
1. Boolean Digital Abstraction
  • For packet-based underlying phenomena
  • Rather than continuous voltage

17
Boolean Digital Abstraction Technology Family
  • Send packet for logic change
  • Block technology family includes
  • maximum inter-packet time
  • minimum inter-packet time
  • Akin to a logic gate technology family

18
Boolean Digital Abstraction Basic Compute Blocks
  • Definition of basic compute blocks
  • Combinational
  • AND/OR/NOT
  • Truth table
  • Sequential
  • Prolonger
  • Toggle
  • Tripper
  • Pulse generator

19
2. Multilayer Compute/Communication Codesign
  • Design parameters tightly inter-related
  • Traditional computer-system-design multi-layered,
    separation of concerns approach not appropriate
    for energy-sensitive sensor nodes
  • PIC Supply Voltage (V) 3.0, 3.5, 4.0, 4.5,
    5.0, 5.5
  • PIC Clock Frequency (Hz) 32k, 100k, 200k,
    300k, 455k, 800k, 1.6M, 2M, 3M, 4M, 5.3M, 7.4M,
    8M, 10M, 10.4M, 16M, 20M
  • Communication Baud Rate (bps) 1200, 2400,
    4800, 9600, 14.4K, 28.8K
  • Data Packet Size 4 bits, 1B, 2B, 4B
  • Data Timeout 0.25 sec, 0.5 sec, 1 sec, 2 sec,
    3 sec, 4 sec, 5 sec, 10 sec, 30 sec, 1 min, 5
    min, 10 min, 30 min
  • Alive Timeout 0.1 sec, 0.25 sec, 0.5 sec, 1
    sec, 2 sec, 3 sec, 4 sec, 5 sec, 10 sec, 30 sec,
    1 min, 5 min, 10 min
  • Error Check/Correct (ECC) Strategy none, crc,
    parity, checksum1, checksum2, hamming1, hamming2
  • Design metrics
  • Parameters compete in their influence of metrics

Lifetime the number of days a block can run
powered by a 9-volt battery. Reliability the
absence of undetected incorrect data
packets. Latency the time for an event to
propagate through a block within a
network. Responsiveness the time for newly
connected blocks to receive good input and behave
properly, and for newly-disconnected blocks to
behave as disconnected.
20
Multilayer Codesign -- Tool
  • Developed CAD tool for block designer (not for
    the block user)
  • Designer specifies design metric objective
    functions
  • Tool includes internal estimator relating design
    parameter values to design metrics
  • Tool explores millions of configurations
  • Outperformed hand design
  • Enables easy re-targeting of blocks to new domain

21
3. Usability by Novices
  • Extensive ongoing user studies
  • Dozens of kids ages 10-17
  • 35 high-school kids
  • Hundreds of college students
  • About 15 adults/seniors
  • Hardest block 2-input logic
  • Previous studies show difficulty with logic
  • Want configurable block, in addition to
    AND/OR/NOT
  • Initial truth-table design performed poorly

22
Usability by Novices -- Logic
  • Several iterations of block designs
  • Hundreds of students
  • Ultimately found a logic sentence best
  • Colored truth table the runner up
  • We might provide both
  • Sentence easier but less general

23
Usability by Novices -- State
  • State-concepts perhaps harder to comprehend
  • But usability tests show surpising success for
    basic systems
  • In less than 10 minutes, with no training, mostly
    novices (non-scientists, non-engineers)
  • State blocks seem to correspond to common
    everyday items (toggle light switch, alarm
    system, beeping alarm clock)

Success Number of Students
Toggle 85 33
Yes Prolonger 86 29
Once Yes, Stays Yes 73 33
Pulse Generator 72 32
24
4. Tools for Non-Novices
  • Simulator
  • Optimizer
  • Replace blocks by smaller set, even by
    programmable blocks
  • User-programmable blocks

25
Continuing Work -- Research
  • Pubs
  • ISSS/CODES03
  • IEEE SECON04
  • Subs
  • 3 to DATE
  • 1 to CHI
  • Extension to integer blocks too
  • E.g., temperature sensor, arithmetic compute
  • Digital abstraction formalizations
  • More usability testing
  • Integer blocks, AND/OR/NOT blocks, logicstate
    systems
  • More advanced user tools
  • Need a functional specification of system,
    automatically generate system of blocks
  • Improve block-design CAD tool
  • More parameters, easier cost function definition,
    better analysis
  • Towards sensor-network CAD tool

26
Continuing Work Evolving Towards the Digital
Home
  • Ultimately, blocks can enhance Intels Digital
    Home efforts
  • Enable user to configure sensor-input to PC-based
    application
  • Activate Program A (say video recording) when
    Event X
  • Event X may be defined by arbitrary eBlock system
    that eventually outputs yes/no to PC
  • Integer blocks provide even more possibilities
  • Turn on AC when average temperature of three
    sensors exceeds threshold
  • Can naturally lead to users wanting to use
    PC-based tools to build, configure or optimize
    their sensor systems

Motion Sensor
Motion Sensor
Motion Sensor
(Logic blocks)
eBlock to PC Interface
Motion Sensor
Motion Sensor
Motion Sensor
Motion Sensor
27
Continuing Work Middle-School eBlocks Project
  • Goal Begin bringing this technology to the
    people
  • First step Bring blocks to middle-school kids
    with aid of major corporate partner
  • Response by kids and teachers has been great
  • Hands on engineering of real systems
  • Natural evolution into both spatial and temporal
    design
  • State-programming may prove more intuitive than
    data-transformation-programming
  • Hope to encourage youth to consider engineering
    at the critical middle school age, when studies
    show careers get excluded, especially by
    females
  • Blocks can help teach logic
  • A critical skill in the information age, lacking
    among most

28
Middle-School eBlocks Project
  • Features
  • Establish key partnership (4Q04)
  • Design and user-test interesting projects (1Q05)
  • Create robust block prototypes for at least two
    dozen schools (2Q05)
  • Develop teacher kits with blocks and projects
    (2Q05)
  • Actively visit at least one dozen schools,
    introduce kits, monitor success (3Q05)
  • Extend kits to PC-based applications
  • 2006 expand project, begin looking at digital
    home project, possibly startup company
  • Costs (2005)
  • 35-50K grad student design/develop
  • 30-50K prototypes
  • 35-50K staff for school visits
  • Matching funds likely (NSF, UC)

29
Summary
  • eBlocks stemmed from observation that technology
    progress seems to have missed something
  • Still need the electronic equivalent of wood and
    nails
  • Took a risk research-wise got NSF funding now
    committed to seeing this have an impact
  • We designed and tested first set of blocks
  • Now convinced they are usable, useful and
    interesting
  • Want to take blocks to the people
  • First step middle-school eBlocks project
  • Need major partner to fund, assist, guide, and
    provide credibility
Write a Comment
User Comments (0)
About PowerShow.com