Bang-Bang控制的温湿度调节系统.doc
"Bang-Bang控制的温湿度调节系统" 本文档主要介绍 Bang-Bang 控制的温湿度调节系统的设计和实现。该系统使用 C8051F020 单片机和 I2C 总线数字式温湿度传感器 SHT11,实现了档案库温湿度控制的自动化设备。 系统硬件设计 该系统的硬件设计基于 C8051F020 单片机和 I2C 总线数字式温湿度传感器 SHT11。SHT11 是瑞士 Sennsirion 公司生产的具有 I2C 总线接口的单片全校准数字式相对湿度和温度传感器。该传感器的湿度值输出分辨率为 14 位,温度值输出分辨率为 12 位,并可编程为 12 位和 8 位。C8051F020 单片机是集成在 1 块芯片上的混合信号系统级单片机,具有与 MCS8051 内核及指令完全兼容的微控制器。 软件设计 软件设计主要包括 Bang-Bang 控制算法和程序设计。Bang-Bang 控制算法是一种典型的数字控制算法,用于控制温湿度的调整。该算法需要两个温度设置点:THIGH 和 TLOW,两个湿度设置点 HHIGH 和 HLOW。温度控制和湿度控制一样,只介绍温度的控制。如果温度高于 THIGH,则控制器关闭电源(继电器释放),如果温度低于 TLOW,则控制器打开电源(继电器吸合)。THIGH 与 TLOW 之差称为滞后。使用滞后延长了继电器的使用寿命,因为它减少了继电器开关次数。 程序设计包括系统复位子程序、SMBus 初始化子程序、A/D 转换和读取转换数据子程序、Bang-Bang 控制算法子程序和输出控制子程序。这些子程序的详细介绍如下: * 系统复位子程序(Reset_Init):完成对内部振荡器的设置,对 XBR0 和 XBR2 的设置将 SMB 连到通用的 I/O 引脚。 * SMBus 初始化子程序(SMBus_Init):配置并使能 SMBus,设置 SMBus 时钟速率,为第一次传输清除 SM_BUSY 标志。 * A/D 转换和读取转换数据子程序(ADCRead):完成 A/D 转换和读取数据的操作。 * Bang-Bang 控制算法子程序(Bang-Bang):实现 Bang-Bang 控制算法的逻辑控制。 * 输出控制子程序(OUTcontrol):完成输出控制的操作。 A/D 转换和读取转换数据子程序 A/D 转换和读取转换数据子程序(ADCRead)是该系统的核心部分,该子程序完成 A/D 转换和读取数据的操作。该子程序的详细介绍如下: * WRITE EQU 00H:SMBus 写命令 * READ EQU 01H:SMBus 读命令 * CHIP-A EQU 00H:SHT11 从地址 * MEAMURE_TEMP EQU 03H:SHT11 测量温度命令 * MEARURE_HUMI EQU 05H:SHT11 测量湿度命令 该子程序使用 SMBus 协议与 SHT11 进行通讯,完成 A/D 转换和读取数据的操作。 本文档详细介绍了 Bang-Bang 控制的温湿度调节系统的设计和实现,该系统使用 C8051F020 单片机和 I2C 总线数字式温湿度传感器 SHT11,实现了档案库温湿度控制的自动化设备。
- zjutest2014-05-29很不错的资料,谢谢共享
- 粉丝: 6
- 资源: 5
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助