Comparing Models of Computation for Real-time, Distributed Control Systems Shawn Schaffert Bruno Sinopoli.

Slides:



Advertisements
Similar presentations
Simulation of Feedback Scheduling Dan Henriksson, Anton Cervin and Karl-Erik Årzén Department of Automatic Control.
Advertisements

© 2004 Wayne Wolf Topics Task-level partitioning. Hardware/software partitioning.  Bus-based systems.
The cardiac pacemaker – SystemJ versus Safety Critical Java Heejong Park, Avinash Malik, Muhammad Nadeem, and Zoran Salcic. University of Auckland, NZ.
Simulation Verification of Different Constraints in System Level Design in SystemC Piyush Ranjan Satapathy CS220 Class Project Presentation.
Z-MAC: a Hybrid MAC for Wireless Sensor Networks Injong Rhee, Ajit Warrier, Mahesh Aia and Jeongki Min Dept. of Computer Science, North Carolina State.
Sensor Network Platforms and Tools
Overview: Chapter 7  Sensor node platforms must contend with many issues  Energy consumption  Sensing environment  Networking  Real-time constraints.
1 An Approach to Real-Time Support in Ad Hoc Wireless Networks Mark Gleeson Distributed Systems Group Dept.
Weakly endochronous systems Dumitru Potop-Butucaru IRISA, France Joint work with A. Benveniste and B. Caillaud.
MotoHawk Training Model-Based Design of Embedded Systems.
An Automata-based Approach to Testing Properties in Event Traces H. Hallal, S. Boroday, A. Ulrich, A. Petrenko Sophia Antipolis, France, May 2003.
Chapter 13 Embedded Systems
Overview of PTIDES Project
1 Complexity of Network Synchronization Raeda Naamnieh.
Integrated Design and Analysis Tools for Software-Based Control Systems Shankar Sastry (PI) Tom Henzinger Edward Lee University of California, Berkeley.
Methodologies for Wireless Sensor Networks Design Alvise Bonivento Alessandro Pinto Prof. Sangiovanni-Vincentelli U.C. Berkeley.
Problem Statement Given a control system where components, i.e. plant, sensors, controllers, actuators, are connected via a communication network, design.
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.
Using different Models of Computation for distributed control: the Robot Diffusion Problem Sarah Bergbreiter Mentors: Bruno Sinopoli, Alessandro Pinto.
Esterel Overview Roberto Passerone ee249 discussion section.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Wireless Sensor Networks 15th Lecture Christian Schindelhauer.
Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.
Modeling and Visualization of CFSM Networks in JavaTime Michael Shilman James Shin Young EE249 Project Presentation December 8, 1998.
Models of Computation for Embedded System Design Alvise Bonivento.
7th Biennial Ptolemy Miniconference Berkeley, CA February 13, 2007 PTIDES: A Programming Model for Time- Synchronized Distributed Real-time Systems Yang.
SNAL Sensor Networks Application Language Alvise Bonivento Mentor: Prof. Sangiovanni-Vincentelli 290N project, Fall 04.
Mahapatra-A&M-Sprong'021 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
CprE 458/558: Real-Time Systems
The Structuring of Systems Using Upcalls David D. Clark Presenter: Haitham Gad.
Versatile low power media access for wireless sensor networks Joseph PolastreJason HillDavid Culler Computer Science Department University of California,Berkeley.
TOSSIM: Visualizing the Real World Philip Levis, Nelson Lee, Dennis Chi and David Culler UC Berkeley NEST Retreat, January 2003.
An Introduction to Rational Rose Real-Time
1 Energy Efficient Communication in Wireless Sensor Networks Yingyue Xu 8/14/2015.
Sensor Network Simulation Simulators and Testbeds Jaehoon Kim Jeeyoung Kim Sungwook Moon.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
Dynamic Clustering for Acoustic Target Tracking in Wireless Sensor Network Wei-Peng Chen, Jennifer C. Hou, Lui Sha.
Active Monitoring in GRID environments using Mobile Agent technology Orazio Tomarchio Andrea Calvagna Dipartimento di Ingegneria Informatica e delle Telecomunicazioni.
Towards Low Overhead Provenance Tracking in Near Real-Time Stream Filtering Nithya N. Vijayakumar, Beth Plale DDE Lab, Indiana University {nvijayak,
Real-Time Operating Systems for Embedded Computing 李姿宜 R ,06,10.
Network-on-Chip Energy-Efficient Design Techniques for Interconnects Suhail Basit.
“Software” Esterel Execution (work in progress) Dumitru POTOP-BUTUCARU Ecole des Mines de Paris
CONTI'20041 Event Management in Distributed Control Systems Gheorghe Sebestyen Technical University of Cluj-Napoca Computers Department.
Mahapatra-A&M-Fall'001 Co-design Finite State Machines Many slides of this lecture are borrowed from Margarida Jacome.
Communication Paradigm for Sensor Networks Sensor Networks Sensor Networks Directed Diffusion Directed Diffusion SPIN SPIN Ishan Banerjee
October 7, 1999Reactive Sensor Network1 Workshop - RSN Update Richard R. Brooks Head Distributed Intelligent Systems Dept. Applied Research Laboratory.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
© S. Ramesh / Kavi Arya / Krithi Ramamritham 1 IT-606 Embedded Systems (Software) S. Ramesh Kavi Arya Krithi Ramamritham KReSIT/ IIT Bombay.
Desynchronization and distributed deployment of synchronous systems Albert Benveniste – Inria 2002.
Conformance Test Experiments for Distributed Real-Time Systems Rachel Cardell-Oliver Complex Systems Group Department of Computer Science & Software Engineering.
A Passive Approach to Sensor Network Localization Rahul Biswas and Sebastian Thrun International Conference on Intelligent Robots and Systems 2004 Presented.
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
Computer Science 1 TinySeRSync: Secure and Resilient Time Synchronization in Wireless Sensor Networks Speaker: Sangwon Hyun Acknowledgement: Slides were.
Cognitive Radio: Next Generation Communication System
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
UNIT IV INFRASTRUCTURE ESTABLISHMENT. INTRODUCTION When a sensor network is first activated, various tasks must be performed to establish the necessary.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
1 May-2014 Automotive Protocols & Standards. 2 CAN (Controller Area Network)  Overview Controller Area Network is a fast serial bus designed to provide.
EmStar: A Software Environment for Developing and Deploying Wireless Sensor Networks CENS Research Review October 28, 2005 UCLA CENS EmStar Team.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Fundamentals of Fault-Tolerant Distributed Computing In Asynchronous Environments Paper by Felix C. Gartner Graeme Coakley COEN 317 November 23, 2003.
Auto-Park for Social Robots By Team I. Meet the Team Alessandro Pinto ▫ UTRC, Sponsor Dorothy Kirlew ▫ Scrum Master, Software Mohak Bhardwaj ▫ Vision.
The Structuring of Systems Using Upcalls By David D. Clark Presented by Samuel Moffatt.
INTRODUCTION TO WIRELESS SENSOR NETWORKS
Under Guidance- Internal Guide- Ms. Shruti T.V
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
CS294-1 Reading Aug 28, 2003 Jaein Jeong
Distributed Control Applications Within Sensor Networks
LabVIEW Based Embedded Design
Presentation transcript:

Comparing Models of Computation for Real-time, Distributed Control Systems Shawn Schaffert Bruno Sinopoli

Outline The real-time, distributed control problem The two car example Analysis of different models Implementation Conclusion

The real-time, distributed control problem

The Real-time, Distributed Control Dream Model for classical control Model for discrete world High level: networking, synchronization Low level: task scheduling Verification tools Code-generation -> implementation

Key Ideas Applications Environmental monitoring (distributed sensing) Rocket vibration damping (distributed actuation) Two car example (distributed sensing and actuation) Algorithms Routing Localization Synchronization Control Scheduling Mechanisms Communication network Local & global clocks Distributed dynamical environment Local shared resources Dynamic node creation/destruction Properties Controller stability Fault tolerance Task deadlines Network reliability Synchronization error

The two car example

System Structure Cluster1 TURN! Cluster2 TURN! Ext_Node1 sensor RF Int_Node1 sensor RF Int_Node2 sensor RF Ext_Node2 sensor RF Distributed wireless sensor nodes detect the coming cars and their directions, communicate with neighbor nodes, and control the cars to avoid collision

Analysis of different models

Models Continuous Time Timed Multitasking Continuous Time with Discrete Event Globally Asynchronous Locally Synchronous (GALS) Other models Giotto SDF SR

Continuous Time (CT) This model captures: Control stability This model doesn’t capture: Synchronization Scheduling Network

Timed Multitasking (TM) One purpose: analysis of scheduling of shared resources Isn’t interesting for the two car example Could be useful for general problems Higher level provides bounds on event inter-arrival time This level guarantees task deadlines are met

Continuous Time with Discrete Event (CT-DE) Our models captures Radio communication Broadcast channel Radio delay Radio collision Distributed environment Nodes are separate entities Communication only via radio channel Distributed sensor readings

Continuous Time with Discrete Event (CT-DE) Our model could be extended to capture: Improved radio model Radio noise Low radio bandwidth – collision window based on packet size Local and global clocks Nodes query environment individually Hardware-in-the-loop Problems with the CT-DE model: Dynamic node creation/destruction seems cumbersome Does not model task level Scale to 100 or 1000 nodes

Esterel Synchronous language Control-dominated software or hardware reactive system High-level programming using functional models C code is automatically generated

Design Flow Implement functional specification using high-level language (Esterel) Directly generate function modules(C code) through compiling Build interfaces and wrappers needed by the execution platform Target Execution Platform Code Generation Performance evaluation Design Concepts Functional Specification Compiler

High-Level Description module extnode: Loop await CAR; emit TO_N end loop module Cluster: loop await FROM_NC; await E; emit CAR_TURN each L || loop await E; emit TO_NC each L || loop await T; emit CAR_TURN; emit TO_NC each L module intnode: loop await [CAR or FROM_N]; present CAR then present FROM_N then emit T else [await FROM_N; emit L] end present else present FROM_N then [await CAR; emit E] end present end loop Cluster1 TUR N! Cluster2 TURN ! Ext_Node1 sensor RF Int_Node1 sensor RF Int_Node2 sensor RF Ext_Node2 sensor RF

The real World Esterel –A.strl

Synch vs Asynch In Synchronous models “Reaction based” Absence (  ) can be sensed and used in the specification of behaviors A global tick exists In Asynchronous models “Signal based” No global tick Reaction cannot be observed anymore  cannot be sensed

Endochronicity define desynchronization of P This map is unique but not invertible “If P satisfies a special condition called endochrony, then there exists a unique such that holds”

Endochronicity: Meaning STS Set of variables W’ clock inference of W ( ) if knowing presence/absence of allows deriving the presence absence of If then the process is endochronous

Isochronicity In general WE want the equality to hold (no spurious behavior due to asynchronous communication) “If (P,Q) satisfies a special condition called isochrony then the equality indeed holds”

Isochronicity: Meaning

Our Case module extnode: Loop await CAR; emit TO_N end loop This is endochronous: module intnode: loop await [CAR or FROM_N]; present CAR then present FROM_N then emit T else [await FROM_N; emit L] end present else present FROM_N then [await CAR; emit E] end present end loop This is not endochronous since CAR and FROM_N are not related: if (messagePayload_ptr->sourceNodeID == DUMB_NODE) { internal_I_FROM_N()} else if (messagePayload_ptr->sourceNodeID == OTHER_SMART_NODE) { internal_I_FROM_NC()} internal()

Make it Endochronous Simple solution: add signaling For each signal add a boolean flag which indicates presence/absence During the execution the functions will wait for all the flags and then will react Very expensive in general: If (flag==T) { set_input;set_arrived} If (all_flag) {react;reset_arrived}

Some discussion External node: Code size overhead 7% Internal node Code size overhead 18% The external node is already endochronous Internal node needs some extra signaling

Implementation

Conclusion Ptolemy Allows accurate model for entire system Network, dynamics, scheduling User friendly (intuitive) Scalability issues Code generation for sensor networks? Esterel Limited modeling (only behavioral level) Verifiability Code generation

Proposed Design Methodology Controller CTDE Synchronization Routing Task & Resource Scheduling TM Hardware

END Acknowledgements: Professor Lee for stimulating discussion Alessandro Pinto, Yanmei Li for their contribution in the Esterel implementation