《项目报告.docx》由会员分享,可在线阅读,更多相关《项目报告.docx(14页珍藏版)》请在第一文库网上搜索。
1、浙江工商职业技术学Bfe自动化创新项目实践项目报告题目基于单片机数字温度控制器姓名学号0905106专业班级自动化0921学院工学院指导教师2011年12月20日1绪论11项目背景温度控制器是集成编程器与软件并实现智能化控制温度的开关,可以自由调节室内温度,并能按用户要求设定各种时间段的开关和各种预设好的模式下自动运行调节室温;使之达到舒适的温度。真正达到方便、节能、舒适温暖的理想生活环境.适用于中央空调、单户取暖、地暖及各种燃油、燃气锅炉(壁挂炉)等设备的使用,是理想的温度控制产品及节能产品。1. 图1.1温度控制器2. 2温控器控制要求测量控制范围:温度-50150显示精度0.1(A1EP
2、ROGP3.24NT0PSENP3.3TNT1P2.7P3.4T0P2.6P3.5ZT1P2.5P3.6VRP2.4P3.7RDP2.3XTA12P2.2XTA11P2.1GNDP2.0rCG0239338437536635734833932IOVrCO11130122913281427152616251724182319222021图23单片机ST89C523. 3模拟温控器按键指示灯电路按键部分在设计中较为重要,作为按键输入上限、下限信息,控制指令进行温度看着的模拟,由此可见它是设计中尤为重要的部分。常见的单片机按键设计分为独立式和行列式。独立式按键简单,但程序比较麻烦。本设计中共有4个按
3、键,能够实现模拟温控器的温度设置。由于是简单模拟温控器系统,因此采用了独立式按键设计。4个按键分别与单片机的p2.4-p2.7口相连,用于模拟温控器温度设置按键,且为低电平有效。当S1按键按下,单片机p3.1置O,1ED发光二极管点亮,表示电路通电,可以进行设置。当外界温度到了设置温度1ED亮的报警三极管驱动蜂鸣器响。按键部分如图2.4所示。K1一进入设定温度报警值T1状态:K2一进入设定温度报警值TH状态K3f返回K4模式切换,长按2秒左右依次为继电器状态取反(I1IC),继电器状态取反(222C),温控模式(显示333C即将进入温控模式)2.4蜂鸣器音频输出电路本次设计中具有提示功能。利用
4、程序来控制单片机某个口线的“高”电平或“低”电平。电路是由扬声器、一个三极管和两个电阻组成。蜂鸣器是利用三极管导通与截止,在三极管导通时蜂鸣器工作,三极管截止时蜂鸣器不工作。三极管采用PNP型基极接于P2.2口置其低电平时三极管导通,置其高电平时三极管截止。具体电路如图2.5所示。喇叭模块2.3. 5显示部分如图2.6所示是八位数码管显示部分原理图,显示部分是温控器最重要的一部分,它记录了温控器设置和现场显示的温度,共需要8位1ED显示器。它是通过位选端控制在1ED上显示数字,由于端口的问题以及动态显示方式的优越性,在此设计的连接方式上采用共阳级接法。显示器1ED有段选和位选两个端口,首先说段
5、选端,它由1ED八个端口构成,通过对这八个端口输入的不同的二进制数据。八位数码管作为显示部分,用来显示温控器运行状态,使人更直观的了解温控器的运作,方便明了。数码管显示模块串口模块是我特意加入的部分,主要功能是实现单片机与Visua1Basic软件的通讯。方便用电脑对温控器进行远程控制。如图2.7所示图2.7串口模块图2.8Visua1Basic软件通讯界面本次设计所需要的模块有单片机最小系统,数码管显示器,蜂鸣器,它们都需要电源。因此在电源设计中,我设计了12V电源,采用7805三段稳压片即可满足要求。本设计是采用三端稳压器7805稳定直流输出电压,因此7805起到的是稳压作用。C1,C2分
6、别为输入端和输出端滤波电容,输出端电阻为负载电阻。直流稳压电源一般由变压器、整流波、滤波器和稳压器四部分组成。变压器把220V交流电变位稳压所需要的低压交流电,整流器把低压交流变为直流电。整流后的直流电含有交流成分,可以通过滤波电路将交流成分滤波,经滤波后,稳压器再把不稳定的直流电压变为稳定的直流电压输出12V,电源电路设计如图2.7。电源模块图2.7电源电路3系统软件设计3.1程序设计程序设计(Programming)是指设计、编制、调试程序的方法和过程。它是目标明确的智力活动。在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。在单片机控
7、制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定的方法进行计算,然后再输出。为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。把一个程序分成具有多个明确任务的程序模块,分别编制、调试后再把它们连接在一起形成一个完整的程序,这样的程序设计方法称为模块化程序设计。所谓“模块”,实质上就是能完成一定功能,并相对独立的程序段,这种程序设计方法称为模块程序设计法。模块程序设计法的主要优点是:(1)单个模块比起一个完整的程序易编写、调试及修改。(2)程序的易读性好。(3)程序的修改可
8、局部化。(4)模块可以共存,一个模块可以被多个任务在不同条件下调用。(5)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。本系统软件采用模块化结构,由主程序、键盘子程序、显示驱动子程序构成。4. 2主程序设计此单片机模拟温控器系统用发光二极管组成的上下来指示温控器当前是处于手动设置状态还是软件远程控制状态,用数码管显示当前的温度,按键二极管指示温控器的上限温度和下限温度。电源接通后,可以设置上、下限温度,然后等待温度的变化,若当前的温度高于设定温度,报警灯会亮,并且蜂鸣器会响。3.3系统流程图根据模拟温控器具有的功能,软件流程图如下图3.1所示图3.1主程序流程图3.4软件程序从A
9、T89451中读出现场的温度READ:MOVR4,#4;将温度高位和低位从AT89451中读出MOVR1,ft26H;存入26H、27H、28H、29HREOO:MOVR2,#8REO1:C1RCSETBDATA_1INENOPNOPC1RDATA_1INE;读前总线保持为低NOPNOPNOPSETBDATA_1INE;开始读总线释放MOVR3,#09DJNZR3,$;延时18微妙MOVC,DATA_1INEMOVR3,#23;从AT89451总线读得一个BITDJNZR3,$;等待46微妙RRCA;把读得的位值环移给ADJNZR2,REO1MOVR1,AINCR1DJNZR4,REOORET
10、;读下一个BIT4温控器的调试4.1 硬件调试本设计的硬件调试利用开发系统、基本测试仪器(万用表、示波器等),检查用户系统硬件中出现的故障。硬件调试可分为静态调试和动态调试。4.1.1 静态调试静态调试是在用户系统未工作时的一种硬件检测。第一步:目测。检查外部的各种原件或者是电路是否有断点。第二步:万用表测试。先勇万用表复核目测中有疑问的连接点,再检查各种电源线与接地之间是否有短路现象。第三步:加电检测。通电,检测所有的插座或者是器件的队员端是否符合要求的值。第四步:联机检查。只有用单片机开发系统才能完成对用户系统调试。4.1.2动态调试动态调试是在用户系统工作的情况下,发现和排除用户系统硬件
11、中存在的器件内部故障、器件连接逻辑错误等一种硬件检查。动态调试的一般方法是由近及远、由分到合。由分到合适指首先按逻辑功能将用户系统硬件电路分为若干块。当调试电路时,与该原件无关的器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。当各块电路无故障后,将各电路逐块加入系统中,再对各块电路功能及各电路间可能存在的相互联系进行调试,由分到合的调试就可完成。由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。4.1 .3调试结果(1)在调试过程中发现到报警的提示音也是蜂鸣器,较为单调。因此增加了音乐芯片,能够提供一段优美的音乐。(2)单片机难以复位,比
12、较麻烦,原因是代码编辑时错误。(3)在调试过程中预计只有加热的部分,也就是通常高于常温,我特意加入制冷的部分,功能更强大。4.2 P1C程序的调试方法及步骤软件调试是通过对用户持续的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。模拟温控器的调试过程如下:(1)按照系统硬件连线图连好。(2)把编写好的程序进行汇编输入单片机AT89C52仿真器核对其进初始化。(3)先按下开启键,观察1ED能否正常显示,再观察发光二极管形成的上升和下降信号和数码显示管显示的数字增大减小时都一致。当这些都符合指标后,再让温度传感器加温,观察其是否能达到预想目的。接着实验复位开关,检验能否完成清零的功能,并做出相应的调整