实时嵌入式系统的设计介绍,以及控制系统
《实时系统与控制》《实时系统与控制》RTS Real-Time System and Control课程性质:计划学时主讲教师:联系方式:设计研讨课 12 C+8Lab+16R&D马旭东 13809022379/ 83795360 xdma@http://讲课实验(上机)研究讨论东南大学2
Real-Time System and Control实时系统与控制东南大学1
三部分组成实时系统与控制
课程目标了解掌握实时系统的广泛概念;工程设计的实用性理解和意识激发研究兴趣
课程目标研究设计方法:需求-分析-解决-验证-表达(Presentation)交流-Communication合作-Corperation
课程的核心内容实时系统(Real time System)调度(Scheduling)设计编程(Design& Programming)分析、测试和验证评估(Analysis, Testing and Verification/Evaluation)实时系统与控制东南大学3
课程的整体技术目标从工程应用角度理解掌握实时系统的各种需求以及这些需求如何影响到实时程序和操作系统(调度管理程序)设计;理解掌握相关工程设计过程的各个环节,并重点应用于控制系统的软件开发.实时系统与控制东南大学4
课程背景和重要性工程设计方法 vs“科学研究方法”Recognize problem or question (literature search) Observe some phenomenon h Hypothesize Experiment Collect data (REPEAT) Analyze data Report东南大学5
课程背景和重要性工程设计过程 System level Subsystem level Component level Defining problem 1.Define the problem 2.Identify evaluation Formulate solutions Develop models and prototypes criteria and constraints 3.Generate feasible Decide on a final design alternatives Implement and test the design 4.Evaluate the alternatives 5.Iterate Evaluate the design1. Define the Problem& Design Requirements 2. Generate Alternative Designs 3. Decide on a Final Design 4. Build/Test the Design 5. Evaluate the Design
Define the Problem Research past work in this area Brainstorm possible solutions Choose a“best solution” Analyze this solution Modify the solution Iterate!!!!通用方法体现在日常生活和工作中,针对不同工程领域和应用有具体的设计方法和标准!机械\电子\软件\控制系统….
实时系统与控制
实时系统与控制
6.Implement the preferred alternative 7.Evaluate implementation and provide feedback东南大学 6
实时嵌入式系统的设计介绍,以及控制系统
工程设计过程Customer needs a solution to a problem Requirement analysis System Design (Conceptual Design+ Preliminary Design) Detailed design and test System integration and product test Properly functioning system
课程背景和重要性自动控制原理离散控制系统计算机控制技术
控制算法:周期执行-稳定操作-优化性能-参数化模型核心:理论分析-控制算法编程,有效性??系统技术环境支撑硬件控制任务调度时间/效率系统技术:环境支撑-硬件控制-任务调度-时间/效率------非参数化模型;核心:软
硬件资源构件--系统编程—有效性??典型模型应用:--计算机应用系统—嵌入式系统《微机系统与接口》课程设计测试题各种计算机控制应用案例—时间、效率、可靠性东南大学7
实时系统与控制
实时系统与控制
东南大学
8
课程背景和重要性已修学课程:C++程序设计(JAVA语言)微机系统与接口(汇编语言\硬件接口)微机实验及课程设计与软硬件资源密切
课程背景和重要性关键:单处理器:单任务(流程)多任务并发执行—任务通信(信息交换)
硬件(接口):保证目标实现的基础(影响)计算机软件本质串行执行指令时序/控制/运算逻辑计算机:定时周期性串行处理实际系统:并行发生如何解决一系列有时间(事件)处理要求的应用系统?如何分析、设计、编码、测试、调试应用??实时系统与控制东南大学9
编程语言多任务并发支持.线程(Thread)编程语言—多任务并发支持线程(Thread)多核处理器程序设计多核, Intel C++多处理器系统—分布式系统 (Distributed Computer Systems)计算机网络/网络计算/网络管理控制实时系统与控制东南大学10
研讨性课程( Seminar)教师1/3~1/2应用引导?案例引导?需求引导?掌握程序设计基本概念、方法,理解C(++)和汇编语言,了解JAVA更好;(并发程序设计)提出问题?共同研究讨论-Presentation能力培养结论Conclusions/解决方案Solutions)研究:阅读查阅资料-数据手册-应用笔记-案例实验:体会-意识-理解-验证设计-分析:构架基础—静态-逻辑-动态模型-性能测试(方案):逻辑-环境构建-模拟实时系统与控制东南大学11
实时系统与控制案例《微机系统与接口》课程设计测试题—十种应用需求
停车场控制系统司机驾驶车辆医疗设备-空管-飞行-核电站-化学工业过程控制:聚合釜,甲醇精馏塔,粗苯分离系统电子皮带秤-配比系统煤采制样控制系统稀土萃取控制(湿法冶金)结晶器振动装置测试软件实时系统与控制东南大学12
实时嵌入式系统的设计介绍,以及控制系统
实时系统与控制案例升船机控制系统(PLC)蓄电池极板成充化成控制系统-Z80/8096/8051模拟家庭集中监控系统电源逆变器(UPS类)盾构模拟掘进机试验控制系统楼宇自动化系统—集成软件移动机器人系统
课程目标了解掌握实时系统的广泛概念;工程设计的实用性理解和意识激发研究兴趣
课程的核心内容实时系统(Real time System)调度(Scheduling)设计编程(Design& Programming)分析、测试和验证评估(Analysis, Testing and Verification/Evaluation)13
两种层面应用:一次开发/二次开发集成系统的实时性,可靠性,软件并发编程--任务调度,实时控制问题,实时系统与控制东南大学
实时系统与控制
东南大学
14
课程教学
内容1.实时系统技术基础,需求分析 2.任务分配和常用调度算法,任务间通信的基本方法,IA32基础 3.实时软件设计方法,实时系统编程语言 4.实时系统分析与建模;实时操作系统;IA-32任务管理 5.故障检测、冗余与容错技术,基于软硬件的同步技术,验证评估技术,实时控制 6.经典并发与实时系统案例开发分析过程与研究; IA-32实现,问题研究实时系统与控制东南大学15
实时系统与控制研究实时系统(Realtime Systems):裸机系统—汇编语言-IA32任务调度-OS核 RTOS/硬件驱动管理BIOS/OS—高级并发编程语言(支持系统):ADA,RT-JAVA, C++(OO) RTS分析建模(分析-设计工具):静态,UML(OO),Petri RTS设计-初步设计/机理设计 RTS开发(实现)与测试:调试工具、白黑盒子、极限
分组:高级语言、分析设计、调试测试选一 IA32裸机实验(开发设计实现实例)两人一组,自由组合,至少一次介绍表达实时系统与控制东南大学16
课程先修要求掌握程序设计基本概念、方法,理解C(++)和汇编语言,了解JAVA更好;(并发程序设计)基本掌握计算机系统组成与结构、掌握硬件 I/O工作原理和操作,具备初步开发微机系统软、硬件的能力。统软、硬件的能力了解掌握计算机操作系统(Operating Systems)和简单的程序管理(微机应用综合设计)
教材和教学参考书参考书 1.C.M.Krishna, Kang G.Shin著,戴海琼译,实时系统,清华大学出版社,2004.9 2.Alan Burns, Andy Wellings著,实时系统与编程语言.王振宇等译,机械工业出版社,2004.4 3.Bruce P Douglass著,柳翔译,嵌入式与实时系统开发,机械工业出版社,2005.3. 4.并发与实时系统软件设计,Hassan Gomaa著,姜昊等译,清华大学出版社,2003.7 5.实时系统软件基础,郑宗汉,清华大学出版社, 2003.117
实时系统与控制
东南大学
实时系统与控制
东南大学
18
实时嵌入式系统的设计介绍,以及控制系统
《实时系统与控制》课程学习课程特点:技术类研讨课程,信息量大—技术新,完整性差,技术手册/数据手册(DataSheet)为依据学习过程:案例来自教师,技术交流来自研究讨论总评成绩=平时上课成绩(出勤率)+研讨成绩+研究报告成绩(包括研究及上机)平时上课成绩(出勤率)占10%研讨成绩占45%研究与设计开发报告成绩占45%
首次讨论问题—感性认识1.MS-Windows (XP)下如何实现0.5 ms定时?并发(Concurrent)程序运行:任务,进程/线程—调度–硬件定时?
2.多核处理器软件如何运行(设计开发)?并行(Parallel)程序运行:硬件通信
3.运行中的软件如何监测故障?多任务分配,状态检测,硬件配合
实时系统与控制
东南大学
19
实时系统与控制
东南大学
20
第一讲
实时系统基础
实时系统(RTS)术语定义1实时系统--指那些产生输
出的时刻极其重要的系统。这通常是因为输入反映了外部世界的某些运动或状态,而输出依赖于系统的对应运动和状态。系统从输入时刻到输出时刻的响应时间滞后必须充分小,小到可以接受的时限内。简言之,任何个对于,小到可以接受的时限内。简言之,任何一个对于外界的激励都能有计算机给出及时响应的系统就是一个实时系统。
1.基本术语 2.典型案例和问题 3.实时系统特性实系特性 4.嵌入式系统与RTOS 5. RTS编程、软件架构及分析
实时系统中的响应时限是系统正确运行必不可少的因素,其特性需在系统设计前预先确定。“可接受时限”概念的相对性东南大学21
实时系统与控制
实时系统与控制
东南大学
22
实时系统(RTS)术语定义2任何需要对外部产生的输入激励在有限规定时间内作出响应的信息处理系统.系统的正确性不仅取决于逻辑结果,而且与输出结果的时间有关;不能响应=错误响应单个系统可能包含硬实时,软实时和真实时子系统;真实的系统对每一项”逾时(missing deadline)”都有响应的成本函数(cost function).实时系统与控制东南大学23
实时系统(RTS)术语相关表述反应式系统(reactive system)-- continuous
interaction with the environment (as opposed to information processing)嵌式系 (嵌入式系统(embedded system)-- computer system y ) p y encapsulated in its environment (device it controls), combination of computer hardware and software, dedicated to specic purpose安全敏感系统(safety-critical system)-- a failure may cause injury, loss of lives, signicant nancial loss实时系统与控制东南大学
24
实时嵌入式系统的设计介绍,以及控制系统
实时系统与软件典型RTS:飞行器、核反应堆、喷气发动机控制系统,工厂自动化系统、医疗设备/辅助系统形式:嵌入式系统硬(强)实时系统(Hard Real-time systems):计算机不能及时给出输出,则发生很糟糕、很危险的结果;软实时系统(Soft Real-time Systems):计算机不能及时给出输出,即使错过某些时间限也不会有什么灾难发生,但性能会下降到一般可以接受的水平以下.数字控制/复杂高级控制/信号处理/实时数据库/多媒体系统(在线应用服务系统,事务管理系统)实时系统与控制东南大学25
实时系统(RTS)术语硬实时(Hard real-time)—绝对要求响应必须在规定的时间限内产生的系统:例如飞行控制系统软实时(Soft real-time)—时限非常重要,但是如果偶然超限仍可正确工作的系统,例如:数据采集系统 (Data acquisition system).真实时(Real real-time)—硬实时系统而且响应时间很短.例如导弹制导系统( Missile guidance system). Firm real-time—软实时系统,但延迟提交服务并不能获得好处.关键:串行处理的指令执行.v
s.并行发生世界实时系统与控制东南大学26
实时系统与软件性能曲线:(软实时系统时间性能曲线 )
实例:简单的控制-流量控制Interface
顺序调度执行指令即可满足实时性要求
Pipe
Input flow reading
Flow meter
Processing
Output valve angle Time Computer
Valve
实时系统与控制
硬实时系统
东南大学
27
实时系统与控制
东南大学
28
实例:复杂应用系统美国雷神(Raytheon)爱国者导弹测试系统海军Litton Marine驱逐舰方向舵控制系统 MS-Windows RTX实时操作系统应用
实例:实时网络通信实时网络(反射内存/广播内存)VMIC(GE Funac) SBS DY4以太网?云计算?传感器网络?
实时系统与控制
东南大学
实时系统与控制
东南大学
实时嵌入式系统的设计介绍,以及控制系统
实时/反应式/嵌入式/安全敏感系统教室中系统实例?? Any real time system? reactive system? embedded system? safety critical safety-critical system?嵌入式系统:实时概念的主要应用重要性估计99%的处理器用于EMBS
实时系统框图控制系统 (串行执行指令)
传感器
执行器
环境(并行工作)实时控制系统框图东南大学
实时系统与控制
31
实时系统与控制
东南大学
32
控制计算处理时间time1µs: 10µs: 30µs: 40µs: 160µs:µ 100µs: 200µs: 1 ms: 2 ms: 16 ms: 60 ms: 120 ms:
较复杂的多回路控制系统(分解)信号输入转换检测多个回路/对象,可能耦实时控制、处理、安全合(Inter-Acting)控制输出转换定时器管理-故障诊断数据存储数据通信发送控制报文接收和执行(传递)人机界面管理(简单、可选)以确定性响应为主,随机事件响应为辅,简单的任务分配、资源共享、任务间通信及同步,优先级和调度,软件故障基本能监测长期连续运行!实时系统与控制东南大学34
Processingaddition of two variables in a programmable logic controller execution of an iteration step for a PID control algorithm. back- and forth delay in a 3'000 m long communication line. coroutine (thread) switch within a process send a request and receive an immediate answer in a field bus q task switch in a real-time kernel access an object in a fast process database (in RAM) execution of a basic communication function between tasks sending a datagram through a local area network (without arbitration) cycle time of a field bus (refresh rate for periodic data) cycle time of the communication task in a programmable logic controller. execution of a remote procedure call (DCOM, CORBA).
实时系统与控制
东南大学
33
较复杂的多回路控制系统(分解)信号输入转换检测多个回路/对象,可能耦实时控制、处理、安全合(Inter-Acting)控制输出转换定时器管理-故障诊断数据存储数据通信发送控制报文接收和执行(传递)人机界面管理(简单、可选)以确定性响应为
主,随机事件响应为辅,简单的任务分配、资源共享、任务间通信及同步,优先级和调度,软件故障基本能监测长期连续运行!实时系统与控制东南大学35
实际的实时响应
急停操作:急停操作 Emergency stop
实时系统与控制
If the towel gets caught, he releases the button and expects the cylinder to stop in 1/2 second .东南大学36
实时嵌入式系统的设计介绍,以及控制系统
RTS其他功能性需求一般:(除时间外)功能性需求(输入/输出关系)行为(可见的交互顺序操作\动作)另外:能量,速度,存储器使用外观,可度量性,分布性外观可度量性分布性可依赖性:鲁棒性,可靠性,可扩展性,可用性,可维护性,容错,安全性,一致性(robustness, reliability, extensibility, availability, maintainability, fault tolerance, security, consistency)实时系统与控制东南大学37
开发需求(软件工程)功能性需求:(系统完成功能)输入,输出,存储,以上的时序和同步
质量需求(设计达到指定质量的约束)满足质量前提下的相对最好,合适的响应时间平台需求(软件环境和技术约束)过程需求:开发计划和开发方法约束
实时系统与控制
东南大学
38
系统结构整体架构:外部可见,部件,子系统和交互基本接口和交互:部件之间以及环境
实时系统与控制讨论问题1、实时系统基本概念系统与信号,反应式系统,实时系统定义与分类,事件驱动-离散事件系统,确定与随机系统,嵌入式系统,控制系统,并发(系统分布式 Concurrent)系统,分布式(Distributed)系统,复杂系统,容错系统和可靠性,安全敏感(Safety-critical)系统,RTS的内部结构,性能度量,实例与真实应用,RTS建摸, RTS设计,软件-硬件合作设计(co-design)实时系统与控制
与外部功能对应 (模型)End User Programmer
系统集成人员实时系统与控制
系统工程师东南大学
39
东南大学
40
实时系统与控制讨论2、实时计算机硬件和过程接口 CPU, MCU,存储器,专门处理器,总线结构,数字信号接口,脉冲信号接口,模拟信号接口,RTC和定时器,中断,DMA,串行与并行(通信)接口,管道 ( Pipelining )技术,协处理器 ( Coprocessors) WDT定时器
实时系统与控制讨论3、实时计算机控制系统基本概念和结构,过程实例,连续与离散系统,线性控制系统,连续系统离散化,顺序控制,回路(LOOP)控制,监督控制 ( p (Supervisory control),集中与分布式控制, y ),集中与分布式控制自适应与推理控制 ( Adaptive and inferential control),批式控制( Batch control)直接数字控制,人机接口,可编程控制器(PLC),仿真(Simulation)/实时仿真41
实时系统与控制
东南大学
实时系统与控制
东南大学
42
实时嵌入式系统的设计介绍,以及控制系统
实时系统与控制
讨论4实时内核与编程语言多任务 ( Multi-tasking ),资源共享 ( Resource sharing ),任务间通信与同步 ( Inter-task communication and synchronization ),优先级 ( Priorities ),驱动程序 ( Drivers ),调度 (Scheduling), (Scheduling)编程语言评价指标(Criteria for programming languages ),典型 RTOS:RTLINUX, WindowsCE, VxWorks, RTX-DOS, QNX同步编程语言
实时系统与控制讨论5.结构化RTS设计结构图(chart),数据流图(Diagram),状态机,状态转换图,控制流图,并发出口 ( Concurrency issues),状态图(State,典设计方法设计具 charts),经典设计方法,设计工具经典:
实时系统与控制
东南大学
43
实时系统与控制
东南大学
44
实时系统与控制讨论6. RTS建摸状态机(State machines),扩展状态机,实时状态机,状态图(Statecharts),模式图( Mode charts), Petri(网)nets及类型、应用,可达性与可覆盖性( Reachability and coverability),各种 Petri网( Synchronized Petri nets Timed Petri nets, nets, nets Timing constrant Petri nets, Safety analysis with Petri nets, Coloured Petri nets, Grafcet, Temporized Grafcet, GraphChart, Hierarchical Petri nets, stochastic Petri nets等),建模工具(软件)
实时系统与控制讨论7. RTS调度( scheduling)基本概念,单调速率调度(Rate-monotonic), Earliest dead-line first scheduling, IRIS scheduling, Fault tolerant scheduling, Eventdriven scheduling, Static scheduling, Dynamic g, g, y scheduling, Clock-driven scheduling, Processor utilization, Preemptive/non-preemptive (强占) scheduling, Periodic/sporadic tasks scheduling,多处理器(核)调度Multiprocessor scheduling实时系统与控制
实时系统与控制
东南大学
45
东南大学
46
实时系统与控制讨论8.保持时间与时钟同步(Keeping Time and Clock synchronization)时钟,同步,非容错性同步,硬件同步,互连结构,
实时系统与控制讨论9. RTS监视与调试(Monitoring and debugging)基本概念,状态监测,软件监测系统,硬件监测系统,RTS调试(硬件断点),非干扰 (Noninterference)监测系统,基于图形的时间分析Graph- based timing analysis,图示化 (Visualization)与调试
实时系统与控制
东南大学
47
实时系统与控制
东南大学
48
实时嵌入式系统的设计介绍,以及控制系统
实时系统与控制讨论10. RTS容错(Fault-tolerant)与可靠性模型基本概念,失败根源,失败类型,失败检测出错恢复,冗余可靠性函数,灾难函数,可用性, MTTF, MTBF,可靠性模型,可修复系统,软件可靠性度量 WDT
实时系统与控制讨论11.面向对象的RTS设计对象模型,动态模型,函数模型,并发 Issues, UML方法,Use cases, Activity charts, Interaction diagrams, State charts, Timing diagrams, OMT methodology,
g g, gy, CODART notation,设计工具(Rhapsody)
实时系统与控制
东南大学
49
实时系统与控制
东南大学
50
实时系统与控制讨论12.分布式RTS分布计算,实时通信,网络和总线结构,监视与调试,通信协议,同步等:多机应用 RTS系统设计(Design)是目标实现(Implementation)是手段评估(Evaluation,测试、分析)是研讨的重点实时系统与控制东南大学51
关键问题研讨(任务)计算机控制系统:根据内外给定和时间-逻辑要求进行输入、控制-处理和输出的高可靠性的系统:多种组合形式:连续反馈控制系统:回路控制算法为核心技术顺序逻辑开关控制:调度与逻辑控制系统技术
实时系统与控制
东南大学
52
应用设计问题研讨(任务1)综合测试题(模拟实时控制/管理系统)乒乓球比赛移动靶射击比赛抢答反应测试仪-停车场管理已熟悉单机电子琴 (单任务)简单参数调波形发参数可调波形发生器*应用系统数字直流电机反馈控制系统模拟电梯步进电机反馈控制系统—出租车计价器数字录音机下次首次研讨报告交通灯控制系统?需求描述一个处理器同时完成两项或三项应用分组合作研究,不限资源
应用设计问题研讨(任务1A)精馏塔(Distilation Column):分离组分:连续物理过程控制 (缺背景原理和控制知识)
实时系统与控制
?分析设计?多任务协作开发东南大学 53
实时系统与控制
东南大学
54
实时嵌入式系统的设计介绍,以及控制系统
应用设计问题研讨(任务1 B)
关键专题问题研讨(任务2)一、研究对象二、实时系统性能需求分析三、实时系统与控制关键技术研讨(选一)1.实时系统编程语言与运行环境 2.实时系统建模与建模工具 2实时系统建模与建模工具 3.实时系统运行调度与运行管理 4.实时系统的可靠性分析、设计和测试
聚合釜控制化学反应器批式过程(缺背景原理和控制知识)
四、实例(运行)验证与设计研究五、总结、汇报和讨论(表达)实时系统与控制东南大学55
实时系统与控制
基本性能
东南大学
56