1、第一章 绪论1引言随着现代工业的逐步发展,在工业生产中,温度、压力、流量和液位是四种最常见的过程变量。其中,温度是一个非常重要的过程变量。例如:在冶金工业、化工工业、电力工业、机械加工和食品加工等许多领域,都需要对各种加热炉、热处理炉、反应炉和锅炉的温度进行控制。然而,用常规的控制方法,潜力是有限的,难以满足较高的性能要求。采用单片机来对它们进行控制不仅具有控制方便、简单和灵活性大的优点,而且可以大幅度提高被测温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题。 模糊PID单片机温度控制系统,是利用单片机作为系统的主控制器,测量电
2、路中的温度反馈信号经A/D变换后,送入单片机中进行处理,经过模糊PID算法后,单片机的输出用来控制可控硅的通断,控制加热炉的输出功率,从而实现对温度的控制。本设计运用MCS-51系列单片机集中的8051单片机为主控制器,对加热炉的温度进行智能化控制,最终通过软件设计来实现人机对话功能,实现对加热炉的温度控制。 本设计主要介绍模糊PID单片机温度控制系统,内容主要包括:采样、滤波、键盘显示、加热控制系统,单片机MCS-51的开发及系统应用软件的开发等。全文共分四章。第一章绪论介绍相关技术发展,系统设计概述及设计要求,方案论证。第二章硬件电路的设计介绍主控电路核心MCS-51单片机AT80C51的
3、基本结构和配置以及一些子模块的设计。第三章典型芯片的介绍MAX6675 包括了A/D采样技术和数字滤波技术。第四章软件设计介绍以模糊PID为主的温度控制算法及系统加热控制系统。第五章主要是系统软件编程。2单片机技术现状与发展 单片机又称为微控制器(Microcontroller),是把中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、定时器/计数器、I/O接口电路等部件集成在一块芯片上的微型计算机。自问世以来,性能不断提高和完善,加之具有控制能力强、体积小、功耗小;成本低、开发周期短、集成度高;速度快,指令周期为S级;功能强,有丰富的内置资源;易于商品化,多数厂商提供配套外围借
4、口芯片;抗干扰能力强等优点,因此,在工业控制、智能仪器仪表、数据采集和处理、通信系统、高级计算机、家用电器等领域的应用日益广泛,并且正在逐步取代现有的多片微机应用系统,数字单片机的位数越来越多,精度也越来越高。另外,在需要极高响应速度的控制场合,还出现了模糊单片机,它是专门执行模糊逻辑信号的器件,具有极高的模糊推理速度。 今天,还出现了不少高级语言的开发工具,这些系统经过仿真可在更高的开发平台上进行快速的开发,为单片机的广泛应用铺平了道路。所以,在未来的社会主义工业化建设中,单片机无疑会发挥更大的作用。单片机具有处理能强、运行速度快、功耗低等优点,应用在温度测量与控制方面,控制简单方便,测量范
5、围广,精度较高。3系统设计概述及设计要求采用单片机为控制核心器件,选择合适的传感器对电阻丝加热炉温度进行测量,并采用模糊PID控制算法使其保持在某一设定的温度值。温度值可由键盘设定,并在LED显示器上显示。 具体要求如下:1) 温度范围为50015002) 系统有必要的保护和报警3) 温度值有显示4) 误差范围14方案论证4.1 总体方案比较与论证 方案一: 采用CPLD作为主控制器控制外围电路进行温度测量、键盘和LED控制、报警控制。 方案二:K 型热电偶(镍铬-镍硅)作为测温传感器,AD574芯片作数模量转换芯片,用继电器对电阻炉加热进行控制。采用PID控制算法对温度进行控制, 比较以上两
6、种方案的优缺点: 方案一逻辑电路复杂,且灵活性较低,不利于各种功能的扩展,而且开发成本很高。方案二简洁、灵活、可扩展性好,能完全达到设计要求。通过大量的资料的查找与对比采用第二种方案较好。故采用方案二。4.2 典型模块电路的设计方案与比较4.2.1 温度检测方案 方案一:利用热释电红外传感器(探测器)进行非接触式红外测温的原理、红外测温系统结构和信号处理电路的组成,目的是实现对移动物体的非接触式温度测量。以此为基础,组装了一套微机红外测温实验装置,用该装置测定了目标表面温度变化规律。在大约190测量精度达到最高,其残差为9.5。但是在测定高温时误差大,而且系统的造价高。方案二:选用K型热电偶(
7、镍铬镍硅),具有线性度好、测温范围适中、输出电动势大、价格便宜等特点。另外,为保证检测精度,采用补偿导线法对热电偶进行冷端补偿。4.2.2 键盘显示方案 方案一:采用独立按键按口,这种方式是各种按键相互独立,每个键各按一根输入线,一根输出线上的按键工作状态不会影响其他输入线上的工作状态。所以通过检测输入线的电平状态可以很容易判断哪个键按下。独立式按键电路配置灵活、软件简单,但是每个键占一根输入口线,在按键数较多时需要较多的输入口线且电路结构简单,故使用于按键少,操作速度高的场合。它直接与单片机I/O相接,通过读I/O口,判断各个I/O口线电平状态,即可识别出按下键盘。 方案二:采用3*3矩阵键
8、盘输入,这种接口方式适用于按键数量较多场合,由行、列线组成,行列分别连接到按键两端。按键位于行列交叉点,行线通过上拉电阻接到+5V上。平时无按键按下时,行处于高电平,而当按下时行电平将由此与此电平相连的列线电平决定。由于矩阵键盘中行、列线为多键共用,各按键均影响该键所在的行和列电平,所以各按键彼此将相互影响,所以必须将行列信号配合起来并做适当处理才能决定闭合键位置。 方案三:采用Intel 8279键盘/显示电路,该接口电路设计新颖,结构简单,稳定性强,可靠性高,编程容易,具有很强的使用性。4.2.3 显示模块的选择 方案一:采用数码管显示。数码管亮度高、体积小、重量轻,但其显示信息简单、有限
9、,在本题目中应用受到很大的限制。方案二:采用液晶显示。液晶显示功耗低、轻便防震。由于本题显示信息比较复杂,采用液晶显示界面友好清晰,操作方便,显示信息丰富。第二章 硬件设计1系统的硬件总体设计 AT89C51电阻炉温度控制系统是以AT89C51 单片机为核心,采用模糊PID控制的方法,使电阻炉的温度得到较为理想的控制。本系统所要控制的电阻炉加热功率1500W,使用电压范围0220V(AC),升温速度0.3 /min,控制精度1,控制温度范围为500-1500度。控制系统的结构框图如图1 所示。放大 光偶双向可控硅电阻炉热电耦A/D89C51报警显示键盘图2-1系统组成基本框图 整个系统由3部分
10、组成,即由单片机AT89C51构成的单片机应用系统;由K 型热电偶、运算放大电路和A/D 转换电路构成的温度检测通道;由双向可控硅构成的输出控制通道。工作时,温度由K型热电偶检测温度值,经过冷端温度补偿运算放大器和A/D 转换,将温度信号送入单片机;单片机将温度信号进行数字滤波,标度变换后,由LED 显示。同时与系统设定值进行比较,按照模糊PID控制算法进行运算,通过输出信号去控制双向可控硅的通断,从而控制电阻炉的平均输入功率,实现电阻炉炉温的控制。并可直接显示。热电偶将炉温变换为模拟电压信号,经MAX6675芯片转换为数字量送单片机。同时,热电偶的冷端温度也由IC温度传感器变为电压信号,经放
11、大和转换后送单片机。标度变换程度根据温检测值求得实际炉温。数字调节器程序根据恒温给定值。与的偏差A0,按积分分离的PID控制算法得到输出控制量i。数字触发器程序根据c控制电阻炉子的导通时间,调节炉温冷端处的温度值的变化使之与给定恒温值一致。导通时间长,输出功率大,温度升高快;导通时间短,输出功率小,温度升高变慢。显示与恒温判断程序完成炉温与恒温时间显示、恒温开与恒温完成判别、恒温完成时给出声光指示信号。断偶判断程序根据温度检测值判断温度传感是否开路,若开路,则给出断偶报警信号。2温度检测设计采用热电偶传感器。热电偶传感器具有价廉、精度高、构造简单、测量范围宽(通常可由一5O度到 +1600度)
12、及反应快速的优点。热电偶传感器输出的电压信号较为微弱(只有几毫伏到几十毫伏),2.1 MAX6675 AX6675与AT89C51单片机组成的 AX6675是一复杂的单片热电偶数字转换器,其内部结构如图二所示。主要包括:低噪声电压放大器A1、电压跟随器A2、冷端温度补偿二极管、基准电压源、12位AD转换器、SPI串行接口、模拟开关及数字控制器。其工作原理如下:K型热电偶产生的热电势,经过低噪声电压放大器A1和电压跟随器A2放大、缓冲后,得到热电势信号U1,再经过S4送至ADC。对于K型热电偶,电压变化率为(41V/),电压可由如下公式来近似热电偶的特性。U1=(41V/)(T-T0) 上式中,
13、U1为热电偶输出电压(mV),T是测量点温度;T0是周围温度。在将温度电压值转换为相应的温度值之前,对热电偶的冷端温度进行补偿,冷端温度即是MAX6675周围温度与0实际参考值之间的差值。通过冷端温度补偿二极管,产生补偿电压U2经S4输入ADC转换器。U2=(41V/)T0在数字控制器的控制下,ADC首先将U1、U2转换成数字量,即获得输出电压U0的数据,该数据就代表测量点的实际温度值T。这就是MAX6675进行冷端温度补偿和测量温度的原理。 其内部结构图如图二所示2.2 MAX6675的特性与MAX6675引脚功能MAX6675是具有冷端补偿和A/D转换功能的单片集成型热电偶变换器,测温范围
14、01024,主要功能特点如下: 2.3 89C51 89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简
15、版本。89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 1 主要特性: 与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-24Hz 三级程序存储器锁定 128*8位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 2管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据
16、/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于
17、内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输
18、入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/
19、6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA
20、将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 3振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 4芯片擦除: 整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合
21、,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。 此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。 5.结构特点:8位CPU;片内振荡器和时钟电路;32根I/O线;外部存贮器寻址范围ROM、RAM64K;2个16位的定时器/计数器;5个中断源,两个中断优先级;全双工串行口;布尔处理器;5.引
22、脚说明:电源引脚Vcc(40脚):典型值5V。Vss(20脚):接低电平。外部晶振X1、X2分别与晶体两端相连接。当采用外部时钟信号时,X2接振荡信号,X1接地 输入输出口引脚: P0口:I/O双向口。作输入口时,应先软件置“ 1”。 P1口:I/O双向口。作输入口时,应先软件置“ 1”。 P2口:I/O双向口。作输入口时,应先软件置“ 1”。 P3口:I/O双向口。作输入口时,应先软件置“ 1”。控制引脚:RST/Vpd、ALE/-PROG、-PSEN、-EA/Vpp组成了MSC-51的控制总线。RST/Vpd(9脚):复位信号输入端(高电平有效)。第一功能:加+5V备用电源,可以实现掉电保
23、护RAM信息不丢失。ALE/-PROG(30脚):地址锁存信号输出端。第二功能:编程脉冲输入。-PSEN(29脚):外部程序存储器读选通信号。-EA/Vpp(31脚):外部程序存储器使能端。第三功能:编程电压输入端(+21V)。6. AT89C51单片机的P口特点: P0口:是一个8位漏极开路输出型双向I/O端口。作为输出端口时,每位能以吸收电流的方式驱动8 个TTL输入,对端口写1时,又可作高阻抗输入端用。在访问外部程序或数据存储器时,它是时分多路转换的地址(低8位)/数据总线,在访问期间将激活内部的上拉电阻。7. 可驱动(吸收或输出电流方式)4个TTL输入。对端口写1时,通过内部的上拉电阻
24、把端口拉到高电位,这时可作输入口。P2口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流(Iil)。 P2口:P2口是一个带有内部上拉电阻的8位双向I/O端口。P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。P2口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流(Iil)。数字电路时我们已知道,一个触发器可以保存一位的二进制数(即具有保持功能),在51单片机的32根I/O口线中都是用一个D触发器来构成锁存器的D锁存器,D端是数据输入端,CP是控制端(也就是时序控制
25、信号输入端),Q是输出端,Q非是反向输出端。对于D触发器来讲,当D输入端有一个输入信号,如果这时控制端CP没有信号(也就是时序脉冲没有到来),这时输入端D的数据是无法传输到输出端Q及反向输出端Q非的。如果时序控制端CP的时序脉冲一旦到了,这时D端输入的数据就会传输到Q及Q非端。数据传送过来后,当CP时序控制端的时序信号消失了,这时,输出端还会保持着上次输入端D的数据(即把上次的数据锁存起来了)。如果下一个时序控制脉冲信号来了,这时D端的数据才再次传送到Q端,从而改变Q端的状态。多路开关:在51单片机中,当内部的存储器够用(也就是不需要外扩展存储器时,这里讲的存储器包括数据存储器及程序存储器)时
26、,P0口可以作为通用的输入输出端口(即I/O)使用,对于8031(内部没有ROM)的单片机或者编写的程序超过了单片机内部的存储器容量,需要外扩存储器时,P0口就作为地址/数据总线使用。那么这个多路选择开关就是用于选择是做为普通I/O口使用还是作为数据/地址总线使用的选择开关了。当多路开关与下面接通时,P0口是作为普通的I/O口使用的,当多路开关是与上面接通时,P0口是作为地址/数据总线使用的。输出驱动部份:P0口的输出是由两个MOS管组成的推拉式结构,也就是说,这两个MOS管一次只能导通一个,当V1导通时,V2就截止,当V2导通时,V1截止。3. 温度控制电路 温度控制电路采用可控硅调功率方式
27、。双向可控硅串在50Hz交流电源和加热丝电路中,只要在给定周期里改变可控硅的接通时间,就能达到改变加热功率的目的,从而实现温度控制。对于这样的执行机构,单片机只要输出能控制可控硅通断电时间的脉冲信号就可以了。因此,用一条I/O线与可控硅的控制端相连接,并通过程序实现输出导通脉冲的宽度和导通时间。为了达到过零触发的目的,需要交流电过零检测电路。此电路输出对应于50Hz交流电压过零时刻的脉冲,作为触发双向可控硅的同步脉冲,使可控硅在交流电压过零时刻触发导通。电压比较器将50H z正弦交流电压变为方波。方波的正跳沿河负跳沿分别作为俩个单稳触发器的触发信号,单稳触发器输出的窄脉冲经二极管或门混合,就得
28、到对应于220市电过零时刻的同步脉冲。此脉冲一路作为处罚同步脉冲夹道温度控制电路,一路作为计数脉冲加到单片机89C51的输出端。4.键盘操作键盘的扫描方式有三种,即编程扫描工作方式、定时扫描工作方式和中断扫描工作方式。键盘的工作方式介绍如下:(1)编程扫描工作方式:编程扫描工作方式是利用CPU在完成其他工作的空余,调用键盘扫描子程序,来响应键输入要求。将键盘端口分为扫描口和输入口,由扫描口输出状态数据,在输入口读取扫描后的。(2)定时器产生的定时中断(定时扫描工作方式:定时扫描工作方式是利用单片机内部定时例如10ms),CPU响应中断后对键盘进行扫描、并在有键按下时转入键功能处理程序,则可以实
29、现定时扫描。(3)中断扫描工作方式:为了进一步提高键盘接口CPU的工作效率,可以采用中断扫描工作方式。当没有键按下时,/I N T1为高电平;当任意键被按下时,/I N T1变为低电平,向CPU申请中断。若CPU开放外部中断1,则响应中断,执行中断服务程序扫描键盘,并判断是哪个键被按下。面板上键盘包括启动运行、停止运行、复位键及设置时间键。第三章 软件设计模糊PID控制器具有以下一些特点:(1) 算法简单实用,本质上不依赖于系统的数字模型;(2) 可充分利用单片机的软件资源,可靠性高,开发速度快;(3) 克服了传统PID控制器操作的困难,提高了系统的智能化程度;(4) 模糊PID控制器棒性好,
30、具有专家控制器的特点,并可推广应用于其它工作领域。模糊PID控制的基本思想:1 模糊PID自整定控制器的设计功率放大传感器电液伺服系统D/A转换A/D转换单片机数码显示键盘给定启动停止停机状态启动停止命令吗?数据显示模块模糊PID控制算法模块计算偏差 偏差变换量采样实际速度标度变换开始启动停止命令吗?初始化2 模糊控制器算法研究 y输出量被控对象uk3k2PID调节器k1逆模糊化处理模糊决策模糊控制规 则E1E2模糊化e2e1给定量r-+de/dt 2.1 输入值的模糊化模糊自整定PID控制器是在fuzzy集的论域中进行讨论和计算的,因而首先要将输入变量变换到相应的论域,并将输人数据转换成合适
31、的语言值,也就是要对输入量进行模糊化。结合本液压伺服系统的特性,这里选择模糊变量的模糊集隶属函数为正态分布,具体分布如图4所示。根据该规则可把实际误差e、误差变化率ec(dedt)对应的语言变量E、EC表示成模糊量。E、EC的基本论域为-6,+6,将其离散成13个等级即-6,-5,-4,-3,-2,-1,0,+1,+2,+3,+4,+5,+6。考虑到控制的精度要求,本设计将-6,+6分为负大NB、负中NM、负小NS、零ZO、正小PS、正中PM、正大PB等7个语言变量,然后由e、ec隶属函数根据最大值法得出相应的模糊变量。2.2 模糊控制规则表的建立2.3 逆模糊化处理及输出量的计算 系统的软件
32、实现1.单片机的软件编程2. 系统运行主程序YN重新设定参数与设定温度相等?关中断模糊PID调节采样温度并显示CPU开中断设定定时器T0值清显示缓冲区清寄存器设定堆栈主程序开始图4.2主程序流程图3.MAX6675温度采集设计 否是返回故障显示调用显示子程序数据处理热电耦开路?读MAX6675串行数据开始图4.3MAX6675温度采集程序流程4.8279 键盘显示程序设计利用8279可实现对键盘/显示器的自动扫描,以减轻CPU负担,并具有显示稳定、程序简单、不会出现误动作等特点。程序流程图如图4.4,图4.5YN中断返回恢复现场求取键号有键按下消除现实保护现场键盘中断图4.4键盘中断子程序流程
33、图YN中断返回恢复现场清空显示指针显示完八位显示暂存指针加1送显示显示中断保护现场图4.5显示中断子程序流程图5. 模糊控制程序设计FuzzyPID控制算法的设计思想是:在大偏差范围采用Fuzzy控制,在小偏差范围内转换成PID控制,由程序根据事先给定的偏差范围自动实现切换。软件流程图如下图:是是否否输出控制量将控制量清晰华查模糊规则表将e,ec模糊化e6PID控制U=Umax e20采样e,ec开始图4.6软件流程图结 论 此次设计我们通过运用所学知识 ,发现,提出,分析和解决很多实际问题,锻炼了实践能力,是对我们的实际工作能力的具体训练和考察过程.随着科学技术发展的日新月异,从理论到实践,
34、在设计的这段时间里,学到了很多很多的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到的问题可以说得是困难重重,这毕竟第一次做,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢。从设计任务的制定,相关资料的查阅,都有条不紊的进行,接下来就设计到系统方案的论证和模块电路的选择和实现,一开始不
35、知道如何下手,但是进过查阅相关资料并加以综合,发现了其实任何设计都是有规律可循的,就拿这次的电阻炉温度控制系统设计而言,不外乎就是几部分,采用什么控制作为主控,比如单片机、PLC、还是调节器。再用就是温度的检测变换,对温度的处理,键盘输入(温度值设定),显示电路以及加温降温控制。 最难得就是整机硬件电路设计,不但是每个模块电路可行,还必须保证整个系统的可实现,接下来就是控制算法的设计,必须能够实现这个系统的控制要求。总之这次课程设计让我深刻的意识到了通过各种途径去学习是很关键的,还有就是实践能力是重中之中。致 谢 在本次设计过程中,我得到了导师的悉心指导。在老师的帮助和严格要求下,我终于完成了
36、毕业论文。通过这次毕业设计,我不仅扎实了我的理论知识,还极大地提高了自己的实践能力。在此,向我的导师表示深深的谢意,感谢老师这段时间在学习和生活上给我的无私帮助。学校还为我们提供了非常方便的上机环境,实验室的老师也给我们很大的帮助。最后,对老师、实验室老师、院领导以及所有教师致以诚挚的谢意。同时,还要感谢过帮助我的同学。由于本人能力有限,设计中存在缺陷再所难免,请各位老师批评指正。 此致敬礼参考文献附 录1.温度值读取程序 MOV R7, #08H RD_DATAH: ;读数据高位字节D15-D8MOV C,SO ;读SO端数据RLC A ;累加器左移一位SETB SCKNOPCLR SCKD
37、JNZ R7,RD_DATA MOV DATAH,A ;将数据高位移入缓冲区MOV R7,#08HRD_DATAL: ;读数据低位字节D7-D0MOV C,SO ;读SO端数据RLC A ;累加器左移一位SETB SCKNOPCLR SCKDJNZ R7,RD_DATALMOV DATAL,A ;将数据低位移入缓冲区SETB CS ;CS高电平,停止数据输出,启动新的数据转换;数据转换子程序,将读得的16位数据转换为12位温度值,去掉无用的位MOV A,DATAL RLC A MOV DATAL,AMOV A,DATAHRLC A ;整个数据位左移一位,去掉D15位SWAP A ;将DATAH
38、中的高低4位数据互换MOV B,A ;数据暂存于B中ANL A,#0FH ;得到温度数据高位字节部分D14 D11MOV TDATAH,A ;将温度值高位字节保存MOV A,BANL A,#0F0H ;得到温度数据低位字节部分D10 D7MOV B,A MOV A,DATAL ;ANL A,#0FH ;得到温度数据低位字节部分D6 D3ORL A,B ;合并的温度低位字节MOV TDATAL,A ;将温度值低位字节保存 2. 8279 键盘显示程序系统中8279的状态/命令口地址位8701H;数据口地址位8700H。源代码:Z8279 EQU 08701H ;8279 状态/命令口地址D827
39、9 EQU 08700H ;8279 数据口地址LEDMOD EQU 10H ;右端输入 八位字符显示 ;外部译码键扫描方式,双键互锁LEDFEQ EQU 38H ;扫描速率LEDCLS EQU 0D1H ;清除LEDWR0 EQU 80H ;设定的将要写入的显示RAM地址 ORG 0000H AJMP START ORG 0040HSTART: MOV SP,#60H LCALL INIT8279 ;初始化8279WAIT: MOV DPTR,#Z8279 MOVX A,DPTR ANL A,#0FH JZ WAIT MOV A,#40H MOVX DPTR,A MOV DPTR,#D827
40、9 MOVX A,DPTR ANL A,#3FH MOV R4,#00H MOV R5,A LCALL DISLED SJMP WAITINIT8279: ;8279初始化子程序 PUSH DPH ;保存现场 PUSH DPL PUSH ACC LCALL DELAY ;延时 MOV DPTR ,#Z8279 MOV A,#LEDMOD ;置8279工作方式 MOVX DPTR,A MOV A,#LEDFEQ ;置键盘扫描速率 MOVX DPTR,A MOV A,#LEDCLS ;清除 LED 显示 MOVX DPTR,A LCALL DELAY ;延时 MOV DPTR,#Z8279 MOV A,#90H MOV DPTR,#D8279 MOV A,#40H MOVX DPTR,A MOV A,#40H MOVX DPTR,A MOV A,#0H MOVX DPTR,A MOV A,#0H MOVX DPTR,A MOV A,#0EFH MOVX DPTR,A MOV A,#27H MOVX DPTR,A MOV A,#5BH MOVX DPTR,A MOV A,#7FH MOVX DPTR,A POP ACC ;恢复现场 POP DPL POP DPH