embedded systems engineering armin wasicek filedefinition a smart transducer is the integration of...

33
Smart Transducer Networks Embedded Systems Engineering Armin Wasicek

Upload: others

Post on 11-Sep-2019

2 views

Category:

Documents


0 download

TRANSCRIPT

Smart Transducer Networks

Embedded Systems EngineeringArmin Wasicek

Overview

Motivation & Design Principles TTP/A Fieldbus Protocol Implementation Requirements Smart Transducer Interface Standard Conclusion

TTP/A Smart Transducer Networks 2

Definition

A smart transducer is the integration of an analog or digital sensor or actuator element, a processing unit, and a communication interface.

TTP/A Smart Transducer Networks 3

MCU

NetworkInterfacePhysical

TransducerDigitalCommunicationSystem

Smart Transducer

Motivation

Sensor/Actuators become more complex (e.g. providing various modes of interfacing, operation...)

Requirement for fault-tolerant and distributed systems -> networked sensors and actuators

Embedded microcontrollers can handle complexity at a fair price

Cheap mass-production of flexible general purpose smart transducers

TTP/A Smart Transducer Networks 4

Design Principles for ST (1)Two-Level Design Approach

TTP/A Smart Transducer Networks 5

• Node level:

– Transducer developer handles sensor- and actuator-specific details

– Functionality of transducer is exported via well-specified interface

• System level:

– System integrator can handle node as black boxes and build on exported services

• Composability principle guarantees that services, which are established at node level are maintained at system level

Three Interfaces of a Node

TTP/A Smart Transducer Networks 6

SPLIF … Service Providing Linking Interface

SRLIF … Service Requesting Linking Interface

Design Principles for ST (2)Real-Time Service

Knowledge about the exact instant of an event Predictable timing with low jitter (control loops) Guaranteed timing behavior under load and fault

hypotheses

TTP/A Smart Transducer Networks 7

Design Principles for ST (3)Diagnosis & Management Support

Diagnosis access to ST internals Not necessarily real-time capable Monitoring support without a probe effect on real-time

service

TTP/A Smart Transducer Networks 8

Design Principles for ST (4)Configuration & Planning Support

Machine-readable description of ST properties Automated configuration saves time Required qualification of personal can be lower Fewer configuration faults, since monotone and error-

prone tasks are done by computer

TTP/A Smart Transducer Networks 9

Overview

Motivation & Design Principles TTP/A Fieldbus Protocol Implementation Requirements Smart Transducer Interface Standard Conclusion

TTP/A Smart Transducer Networks 10

TTP/A Protocol (1)

One active master per cluster Up to 250 slaves Communication organized in rounds TDMA bus allocation

TTP/A Smart Transducer Networks 11

For details see:

TTP/A Smart Transducer Programming –A Beginner’s Guide

Available at: (http://www.vmars.tuwien.ac.at/)

Publication & Research Reports

TTP/A Smart Transducers 12Time Division Multiple Access

TTP/A Protocol (2)

Interface File System (IFS) (1) Hierarchical distributed data structure Source and sink of each communication Unique addressing scheme:

Cluster (0..255)Node (0..255)

File (0..63)Record (0..255)

Byte (0..3) IFS maps all relevant properties (sensor and actuator

data, calibration parameters, configuration data, serial number, …)

TTP/A Smart Transducer Networks 13

Interface File System (IFS) (2)

Header Record

First record of each file contains status information (access permissions, file length, etc)

Special Files

Documentation file: physical name of node (similar to MAC address)

Configuration file: logical name of the node, current fireworks-byte, epoch-counter etc.

Round Descriptor List (RODL): holds information about actions performed by a node for a particular round

Round Sequence file (ROSE): specifies sequence of rounds, only implemented in the TTP/A master

TTP/A Smart Transducer Networks 14

Round Types Master-slave round: Master accesses a record by broadcasting its IFS address and a

tag indicating operation (read, write, …) Master-slave address (MSA) and master-slave data (MSD) part

Multipartner round: TDMA communication is predefined by RODL Up to 6 different modes (predefined schedules)

TTP/A Smart Transducer Networks 15

Round Description List (RODL)

For each slot in each round:

Operation (receive, send, receive and synchronize clock, execute)

Data source/sink (IFS address + message length)

Each node has its own RODL (part of a ‘big picture’)

RODL must be consistently defined over all nodes

RODL itself is accessible via IFS

TTP/A Smart Transducer Networks 16

Common Communication and Action Schedule

TTP/A Smart Transducer Networks 17

1 2 3 4

A Send Receive Receive ExecuteB Receive Send Receive SendC Receive Receive Send ReceiveD Receive Receive Execute Receive

slotnode

t

Realization of Three Interfaces (1) Real-Time Service (RS): Multipartner rounds

Configuration and Planning (CP) Interface Master-Slave rounds accessing RODL

Diagnostic and Maintenance (DM) Interface Master-Slave Rounds during operation

TTP/A Smart Transducer Networks 18

Realization of Three Interface (2)

RS Interface: IFS realizes Service Requesting Linking Interface (SRLIF) and Service Providing Linking Interface (SPLIF)

CP Interface: access via RODL

DM Interface: local data of individual TTP/A tasks (stored in service file)

SRLI

F SPLIF

CP DM

ServiceRT Input RT Output

Local Interfaces

TTP/A Smart Transducer Networks  19

TTP/A Example Three TTP/A nodes

Node 0 is the TTP/A master (synchronization of slaves via fireworks byte)

Node 3 executes in slot 0x03 a counter and broadcasts the actual value in slot 0x01

Node 2 receives the counter value in slot 0x01 and displays the new value in slot 0x03 (also by executing a TTP/A task)

Inter-round gap (end of round) in slot 0x07

In the following the code of node 3 is illustrated

The example is available on the Lab homepageTTP/A Smart Transducer Networks 20

TTP/A Example: IFS Layout

TTP/A Smart Transducer Networks 21

TTP/A specific include files

e.g. IFS access macros

name of the IFS file for the application

(suggested range 0x30 to 0x3d)

memory section for IFS storage (ifs_int_eep

… EEPROM)

(ifs_int_0 … zero initialized SRAM)

layout of the application file

IFS address

signed 8-bit int value for incr. value

unsigned 8-bit value for error code

declaration of TTP/A task

TTP/A Example: RODL Layout

TTP/A Smart Transducer Networks 22

TTP/A specific include files

e.g. IFS access macros

layout of the RODL (for node 3 only)

RODL filename (0x00 to 0x07); length of RODL; memory

section for storage (EEPROM)

operation: send

slot: 0x01

IFS addr: I/O file record 0x01, byte 0

length: 1 (len – 1 is stored)

operation: execute

slot: 0x03

IFS addr: specifies the task to execute

end of round: slot 0x07

TTP/A Example: Node Source-Code

TTP/A Smart Transducer Networks 23

application file with initialization

pointer to I/O file = I/O file

increment value = 1; error flag = 0

I/O file

parameters for file definition:

file number, variable name, TTPA/task, file length, memory section, and access mode

code for TTP/A task

code for initialization function

adding an initialization function:

task handle, function pointer to task, order, execution states

adding a background task is similar

Overview

Motivation & Design Principles TTP/A Fieldbus Protocol TTP/A Implementation / Case Study Smart Transducer Interface Standard Conclusion

TTP/A Smart Transducer Networks 24

Architectural Requirements

Standard UART (may be also a software UART)

About 2KB ROM for protocol code

About 32 byte RAM for protocol-specific variables (e.g., RODL memory)

Supports any serial bus

TTP/A Smart Transducer Networks 25

Case Study Hardware

TTP/A Smart Transducer Networks 26

Atmel AVR TTP/A nodes

PCMCIA Master/Gateway

Case Study Software

RODL design tool Written in Java => Platform-independent Connects to cluster via CORBA interface

Monitoring tool Displays contents of node’s IFS Refreshes data periodically Connects directly via RS232 Important for lab course

TTP/A Smart Transducer Networks 27

Overview

Motivation & Design Principles TTP/A Fieldbus Protocol TTP/A Implementation / Case Study Smart Transducer Interface Standard Conclusion

TTP/A Smart Transducer Networks 28

OMG Smart Transducer Standard

Specifies a CORBA interface for accessing the IFS contents of a TTP/A cluster remotely

Specifies IFS addressing scheme

Specifies real-time communication

CORBA can be used for configuration and monitoring

Access to real-time service interface possible, when a RT-CORBA is used

TTP/A Smart Transducer Networks 29

Example Architecture

TTP/A Smart Transducer Networks  30

Overview

Design Principles TTP/A Fieldbus Protocol Implementation Requirements Smart Transducer Interface Standard Conclusion

TTP/A Smart Transducer Networks 31

Conclusion Two-level design for ST applications

Node level: transducer details System level: integration to overall system

TTP/A: Master/Slave protocol supporting periodic real-time

traffic and sporadic diagnostic and management communication

Low-cost, highly-efficient (no addressing overhead)

Standardized CORBA interface supports remote tool access

TTP/A Smart Transducer Networks 32

Vielen Dank für Ihre Aufmerksamkeit!

Fragen?

TTP/A Smart Transducer Networks 33