• 784.00 KB
  • 14页

基于单片机数字温度控制器项目报告

  • 14页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'浙江工商职业技术学院工学院项目报告浙江工商职业技术学院《自动化创新项目实践》项目报告题目基于单片机数字温度控制器姓名学号0901215106专业班级自动化0921学院工学院指导教师2011年12月20日-II- 浙江工商职业技术学院工学院项目报告1绪论1.1项目背景温度控制器是集成编程器与软件并实现智能化控制温度的开关,可以自由调节室内温度,并能按用户要求设定各种时间段的开关和各种预设好的模式下自动运行调节室温;使之达到舒适的温度。真正达到方便、节能、舒适温暖的理想生活环境.适用于中央空调、单户取暖、地暖及各种燃油、燃气锅炉(壁挂炉)等设备的使用,是理想的温度控制产品及节能产品。图1.1温度控制器1.2温控器控制要求测量控制范围:温度-50℃~150℃显示精度±0.1℃(<100℃)检测精度:±0.5℃1.3显示方式:三位LED数码管显示,1位小数加热控制:启动:温度≤设定温度(下限);停止:温度≥设定温度(下限)+温度回差;风扇控制:启动:温度≥设定温度(上限);停止:温度≤设定温度(上限)-温度回差1.4功率消耗:≤5W负载继电器输出容量:AC220V/5A(阻性负载时)◇ST-801S-96型二路◇ST-802S-96型四路◇ST-803S-96型六路报警继电器触头容量:AC220V/5A(阻性负载时)一路-13- 浙江工商职业技术学院工学院项目报告2项目解决思路2.1温控器控制的硬件设计温控器的硬件设计如图1所示。图2.1温控器硬件设计图2.2是实际连线图,可以清晰的了解温控器的主要画面和连线。图2.2温控器控制系统外部接线图-13- 浙江工商职业技术学院工学院项目报告2.2AT89C52单片机硬件电路单片机(SCM)是单片微型计算机(SingleChipMicrocomputer)的简称。它是把中央处理器CPU、随机存储器RAM、只读存储器ROM、I/O接口电路、定时/计数器以及输入输出适配器都集成在一块芯片上,构成一个完整的微型计算机。它的最大优点是体积小,可放在仪表内部,但存储量小,输入输出适配器简单,功能较低。目前,单片机在民用和工业测控领域得到最广泛的应用,早已深深地融入人们的生活中。近年来,AT89C51在我国非常流行,它最大的特点是内部有可以多次重复编程的ROM,并且ROM可以直接用编程器来擦写,使用起来比较方便。本设计使用到的元器件包括:AT89C52芯片、数码LED显示器、七段LED数码管的译码。其中AT89C52是系统的核心,它主要负责控制各个部分的协调工作。如下图2.3所示,单片机中p1.0-p1.7为电梯楼层输入键接口,数码管段选p0.0-p0.7口,蜂鸣器输出为p2.7口,p3.0-p3.7接口为按键指示灯,p2.4-p2.6接口为电梯运行方向指示。图2.3单片机ST89C52-13- 浙江工商职业技术学院工学院项目报告2.3模拟温控器按键指示灯电路按键部分在设计中较为重要,作为按键输入上限、下限信息,控制指令进行温度看着的模拟,由此可见它是设计中尤为重要的部分。常见的单片机按键设计分为独立式和行列式。独立式按键简单,但程序比较麻烦。本设计中共有4个按键,能够实现模拟温控器的温度设置。由于是简单模拟温控器系统,因此采用了独立式按键设计。4个按键分别与单片机的p2.4-p2.7口相连,用于模拟温控器温度设置按键,且为低电平有效。当S1按键按下,单片机p3.1置0,LED发光二极管点亮,表示电路通电,可以进行设置。当外界温度到了设置温度LED亮的报警三极管驱动蜂鸣器响。按键部分如图2.4所示。K1→进入设定温度报警值TL状态:K2→进入设定温度报警值TH状态K3→返回K4→模式切换,长按2秒左右依次为继电器状态取反(111C),继电器状态取反(222C),温控模式(显示333C即将进入温控模式)图2.4按键指示灯模块-13- 浙江工商职业技术学院工学院项目报告2.4蜂鸣器音频输出电路本次设计中具有提示功能。利用程序来控制单片机某个口线的“高”电平或“低”电平。电路是由扬声器、一个三极管和两个电阻组成。蜂鸣器是利用三极管导通与截止,在三极管导通时蜂鸣器工作,三极管截止时蜂鸣器不工作。三极管采用PNP型基极接于P2.2口置其低电平时三极管导通,置其高电平时三极管截止。具体电路如图2.5所示。图2.5蜂鸣器音频输出电路2.5显示部分如图2.6所示是八位数码管显示部分原理图,显示部分是温控器最重要的一部分,它记录了温控器设置和现场显示的温度,共需要8位LED显示器。它是通过位选端控制在LED上显示数字,由于端口的问题以及动态显示方式的优越性,在此设计的连接方式上采用共阳级接法。显示器LED有段选和位选两个端口,首先说段选端,它由LED八个端口构成,通过对这八个端口输入的不同的二进制数据。八位数码管作为显示部分,用来显示温控器运行状态,使人更直观的了解温控器的运作,方便明了。图2.6显示电路-13- 浙江工商职业技术学院工学院项目报告2.6串口模块串口模块是我特意加入的部分,主要功能是实现单片机与VisualBasic软件的通讯。方便用电脑对温控器进行远程控制。如图2.7所示图2.7串口模块图2.8VisualBasic软件通讯界面-13- 浙江工商职业技术学院工学院项目报告2.7电源模块本次设计所需要的模块有单片机最小系统,数码管显示器,蜂鸣器,它们都需要电源。因此在电源设计中,我设计了12V电源,采用7805三段稳压片即可满足要求。本设计是采用三端稳压器7805稳定直流输出电压,因此7805起到的是稳压作用。C1,C2分别为输入端和输出端滤波电容,输出端电阻为负载电阻。直流稳压电源一般由变压器、整流波、滤波器和稳压器四部分组成。变压器把220V交流电变位稳压所需要的低压交流电,整流器把低压交流变为直流电。整流后的直流电含有交流成分,可以通过滤波电路将交流成分滤波,经滤波后,稳压器再把不稳定的直流电压变为稳定的直流电压输出12V,电源电路设计如图2.7。图2.7电源电路-13- 浙江工商职业技术学院工学院项目报告3系统软件设计3.1程序设计程序设计(Programming)是指设计、编制、调试程序的方法和过程。它是目标明确的智力活动。在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出。为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。把一个程序分成具有多个明确任务的程序模块,分别编制、调试后再把它们连接在一起形成一个完整的程序,这样的程序设计方法称为模块化程序设计。所谓“模块”,实质上就是能完成一定功能,并相对独立的程序段,这种程序设计方法称为模块程序设计法。模块程序设计法的主要优点是:(1)单个模块比起一个完整的程序易编写、调试及修改。(2)程序的易读性好。(3)程序的修改可局部化。(4)模块可以共存,一个模块可以被多个任务在不同条件下调用。(5)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。本系统软件采用模块化结构,由主程序﹑键盘子程序、显示驱动子程序构成。3.2主程序设计此单片机模拟温控器系统用发光二极管组成的上下来指示温控器当前是处于手动设置状态还是软件远程控制状态,用数码管显示当前的温度,按键二极管指示温控器的上限温度和下限温度。电源接通后,可以设置上、下限温度,然后等待温度的变化,若当前的温度高于设定温度,报警灯会亮,并且蜂鸣器会响。-13- 浙江工商职业技术学院工学院项目报告3.3系统流程图根据模拟温控器具有的功能,软件流程图如下图3.1所示Y发DS18B20复位命令发跳过ROM命令发读取温度命令读取操作,CRC校验9字节完?CRC校验正?确?移入温度暂存器结束 NNY初始化调用显示子程序1S到?初次上电读出温度值温度计算处理显示数据刷新发温度转换开始命令NYNY图3.1主程序流程图-13- 浙江工商职业技术学院工学院项目报告3.4软件程序从AT89451中读出现场的温度READ:MOVR4,#4;将温度高位和低位从AT89451中读出MOVR1,#26H;存入26H、27H、28H、29HRE00:MOVR2,#8RE01:CLRCSETBDATA_LINENOPNOPCLRDATA_LINE;读前总线保持为低NOPNOPNOPSETBDATA_LINE;开始读总线释放MOVR3,#09;延时18微妙DJNZR3,$MOVC,DATA_LINE;从AT89451总线读得一个BITMOVR3,#23DJNZR3,$;等待46微妙RRCA;把读得的位值环移给ADJNZR2,RE01;读下一个BITMOV@R1,AINCR1DJNZR4,RE00RET-13- 浙江工商职业技术学院工学院项目报告4温控器的调试4.1硬件调试本设计的硬件调试利用开发系统、基本测试仪器(万用表、示波器等),检查用户系统硬件中出现的故障。硬件调试可分为静态调试和动态调试。4.1.1静态调试静态调试是在用户系统未工作时的一种硬件检测。第一步:目测。检查外部的各种原件或者是电路是否有断点。第二步:万用表测试。先勇万用表复核目测中有疑问的连接点,再检查各种电源线与接地之间是否有短路现象。第三步:加电检测。通电,检测所有的插座或者是器件的队员端是否符合要求的值。第四步:联机检查。只有用单片机开发系统才能完成对用户系统调试。4.1.2动态调试动态调试是在用户系统工作的情况下,发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等一种硬件检查。动态调试的一般方法是由近及远、由分到合。由分到合适指首先按逻辑功能将用户系统硬件电路分为若干块。当调试电路时,与该原件无关的器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。当各块电路无故障后,将各电路逐块加入系统中,再对各块电路功能及各电路间可能存在的相互联系进行调试,由分到合的调试就可完成。由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。4.1.3调试结果(1)在调试过程中发现到报警的提示音也是蜂鸣器,较为单调。因此增加了音乐芯片,能够提供一段优美的音乐。(2)单片机难以复位,比较麻烦,原因是代码编辑时错误。(3)在调试过程中预计只有加热的部分,也就是通常高于常温,我特意加入制冷的部分,功能更强大。-13- 浙江工商职业技术学院工学院项目报告4.2PLC程序的调试方法及步骤软件调试是通过对用户持续的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。模拟温控器的调试过程如下:(1)按照系统硬件连线图连好。(2)把编写好的程序进行汇编输入单片机AT89C52仿真器核对其进初始化。(3)先按下开启键,观察LED能否正常显示,再观察发光二极管形成的上升和下降信号和数码显示管显示的数字增大减小时都一致。当这些都符合指标后,再让温度传感器加温,观察其是否能达到预想目的。接着实验复位开关,检验能否完成清零的功能,并做出相应的调整。-13- 浙江工商职业技术学院工学院项目报告5结论通过本次课程设计使我对Protel99SE仿真软件的使用和汇编语言有了更进一步地了解和掌握。在最初编写过程中,我也曾经因为实践经验的缺乏失落过,也曾经因仿真成功而热情高涨。特别是Protel99SE仿真软件的使用,不知是由于电脑的问题还是怎么,这个软件的安装就花了我很长的时间,好不容易安装好了,又对软件的使用一点都不熟悉,要从头开始学起,对着老师发给我们的芯片原理进行仿真画图,刚刚开始时候真的很难下手,很多东西都不太明白,都是通过自己一个个来慢慢琢磨,才把仿真图画了出来,然后把写好的程序导入芯片,进行仿真,当看到程序正常运行的那一刻,心中真是有几分的喜悦。虽然这只是一次的较简单的课程设计,可是平心而论,也耗费了我不少的心血。总的来说,由于精心设计与调试,毕业设计的成品还是很成功的,而且本程序的编写不仅仅是为了应对温控器加热部分,如果对单片机的其他I/O再进行扩展的话,可以实现制冷的需求。当然,功能更多,就会受到单片机管脚资源的限制了。而程序本身的思想本身是可以支持更多层功能的运行调度的,如果用其他管脚多的处理器的话(如ARM型处理器),则这一设想完全可以实现。当然,本设计还是有些不足之处的,温度传感器还不是特别灵敏,制作工艺也不是特别精湛,但是基本可以实现预定的功能,还是很欣慰的。-13-'