ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:151.40KB ,
资源ID:1863827      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1863827.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(空调自动调温系统模拟.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

空调自动调温系统模拟.docx

1、空调自动调温系统模拟河北工业大学计算机硬件技术基础(MCS-51)2007年设计报告学院 班级 姓名 _ 学号 _ 成绩 _ _一、题目:空调自动调温系统模拟(题号:自理)二、问题的提出 能否以单片机现有资源模拟变频空调自动将温度控制在适当范围的功能。三、总体设计1、分析问题的功能需要设备能够及时采取温度值并进行分析,并适时对压缩机转速进行调整,进而使得制冷的效果得到有效控制2、系统总体结构设计1)硬件设计:根据问题确定单片机、I/O接口、定时器、I/O设备、中断等;使用硬件资源:使用P1,P3接口,D2区电位器,A7区A/D转换器,B10区直流电机,D1区8个LED灯。连线:单通道采集接线

2、使用210的排线连接D7区的J28接到A7区的J84; 将D2区10K电位器的左端金属孔通过导线连接到该区的GND金属孔,而右端金属孔通过导线连接到该区的VCC金属孔;3 D2区10K电位器的中间金属孔连接到A7区的P2_IO2金属孔(IN0);4 将A7区的P2_IO3P2_IO5分别连接到A2区的A2A0;5 将A7区的P2_CS连接到A2区的A15;6 用排线将A2区的J61与D1区的J52相连。电机连线(1) 使用导线连接B10区ZDJ_A与A2区RXD(2) 使用导线连接B10区ZDJ_A与该区GND定时器使用:使用定时器方式2进行中断,执行中断程序进行占空比扫描。 2)软件设计:按

3、问题功能分模块,简述各模块功能。根据实际构思程序分为四个模块模块1为电压采集及转换模块模块2为LED灯显示电压(模拟温度)高低模块3为电机转速控制程序模块4电压信号转换为电机转速控制信号四、详细设计:1、硬件详细设计:1)画出电路图;2)流程图:3)进行硬件资源分配(包括I/O口地址、所用各存储单元的用途)。 使用电位器输出不同电压值以电压数值模拟温度,通过A/D转换使电压值转变为机器可读信号。P3口向电机输入高电平,用直流电机模拟空调压缩机,通过改变直流电机转速实行制冷效果的控制。以LED灯显示温度高低。2、软件详细设计:按各功能模块进行程序设计,并说明各功能模块的实现方法。(1) 电机转速

4、调节模块:实现方法:调节高电平长度,使占空比变化,进而控制电机转速。PWMH DATA 30H ;高电平脉冲的个数PWM DATA 31H ;PWM周期COUNTER DATA 32HTEMP DATA 33H ORG 8000H AJMP MAIN ORG 800BH AJMP INTT0 ORG 8100HMAIN: MOV SP,#60H ;给堆栈指针赋初值 MOV PWMH,#02H MOV COUNTER,#01H MOV PWM,#15H MOV TMOD,#02H ;定时器0在模式2下工作 MOV TL0,#38H ;定时器每200us产生一次溢出 MOV TH0,#38H ;自

5、动重装的值 SETB ET0 ;使能定时器0中断 SETB EA ;使能总中断 SETB TR0 ;开始计时INTT0: ;中断进行占空比扫描 PUSH PSW ;现场保护 PUSH ACC INC COUNTER ;计数值加1 MOV A,COUNTER CJNE A,PWMH,INTT01 ;如果等于高电平脉冲数 CLR P3.0 ;P3.0变为低电平INTT01: CJNE A,PWM,INTT02 ;如果等于周期数 MOV COUNTER,#01H ;计数器复位 SETB P3.0 ;P3.0为高电平INTT02: POP ACC ;出栈 POP PSW RETIEND(2) 电压采集

6、及转换模块实现方法:采集D2区电位器的电压值,经过A7区A/D转换,再存入CPUMOV DPTR,#7FF8H ;P2.0=0,且指向通道0MOVX DPTR,A ;启动A/D转换CALL DELAYMOVX A,DPTR ;读取转换结果DELAY: MOV R6,#0H ;软件延时,等待A/D转换结果DELAY1: MOV R5,#0FFH DJNZ R5,$ DJNZ R5,$ DJNZ R6,DELAY1 RETEND(3) LED灯显示电压值模块:实现方法:将采集电压值经A/D转换为机器数,经过高低位数值得依次交换,在经过取反,将取反的值赋给连接8个LED灯的P1口,变化成可以用闪亮的

7、LED灯显示电压的数据。MOV DPTR,#7FF8H ;P2.0=0,且指向通道0MOVX DPTR,A ;启动A/D转换CALL DELAYMOVX A,DPTR ;读取转换结果PUSH ACC ;让LED灯显示电压数值LCALL P1ZHCPL AMOV P1,A P1ZH: ;使LED灯从左到右依次显示电压高位到低位值 MOV 21H,A MOV C,21H.7 MOV 00H,C MOV C,ACC.0 MOV 21H.7,C MOV C,00H MOV ACC.0,C MOV C,21H.6 MOV 00H,C MOV C,ACC.1 MOV 21H.6,C MOV C,00H M

8、OV ACC.1,C MOV C,21H.5 MOV 00H,C MOV C,ACC.2 MOV 21H.5,C MOV C,00H MOV ACC.2,C MOV C,21H.4 MOV 00H,C MOV C,ACC.3 MOV 21H.4,C MOV C,00H MOV ACC.3,C MOV C,21H.3 MOV 00H,C MOV C,ACC.4 MOV 21H.3,C MOV C,00H MOV ACC.4,C MOV C,21H.2 MOV 00H,C MOV C,ACC.5 MOV 21H.2,C MOV C,00H MOV ACC.5,C MOV C,21H.1 MOV 0

9、0H,C MOV C,ACC.6 MOV 21H.1,C MOV C,00H MOV ACC.6,C MOV C,21H.0 MOV 00H,C MOV C,ACC.7 MOV 21H.0,C MOV C,00H MOV ACC.7,CRETEND(4) 电压信号转换为电机转速调节信号模块:实现方法:通过对电压值的精确分档,使电机转速按程序分档执行,达到电机转速的分档及精确调节KSCN:MOV DPTR,#7FF8H ;P2.0=0,且指向通道0MOVX DPTR,A ;启动A/D转换CALL DELAYMOVX A,DPTR ;读取转换结果MOV B,#11H ;根据电压值进行占空比调整实现

10、电机转速分配,电机转速分为15档CJNE A,#22H,NEXNEX: JC NEXX ;如果低于两档高电平为最低值电机停止转动DIV ABMOV PWMH, A SJMP KSCANNEXX: MOV PWMH ,#02H SJMP KSCAN END3、设计中的主要困难及解决方案1)困难1:直流电机转速的调节解决方案:调整其脉冲占空比改变其正脉冲长度进而调节器转速。2)困难2:协调采集的电压值与电机转速之间的关系解决方案:将所采集电压值通过A/D转换为机器可读数据,以之作为执行信号实行脉冲占空比调节,最终实现电机转速的调节。3)困难3:应用LED灯显示电压值解决方案:依然采用A/D转换将电

11、压值转换为机器可读数据,并将其数值赋与与LED灯连接的接口,实现其数值通过LED灯可读取。4)困难4:电机转速的精确分档和调节解决方案:通过对电压值的精确分档,使电机转速按程序分档执行,达到电机转速的分档及精确调节,使电机的调速过程平滑进行具体过程:电压及电机转速的精确分档:应用除法,将电压最大值除以所要分档值得到其各档之间间隔,然后将其应用于软件之中,实现其转速的精确分档直流电机转速的精确控制:将脉冲周期值设定为总档级数,高电平显示其电压所处档值。程序执行时,将所采集电压值放入A累加器,然后除以分档间隔,所得结果存入A累加器的商即其所处档值,将其档值赋给高电平,改变其占空比,这样就可以根据其

12、即时电压值(即温度值)所处档级精确控制占空比,进而精确控制电机转速。说明:本实验中电机转速总共设15档,其档之间间隔计算得11H,应用采集电压的十六进制值执行除以11H的程序,结果存入A累加器的商即其电压档级,再将其当值赋给高电平是电机执行相应档级的程序。三、程序清单PWMH DATA 30H ;高电平脉冲的个数PWM DATA 31H ;PWM周期COUNTER DATA 32HTEMP DATA 33H ORG 8000H AJMP MAIN ORG 800BH AJMP INTT0 ORG 8100HMAIN: MOV SP,#60H ;给堆栈指针赋初值 MOV PWMH,#02H MO

13、V COUNTER,#01H MOV PWM,#15H MOV TMOD,#02H ;定时器0在模式2下工作 MOV TL0,#38H ;定时器每200us产生一次溢出 MOV TH0,#38H ;自动重装的值 SETB ET0 ;使能定时器0中断 SETB EA ;使能总中断 SETB TR0 ;开始计时 KSCAN: MOV DPTR,#7FF8H ;P2.0=0,且指向通道0MOVX DPTR,A ;启动A/D转换CALL DELAYMOVX A,DPTR ;读取转换结果PUSH ACC ;让LED灯显示电压数值LCALL P1ZHCPL AMOV P1,A POP ACCMOV B,#

14、11H ;根据电压值进行占空比调整实现电机转速分配,电机转速分为15档CJNE A,#22H,NEXNEX: JC NEXX ;如果低于两档高电平为最低值电机停止转动DIV ABMOV PWMH, A SJMP KSCANNEXX: MOV PWMH ,#02H SJMP KSCAN INTT0: ;中断进行占空比扫描 PUSH PSW ;现场保护 PUSH ACC INC COUNTER ;计数值加1 MOV A,COUNTER CJNE A,PWMH,INTT01 ;如果等于高电平脉冲数 CLR P3.0 ;P3.0变为低电平INTT01: CJNE A,PWM,INTT02 ;如果等于周期数 MOV COUNTER,#01H ;计数器复位 SETB P3.0 ;P3.0为高电平INTT02: POP ACC ;出栈 POP PSW RETIDELAY: MOV R6,#0H ;软件延时,等待A/D转换结果DELAY1: MOV R5,#0FFH DJNZ

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1