畜舍通风换气风机自动控制设计.doc

上传人:仙人指路1688 文档编号:2931444 上传时间:2023-03-03 格式:DOC 页数:16 大小:373KB
返回 下载 相关 举报
畜舍通风换气风机自动控制设计.doc_第1页
第1页 / 共16页
畜舍通风换气风机自动控制设计.doc_第2页
第2页 / 共16页
畜舍通风换气风机自动控制设计.doc_第3页
第3页 / 共16页
畜舍通风换气风机自动控制设计.doc_第4页
第4页 / 共16页
畜舍通风换气风机自动控制设计.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《畜舍通风换气风机自动控制设计.doc》由会员分享,可在线阅读,更多相关《畜舍通风换气风机自动控制设计.doc(16页珍藏版)》请在三一办公上搜索。

1、微机原理课程设计报告题 目: 畜舍通风换气风机自动控制设计 学生姓名: 刘桂奇 学 号: 200817010121 专业班级: 计算机科学与技术08101班 同组姓名: 王国策 指导教师: 杨红杰 设计时间: 2011年上学期第19周 指导老师意见:评定成绩: 签名: 日期: 年 月 日 目录一、设计前言21.1设计目的意义21.2设计任务21.3设计要求2二、总体设计22.1温度数据采集模块32.2 温度转换及显示模块32.3 LED显示控制模块42.4蜂鸣器控制模块42.5直流电机控制模块4三、课程设计过程53.1硬件设计53.2软件设计5四、系统测试64.1系统调试64.2过程调试6五、

2、程序代码清单7六、课程设计总结15一、设计前言1.1设计目的意义 随着智能畜禽农业规模的不断扩大,环境的好坏对农业产品健康的影响逐步地体现出来,只有创造一个空气新鲜,温、湿度适宜,干暖舒适的环境条件,才能让农业产品更好的生长,保持旺盛,发病率降低,获得较高的增长速度和转换率,创造较高的经济效益。因此,调控好室内空气、湿度和温度等环境,是农业产品管理的最根本问题 。1.2设计任务 通过A/D采集并存储蓄舍温度,根据蓄舍温度要求,通过D/A输出控制信号,控制风机的转速及风机的启动、停止,实现蓄舍温度及空气的自动调节。1.3设计要求(1)当 温度18,风机不转动,并且四个红灯闪烁。(2)当18 温度

3、 20,启动风机低速转动。(3)当20 温度 25,启动风机中速转动。(4)当25 温度 30,启动风机高速转动。(5)当温度超过30,红色发光二极管全亮、喇叭连续发声报警。(6)用直流电机带动风机,计算机输出的数字量经D/A转换后变为高、中、低三种电压,控制直流风机的三种转速。二、总体设计 使用可编程并行接口8255对实验箱上的温度检测芯片DS18B20进行控制和数据传输,编写程序对数据进行读取并转换为相应的BCD码,判断从外界采集的温度并根据此温度与所在的不同区间的温度来调用的相应的子程序,并利用DA0832进行数模转换来控制风机的转动。利用8255PA端口控制LED灯的显示、PC端口(C

4、1)进行蜂鸣器的控制,并提取温度转换为非压缩的BCD码,显示到八段数码管上。该设计主要分为以下几个主要功能模块:2.1温度数据采集模块本模块利用实验箱自带的数字温度计DS18B20测量温度,程序通过可编程并行接口8255的PC0口对DS18B20写读写命令,并将读到的温度数据从PC0口按位读取出来,存放在AX寄存器内。2.2 温度转换及显示模块本模块将数据采集模块得到的温度数值首先转换为BCD码,提取温度数据,转换为非压缩型BCD码。具体转换过程可参考附录II的核心代码的BCD转换部分。转换完后调用Display8在八段数码管上显示温度。2.3 LED显示控制模块根据此次课程设计的目的与要求,

5、当温度超过30时,红色发光二极管闪烁。用8255的PA端口来控制红灯亮,中间再调用一个延时,可以从视觉上看出红灯闪烁。具体过程可参考附录中的程度代码。2.4蜂鸣器控制模块根据此次课程设计的目的与要求,当温度值大于30时,要控制蜂鸣器做出报警。本程序是利用8255PC端口(PC1)来控制蜂鸣器发出报警声音。2.5直流电机控制模块根据此次课程设计的目的与要求,当温度超过20小于25时,要控制风机低速转动。当温度超过25小于30时,要控制风机中速转动,当温度超过30时,要控制风机高速转动。设计中通过不同区间数据的比较,给低、中、高三种不同的转速赋予不同的电压值传送给DA0832,利用DA0832控制

6、直流电机转动,由于输出高电平功率较小,导致无法自动驱动电机转动,所以在输出之后接试验箱的功放模块,放大功率后,输出高电平可自动驱动直流电机转动。三、课程设计过程3.1硬件设计3.1.1硬件电路连线表1 硬件连线E5:B、C-G5: B、CA3:CS1-B4:CSA3:CS2-B4:CSA3:CS5-E5:CSA3:A0-E5:A0A3:A1、A0-B4:A1、A0G1:TOUT-B4:PC0G6:发光二极管-B4:JP56B2:2M-G1:TCTRLE2:IN1-B3:OUTE2:OUT1-F1:CTRLB4:PC1-D1:CTRL3.2软件设计软件部分利用实验箱为运行平台,运用汇编指令编写。

7、控制程序主要包括温度数据采集模块、温度转换及显示模块、LED显示控制模块、蜂鸣器控制模块、风机控制模块等。初始化程序包含:8255初始化程序、18B20初始化子程序。四、系统测试4.1系统调试按照硬件连线连接电路,为方便调试,将程序内的温度区间作了调整。将原来设计要求里的CS1;8255.PC.0-18B20.TOUT;A0-A0;A1-A1;18B2018B20.TOUT-8255.PC.7 CON_8255 EQU 0F003H PC_8255 EQU 0F002H PB_8255 EQU 0F001H PA_8255 EQU 0F000H DA0832 EQU 0D000H EXTRN

8、DISPLAY8:NEAR.STACK 300.DATA VOLTAGE DB 0 BUFFER DB 8 DUP(0) ;温度临时存放区.CODE START: MOV AX,DATA MOV DS,AX MOV ES,AX NOP CALL INIT8255 MAIN: CALL START_TEMPERATURE ;向DS18B20发送读温度指令 JB MAIN CALL DELAYTIME CALL RD_TEMPERATURE ;读出温度值,并转换为BCD码 CALLTEMPERATURE_CASE CALL DELAYTIME CALL DAC0832 CALL DIS_BCD ;

9、提取温度数据,转换为非压缩型BCD码,并显示 JMP MAIN;判断温度控制电机速度 TEMPERATURE_CASE PROCNEAR PUSHAX;写1(8255.PC.1=1) MOVDX,PC_8255 ;蜂鸣器不响 MOVAL,03H OUTDX,AL MOV BX,AX CMPBX,0120H;18 JBCASE1 CMPBX,0140H;20 JBCASE2 CMPBX,0190H;25 JBCASE3 CMPBX,01E0H;30 JBCASE4 ;写0(8255.PC.1=0) MOVDX,PC_8255;超过30时,驱动蜂鸣器响 MOVAL,02H OUTDX,AL JMP

10、 CASE5 RETURN:POPAX RET CASE1: MOVVOLTAGE,0FH JMPRETURN CASE2: MOVVOLTAGE,0FH JMPRETURN CASE3: MOVVOLTAGE,20H ;2025间风机开始低速转动 JMPRETURN CASE4: MOVVOLTAGE,55H ;2530间风机中速转动 JMPRETURN case5: MOV DX,PA_8255 ;超过30时风机高速转动,此时红灯闪烁 MOV AL,0CCH OUT DX,AL CALL DELAYTIME MOV DX,PA_8255 MOV AL,00H OUT DX,AL MOVVO

11、LTAGE,99H JMPRETURN TEMPERATURE_CASEENDP DAC0832 PROC NEAR PUSH AX MOV DX,DA0832 MOV AL,VOLTAGE OUT DX,AL POP AX RET DAC0832 ENDP;*;温度转换/显示;* DIS_BCD PROC NEAR MOV BX,AX LEA DI,BUFFER+7 STD MOV AL,10H ;10H表示不需要显示 STOSB STOSB STOSB STOSB TEST AH,08H JNZ DIS_BCD1 STOSB ;正数 JMP DIS_BCD2 DIS_BCD1: MOV A

12、L,11H STOSB ;负数 NEG BX DIS_BCD2: ;将温度整数位转换为ASCI SHL BX,1 ;将温度的个位与十位合在BH中 SHL BX,1 SHL BX,1 SHL BX,1 MOV AX,10 XCHG AL,BH DIV BH CMP AL,0 JNZ DIS_BCD3 ;判断温度的十位是否为0进行相应处理 MOV AL,10H ;十位为0 XCHG AL,DI+1 STOSB JMP DIS_BCD4 DIS_BCD3: STOSB DIS_BCD4: MOV AL,AH OR AL,80H ;小数点 STOSB XOR AL,AL ;转换小数部分 TEST BL

13、,10H JZ DIS_BCD5 MOV AL,6 DIS_BCD5: TEST BL,20H JZ DIS_BCD6 ADD AL,12H DAA DIS_BCD6: TEST BL,40H JZ DIS_BCD7 ADD AL,25H DAA DIS_BCD7: TEST BL,80H JZ DIS_BCD8 ADD AL,50H DAA DIS_BCD8: MOV CL,4 ROR AL,CL AND AL,0FH STOSB CLD LEA SI,BUFFER ;显示温度 CALL DISPLAY8 RET DIS_BCD ENDP;延时程序 DELAYTIME PROC NEAR X

14、OR CX,CX LOOP $ LOOP $ LOOP $ RET DELAYTIME ENDP ;写 0 W_L PROC NEAR PUSH AX MOV DX,CON_8255 MOV AL,80H OUT DX,AL POP AX RET W_L ENDP;写 1 W_H PROC NEAR PUSH AX MOV DX,CON_8255 MOV AL,01H OUT DX,AL POP AX RET W_H ENDP;DS18B20复位初始化子程序 INIT_18B20 PROC NEAR CALL W_L ;主机发出501us复位低脉冲 MOV CX,136 LOOP $ MOV

15、DX,CON_8255 MOV AX,89H OUT DX,AL ;PC输入状态 DEC DX MOV CX,15 INIT_18B20_1: IN AL,DX TEST AL,01H JZ INIT_18B20_2 LOOP INIT_18B20_1 STC ;置位标志位,表示DS18B20不存在 RET INIT_18B20_2: MOV CX,136 LOOP $ CLC ;复位标志位,表示DS18B20存在 RET INIT_18B20 ENDP;写操作 WRITE_18B20 PROC NEAR MOV CX,8 ;一共8位数据 WRI: CALL W_L ;0-PC0 ROR AL

16、,1 JNB WRI1 CALL W_H WRI2: PUSH CX MOV CX,12 LOOP $ ;延时55us POP CX CALL W_H LOOP WRI RET WRI1: PUSH CX POP CX JMP WRI2 WRITE_18B20 ENDP;读操作 READ_18B20 PROC NEAR MOV CX,8 ;数据一共有8位 READ: MOV DX,CON_8255 MOV AL,80H OUT DX,AL ;0-PC0 MOV AL,89H OUT DX,AL ;输入状态 NOP NOP NOP MOV DX,PC_8255 IN AL,DX ROR AL,1

17、 RCR BL,1 MOV DX,CON_8255 MOV AL,80H OUT DX,AL MOV AL,01H OUT DX,AL ;1-PC0 LOOP READ MOV AL,BL RET READ_18B20 ENDP;*; 判断DS18B20是否存在,启动DS18B20 ;CY为判断标志;* START_TEMPERATURE: CALL INIT_18B20 ;先复位DS18B20 JB GET_T MOV AL,0CCH ;跳过ROM匹配 CALL WRITE_18B20 MOV AL,44H ;发出温度转换命令 CALL WRITE_18B20 CLC GET_T: RET;

18、*; 读出转换后的温度值,存在AX;* RD_TEMPERATURE: CALL INIT_18B20 ;准备读温度前先复位 MOV AL,0CCH ;跳过ROM匹配 CALL WRITE_18B20 MOV AL,0BEH ;发出读温度命令 CALL WRITE_18B20 CALL READ_18B20 ;读出温度 MOV AH,AL ;存放到AX CALL READ_18B20 XCHG AL,AH RET INIT8255 PROC NEAR MOV DX,CON_8255 MOV AL,80H OUT DX,AL DEC DX MOV AL,0FFH OUT DX,AL RET INIT8255 ENDP END START 六、课程设计总结 本次的课程设计通过使用实验箱上自带的DS18B20温度模块采集温度数据,并使有可编程并行接口8255芯片根据温度数据调用子程序来控制风机的转动、发光管的亮灭以及蜂鸣器的报警等。在设计过程中遇到了很多问题,如风机的控制、发光二极管的显示、蜂鸣器发声音等等,通过与同学的相互交流,在老师的帮助下,查一些相关资料,成功地解决了问题。在此,感谢老师,感谢同学的热心的帮助。同时,通过此次的课程设计,使我们更好地把学过的接口知识运用到实践当中去,实现了硬件和软件相结,理论和实践相结合。拓宽了我们学习的知识面。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号