Professional Documents
Culture Documents
Devices Tutorial
Douglas P. Bogia
Working Group Chair
on behalf of the
ISO/IEEE 11073 Personal Health
Device Work Group
May 18, 2010
Copyright 2010 by IEEE and Intel
Agenda
Background
History
Personal Health Device Working Group Overview
Environment
Guiding Principles
Demonstration
Summary
Questions (feel free to ask while we go too)
Completed Standards
Projects Underway
Phase 2 standards
Phase 3 standards
Membership
277 members
153 organizations
Weekly conference calls (for now)
Face to face meetings planned every 2 4
months
International
involvement in
the Work Group
52% North America
29 % Europe
19% Far East
Background: Terminology
Agent
Other terms:
Service
Component
PAN Device
Device
Source
Sensor
Transport
Other terms:
PAN Interface
USB
Bluetooth
Manager
Other terms:
Client
Component
Application
Host Device
Host
Sink
Compute
Engine
Three domains
Disease Management
10
11
12
13
Exchange protocol:
14
OSI
Communication Protocols
Serial
IrDA
Bluetooth
15
USB
ZigBee
Layers 1-4
Layers 5-7
Device Specializations
Agenda
Background
History
Personal Health Device Working Group Overview
Environment
Guiding Principles
Demonstration
Summary
Questions (feel free to ask while we go too)
16
Domain
Nomenclature
Information Model
Service Model
Communication Model
17
ASN.1
ASN.1 Overview
Domain
Nomenclature
Information Model
Service Model
Communication Model
18
ASN.1
Nomenclature
Description
Communication Model
Service Model
Domain
Nomenclature
Information Model
19
ASN.1
Domain Information
Model (DIM)
Service Model
Communication Model
Domain
Nomenclature
Information Model
20
21
DIM Classes
Class PHD-DIM
: MDS
: PM-Store
1
0..*
: Metric
0..*
Scanner Package
+Scanner
+CfgScanner
+EpiCfgScanner
+PeriCfgScanner
0..*
0..*
0..*
: Numeric
: RealTime-SA
: Enumeration
0..*
: PM-Segment
22
Handle
M Object identifier
System-Type-Spec-List
System-Type
System-Model
System-Id
Dev-Configuration-ID
Attribute-Value-Map
ProductionSpecification
23
Date-and-Time
Relative-Time
HiRes-Relative-Time
Date-and-TimeAdjustment
Power-Status
Battery-Level
Remaining-BatteryTime
Reg-Cert-Data-List
Confirm-Timeout
24
Metric Class (1 of 2)
Handle
M Object identifier
Type
Supplemental-Types
Metric-Spec-Small
Metric-Structure-Small
Measurement-Status
Metric-Id
Metric-Id-List
Metric-Id-Partition
25
Metric Class (2 of 2)
Unit-Code
Attribute-Value-Map
Source-HandleReference
Label-String
Unit-LabelString
Absolute-Time-Stamp
Relative-Time-Stamp
HiRes-Time-Stamp
Measure-Active-Period
26
Numeric Class
Simple-Nu-Observed-Value
Compound-Simple-Nu-ObservedValue
C Array of Simple-Nu-Observed-Values
Basic-Nu-Observed-Value
Compound-Basic-Nu-ObservedValue
Array of Basic-Nu-Observed-Values
Nu-Observed-Value
Compound-Nu-Observed-Value
C Array of Nu-Observed-Values
Accuracy
27
Represents a waveform
Tends to be used in streaming cases
Derives from Metric
Class code = MDC_MOC_VMO_METRIC_SA_RT
Attributes include:
Sample-Period
Simple-Sa-Observed-Value
Sa-Specification
Scale-and-Range-Specification
28
Enumeration Class
Enum-Observed-Value-SimpleOID
Enum-Observed-Value-SimpleBit-Str
Enum-Observed-Value-Basic-Str
Enum-Observed-Value-Partition
29
PM-Store Class (1 of 2)
Fix-SegmentData:
PM-Store
Entry
1:
Entry
2:
Entry
3:
SegmentEntryHeader(op
t)
SegmentEntryHeader(op
t)
SegmentEntryHeader(op
Entry
k:
SegmentEntryHeader(op
t)
Element 1 Data
Element 2 Data
Element n Data
Element 1 Data
Element 2 Data
Element n Data
Element 1 Data
Element 2 Data
Element n Data
Element 1 Data
Element 2 Data
Element n Data
t)
PM-Store
Attributes
PM-Segment 2
PM-Segment Attributes
Pm-Segment-Entry-Map
Fix-SegmentData:
Entry
1:
Entry
2:
Entry
3:
SegmentEntryHeader(op
t)
SegmentEntryHeader(op
t)
SegmentEntryHeader(op
Entry
k:
SegmentEntryHeader(op
t)
Element 1 Data
Element 2 Data
Element n Data
Element 1 Data
Element 2 Data
Element n Data
Element 1 Data
Element 2 Data
Element n Data
Element 1 Data
Element 2 Data
Element n Data
t)
30
PM-Store Class (2 of 2)
Attributes include:
Handle
M Object identifier
PM-Store-Capab
Store-SampleAlgorithm
Store-Capacity-Count
Store-Usage-Count
Operational-State
PM-Store-Label
Sample-Period
Number-of-Segments
Clear-Timeout
31
PM-Segment Class (1 of 2)
Instance-number
PM-Segment-EntryMap
PM-Seg-Person-Id
Operational-State
Sample-period
32
PM-Segment Class (2 of 2)
Segment-Label
Segment-Start-AbsTime
Segment-End-AbsTime
Date-and-TimeAdjustment
Segment-Usage-Count
Segment-Statistics
O Array of min/mean/max
Fixed-Segment-Data
M Segment data
Confirm-Timeout
Transfer-Timeout
33
Scanner Class
: Scanner
: CfgScanner
: EpiCfgScanner
: PeriCfgScanner
Handle
M Object identifier
Operational-State
Scan-Handle-List
Scan-Handle-Attr-ValMap
34
CfgScanner Class
Confirm-Mode
Confirm-Timeout
Transmit-Window
35
EpiCfgScanner Class
Min-Reporting-Interval
36
PeriCfgScanner Class
Reporting-Interval
37
38
Configurations
39
Standard configuration
Extended configuration
40
Example
Weight : Numeric
Metric
Handle = 1
Type = MDC_MASS_BODY_ACTUAL
Metric-Spec-Small = 0xD040
Attribute-Value-Map
...
Simple-Nu-Observed-Value = 175.0
Unit-Code = MDC_DIM_LB
...
+Handle
+Type
-Metric-Spec-Small
-Attribute-Value-Map
-...
Numeric
+Simple-Nu-Observed-Value
+Unit-Code
-...
41
ASN.1
Service Model
Service Model
Communication Model
Domain
Nomenclature
Information Model
Association Service
42
43
Formats
Support for
Transmission types
Confirmed
Unconfirmed
44
Value_2_1
Variable
format is most
flexible
Fixed
optimizes per
object
Grouped
optimizes
across objects
Value_n_1
Value_n_1
Value_n_2
Value_n_2
45
Obj-handle x
Attribute ID x_y
Length x_y
Variable Format
Fixed Format
Grouped Format
Obj-handle 1
Obj-handle 1
Scanner Handle
Attribute ID 1_1
Length 1_1
Value_1_1
Value_1_1
Value_1_1
Value_1_2
Value_1_2
Attribute ID 1_2
Length 1_2
Value_1_2
Attribute ID 1_3
Length 1_3
Value_1_3
Obj-handle 2
Value_1_3
Value_1_3
Obj-handle 2
Attribute ID 2_1
Length 2_1
Value_2_1
Obj-handle n
Value_2_1
Obj-handle n
Attribute ID n_1
Length n_1
Value_n_1
Attribute ID n_2
Length n_2
Copyright 2010
by IEEE and Intel
Value_n_2
Get
Types
Objects
Set
46
MDS Object:
MDS-Data-Request (optional):
Set-Time (optional)
PM-Store:
47
Association Service
Manager responds
Peers Response
Abort (abrt)
48
ASN.1
Domain
Nomenclature
Information Model
Communication
Model
Communication model describes:
Service Model
Communication Model
Communication characteristics
Connection state machine
Legal interactions in each state
Conversion Service
49
Common Communication
Characteristics
Reliable
Best effort / flushable
50
Reliable Communication
Characteristics
APDUs shall be delivered in order, free
of detectable errors, not duplicated, and
not missing
APDUs may be delayed due to retries
Comm layer shall indicate connection
started and should report disconnects
Comm layer shall indicate failure to
send APDU
Flow control shall be supported for full
APDU
51
52
R
x
R
O
R
(
Connection
State Machine:
Disconnected
Agent starts off
disconnected
When
transport
indicates a
connection, it
moves to
Connected
53
R
x
R
O
R
(
Unassociated
Once
connected, the
Agent
determines
when to create
an association
and moves to
Associating
State
54
Associating
T
q
O
R
T
R
O
R
(
55
Configuring
T
R
x
R
O
R
(
q
O
If Manager needs
config, the Agent
sends it
Manager
determines
whether it can
use it. Sends
accepted-config
or unsupportedconfig
Agent repeats
sending configs
until one is
accepted or no
more remain
56
Operating
T
q
O
R
T
R
O
R
(
Agent initiated
Mgr initiated data
transfer
Variable, fixed,
grouped
PM segments
57
Disassociating
T
R
x
R
O
R
(
q
O
58
Example - Weight
Weight : Numeric
Metric
Handle = 1
Type = MDC_MASS_BODY_ACTUAL
Metric-Spec-Small = 0xD040
Attribute-Value-Map
...
Simple-Nu-Observed-Value = 175.0
Unit-Code = MDC_DIM_LB
...
+Handle
+Type
-Metric-Spec-Small
-Attribute-Value-Map
-...
Numeric
Weighing scale associates with Manager
+Simple-Nu-Observed-Value
+Unit-Code
First time, Manager needs config (an
-...
optimization will be shown later)
Agent sends object class, Handle, Type, Metric-SpecSmall, Attribute-Value-Map, and Unit-Code in
Configuration Event Report
Whenever the weight (Simple-Nu-Observed-Value)
changes, just the new weight value is communicated
in a Data Update Event Report
During next association Agent does not have to send
configuration if Manager remembers it
59
Example Pulse Ox
Agent associates
First time, Manager needs config
Agent sends:
60
Event-type =
MDC_NOTI_SCAN_REPORT_FIXED so
event-info is ScanReportInfoFixed
ScanReportInfoFixed ::= SEQUENCE {
data-req-id
DataReqId,
scan-report-no
INT-U16,
obs-scan-fixed
SEQUENCE OF
ObservationScanFixed
}
ObservationScanFixed ::= SEQUENCE {
obj-handle
HANDLE,
obs-val-data
OCTET STRING
}
61
Conversion Service
62
Agenda
Background
History
Personal Health Device Working Group Overview
Environment
Guiding Principles
63
Specialization Overview
64
Pulse : Numeric
1..*
1..*
1
MDS Object : MDS
1
1
0..1
1
1
0..*
1
0..*
1
1 1
0..*
0..*
Collection : PM-Store
0..1
Plethysmogram : RT-SA
0..*
0..*
Streaming : PeriCfgScanner
0..*
1
0..*
Session : PM-Segment
65
Measures 1 to 3-lead
electrocardiogram
In drafting stage, subject to
change.
Some data items being
proposed include: ECG
resolution, sampling
interval, sample size,
baseline, time, signal
length, heart rate
66
0..1
Pulse : Numeric
1
Diastolic,Systolic,MAP : Compound Numeric
67
1
1..*
Body Temperature : Numeric
68
69
1
Body Weight : Numeric
1
1
0..1
0..1
Body Mass Index : Numeric
70
Glucose : Numeric
Observations : PM-Store
1
0..1
1
ContextExercise : Numeric
0..1
0..1
ContextDiet : Numeric
0..1
ContextMedication : Numeric
0..1
0..1
ContextHbA1C : Numeric
0..1
0..1
0..1
0..1
ContextHealth : Enumeration
EventDeviceErr : Enumeration
ContextMeal : Enumeration
ContextSampleLocation
: Enumeration
ContextTester : Enumeration
71
MDS
I NR
Numeric
P rothrom bin time
Qu ic k va lu e
I NR
Batch c od e
I SI
Numeric
Numeric
Numeric
Numeric
0 ..1
0 ..1
Schedule
Cu rren t medication sc hed ule
0 ..1
Numeric
C urren t medicatio n level
0. .1
Schedule
New medicatio n sc hed ule
1.. 1
1.. 1
0. .1
Numeric
New me dic atio n level
0. .1
Numeric
1 ..1
0 ..1
Ad ditiona l in formatio n
Enumeration
D evic e alarm
0.. 1
Review period
Enumeration
M easu rement s tat us
0 ..1
1.. 1
Numeric
T arget therapeu tic rang e
1.. 1
Measures blood
coagulation ability
In the balloting
stage, subject to
change
INR =
International
normalized ratio
Project approved
Early model
shown
72
1
1
73
Measures
basal and
bolus insulin
delivery
In the balloting
stage, subject
to change
MDSMDS
Weighing
Scale analyzer
Body
composition
1
Body fat
0..1
Numeric
Fat Free Mass
0..1
Numeric
Soft Lean Mass
Numeric
1
Numeric
Body height
1
0..1
Numeric
Body Water
0..1
Numeric
Body mass index
Numeric
Body weight
1
74
75
Heart Rate
Speed
*
Altitude Gain
Slopes
Altitude Loss
Activity Time
Intensity
Distance
Sub-Session
Resistance
Session
Incline
Stride Length
Power
Height
Weight
Breathing Rate
Energy Expended
Program Identifier
Calories Ingested
Altitude
Age
Cadence
76
[b1]
77
Measures physical
activity (e.g. 3D
accelerometer) and
reports in near realtime
In drafting stage,
subject to change
RMS = root mean
squared
ZCM = zero crossing
mode
PIM = proportional
integral mode
TAT = time above
threshold
1
1
1
0..*
Resistance
0..*
Exercise Modifier
0..*
0..*
Set
Repetition Count
0..*
Repetition
78
1
Enumeration
Fall Sensor
0..*
0..*
Enumeration
Smoke Sensor
Enumeration
Motion Sensor
0..*
0..*
Enumeration
Property Exit Sensor
Enumeration
Enuresis Sensor
0..*
0..*
Enumeration
Temperature Sensor
Enumeration
Contact Closure Sensor
0..*
0..*
Enumeration
Usage Sensor
Enumeration
Switch Use Sensor
0..*
0..*
Enumeration
PERS Sensor
Enumeration
Medication Dosage
0..*
0..*
0..*
0..*
Enumeration
Water Sensor
Enumeration
CO Sensor
Enumeration
Gas Sensor
79
Measures
dispensing of
medication(s)
Standard
completed
Current model
shown
80
Agenda
Background
History
Personal Health Device Working Group Overview
Environment
Guiding Principles
81
82
www.fte.com
www.fte.com
www.fte.com
Summary
Device specializations:
86
Join Information:
87
Backup
PresentationMode Done
Time
Passage
Adjustment
to
[0] -60 0
current
min
clock
X XX
15
min
Segment 1
[0] 60
X
X 75
[0] 15
min
[0]
Segment 2
Segment 3
Segment 4
min min
89