1 epcglobal training suite. 2 epcglobal architecture framework

61
1 EPCglobal Training EPCglobal Training Suite Suite

Upload: erica-zoe-gallagher

Post on 17-Jan-2016

229 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

1

EPCglobal Training SuiteEPCglobal Training SuiteEPCglobal Training SuiteEPCglobal Training Suite

Page 2: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

2

EPCglobal Architecture Framework

EPCglobal Architecture Framework

Page 3: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

3

Application Level Events (ALE)Application Level Events (ALE)

Responsibility of ALE• Managing Reader operations

• Filtering and grouping the data collected by Readers

• Report data collection result in user specified format

• Reduce operation overhead of applications

Page 4: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

4

ALE  ServicesALE  Services

Reader  Configuration• Manage ALE readers.

Reading API• Set ECSpec and its operation.

Writing API• Set CCSpec and its operation.

Tag Configuration• Manage tag fields.

Access Control• Manage user permissions.

Page 5: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

5

Reader  ConfigurationReader  Configuration

Base Reader• The physical reader that

actually communicating with Tags

Composite Reader• The conceptual reader that

contain one or more Base Readers and Composite Readers

Logical Reader• The abstract names that a

client uses to refer to one or more Readers that have a single logical purpose

Page 6: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

6

Base Reader SettingBase Reader Setting

Page 7: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

7

Composite Reader SettingComposite Reader Setting

Page 8: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

8

Logical Reader SettingLogical Reader Setting

Page 9: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

9

ALE Fundamental ConceptALE Fundamental Concept

Spec• A set of operation rules and data formats specified by ALE

Client

Report• A response sent from ALE to client at the conclusion of an event

cycle or command cycle

Interface Operation Cycle Specification Report

Reading API Event Cycle ECSpec ECReport

Writing API Command Cycle CCSpec CCReport

Page 10: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

10

Reading APIReading API

Define• Creating a new ECSpec and Storing the ECSpec in ALE for

further use

Undefine• Deleting an existing ECSpec from ALE

Subscribe• Send a subscription request to ALE by choosing an ECSpec

has defined in ALE• Subscribe once, execution many times

Unsubscribe• Canceling a subscription that has subscribed in ALE

Page 11: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

11

Reading APIReading API

Poll• Send a request to ALE by choosing an ECSpec has defined in

ALE• Poll once, execution one time

Immediate• Send a request with a ECSpec to ALE• Immediate once, execution one time• The ECSpec used in immediate will vanish after execution

Page 12: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

12

ECSpecECSpec

ECSpec• Describes an event cycle

and one or more reports that are to be generated from it

• Contains …• One or more logical

Readers• A boundary spec• One or more report spec

Page 13: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

13

New ECSpecNew ECSpec

Page 14: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

14

ECSpec General SettingECSpec General Setting

Page 15: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

15

Boundary SpecBoundary Spec

Boundary Spec• Specifies how the beginning and end of event cycles are to be

determined• Parameters

• startTriggerList and stopTriggerList (describes at next page)

• repeatPeriod and duration

• stableSetInterval

• whenDataAvailable

Page 16: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

16

TriggerTrigger

Trigger• Syntax

• urn:epcglobal:ale:trigger:rtc:period.offset

• urn:epcglobal:ale:trigger:rtc:period.offset.timezone

• The period, in milliseconds, between consecutive triggers occurring within one day ( 1 period 86400000 )

• The offset, in milliseconds, between midnight and the first trigger delivered after midnight ( 0 offset period )

• The timezone in which to interpret “midnight” in the specification of the trigger timing (+hh:mm, -hh:mm, Z)

• Example• urn:epcglobal:ale:trigger:rtc:60000. 0.+08:00

• Start at AM 00:00, repeats every minutes in Taiwan

Page 17: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

17

Boundary Spec SettingBoundary Spec Setting

Page 18: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

18

Report SpecReport Spec

ReportSpec• Specifies one report to be included in the list of reports that

results from executing an event cycle• An ECSpec contains a list of one or more ECReportSpec

instances• Fields

• reportName, reportSet

• filterSpec, groupSpec, output

• reportIfEmpty, reportOnlyOnChange

• statProfileNames

Page 19: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

19

Report SetReport Set

Page 20: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

20

Report Spec SettingReport Spec Setting

Page 21: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

21

Report Output SpecReport Output Spec

ReportOutputSpec• Specifies how the final set of EPCs is to be reported• includeEPC

• The Tag represented in the epc-pure format

• includeTag• The Tag represented in the epc-tag format

• includeRawHex• The Tag represented in the epc-hex format

• includeRawDecimal• The Tag represented in the epc-decimal format

• includeCount• Giving the number of Tags in the group

• fieldList• An ordered list of fields to include in the result

Page 22: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

22

Report Output Spec SettingReport Output Spec Setting

Page 23: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

23

Filter SpecFilter Spec

FilterSpec• Specifies what Tags are to be included in the final report• includeExclude

• Specifies whether the Tags that match designate pattern is inclusive or exclusive

• fieldspec• Specifies which field of the Tag is considered in evaluating this filter

• patList• An unordered list that specifies the patterns against which the

value of the specified Tag field is to be compared

Page 24: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

24

Filter Spec SettingFilter Spec Setting

Page 25: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

25

Group SpecGroup Spec

GroupSpec• Defines how filtered EPCs are grouped together for reporting• fieldspec

• Specifies which field of the Tag is used for grouping

• patternList• An unordered list that specifies the grouping patterns used to

generate a group name from the value of the specified Tag field

Page 26: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

26

Group Spec SettingGroup Spec Setting

Page 27: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

27

GroupingGrouping

Grouping Pattern• Using for separating Tags into different groups• Only used in epc-pure and epc-tag format• The following field of * or X must also be a * or X

Syntax

Pattern URI Field Meaning

X Create a different group for each distinct value of this field

* All values of this field belong to the same group

Number Only EPCs having Number in this field will belong to this group

[Lo-Hi] Only EPCs whose value for this field falls within the specified range will be long to this group

Page 28: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

28

Filter & GroupFilter & GroupPattern URI Field Meaning

X Create a different group for each distinct value of this field.

* All values of this field belong to the same group.

Number Only EPCs having Number in this field will belong to this group.

[Lo-Hi] Only EPCs whose value for this field falls within the specified range will belong to this group.

Page 29: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

29

ExampleExample

urn:epc:tag:sgtin-96:3.0036000.123456.400urn:epc:tag:sgtin-96:3.0036000.123456.500urn:epc:tag:sgtin-96:3.0029000.111111.100urn:epc:tag:sscc-96:3.0012345.31415926

Group Name EPCs in Group

urn:epc:pat:sgtin-96:*.0036000.*.* urn:epc:tag:sgtin-96:3.0036000.123456.400urn:epc:tag:sgtin-96:3.0036000.123456.500

urn:epc:pat:sgtin-96:*.0029000.*.* urn:epc:tag:sgtin-96:3.0029000.111111.100

[default group] urn:epc:tag:sscc-96:3.0012345.31415926

urn:epc:pat:sgtin-96:*.X.*.*

Page 30: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

30

ExerciseExercise

urn:epc:pat:sgtin-96:1.1.1.1urn:epc:pat:sgtin-96:2.1.1.2urn:epc:pat:sgtin-96:3.1.1.3urn:epc:pat:sgtin-96:4.1.1.4urn:epc:pat:sgtin-96:5.1.1.5urn:epc:pat:sgtin-96:6.1.2.1

1. Filter pattern : urn:epc:pat:sgtin-96:*.1.1.*2. Filter pattern : urn:epc:pat:sgtin-96:*.1.*.*3. Group pattern: urn:epc:pat:sgtin-96:*.X.1.* 4. Group pattern: urn:epc:pat:sgtin-96:[2-3].X.X.*

Page 31: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

31

ECReportECReport

ECReport• The output from an event cycle

Page 32: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

32

ECReport Tree SampleECReport Tree Sample

Page 33: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

33

ECReport Text SampleECReport Text Sample

Page 34: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

34

Writing APIWriting API

Define• Creating a new CCSpec and Storing the CCSpec in ALE for

further use

Undefine• Deleting an existing CCSpec from ALE

Subscribe• Send a subscription request to ALE by choosing an CCSpec

has defined in ALE• Subscribe once, execution many times

Unsubscribe• Canceling a subscription that has subscribed in ALE

Page 35: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

35

Writing APIWriting API

Poll• Send a request to ALE by choosing an CCSpec has defined in

ALE• Poll once, execution one time

Immediate• Send a request with a CCSpec to ALE• Immediate once, execution one time• The CCSpec used in immediate will vanish after execution

Page 36: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

36

CCSpecCCSpec

CCSpec• A complex type that

describes a command cycle

• Contains …• One or more logical

Readers• A boundary spec• One or more command

spec

Page 37: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

37

CCSpec General SettingCCSpec General Setting

Page 38: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

38

Boundary SpecBoundary Spec

BoundarySpec• Specifies how the beginning and end of command cycles are to

be determined

• Parameters• startTriggerList and stopTriggerList (What is Trigger?)

• repeatPeriod and duration

• noNewTagsInterval

• tagsProcessedCount

• afterError

Page 39: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

39

Boundary Spec SettingBoundary Spec Setting

Page 40: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

40

Command SpecCommand Spec

CommandSpec (CmdSpec)• Attempts carry out the commands specified by the operation

specifications on each of the tags selected by the filter specification

• Fields• Name

• filterSpec

• opSpecs

• reportIfEmpty

• statProfileNames

FilterSpec• Specifies what Tags are to be processed by a CmdSpec

Page 41: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

41

Command Spec SettingCommand Spec Setting

Page 42: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

42

Filter Spec SettingFilter Spec Setting

Page 43: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

43

Operation SpecOperation Spec

OperationSpec (OpSpec)• Specifies an operation to perform on a Tag,

such as reading a field, writing a field, or other Tag operation

• Fields• opType

• fieldspec

• dataSpec

• opName

• The relation of opType, fieldspec, and dataSpec• (See next page)

DataSpec

LITERAL

PARAMETER

CACHE

ASSOCIATION

RANDOM

LockOperation

LOCK

UNLOCK

PERMALOCK

PERMAUNLOCK

Page 44: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

44

Operation TypeOperation Type

OpType, Field Spec, and DataSpec

OpType Description FiledSpec DataSpecREAD Read from memory The field to read [Must be omitted]

CHECK Check memory bank contents for consistency

The memory bank to be checked

A LITERAL dataSpec whose value specifies the encoding of the memory bank

INITIALIZE Initialize the state of a memory so that variable fields may be used

The memory bank to initialize

A LITERAL dataSpec whose value specifies additional information that guides the initialization

ADD Add the specified field to the Tag’s memory, initialized to the specified value. For a fixed field, this operation is equivalent to WRITE

The field to add The value to write into the specified field

Page 45: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

45

Operation TypeOperation Type

OpType, Field Spec, and DataSpec (cont.)

OpType Description FiledSpec DataSpecWRITE Write a new value to an existing

fieldThe field to write The value to write into the

specified field

DELETE Delete the specified field from memory; For a fixed field, this operation is equivalent to WRITE with a value of zero

The field to delete [Must be omitted]

PASSWORD

Provide a password to enable subsequent commands

[Must be omitted] Access Password(Datatype: uint, Format: hex)

KILL Kill a tag; for Gen2 Tags this means to use the Gen2 “kill” command

[Must be omitted] Kill Password(Datatype: uint, Format: hex)

LOCK Sets access permissions for a memory field

The field whose permissions are to be set

A LITERAL dataSpec whose value specifies the lock action to be performed

Page 46: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

46

Operation Spec SettingOperation Spec Setting

Page 47: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

47

CCReportCCReport

CCReport• The output from a command cycle

Page 48: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

48

CCReport SampleCCReport Sample

Page 49: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

49

Tag Memory APITag Memory API

Define• Creating a new TMSpec and Storing the TMSpec in ALE for

further use

Undefine• Deleting an existing TMSpec from ALE

Page 50: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

50

Tag MemoryTag Memory

Concept• The Fieldname, Datatype ,and Format defined by ALE is the way

to access tag memory correctly• Fieldname is the name of fields in tag memory• Datatype is the encoding of tag memory fields• Format is the presentation of tag data

Page 51: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

51

Class 1 Gen 2 Memory Map

Class 1 Gen 2 Memory Map

Page 52: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

52

Built-in FieldnamesBuilt-in Fieldnames

Built-in Fieldnames• Application Family Identifier (AFI) is defined in ISO 15962

Fieldname Bank DataType Format Content

killPwd 0 uint hex Kill Password

accessPwd 0 uint hex Access Password

epc 1 epc epc-tag EPC

nsi 1 uint hex Numbering System Identifier

afi 1 uint hex Application Family Identifier

epcBank 1 bits hex EPC bank

tidBank 2 bits hex Tag ID

userBank 3 bits hex User defined data

Page 53: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

53

Generic FieldnamesGeneric Fieldnames

Generic Fieldnames• Absolute Address Fieldnames

• Specifies the absolute address of tag memory

• Syntax: @bank.length[.offset]

• EPC absolute address: @1.96.32

• Variable Fieldnames• Specifies the variable field presentation of tag memory

• Presents in URN with ISO 15962 Object Identifier (oid) encoding

• Syntax: @bank.oid

Page 54: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

54

Data TypeData Type

Datatype• epc

• Defines in the EPCglobal Tag Data Standards

• uint (unsigned integer) • The set of non-negative integers

• bits• The set of all non-empty and finite-length sequences of bits

• ISO 15962 String• A string of zero or more characters drawn from the Unicode

character set, encoded according to ISO 15962

Page 55: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

55

FormatFormat

Format• epc datatype formats

• epc-pure is pure epc identity for general reading purpose• urn:epc:id:sgtin:0614141.112345.400

• epc-tag is epc identity with tag encoding information• urn:epc:tag:sgtin-96:3.0614141.112345.400

• epc-hex presents epc identity in hexadecimal format• epc-decimal presents epc identity in decimal format

• uint datatype formats• hex, decimal

• bits datatype formats• hex

• ISO 15962 String datatype formats• string

Page 56: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

56

TM Fixed Field SpecTM Fixed Field Spec

Page 57: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

57

TM Variable Field SpecTM Variable Field Spec

Page 58: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

58

ALE  Operational ConceptALE  Operational Concept

ALE ClientRFID ALE

Internet

DataBase

Physical Reader(Internet)EC/CC

Report

EC/CCSpec

Tag Data

Page 59: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

59

Cycle DefinitionCycle Definition

Reader Cycle (RC)• The smallest unit of interaction with a Reader• May correspond to one or several RF protocol iterations

depending on the design of the reader device and its wire protocol

Event Cycle (EC) / Command Cycle (CC)• An interval of time over which an ALE implementation carries

out interactions with one or more Readers on behalf of an ALE client

• Event Cycle is the term used in the reading API• Command Cycle is the term used in the writing API

Page 60: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

60

Event Cycle (EC)Event Cycle (EC)

Page 61: 1 EPCglobal Training Suite. 2 EPCglobal Architecture Framework

61

Command Cycle (CC)Command Cycle (CC)