计算机控制系统-嵌入式PLC课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《计算机控制系统-嵌入式PLC课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 系统 嵌入式 PLC 课件
- 资源描述:
-
1、北京航空航天大学 清华大学出版社2 依依审定的教材大纲编写。审定的教材大纲编写。 主编人:高金源主编人:高金源 夏洁夏洁 出版发行:清华大学出版社出版发行:清华大学出版社北京航空航天大学 清华大学出版社38.1 嵌入式系统嵌入式系统8.1.1 概述概述8.1.2 软硬件协同设计技术软硬件协同设计技术8.1.3 实时操作系统实时操作系统 8.1.4 嵌入式系统的开发嵌入式系统的开发8.1.5 嵌入式控制系统设计实例嵌入式控制系统设计实例8.2 可编程控制器(可编程控制器(PLC)8.2.1 PLC概述概述 8.2.2 PLC结构和工作原理结构和工作原理8.2.3 PLC常用编程语言常用编程语言8
2、.2.4 PLC应用实例应用实例8.2.5 PLC网络系统网络系统北京航空航天大学 清华大学出版社4北京航空航天大学 清华大学出版社51. 嵌入式系统定义和分类嵌入式系统定义和分类电气工程师协会(电气工程师协会(IEEE)定义)定义 :“嵌入式系统是控制、监视或辅助设备、机嵌入式系统是控制、监视或辅助设备、机器甚至工厂操作的装置。器甚至工厂操作的装置。”一般定义:一般定义:“以应用为中心、以计算机技术为基础、以应用为中心、以计算机技术为基础、软软件硬件可裁剪件硬件可裁剪、适应应用系统对功能、可靠、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的性、成本、体积、功耗严格要求的专用专用计算计
3、算机系统。机系统。”北京航空航天大学 清华大学出版社6小型系统内核;小型系统内核;专用性较强;专用性较强;系统精简,以减少控制系统成本,利于实现系统系统精简,以减少控制系统成本,利于实现系统安全;安全;采用高实时性的操作系统,且软件要固化存储;采用高实时性的操作系统,且软件要固化存储;使用多任务的操作系统,使软件开发标准化;使用多任务的操作系统,使软件开发标准化;嵌入式系统开发需要专门的工具和环境。嵌入式系统开发需要专门的工具和环境。 北京航空航天大学 清华大学出版社7 硬件方面:硬件方面: 芯片级嵌入(含程序或算法的处理器)芯片级嵌入(含程序或算法的处理器) 模块级嵌入(系统中的某个核心模块
4、)模块级嵌入(系统中的某个核心模块) 系统级嵌入系统级嵌入 软件方面(根据实时性要求):软件方面(根据实时性要求): 非实时系统(例如非实时系统(例如PDA等)等) 实时系统实时系统 硬实时系统硬实时系统若系统在指定的时间内未能实现某个确定的任若系统在指定的时间内未能实现某个确定的任务,就会引起系统崩溃或导致致命错误(如导弹飞行姿态控制务,就会引起系统崩溃或导致致命错误(如导弹飞行姿态控制系统)。系统)。 软实时系统软实时系统在该类系统中虽然响应时间同样重要,但是超在该类系统中虽然响应时间同样重要,但是超时却不会导致致命错误,这也意味着偶尔超过时间限制是可以时却不会导致致命错误,这也意味着偶尔
5、超过时间限制是可以容忍的(如消费类产品)容忍的(如消费类产品) 。 北京航空航天大学 清华大学出版社8(1) 嵌入式微控制器嵌入式微控制器(Mico Controller Unit, MCU) 典型代表是单片机。单片机芯片内部集成典型代表是单片机。单片机芯片内部集成ROM、RAM、总线、总线、定时器定时器/计时器、计时器、I/O、串行口、串行口、A/D、D/A等各种必要的功能等各种必要的功能和外设,在工作温度、抗电磁干扰、可靠性等方面一般都做了各和外设,在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强,且体积小、功耗成本低,比较适合控制。种增强,且体积小、功耗成本低,比较适合控制。 (2
6、) 嵌入式微处理器嵌入式微处理器(Embedded Micro Processor Unit, EMPU) 基础是通用计算机中的基础是通用计算机中的CPU。只保留与嵌入式应用密切相关的功。只保留与嵌入式应用密切相关的功能硬件,去掉其他冗余的功能部分。目前的主要类型有能硬件,去掉其他冗余的功能部分。目前的主要类型有ARM 、 PowerPC系列等。系列等。 (3) 数字信号处理器数字信号处理器(Digital Signal Processor, DSP) 专用于信号处理方面的处理器,其可进行向量运算、指针线性寻专用于信号处理方面的处理器,其可进行向量运算、指针线性寻址等运算量很大的数据处理,具有
7、很高编译效率和指令执行速度址等运算量很大的数据处理,具有很高编译效率和指令执行速度(4)嵌入式片上系统嵌入式片上系统(System On Chip, SOC) 在一个硅片上实现一个复杂的系统,其最大的特点是实现了软硬在一个硅片上实现一个复杂的系统,其最大的特点是实现了软硬件的无缝结合,直接在处理器内嵌入操作系统的代码模块。件的无缝结合,直接在处理器内嵌入操作系统的代码模块。 北京航空航天大学 清华大学出版社9 硬件设计工具硬件设计工具 系统级设计方面采用的硬件设计工具有系统级设计方面采用的硬件设计工具有Cadence的的SPW和和System View。 模拟电路系统采用的仿真工具有模拟电路系
8、统采用的仿真工具有Pspice和和EWB。 印刷电路设计方面的设计工具有印刷电路设计方面的设计工具有Protel、PADs 的的Power PCB & Tool Kit和和Mentor的的Expedition & Tool Kit。 可编程逻辑器件设计工具还有可编程逻辑器件设计工具还有Mentor FPGA Advantage & ModelSim、Xilinx Foundation ISE & Tool Kit以及各种综合和仿真工具等等。以及各种综合和仿真工具等等。北京航空航天大学 清华大学出版社10 软件开发平台软件开发平台 高级语言编译器(高级语言编译器(Compiler Tools)。
9、)。 实时在线仿真系统实时在线仿真系统ICE(In Circuit Emulator)。)。 源程序模拟器(源程序模拟器(Simulator)。)。 实时多任务操作系统(实时多任务操作系统(Real Time multi-tasking Operation System,RTOS)。)。 商用型商用型RTOS的功能稳定可靠,具有比较完善的技术支持和售的功能稳定可靠,具有比较完善的技术支持和售后服务,但价格昂贵而且都针对特定的硬件平台。如后服务,但价格昂贵而且都针对特定的硬件平台。如WindRiver公司的公司的VxWorks、Palm Computing掌上电掌上电脑公司的脑公司的Palm O
10、S等。等。 免费的免费的RTOS主要有主要有Linux和和C/OS等。尽管这些资源带有等。尽管这些资源带有源码,但理解、消化并运用在某应用系统上也是一项艰苦的工源码,但理解、消化并运用在某应用系统上也是一项艰苦的工作,相应的调试工具是没有免费的。作,相应的调试工具是没有免费的。北京航空航天大学 清华大学出版社11北京航空航天大学 清华大学出版社12 芯片方面芯片方面 是可编程片上系统。是可编程片上系统。 宏观方面宏观方面 使嵌入式系统更经济、小型、可靠、快速、智能化、使嵌入式系统更经济、小型、可靠、快速、智能化、网络化。网络化。 经济性经济性 很便宜,让更多的人能买得起。很便宜,让更多的人能买
11、得起。 小型化(笔记本、小型化(笔记本、PDA) 人们携带方便。人们携带方便。 可靠性(汽车可靠性(汽车VCD跳动问题)跳动问题) 能够在一般环境条件下或者是苛刻的环境条件下运行。能够在一般环境条件下或者是苛刻的环境条件下运行。 高速度(飞机刹车系统)高速度(飞机刹车系统)能够迅速地完成数据计算或数据传输。能够迅速地完成数据计算或数据传输。 智能性(知识推理、模糊查询、识别、感知运动)智能性(知识推理、模糊查询、识别、感知运动) 使人们用起来更习惯,对人们更有使价值。使人们用起来更习惯,对人们更有使价值。北京航空航天大学 清华大学出版社131硬件体系结构硬件体系结构图图8-2 嵌入式系统硬件体
12、系结构的功能部件嵌入式系统硬件体系结构的功能部件北京航空航天大学 清华大学出版社14设计过程的基本特征是:系统在一开始就被划分为软件和硬件两设计过程的基本特征是:系统在一开始就被划分为软件和硬件两大部分,软件和硬件是独立地进行开发设计,通常采用的是大部分,软件和硬件是独立地进行开发设计,通常采用的是“硬硬件先行件先行”的设计方法。的设计方法。 问题:问题:(1)软硬件之间的交互受到很大限软硬件之间的交互受到很大限制,造成系统集成相对滞后,因此制,造成系统集成相对滞后,因此传统嵌入式系统设计的结果往往是传统嵌入式系统设计的结果往往是设计质量差设计质量差、设计修改难设计修改难,同时,同时研研制周期
13、不能制周期不能得到得到有效保障有效保障。(2) 随着设计复杂程度的提高,随着设计复杂程度的提高,软硬件设计中的一些错误将会使开软硬件设计中的一些错误将会使开发过程付出昂贵的代价。发过程付出昂贵的代价。(3)“硬件先行硬件先行”的做法常常需要的做法常常需要由软件来补偿由于硬件选择的不适由软件来补偿由于硬件选择的不适合造成系统的缺陷,从而增加软件合造成系统的缺陷,从而增加软件的代价。的代价。 图图8-3 传统的嵌入式系统的设计方法传统的嵌入式系统的设计方法北京航空航天大学 清华大学出版社15(1) 软硬件协同设计定义:软硬件协同设计定义:在硬件和软件设计中,通过并发和交互设计来满足系统级的目标要求
14、。在硬件和软件设计中,通过并发和交互设计来满足系统级的目标要求。(2) 软硬件协同设计基本需求:软硬件协同设计基本需求: 采用统一的软硬件描述方式采用统一的软硬件描述方式软硬件支持统一的设计和分析工软硬件支持统一的设计和分析工具或技术,允许在一个集成环境中仿真及评估系统的软硬件设计,具或技术,允许在一个集成环境中仿真及评估系统的软硬件设计,支持系统任务在软件和硬件设计之间的相互移植;支持系统任务在软件和硬件设计之间的相互移植; 采用交互式软硬件划分技术采用交互式软硬件划分技术允许进行多个不同的软硬件划分允许进行多个不同的软硬件划分设计仿真和比较,划分应用可以最大满足设计标准设计仿真和比较,划分
15、应用可以最大满足设计标准(功能和性能(功能和性能目标)目标)要求;要求; 具有完整的软硬件模型基础具有完整的软硬件模型基础可可以支持设计过程中各阶段的评估,以支持设计过程中各阶段的评估,支持逐步开发以及对硬件和软件的支持逐步开发以及对硬件和软件的综合;综合; 验证方法必须正确,以确保系统设验证方法必须正确,以确保系统设计达到目标要求。计达到目标要求。优势:协同设计要优势:协同设计要贯穿整个设计周期贯穿整个设计周期,且且使设计修改容易,研制周期可以得到有使设计修改容易,研制周期可以得到有效保障效保障;软硬件交互设计变得简单。;软硬件交互设计变得简单。图图8-4 嵌入式系统的软硬件协同设计流程嵌入
16、式系统的软硬件协同设计流程北京航空航天大学 清华大学出版社16 描述描述将系统行为的功能进行明确、提取并列表;将系统行为的功能进行明确、提取并列表; 划分划分即对硬件即对硬件/软件的功能进行分配;软件的功能进行分配; 评估评估进行性能评估或对综合后系统依据指令级评价进行性能评估或对综合后系统依据指令级评价参数做出评估,若不满足要求,则需要回到;参数做出评估,若不满足要求,则需要回到; 验证验证是为保证系统可以按照设计要求正常工作,而是为保证系统可以按照设计要求正常工作,而达到合理置信度的过程。根据应用领域的不同可能采取不达到合理置信度的过程。根据应用领域的不同可能采取不同的验证方法,但都必须经
17、过性能与功能的协同仿真。同的验证方法,但都必须经过性能与功能的协同仿真。 实现实现通过综合后的硬件的物理实现和通过编译后的通过综合后的硬件的物理实现和通过编译后的软件执行。软件执行。北京航空航天大学 清华大学出版社171实时操作系统定义及特点实时操作系统定义及特点 实时操作系统实时操作系统RTOS是指能支持实时控制系统工作的操作系统,是指能支持实时控制系统工作的操作系统,它可以在固定的时间内对一个或多个由外设发出的信号做出适当它可以在固定的时间内对一个或多个由外设发出的信号做出适当的反应。的反应。 实时操作系统的主要特征:规模小、中断被屏蔽的时间很短、中实时操作系统的主要特征:规模小、中断被屏
18、蔽的时间很短、中断处理时间短且任务切换很快。断处理时间短且任务切换很快。 常见的实时操作系统常见的实时操作系统 商用的商用的RTOS:VxWorks、pSOS、Palm OS等;等; 免费的免费的RTOS:Linux和和C/OS等等 嵌入式实时操作系统的精华在于向开发人员提供一个实时多任务嵌入式实时操作系统的精华在于向开发人员提供一个实时多任务内核。开发人员将具体一项应用工作分解成若干个独立的任务,内核。开发人员将具体一项应用工作分解成若干个独立的任务,将各任务要做的事、任务间的关系向实时多任务内核交代清楚,将各任务要做的事、任务间的关系向实时多任务内核交代清楚,让实时多任务内核去管理这些任务
19、,开发过程就完成了。让实时多任务内核去管理这些任务,开发过程就完成了。 嵌入式实时操作系统没有文件管理,一般不需要内存管理,它具嵌入式实时操作系统没有文件管理,一般不需要内存管理,它具有的是实时操作系统中最重要的内容,即多任务实时调度和任务有的是实时操作系统中最重要的内容,即多任务实时调度和任务的定时、同步操作,具有很短的任务切换时间和实时响应速度。的定时、同步操作,具有很短的任务切换时间和实时响应速度。北京航空航天大学 清华大学出版社18 VxWorks操作系统是美国操作系统是美国WindRiver公司于公司于1983年设计开发的一种嵌入式年设计开发的一种嵌入式RTOS,具有高,具有高性能的
20、内核以及友好的用户开发环境,在嵌性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域牢牢占据着一席之地。入式实时操作系统领域牢牢占据着一席之地。 VxWorksVxWorks所具有的显著特点是:所具有的显著特点是: 可靠性、实时性和可裁减性。可靠性、实时性和可裁减性。 它支持多种处理器,如它支持多种处理器,如x86x86、i960i960、Sun Sun SparcSparc、Motorola MC68xxxMotorola MC68xxx、MIPS MIPS 、POWER POWER PCPC等等。等等。3-2北京航空航天大学 清华大学出版社19 pSOS原属原属ISI公司的产品,但公
21、司的产品,但ISI已经被已经被WinRiver公司兼并,现在公司兼并,现在pSOS属于属于WindRiver公司的产品。公司的产品。 该系统是一个模块化、高性能的实时操作系该系统是一个模块化、高性能的实时操作系统。统。 开发者可以利用它来实现从简单的单个独立开发者可以利用它来实现从简单的单个独立设备到复杂的、网络化的多处理器系统功能。设备到复杂的、网络化的多处理器系统功能。3-2北京航空航天大学 清华大学出版社20 Palm OS是著名的网络设备制造商是著名的网络设备制造商3COM旗旗下的下的Palm Computing掌上电脑公司的产品。掌上电脑公司的产品。 Palm OSPalm OS在在
22、PDAPDA市场上占有很大的市场份额。市场上占有很大的市场份额。获得了获得了IBMIBM、OracleOracle、NokiaNokia和和SonySony等国际知等国际知名公司的支持,同时有很多的软件开发者为名公司的支持,同时有很多的软件开发者为其开发软件应用程序,还有相当多的硬件开其开发软件应用程序,还有相当多的硬件开发人员为其开发外围扩展设备,例如发人员为其开发外围扩展设备,例如GPSGPS系系统、数码摄像头、录音系统等。统、数码摄像头、录音系统等。 3-2北京航空航天大学 清华大学出版社21 任务任务(或称(或称“线程线程”)及其)及其任务工作状态任务工作状态 指拥有所有指拥有所有CP
23、U资源的程序分段,资源的程序分段,线程线程为调度的基本单位为调度的基本单位 每个任务都是整个应用的某一部分,每个任务被赋予一定每个任务都是整个应用的某一部分,每个任务被赋予一定的优先级,的优先级, 有它自己的一套有它自己的一套CPU寄存器和自己的栈空间。寄存器和自己的栈空间。图图8-5 实时系统中的任务状态实时系统中的任务状态北京航空航天大学 清华大学出版社22 实时内核负责管理各个任务,为每个任务分配实时内核负责管理各个任务,为每个任务分配CPU时间,时间,并负责任务间的通信。提供的基本服务是任务切换。并负责任务间的通信。提供的基本服务是任务切换。(non-preemptive)(preem
24、ptive)内核可以剥夺正在运行着的任务的内核可以剥夺正在运行着的任务的CPU使用使用权,并将该使用权交给进入就绪态的优先级权,并将该使用权交给进入就绪态的优先级更高的任务。更高的任务。 实时内核实时内核可剥夺型(占先式)可剥夺型(占先式)不可剥夺型(非占先式)不可剥夺型(非占先式)内核运用某种算法决定让哪个任务运行后,就内核运用某种算法决定让哪个任务运行后,就将将CPU控制权完全交给这个任务,直到该任务控制权完全交给这个任务,直到该任务主动将主动将CPU控制权还回来。控制权还回来。 北京航空航天大学 清华大学出版社23 任务按照其重要性被赋予优先级。任务按照其重要性被赋予优先级。 静态优先级
25、静态优先级应用程序执行过程中诸任务优先级不变。应用程序执行过程中诸任务优先级不变。在这种系统中,诸任务以及它们的时间约束在这种系统中,诸任务以及它们的时间约束在程序编译时是已知的。在程序编译时是已知的。 动态优先级动态优先级应用程序执行过程中,任务的优先级是可变应用程序执行过程中,任务的优先级是可变的。的。北京航空航天大学 清华大学出版社24 为内核的主要职责之一,它决定该轮到哪个任务运为内核的主要职责之一,它决定该轮到哪个任务运行了。行了。 调度是基于优先级的。调度是基于优先级的。 CPU总是让处在就绪态的总是让处在就绪态的优先级最高的任务先运行。优先级最高的任务先运行。 调度的基本方式有:
展开阅读全文