第 10 章 微型机控制系统的设计

199
第 10 第 第第第第第第 第第第 第第 10.1 第第第第第 第第第第第第第第 10.2 第第第第第第第第第第第第第10.3 第第第 FR1151 第第第第第 10.4 第第第第第第第第

description

第 10 章 微型机控制系统的设计. 前言 10.1 微机控制系统的设计方法及步骤 10.2 微型计算机控制的自动装箱系统 10.3 智能型 FR1151 压力变送器 10.4 加热炉温度控制系统. 第 10 章 微型机控制系统设计. 通过前面各章的学习,已经掌握了微型计算机控制系统 I/O 接口的扩展方法,模拟量输入 / 输出通道的设计,常用控制程序的设计方法,数据处理及非线性补偿技术, PID 控制器以及模糊控制方法等。它们是设计嵌入式系统硬件及软件的基础。有了这些基础以后,就可以进行微型计算机控制系统及智能化仪器的设计。. 微机控制技术. - PowerPoint PPT Presentation

Transcript of 第 10 章 微型机控制系统的设计

Page 1: 第 10 章  微型机控制系统的设计

第 10 章 微型机控制系统的设计

前言

10.1 微机控制系统的设计方法及步骤

10.2 微型计算机控制的自动装箱系统 10.3 智能型FR1151压力变送器

10.4 加热炉温度控制系统

Page 2: 第 10 章  微型机控制系统的设计

通过前面各章的学习,已经掌握了微型计算机控制系统 I/O 接口的扩展方法,模拟量输入 / 输出通道的设计,常用控制程序的设计方法,数据处理及非线性补偿技术, PID 控制器以及模糊控制方法等。它们是设计嵌入式系统硬件及软件的基础。有了这些基础以后,就可以进行微型计算机控制系统及智能化仪器的设计。

第 10 章 微型机控制系统设计

微机控制技术

Page 3: 第 10 章  微型机控制系统的设计

第 10 章 微型机控制系统设计

微型计算机控制系统设计包括两个内容:( 1 )微型计算机控制系统的设计;( 2 )智能化仪器的设计。

微机控制技术

Page 4: 第 10 章  微型机控制系统的设计

第 10 章 微型机控制系统设计

微型计算机控制系统是以微型计算机(或单片机)为核心部件,扩展一些外部接口和设备,组成工业控制机的系统,主要用于工业过程控制。智能化仪器中一般采用单片机。单片机作为仪器中的一个部件,用以完成特定的功能,一般规模比较小,设计也相对容易,通常称为嵌入式系统。由于单片机的功能越来越强,所以它的应用非常广泛。在中小型控制系统中,单片机基本上取代了微型计算机,在智能化仪器中更是独领风骚。

微机控制技术

Page 5: 第 10 章  微型机控制系统的设计

第 10 章 微型机控制系统设计

在这一章里,首先讲述嵌入式控制系统设计的方法和步骤,然后介绍微型计算机在工业过程控制及智能化仪器中的应用。

微机控制技术

Page 6: 第 10 章  微型机控制系统的设计

第 10 章 微型机控制系统设计

10.1 微型机控制系统设计方法及步骤10.2 微型计算机控制的自动装箱系统10.3 智能型 FR1151 压力变送器10.4 加热炉温度控制系统

Page 7: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

微型机控制系统的设计既是一个理论问题,又是一个工程实际问题。它包括自动控制理论、计算技术、计算方法,也包括自动检测技术与数字电路,是一个多学科的应用。

1 .微型机控制系统设计要具备以下几方面的知识和能力:

微机控制技术

Page 8: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

( 1 )硬件基础知识。 首先必须具有一定的硬件基础知识。这些硬件

不仅包括各种微型计算机、单片机、存储器及 I/O 接口,而且还包括对仪器或装置进行信息设定的键盘及开关、检测各种输入量的传感器、控制用的执行装置、与微型计算机及各种仪器进行通信的接口,以及打印和显示设备等。

微机控制技术

Page 9: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

( 2 )软件设计能力。其次,需要具备一定的软件设计能力。即能够

根据系统的要求,灵活地设计出所需要的程序,主要有数据采样程序、 A/D 及 D/A 转换程序、数码转换程序、数字滤波程序、标度变换程序、键盘处理程序、显示及打印程序、通信程序以及各种控制算法及非线性补偿程序等。

微机控制技术

Page 10: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

( 3 )具有综合运用知识的能力。 第三,具有综合运用知识的能力。必须善于将

一台微型计算机化仪器或装置的复杂设计任务划分成许多便于实现的组成部分。特别对软件、硬件折中问题能够恰当地处理。设计微型计算机控制系统的一般原理是先选择和组织硬件,构成最小系统;其次,当硬件、软件之间需要折中协调时,通常解决的办法是尽量减少硬件(以便使系统的价格降到最低);接着,应满足设计中各方面对软件的要求。

微机控制技术

Page 11: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

因此,就一台智能化仪器而言,衡量其设计水平时,往往看它在“软硬兼施”方面的运用能力。通常情况下,硬件实时性强,但会使系统增加投资,且结构复杂;软件可避免上述缺点,但是实时性比较差。

微机控制技术

Page 12: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

( 4 )掌握生产过程的工艺性能及被测参数的测量方法最后,还必须掌握生产过程的工艺性能及被测

参数的测量方法,以及被控对象动态、静态特性,有时甚至要求出被控对象的数学模型。

微机控制技术

Page 13: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

2 .微型机控制系统设计内容 ( 1 )控制系统总体方案设计。包括系统的要求、控

制方案的选择,以及工艺参数的测量范围等; ( 2 )选择各参数检测元件及变送器; ( 3 )建立数学模型及确定控制算法; ( 4 )选择微型机,并决定是自行设计还是购买成套

设备;

微机控制技术

Page 14: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

( 5 )系统硬件设计,包括接口电路、逻辑电路及操作面板

( 6)系统软件设计,包括管理、监控程序以及应用程序的设计;

( 7)系统的调试及实验。

微机控制技术

Page 15: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

微型机控制系统设计包括微型机控制系统和智能化仪器两部分,除控制系统的多通道输出外,其余部分二者的设计基本相同。

单片机控制系统的设计与微型计算机控制系统的设计并无本质区别,两者的设计思想、方法和步骤基本上是一致的。不同的是由于单片机集成度高,各种功能齐全,只要合理选择单片机的机型,便可减少系统的接口电路。另外,单片机内有 4 种存储器,扩展时要根据系统的要求合理选择各部分的容量。

微机控制技术

Page 16: 第 10 章  微型机控制系统的设计

10.1 微型机控制系统设计方法及步骤

10.1.1 控制系统总体方案的确定10.1.2 微型计算机及接口的选择10.1.3 控制算法的选择10.1.4 控制系统的硬件设计10.1.5 控制系统软件设计10.1.6 Prodeus 虚拟软件的应用

Page 17: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

确定微型机控制系统总体方案,是进行系统设计最重要、最关键的一步。总体方案好坏,直接影响整个控制系统的投资、调节品质及实施细则。

总体方案的设计主要是根据被控对象的工艺要求确定 。

微机控制技术

Page 18: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

1. 确定控制系统方案 根据系统的要求,首先确定系统采用开环系统还是闭环系统,或者是数据处理系统。如果是闭环控制系统,则还要求确定整个系统采用直接数字控制( DDC),还是采用计算机监督控制( SCC),或者采用分布式控制。

微机控制技术

Page 19: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

在单片机系统中,由于位总线增强型 8044 单片机的出现,使得单片机特别适合构成分布式控制系统。目前, Intel 公司已经研制出的分布式控制模块( iDCM)就是建立在位总线的基础上的。选用 iDCM可以构成各种专用的分布式控制网络,并可以通过 iDCM模板将过去已有的多总线(MULTBUS)用户系统,各种 86/3XX开发系统和工业 PC系统相连接,或以它们为后备机对全网络进行控制。

微机控制技术

Page 20: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

值得说明的是,近年来出现的现场总线系统应给以特别的关注,它将给控制系统带来革命性的飞跃。

微机控制技术

Page 21: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

2. 选择检测元件 在确定方案的同时,必须选择好被测参数的测

量元件,它是影响控制系统精度的首要因素。测量各种参数的传感器,如温度、流量、压力、液位、成分、位移、重量、速度等,种类繁多,规格各异,因此,需要正确地选择测量元件。目前许多生产厂家已经开发和研制出专门用于微型计算机系统的集成化传感器,因而给微型计算机系统参数检测带来极大的方便。

微机控制技术

Page 22: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

3. 选择执行机构 执行机构是微型计算机控制的重要组成部件。执行机

构的选择一方面要与控制算法匹配,另一方面要根据被控对象的实际情况决定。常用的执行机构有以下 4种。

微机控制技术

Page 23: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

(1) 电动执行机构具有响应速度快,与计算机接口连接容易等优点,因而成为计算机控制系统的主要执行机构。如 DKJ或 DKZ电动执行器,专门用来把输入的 4~ 20mA直流信号转换成相应的转角位移或线位移,以带动风门、挡板、阀门等动作,从而完成自动调节的任务。

微机控制技术

Page 24: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

(2) 气动调节阀具有结构简单,操作方便,使用可靠,维护容易,防火防爆等优点,目前广泛应用于石油、冶金、电力系统中。此种阀门再配以电-气阀门定位器,如ZPD-01 电气阀门定位器,将 4~20mA 的直流信号转换成 0.02~ 0.1MPa的标准气压信号,以便驱动薄膜调节阀,并利用气动薄膜阀阀杆位移进行反馈,来改善阀门位置的线性度,克服阀杆的各种附加摩擦力和消除被调介质压力的变化影响,从而使阀门位置能按调节信号实现正确定位。

微机控制技术

Page 25: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

(3) 由于步进电机可以直接接受数字量,而且具有速度快,精度高等优点,所以,随着计算机控制技术的发展,用步进电机做执行机构的控制系统逐年增加。如数控机床、 X-Y 记录仪、高射炮自动跟踪、电子望远镜和大型电子显微镜、旋转变压器、多圈电位器等,都采用步进电机。

微机控制技术

Page 26: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

(4) 液压伺服机构(如油缸和油电机)将油液的压力能转换成机械能,驱动负载直线或回转运动。液压传动的主要优点是:①能方便地进行无级调速;②单位重量的输出功率大,结构紧凑,惯性小,且能传送大扭矩和较大的推力;③控制和调节简单、方便、省力,易于实现自动控制和过载保护。

微机控制技术

Page 27: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

4. 选择输入 / 输出通道及外围设备 计算机控制系统过程通道通常应根据被控对象参

数的多少来确定,并根据系统的规模及要求,配以适当的外围设备,如打印机、 CRT、磁盘驱动器、绘图仪、 CDROM等。

选择时应考虑以下一些问题。1. 被控对象参数的数量;2. 各输入 / 输出通道是串行操作还是并行操作;3. 各通道数据的传递速率;4. 各通道数据的字长及选择位数;5. 对显示、打印有何要求。

微机控制技术

Page 28: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

5. 画出整个系统原理图 前面四部完成以后,结合工业流程图,最后要画

出一个完整的控制系统原理图,其中包括各种传感器、变送器、外围设备、输入 / 输出通道及微型机计算机。它是整个系统的总图,要求简单、清晰、明了。

微机控制技术

Page 29: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

需要说明的是,在确定系统总体方案时,对系统的软件、硬件功能要做统一的综合考虑。因为一种功能往往既能由硬件实现,也可用软件实现。到底采用什么方式比较合适,要根据实时性要求及整个系统的性能/价格比,加以综合平衡后确定。一般而言,使用硬件完成速度比较快,可节省 CPU的机时,但系统比较复杂,而且价格比较贵。用软件实现则比较经济,但要占用更多的机时。

微机控制技术

Page 30: 第 10 章  微型机控制系统的设计

10.1.1 控制系统总体方案的确定

所以,一般的原则是,在机时允许的情况下,尽量采用软件。如果系统控制回路比较多,或者某些软件设计比较困难时,则可考虑用硬件完成。总之,一个控制系统中,哪些部分用硬件实现,哪些部件用软件完成,都要根据具体情况反复进行分析、比较后确定。

在确定系统的总体方案时,要与搞工艺的部门互相配合,并征求现场操作人员的意见后再行设计。

微机控制技术

Page 31: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

在前边两种控制算法中,直接数字控制( DDC),由于某些被控对象的数学模型难以建立,因而给应用带来一定的困难。在 PID 控制中虽然不用建立模型,但对任何系统统统采用比例( P )、积分( I )、微分( D )三种控制算法似乎千篇一律,而效果也不禁那么理想,且计算较麻烦,因而实时性受到一定的影响。

微机控制技术

Page 32: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

模糊控制既不用像 DDC控制那样要求被控系统的数学模型,而且也不象 PID 控制那么“呆板”。它是一种非常灵活的控制,只要根据实验数据找出 FUZZY控制规律,便能达到所要求的控制效果。这是近年来微型计算机控制算法的一大发展,受到了广泛的关注。

微机控制技术

Page 33: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

在总体方案确定之后,首要的任务是选择一台合适的微型机。正如第一章所讲的,微型机的种类繁多,选择合适的微型机是微型机控制系统设计的关键。

微型机系统设计通常有两种作法。 1. 选用现成的微型机系统

微机控制技术

Page 34: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

( 1 )工业控制机如果系统的任务比较大,需要的外设比较多,

如打印机、 CRT等,而且设计时间要求比较紧,不妨选用一台现成的工业控制机,如工业 PC、 STD总线工业控制机等。这些机器不仅提供了具有多种装置的主机系统板,而且还配备了各种接口板,如多通道模拟量输入 / 输出板,开关量输入 / 输出板,CRT图形显示板,扩展用 RS-232-C, RS-422 和 RS-485总线接口板, EPROM智能编程板等。

微机控制技术

Page 35: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

这些系统模块一般采用 PC总线和 STD总线。它们具有很强的硬件功能和灵活的 I/O 扩展能力,不但可以构成独立的工业控制机,而且具有较强的开发能力。这些机器不仅可使用汇编语言,而且可使用高级语言,如BASIC语言、 C语言等。在工业 PC中,还配有专用的组合软件,给微型计算机控制系统的软件设计带来了极大的方便。

微机控制技术

Page 36: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

( 2 )单片机系统和 TP801 单片机一样,目前有一些由单片机组

成的小系统可供选择。它们大都具有单片机、存储器及 I/O 接口、 LED 显示器和小键盘,通常使用汇编语言,再配以各类 I/O 接口板,即可组成简单的控制系统。这种机器的特点是价格便宜,常用于小系统或顺序控制系统。

微机控制技术

Page 37: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

① 选主机时要适当留有余地,既要考虑当前应用,又要照顾长远发展。因此,要求系统有较强的扩展能力;

② 主机能满足设计要求,外设尽量配备齐全,最好从一个厂家配齐;

③ 系统要具有良好的结构,便于使用和维修,尽可能选购具有标准总线的产品;

④ 要选择那些技术力量雄厚,维修力量强,并能提供良好技术服务的厂家的产品;

由于单片机品种繁多,选用整机时应特别注意以下几点:

微机控制技术

Page 38: 第 10 章  微型机控制系统的设计

⑤ 图纸、资料齐全,备品备件充足;⑥ 有丰富的系统软件,如汇编、反汇编、交叉汇编、

DEBUG操作软件、高级语言、汉字处理软件等。特别对系统机要求具有自开发能力,最好能配备一定的应用软件。对单片机来讲,要有比较完整的监控程序。

Page 39: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

2. 利用单片机芯片自行设计 选择合适的单片机芯片,针对被控对象的具体任务,自行开发和设计一个单片机系统 ,是目前微型机系统设计中经常使用的方法。这种方法具有针对性强、投资少、系统简单、灵活等特点。特别是对于批量生产,更有其独特的优点。

微机控制技术

Page 40: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

事实上,目前已经具备了单片机系统开发工作的条件:一是有了各种各样的开发工具;二是市场芯片资源丰富,且价格便宜;三是技术已经成熟,现在有很多关于单片机的图书、资料供设计者参考。利用各种硬件电路、各种系统软件和应用软件,可以方便地进行系统设计。

微机控制技术

Page 41: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

下面提出几条原则供选择时参考。( 1 )选用内部不含 ROM或 EPROM的芯片比较合适,如 8031 ,通过外部扩展 ROM和 RAM即可构成一个系统。这样,不需专用设备即可固化应用程序。

( 2 )若设计的系统批量比较大,可选用带 ROM或 EPROM的单片机,如 8051 , 8751 和 89C51 等,这样可使系统更加简单。

AT89C52

微机控制技术

Page 42: 第 10 章  微型机控制系统的设计

AT89S52

AT89S52 具有如下特点: ●40 个引脚, ● 8k Bytes Flash片内程序存储器, ● 256 bytes的随机存取数据存储器( RAM), ● 32 个外部双向输入 / 输出( I/O )口, ● 5 个中断优先级 2层中断嵌套中断, ● 2 个 16 位可编程定时计数器 , ● 2 个全双工串行通信口, ●看门狗(WDT)电路,片内时钟振荡器。

Page 43: 第 10 章  微型机控制系统的设计

10.1.2 微型机及接口的选择

( 3 )如果需要用高级语言,则可选用芯片内部固化高级语言编译(或解释)程序的单片机。如Z8671 内固化有 BASIC/DEBUG解释程序; 8052 内固化有 BASIC语言; R65F11 ( R65F12 )内固化有 FORTH语言; 8044 中则固化有实时任务操作系统 iRMX-51以及最近几年出现的 C51 , C96等,给用户带来了极大的方便。

( 4 )根据用户的特殊要求及性能价格比等诸因素,注意选用具有特殊功能的单片机如带有 4 个捕获通道的 87C51FX系列。

微机控制技术

Page 44: 第 10 章  微型机控制系统的设计

10.1.3 控制算法的选择

当控制系统的总体方案及机型选定之后,采用什么样的控制算法才能使系统达到要求,这是非常关键的问题。

微机控制技术

Page 45: 第 10 章  微型机控制系统的设计

10.1.3 控制算法的选择

1. 直接数字控制 当被控对象的数学模型能够确定时,可采用直接数字

控制,如最少拍随动系统,最少拍无波纹系统,以及大林算法等;此外,还有最小二乘法系统辨识、最优控制及自适应控制等。所谓数学模型就是系统动态特性的数学表达式。它表示系统输入、输出之间的关系。一般多用实验的方法测出系统的飞升特性曲线,然后再由此曲线确定出其数学模型,因而加快了系统模型的建立。当系统模型建立以后,即可选定上述某一种算法,设计数字控制器,并求出差分方程。计算机的主要任务就是按此差分方程计算出控制量,并输出,进而实现控制。

微机控制技术

Page 46: 第 10 章  微型机控制系统的设计

10.1.3 控制算法的选择

2. 数字化 PID 控制 由于被控对象是复杂的,因此并非所有的系统均可求

出数学模型;有些即使可以求出来,但由于被控对象环境的影响,许多参数经常变化,因此很难进行直接数字控制。此时最好选用数字化 PID 控制。在 PID 控制算法中,以位置型和增量型两种 PID 为基础,根据系统的要求,可对 PID 控制进行必要的改进。通过各种组合,可以得到更圆满的控制系统,以满足各种不同控制系统的要求。例如串级 PID 控制就是人们经常采用的控制方法之一。

微机控制技术

Page 47: 第 10 章  微型机控制系统的设计

10.1.3 控制算法的选择

所谓串级控制就是第一级数字 PID 的输出不直接用来控制执行机构,而是作为下一级数字 PID 的输入值,并与第二级的给定值进行比较,其偏差作为第二级数字 PID 的控制量计算的参数。照此办法,也可以实现多级 PID 嵌套,如图 10.1 所示。

微机控制技术

Page 48: 第 10 章  微型机控制系统的设计

图 10.1 串级控制方块图

微机控制技术

Page 49: 第 10 章  微型机控制系统的设计

10.1.3 控制算法的选择

3. 模糊控制 在前边两种控制算法中,对于直接数字控制( DDC),由于某些被控对象的数学模型难以建立,因而给应用带来一定的困难。在 PID 控制中虽然不用建立模型,但对任何系统全部采用比例( P )、积分( I )、微分( D )三种控制算法似乎千篇一律,有时效果也不甚理想,且计算较麻烦,因而实时性受到一定的影响。

微机控制技术

Page 50: 第 10 章  微型机控制系统的设计

10.1.3 控制算法的选择

模糊控制既不用像 DDC控制那样要求有严格的被控系统数学模型,也不像 PID 控制那么“呆板”。它是一种非常灵活的控制方法,只要根据实验数据找出 Fuzzy控制规律,便能达到所要求的控制效果。这是近年来微型计算机控制算法的一大发展,受到了广泛的关注。

微机控制技术

Page 51: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

尽管微型计算机集成度高,内部包含 I/O 控制线、 ROM、 RAM和定时器,但在组成控制系统时,扩展接口仍是设计者经常遇到的任务。扩展接口有两种方案,一种是购置成品接口板,如 A/D 转换接口板、 D/A 转换接口板、开关量 I/O 接口板(带光电隔离器或不带光电隔离器)、实时时钟板、步进电机控制板、可控硅控制板等。扩展的接口板数量及品种视系统而论。这主要适用于工业 PC和 STD总线工业控制机系统。另一种方案是根据系统的实际需要,选用合适的芯片进行设计,这主要包括以下几方面的内容。

微机控制技术

Page 52: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

1. 存储器扩展 微型机系统要扩展的存储器主要有用来存放程

序的 EPROM,存放数据的 E2PROM,存放随机采样数据的 RAM。用户可根据需要进行选择。

微机控制技术

Page 53: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

2. 模拟量输入通道的扩展 模拟量输入通道的扩展主要有下面两个问题。( 1 )数据采集通道的结构形式 一般微型机控制系统是多通道系统。因此,选

用何种结构形式采集数据,是进行模拟 量输入通道设计首先要考虑的问题。多数系统都采用共享 A/D 和 S/H形式,如图 10-2 所示,

微机控制技术

Page 54: 第 10 章  微型机控制系统的设计

图 10-2 分时采样、分时转换型多路模拟量输入通道

微机控制技术

Page 55: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

在这一系统中,被测参数经多路开关一个一个地被切换到S/H和 A/D 转换器进行转换。由于各参数是串行输入的,所以转换时间比较长,但它最大的优点是节省硬件开销,这是目前微型机系统中应用最多的一种模拟量输入通道结构形式。

但是,当被测参数为几个相关量时,则需选用多路 S/H,共享 A/D形式,如图 10-3 所示,

微机控制技术

Page 56: 第 10 章  微型机控制系统的设计

图 10-3 同时采样、分时转换型多路模拟量输入通道

微机控制技术

Page 57: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

该电路与图 10-2 相比,每个模拟量输入通道增加一个 S/H,其目的是可以采样同一时刻的各个参数,以便进行比较。对于那些参数比较多的分布式控制系统,可把模拟量先就地进行 A/D 转换,然后再送到主机中处理。对于那些被测参数相同(或相似)的多路数据采集系统,为减少投资,可采用模拟量多路转换,共享仪用放大器、 S/H和 A/D 的所谓低电平多路切换形式。

微机控制技术

Page 58: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

(2) A/D 转换器的选择 设计时一定要根据被控对象的实际要求选择

A/D 转换器。在满足系统要求的前提下, 尽量选用位数比较低的 A/D 转换器。近年来,

又研制出一些新型的高精度廉价 A/D 转换器,如V/F 变换器以及串行 A/D 转换器。由于单片机(MCS-51 )内含有两个 16 位定时器 / 计数器及现成的串行口,因而采用 V/F 变换器以及串行 A/D 转换器更有其独特的优点。

微机控制技术

Page 59: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

另一方面,近年来发展起来的数据采集芯片,如 AD363 、 DAS1128、MAX1202/1203 、MAX1245/1246等,在一个芯片中具备了多路开关( 4 、 8或 16路)、放大器、 S/H和 12位 A/D 等多种电路,将给模拟通道的设计带来极大的方便。但目前这种芯片价格还比较贵。

微机控制技术

Page 60: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

3. 输出通道的扩展 模拟量输出通道是微型机控制系统与执行机构

(或控制设备)连接的纽带和桥梁。设计时,要根据被控对象的通道数及执行机构的类型进行选择。对于那些可直接接受数字量的执行机构,可由微型机直接输出数字量,如步进电机或开关、继电器系统等。

微机控制技术

Page 61: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

对于那些需要接收模拟量的执行机构(如电动、气动执行机构、液压伺服机构阀等),则需要用 D/A 转换器把数字量变成模拟量后,再带动执行机构。

和输入通道一样,输出通道的设计也有两个方面的问题需要考虑。

微机控制技术

Page 62: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

( 1 )输出通道的连接方式 模拟量输出通道除了可靠性和精度外,还必须使

输出具有保持功能,以保证被控对象可靠地工作。保持器的主要作用是在新的信号到来之前,使本次控制信号保持不变。保持器有两种,一种是数字保持器(即锁存器),一种是模拟保持器。因此,模拟量输出通道有两种结构形式。

微机控制技术

Page 63: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

①每个通道设置一个 D/A 转换器形式 这种结构形式,如图 10-4 所示。 在图 10-4 中,每一个通道设置一个 D/A 转换器,

这是一种数字保持的方案。其优点是可靠性高、速度快,即使某一路出现故障,也不会影响其他通路的工作。但它使用 D/A 转换器数量较多。单片多 D/A 转换器结构的出现,更给这种应用带来极大的方便。例如,MAX5250 ,是一个低功耗, 4 通道 10位串行输入 D/A 转换器; AD7226是一个四通道 8位并行 D/A 转换器。

微机控制技术

Page 64: 第 10 章  微型机控制系统的设计

图 10-4 每通道一个 D/A 转换器原理框图

微机控制技术

Page 65: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

②多通道共享 D/A 转换器结构形式 此种结构形式,如图 10-5 所示。 在这种结构中,由于共用一个 D/A 转换器,各

通道必须分时进行工作,因而必须在每一个通道加上一个采样 /保持器。这种结构形式的优点是可节省价格比较昂贵的 D/A 转换器,但实时性及可靠性比较差,所以只适用于通道数比较少且转换速度要求不太高的场合,或者采用高精度 D/A 转换器时。

微机控制技术

Page 66: 第 10 章  微型机控制系统的设计

图 10-5 多通道共享 D/A 转换器结构形式原理图

微机控制技术

Page 67: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

( 2 ) D/A 转换器的选择 当系统中 D/A 转换器的输出只作为执行机构的控

制信号时,相对来讲,精度要求不高,所以一般选用8 位 D/A 转换器即可。但是,如果 D/A 转换器的输出用作显示、 X-Y 记录、或位置控制时,由于精度要求比较高,所以需选用 10位、 12位或更高位数的 D/A转换器。

微机控制技术

Page 68: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

近年来,随着微型机控制技术的发展,一些厂家设计了许多结构简单,适用的新型 D/A 转换器。如多通道D/A 转换器、串行 D/A 转换器、电压输出 D/A 转换器等等,用户可根据自己的需要选用。

另一方面,在进行 D/A 转换电路设计时,往往同时需要设计 V/I 或 I/V变换电路。

微机控制技术

Page 69: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

4 .开关量 I/O 接口设计 在微型机控制系统中,除了模拟量输入 / 输出通

道外,经常遇到的还有开关量 I/O 接口。 由于开关量只有两种状态“ 1”或“ 0”,所以,每个开关量只需一位二进制数表示即可。为了提高系统的抗干扰能力,通常采用光电隔离器把微型机与外部设备隔开,如图 10-6所示。

微机控制技术

Page 70: 第 10 章  微型机控制系统的设计

图 10-6 采用光电隔离器的 I/O 接口电路

微机控制技术

Page 71: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

5 .操作面板 操作面板也叫操作台,它是人机对话的纽带。操

作面板根据具体情况,可大可小,大到可以是一个庞大的操作台,小到只有几个功能键和开关。在智能仪器中,操作面板都比较小,一般都需要自己设计。为了操作安全,很多操作面板上都设有电子锁。

微机控制技术

Page 72: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

操作面板的主要功能有:( 1 )输送源程序到存储器,或者通过面板操作来监视

程序执行情况;( 2 )打印、显示中间结果或最终结果;( 3 )根据工艺要求,修改一些检测点和控制点的参数

及给定值;

微机控制技术

Page 73: 第 10 章  微型机控制系统的设计

( 4 )设置报警状态,选择工作方式以及控制回路等;( 5 )完成手动—自动无扰动切换;( 6)进行现场手动操作;( 7)完成各种画面显示。

微机控制技术

Page 74: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

为了完成上述功能,操作台上必须设置一些按键或开关,并通过接口与主机相连。此外,操作台上还需要报警及显示设备等。一般情况下,为便于现场操作人员操作,微型机控制系统都要设计一个操作面板,而且要求使用方便、操作简单、安全可靠,并具有自保功能,即使是误操作也不会给生产带来恶果。

微机控制技术

Page 75: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

6. 系统速度匹配问题 8031时钟频率可在 2MHz~ 12MHz之间任意选择。

在不影响系统速度的前提下,时钟频率选低一些为好。这样可降低系统对其他元器件工作速度的要求,从而降低成本和提高系统的可靠性。当系统频率选得比较高时,要设法使其他元器件与主机匹配。工业上常用的单片机的时钟频率大都为 12MHz。

微机控制技术

Page 76: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

7. 系统负载匹配问题 微型计算机系统设计除了从原理设计着眼外,

还有一个值得注意的问题,就是系统中各个器件之间的负载匹配问题。它主要表现在以下几个方面。

微机控制技术

Page 77: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

( 1 )逻辑电路间的接口及负载匹配问题 在进行系统设计时,有时需要 TTL和 CMOS

两种电路混合使用,但两者要求的电平不一样( TTL高电平为 +5V, CMOS则为 +10~ 18V),因此,一定要注意电流及负载的匹配问题。例如,当TTL电路驱动 CMOS电路时,需要增加 TTLOC门或采用TTL-CMOS电平移动器;而当CMOS电路驱动 TTL电路时,则需要增加如CC4049/CC4050 或 CC40107/74C906等器件作为中间接口。当用 TTL和 CMOS器件带较大负载时,可在其输出端增加放大电路。

微机控制技术

Page 78: 第 10 章  微型机控制系统的设计

10.1.4 控制系统硬件设计

( 2 )MCS-51 系列单片机负载匹配问题 微型计算机与微型计算机之间,微型计算机与 I

/O 接口之间都存在负载匹配问题。下面以 8031 为例,讲一下微型计算机带动负载的能力。 8031 的外部扩展功能是很强的,但是 8031 的 P0 口和 P2 口以及控制信号的负载能力都是有限的;

微机控制技术

Page 79: 第 10 章  微型机控制系统的设计

• P0 口能驱动 8个 LSTTL电路 ;• P2 口能驱动 4 个 LSTTL电路。• 硬件设计时应仔细核对 8031 的负载,使其不超过总负载能力的 70%。

• 若负载过重,需要 P0 口、 P2 口及相关的控制引脚增加驱动器,或者用 CMOS电路代替 TTL电路; 80/85 标准的外围接口电路均采用 CMOS电路。

• TTL一般可驱动 4 个 LSTTL。

Page 80: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

微型机控制系统软件分系统软件和应用软件两大类,详见表 1-1 。如果选用现成的计算机系统,则系统软件一般比较齐全,不用自己设计;如果自行设计一个系统,则系统软件仍要自己设计。不论采用哪一种方法,应用软件一般都得自己设计。近年来,随着微型机应用技术的发展,应用软件也逐步走向模块化和商品化。

微机控制技术

Page 81: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

现在已经有通用的软件程序包出售,如 PID调节软件程序包,常用控制程序软件包、浮点、定点运算子程序包等。还有更高一级的软件包,将各种软件组合在一起,用户只需根据自己的要求,填写一个表格,即可构成目标程序,用起来非常方便。

微机控制技术

Page 82: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

这是应用软件的发展方向。但是,无论怎样,对于一般用户来讲,应用程序的设计总是必不可少的,特别是在智能化仪器的设计中更是如此。由于设计所需要的大部分软件在前几章中已经讲述过,这里不再赘述。下边只对应用软件的设计提出几项要求。

微机控制技术

Page 83: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

1. 控制系统对应用软件的要求( 1 )实时性( 2 )灵活性和通用性( 3 )可靠性

微机控制技术

Page 84: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

( 1 )实时性 由于工业过程控制系统是实时控制系统,所以

对应用软件的执行速度都有一定的要求,即能够在被控对象允许的时间间隔内对系统进行控制、计算和处理。换言之,要求整个应用软件必须在一个采样周期内处理完毕。所以一般都采用汇编语言编写应用软件。但是,对于那些计算工作量比较大的系统,也可以采用高级语言和汇编语言混合使用的办法。

微机控制技术

Page 85: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

通常数据采集,判断及控制输出程序用汇编语言,而对于较为复杂的计算可采用高级语言或高级语言和汇编语言相结合的方法。近年来在单片机系统中,可供使用的高级语言有 PL/M语言、 C51和 C96语言等,都是实时性很强的语言。为了提高系统的实时性,对于那些需要随机间断处理的任务,可采用中断系统来完成。

微机控制技术

Page 86: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

( 2 )灵活性和通用性 在应用程序设计中,为了节省内存和具有较强

的适应能力,通常要求有一定的灵活性和通用性。为此,可以采用模块结构,尽量将共用的程序编写成子程序,如算术和逻辑运算程序、 A/D 与 D/A 转换程序、延时程序、 PID 运算程序、数字滤波程序、标度变换程序、报警程序等。

微机控制技术

Page 87: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

设计人员的任务就是把这些具有一定功能的子程序(或中断服务程序)进行排列组合,使其成为一个完成特定任务的应用程序。现在已经出现一种结构程序,用户只需要根据提示的菜单进行填写即可生成用户程序,使程序设计大为简化。

微机控制技术

Page 88: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

( 3 )可靠性 在微型计算机控制系统中,系统的可靠性是至

关重要的,它是系统正常运行的基本保障。计算机系统的可靠性一方面取决于其硬件组成,另一方面也取决于其软件结构。为保证系统软件的可靠性,通常设计一个诊断程序,定期对系统进行诊断;也可以设计软件陷阱,防止程序失控。近年来广泛采用的watchdog方法,便是增加系统软件可靠性的有效方法之一。有关这方面的详细内容,可参见参考文献 [1]。

微机控制技术

Page 89: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

2. 软件、硬件折衷问题 在微型机过程控制系统设计中,常遇到的一个

问题就是,同样一个功能,既可以通过硬件实现,也可以用软件完成。例如,计数、逻辑控制等。这时,需要根据系统的具体情况,确定哪些用硬件完成,哪些用软件实现。这就是所谓的软件、硬件折衷问题。一般而言,在系统可能的情况下,尽量采用软件,这样可以节省经费。若系统要求实时性比较强,则可采用硬件。在许多情况下,二者兼而有之。例如,在显示电路接口设计中,为了降低成本,可采用软件译码动态显示电路。

微机控制技术

Page 90: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

但是,如果系统要求采样数据多,数据处理及计算任务比较大,若仍采用动态显示电路,则要求采样周期比较短,将不能正常显示。此时,必须增加硬件电路,改为静态显示电路。又比如,在计数系统中,采用软件计数法节省计数器,减少系统开支,但需占用 CPU的大量时间。如果采用硬件计数器可减轻 CPU的负担,但要花一些费用。

微机控制技术

Page 91: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

但是,如果系统要求采样数据多,数据处理及计算任务比较大,若仍采用动态显示电路,则要求采样周期比较短,将不能正常显示。此时,必须增加硬件电路,改为静态显示电路。又比如,在计数系统中,采用软件计数法节省计数器,减少系统开支,但需占用 CPU的大量时间。如果采用硬件计数器可减轻 CPU的负担,但要花一些费用。

微机控制技术

Page 92: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

3 .软件开发过程软件开发大体包括以下几个方面。

( 1 )划分功能模块及安排程序结构。例如,根据系统的任务,将程序大致划分成数据采集模块、数据处理模块、非线性补偿模块、报警处理模块、标度变换模块、数字控制计算模块、控制器输出模块、故障诊断模块等,并规定每个模块的任务及其相互间的关系。

微机控制技术

Page 93: 第 10 章  微型机控制系统的设计

10.1.5 控制系统软件设计

( 2 )画出各程序模块详细流程图。 ( 3 ) 选择合适的语言(如高级语言或汇编语

言)编写程序。编写时尽量采用现有子程序,以提高程序设计速度。

( 4 )将各个模块连结成一个完整的程序。

微机控制技术

Page 94: 第 10 章  微型机控制系统的设计

10.1.6 PRODEUS仿真软件简介

1. PRODEUS 仿真软件功能

ASF高

级图形

析模块

CPU仿

真模型

VS

M

高级布

线 /编辑

AR

动态

器件库

混合

模型

仿

真器

原理图

输入

统 ISIS

Proteus

软件

图 10.7 Proteus 的功能分

布图

Page 95: 第 10 章  微型机控制系统的设计

10.1.6 PRODEUS仿真软件简介

• 1. 智能原理图输入系统—— SIS,系统设计与仿真的基本平台。

• 2.高级 PCB布线编辑软件—— ARES• 在 Proteus 中,从原理图设计、单片机编程、系统仿真到 PCB设计一气呵成,真正实现了从概念到产品的完整设计。

• 3. Proteus产生的文件• .EXE .DBK .BMP .DSN .PWI

可执行文件原理图

Page 96: 第 10 章  微型机控制系统的设计

图 10.8 Proteus 设计流程

Page 97: 第 10 章  微型机控制系统的设计

10.2 微型计算机控制的自动装箱系统

在工业生产中,常常需要对产品进行计数、包装。如果用人工完成不但麻烦,而且效率低,劳动强度大。随着微型计算机控制的普及,特别是单片机的应用,给该类系统的设计带来了极大的方便。在这一节里,将介绍单片机控制包装系统的设计方法,主要讲述顺序控制系统的设计方法以及电机控制的应用。该系统可用于诸如啤酒、饮料等连续包装生产线上。

微机控制技术

Page 98: 第 10 章  微型机控制系统的设计

10.2 微型计算机控制的自动装箱系统

• 10.2.1 自动装箱控制系统的原理• 10.2.2 控制系统硬件设计• 10.2.3 控制系统软件设计

Page 99: 第 10 章  微型机控制系统的设计

10.2.1 自动装箱控制系统的原理

图 10.9 产品自动装箱系统的原理图微机控制技术

Page 100: 第 10 章  微型机控制系统的设计

10.2.1 自动装箱控制系统的原理

如图 10.9所示,系统有两个传送带,即包装箱传送带 1 和产品传送带 2 。包装箱传送带 1 用来传送产品包装箱,其功能是把已经装满的包装箱运走,并用一只空箱来代替。为使空箱恰好对准产品传送带的末端,使传来的产品刚好落入箱中,在包装箱传送带1 的中间装一光电控制器 1 ,用以检测包装箱是否到位。产品传送带 2 将产品从生产车间传送到包装箱。当某一产品被送到传送带的末端,会自动落入箱内,并由检测器 2 转换成计数脉冲。

微机控制技术

Page 101: 第 10 章  微型机控制系统的设计

10.2.1 自动装箱控制系统的原理

产品计数可以由硬件完成(如MCS-51 系列单片机中的定时器 / 计数器),也可以用软件来完成。本系统采用软件计数方法。

微机控制技术

Page 102: 第 10 章  微型机控制系统的设计

10.2.1 自动装箱控制系统的原理

系统工作步骤如下: ( 1 )用键盘设置每个包装箱所需存放的零件数量

以及每批产品的箱数,并分别存放在 PARTS和 BOXES单元中。

( 2 )接通电源,使传送带 1 的驱动电机运转,带动包装箱前行。通过检测光电传感器 1 的状态,判断传送带 1 上的包装箱是否到位。

( 3 )当包装箱运行到检测器 1 的光源和光传感器的中间时,关断电机电源,使传送带 1停止运动,等待产品装箱。

微机控制技术

Page 103: 第 10 章  微型机控制系统的设计

10.2.1 自动装箱控制系统的原理

( 4 )启动传送带 2 的驱动电机,使产品沿传送带向前运动,并装入箱内。

( 5 )当产品一个一个地落下时,将产生一系列脉冲信号,用检测器 2 检测从检测器 2 来的输出脉冲,由计算机进行计数,并不断地与存放在 PARTS单元中的给定值进行比较。

( 6)当零件数值未达到给定值时,控制传送带 2继续运动(装入产品);直到零件个数与给定值相等时,停止传送带 2 ,不再装入零件。

微机控制技术

Page 104: 第 10 章  微型机控制系统的设计

10.2.1 自动装箱控制系统的原理

( 7)再次启动传送带 1 ,使装满零件的箱体继续向前运动,并把存放箱子数的内存单元加 1 ,然后再与给定的产品箱数进行比较。如果箱数不够,则带动下一个空箱到达指定位置,继续上述过程。直到产品箱数与给定值相等,停止装箱过程,等待新的操作命令。

微机控制技术

Page 105: 第 10 章  微型机控制系统的设计

10.2.1 自动装箱控制系统的原理

只要传送带 2 上的零件和传送带 1 上的箱子足够多,这个过程可以连续不断地进行下去。这就是产品自动包装生产线的流程。必要时操作人员可以随时通过停止( STOP )键停止传送带运动,并通过键盘重新设置给定值,然后再启动。

微机控制技术

Page 106: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

针对上述任务,采用 8031 单片机设计一个最小系统。为了读键盘给定值及完成检测和控制,系统中扩展一片 8255A 可编程接口及程序存储器 EPROM 2764 。其原理系统图,如图 10.8所示。

如图 10.10 中所示, 8031 , 74LS373 , 2764组成最小系统。 8031 通过 8255A 的 PB口实现给定值或零件计数显示。 PA 口读入键盘的给定值, PC口高 4位设为输入方式,用于检测光电管和 START,STOP 两个键的状态。 PC口低 4位设为输出方式;其中 PC0 控制传送带 1 的动力电机; PC1 控制传送带 2 的动力电机。

微机控制技术

Page 107: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

为了提高系统的可靠性及减少误操作,用 PC2 ,PC3 两条 I/O 线控制两个状态指示灯, V1 为红色,V2 为绿色;当系统出现问题,如没有设置给定值时,启动 START键,则 V1灯亮,提醒操作者注意,需重新设置参数后再启动。如果系统操作运行正常,则绿灯 V2亮。

下面介绍给定值电路及控制电路。关于显示电路请参阅本书第 3 章 3.2节。

微机控制技术

Page 108: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

1. 给定值电路 如图 10.10 所示, 8255A 为给定值输入接口。为

了使系统简单,设计了一个由二极管矩阵组成的编码键盘,如图 10.11 所示。

微机控制技术

Page 109: 第 10 章  微型机控制系统的设计

图 10.10 包装系统控制原理图

微机控制技术

Page 110: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

键盘输出信号 D , C, B, A ( BCD 码)分别接到 8255A 的 A 口 PA3~ PA0 ,键选通信号KEYSTROBE(高电平有效),经反向器接到 8031 的 INT0管脚。当某一个键按下时, KEYSTROBE为高电平,经反相后的下降沿向 8031申请中断。 8031响应后,读入 BCD 码值,作为给定值,并送显示。由于系统设计只有 3位显示,所以最多只能给定 999。输入顺序为从最高位(百位数)开始。

微机控制技术

Page 111: 第 10 章  微型机控制系统的设计

图 10.11 编码键盘原理图

微机控制技术

Page 112: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

当键未按下时,所有输出端均为高电平。当有键按下后该键的 BCD 码将出现在输出线上。例如,按下“ 7”键时,与键“ 7”相连的一个二极管导通,所以 D 线上为低电平, A 、 B、 C仍为高电平,因此输出编码为 0111 ,其余依次类推。

当任何一个键按下时,四输入与非门 7420产生一个高电平选通信号KEYSTROBE,此信号经反相器后向 8031申请中断。

微机控制技术

Page 113: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

2. 控制电路 包装系统控制电路主要有两部分:一是信号检测,光电检测器 1判断包装箱是否到位,光电检测器 2 用于装箱零件计数;再一部分就是传送带电机控制。检测部分比较简单,就不再详述。下边主要介绍一下电机控制电路

微机控制技术

Page 114: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

为了提高抗干扰能力,系统采用了光电隔离技术。电机可以采用多种方法控制,如固态继电器( SSR )、可控硅( SCR )及大功率场效应管等,详见本书第 4 章 4.2节。本系统采用固态继电器( SSR1和 SSR2 ),其控制电路原理如图 10.12 所示。

微机控制技术

Page 115: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

如图 10.12 所示, 8255A 的 PC0 控制传送带 1的驱动电机, PC1 控制传送带 2 的驱动电机。当按下启动键( START)后,使 PC0 输出高电平,经反相后变为低电平,交流固态继电器( SSR1 )发光二极管亮,因而使得SSR1导通,交流电机通电,使传送带 1带动包装箱一起运动。当包装箱行至光源与光电检测器 1之间时,光被挡住,使光电传感器输出为高电平。当微型机检测到此高电平后, PC0 输出低电平,传送带 1 电机停止。并同时使传送带 2 电机通电( PC1 输出高电平),带动零件运动,使零件落入包装箱内。

微机控制技术

Page 116: 第 10 章  微型机控制系统的设计

10.2.2 控制系统硬件设计

每当零件经过检测器 2 的光源与光电传感器之间时,光电传感器输出高电平。当微型机检测到此信号后在计数器中加 1 ,并送显示。然后再与给定的零件值进行比较。如果计数值小于给定值,则继续计数;一旦计数值等于给定值,则停止计数;此时关断传送带 2的电源,并接通传送带 1 的电源,让装满零件的箱子移开,同时带动下一个空箱到位,并重复上述过程。

微机控制技术

Page 117: 第 10 章  微型机控制系统的设计

图 10.12 电机控制电路

微机控制技术

Page 118: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

通过上述分析可知,本系统键盘的作用主要是输入给定值。当给定值设定后,在包装过程中就不再改动。因此为了提高实时性,系统通过中断方式( INT0 )做键盘处理。对包装箱是否到位及零件计数,则采用查询方法,起主程序框图,如图 10.13 所示。

微机控制技术

Page 119: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

中断服务程序主要用来设定给定值,当给定键盘有键按下时, KEYSTROBE输出高电平,经反相器后向 8031申请中断。在中断服务程序中,读入该键盘给定值,一方面存入相应的给定单元( PORTS或 BOXES),另一方面送去显示,以便操作者检查输入的给定值是否正确。

微机控制技术

Page 120: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

本程序输入的顺序是先输入包装箱数( 3位,最大值为 999,按百位、十位、个位顺序输入),然后再输入每箱装的零件数( 3位,最大值为 999,输入顺序同包装箱)。完成上述任务的中断服务程序流程如图10.14 所示。

微机控制技术

Page 121: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

为了设计如图 10.13 和 10.14 所示的程序,首先需设置有关内存单元。这里用 8031 内部 RAM的 20H单元的 00H~ 03H四位分别代表电机 1 、电机 2 、报警和正常运行标志单元;用 21H单位的 08H和 09H两位作为零件及包装箱计数标志单元。当计数值等于给定值时,则此两位标志单元置 1 ,否则为 0 。

微机控制技术

Page 122: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

一旦此标志单元为 1 ,则停止计数,把装满的包装箱运走并重新运来一个空箱;若包装箱数已够,则重新开始下一轮包装生产控制过程。如果计数单元超过给定值,将产生报警,告知操作人员计数有误,此时系统会自动停下来,等待操作人员处理。该系统内存单元分配如图 10.15 所示。

微机控制技术

Page 123: 第 10 章  微型机控制系统的设计

图 10.13 包装控制系统主程序框图

Page 124: 第 10 章  微型机控制系统的设计

图 10.14 输入给定值中断服务程序

微机控制技术

Page 125: 第 10 章  微型机控制系统的设计

图 10.15 系统内存单元分配

微机控制技术

Page 126: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

ORG 0000HAJMP MAINORG 0003HAJMP INT0

LED1 EQU 22H ;零件计数单元(百位)LED2 EQU 23H ;(十位)LED3 EQU 24H ;(个位)BOX1 EQU 25H ;包装箱计数单元(百位)BOX2 EQU 26H ;(十位)BOX3 EQU 27H ;(个位)BOXES EQU 28H ;包装箱给定值首地址

根据图 10.11 ~图 10.13 所示可编写出该系统控制程序如下:

微机控制技术

Page 127: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

PARTS: EQU 2BH ;零件给定值首地址PRECNT EQU 2EH ;给定值次数计数单元LEDADD1 EQU 8400H;百位数显示位地址LEDADD2 EQU 8800H;十位数显示位地址LEDADD3 EQU 8C00H ;个位数显示位地址BUFF EQU 2FH ;缓冲单元 ORG 0100H;控制主程序

微机控制技术

Page 128: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

MAIN: MOV SP , #50H ;设堆栈指针 MOV R0 , #22H ; 8031 数据区首地址 MOV A , #00H

MOV R1 , #0DH ;计数器初值CLRZERO: MOV @R0 , A ;清计数、给定值单元

INC R0DJNZ R1 , CLRZERO

MOV 20H, #00H ;清控制单元MOV 21H, #00HMOV DPTR , #8003H ; 8255初始化

微机控制技术

Page 129: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

MOV A , #98H ; 8255 控制字MOVX @DPTR , ASETB IT0 ;设置边沿触发方式SETB EX0 ;设置中断方式 0SETB EA ;开中断MOV R0 , #BOXES

MOV DPTR , #LEDADD1 ;保护显示位地址PUSH DPHPUSH DPL

微机控制技术

Page 130: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

WAIT:MOV A , PRECNT ;等待设置给定参数 CJNE A , #06H,WAIT ;判是否输入完给定值

WORK: SETB 00H ;设置启动传送带电机位SETB 03H ;设置工作正常指示灯位MOV A , 20H ;启动电机 1 和正常指示灯MOV DPTR , #8002HMOVX @DPTR , A

微机控制技术

Page 131: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

LOOP1 :MOVX A ,@DPTRJNB ACC7, LOOP1 ;判包装箱是否到位MOV LED1 , #00H ;清零件计数单元MOV LED2 , #00H

MOV LED3 , #00HLCALLDISPLAY ;显示零件数

CLR 00H ;停包装箱传送带电机位SETB 01H ;设置启动零件传送电机位MOV A , 20H ;启动零件传送电机MOV DPTR , #8002HMOVX @DPTR , A

微机控制技术

Page 132: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

LOOP2 :MOV DPTR , #8002H MOVX A ,@DPTR JNB ACC6, LOOP2 ;判是否有零件 JNB ACC4 , STOP ;判是否按下停止键 LCALL PARTADD1 ;零件加 1 LCALL DISPLAY ;显示已装入的零件

数 LCALL PARTCOMP ;与给定值比较 JB 08H, STOPM ;已装满 AJMP LOOP2 ;未装满,继续等待

装入

微机控制技术

Page 133: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

STOPM: LCALL BOXADD1 ;包装箱数加 1LCALLBOXCOMP ;看是否已装够箱数JB 09H, FINISH ;如果箱数已装够,则

结束LJMP WORK ;否则将继续换新箱包装

FINISH : CLR 00H ;全装完,不用重新设参数, ;即可继续包装

CLR 01HMOV A , 20HMOVX @DPTR , AMOV BOX1 , #00H ;包装箱计数单元清零MOV BOX2 , #00HMOV BOX3 , #00H

微机控制技术

Page 134: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

LOOP3 :MOV DPTR , #8002H ;判是否重新启动MOVX A ,@DPTRJB ACC5 , LOOP3LJMP WORK ;再进行下一轮包装

;停止键处理程序STOP : CLR 00H ;停传送带电机

CLR 01HMOV A , 20HMOVX @DPTR , ALJMP MAIN ;转到主程序,等待重新输入新的

;给定值

微机控制技术

Page 135: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

;中断服务子程序,设置给定值INT0 :MOV DPTR , #8000H ;读入给定值

MOVX A ,@DPTRMOV @R0 , AMOV DPTR , #8001H ;送 8255 B

口MOVX @DPTR , A

POP 2FH ;保护断点POP 30HPOP DPL ;取出显示位地址POP DPHMOVX @DPTR , A ;显示给定值

微机控制技术

Page 136: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

MOV A , DPHADD A , #04H ;求下一个显示位地

址MOV DPH, APUSH DPH ;保护下一位显示地

址PUSH DPLPUSH 30H ;恢复断点PUSH 2FHINC R0 ;计算下一给定值地

址INC PRECNT ;设置参数计数RETI

微机控制技术

Page 137: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

;显示零件数子程序DISPLAY:MOV A , LED1 ;取百位数

MOV DPTR , #SEGTBLMOVC A ,@A+DPTR ;取显示码MOV DPTR , #8001H ;送显示数据到

B口MOVX @DPTR , AMOV DPTR , #LEDADD1 ;显示百位MOVX @DPTR , AMOV A , LED2 ;取十位数MOV DPTR , #SEGTBLMOVC A ,@A+DPTRMOV DPTR , #8001H 微机控制技术

Page 138: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

MOVX @DPTR , AMOV DPTR , #LEDADD2 ;显示十位MOVX @DPTR , A

MOV A , LED3 ;取个位数MOV DPTR , #SEGTBLMOVC A ,@A+DPTRMOV DPTR , #8001HMOVX @DPTR , AMOV DPTR , #LEDADD3 ;显示个位MOVX @DPTR , ARET

微机控制技术

Page 139: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

SEGTBL: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH,

7DH, 07H, 7FH, 67HMOV R0 , #LED3

PARTADD1 :MOV R0 , #LED3 ;零件数加 1子程序MOV A ,@R0ADD A , #01HDA AJB 24H, ADD2MOV @R0 , ARET

微机控制技术

Page 140: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

ADD2 : CLR 24HDEC R0MOV A ,@R0ADD A , #01HDA A

MOV @R0 , AJB 1CH,ADD3RET

ADD3 : CLR 1CHDEC R0MOV A ,@R0ADD A , #01HDA AMOV @R0 , AJB 14H,ADD4RET

微机控制技术

Page 141: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

ADD4 : CLR 14HMOV R0 , #00H

RET;零件数比较子程序PARTCOMP :MOV R0 , #PARTS ;给定零件数

地址MOV R1 , #LED1 ;零件计数单元首地

址MOV R2 , #03H

COMP1 : MOV A ,@R0MOV BUFF ,@R1

CJNE A , BUFF , COMP2INC R0INC R1DJNZ R2 , COMP1 微机控制技术

Page 142: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

SETB 08H ;已装满,置装满标志RET

COMP3 : CLR 08HRET

COMP2 : JNC COMP3LJMP ALARM

;包装箱计数比较子程序BOXCOMP : RET

;(略);包装箱加 1子程序BOXADD1 : RET

;(略);报警处理子程序

微机控制技术

Page 143: 第 10 章  微型机控制系统的设计

10.2.3 控制系统软件设计

ALARM: SETB 02HCLR 00HCLR 01HCLR 03HMOV A , 20HMOV DPTR , #8002HMOVX @DPTR , ALJMP MAIN

微机控制技术

Page 144: 第 10 章  微型机控制系统的设计

10.3 智能型 FR1151 压力变送器

本项目是作者研发的天津市自然科学基金项目,并获得国家发明专利,专利号为 199311.

本发明的最大亮点是把压力直接转换成数字信号送到单片机处理。从而省掉价值昂贵的 A/D 转换器。

Page 145: 第 10 章  微型机控制系统的设计

10.3 智能型 FR1151 压力变送器

10.3.1 FR1151 压力变送器的组成原理10.3.2 FFR1151 系统的硬件设计10.3.3 FFR1151 系统的软件设计

Page 146: 第 10 章  微型机控制系统的设计

10.3.1 FR1151 压力变送器的组成原理

图 10.16

FR1151 压力变速器原

理框图

Page 147: 第 10 章  微型机控制系统的设计

10.3.1 FR1151 压力变送器的组成原理

1. 数据采集• 压力变化→电容 C1 的变化→ 多谐振荡电路充、放电时间( T) → 频率 (f)

• 将方波 (f)送入单片机 89C51 的 T0 计数器,利用 89C51 中 T1 作为定时器。当被测的脉冲上升沿来临时,T0 开始计数,同时T1 定时开始。当T1时间到时,T0停止计数,然后由微型机读取计数器记录时钟脉冲,求得 t时间内所记录的脉冲的个数 N,再根据标度变换公式求出压力值 P(C)。

Page 148: 第 10 章  微型机控制系统的设计

10.3.1 FR1151 压力变送器的组成原理

2. 其他电路( 1 ) LCD 显示压力变送器的工作状态和量程。( 2 ) E2PROM 外部数据存储器。使用的是 I2C总线

串行 E2PROM 24C01 。( 3 ) D/A 转化器 输出 4~20mA 的电流输出 ,串行

输入。 ( 4 )键盘可代替 RF1151 的手操器,用来在现场完成量程的设置与操作。

Page 149: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

• 1 .多谐振荡器

Page 150: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

Page 151: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

• 由图 10.18的波形求得电容 C的充电时间T1 和放电时间T2 各为

2lnln 21211 CRRVV

VVCRRT

TCC

TCC

2ln2 2121 CRRTTT 故电路的振荡周期为

Page 152: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

2ln0

0ln 222 CR

V

VCRT

T

T

2ln2

11

21 CRRTf

振荡频率为 :

Page 153: 第 10 章  微型机控制系统的设计

两 10.3.2 FFR1151 系统的硬件设计组实验 :

图 10.19 C1 与 C2 与 f变化曲线

( 1 )判断 C2带来的频率 f 的变化大于 C1 。

Page 154: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

( 2 )将 R2 设计为一滑线变阻器,确定一个最佳的 R2 ,使得 f的变化范围最大。如图 10.20 所示。

Page 155: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

基准频率 f0 的大小直接影响到量程频率的变化范围, ( 1 ) f0 越大,其频率的变化范围也大。 ( 2 )当 f0 =110KHz ,变化范围 8~10K。 ( 3 )单片机计数器的计数误差小于 1Hz,由此可计

算出这种数字传感器的精度可达±0.000125~0.0001 。

Page 156: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

2 . LCD 显示电路 • ( 1 ) HD61202简介• HD61202 是一种带有列驱动输出的液晶显示控制器,

它可以与行驱动器 HD61203配合使用,组成液晶显示驱动控制系统。

• ( 2 )MGLS-12864液晶模块电路特点• 在MGLS-12864 中,两片 HD61202 的 ADC均接高

电平, RST也接高电平。 /CSA , /CSB=01时选通号片; /CSA , /CSB=10时选通号片。

Page 157: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

( 3 )MGLS-12864 与 8051 系列 CPU的连接

Page 158: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

3 .键盘接口电路

( 1 ) K1—— 加 1键

( 2 ) K2—— 减 1键

( 3 ) K3—— 确认键

Page 159: 第 10 章  微型机控制系统的设计

图 10.23 键盘处理流程图

Page 160: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

• 图 10.24 显示的 6幅画面

Page 161: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

4 . D/A 转换电路 ( 1 )采用 12位串行 D/A 转换器MAX5352 ( 2 )MAX5253 是一个输出电压的数字 / 模拟转换器

( 3 )最后输出为 4—20mA 电流

GainNBVV refout *4096/*

Page 162: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

• 图 10.25 D/A 转换原理电路图 接单片机,模拟 SPI

总线 电压电流转换器

接执行机构

Page 163: 第 10 章  微型机控制系统的设计

10.3.2 FFR1151 系统的硬件设计

5 .数据存储模块( 1 )采用一片 24C02 串行 E2PROM 存储器 。( 2 )采用的是模拟 I2C总线技术。

A0 , A1 , A2全部接 Vcc ,故该从器件的地址为 111

模拟 I2C 总线P1.6 –SCLP1.5--SDA

Page 164: 第 10 章  微型机控制系统的设计

10.3.3 FR1151 系统的软件设计

本系统软件采用模块化结构,根据功能划分为 7个模块。它们是:

• 主程序模块• 压力脉冲自动采集模块;• 量程的自动选择及线性化处理模块;• 键盘处理模块;• 显示模块;• D/A 转换模块。• 数据存储模块

Page 165: 第 10 章  微型机控制系统的设计

10.3.3 FR1151 系统的软件设计

1 .主程序模块

Page 166: 第 10 章  微型机控制系统的设计

10.3.3 FR1151 系统的软件设计

2 .键盘处理模块只有三个键,但功能很强。采用中断处理方法。( 2 )键盘中断子程序

Page 167: 第 10 章  微型机控制系统的设计

10.3.3 FR1151 系统的软件设计

• ORG 0000H• LJMP MAIN• ORG 0003H• LJMP KEYBOARD ;键盘中断入口• ……• MAIN : ;主程序• ……• ……• ……• KEYBOARD: CLR EX0 ;关中断• CLR EA

MOV A,#0FFh• MOV P1,A ;将 P1 口置成输入方式• MOV A,P1 ;读p1值• ANL A,#07H• CJNE A,#07H,ABBB• LJMP FINISH

Page 168: 第 10 章  微型机控制系统的设计

10.3.3 FR1151 系统的软件设计

• ABBB: MOV 20H,A• MOV R0,#0FFh ;延时 10mS,去抖再读• DL1: MOV R1,#0FFH• DL2: DJNZ R1,DL2• DJNZ R0,DL1• MOV A,#0FFh• MOV P1,A• MOV A,P1• ANL A,#07H• CJNE A,20H,FINISH ;判是否有键按下 20H.0~20H.2 为 KK1~KK3

• MOV 20H,A;• JB KK1,KEY1 ;键盘分析,按下为 0• LJMP K1

Page 169: 第 10 章  微型机控制系统的设计

10.3.3 FR1151 系统的软件设计

• KEY1: JB KK2,KEY2• LJMP K2• KEY2: JB KK3,FINISH ;三个键都不是,开中断• LJMP K3• FINISH: SETB EX0 ;开中断• SETB EA• RETI ;返回• ……• ; ----------------------------------------------------------------• K1: …… ; K1 键的服务子程序• ……• RETI• ; ----------------------------------------------------------------• K2: …… ; K2 键的服务子程序• ……• RETI• ; ----------------------------------------------------------------• K3: …… ; K3 键的服务子程序• ……• RETI• ;------------------------------------------------------------------------------

Page 170: 第 10 章  微型机控制系统的设计

10.4 加热炉温度控制系统

• 温度是工业对象中一种重要的参数,特别在冶金、化工、机械各类工业中,广泛使用各种加热炉、热处理炉、反应炉等。由于炉子的种类不同,因此所采用的加热方法及燃料也不同,如煤气、天然气、油、电等。但是就其控制系统本身的动态特性来说,基本上都属一阶纯滞后环节,因而在控制算法上亦基本相同。

• 实践证明,用微型计算机对炉窑进行控制,无论在提高产品质量和数量,节约能源,还是在改善劳动条件等方面都显示出无比的优越性。

• 本节主要介绍由 89C51 单片机组成的温度控制系统的组成原理及程序设计方法。

Page 171: 第 10 章  微型机控制系统的设计

10.4 加热炉温度控制系统

10.4.1 温度控制系统的组成10.4.2 温度控制系统的硬件设计10.4.3 数字控制器的数学模型10.4.4 温度控制系统的软件设计10.4.5 手动后援问题

Page 172: 第 10 章  微型机控制系统的设计

10.4.1 温度控制系统的组成

8座退火炉 → S/H和 A/D 转换器→数据处理→显示→报警→控制计算 →输出控制

Page 173: 第 10 章  微型机控制系统的设计

10.4.1 温度控制系统的组成

Page 174: 第 10 章  微型机控制系统的设计

10.4.2 温度控制系统的硬件设计

• 1. 检测元件及温度变送器• 温度测量范围 0~ 1000℃• 输出信号为 0~ 41.2643mV (镍铬-镍铝热电偶 )

• 0~ 1010℃时对应输出为• 0~ 5V• 12位 A/D 转换器• 采样分辨度为 1010/4096≈0.25℃/LSB

Page 175: 第 10 章  微型机控制系统的设计

2. A/D 转换器及数据采样

Page 176: 第 10 章  微型机控制系统的设计

10.4.2 温度控制系统的硬件设计

• 电路特点:•带采样 /保持器 ,又 A/D 的 STS控制,当 A/D 转换正在进行时, STS输出为高电平,经反相后,变为低电平,送到S/H的逻辑控制端( Logic),使S/H处于保持状态,此时即可开始 A/D 转换 。

• 转换后的数字量由 8031 的数据总线分两次读到CPU寄存器。

• 转换结束后, STS由高电平变为低电平,反相后呈高电平,因而使S/H进入采样状态。这种方法不必单独送 S/H控制信号,所以使系统运行速度加快。

Page 177: 第 10 章  微型机控制系统的设计

10.4.2 温度控制系统的硬件设计

3. 键盘 / 显示接口电路锁存,静态,硬

件译码

中断键盘

Page 178: 第 10 章  微型机控制系统的设计

10.4.2 温度控制系统的硬件设计

4. 报警电路Lai=1 , LBi =0 ,绿灯Lai=0 , LBi =1 ,红灯Lai=1 , LBi =1 ,黄灯Lai=1 , LBi =0 ,熄灭

语音芯片

驱动器

Page 179: 第 10 章  微型机控制系统的设计

10.4.2 温度控制系统的硬件设计

5. 译码电路 控制端00

选择端24=16

输出端

Page 180: 第 10 章  微型机控制系统的设计

10.4.2 温度控制系统的硬件设计

• A15 A14 A13 A12 A11 A10 A9 A8 A7 ~ A0• 1 1 1 1 0 0 0 0 0 ~ 0 0 F000H• 1 1 1 1 0 0 0 1 0 ~ 0 1 F100H • 1 1 1 1 0 0 1 0 0 ~ 0 2 F200H• 1 1 1 1 0 0 1 1 0 ~ 0 3 F300H• 1 1 1 1 0 1 0 0 0 ~ 0 4 F400H• 1 1 1 1 0 1 0 1 0 ~ 0 5 F500H• 1 1 1 1 0 1 1 0 0 ~ 0 6 F600H• 1 1 1 1 0 1 1 1 0 ~ 0 7 F700H• 1 1 1 1 1 0 0 0 0 ~ 0 8 F800H• 1 1 1 1 1 0 0 1 0 ~ 0 9 F900H• 1 1 1 1 1 0 1 0 0 ~ 0 10 FA00H• 1 1 1 1 1 0 1 1 0 ~ 0 11 FB00H• 1 1 1 1 1 1 0 0 0 ~ 0 12 FC00H• 1 1 1 1 1 1 0 1 0 ~ 0 13 FD00H

Page 181: 第 10 章  微型机控制系统的设计

10.4.3 数字控制器的数学模型

10.4.3 数字控制器的数学模型

Page 182: 第 10 章  微型机控制系统的设计

10.4.3 数字控制器的数学模型

•PID 控制

P I D( ) ( ) ( ) ( )P k P k P k P k

P I D( ) ( ) ( ) ( )P k P k P k P k P P( ) ( )P k K E k

I I0

( ) ( )k

j

P k K E j

I I( ) ( 1)K E k P k

D D( ) ( ) ( 1)P k K E k E k

Page 183: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

1. 控制系统主程序

Page 184: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

• ;温度控制系统主程序• ;微型机温度控制系统译码器地址分配• PCTL8255 EQU 0F103H• PC8255 EQU 0F102H

• ;外部 RAM地址分配• CDATA EQU 00H ;数据采集单元首地址• FDATA EQU 50H ;数字滤波后数据首地址

• ;内部 RAM地址分配• ALARMAX EQU 00H ;上限报警标志位首地址• ALARMIN EQU 08H ;下限报警标志位首地址

Page 185: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

• ORG 0000H• LJMP MAIN• ORG 0003H• LJMP INT0• ORG 000BH• LJMP INTT0• ORG 001BH• LJMP INTT1• ;主程序• ORG 0100H• MAIN: MOV SP , #69H• MOV A , #80H ;设置 8255A 工作方式• MOV DPTR , # PCTL8255• MOVX @DPTR , A

Page 186: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

MOV 20H, #00H ;清上、下限报警标志单元• MOV 21H, #00H• ;清数据采集单元• MOV R0 , #00H• MOV R1 , #50H• MOV A , #00H• MOV P2 , #0F0H• CLEAR2 :MOVX @R0 , A• INC R0• DJNZ R1 , CLEAR2

Page 187: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

;清中间结果单元 (略);清显示及缓冲区 (略)• LCALLDESPLAY ;调显示子程序• LCALLALARM ;输出报警指示灯• SETB TR0• SETB ET0• SETB ET1• SETB EA• HERE: AJMP HERE

Page 188: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

2. 定时采样处理中断服务程序• ( 1 )数据采集;• ( 2 )数字滤波;• ( 3 )标度变换;• ( 4 )报警处理;• ( 5 )显示通道号及温度;• ( 6 ) PID 数字计算;• ( 7 ) PID 控制输出等

Page 189: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

( 1 )数据采集模块巡回检测的方法是先把 8个通道各采样一次,然后再采第二次,第三次,……直到每个通道均采样 5 次为止。

Page 190: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

Page 191: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

• COLECT:MOV R0 , #CDATA ;取采样数据首地址• MOV COUNT, #05H ;送采样次数• ROUT0 : MOV CHADDR , #00H ;设通道号初值• MOV BUFF , R0 ;保护通道号• ROUT1 : MOV A , CHADDR ;送通道号• MOV DPTR , #LS175• MOVX @DPTR , A• INC CHADDR ;通道号加 1• NOP ;延时,使S/H稳

定• NOP

Page 192: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

• ROUT2 :MOV DPTR , #AD574 ;启动 A/D• MOVX @DPTR , A• ACALL DL30 ;延时,等待 A/D 转换结束• MOVX A ,@DPTR ;读入高8位• MOV P2,#0F0H• MOVX @R0 , A ;存放高8位• INCDPTR ;使 A0= 1• INCR0 ;求低 4位存放地址• MOVX A ,@DPTR ;读低 4位• MOVX @R0 , A ;存放低 4位• MOV A , R0 ;求存放下一个通道数据地址• ADD A , #09H

Page 193: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

• MOV R0 , A• MOV A , CHADDR• CJNE A , #08H, ROUT1 ;判 8个通道是否各采样一

次• DJNZ COUNT, BRANCH ;判是否采样 5 次• MOV TH0 , #3CH ;重新装入定时器 0时间常

数• MOV TL0 , #0B0H• SETB TR0• RET• BRANCH: MOV R0 , BUFF ;计算 0#通道下一次采样

地址• INC R0• INC R0• AJMP ROUT0• 本程序 A/D 转换采用延时方法,也可采用查询的方法。

Page 194: 第 10 章  微型机控制系统的设计

( 2 )报警处理模块

Page 195: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

• ALARM: LCALL TMAXCOMP ;温度上限报警检查• LCALLTMINCOMP ;温度下限报警检查• MOV A , 20H• ORL A , 21H• MOV P1 , A ;输出温度上限、下限报警信号模型

• MOV A , 20H• CPL A ;求正常信号模型• ORL A , 21H• MOV DPTR , #PC8255

MOVX @DPTR , A ;输出温度下限报警及正常信;号模型

• RET

Page 196: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

• ;上限报警比较子程序• TMAXCOMP :MOV R0 , #TEMPMAX ;取上限报警首地址• MOV R1 , #SDATA ;取采样数据首地址• MOV R3 , #08H ;设通道数• MOV R2 , #02H• COMP1 : MOVX A ,@R1• MOV BUFF , A• MOVX A ,@R0• CJNE A , BUFF , COMP2 ;判断上限报警值与采

样 • ;值高 8位是否相等• INC R0 ;求低 8位数地址• INC R1• DJNZ R2 , COMP1

Page 197: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

SETB ALARMAX ;相等,置报警标志• COMP4 :MOV A , 20H• RL A• MOV 20H, A ;存入报警标志单元• DJNZ R3 , COMP1 ;检查 8路是否比较完成• RET• COMP3 : CLR ALARMAX ;清报警标志位• AJMP COMP4• COMP2 : JNC COMP3 ;置报警标志位• SETB ALARMAX

AJMP COMP4• ;下限报警比较子程序 ( 同上)

Page 198: 第 10 章  微型机控制系统的设计

10.4.4 温度控制系统软件设计

3 .数字控制器的程序设计

Page 199: 第 10 章  微型机控制系统的设计

10.4.5 手动后援问题

10.4.5 手动后援问题手动后援就是一旦系统自动状态发生故障时,则可转入手动状态工作。