徐红卫
(金乡县水利事业发展中心,山东 济宁 272200)
洪水灾害具有复杂性、不确定性、动态性等特点[1],且突发性强,难以预测,因此设计洪水灾害预警系统十分必要[2]。目前国内外对洪水预警系统进行了大量研究,取得了一系列成果。李福仲等[3]针对郭家村水库流域的实际情况,建立了郭家村水库洪水预报调度模型;刘云[4]以无线技术和GSM为信息媒介,介绍了一种洪水预警系统的原型;刘刚[5]选定适合流域特性的洪水预警预报模型,引入数字高程(DEM)等技术研制引汉济渭工程洪水预报系统;陆瑶等[6]以2015 年法国Alpes-Maritimes 省山洪事件为例,介绍预报链的预报流程,开发一个山洪实时预报预警系统;寇嘉玮[7]采用WebGIS与水文学、水力学模型相结合,将一二维耦合的水动力学模型内嵌于B/S系统进行洪水预报预警的方法,开发了基于WebGIS的洪泽湖地区洪水预报预警系统;杨浩淼等[8]模拟道路建设前后嫩江湾湿地在20、50 a一遇洪水下的演进情况,分析湿地的壅水影响;徐琦良等[9]基于SSH框架,采用My SQL数据库,综合应用Arc GIS API for Javascript、Java Script(JS)、HTML5、CSS等技术,设计并开发了实时洪水预报与预警Web GIS 系统;高琴等[10]开发了基于GSM 通信的山洪监测预警系统,该系统由嵌入式μC/OS 创建人机交互界面,采用液晶触摸显示屏实时显示水位数据并进行预警操作。
本文建立了一种不依赖移动塔的预警系统,该系统包括发射站和接收站、压力传感器、集成板、Arduino Uno。数据传输采用先进的ZigBee 收发器,用于接收数据并连接到平板电脑上。此外,还增加GSM 模块和Android 应用程序,用于在居民手机端发送短信。研究成果可为相关工程提供参考。
北大溜河地处淮河流域南四湖西部,位于金乡县东北部,跨越金乡、中区2个县市区,全长26.5 km,流域面积111.9 km2,其中金乡县境内长20.0 km、流域面积75.88 km2。本流域属暖温带半湿润气候区,四季分明,其特点是春季多风,雨少易旱;夏季湿热,多雨易涝;秋季天高气爽,旱涝相间;冬季寒冷干燥,雨雪稀少。多年平均降雨量673.9 mm,且多集中在汛期,6—9 月占全年降雨量的70%以上,降雨量的年内和年际变化较大,以至出现春旱秋涝、秋后又旱、连续干旱和连续洪涝的现象。地下水主要为第四系松散岩类孔隙水,包括微承压水、中深层承压水、深层承压水3种地下水类型,主要分布在冲洪积、湖积平原的第四系松散堆积层中。含水层岩性主要为黏土(含裂隙)、壤土、砂壤土、细砂,含水层分布连续性较差、均匀性差。
本文的预警系统包括洪水监测系统和警报系统。拟建系统不依赖移动塔,即使在没有互联网的情况下也能正常工作,耗电量较小,警报指示直接发送给当地居民,避免了延迟。设计的系统没有复杂的计算,可以避免程序出现漏洞。拟设计的预警系统有2个站,一个是发射站,另一个是接收站。发射站包括固定在长管道上的压力传感器,该传感器与集成板Arduino Uno 相连。带有压力传感器的管道被放置在千斤顶井内,在千斤顶井外侧连接电站。数据传输采用ZigBee收发器。ZigBee收发器用于接收数据并连接到平板电脑上。GSM 模块用于在居民手机端发送短信。当手机端出现提醒消息时,Android 应用程序将被激活。在此期间,手机会震动并发出警报声。
ZigBee从一个站到另一个站的传输距离为70 m。在网络拓扑中,通过从一个节点到另一个节点的数据传输,也可以实现比这更长的距离。ZigBee 设备主要应用于数据吞吐量低的领域。数据以数据包的形式传输,数据包长度最大为128 字节,而允许有效负载为104 字节,该大小可以根据IEEE中的应用支持而变化。ZigBee 传输网络,如图1所示。
图1 ZigBee传输网络
GSM/GPRS 调制解调器RS232 采用双频GSM/GPRS 引擎,SIM900A 工作频率为900/1 800 MHz,系统配有支持RS232 接口的调制解调器,因此可以使用MAX232 芯片将其与计算机以及微控制器连接。GSM/GPRS 调制解调器有一个内部TCP/IP 协议栈,允许用户通过GPRS 连接到互联网,有助于发送移动通信短信、语音通话。车载稳压电源能够连接多种非稳压电源。所有的事情都可以通过使用简单的AT命令来完成。GSM模块-SIM900A,如图2所示。
图2 GSM模块-SIM900A
Android 是谷歌设计的移动操作系统,属于修改的Linux 内核版本,主要用于智能手机和桌面等便携式触摸屏应用。Android SDK 提供了使用Java 编程语言开发Android 平台应用程序所需的工具和API。Android有一个大的开发者社区可以编写扩展Device Function 的应用程序。Android系统目前可以访问超过10 亿个应用程序。Android 的默认用户界面可以直接操作,使用与真实世界行为(如擦拭、轻敲、挤压和反向挤压)相对应的松散触摸输入,通过虚拟键盘在屏幕上操作蓝牙或USB。用户输入的反应是即时的,并提供了一个流畅的触摸界面,通常使用设备的振动能力向用户提供触觉反馈。系统传感器连接方式,如图3 所示。这里的传感器是一个压力传感器BMP280,由微控制器Arduino 控制,220 V的电源被转换为5、3 V,根据应用而定。此转换由电压转换器模块完成。
图3 系统传感器连接方式
在这2 个站点,ZigBee 都处于路由器模式。这意味着我们可以增加站点的数量,对于每个站点,Zigbee 都将处于外部模式。传感器数据为压力,该压力通过以下公式转换:
式中:h为压头(m);g为重力加速度(m/s2)。由式(1)得到的水位单位是cm,这将在Arduino 编程中完成。程序中设置了上一次洪水水位的阈值水位,当计算水位达到该阈值以上时,将发布警报。
服务器站的框图,如图4 所示。平板电脑微控制器用于从ZigBee 采集水位数据,并将其和特定站点的阈值进行比较。微控制器有CSV 文件,其中存储了每个站点的居民手机号码。这些CSV 文件是在微控制器中制作的。如果1 号站点出现危险情况,则GSM 模块将使用1 号站点的CSV 文件向移动设备1 号站点发送消息。根据该服务器,工作站将在给定CSV 文件路径的情况下使用微控制器脚本。数据站从ZigBee接收到的数据延迟3 s。
图4 服务器站的框图
1 号站点和2 号站点预警系统实体装置,如图5所示。
图5 1号站点和2号站点预警系统实体装置
该装置有2 个LED,一个是红色的,另一个是绿色的,分别指示系统开/关和数据/校准。当系统启动时红色LED 将点亮,当数据传输开始时绿色LED将点亮。下面的红色按钮用于校准数据。数据校准只是设置初始水位,正常水位为0。2个站点都有相同的电路和相同的工作方式。用户可以增加更多的站点来预测洪水,所有站点内部都具有相同的电路结构。这些站点采用220 V 电源,由电压调节器模块根据每个模块电源进行转换。
服务器站模型的外部视图显示4 个红色指示灯,表示系统开/关、1 号站点开/关、2 号站点开/关和警报。当服务器启动时,第一个LED 将发光。当1号站点或2 号站点接通时,第二个和第三个LED 将分别点亮。当发生危险级别时,警报LED 将发光。服务器站的内部结构包括GSM 模块和ZigBee 连接器。充电器模块(白色)用于供电。
北大溜河正常水位和预警水位的系统测试结果,如图6所示。
图6 北大溜河正常水位和预警水位的系统测试结果
由图6 可知,当水位为正常水位时,首先2 个LED 将亮起,以显示1 号站点或2 号站点或2 个站点是否已打开,由于水位正常,警报LED 将熄灭,系统运行正常。当水位为预警水位时,2 号站点警报指示灯亮起,最后一种情况发生在2 个站点都处于预警水位时,指示灯亮起。服务器站显示,当1号站点处于洪泛状态时,系统指示灯、1 号站点和警报LED将发光;当2号站点处于洪泛状态时,系统、2号站点和警报LED将发光。
此外,在洪水来临前,当出现警报条件时,Android应用程序将显示警报消息。Android应用程序在手机短信上工作。当手机收到洪水信息时,应用程序显示警示标语。在这个过程中,手机会震动,发出警报。
洪水是一种不易预测的自然灾害,但可以通过开发预警系统,为当地居民提供早期信息。本文建立了一种不依赖移动塔的预警系统,包括发射站和接收站、压力传感器、集成板、Arduino Uno。数据传输采用先进的ZigBee 收发器,用于接收数据并连接到平板电脑上。此外,还增加GSM 模块和Android应用程序,用于在居民手机端发送短信。最后通过在北大溜河正常水位和危险水位测试表明,当系统在河流水位处于危险状态时,警报LED 能迅速亮起,Android 应用程序能够及时发出危险警报,因此可以看出本文设计的洪水预警系统便捷有效,能够起到提前疏散人员的预警作用,值得推广应用。