红外学习型实验室环境远程智能调控系统设计

2015-04-01 06:18孙建红
实验室研究与探索 2015年12期
关键词:环境参数短信指令

林 楠, 孙建红

(南京理工大学 电子工程与光电技术学院,江苏 南京 210094)



·实验室环境与安全·

红外学习型实验室环境远程智能调控系统设计

林 楠, 孙建红

(南京理工大学 电子工程与光电技术学院,江苏 南京 210094)

为保障实验室的环境安全,实时监测实验室的环境参数并对其进行及时、精准、智能地调节,将红外信号波形存储法和闭环控制理论相结合,基于MSP430、STC15和GSM设计并实现了一套具有可自动控制和可万能遥控两大特点的实验室环境参数智能监测、报警与调控系统。其内含闭环自动控制子系统,具有远程监测与控制功能,拥有红外信号的学习与重现能力,可精确控制各种机型的红外遥控类设备,通用性强。对系统的功能、原理与软硬件设计等进行了介绍,最后对系统测试进行了说明。测试结果表明,系统实现了预期的功能。系统稍加拓展还可应用于更多场合,具有一定的研究价值和实用价值。

远程监测; 自动控制; 红外学习; 波形存储; GSM; MSP430

0 引 言

实验室是科学研究的重要场所,大多数的科研实验室由于存放了诸多精密仪器或特殊药品等,对于环境参数的稳定性和可控性要求较高。一旦环境参数超过一定范围,很有可能导致设备损坏、药品失效等,给实验室造成一定的经济损失。因此,实时掌控实验室的环境参数并及时调控对实验室管理来说具有一定的现实意义。

传统的实验室环境参数监控系统往往功能单一,仅有监测功能而无控制功能[1-2],或仅实现手动控制却未能实现自动控制[3],智能化程度较低。因受控对象含有空调等红外遥控类设备,不同机型的红外信号协议差异甚大,且设备机型繁多,故大多数具备控制功能的系统也仅实现对部分特定厂商、型号设备的控制[4],可控机型少,缺乏通用性。基于此,本文设计了一种实验室环境参数的监测、报警与智能调控系统。该系统具有远程监测与控制功能,含有闭环自动控制子系统,拥有红外信号的学习与重现能力,可精确控制几乎所有品牌、型号的红外遥控类设备,通用性极强。

1 总体设计

1.1 系统功能

系统主要功能有:①可实时监测、显示实验室环境参数,远程获取环境参数和系统状态。②具有远程和本地两种控制方式以及自动调控模式。远程控制方式下,管理员可通过手机控制相关设备调节环境参数,启动或退出自动调控模式;本地控制方式下,管理员可利用本地遥控器取代手机实现等效控制。③在自动调控模式下,系统将自动根据环境参数与预设的调节范围智能地调控相关设备,且当参数超出警戒范围时将及时通知管理员,确保实验室环境安全。④设有短信密码,避免系统被非法操控。⑤利用本地遥控器可控制系统的启动、待机,设置短信密码、自动调节范围、警戒范围等。⑥系统可实现红外信号的学习与存储,不受设备品牌与型号限制,实现“万能”红外遥控。

1.2 系统总体设计方案

为实现上述功能,本系统需要中央处理器、显示器、GSM终端、红外接收、各类传感器、红外发射、继电器、电源等硬件模块。其中,中央处理器负责数据处理与控制,是本系统的核心;显示器用于显示环境参数与系统状态;GSM终端模块用于连接GSM网络,利用短信业务实现远程控制;红外接收模块用于实现本地遥控器控制,以及学习控制遥控类设备所需的红外信号;各类传感器用于环境参数的获取;红外发射模块用于控制空调、空气净化器等遥控类设备;继电器模块用于控制加湿器、除湿器、照明灯等。而要实现控制遥控类设备的红外信号的学习、存储与发送,要求处理器具备较大的E2PROM存储空间和高频率中断产生38 kHz高频载波的高速计算能力。为使红外发射模块相对独立,提高其可移动性,也为增强系统稳定性,不影响主处理器关键程序的运行,不占用主处理器的存储空间,做到专“芯”专用,本系统另行采用一块高速单片机专门负责红外信号的记录与还原,其与主处理器间以有线串行口或无线透传模块进行通信。系统分为数据处理与控制中心和红外学习与发射端两个部分,总体设计方案如图1所示。

图1 系统总体设计方案示意图

1.3 系统的工作原理

全球移动通信(Global System for Mobile Communications,GSM)是目前应用最为广泛、覆盖面最为广阔的移动通信系统[5],有着容量大、抗干扰能力强以及通信质量高的特点[6]。借助GSM的短消息业务(Short Message Service,SMS),不论实验室管理员身处何地,仅需拥有一部接入GSM网络的手机,即可实现对实验室内相关设备的远程控制。插入用户身份识别(Subscriber Identity Module,SIM)卡的GSM终端与主处理器通过串行口实现通信。当管理员给系统发送短信时,GSM终端接收短信并通过串口将短信内容发送给主处理器,主处理器解析短信内容并执行相应动作。若为控制遥控类设备的指令,主处理器将通过串口或无线透传通知第二处理器,令其将事先学习并存储的红外信号还原发出以控制设备按指定的模式工作。若为控制加湿器、除湿器、照明灯等设备的指令,主处理器将驱动继电器接通或断开设备电源。若为获取环境参数的指令,主处理器将令GSM终端回复带有环境参数和系统状态的短信,实现远程监测。此外,现场管理员亦可用本地遥控器实现控制:红外接收模块收到遥控器发来的红外信号后,交由主处理器解析并执行相应动作。各类传感器则实时感知环境参数并传送至主处理器。

自动调控模式启动后,闭环控制子系统开始运行,此为整套系统智能化的关键所在,主要包括测量、比较和执行三个环节。此时主处理器会实时将获得的环境参数与事先设定的控制范围进行比对。当参数高于或低于控制范围时,主处理器会驱动继电器或第二处理器来控制设备以调控参数,当参数回归控制范围后则驱动关闭设备,以此保持环境参数的稳定,如图2所示。而当参数失控并超过警戒线范围时,往往表示设备存在故障,此时主处理器会令GSM终端发送警示短信,提醒管理员及时到场修复。

图2 闭环自动控制子系统的基本原理示意图

为实现对红外遥控类设备的控制,且不受机型限制,系统需具备红外学习能力,以学习并记录下控制所需的红外信号,并能将其重现、发射。红外遥控信号是一组串行二进制编码脉冲,含高、低两种电平。不同的遥控设备一般有自身专用的编码协议,收发双方须遵循相同的协议进行解码与编码,从而建立连接实现遥控。红外信号的学习主要有协议识别和波形存储两种方法[7]。然而,由于设备类型、生产厂家的不同,红外遥控波形协议各种各样,协议识别法通常只能针对某一种特定的协议[8],学习单一码制的红外信号[9],通用性不强。而波形存储法则专注于波形的脉冲序列记录与重现,可不受红外波形编码协议的限制[10],真正实现了“万能”学习与遥控,因此本系统采用波形存储法实现红外学习。由于该方法对处理器速度和存储空间大小要求较高,为不影响主处理器中主程序的运行,也使红外发射部分独立可移动,系统另行采用一块高速单片机作为第二处理器专门处理该任务。

波形存储法的基本原理为:捕获原遥控器所发出的红外信号,用适当的方法记录下波形的脉冲序列特征,进行完全拷贝并保存。当需要重现发射时,再从存储器内读出相应的特征参数,驱动发射管发出还原信号。在本系统中实现波形存储,需令第二处理器在监测到用户通过原配遥控器发射的红外信号后,启用内部定时器来记录信号高、低电平持续时间,并将该组时间值连续存储于内部E2PROM中某一512字节的扇区内,以保存这一信号,如图3所示。该组时间值即为该红外信号的特征参数。需要发射相应信号时,处理器启用两个内部定时器,一个用于以中断方式产生38 kHz载波,另一个用于根据高、低电平时间产生调制信号,两者经过调制后同时加载于红外发射管上,即可实现信号的重现与发射。

图3 红外波形存储法的原理与实现方法示意图

实际软、硬件设计时,选择常见的加湿器、除湿器、空调为受控对象,以温度、湿度这两种环境参数的监测与控制为例,实现本套系统。

2 硬件设计

2.1 主处理器

主处理器选用MSP430F149单片机。该单片机是美国德州仪器(TI)推出的一种16位超低功耗、具有精简指令集(Reduced Instruction Set Computer,RISC)的混合信号处理器[11],具有功耗低、指令高效、电压范围宽、时钟灵活可选、中断功能强大、唤醒时间短等特点[12]。其片上有2 KB RAM,包括基本时钟、看门狗定时器、12位A/D转换器、2个16位的可输出PWM单元的定时器、2个具有中断功能的8位并行端口和4个8位并行端口、2个串行通信接口等模块[13],完全能够满足本系统的使用。

2.2 第二处理器

第二处理器选用宏晶公司生产的STC15W404AS高速单片机,超低功耗、超强抗干扰、宽工作电压的单片机,其按照高速内核设计,采用增强型1T8051CPU,速度比普通8051快8~12倍,且不分频,保证了红外信号38KHz载波的发生和发射波形的还原所需的高速计算能力。其内含9KB E2PROM,可以分成18个512B的扇区,存储18个红外信号特征参数。其内置1个串行口,保证了与主处理器的通信。其内部拥有三个定时器,是载波发生、信号特征的记录与重现以及串行口通信的重要保证。以STC15W404AS为处理器,外加按键、红外收、发模块等外设,即可组成万能型红外学习与发射模块,用以控制空调。该模块关键部分原理图如图4所示。其中,P1.0是借助定时器T0以中断溢出方式产生的38KHz载波的输出管脚,P1.1是借助定时器T2根据已记录的高、低电平时间产生的调制信号的输出管脚,它们通过调制电路加载于LED红外发射管上实现红外信号的重现发射;P1.3连接红外接收管的OUT脚;P3.0~P3.1为串行口,可与主处理器的串口P3.6~P3.7连接;P3.2、P3.6连接按键K3、K4,分别用于控制进入“红外信号的捕获与学习”和“擦除存储红外信号特征参数的扇区数据”任务。

2.3 GSM终端

GSM终端选用华为公司生产的MG323-B型GSM/GPRS无线数据终端。MG323体积小,支持GSM850/900/1800/1900MHz四个工作频段,接收灵敏度<-107 dBm,支持GSM/GPRS Phase2/2+协议,带有1 个可连接主处理器的串行口[14],即UART1_RD与UART1_TD,可与主处理器P3.4~P3.5相连。

图4 万能型红外学习与发射模块关键部分原理图

2.4 显示模块

显示模块选用LCD12864型液晶显示模块。该模块内置64×16位字符显示RAM和64×16位字符产生RAM(CGRAM),以及8192个中文字型(16×16点阵)和126个西文字型(16×8点阵)字库,显示汉字与字符。模块还提供了8位并行和串行这两种与处理器连接的方式,能满足本系统的需求。模块主要有RS、WR、EN、CS这四个控制引脚,连接主处理器P6.3~P6.6,而8位数据引脚则连接主处理器P2.0~P2.7。

2.5 传感器

以环境温、湿度的监测为例,本系统选用奥松公司的DHT11型数字温、湿度传感器。该传感器是一款含有已校准数字信号输出的温、湿度复合传感器,其内部含有一个电阻式感湿元件和一个NTC测温元件,并与内置的高性能 8 位单片机相连,且采用单线制串行接口,具有体积小、功耗低、成本低、精度高、数据传输简单等优点,应用十分广泛[15]。该模块有4个引脚,其中2号引脚为数据引脚,连接主处理器的P4.6脚,3号引脚无定义。

2.6 其他外设

红外接收选用HX1838红外接收模块,红外信号由主处理器P4.5接入;继电器选用松乐公司的SRD-05VDC-SL-C型10A继电器,控制引脚连接主处理器P5.6、P5.7。

本系统整体硬件连接示意图如图5所示。其中连接P1.0的K1用于产生外部中断,按下后可进入“等待、比对本地遥控器信号并执行相应动作”的任务。

3 软件设计

由于本系统涉及两个处理器,因此需分别编写各处理器运行的程序,以协作实现系统功能。

3.1 主处理器程序设计

(1) 主要流程。主处理器的程序流程如图6所示。系统启动后首先进行初始化,包括处理器本身、串行口以及标志量的初始化等。接着进入基本设置环节,如短信密码设置、自动调控范围的设置、警戒线范围的设置等。管理员须持本地遥控器按照屏幕提示进行设置,此时系统需调用遥控器键值获取函数,该函数需启用定时器TB来检测红外接收管引脚高(低)电平的持续时间。设置完毕后系统处于待机状态,待管理员按下遥控器开机键后即可开机,进入等待GSM终端网络注册的循环。此时系统不断给GSM终端发送查询网络注册是否成功的AT指令,直到收到其应答信息后跳出。发送AT指令的函数不仅要完成指令的发送,还需进行应答信息的比对,以确保GSM终端接收无误。之后继续给GSM终端发送AT指令进行短信模式设置等,设置成功后即可进入主循环。

图5 系统整体硬件连接示意图

图6 主处理器的程序流程图

主循环内,系统首先根据DHT11传感器的时序要求读出温、湿度数据,并显示于LCD,然后运行报警监视函数。该函数将实时温、湿度与预设的警戒线范围进行比对,如超出则令LCD显示报警信息并给管理员发送警示短信,提醒管理员及时处置。若没有中断产生,系统即在此间循环。此时如管理员给系统发送短信并被GSM终端接收,则主处理器串口0产生中断,中断函数中标志位1被置位,系统回到主循环后便运行短信内容比对与动作执行函数check_new_message()。如第二处理器发来回复信息,则主处理器串口1产生中断,中断函数中标志位2被置位,系统将运行内容比对与动作执行函数check_new_2ndCPUsig()。如K1按键被按下,则主处理器外部中断发生,中断函数中标志位3被置位,系统将运行遥控器键值比对与动作执行函数check_new_remotekey(),其中当键值为“关机键”时系统将驱动继电器关闭加湿器、除湿器并跳转程序回到待机状态。如代表运行模式的自动标志被上述动作置位,则系统进入闭环自动控制模式。此时系统循环运行传感器温、湿度读取、显示、报警监视、自动调控等函数,直到有中断响应时退出。

(2) 关键函数与进程。check_new_message()是本系统关键函数之一,其主要流程是:先比对GSM终端的应答信息是否为短信(是否包含“+CMT”)及短信密码是否正确,并记录来信号码。如密码正确则进一步比对短信内容,若为有效指令,则执行相应动作并令LCD显示已收到的指令。其中,收到控制空调指令时,由串口1给第二处理器发送对应指令,令其发射红外信号以控制空调;收到加湿器、除湿器的开/关指令时,令继电器闭合或断开,同时更新系统状态信息并令GSM终端给管理员回复确认短信;收到获取实时状态指令时,令GSM终端回复实时状态信息,管理员即可远程获取实验室实时的温、湿度以及系统运行状态等;收到自动调控模式的开、关指令,则给自动标志置、复位,同时更新系统状态信息并令GSM回信确认。

check_new_2ndCPUsig()也是系统运行的关键之一,其主要流程是:先判断信息内容有效性,如有效方执行相应动作——显示空调调控结果、更新系统状态信息以及给第二处理器回复再次确认信号。如模式为非自动,则意味着此时空调调控指令来自管理员,故还将令GSM终端给管理员回复确认短信。

闭环自动控制则是系统的关键进程,其核心是测量、比较和执行。自动调控函数autocontrol()则是实现闭环控制的关键:当温度低于/高于预设的自动调控范围时,给第二处理器发送相应指令让其控制空调制热/制冷,控制的温度由调控范围的上下限值灵活选择,以求适中、节能,直到温度回归调控范围中间值时方关闭。湿度的控制与温度类似,只是调节时驱动的是继电器,且需及时显示调控结果并更新系统状态。

3.2 第二处理器程序设计

第二处理器的程序流程如图7所示。当主处理器发来控制指令时,第二处理器将根据指令内容调用相应的事先学习并以高、低电平特征参数形式存储在E2PROM某扇区中的红外信号通过LED红外发射管发出,以实现对空调的控制。红外信号捕获与学习函数infrared_get_code()与红外信号发射函数infrared_send_code()是第二处理器执行的主要函数。

图7 第二处理器的程序流程图

infrared_get_code()采用波形存储法实现,主要流程有:监测到低电平后开始低电平计时(启用定时器T0)、计时期间将之前的高电平计数值写入扇区、监测到高电平后低电平计时停止并暂存计数值同时开始高电平计时、计时期间将之前的低电平计数值写入扇区、监测到低电平后高电平计时停止并暂存计数值同时开始低电平计时……如此循环反复直到检测到信号结束(高电平时间过长)后退出。最后在一个扇区内连续保存了一组高、低电平的时间值,此即为红外信号的特征参数。

infrared_send_code ()用到定时器T0和T2,主要流程是:启动定时器T0,以中断方式在P1.0产生38 kHz载波;读出扇区中的电平时间数值,将其作为定时器T2的计数值并启动T2,在P1.1产生具有精确时长高(低)电平的调制信号。

3.3 短信指令

本系统定义的短信指令及其含义详见表1。管理员须按“短信密码+指令”格式发送相关短信方可实现远程监测与控制。

表1 短信指令及其含义

4 系统测试

根据功能需求,完成了系统设计,如图8所示,并在实验室中进行了各项功能测试。测试结果表明,系统能实现实验室温、湿度的监测、报警与智能调控,能实现手机远程监测与控制,能实现任意红外信号的学习与存储,达到了设计要求。

图8 系统成品实物图

5 结 语

采用红外信号波形存储、闭环自动控制等理论与方法,设计并实现了一套红外学习型实验室环境参数的远程智能监测、报警与调控系统。先后介绍了系统的设计方案、工作原理、软硬件设计等,最后对系统成品进行了测试,取得了满意的结果。本系统具备的红外学习能力大大方便了受控对象的拓展,若接入更多的传感器,如烟雾传感器、光强传感器等,还可进一步丰富系统功能。本系统的应用有效地降低了实验室管理的难度,保障了实验室环境的安全稳定,提高了实验室的信息化与智能化水平。本系统稍加修改还可以应用于更多场合,应用前景广阔。

[1] 黄 莺.基于Android手机的实验室环境监测系统[J].实验室研究与探索,2014,33(10):91-93,128.

[2] 徐同杰.化学实验室远程安防报警系统设计[D].扬州:扬州大学,2013.

[3] 赵 瑾,廉小亲,吴叶兰.基于MSP430和CC2530的空调远程控制节点的设计[J].测控技术,2013,32(10):77-80.

[4] 廉小亲,陈建涛,张晓力.基于MSP430的远程空调控制系统控制终端的设计[J].测控技术,2013,32(2):62-65.

[5] 刘通良,潘仕彬.核环境下基于GSM SMS的无线通信平台的实现[J].核电子学与探测技术,2007,27(6):1252-1255,1174.

[6] 邱海燕.基于GSM的电力传输防盗报警系统设计[D].南昌:南昌大学,2013.

[7] 曾炼成,周小云.基于波形存储型红外学习的数据压缩方法[J].计算机与现代化,2014(4):195-198.

[8] 程小辉,康燕萍.可识别载波的红外遥控自学习模块研究与设计[J].电子技术应用,2013,39(2):121-124.

[9] 刘永广,张宏怡.适于数字家庭的学习型红外遥控器设计[J].厦门理工学院学报,2014,22(3):71-75.

[10] 郑 伟,谢利理,张 震.一种具有自学习功能的智能红外遥控器设计[J].计算机测量与控制,2007,15(12):1758-1759,1800.

[11] 周昆鹏.基于MSP430单片机的电子血压计的设计[J].电子设计工程,2012,20(15):162-165.

[12] 李 彬,王朝阳,卜 涛.基于MSP430F149的最小系统设计[J].国外电子测量技术,2009,28(12):74-76.

[13] 谢兴红,林凡强,吴雄英.MSP430单片机基础与实践[M].北京:北京航空航天大学出版社,2008.

[14] 冷 勇.基于GPRS的机房监控终端的设计[D].长沙:湖南大学,2012.

[15] 胡兴志,李学哲,杨兴波.被动式煤矿井下环境安全监测系统设计[J].工矿自动化,2014,40(6):77-80.

Design of Infrared-Learning Remote Intelligent Control System for Laboratory Environment

LINNan,SUNJian-hong

(School of Electronic and Optical Engineering, Nanjing University of Science and Technology,Nanjing 210094, China)

This paper presents the design and implementation of an IR-learning remote automatic monitoring, alarm and control system which has intelligence and universality for the laboratory environment, and can help to ensure lab safety. The system combines the theories of IR waveform storage and closed-loop control based on MSP430, STC15 and GSM, includes a closed-loop automatic control subsystem, and has the functions of remote monitoring and control. It has the ability to learn, store, reproduce, and transmit IR signals and to control all kinds of appliances that can be controlled by IR. In this paper, the principles and functions of the system, and hardware and software design are introduced, and the test results are described. The experimental results indicate that this system achieves the expected goals. The system can be applied to other occasions after the functions are modified and extended, so it has a certain research and practical value.

remote monitoring; automatic control; IR learning; waveform storage; GSM; MSP430

2015-01-18

江苏省产学研联合创新基金(BY2014004)

林 楠(1990-),男,福建宁德人,硕士生,主要研究方向为嵌入式系统。

Tel.:15651935199; E-mail: 513104001565@njust.edu.cn

孙建红(1966-),女,江苏张家港人,副教授,主要从事电路与系统的研究与教学。

Tel.:025-84303086; E-mail: sunjh@njust.edu.cn

TP273+.5

A

1006-7167(2015)12-0277-06

猜你喜欢
环境参数短信指令
基于云平台的智能家居环境参数协同监控系统设计
列车动力学模型时变环境参数自适应辨识
一种食用菌大棚环境参数测控系统设计
道歉短信
ARINC661显控指令快速验证方法
代发短信
杀毒软件中指令虚拟机的脆弱性分析
猪场环境参数评价体系研究
中断与跳转操作对指令串的影响
一种基于滑窗的余度指令判别算法