大棚温室自动控制系统毕业设计内容摘要:

数据总线相连。 此外,通过适当的外接电路,ADC0809 可以对 05v 的双极性模拟信号进行转换。 由此可见 ,当这些信号有效时, P2. 7 应置为低电乎。 ADC0809 的时钟信号一般由 8031 的 ALE 端取得,如果 ALE 信号频率过高,应分频后再送人转换器。 例如当 803l 的品振频率选择 6MHz 时, AL正端的频率约为 lMHz,故需采用二分频后才能与 0809 的 C 工 K 端连接,分频器一般用 74LS74D 触发器实现,因 10— 7 中选用了分频电路。 图 10— 8 为 ADC0808/ 0809 的时序图。 从时序图可以看出,在启动 ADC0808/ 0809 后, EOC 约在 10Us 后才变为低电乎,编程时要注意这一点。 第七章 具体方案设计 7. 1 实施方案及分析 实现以上功能有三种方案,每一种方案分析如下: 1.方案一: 工作原理:当温度低于设定的温度时, AD590 温度传感器输出电流经电流电压变换及放大电路触发可控硅导通,使电炉家温装置工作,当温度回到正常温度范围内时, AD590 输出的电流转换成电压不足以使可控硅电路 1 导通,电炉加温装置停止加温。 湿度检测电路工作原理类似。 2.方案二 : 工作原理 :KC100 的第一脚为信号输入端 ,外接温度湿度传感器 .当大棚内温度上升到设定温度时, KC100 自动识别使第三脚自动输出高电 位,使 VT9013 导通,驱动电路驱动降温装置风扇开启,达到降温效果。 温敏电阻时刻检测棚内温度,当温度恢复到设定温度时, KC100 输出低电位,VT9013 截止,通风装置关闭。 湿敏电路工作原理类似。 3.方案三: 工作原理:温度检测电路将检测到的温度转换成电压,该模拟电压经 ADC0809 转换后,由 INT0 中断口进入 89C51 单片机,单片机通过比较输入温度与设定温度来控制风扇或电炉驱动电路,并将室温送显。 当棚内温度在设定范围内时,单片机仅实时显示温度。 湿度控制类似。 方案比较与方案选择: 方 案一与方案二完全由全硬件实现,能实现对某一恒定温度点温度上下变动的自动控制,但可调温度范围窄。 方案三为软硬件综合电路,单片机能实时监控温度、湿度,并能对相应的变化作出适当的控制调整,还能对温度湿度进行显示。 所以我们选择方案三。 7. 2 单元电路设计 1.单片机和 A/D 通道电路: 图一 温度传感器检测到的数据经 AD0809 的 27 脚送单片机 89C51,单片机把采 集到的数据与 ROM 中所设的数据相比较,发出控制指令。 当检测到的温度在允许温度范围内时,加温装置,降温装置均不动作。 当温 度上升或降低到允许范围外时,单片机相应控制端口输出高电平,驱动控制装置。 单片机 ROM 中设置有报警极限温度,当温度到达极限温度值时,单片机 14脚输出使三极管 TT1 导通,蜂鸣器报警。 2.温度检测电路: 图二 由 PN 节构成的温度传感器,随温度的变化阻值发生改变。 把它接入桥电路,通过桥电路输出压差经 741 的放大输入 AD0809。 风扇、电炉控制电路: 图三 上图是电炉加温原理图。 工作原理如下:单片机 口输出,使三极管导通,光耦 4N35 工作将直流地与市网交流地隔离,可控硅被触发导通电炉回路。 加热装置开始工作。 风扇降温装置与电炉加温装置原理类似,不同之处在于可控硅被继电器代替。 显示电路:由 MAX7219 直接驱动 LED 显示。 整机电路(见附页) 3.测试方法 为了模拟温室环境,我们采用 200W 灯泡加热, 12V/ 轴流风机降温。 将温度计,大功率灯泡,风扇和温度传感器置于密闭的纸箱中,当密闭空间的温度低于设定温度时,电灯亮,模拟加热,当加热到上限温度时,电灯灭,停止模拟加热;当密室温度高于设定温度范围,风扇开,开始降温,直到设定温度范围内。 如果降温过度,系统会自动启动加温装置。 (升温装 置一摄氏度需要 2S,降温装置降温一摄氏度需 20S。 ) 4.讨论 基本功能基本实现,显示电路装入系统后没能实现对温度的实时显示功能。 在前期制作过程中,由于布线没注意高频线与数据线的隔离,造成 A/D通道采集的数据受到严重干扰,致使数据不能正确进入单片机 ,软件方面 ,在寄存器的分配上存在一些混乱 .我们将在以后的电路设计中注意这些问题,提高硬件设计的效率。 第八章 工作原理与编程。 *。 * 温度控制程序 *。 *。 *。 说明:测试程序在 e6000 版本下通过 *。 *********以下为一些伪指令定义*********。 ************************。 The code meets all ad7416 family timing requirements when executed by an。 AT89Cx051 microcontroller with a 6 MHz clock. Code modifications may be。 required if a faster clock is substituted. FADDR DATA 24H zdata DATA 28H address DATA 29h。 addr_hi DATA 2Ah。 *******Microcontroller connections to aad7416 OR AT24C02 serial bus lines. SCL EQU SDA EQU。 **************ad7416presodo********************* WD_H_KEY EQU WD_L_KEY EQU H_KEYamp。 nbsp。 EQU JDQ EQU H_DATA DATA 50H。 H_DATA 存放温度报警上限 L_DATA DATA 51H。 L_DATA 存放温度报警上限 W_DATA DATA 52H M_DATA DATA 53H S_H_DATA DATA 59H S_L_DATA DATA 5AH。 M_H DATA 6BH。 M_L DATA 6CH ORG 0000H AJMP MAIN ORG 000BH AJMP TIME_T0 ORG 0040H TIME_T0:p ush acc CLR TR0 MOV TH0,0 MOV TL0,0 INC 5FH MOV A,5FH XRL A,20 JZ CLEAR0 RET_T0: SETB TR0 pop acc RETI CLEAR0: mov 5fh,0 MOV A,W_DATA MOV BCD_DATA,A LCALL HEX_BCD MOV 69H,R5 MOV 6AH,R6 MOV 6BH,R7 MOV 6EH,00h MOV 6DH,00h MOV 6CH,00h AJMP RET_T0 ORG 0100H***********主程序开始 ************** MAIN:MOV SP,70H MOV TMOD,01H MOV TH0,0 MOV TL0,0 CLR ET0 CLR TR0 MOV 6EH,00h MOV 6DH,00h MOV 6CH,00h MOV 6BH,00h MOV 6AH,00h MOV 69H,00h MOV 5FH,00h。 5FH 存放 100MS 单元 MOV H_DATA, 0 MOV L_DATA, 0 MOV S_H_DATA, 0 MOV S_L_DATA, 0 MOV W_DATA, 0 MOV DPTR,0FB00H MOV A,03H MOVX @DPTR,A。 ********read at24c02 from address 00h,01h FADDR SET 90H MOV FADDR,0A0H MOV address,00h MOV addr_hi,00h MOV a,00h LCALL rd_rand MOV S_H_DATA,A MOV address,01h MOV addr_hi,00h MOV a,00h LCALL rd_rand MOV S_L_DATA,A FADDR SET 91H SETB EA SETB ET0 SETB TR0 START_1: LCALL AD7416 MOV H_DATA, R7 MOV L_DATA, R6 MOV R0,L_DATA MOV R1,H_DATA LCALL DIV25 MOV W_DATA,R4 MOV A,W_DATA MOV BCD_DATA,A LCALL HEX_BCD MOV 69H,R5 MOV 6AH,R6 MOV 6BH,R7 MOV A,S_DATA LCALL HEX_。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。