嵌入式系统在温度控制中的应用._第1页
嵌入式系统在温度控制中的应用._第2页
嵌入式系统在温度控制中的应用._第3页
嵌入式系统在温度控制中的应用._第4页
嵌入式系统在温度控制中的应用._第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、嵌入式系统在温度控制中的应用湖南文理学院芙蓉学院课程设计报告课程名称:嵌入式课程设计专业班级:通信1101班学生姓名:指导教师:完成时间:2014年6月5日报告成绩:评阅意见:评阅教师日期第一章概述嵌入式系统被定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪, 适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 实际上嵌入式系统是计算机的一种应用形式,是将先进的计算机技术、半导体技 术和电子技术与各个行业的具体应用相结合后的产物,具有软件代码小、高度自 动化、响应速度快等特点。因此它是一个技术密集、资金密集、高度分散、不断 创新的知识集成系统。特别适合于要求实时的和多

2、任务的系统。复杂的微机控制系统使用常规的顺序程序设计方法加上中断来实现功能是 比较困难的,主要体现在以下几个方面:(1) .实时性差:由于计算机在处理中断时,一般不允许响应低级和同级中断, 为了提高实时性,要求中断处理程序尽量短。但是有许多实时操作的处理比较复 杂,需要较长的CPU执行时间。如果用中断来完成这些处理,则在处理时,无法 响应低级或同级中断。如果采用中断置标志的方法,让主程序来进行处理,则一 方面会增加程序的复杂性,另一方面也难以做到实时处理,因为主程序不可能在 执行其它程序时,随时去检查这些标志位而转向不同的处理程序。(2) .难以实现并行操作的相互通信:在功能较强的实时系统中,

3、除了主程序 有时需要与中断间进行信息交换外,各个并行操作之间有时也需相互通信。这些 用常规方法是难以实现的。(3) .结构复杂、移植性差、维护困难:单片微机功能的复杂化,使软件越来 越复杂,特别是为了实现并行操作,需使用大量的中断和标志,使程序结构十分 混乱,难以设计和调试。同时由于程序采用线性结构,使得程序难于修改或者移 植,因此缺乏灵活性、通用性和可维护性。第二章系统的设计与实现设计出一个实现对温度进行测量和控制的嵌入式系统。系统具有对外界两点 温度进行采集的能力,采集的模拟信号经 A/D模块转换成相应的数字量,送入微 处理器进行处理。采集到的每一路温度都要与系统此路温度设定值进行比较,然

4、 后根据结果调用合适的控制算法,并通过控制相应的继电器的占空比实现对温度 的控制、测量、运算处理、输出控制、显示、通信。为此引出串行通信设计利用RS-232串行通信,实现了与 PC机进行通讯功能和远程加载功能。考虑 到实际的应用及成本等因素,选用的主要硬件器件有台湾Sy nCMO公司的生产的SM5964微控制器,数据采集部分选用了凌特公司 (Linear Technology)推出的20 位无延迟模数转换器LTC243Q串行通讯部分使用 MAX232芯片,液晶显示屏选用 了北京精电蓬远显示技术公司生产的MGLS-12864嵌入式操作系统选用了源代码公开的卩C/OS-II 。选用的开发环境是:

5、Win dows 2000 Server开发工具:Keil C51 7.0、VC+ 6.0使用的语言是:汇编、C语言2.1系统的硬件设计系统的原理图如图2-1所示。主要有键盘输入、数据采集、输出控制、LCD显 示、通信及电源模块等组成。图2-1系统原理框图下面介绍一下主要部分的电路图设计1) .键盘输入电路键盘是一组按键的组合,它是常用的输入设备,可以通过键盘输入数据或者命 令,实现简单的人机对话。键盘可分为独立联接式和行列式(矩阵式)两类,每 类按其译码方式又分为编码式及非编码式两类。设计中使用的是独立联接非编码 式键盘。电路图如图2-2所示:PO.3/FD3opo42£3斗Pl

6、3/FA3P1 AiFAAFD.L/FDIPO.tVFDOVDDP4.2T2/P1 Q/FADnEX/Pl.i/FALPl 2/FA2巧 aP2.4/FAI2PS.aAllP2.2/FAIQP2.1/EA9P2.Q/FASP4.0VSS5TTALXTAL2Ui28Z72625242322L<出L Id g<md 5 6 31 Ed 占 X!pmdsH2D沁4图2-2键盘原理图每个按键使用的是一个瞬时接触开关,这种联接方式可以容易被微处理器检测,但由于按键会产生机械抖动,在按键被按下或者抬起的瞬间,一般持续515ms 因此设计中要去除键抖动。可以通过硬件双稳态电路或者软件延时来实现,

7、设计 中采用延时20mS实现的。对于串键,采用无限处理方法。同时为了防止按一次键而产生多次处理的情 况(键扫描和键处理速度较快而此时键还没释放),在有键按下时,作一次键处 理后还要检测按下的键是否释放。2).数据采集电路本系统实现对两路温度信号的采集,为了节省硬件成本,在前向通道中采用了多路选择开关,使用了两个多路模拟开关器件 CD4052实现信号的差分输入, 完成对两路温度信号的轮流采样,然后将信号送入一个公共的模数转换器 LTC2430完成模数转换。由微处理器的P1.2、P1.3两引脚实现信道的选择。电路图如图2-3所示:图2-3数据采集原理图飞.、L>,1F6嵌入式系统在温度控制中

8、的应用对温度的测量使用铂(Pt)热敏电阻(100Q ),使用桥式电路进行测量。铂 电阻是一种高性能的贵金属热电阻,具有精度高、稳定性好、性能可靠等优点, 铂电阻的温度测量范围在-200 C到+850 C之间,在小于200E时,非线性误差 小于0.3%,它的电阻值R和温度t之间的关系可以近似地表示为:R = A t BA,B为常数,A为热敏系数( R厂C)。测量时采用的是查表法来计算温度值。对于模数转换器LTC2430设计中使其工作在外部时钟驱动模式下,工作状态 分为转换(Con version )、休眠(Sleep)和数据输出(DataOutput)三个状态。 此时它的数据输出波形图如图2-4

9、所示:SCKyQATAOmT師 23 BIT 2旺曲 即 W BIT 18SIGBIT OOCOCE?图2-4 LTC2430数据输出波形图3) .通信电路本系统所进行的通信是实现与 PC机的通信,选择了 RS232通信标准。这是 因为RS232标准是使用最为广泛的通信标准,几乎每一台 PC机上都有两个符合 RS232标准的串行口,所以采用 RS232标准有利于通用性。由于 PC机使用的是 RS232电平,而SM5964输出是TTL电平,因此选用MAX232解决电平匹配的问 题。电路图如图2-5所示:pj urnsc«=>-iv图2-5通信电路原理图SM5964的串行发送端口

10、TXD和接收端口 RXD经MAX232芯片进行电平转 换后,分别与PC机的数据接收端口 RXD和数据发送端口 TXD相连接。SM5964 串行通信的发送端TXD连接到的11引脚,发出的数据信号经过 MAX232芯片转 换后,由05V的TTL电平变为-12+12V的RS232电平,从14引脚输出到PC 机串行口的第二引脚。按RS232通信协议规定,PC机串行口的第二引脚为数据输 入端,这样,发出的数据就可被PC机接收到。由PC机串行口的发送端TXD ( PC 机串行口的第三引脚)传输来的数据,作为 RS232电平的信号输入到MAX232芯 片的第13引脚,经过MAX232芯片进行电平转换后变为T

11、TL电平,再由MAX232 的12引脚输出到SM5964串行口的接收端口 RXD。从而完成数据的双向传输。在设计中,使用了两个发光二极管 D7和D8监视通信的工作状态。4) . LCD!示电路对于LCD MGLS-12864内置HD61202B形液晶显示模块,厂家为其设置了 7条指 令来完成对它的控制,有两条指令用于显示状态的设置,其余指令用于数据读/写 操作,在此不对其进行详细的说明。MGLS-1286与微处理器的连接方式有两种:一种是直接访问方式,一种为间接控制方式。直接访问方式就是将液晶显示模块的接口作为存储器或者I/O设备直接挂在计算机总线上,计算机以访问存储器或者I/O设备的方式操作

12、液晶显示模块 的工作。而间接控制方式是计算机通过自身的或者系统中的并行口与液晶显示模 块连接,通过对接口的操作达到对液晶显示模块的控制。设计中我采用了间接控制方式,这种方式的特点是电路简单,控制时序有软 件实现,可以实现高速计算机与液晶显示模块的接口。电路图如下图所示,以P2口作为数据口,P3.3为/CSA,P3.4为/CSB,实现左右两区的显示和切换。P3.5为D/I, P3.6为R/W P3.7为E,三者产生控制LCD据与状态的读写等信号。电位器用于显 示对比度的调节。电路图如图2-6所示:图2-6显示电路原理图5).输出控制及报警指示电路输出控制电路采用12V直流继电器对外电路进行控制,

13、通过控制继电器的吸合 时间来实现对温度的控制,继电器是与强电控制电路(大电流、高电压)联系在 一起,会对应用系统产生严重干扰,使系统不能正常工作。为了消除干扰,在微 机接口与继电器之间分别加了光耦,使系统主机部分的地与强电控制电路的地隔 开。当温度超限或者系统出现致命错误时,系统会发出报警指示且实现在LCDt显示。2.2系统的软件设计与实现2.2.1设计总述系统软件是以RTO站平台的,RTOS乍为一种专门为嵌入式微处理器设计的模 块化、高性能的实时操作系统,提供了一种基于开放系统标准的完善的多任务环 境。它作为嵌入式应用软件的基础和开发平台,是一段嵌入在目标代码中的软件, 在嵌入式系统启动后首

14、先执行的背景程序,用户的应用程序是运行于其上的各个 任务,RTOSB据各个任务的要求进行资源管理、消息管理、任务调度、异常处理 等工作。(图2-7软件体系结构)应用程序其它API网络图形I/O内核硬件抽象层系统软件的体系结构如图2-7所示。硬件抽象层(HAL把实时内核与硬件隔 离开,实现了操作系统内核与设备无关,提高了应用系统的可靠性。内核层是一 个是实时多任务操作系统(RTOS内核。内核层上面是高层驱动和库函数,提供 通用的API、I/O管理器。应用程序层是用户的不同的任务。2.2.2任务的划分系统中每个任务均有以下三部分组成:应用程序、任务堆栈以及任务控制块。 其中只有应用程序被烧入ROM

15、而任务本身则被置于RAM待系统运行时再予建立。 任务堆栈用以存储CPU勺寄存器内容。当某任务由运行态变为其它状态时,CP寄存器内容压入相应任务堆栈,反之则将相应任务堆栈内容置入CP寄存器。作为系 统中定义的一个数据结构,任务控制块的内容包括任务堆栈的地址、任务当前状 态、任务优先权等。操作系统通过查询任务控制块内容实现对任务的管理。在进行任务划分设计时,要考虑以下问题:1) .任务间的关系:这包括两个方面,一方面是任务间的同步和通信,这可通 过信号量、邮箱等通信方法实现。另一方面,资源共享,通过信号量或其它方法 实现。我在系统设计中使用了信号量和中断的开启,实现上述功能。2) .定时或者延时:

16、一个任务可能需要每隔一段时间执行一次操作。如温度 采样计算任务,在设计中每秒分别对各路温度采样一次,然后进行计算。这种定 时操作可以而且必须使用操作系统的定时系统来实现。3) .等待操作:在任务程序设计中,应尽量避免使用程序询问方法,而用中 断方式来实现等待操作,除非程序执行时间小于任务调度时间。另外为防止发生 意外情况使等待事件不发生而引起任务无限等待的情况,都加了等待超时处理功 能。根据要实现的功能,我将系统划分为如下 6个任务:按键处理、LCD显示、串 行通信、输出任务、控制运算、信号采集处理。从系统设计方面,可以划分为人 机交互模块、串行通信模块、温度测量及控制模块和远程加载模块。系统

17、软件结 构图如图2-8所示。图2-8系统软件架构卩C/OS-II的任务调度是按优先级进行的,根据各任务的实时性要求及重要程度,分别置它们的优先级为4、5、6、7、8 9。其中0、1、2、3、OS_LOWEST_PRIO-3 OS_LOWEST_PRIO-OS_LOWEST_PRIO-OS_LOWEST_PR这几个优先级保留以被 系统使用。优先级序号越低,任务的优先级越高。任务间的通信和同步是利用信 号量和开关中断来实现的。下面对各任务作简要的介绍。1 按键处理任务此任务主要完成键盘扫描工作。用户可以通过键盘对系统进行控制,如改变 运行状态、修改相关的参数等,系统必须做出及时的处理,因此在系统中

18、把它的 优先级设为最高,一旦有键被按下,系统就能够作出响应完成相应的功能。2 LCD显示任务此任务用于刷新LCD显示的工作。系统的运行状态、各路的温度值、PID相关参数大小、各继电器的状态、错误指示及其它各种信息需要及时的通知用户,当 有关的信息发生改变时,需要调用此任务更新显示。3. 串行通信任务在设计中,通信任务一方面接收 PC发来读写命令帧,对其进行分析处理后, 做出相应的响应,从而实现 PC机对其进行控制;另一方面也要把相关信息按要求 组成相应的帧,发送给PC机。4. 输出任务此任务完成对各路继电器进行控制,从而实现温度调节。根据控制运算任务 决策结果,负责各继电器占空比的调节。5.

19、控制运算此任务是最重要的一环,当任一路温度转换结束后,都会发信号给控制运算 处理任务进行处理,控制运算处理任务接到信号后,对信号分析之后,对要处理 的测量结果进行转换查表等处理,算出实际温度值,一方面调用基于时间最优的 PID控制算法加以决策处理,发信号给输出任务加以控制,另一方面也发信号给 LCD显示任务更新显示。6信号的采集处理此任务采用定时方式对各路温度信号进行采集,负责通道的选择,对LTC2430 转换结果进行读取,根据设定,取转换结果的前16位,用一个无符号整数进行保存,然后存于各路温度存储区。并发信号给控制运算任务进行转换。2.2.3人机交互模块的详细设计在实现中人机交互模块包含两

20、部分:键盘输入和LCD显示。223.1 任务的实现键盘是最重要的一种输入设备。一般在设计应用系统时,需要按键较少时采 用独立式按键键盘,而在需要按键较多时,采用行列式键盘。但行列式键盘不仅 硬件接线复杂,键号的判断和识别程序也较为繁琐。在此介绍使用软件将多个按 键功能压缩至3个按键上,该键盘在硬件上使用独立式按键键盘的硬件结构,而在 软件上实现了使用矩阵式键盘的功能。该键盘不仅在硬件上接口简单,软件实现 也非常容易。其实现原理是:对于矩阵式键盘,如果它有3行4列,则可以构成一个3 4键 盘,共有12个功能键。在设计的键盘中,行线使用一个按键实现,行线数由该键 的按键次数确定,列线则由其它几个按

21、键提供。假如一个键盘使用3个按键,3个按键中1个用于提供行线,设置其它2个键的功能,当该键按键次数为1时,其 它2个键为P11、P12功能,而当该键按键次数为 2时,其它2个键为P21、P22 功能,当该键按键次数为3时,其它2个键又为P31、P32功能,根据此原理,使 用3个按键可以实现N行2列共N2个键的功能,这里的N为用做行线的键即功 能设置键的按键次数。将该键的按键次数存于一内存单元(或寄存器)中,每按 一次,该单元加1,读出该单元内容,就可知道其它 2个键处于何种功能。共定义了 8个功能键:单选择键,确认键,数值增加键,数值减少键,左移、 右移、上移、下移键。程序流程图如图所示LCD

22、显示任务只是接收其它任务发来的信号量,经分析判断后刷新相应的显示 区。其实现简单在此不再叙述。233串行通信模块的详细设计串行通信模块是系统设计中的一个重要部分。它要实现与PC机通信,接收PC机发来的命令帧,在确认正确后进行分析执行,并向PC机发送相关信息和数据。通信协议的详细规定见下一章。2.2.4.1 串口设备驱动程序设计1. 系统串行口工作方式和波特率的计算1).串行口的工作方式串行口的工作方式由串行口控制寄存器 SCON来确定。特殊功能寄存器 SCON 字节地址为98H,可以位寻址。通过对 SCON.7和SCON.64行设置可以确定串行口 的工作方式,它有四种工作方式,如表 2- 1所

23、示。表2 - 1 串行口工作方式SM0(SCON.7)SM1(SCON.6)方式功能说明000移位寄存器方式(用于I/O 口扩展)0118位UART波特率可变(T1溢出率/N)1029 位 UART波特率为 fosc/64 或 fosc/321139位UART波特率可变(T1溢出率/N)SCON图2-9串行口控制字寄存器 SCONSCON吉构如图2-9所示15嵌入式系统在温度控制中的应用#嵌入式系统在温度控制中的应用2).波特率的计算串行口工作在方式0和方式2时,其波特率为固定值。工作在方式1和方式3时 波特率可变,与溢出率有关,设计中常用定时/计数器1作为波特率发生器。计数 器的工作模式共有

24、4种,模式0模式3,但是当串行口选择工作模式1时,计数器 必须工作在模式2,自动载入计数模式,在模式2的计时下,使用的计数器寄存器 为推理,而TH狈U是在做自动载入计时值的设定。波特率的计算公式为:(2-1 )波特率=z 工作振荡频率3212 讨 256 TH1设计时我们是先定出波特率再求TH1的值,将上式加以整理可得:(2-2)TH1=256- 2 %工作振荡频率)384波特率在设计中,串行口(工作在)工作方式1且允许接收,通过语句 SCON=0x50来实现。计数器工作在模式2能够自动载入计数值,通过语句 TMOD=TMOD|0x来0 实现。为便于使用,我设计了初始化串行口函数 void U

25、art_I nit (INT16U mclk, INT16U baud),利用此函数可根据系统工作频率和设定波特率完成串行口的初始 化。2. 串行口输入输出驱动设计采用异步通信时,如波特率为1200,则每传送一个字符约需10ms所以串行口的接收和发送应采用中断方式来实现,否则会浪费大量的CPU时间。为了可靠的接收和发送数据,专门设定了接收和发送缓冲区,在具体实现时,缓冲区采用 环形缓冲区,它的大小按照任务的执行时间、通信速率和报文长短来定,一般为2-10所示16至255字节,在系统中其值设为30。1).串行口输入程序和串行口输入中断流程图如图/串行口输入'>关中断1否从输入缓冲区

26、读一个字符置等待标志11F开中断使任务处于等待状态1r1(返回j进行任务调度/输入缓冲区忌图2-10串行口输入程序和串行口输入中断流程图读入串行口数据并写入输入缓冲区返回恢复现场16嵌入式系统在温度控制中的应用#嵌入式系统在温度控制中的应用2).串行口输出程序和串行口输出中断程序流程图如图2-11所示#嵌入式系统在温度控制中的应用17嵌入式系统在温度控制中的应用串行口输出中断图2-11串行口输出程序和串行口输出中断程序流程图3. 任务调用接口在应用程序设计中,只需分别调用函数Uart_Init()、Uart_SendStr()、Uart_Getch()、Uart_Sendch()等函数接口,即

27、可完成对串口的操作,实现数据的 输入和输出。4.342 串行通信应用程序的设计在系统中串行通行程序是专门用于接收PC机发送来的读写命令,根据命令的不同,完成不同的操作,既可以对系统当前的运行状态或参数进行改变,也可以 把PC机需要的数据信息打包发送。在设计中,为简单起见,系统作为从机,只能被动接收PC机发来命令,对命令帧分析处理之后执行,可以改变系统当前的运行方式和参数。当需要向PC激发信息时,它要按要求把相关信息组帧发送,如当前继电器状态、第一路温度值、 第二路温度值等。关于帧的类型和组帧格式,详细内容在下一章中论述。它的流程图如图4-12所示。串口数据到 并接收完毕图2-12串行通信流程图

28、2.2.5温度测量及控制模块详细设计数据信号的采集处理是把实际过程中的模拟量、开关量以及其它信息量通过 相关的方式送入计算机,再由计算机进行存储和进一步的处理(如计算、显示、 控制等)0模拟量的采集是将模拟量转换成数字量并送入计算机。然后调用处理算 法将这些数字量存储并进行二次计算处理,一方面要输出显示便于观察,另一方 面调用相关的控制模块,对被测对象进行控制。控制模块通常采用合理的控制算 法,对被控对象进行控制,使其满足用户的要求。此模块完成对温度信号的采集处理、控制运算和输出控制功能,是最重要的 一个模块。系统要实现对两路温度进行采集控制,其电路图见图4-3。温度信号经两个模拟转换开关CD

29、4052之后,以差分式输入模拟转换器 LTC2430的输入端子, 转换后的数字量送入微控制器SM5964从而完成信号的采集。由于20位模数转换器LTC2430采用了专有的无延迟Delta Sigma结构,消除了数字滤波器的接续时间,使每次转换均有效,只要将其转换结果进行正确的读 出即可。其数据输出格式如图 4-4所示,当最高位EOC为低电平时,表示本次转 换完成可以读取结果。对于温度的计算,采用了查表法。获得LTC2430转换结果之后,通过线性插值及标度变换之后,可以计算出当前的实际温度值。以上的采 集处理过程相应容易实现,在此模块中,主要是控制部分软件的设计,设计中采 用了时间最优控制和PI

30、D算法相结合的控制方法,取得很好的效果,其实现如下。1) .控制算法在工业过程控制中,应用最广泛的控制方法应该是PID控制,它是按偏差的比例(P)、积分(I)和微分(D)组合而成的控制规律。比例控制简单易行,积分的加 入能消除静差,微分能提高,改善系统的动态性能。采用了数字PID的方式进行调节,其框图如图4-13所示。图4-13 PID控制框图下面是增量式PID控制算法公式。为了抑制饱和效应的发生,控制系统采用 了积分分离式的PID控制算法。TTd=Uk -Uku = Kek -ek4ekd(ek-2ez )(4-3)TiT即:Uk =Uk1 :u =Uk4 Kp(Q -e<4) Kie

31、k Kd(q -2q< e)(4-4)在上式中,T为系统采样周期,Ti为积分时间常数,Td为微分时间常数,Kp 为比例系数,Ki为积分系数,Kd为微分系数。温度变化是个慢过程,如单纯采用PID控制,当有较大扰动或大幅度改变给定值时,会产生较大的偏差,此时在积分项的作用下,往往会产生较大的超调和 长时间的波动。因此在系统中又采用了PID算法与时间最优控制相结合的控制方式。时间最优控制是Pontryagin于1956年提出的一种最优控制方法。它是研究满 足约束条件下获得允许控制的方法,也叫最大值原理。用最大值原理可以设计出 控制变量只在|u(t)|< 1范围内取值的时间最优控制系统。而

32、在工程上控制变量只取±1两个状态,而且依照一定的法则加以切换,使系统从一个初始状态转到另一 个状态所经历的过渡时间最短,这种类型的最优切换系统,称为开关控制(Bang-Bang)系统,即:当 ek 0 时,UK 二Umax。当 ek -0 时,g = 0。Uk为t = kT时控制器的输出,Umax为系统的最大输出,e(k)为温度测量值与给 定值之差,当偏差大于零时,控制器输出最大值,控制对象加热当偏差小于等 于零时,控制器输出0,停止加热这种算法具有控制简单、实现方便等优点,但 当偏差接近零时,系统容易发生振荡因此,采用PID算法与时间最优控制相结合的双模控制方式,控制规律为:ek

33、|王名时,采用时间最优控制ek卩名时,采用PID控制规定一阈值& (偏差区域),当偏差大于&时,实行时间最优控制,即Bang- Bangg制;而在阈值&以内,实行PID控制这样,既可以发挥Bang-Bangg制快 速消除大偏差的优点,又能发挥PID控制精度高,超调小的优点,从而使静态、动 态性能指标较为理想.2) .参数的整定数字PID调节器参数的整定是根据控制对象对控制性能的要求,调整调节器 的参数,使控制过程满足要求。在系统采样周期确定的情况下,需要调整的参数 有比例系数K、积分时间常数Ti和微分时间常数Td。它们分别对控制性能的影响 如下:比例系数Kp:它控制着系

34、统调整的反应速度,减少静差,如 Kp太小,系统 动作缓慢,Kp加大,可以使系统动作灵敏,调节速度加快。但 Kp偏大,可 能使系统震荡次数增多,调节时间加长。Kp过大,可使系统不稳定。 积分时间常数T: PID调节中的的积分项主要作用是消除静差。Ti减少时, 积分项作用增大,系统调节速度加快,但易使系统趋于不稳定,震荡次数 较多。Ti增大,积分项对系统性能的影响减少,跟踪速度减慢。当Ti合适时,过渡度特性比较理想。微分时间常数Td:微分控制可以改善调节的动态特性, 如减少超调量,缩 短调节时间。当Td偏大或者偏小时,超调量和调节时间都会增大,只有当 Td合适时,才能得到比较满意的结果。在做PID

35、参数整定时,首先根据系统要求应选择合适的采样周期,采样周期 确定之后,比例系数Kp、积分时间常数T和微分时间常数Td的整定可以根据一定 的算法,比如扩充临界比例系数法、扩充响应曲线法以及PID归一化参数整定法来设定。但是在现场系统不允许振荡或外加扰动信号,以上方法在现场不能使用。 实际上在现场主要根据经验整定参数,应遵循以下规则:在进行PID参数调节时,调节幅度要小;在调节时,需要各参数协同调节;系统反映(温度变化)速度慢,可调大比例系数 Kp,增大微分时间常数Td, 减少积分时间常数Ti ;有振荡现象时,可减少比例系数 Kp,减少微分时间常数Td。对于£的确定,可根据具体情况来确定

36、。3).程序流程图在设计中,&为2。程序流程图如图4-14所示226远程加载程序的设计此功能模块就是利用“在系统编程”(In-System Programming,简称ISP)技术,可以实现对系统进行在线升级。所谓“在系统编程”技术是指在用户设计的 微控制器系统中为配置新的系统功能而对器件进行重新编程,并在线地将程序代 码(固件)下载到程序存储器中的一种编程技术。它的出现是对传统编程方法的 重大突破。在设计中,PC机利用串口向系统发送各种命令,如片擦除、页擦除、编程等 命令,系统正确接收之后分析执行,从而完成加载升级功能。其详细设计如下。1).相关寄存器简介本设计中选用了 SynCMC

37、公司的SM596作为主控制器,利用串口即可方便地实 现ISP功能,SM596处理器是以80C52为内核,芯片有64KB Flash存储器,其中可 用于实现ISP功能的程序空间为N 512字节(N=0, 1,,8 ),为实现ISP功能, 专门设计了5个专用特殊功能寄存器。分别如下:系统控制寄存器(SCONJFBFHWDRRRRRISPEOMEALE1SCON的位2 (ISPE)是ISP功能的使能位,该位置置1使能ISP功能,置0禁止ISP功能。这可以防止由于软件设计失误而造成的芯片擦除操作。FLASH空制寄存器(FCR,F7HSTARTRRRRRF1F0START ISP功能起始位,置1时,执行

38、由位1、位0 ( F1、F0)所制定的ISP功 能。置0时,空操作。STAR位被置1后,SM596内部硬件电路会锁存地址和数据总线,并保持住 PC 指针直到STAR位置0。不必对此位的状态进行查询。位F1、F0: ISP功能选择位如下所示F 1: 0ISP 功能00字节编程01片保护10页擦除11片擦除FLASH高位地址寄存器(FAH ,F4H)和低位地址寄存器(FAL, F5H)FAH & FAL为ISP功能提供16位的FLAS地址。 FLASH数据寄存器(FDAT, F6H)FDAT寄存器为ISP功能提供8位数据。2).协议的约定PC机侧的详细情况见下一章。在实现中,系统只是根据PC机发来命令执行相 应的功能,根据命令执行情况向 PC机返回执行结果(执行成功还是失败),当执 行成功时向PC机发送AAH命令,当执行失败时,向PC机发送55H,通知PC机重新 执行。功能命令校验和命令执行成功AAH56H执行命令失败55HABH3).程序设计系统工作转到ISP功能状态时,首先对串口进行初始化,然后接收PC机

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论