《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于STM32的互联网数据中心环境检测系统
基于STM32的互联网数据中心环境检测系统
来源:电子技术应用2012年第6期
沈剑峰,丁金华, 董 宇
大连工业大学 机械工程与自动化学院,辽宁 大连116034
摘要: 根据电子信息系统环境要求,互联网数据中心(IDC)环境检测系统不仅实现室内温度、湿度和空气中氢气密度与烟雾浓度环境数据的检测,还可以通过无线网络将检测信息上传,与工作人员保持联系,从而在有人值守的情况下,保障互联网数据中心内各设备的安全可靠运行。检测系统以STM32为核心,选用的传感器包括温湿度传感器DHT21、温度传感器AD590、氢气密度传感器MQ-2和烟雾浓度传感器MQ-8,输入输出设备采用触摸屏,并利用无线通信模块TC35与手机短信息连接。
中图分类号: TP277
文献标识码: A
文章编号: 0258-7998(2012)06-0076-03
Environment monitoring system of Internet data center based on STM32
Shen Jianfeng, Ding Jinhua, Dong Yu
School of Mechanical Engineering and Automation, Dalian Polytechnic University, Dalian 116034, China
Abstract: According to environmental requirements of electronic information systems, the environmental monitoring system of Internet data center(IDC) not only can achieve the environmental data detection of the indoor temperature, humidity and the density of hydrogen and smog in the air, but it convey the monitoring information through the wireless network, keep in touch with staff, so in the cases with attendant it can protect the safe and reliable operation of the equipments which are in the Internet data center. The monitoring system is based on STM32 core and uses sensors which include temperature humidity sensor DHT21, temperature sensor AD590, hydrogen gas density sensor MQ-2 and smoke concentration sensor MQ-8,the input and output device is touch screen, and connect with cellphone short message though wireless communication module TC35.
Key words : Internet data center; IDC; environment detection; STM32; DHT21; AD590; touch screen; TC35

    对于互联网数据中心(以下简称IDC)来说,良好的环境状态是保证设备正常运转的条件,而对IDC环境状态的检测是使其保持良好环境的重要措施[1-5]。根据电子信息系统IDC设计规范(GB50174-2008),开机时,IDC设备最优的环境是温度为22~24 ℃,相对湿度为40%~55%;停机时,IDC设备环境要求是温度为5~35 ℃,相对湿度为40%~70%。因为IDC的不间断供电系统(UPS)工作时会释放出氢气,可能发生爆炸或火灾等安全隐患,所以为了保证IDC设备的安全运行,除了温度和湿度的检测外,还需检测IDC的空气中氢气密度和烟尘浓度。

    系统还可以通过无线通信网络将检测信息与工作人员时刻保持联系。
1 IDC环境检测系统的总体设计
    IDC环境检测系统的结构如图1所示,主要由四部分组成:数据采集、STM32主板、无线通信和触摸屏。

1.1 数据采集
    IDC环境检测系统采集环境的温度、湿度和空气中氢气密度、烟雾浓度。
   由于IDC的空间较小,本系统检测该空间4个点的温湿度。系统选用温湿度一体传感器DHT21,DHT21的温度测量范围是-20 ℃~+60 ℃,分辨率为0.1 ℃。DHT21湿度测量有效范围是20~90%RH,当温度控制在25 ℃左右恒温时,精度可达到±3%RH。DHT21是数字传感器,DHT21与CPU之间单通道串行通信, 传送距离在20 m以上[6]。
 普通的环境检测系统只针对空气中的温度测量,由于IDC设备局部空气不流通引起的温度失常则是无法检测到的。IDC环境检测系统选用8路AD590温度传感器,专用于检测容易发生异常的设备的温度。AD590是单片集成两端感温电流源,输出恒流模拟信号,接线的长短不会影响检测到的温度值,这样传感器可以安放在机房内的任何位置。AD590的测温范围为-55 ℃~+150 ℃,在测量范围内,非线性误差仅为±0.3 ℃。
    因为空气中氢气和烟雾密度异常的可能性较小,且检测精度要求较低,所以系统只设1路氢气密度和1路烟雾密度的测量。可以选用电压模拟信号的传感器,这样便于软件编程和电路设计。系统分别选用MQ-2和MQ-8这两个空气质量传感器。

 


1.2 无线通信
    IDC环境监控系统采用TC35短消息模块实现无线通信,TC35短消息模块通过RS-232标准接口与STM32通信,通过移动通信网络与工作人员的手机进行通信。工作人员不必时刻守着机房,不仅减少了IDC设备对工作人员的辐射量,同时可以腾出时间做其他工作,提高了工作人员的利用率。
1.3 触摸屏
    触摸屏的作用是显示系统的工作信息,对整个系统功能进行调试设置。通过RS-232标准接口与STM32通信。
1.4 STM32主板
    STM32是整个系统数据处理中心。机房内用电设备众多,可能会产生多种信号干扰。为了保证CPU的工作正常稳定,必须选用安全可靠的处理芯片并对CPU进行电路隔离与信号屏蔽。
    本系统是基于ARM体系型号为STM32F103RBT6微处理器进行设计的。STM32F103RBT6包含2个12 bit的ADC,分12个I/O通道,不需要外部辅助硬件就能实现多路传感器同时提取数据;具有3个USART,满足液晶及远程控制部分的串行通信。
2 STM32主板的电路设计
    STM32主板的电路设计主要分为传感器DHT21的电路设计、传感器AD590的电路设计、空气质量传感器MQ-2与MQ-8的电路设计和RS232通信电路的设计。
2.1 传感器DHT21的电路设计
    DHT21是数字传感器,DHT21与STM32之间单总线串行通信。DHT21与STM32之间选用单通道的高速光耦合器6N137(如图2所示)。IDC环境检测系统共有4路温湿度一体传感器DHT21,分别连接到STM32的4个普通I/O口。

2.2 传感器AD590的电路设计
     AD590的信号转换电路如图3所示。AD590输出电流以绝对温度零度(-273℃)为基准,每增加1℃,它会增加1 μA输出电流。在室温23℃时,其输出电流Io=(273+23)=296 μA。Vo的值为Io乘上10 K,以室温23℃而言,输出值为10 K×298 μA=2.96 V 。当温度在-55 ℃~+150 ℃内变化时,AD590输出是2.18 V~4.23 V的电压信号,通过差分放大电路,把信号调整到0.18 V~2.23 V。然后通过AD7741把电压模拟信号转换成相应的频率信号,经光电隔离,最后连接到STM32的ADC采样引脚。

    IDC环境检测系统共有8路温度传感器AD590。为了减少AD590的信号转换电路,IDC环境检测系统对8个温度传感器AD590采用扫描的方式读数。通过CD4028依次对8个温度传感器供电,再通过CD4051依次连接8个温度传感器到模拟信号转换电路。这里STM32输出到CD4051和CD4028的信号速度较慢,选用光电隔离元件TLP521就可以满足要求。
2.3 传感器MQ-2和MQ-8的电路设计
    空气质量传感器MQ-2和MQ-8输出电压模拟信号,它们的工作原理相同,这里以MQ-2为例设计电路。因为只有1路MQ-2,所以MQ-2可安装在STM32主板上,不需使用光电隔离,MQ-2的输出信号直接到STM32的ADC口上。RS的变换范围是5 kΩ~20 kΩ,R1=5 kΩ,这样输出点的电压范围是1 V~2.5 V。
2.4 RS-232通信的电路设计
    TC35和触摸屏的通信都是RS-232标准接口与STM32通信,IDC环境检测系统选用MAX232芯片实现两路TTL-RS232电平转换。
3 STM32的软件设计
    根据IDC环境检测系统的工作要求,设计STM32的主程序流程图如图4所示。

    STM32的软件设计主要包括3个部分:传感器数据的采集、与TC35模块的通信以及与触摸屏的通信。
3.1 STM32采集传感器数据的软件设计
3.1.1 DHT21数据的采集[7-8]

    STM32与 DHT21之间的通信采用单总线数据格式, 一次通信时间5 ms左右, 一次完整的数据传输为40 bit,高位先出。数据格式为:湿度高8 bit+湿度低8 bit+温度高8 bit+温度低8位+校验和8 bit。
    首先初始化STM32的I/O口,使之作为推拉式输出,输出18 ms以上的低电平,然后输出20~40 μs的高电平。然后改变I/O口为上拉式输入, DHT21会发送80 μs的低电平,说明DHT21发送响应信号,DHT21发送响应信号后,把总线拉高80 μs,准备发送数据,每一位数据都以50 μs低电平时隙开始,高电平的长短确定了数据位是0还是1,高电平时间为26~28 ?滋s表明该数据为0,高电平时间为70 μs表明该数据为1。
3.1.2 AD590数据的采集
    IDC共有8路AD590,采用循环扫描的方式。首先CD4028的地址引脚DCBA输入0001,CD4051的地址引脚CBA输入001,抬高CD4051的输入使能引脚INH电平,这样开通AD590_1,然后等待200 ms,预热AD590,最后读取一定时间AD7741的脉冲次数。所读取AD7741的次数反映AD590检测温度的大小,这样即读完一路AD590检测的温度值。通过改变CD4028和CD4051的地址重复上述步骤,依次读取8路AD590检测的温度值。
3.1.3 MQ-2和MQ-8数据的采集
    MQ-2和MQ-8输出的是电压信号,STM32可以直接通过带有复用功能ADC(模拟数字转换器)的I/O口,把电压模拟信号转换成12位数字信号,通过STM32内部集成DMA控制器,把ADC读取的数字信号传输到STM32内存,每次需要传输200个数据,并求平均值,这样可以保证最后输出的空气中氢气密度和烟雾浓度值稳定。
3.2 STM32与TC35模块通信的设计[8]
  使用TC35模块前,要在TC35模块上插入一张SIM卡,确定TC35模块连接上移动网络。STM32与TC35模块之间是通过串口通信的。首先STM32向TC35模块发送初始化指令:AT+CNMI=2,1(指令功能:短信提示),AT+CMGF=1(指令功能:英文方式发送)。初始化之后,如果TC35模块接收到信,向STM32发送指令:+CMTI:“SM”,1(表示有短信接收,存在SIM卡的第1个位置);此时STM32向TC35模块发送指令:AT+CMGR=1;(指令功能:读取SIM卡的第一个位置的短信);然后STM32会接收到:+CMGR:“REC UNREAD”,“+8613*********”,“10/06/07,15:02:08+32”(表示短信未读,短信来源号码,接收时间);abc(表示短信内容);STM32接受到任何短信,识别短讯来源号码是否是事先设定的号码,如果是,则发送:AT+CMGS=“13*********”(功能:向设定好的号码发送短信);STM32等待TC35回复,等收到回复后,发送IDC环境数据信息:ab****** (IDC环境数据);STM32发送信息结束标识:1A;STM32收到指令:+CMGS:11(IDC环境数据发送成功)。
3.3 STM32与触摸屏通信的软件设计[9]
    触摸屏用来显示IDC环境数据和设置对应环境值的安全范围。首先要把设计好的背景图片存储在触摸屏的Flash里面,存入触摸屏的控制程序(此程序设定触摸屏按键代码)。
    STM32控制触摸屏的主要代码如下:
    AA 52 CC 33 C3 3C(清屏指令)
    AA 70 01 CC 33 C3 3C(背景图片选择指令,其中01表示图片的地址)
    AA 53 00 80 00 F0 32 32 46 35 CC 33 C3 3C(在温度后面显示22.5,其中00 80 和00 F0是显示文字的坐标,32 32 46 35是22.5的ASCII码)
    触摸屏按键返回码:
    AA 71 00 01 CC 33 C3 3C(其中00 01表示键码)
    通过实际测试IDC环境检测系统,系统检测到的环境温度、湿度和空气中氢气密度、烟雾浓度数值稳定,精度符合要求,通过移动通信网络,管理人员就可以随时查看IDC环境状况,减轻了IDC工作人员的负担。IDC环境检测系统的优势已经得到体现,帮助解决了很多IDC环境保障问题,对同类检测系统的实现也有一定的参考价值。
参考文献
[1] 史水娥,杨豪强. 基于ARM9处理器的机房环境远程监测系统设计[J].河南师范大学学报(自然科学版),2010,38(3):57-59.
[2] 王剑锋,林宣雄. 环境监控(监测)建设与发展过程的思考[J]. 中国环境监测,2006,22(5):9-12.
[3] 朱伟. 数据中心机房环境监控系统的研究和应用[J]. 金融电子化,2008(4):53-55.
[4] 陈亮.鹤煤集团机房环境监控的应用与发展[J]. 科技创业,2010(8):189-190.
[5] 姜云安.大中型机房环境监控系统浅谈[J]. 智能建筑与城市信息,2010(8):12-15.
[6] DHT21产品说明书[EB/0L].(2011-02-25).http://wenku.baidu.com/view/d3b37e23bcd126fff7050b38.html?from=rec&pos=0&weight=33&lastweight=13&count=5.
[7] 倪天龙.单总线传感器 DHT11在温湿度测控中的应用[J].单片机与嵌入式系统应用,2010(6):60-62.
[8] 杨小平.基于AT89S52和DHT21的温湿度测量系统设计[J].无锡职业技术学院学报,2011,10(1):62-63.
[9] 张华,高需.基于TC35模块实现短消息收发[J].电脑知识与技术,2010,17(6):4817-4819.
[10] 翟霄翔,郝久玉,郑军.电阻式触摸屏在嵌入式系统中的应用[J].电子测量技术,2006,29(2):36-37.

此内容为AET网站原创,未经授权禁止转载。