基于单片机控制的水温自动控制的设计

上传人:r****d 文档编号:71120883 上传时间:2022-04-06 格式:DOC 页数:40 大小:1.76MB
收藏 版权申诉 举报 下载
基于单片机控制的水温自动控制的设计_第1页
第1页 / 共40页
基于单片机控制的水温自动控制的设计_第2页
第2页 / 共40页
基于单片机控制的水温自动控制的设计_第3页
第3页 / 共40页
资源描述:

《基于单片机控制的水温自动控制的设计》由会员分享,可在线阅读,更多相关《基于单片机控制的水温自动控制的设计(40页珍藏版)》请在装配图网上搜索。

1、基于单片机控制的水温自动控制的设计摘 要:人工观光鱼养殖池的水温是观光鱼生存的根本环境。在常规的环境参数中,由于水温受其它因素影响较大,且难以校准,因此,温度也是最难准确测量的一个参数。在人工观光鱼养殖池的水温测控系统设计中,由温度传感器测量温度值并转换成电压信号,由变送器转换成标准的电压信号,经A/D转换器进行模数转换并读入单片机,经单片机处理后的温度数值,一方面送LED数码管显示;另一方面与给定值进行比拟,并判断是否超限,将发出报警信号,提醒人注意并采取相应措施;否那么正常显示温度数值,然后根据偏差值进行控制计算。计算结果经DA转换成电流信号,并带电阻丝工作,从而进行温度的调节,使其到达指

2、定要求。实践证明,通过单片机对人工观光鱼养殖池的水温进行控制,通常升温是采用煤加热,而现在改用电阻丝加热,不仅有利于防止在常规测温方法中测量误差大、准确度低、测量滞后时间长等问题,而且在节约能源和改善环境方面本设计显示出一定的优越性。关键词:单片机;温度;控制算法The Design of Water Temperature Automatic Control System Based on the MCU ControlAbstract: Water temperature of artificial pond is the basic of tourist fishs survival e

3、nvironment .Temperature is affected by other factors in the conventional environmental parameters, and also difficult to proofreading ; therefore, the water temperature is one of the most difficult to measure accurately parameters .In the control system of artificial ponds water temperature ,the tem

4、perature measured by temperature senor is changed into voltage signal, also changed into standard voltage signal by transformer, the analogical signal is converted into digital signal by A/D convertor , the result is sent into single-chip microcontroller , the measure result of temperature is handle

5、d by single-chip microcontroller , the one is sent to the LED, the other is compared with the temperature which is set by observe switch, and judge whether it exceed the limits or not, if spillover then warn and remind staffs attention, otherwise show normal temperature values, adjusted by PID, And

6、the lead implementing agency action. Practice proves ,the control of water temperature of artificial pond with MCU indicate the most advantages,usually the coal is used to heat, but now instead of resistance filament,not only help to avoid errors in the conventional treatments methods of measuring l

7、arge, low accuracy, measurement time lag issues, but also in improving the quality and quantity of the chemical produces, save sources, in improving the environment of the work place. Key Words: single-chip microcontroller ;temperature;control algorithms目 录1 概 述12 课题研究背景与意义12.1 课题研究背景22.2 课题研究意义23 总

8、体设计方案23.1 设计思路23.2 控制方法的选择34 系统的硬件设计34.1 单片机的选择34.2 温度检测电路64.3 A/D转换电路74.4 显示接口电路94.5 键盘接口电路114.6 D/A转换电路124.7 温度控制电路设计134.8 抗干扰措施145 数字PID及其算法145.1 PID算法的数字化155.2 PID算法的程序设计166 系统的软件设计186.1 系统软件功能186.2 主程序186.3 主要子程序197 结束语24参考文献25致 谢26附 录27附录1 程序清单27附录1.1 系统主程序清单27附录1.2 系统子程序清单29附录1.3 增量式PID控制程序清单

9、32附录2 总电路图35附录2.1 总电路图35附录2.2 系统PCB图37基于单片机控制的水温自动控制的设计1 概 述人工观光鱼养殖池的水温是观光鱼生存的根本环境,因此对水温的测量及控制始终占据着重要的地位。市场上常见的温度传感器以电压输出为主要形式,不同的传感器其非线性曲线也各不相同,缺乏一个产品应具备的通用性和互换性。温度传感器应用范围很广、使用数量很大,但是在常规的环境参数中,由于温度受其它因素影响较大,而且难以校准,因此,温度也是最难准确测量的一个参数。常规方法测量温度误差大、准确度低、测量滞后的时间长。近年来,国内传感器正向着集成化、智能化、网络化和单片系统化的方向开展,为开发新一

10、代温度测量系统创造了有利条件。在人工观光鱼养殖池的水温测控系统设计中,由温度传感器测量温度值并转换成电压信号,由变送器转换成标准的电压信号,经A/D转换器进行模数转换并读入单片机,经单片机处理后的温度数值,一方面送LED数码管显示;另一方面与给定值进行比拟,并判断是否超限,将发出报警信号,提醒人注意并采取相应措施;否那么正常显示温度数值,然后根据偏差值进行控制计算。计算结果经DA转换成电流信号,并带动电阻丝加热,从而进行温度的调节,使其到达指定要求。实践证明,通过单片机对人工观光鱼养殖池的水温进行控制,不仅有利于防止在常规测温方法中测量误差大、准确度低、测量滞后时间长等问题。2 课题研究背景与

11、意义单片微型计算机,简称单片机。它是工业控制和智能化系统中应用最多的一种模式。这种模式的最大特点是设计者可根据自己的实际需要开发、设计一个单片机系统,因而更加方便、更加灵活、并且本钱低。其根本方法是在单片机的根底上扩展一些接口,如用于模拟/数字的A/D、D/A转换接口,用于人机对话的键盘处理接口,LED和LCD显示接口,用于输出接口等。然后再开发一些应用软件,即可组成完整的单片机系统。与微型计算机相比,单片机具有以下特点。(A)合成度高,功能强。微型计算机通常由微处理器CPU、存储器RAM,ROM以及I/O接口组成。其各局部分别集成在不同的芯片上,然后,再由几个芯片组成一台微型计算机。(B)结

12、构合理。目前,单片机大多采用Harvard结构。这是数据存储器与程序存储器相互独立的一种结构。而在许多微型计算机中,大都采用两类存储器合二为一的方式。(C)指令丰富。单片机一般都有传送指令、逻辑运算指令、加减法运算指等,有些单片机还具有乘法及除法运算指令。特别是位操作指令十分丰富。 课题研究背景二十一世纪是科技高速开展的信息时代,电子技术、微型单片机技术的应用更是空前广泛,是随着超大规模集成电路技术的开展而诞生的。由于它具有体积小、功能强、性价比高等特点,所以广泛应用于电子仪表、家用电器、节能装置、军事装置、机器人、工业控制等诸多领域,使产品小型化、智能化,既提高了产品的功能和质量,又降低了本

13、钱,简化了设计。它迅猛开展到了各个领域,人们也越来越感到应用单片机技术的优越性,因而单片机也得到了广泛的应用。同时,它也在不断地完善和开展。随着现代科技的开展,用单片机控制水温环境得到采用。控制系统由中央控制装置、终端控制设备、传感器等组成。先编制出最适合环境条件的管理程序表,存储于单片机的记忆装置中,单片机根据程序表确认,并给终端控制系统指令。终端控制设备向中央控制装置输送检测信息,根据中央控制装置的指令输出控制信号,控制双向晶闸管导通与否,实现控制电阻丝加热的时间,到达温度调节的目的。该系统可根据情况可随时调节温度。 课题研究意义人工观光鱼养殖池丰富了人们的休闲娱乐生活,对人的身心健康开展

14、有一定的帮助,因此,对人工观光鱼养殖池水温的研究对业余文化事业的开展具有重要的意义。人工观光鱼养殖池的水温是观光鱼赖以生存根底,也是控制过程中的一个重要参数。用单片机对人工观光鱼养殖池的水温进行控制,可以一个对鱼类的生长有利的环境。本设计在原有普通传感器的根底上,经单片机处理而成新一代测量控制仪器,具有以下3个显著特点:A多功能的智能化测控系统,以最简单方式构成高性价比;B在硬件根底上通过软件实现测控功能,其智能化程度取决于软件的开发水平;C留有通信端口,可以将信息进行远距离传输,便于形成分布式控制系统。3 总体设计方案3.1 设计思路本设计系统硬件框图如图3-1所示,采用AT89C52作为主

15、机;由温度传感器测量人工观光鱼养殖池的水温值并转换成电压信号经过放大,再经A/D转换器进行模数转换,由I/O接口读入CPU,CPU进行数据处理。处理后的数据,一方面送LED数码管显示;另一方面与检测开关设定的温度控制值进行比拟,并判断是否超限,通过PID控制算法进行调节,运算结果返回单片机,使信号经过D/A转换器转换成模拟信号,带动电阻丝动作,从而进行温度的调节,以保持恒定的水温。传感器 变送器A/D转换电路电热丝可控硅触发电路单片机系统人机接口过零检测电路图3-1 系统硬件框图 控制方法的选择在连续生产过程中,控制算法一般可分为模糊控制算法、PID算法和大林算法等。模糊控制算法是不依赖对象的

16、数学模型,具有模糊逻辑“概念的抽象能力和非线性处理能力,且对过程参数的变化不敏感,是模糊数学同控制理论相结合的产物而人们对它了解不是太深入。大林算法是由美国IBM公司的大林(Dah llin)于1968年针对生产过程中含纯滞后的控制对象的控制算法,该算法的设计目标是设计一个适宜的数字控制器,使整个系统的闭环传递函数为带有原纯滞后时间的一阶惯性环节,而本设计并非纯滞后时间的一阶惯性环节。而PID控制技术成熟,控制结构简单,参数易调整,不必求出被控对象的数字模型便可以调节,所以在温度测控系统中通常采用PID算法。PID调节是Proportional(比例)、Integral积分、Different

17、ial微分三者的缩写,是连续系统中技术最成熟、应用最为广泛的一种调节方式。PID调节的实质就是根据输入的偏差值,按比例、积分、微分的函数关系进行运算,其运算结果用以输出控制。比例作用是调节器输出变化量与输入变化量成比例的一种控制作用,被控量一旦出现偏差,比例控制作用将使其朝着减少偏差的方向变化,控制作用的强弱取决于比例系数。积分作用是指调节器的输出与输入的积分成比例的作用,积分控制的特点是调节器的输出与偏差存在的时间有关,只要有偏差存在,输出就随时间不断增加,直到偏差被消除,系统才能到达稳定。微分作用是指输出与输入的导数成比例的控制作用。其特点是输出只能反映偏差的变化速度。对于固定不变的偏差,

18、不管偏差量多大,均不能有微分作用输出。了防止电阻丝动作过于频繁,消除由于频繁动作引起的振荡现象。4 系统的硬件设计 单片机的选择国内广泛应用的单片机主要有INTEL公司的MCS-51系列8位单片机、MCS-96系列16位单片机、MICROCHIP公司的PIC单片机、TI低功耗MSP430和日立、MOTOROLA的其他类型单片机等。其中MCS-51系列单片机应用范围最广、方便易用。AT89系列和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,增加瞬间擦除、改写的功能。根据设计要求、系统的特点和适时性,为了保证单片机接口的性能和扩展性,选择单片机AT89C52作为主机。A

19、T89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器RAM,器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器CPU和Flash存储单元,功能强大AT89C52单片机适合于许多较为复杂控制应用场合。 主要性能参数:与MCS51产品指令和引脚完全兼容8k字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:0Hz24MHz三级加密程序存储器2568字节内部RAM32个可编程I/O口线3个16位定时

20、/计数器8个中断源可编程串行UART通道低功耗空闲和掉电模式 功能特性概述:AT89C52提供以下标准功能:8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 引脚功能说明Vcc:电源电压GND:接地P0口:P0口是一组8位漏极开路型双

21、向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组I/O口线分时转换地址低8位和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动吸收或输出电流4个TTL逻辑门电路。对端口写“1,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个

22、电流(IIL)。与AT89C51不同之处是,和还可分别作为定时/计数器2的外部计数输入和输入,参见表4-1。Flash编程和程序校验期间,P1接收低8位地址。引脚号功能特性T2定时/计数器2外部计数脉冲输入,时钟输出T2EX定时/计数捕获/重装载触发和方向控制P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动吸收或输出电流4个TTL逻辑门电路。对端口P2写“1,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲

23、级可驱动吸收或输出电流4个TTL逻辑门电路。对P3口写入“1时,它们被内部上拉电阻拉高并可作为输入端口。此时,口除了作为一般的I/O口线外,更重要的用途被外部拉低的P3口将用上拉电阻输出电流IIL。P3是它的第二功能,如表4-2所示:表4-2 P3的第二功能端口引脚第二功能RXD串行输入口TXD串行输出口外中断0外中断1T0定时/计数0T1定时/计数1外部数据存储器写选通外部数据存储器读选通此外,P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。:当访问外部程序存储器或数据存储器时,ALE地址

24、锁存允许输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲PROG。如有必要,可通过对特殊功能存放器SFR区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。:程序储存允许输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令或数据时,每个机器周期两次PSEN有

25、效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。:外部访问允许。欲使CPU仅访问外部程序存储器地址为0000HFFFFH,端必须保持低电平接地。需注意的是:如果加密位LB1被编程,复位时内部会锁存端状态。如端为高电平接Vcc端,CPU那么执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用+12V编程电压Vpp。XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。4.2 温度检测电路4. 温度传感器的分类目前,温度传感器没有统一的分类方法。按输出量分类有模拟式温

26、度传感器和数字式温度传感器。按测温方式分类有接触式温度传感器和非接触式温度传感器。按类型分类有分立式温度传感器含敏感元件、模拟集成温度传感器和智能温度传感器即数字温度传感器。温度传感器的从测量原理分为,体积热膨胀,电阻变化,热电效应热电偶,压电效应频率变化,光学反响等温度传感器,它们各自有自己的优缺点,利用体积热膨胀的温度传感器,不需要用电。电阻温度传感器分为铜电阻,中等精度价格低;铂电阻高精度价格高;热敏电阻,精度低灵敏度高。热电效应温度传感器,温度范围宽,测量精度高但需要冷端补偿。利用压电效应和频率变化改变输出值的温度传感器可以作为标准使用。利用光学变化改变温度传感器适合高温非接触测量。4

27、 热电阻式温度传感器利用热电阻温度系数随温度变化而制成的温度传感器,称为热电阻温度传感器。对于大多数金属导体,其电阻值都具有随温度升高而增大的特性。常用的金属导体材料有铂、铜、铁和镍。热电阻是中低温区最常见的一种温度传感器。它主要特点是测量精度高,性能稳定。热电阻的电阻变化范围很小,如果直接用欧姆表测量其电阻值的变化将十分困难、且误差很大,必须使用电桥电路,然后经过放大电路,放大偏差值。铂是贵金属,因此在一些测量精度要求不高,测量范围较小的50 oC-150 oC的情况下,普遍采用铜电阻,铜电阻具有较大的温度系数,材料容易提纯,铜电阻的阻值与温度之间接近线性关系,铜的价格比拟廉价,所以铜电阻在

28、工业得到广泛应用。oooC,符合此题要求。温度传感器是整个控制系统获取被控对象特征的重要部件,这里采用Cu100铜热电阻作为温度传感器,其特征如表4-3所示。可见,这种热阻探头在系统测量的温度范围内线性特征表4-3 Cu100的电阻值随温度变化表温度值电阻值/201000251050301100351150良好,适合温度采样使用。具体温度采样电路如图4-1所示。将温度的变化转化变为电压的变化,经过放大后送往A/D转化为数字量进行处理。Rx为传感器热电阻,由电桥实现温度到电压的转化,由运放IC3完成信号的放大,由IC4完成信号的调整。图4-1 温度检测电路设输入IC3的2,3端电压分别对应为,那

29、么其中为传感器热阻值,为基准源电压,K为调整系数。由于如,同样如 ,因而,在后级的A/D,满刻度时,那么。实际电路调整中,已经确定,置传感器于25oC环境,调整,使;置传感器于35oC环境,调节,使;使完成前向模拟通道的调整。4.3 A/D转换电路A/D转换器把传感器采集的模拟量输入转换成单片机所能识别的数字量信号。A/D转换器的种类分为双积分A/D转换器如ICL7109,逐次逼近型A/D转换器如ADC0809和并型A/D转换器。双积分A/D转换器的精度高,抗干扰性好,价格廉价,但是速度较慢,逐次逼近型A/D转换器的精度,价格,速度适中,并型A/D转换器,速度快价格也昂贵,本设计综合考虑采用逐

30、次逼近型A/D转换器ADC0809。 单片机与A/D转换器接口电路的主要功能是:(A)通过I/O输出通道启动转换或直接输出指令MOVX DPTR,A启动转换。启动转换的方式完全由A/D内部电路结构而定。(B)把转换好的数据送入CPU。当确定使用A/D转换器以后,按以下原那么选择A/D转换器芯片。(a)根据前向通道的总误差,选择A/D转换器精度及分辨率。(b)根据信号对象的变化率及转换精度要求,确定A/D转换速度,以保证系统的实时性要求。 (c)根据环境条件选择A/D转换芯片的一些环境参数要求,如工作温度、功耗、可靠性等级性能。 (d)根据单片机接口特征,考虑如何选择A/D转换器的输出状态。其它

31、,还要考虑到本钱、资源、是否是流行芯片等因素。由于各A/D转换器的性能指标不一样,速度相差很大,一般需要有数10uS以上的转换时间,因此在单片机发出转换命令后,需等待转换结束方可读取数据。常用的有程序查询输入方式和中断方式。INT7和INT6两个输入端分别接地和AD参考电源,是为了实现数字自动调零和抑制电源波动对转换的影响,并可供微机仪表实现自校用。 ADC0809的内部结构如图4-2所示,本系统采用ADC0809构成A/D转换电路。ADC0809是CMOS单片型逐次逼近式AD转换器,内部结构它由8路模拟开关、地址锁存与译码器、比拟器、8位开关树型DA转换器、逐次逼近存放器、三态输出锁存器等其

32、它一些电路组成。因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。输入输出与TTL兼容。由于ADC0809的片内无时钟,它的时钟频率在10KHZ1280KHZ之间。可利用AT89C52提供的地址锁存允许信号ALE经D触发器二分频所得,ALE脚的频率是AT89C52单片机时钟频率的1/6。由于ADC0809具有输出三态锁存器,故其8位数据输出引脚可直接与数据总线相连。控制电路SAR树状开关256电阻阶梯三态输出锁存器8路模拟开关地址锁存与译码器比拟器 START CLOCK INT0 EOC INT1 INT2 2-1 INT3 2-2 INT4

33、2-3 INT5 INT6 2-4INT7 2-5 2-6 ADDAADDB 2-7ADDCALE 2-8 Vcc GND Vref(+) Vref(-) OE图4-2 ADC0809内部结构4.3.2 ADC0809的主要特性:1) 8路8位AD转换器,即分辨率8位。2) 具有转换起停控制端。3) 转换时间为100s4) 单个5V电源供电5) 模拟输入电压范围05V,不需零点和满刻度校准。6) 工作温度范围为-4085摄氏度7) 低功耗,约15mW。4.3.3 ADC0809的外部特性引脚功能ADC0809芯片有28条引脚,采用双列直插式封装,下面说明各引脚功能。IN0IN7:8路模拟量输入

34、端。2-12-8:8位数字量输出端。ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。ALE:地址锁存允许信号,输入,高电平有效。START:AD转换启动信号,输入,高电平有效。EOC:AD转换结束信号,输出,当AD转换结束时,此端输出一个高电平转换期间一直为低电平。OE:数据输出允许信号,输入,高电平有效。当AD转换结束时,此端输入一个高电平,才能翻开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。VREF+、VREF-:基准电压。Vcc:电源,5V。GND:地。ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入

35、地址锁存器中。此地址经译码选通8路模拟输入之一到比拟器。START上升沿将逐次逼近存放器复位。下降沿启动 AD转换,之后EOC输出信号变低,指示转换正在进行。直到AD转换完成,EOC变为高电平,指示AD转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平 时,输出三态门翻开,转换结果的数字量输出到数据总线上。本设计采用逐次逼近A/D转换器ADC0809,它精度、速度、价格适中都能到达技术要求。温度采集局部,把温度值转换成电压信号,在经过放大,输入到ADC0809进行转换,输入到单片机中进行处理。4.4 显示接口电路4.4.1 LED结构LED的结构及连接见图4-3,通常的七

36、段LED显示器的管脚有8个发光二极管其中一个发光二极管构成小数点,常用的7段LED显示器的管脚图如图4-3a所示。从管脚a-g输入不同的7位二进制数,可显示不同的数字或字符,通常把控制发光二极管的7位二进制数称为七段码或端选码。另外3,8引脚为接地端和片选短。所有发光二极管的阳极连在一起称共阳极接法,阴极连在一起称为共阴极接法。一般共阴极可以不需要外接电阻,但共阳极接法中发光二极管必须外接电阻。 (a)管脚配置 b共阴极 c共阳极图4-3 LED显示器原理图4.4.2 LED工作原理LED数码管显示有所用数码管是共阴管、还是共阳管,由数码转换为笔划信息借软件译码、还是硬件译码,以及显示扫描采用

37、动态扫描、还是静态扫描等种种区别。LED数码管工作电路如图4-4。图4-4 LED数码管工作电路图采用共阴极数码管还是共阳极数码管没有太明显的优、缺点,然而与同一数码对应的笔划信息码往往是相互置反的关系。字符数据字与LED段码关系如表4-4。动态扫描各数码管是轮流点亮的,由于视觉的暂留现象,却好似都点亮着。实际控制数码管点亮的位选信号是依次逐一送出的,而各个数码管应显示数码的笔划信息那么与其位选信号同时送给,于是各管将按序一一亮出自己的数码;待各管都轮到后,又再从头轮起,反复不已。对于动态扫描,轮到某管、等待该管点亮必须留给一段恰当的时间。时间过短,数码管来不及点亮;时间过长,其他数码管将熄灭

38、、不能显示。静态扫描无位选信号,各数码管是同时点亮的;每个数码管应显示数码的笔划信息也分路同时送给。中选用共阴极的LED显示管时,所有发光二极管的阴极连在一起接地,当某个发光二极管的阳极参加高电平时,对应的二极管点亮。因此要显示某字形就应使此字型的相应段的二极管点亮,实际上就是送一个用不同电平组合代表的数据字来控制LED的显示,此数据称为字符的段码。表4-4 字符数据与LED段码关系数据字D7D6D5D4D3D2D1D0LED段DP g f e d c b a LED与单片机的接口设计本系统由于单片机的接口有限,单片机的接口不能满足显示电路与单片机的接口电路,因此利用了8255扩展芯片。825

39、5是一种通用的可编程并行I0接口芯片,是专为INTEL公司听微处理器设计的。它具有可用程序来实现多种功能、通用性强、使用灵活的特点。本设计利用8255A可编程的特点,作为Pc机与显示器的中间桥梁,扩展PC机控制功能。8255作为PC机的扩展口,工作方式为方式0,即根本输入输出方式。其中8255A的A口、B口作为输入,C口作为控制口。8255总线缓冲器D0一D7,与CPU的数据总线DB0一DB7相连,8255A的、与CPU的、直接相连,复位信号直接接在CPU的复位信号上。由CPU地址线P2.4产生片选信号,CPU的地址线A0、A1分别组合成4个端口地址,进行对A、B、C进行端口选择。4.5 键盘

40、接口电路 拨盘的结构BCD码十进制拨盘是向单片机应用系统输入数据的设备,并且十分方便,是一种硬件设置数据的设备。使用拨盘输入的数据具有不可变性,却又易于修改。十进制输入BCD输出的拨盘是最常使用的一种。拨盘的结构如图4-5中所示,每位拨盘有0-9十个拨动位置,每个位置有相应的数字表示,分别代表拨盘输入的十进制数。所以,一位拨盘可以代表一位十进制数。可以根据设计的需要,用多位BCD码拨盘组成多位十进制数。每位BCD码的输入控制线A与P1.4-P1.7直接相连,8、4、2、1码相反后与P1.0-P1.3相连。在工作时,P1.4为0电平,P1.5-P1.7为1电平,那么选中第一个拨盘,其他拨盘均为为

41、1,4个与非门电路74LS20的输出状态平安,由第一拨盘输出决定。因此,CPU轮流使P1.4-P1.7为0,再读取P1.0-P1.3的值,就把表示的4位十进制值输入单片机。 键盘电路与单片机的接口电路在本设计中,需要多位十进制数据输入,因此需要多位BCD码拨盘组成图4-5为BCD码拨盘与单片机的连接电路图。图4-5 键盘电路本设计利用BCD码拨盘设置人工观光鱼养殖池的水温,方便设定温度,又能到达要求。键盘电路当输入数据以后,要经过消除抖动才能读入单片机,进行数据处理键盘中按键的开关状态,通过一定的电路转换为高、低电平状态,按键闭合过程中在相应的I/O口形成一个负脉冲,闭合和释放过程都要经过一定

42、的过程才能到达稳定,这一过程处于高、低电平之间的一种不稳定状态,称为抖动。消除抖动的方法有两种,一种是用硬件电路来实现,如用滤波电路和双温态电路等;另一种是利用软件来实现,即当发现有按键按下时,延时10-20ms再查询是否有按键按下,假设没有键按下,说明上次查询结果为干扰或抖动;假设仍有键按下,那么说明键已稳定,既可判断其键码,本设计是用软件延时的方法进行消除抖动。4.6 D/A转换电路D/A转换器:数/模转换器,它把数字量转换成电模拟量。即把二进制数字量转换为与其数值成正比的电模拟量。DAC0832是8位分辨率D/A转换集成芯片,与处理器完全兼容,其价格低廉,接口简单,转换控制容易等优点,在

43、单片机应用系统中得到了广泛的应用。 DAC0832引脚说明DAC0832的结构如图4-7中所示,下面说明各引脚功能。DI0-DI7:数据输入线,TLL电平ALE:数据锁存允许控制信号输入线,高电平有效。:片选信号输入线,低电平有效。WR1:输入存放器的写选通信号。:数据传送控制信号输入线,低电平有效。WR2:DAC存放器写选通输入线。:电流输出线,当输入全为1时最大。:电流输出线,其值与之和为一常数。:反响信号输入线,芯片内有反响电阻。Vcc:电源输入线+5V - +15V:基准电压输入线接口电路D/A的接口电路如图4-7所示,DAC0832为电流输出型D/A转换芯片,使用时,、3个引脚外接运

44、算放大器,以便将转换后的电流变换成电压输出。假设外接一个运算放大器为单极性输出,如图4-7输出;假设使用了两个运算放大器为双极性输出,如图4-7输出。图4-7 DAC0832接口电路图中,模拟输出电压的极性总是与极性相反,为单极性输出。 模拟输出电压可利用基尔霍夫节点电流定律列出方程:代入,求解得: . 当FFHN80H时, 模拟输出电压的极性和VREF相同; 当80HN0时,模拟输出电压的极性和VREF相反; 当N80H时,0V.为双极性输出。可根据应用场合的需要,将D/A转换接口芯片接成单极性输出或双极性输出。本设计是从单片机中取得计算结果经DAC0832转换成电流信号,再经过两个反相器,

45、转换成电压信号,把信号送到温控电路中,通过大小的不同,以到达控制电阻加热丝电路的通断。4.7 温度控制电路设计温控电路如图4-6所示,当输入到电压跟随器A1的同相输入端,用作缓冲隔离级,其输出送反相放大器A2同相输入端。R4,R5分压节点位约为636mV接到A2的反相输入端。的电位差经A2放大后,输出正电压到比拟器A3的反相输入端,与A3同相输入端的电压进行比拟。当温度较低时,较小,的电位差较小,A3反相输入端电位低于同相输入端电位,A3输出高电平,使V饱和导通,VS也导通,电热器被加热。随着温度的上升,逐渐增大,电位也逐渐增大,故A2输出的正电压也升高。当A3反相输入端电位高于同相输入端电位

46、时,A3翻转输出低电平,V截止,VS关断,电热器断电停止加热,水温下降,减少,如此反复,使加热的设备保持恒温。调节RP使VS刚刚关断为止,以后就不要调了,除非另外设置温度。这局部通过控制双向晶闸管的导通来控制加热电阻丝的工作。图4-6 温控电路图4.8 抗干扰措施所谓抗干扰,就是针对干扰的产生、性质年、传播途径、入侵的位置和入侵的形式,采用适当消除干扰源抑制耦合通道,减弱电路对干扰的敏感性。应根据实际情况抓住主要干扰,采取抑制措施。A) 交流电源干扰的抑制实践说明,交流电源干扰往往是单片机微机应用的严重问题。使用不间断电源不仅有稳压的作用,干扰较少,还能解除停电之忧。但造价高,体积大,是小型单

47、片机应用系统难以接受的。而采用电源净化技术,那么切实可行。B) 输入输出通道干扰的抑制通常测控对象上的传感器、执行器远离控制台,来往的输入、输出线长,容易窜入干扰,必须采用隔离、滤波、屏蔽等技术,抑制干扰耦合通道。一般采用光电隔离。5 数字PID及其算法对人工观光鱼养殖池的水温进行控制,把给定值与温度采集的值进行比拟,根据偏差进行控制,控制算法采用PID调节算法。PID调节是连续系统中技术最成熟、应用最为广泛的一种调节方式。PID调节的实质就是根据输入的偏差值,按比例、积分、微分的函数关系进行运算,其运算结果用以输出控制。在实际应用中,根据被控对象的特性和控制要求,可灵活地改变PID的结构,取

48、其中的一局部环节构成控制规律,如比例P调节、比例积分PI调节、比例积分微分PID调节等。5.1 PID算法的数字化在模拟系统中,PID算法的表达式为 5-1式中 调节器的输出信号;调节器的偏差信号,它等于测量值与给定值之差;调节器的比例系数;调节器的积分时间;调节器的微分时间。 由于计算机控制是一种采样控制,它只能根据采样时刻的偏差来计算控制量。因此,在计算机控制系统中,必须首先对式5-1进行离散化处理,用数字形式的差分方程式代替连续系统的微分方程,此时积分项可用求和及增量式表示: 5-2 5-3将式5-2和式5-3代入5-1,那么可得到离散的PID表达式: 5-4式中=采样周期,必须使足够小

49、,才能保证系统有一定的精度; 第次采样时的偏差值; 第次采样时的偏差值; 采样序号,=0,1,2,; 第次采样时调节器的输出。由式5-4可以看出,要想计算,不仅需要本次与上次的偏差信号和,而且还要在积分项中把历次的偏差信号进行相加,即。这样,不仅计算烦琐,而且为保存还要占用很多的内存。因此,用式5-4直接进行控制很不方便,可以做如下改动。根据递推原理,可写出次的PID输出表达式: 5-5用式5-4减去式5-5,可得: 5-6式中 积分系数; 微分系数。由式5-6可知,要计算第次输出值,只需知道,即可,比用式5-4计算要简单得多。在很多控制系统中,由于执行机构是采用电阻丝进行控制的,所以,只要给

50、一个增量信号即可。因此,把式5-4和式5-5相减,得到: 5-7式中,同式5-6。式5-7表示第次输出的增量,它等于第次与第次调节器的输出和差值,即在第次的根底上增加或减少的量,所以式5-7叫做增量型PID控制算式。用微型机实现位置式和增量式控制算法的原理,如图5-1所示。P(K)=式(5-6)Wd r(t) + e(t) P(K) m(t) - 计算机(a) 位置式控制P(K)=式(5-6)Wd r(t) + e(t) P(K) m(t) - 计算机b增量式控制图5-1 两种PID控制原理图此外,除了上述两种控制算法外,还有一种称为速度控制的PID算法,即 5-85.2 PID算法的程序设计

51、用汇编语言进行PID程序设计有两种运算方法,一种用定点运算,一种为浮点运算。定点运算速度比拟快,但精度低一点;浮点运算精度高,但运算速度比拟慢。一般情况下,当速度变化比拟慢时,可采用浮点运算。如果系统要求速度比拟快,那么需采用定点运算的方法。5 位置型PID算法程序的设计由式5-7可写出第次采样时PID的输出表达式为 5-9 5-10式5-10即为离散化的位置型PID编程公式,其流程如图5-2。图5-2 位置型PID运算程序流程图5 增量型PID算法的程序设计由式5-7可知,增量型PID算式为设 所以,有 5-11 式5-11为离散化的增量型PID编程表达式。增量型PID运算程序流程如图5-3

52、,程序清单参见附录。图5-3 增量型PID运算程序流程图6 系统的软件设计6.1 系统软件功能a键盘设定温度控制值,控制系统转入相应的加热或恒温阶段。b从四处检测水温经过A/D转换,输入单片机进行处理。c进行PID运算,按照运算结果,驱动加热器加热,以调节温度。d发现温度超限时,给出报警信号。6.2 主程序 主程序主要进行初始化,分配内存单元及设置定时器参数,以便为系统正常工作创造条件。由于本系统采样数据为12位双字节,加上一些给定值,如温度上限报警值,所以内存单元比拟多,故本系统将同时使用内部RAM及外部RAM。主程序流程如图4-1所示,本系统的采样周期为5s,采用两个定时器串联的方法,即设

53、T0为定时方式,设T1为计数方式。设T0为定时方式1,定时的时间间隔为100ms,时钟频率选6MHz。代入公式,可得出T0应装入的时间常数X=3CB0H,可分别装入TH0和TL0。设T1为计数方式2,计数值为50即32H。程序清单参见附录1.1。图6-1 温度控制系统的主程序6.3 主要子程序6.3.1 A/D转换子程序数据采集程序流程如图6-2所示,该子程序通过P1口的P1.3P1.6控制A/D转换。根据ADC0809的STATUS端的状态判断转换是否完成。待A/D转换完成后,将芯片置位保持状态HOLD信号有效。然后,分两次读入12位转换数据,存放在片内数据存储区。从四处采集数据,在经A/D

54、转换输入到单片机中进行处理。A/D置位采样置采样STATUS=1?STATUS=0?A/D置位保持自动效零,延时读转换结果返回 NN图6-2 数据采集流程图6.3.2定时采样处理中断效劳程序 定时采样处理中断效劳程序即5s定时中断效劳程序,其主要任务是:a) 数据采集程序清单参见附录1.2.1;b) 数字滤波;报警处理;显示温度;控制计算;控制输出等。完成上述任务的定时中段效劳程序流程如图6-3。图6-3 定时采样中断效劳流程图定时器中断效劳程序如下: ORG 000HRESET:AJMP MALN ;转主程序 ORG 00BH AJMP RROPORG 0100HMAIN:MOV SP,#6

55、0HACALL PTOMOHERE: AJMP HEREPTOMO:MOV TL0,#3CH ;T0置初值MOV TH0,#0B0HSETB TR0 ;启动T0SETB ET0 ;允许T0中断SETB EA ;CPU开放中断RETRROP: MOV TL0,#3CH ;T0置初值MOV TH0,#0B0HRET外部中断程序此程序功能为将经过A/D转换电路处理过的数据读入单片机内储存。 程序流程框图6-4所示,因为P1为双字节数,先将P1口的状态读入到累加器A中,这样就可以通过位操作指令来判断判断A状态 而判断P1.0-P1.7的状态;由于DS1-DS4为1时Q0-Q3分别输出A/D结果的 十位

56、个位和小数位,DS1对应十位,DS4对应小数位,这样在程序中表达为ACC.4=1时P1.3中为十位,ACC.5=1时P1.2中为个位,ACC.6=时P1.1中为小数位,ACC.7=1时P1.0中为小数位;换言之,ACC.3=1时表示有十位,那么将01H存到21H,否那么将00H存入21H中;ACC.2=1时表示有个位,那么A1-3中数据存入22H中,反之那么重读数据再判断;假设ACC.6=1表示有小数位那么将A0-3中数据存入23H中;假设ACC.7=1表示有小数位那么将A0-3存入24H中,假设ACC.0=1那么有小数位,那么转出错处理程序,并退出中断,我分别L2、L3、L4和L5来构成循环判别小程序嵌套在中断程序中,以简化程序,所编程序如下程序。A(P1)ACC.4=1?ACC.3=1?ACC.0=0?A(P1)ACC.6=1(23H)(A0-A3)ACC.7=1?A(P1)(24H)(A0-A3)返回(21H)01H出错处理退出中断(21H)00H ACC.5=1?(22H)(A1-A3)A(P1) N

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!