新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于MXT8051的湿度、温度以及CO浓度自动调节系统

基于MXT8051的湿度、温度以及CO浓度自动调节系统

作者:李国亮 广州凯媒通讯技术有限公司时间:2010-06-29来源:电子产品世界收藏

  直流风扇控制主回路

本文引用地址:http://www.eepw.com.cn/article/110411.htm

  直流风扇控制主回路采用MC34152驱动BUCK电压转换电路,写入的PWM寄存器的值变可以调节PWM的占空比,从而控制输出到DC风扇的电压而达到控制风扇出风量的目的。控制采用开环控制,有9档,分别是10%,20%......90%的占空比。本系统采用了的PWM1口。电路如图4所示。

  温湿度和CO浓度检测

  温湿度检测采用DHT11, DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器, 包括一个电阻式感湿元件和一个NTC测温元件。它通过单线制串行接口与MCU进行通讯, 每一bit数据都以50ms低电平时隙开始,高电平的长短决定了数据位是零还是1,26ms~28ms为0,70ms为1。因此必须要采用计时器以准确计时以便分辨出数据位的值。这里DHT11的单线制串行接口连接到的INT1口。输出低电平到MXT8051的INT1,中断触发可设为下降沿触发。计时采用MXT8051的TIMER1方式2 8位自动重装载模式,TMOD寄存器的GATE=1,计数器时钟采用系统时钟以便可达到1ms的精度。当TR1=1和INT1同时为1时开始计数。INT1中断服务程序中读出TL1的度数即为高电平脉冲的宽度,通过读取此脉冲宽度时间便可判断数据位的值。

  CO浓度检测采用TGS2442,负载电压采用AIN1进行电压的AD转换。TGS2442脉冲输入的预热控制采用GPIO的P0_5、P0_6。由于脉冲的周期为1s,精度为1ms,所以可以通过软件延迟的方式去计算延迟时间而无需占用宝贵的计时器资源。

  人机接口以及通讯

  键盘采用3*4中断扫描,行线接INT2~INT4,列线接P1_0~P1_3。P1_0~P1_3先拉低,当有按键输入时产生相应中断,判断得出行号,然后进行扫描以得出列号。

  由于MXT8051带LCD驱动,所以节省了LCD驱动。采用开发板带的LCD显示器进行显示。

  至于通讯部分,为了减轻MXT8051负担而只负责采集数据,进行将采集的数据通过RS232传输到PC,然后PC端进行处理。由于MXT8051带有UART,通讯芯片采用常用的MAX232。

  主程序流程图

  软件设计的核心在于电压电流的检测以及开关相角的控制算法。开关相角控制算法采用PID算法和软启动控制。MXT8051的外部时钟达到11.059MHz时,加上AD转换的时间及开关延迟等延迟时间,控制的反应速度应该也能满足控制精度的要求。总软件流程图如图5所示。

  结语

  本文给出的基于MXT8051的能够实时检测温度、湿度和CO浓度,将实时状况显示于LCD上面。还可以通过RS232接入PC,将数据显示并存储于PC中。排风系统由单相交流风机和直流风扇组成,通过控制晶闸管来调节交流电机以及PWM输出从而控制直流风扇。

  参考文献:

  1 MXT8051 datasheet, version 1.01, 北京有限公司

  2 MXT8051 demo board, 2009-4-8, 北京有限公司

  3 MAX9918/MAX9920 datasheet, MAXIM-IC.

  4 MC34152 datasheet,October2004-rev7, ON semiconductor

  5 DHT11 datasheet, 广州奥松电子有限公司。

  6 TGS2442 datasheet, revised 04/01, FIGARO


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭