Title: Smart Storage Pantry
1Smart Storage Pantry
Replenishment order generator
Sensor location decoder
Comm. Unit
Content and supplier DB
Compartments with sensors
For non-perishable goods (each removed prior to
being used)
27
Paper Tolls 6 rolls
For paper goods and other light weight objects
6
5
4
For can soups and glass jars
3
Can Beers
2
1
Spring-loaded Plate
Wisk
TaiwanBeer
0
37
Paper Tolls 6 rolls
6
5
4
For can soups and glass jars
3
Can Beers
2
1
Wisk
TaiwanBeer
0
4Design Choices
- Compartments are identified by 2-tuples (1, A),
(1, B), (2, A), etc. - An audio interface is used to support
communication with the user - A pantry without a scanner also has a small
keyboard and display
5Data Structures
A
B
H
Object_Id
1
2
6
Is_Empty TRUE Object_Id NULL
Object_Description Supplier_Id Supplier_Address
Relative_Deadline
Compartment Description
6User and Pantry interaction (for Pantry with
Scanner)
User Scan a new object Pantry You just
scan a new object. Tell me what it is. User
Six pack of Taiwan beer. Pantry You have just
said six pack of Taiwan beer. Please add more
detail if you like. Otherwise, please say no, or
stop. User Stop. Pantry Please put the six
pack of Taiwan beer in a compartment now. User
Put the six pack in compartment (6, D) Pantry
You have just put the six pack of Taiwan beer in
(6, D), the middle compartment in the bottom
row. User Scan a six pack of Taiwan beer
each of the subsequent times Pantry You have a
six pack of Taiwan Beer. (6, D) is empty. It fits
there. User Put the beer in (6, B) Pantry
You prefer (6, B) for the Taiwan Beer. I got it.
7- Pseudo code of the pantry Do nothing until an
event occurs - Scanner_On Wait for Id_Read until time out
expires - Id_Read Do object addition action
- Non-empty_Compartment_Empty Do removal action
- Empty_Compartment_Non-empty Do insert object
- Timer_expiration Do according to wait-for-event
type. - What else?
- Audio Interface Design
- No voice recognition capability
- Event driven
- Interleave recorded pantry speech with user
speech
8Partial State Diagram
Idle
Scanner -on
Awaits placement
Empty_ NonEmpty
Timeout
Scan Object
Place Object
Scan Object
Place Object
Id_ missing
Error-1
Timeout
Error-1 Object with unknown id in pantry
Remove Object
Replenishment Due
Idle
Awaits Cancellation
(some transitions are omitted)