Presentation is loading. Please wait.

Presentation is loading. Please wait.

EBlocks -- Electronic Building Blocks for Everyone Frank Vahid Professor Computer Science and Engineering University of California, Riverside (Also with.

Similar presentations


Presentation on theme: "EBlocks -- Electronic Building Blocks for Everyone Frank Vahid Professor Computer Science and Engineering University of California, Riverside (Also with."— Presentation transcript:

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/eblockshttp://www.cs.ucr.edu/eblocks This work is being supported by the National Science Foundation

2 Frank Vahid, UC Riverside2 My Background I don’t usually starts talks this way, but there’s 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 Prentice-Hall 1994 J. Wiley & Sons, 2001 Completing “Digital Design,” J. Wiley and Sons, 2005

3 Frank Vahid, UC Riverside3 The Beginnings of eBlocks… Garage doorGarage door left open at night Oops! 1998 – bought a house

4 Frank Vahid, UC Riverside4 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 them…done light sensor contact switch AND tx rx LED

5 Frank Vahid, UC Riverside5 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, … light sensor contact switch AND tx rx LED

6 Frank Vahid, UC Riverside6 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 can’t 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 completed 40% not completed 60%

7 Frank Vahid, UC Riverside7 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 Frank Vahid, UC Riverside8 Individual Applications Don’t 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 Frank Vahid, UC Riverside9 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 Frank Vahid, UC Riverside10 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 Frank Vahid, UC Riverside11 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 (> 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 Frank Vahid, UC Riverside12 eBlock Basic Abstraction, as in our One-Page User Handout STEP 1 : eBlocks are electronic blocks that you connect like Lego’s to build useful sensor systems around the home, office, etc. 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! Most people don’t do well with abstractions Whereas engineers and programmers thrive on abstractions! Our system uses a “yes”/”no” abstraction

13 Frank Vahid, UC Riverside13 eBlock Basic Abstraction, as in our One-Page User Handout yellow means ERRORgreen means YESred means NO Button yes Button no 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. 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. Yes/No is the main “abstraction” users need to know

14 Frank Vahid, UC Riverside14 Basic Yes/No Blocks Sensors Motion Light Sound Button Contact Switch Compute Combine (2- input) Opposite Yes prolonger Once-yes, stays yes Toggle Pulse generator Output LED Beeper Electric relay Misc Wireless transmit / receive Splitter We’ve built >100 physical prototypes

15 Frank Vahid, UC Riverside15 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 Courtesy of Joe Kahn “Smart dust” button wireless tx

16 Frank Vahid, UC Riverside16 1. Boolean Digital Abstraction For packet- based underlying phenomena Rather than continuous voltage SourceSink continuous voltage, two levels time 0 1 channel (wire) (a) SourceSink packets containing “true” or “false” time channel (wires or wireless) (b) falsetruefalse time 0.8 0 (c)

17 Frank Vahid, UC Riverside17 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 time ft f ft error fff << << time ft f (a) (b) ftt (c) ff (d) (e) > >>>

18 Frank Vahid, UC Riverside18 Boolean Digital Abstraction – Basic Compute Blocks Definition of basic compute blocks Combinational AND/OR/NOT Truth table Sequential Prolonger Toggle Tripper Pulse generator (a) (b) (c) “1” prolonger node Toggle node Tripper node A Reset in out prolong time in out Reset out A (d) Pulse generator out

19 Frank Vahid, UC Riverside19 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} §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. Design metrics Parameters compete in their influence of metrics 3.6 3.3 3.0 2.5 2.2 12 00 24 00 48 00 96 00 14. 4K 1.9 1.6 2 34 5 10 30 60 30 600 Data Timeout (in seconds) Baud Rate Estim ated Lifeti me (in years ) 2.7 3.3 - 3.6 2.7 – 3.0 2.2 – 2.5 3.0 – 3.3 2.5 – 2.7 1.9 – 2.2 1.6 – 1.9 1 0.5

20 Frank Vahid, UC Riverside20 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 Frank Vahid, UC Riverside21 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 Button Light Sensor B A Buzzer 2-Input Logic AB ABOutput noyesno yesnoyes noyes no yes Logic Block configurable DIP switch QuestionTruth table with variables (11 students) Truth table with English (9 students) Motion at night36%22% Motion0%56% Motion at night or no motion in day 0%22% Motion or night0%11%

22 Frank Vahid, UC Riverside22 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 (c) yes no The output should be When the input is out AB AB AB AB AB Combine AND OR yes no When A is yes no B is then the output is yes (d) (a) A B The output should be yes when: Combine yes no A is yes, B is yes A is yes, B is no A is no, B is yes A is no, B is no (b) yes no the output should be AB When the input is out Combine A is yes, B is yes A is yes, B is no A is no, B is yes A is no, B is no Question (number in parentheses means answer came “close”) Colored truth table embedded in a sentence - 15 students Logic sentence -17 students Daytime doorbell (AB)47% (67%)47% (71%) Nighttime doorbell (AB’)33% (52%)41% (76%) Motion on property (A+B)33% (33%)65% (71%) (Motivated students – 8) 88% (88%)

23 Frank Vahid, UC Riverside23 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) SuccessNumber of Students Toggle85%33 Yes Prolonger86%29 Once Yes, Stays Yes73%33 Pulse Generator72%32

24 Frank Vahid, UC Riverside24 4. Tools for Non-Novices Simulator Optimizer Replace blocks by smaller set, even by programmable blocks User- programmable blocks (a) 12 3 4 57 8 9 10 11 12 6 1 1 0 (b) 12 3 4 57 8 9 10 11 12 6 1 1 (c) 12 3 4 57 8 9 10 11 12 6 1 0 (d) 12 3 4 57 8 9 10 11 12 6 0 (e) 12 3 4 57 8 9 10 11 12 6

25 Frank Vahid, UC Riverside25 Continuing Work -- Research Extension to integer blocks too E.g., temperature sensor, arithmetic compute Digital abstraction formalizations More usability testing Integer blocks, AND/OR/NOT blocks, logic+state 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 Pubs ISSS/CODES’03 IEEE SECON’04 Subs 3 to DATE 1 to CHI

26 Frank Vahid, UC Riverside26 Continuing Work – Evolving Towards the Digital Home Ultimately, blocks can enhance Intel’s 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 Light Sensor 2-Input Logic eBlock to PC Interface Motion Sensor eBlock to PC Interface Motion Sensor (Logic blocks)

27 Frank Vahid, UC Riverside27 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 Frank Vahid, UC Riverside28 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 Frank Vahid, UC Riverside29 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


Download ppt "EBlocks -- Electronic Building Blocks for Everyone Frank Vahid Professor Computer Science and Engineering University of California, Riverside (Also with."

Similar presentations


Ads by Google