TrueTime.

Slides:



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

Project: Processes and Resource Management Textbook: pages Lubomir Bic.
Thursday, June 08, 2006 The number of UNIX installations has grown to 10, with more expected. The UNIX Programmer's Manual, 2nd Edition, June, 1972.
QualNet 2014/05/ 尉遲仲涵. Outline Directory Structure QualNet Basic Message & Event QualNet simulation architecture Protocol Model Programming.
Real Time Operating System
Real-Time Software Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
3/11/2002CSE Input/Output Input/Output Control Datapath Memory Processor Input Output Memory Input Output Network Control Datapath Processor.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Simulation of Distributed Application and Protocols using TOSSIM Valliappan Annamalai.
What Every Developer Should Know about the Kernel Dr. Michael L. Collard 1.
Chapter 2 Processes and Threads Introduction 2.2 Processes A Process is the execution of a Program More specifically… – A process is a program.
1 Review of Process Mechanisms. 2 Scheduling: Policy and Mechanism Scheduling policy answers the question: Which process/thread, among all those ready.
Multi-Tasking The Multi-Tasking service is offered by VxWorks with its real- time kernel “WIND”.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Why does it need? [USN] ( 주 ) 한백전자 Background Wireless Sensor Network (WSN)  Relationship between Sensor and WSN Individual sensors are very limited.
CONCEPTS OF REAL-TIME OPERATING SYSTEM. OBJECTIVE  To Understand Why we need OS?  To identify Types of OS  To Define Real - Time Systems  To Classify.
Real-Time Operating Systems RTOS For Embedded systems.
 Operating system.  Functions and components of OS.  Types of OS.  Process and a program.  Real time operating system (RTOS).
Operating System Components) These components reflect the services made available by the O.S. Process Management Memory Management I/O Device Management.
Multiprogramming. Readings r Chapter 2.1 of the textbook.
Embedded System Scheduling
INTRODUCTION TO WIRELESS SENSOR NETWORKS
Real-time Software Design
Protocols and the TCP/IP Suite
REAL-TIME OPERATING SYSTEMS
Interrupts and exceptions
Resource Management IB Computer Science.
Processes and threads.
CPU SCHEDULING.
Simulation of Distributed Application and Protocols using TOSSIM
Advanced Operating Systems CIS 720
Chapter 3: Process Concept
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
Topics Covered What is Real Time Operating System (RTOS)
Uniprocessor Scheduling
Networks and Operating Systems: Exercise Session 2
Operating Systems (CS 340 D)
Lecture Topics: 11/1 Processes Process Management
CHAPTER 4 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Multiple Access Mahesh Jangid Assistant Professor JVW University.
Intro to Processes CSSE 332 Operating Systems
Chapter 3 Top Level View of Computer Function and Interconnection
Real-time Software Design
Applied Operating System Concepts
Protocols and the TCP/IP Suite
Virtual Network Management
Threads and Data Sharing
Computer System Overview
Recap OS manages and arbitrates resources
Introduction What is an operating system bootstrap
ECEG-3202 Computer Architecture and Organization
Process & its States Lecture 5.
Mid Term review CSC345.
Operating System Concepts
Process Description and Control
TinyOS CSE466 Final Project Presentation
Lecture Topics: 11/1 General Operating System Concepts Processes
Computer Network Overview
Processes Hank Levy 1.
Multiprocessor and Real-Time Scheduling
EE 472 – Embedded Systems Dr. Shwetak Patel.
Processes and operating systems
Protocols and the TCP/IP Suite
CS703 - Advanced Operating Systems
Process.
Processes Hank Levy 1.
Chapter 13: I/O Systems.
Chapter 3: Process Management
Presentation transcript:

TrueTime

TrueTime 2.0 http://www.control.lth.se/truetime/ Reference Manual link

Communication Network TrueTime is a Matlab/Simulink Event-based simulator for real-time control system. It is used for the simulation of Networked Control System (NCS). In NCS, actuators, sensors and controllers are interconnected by a communication network. Process Actuator Sensor Communication Network Controller

TrueTime capabilities: Investigate the true, timely behavior of time or event-triggered control loops affected by real-time scheduling and networking Experiment with novel real-time scheduling techniques, including feedback scheduling Investigate the performance of various wired or wireless MAC protocols Simulate complex scenarios involving battery-powered mobile robots communicating over a wireless network

Components

Computation component Simulates and event-based real- time kernel. Executes user-defined tasks and interrupt handler (C or M-files) Arbitrary user-defined scheduling policies Supports external interrupts and timers Code structured into code segments

Init Each kernel block must have an initialization script The purposes of the initialization script are: Specify the number of I/O Define a scheduling policy Creating tasks Creating interrupts handlers Pre-defined priority functions exist for scheduling policies: fixed-priority rate-monotonic deadline-monotonic earliest-deadline-first scheduling

Example Initialize the kernel, specifying the scheduling policy Create a periodic task Create an aperiodic task Attach an aperiodic task or interrupt handler to a network interface

Tasks Tasks are used to model the execution of user code The release of task instances (jobs) may be periodic or aperiodic For periodic tasks, the jobs are created by an internal periodic timer For aperiodic tasks, the jobs must be created by the user (e.g., in response to interrupts)

Task code is represented by a code function in the format: [exectime,data] = function mycode(segment,data) The data input/output argument represents the local memory of the task The segment input argument represents the program counter The exectime output argument represents the execution time of the current code segment

All statements in a segment are executed sequentially, non- preemptively, and in zero simulation time Only the delay can be preempted by other tasks No local variables are saved between segments

The name of the initialization script An optional argument to the initialization script Number of local Inputs and Outputs Number of external triggers for the kernel task Number of the node (must be unique) A constant time offset and time drift from the nominal time.

Communication component Network Block Ethernet CAN TDMA FDMA Round Robin Switched Ethernet FlexRay PROFINET Wireless Network Block 802.11b WLAN 802.15.4 ZigBee

Modelling wired networks Models the medium access delay and the transmission delay. No built-in support for network and transport layer protocols

Modelling wireless network Used in a similar way as the wired network block Supports two common MAC layer policies: 802.11b/g (WLAN) 802.15.4 (ZigBee) Variable network parameters x and y inputs for node locations Generates a transmission schedule

The number assigned to the network block. The number of nodes connected to the network. The speed of the network. The minimum frame size The probability that a network message is lost during transmission

Example Networked

Networked control of a DC-Servo Controller Task Dummy Task Sensor Task Actuator Task Interfering Task Controller Sensor / Actuator Interfering Node CSMA/CD 80 kbps

Networked Control Loop

Step Response Step Response Control Signal

Network Schedule Control Node Sensor/Actuator Node Interfering Node High → Sending Medium → Waiting Low → Idle

CPU Schedule Actuator Task Sensor Task High → Running Medium → Ready Low → Idle