摘 要:如今船舶上已逐渐进行Wi-Fi全覆盖,将Wi-Fi技术应用到船舶监测报警中也是发展趋势,本文利用NodeMCU单片机,利用Lua语言编写了相应的通讯程序,在实验室搭建了由西门子S7-400主从站组成的模拟仿真系统,并利用HTML语言设计开发远程监控网页界面。通过连接在同一Wi-Fi下的设备访问IP地址,即可在浏览器中打开远程监控界面,对对象进行数据监视和远程控制,并在Windows 10系统下通过Microsoft Edge浏览器进行访问测试,测试结果证明了这一方法是可行的。
关键词:NodeMCU;无线监控;船舶;通讯
中图分类号:TP391.44 文献标识码:A 文章编号:1671-2064(2017)11-0031-02
在电力推进技术广泛应用于船舶领域的大环境下,为了更方便地监视船舶动态和管理船舶,保证船舶上的设备和人员的安全,机舱检测报警系统应运而生。而随着自动化技术的不断发展和成熟,船舶上的报警系统延伸到了更多必要的地方,比如驾驶台,集控室等等,然而这样也不能保证轮机管理人员能够实时接收到监测和报警信息。而如今,越来越多的船舶已经能够实现全船Wi-Fi全覆盖,完全可以利用Wi-Fi来实现机舱监测报警的数据共享,这样使轮机管理人员不用时时刻刻注视着集控主机,通过手机便能实时接收到监测报警信息。
本文利用NodeMCU单片机连接Wi-Fi来进行数据透传,设计制作了一个无线监测网页界面,通过访问对应的IP地址便可实时获取监测报警信息。
1 系统硬件构造
在实验室环境下搭建某条船的监控系统仿真模型,其拓扑图如图1所示,系统上层由监控中心主机、主控PLC与NodeMCU以及无线接入端(智能手机、船员电脑和平板电脑等等)组成,遵循TCP/IP协议。系统下层由主控PLC S7-1200与各个从站组成,他们之间由Profibus-DP连接,遵循Profibus-DP协议,各个从站分管不同的监测点数据。如机舱监控系统、导航和航行规划系统以及综合船舶信息显示与处理系统。
如图2所示,NodeMCU与监控中心主机之间通过USB连接,NodeMCU内嵌ESP8266 Wi-Fi模块,ESP8266是一款性价比很高的Wi-Fi串口解决方案模块,系统正是通过这一模块进行数据的无线传输的。
现代船舶上有数以千计的监测点,本文仅选取机舱监控系统下的几个传感器数据进行监控测试,分别为主轴承滑油进口压力、一号增压器滑油进口压力、二号增压器滑油进口压力、一号增压器滑油出口温度以及二号增压器滑油出口温度,通过测试该若干个监测点的数据传输,便可验证利用NodeMCU进行无线监控的可行性。
2 系统软件设计
2.1 程序设计
根据NodeMCU提供的事件驱动型API,可以很方便地进行程序的编写;而且由于使用的是Lua脚本语言,仅仅需要很简单的程序片段,便能实现很复杂的功能。
由于我们需要进行远程监控,在程序的开始需要对固件进行设置。
(1)Wi-Fi设置:利用Wi-Fi.setmode(Wi-Fi.STATION)將NodeMCU设置为station模式,使用Wi-Fi.sta.config ("SSID", "PASS WORD") 来设置Wi-Fi名称和密码以连接到无线网。
(2)定义输入输出接口:监控的数据主要为主轴承滑油进口压力、一号增压器滑油进口压力、二号增压器滑油进口压力、一号增压器滑油出口温度以及二号增压器滑油出口温度,分别设置为pm、p1、p2、t1、t2。Lua语言编程环境下可直接引用..pm..来进行输出。
(3)数据通讯总线的设置:本文使用NodeMCU无线透传进行数据传输。此外,NodeMCU也可直接外接传感器,对监控主机所在的环境进行监测。若外接传感器可利用gpio.mode(x, gpio.INPUT)来将pin x设置为输入模式,进而读取传感器数值。
(4)监控画面的设计:为了更加方便快捷,使得用户可以通过连接与NodeMCU相同的Wi-Fi,在浏览器下访问NodeMCU的IP地址,通过程序中get(IP)获得(案例设定为:192.168.99.100)便可进行监控。监控画面及监控网页利用HTML语言编写。在系统没有运行的情况下的监控界面如图3所示,此时监测值皆为默认值“0”,报警皆为默认值“NO”,故障预警结果也为默认值“NULL”。
2.2 监控测试
系统运行后,在监控端主机传递变量数据后,在另一台电脑(操作系统为Windows 10)上连接该Wi-Fi,并通过Microsoft Edge浏览器访问192.168.99.100,便可获得如图4所示的监控结果。输入pm、p1、p2、t1、t2分别为0.2、0.2、0.2、105、105,所以在下方的故障预警结果中会输出“主轴承滑油进口压力过低”的结果,符合预期结果,证明这一应用方式的可行性。
3 结语
根据总体的设计过程和测试结果,本文得出以下结论,将NodeMCU投入到船舶监控系统中进行应用,经过实验测试可以证明其便捷性和可靠性,而且该种方案可以进行修改,进而推广到不同的监控场合和生产工作场合中。
参考文献
[1]R Ierusalimschy. Programming in Lua[M]. DBLP,2003.
[2]徐海琴,田作华,曹广益.远程监控技术的新进展[J].微型电脑应用,2004,20(8):3-5.H Q Xu, Z H Tian, G Y Cao. On the New Development of Remote Monitoring Technology[J]. Microcomputer Application,2004,20(8):3-5.
[3]姚增韻,刘小榕,吴家乾,陈文秀.基于C#的船舶电力推进监控系统的数据通讯设计[J]. 船舶标准化工程师,2015,48(5):61-63.Z Y Yao, X R Liu, Q J Wu. Data Communication Design of Ship Electric Propulsion Monitor System Based on C#[J].Ship Standardization Engineer,2015,48(5):61-63.
[4]沈航,庞观士,林诗美.物联网工控平台现场级无线传感器网络节点的研究和设计[J].新型工业化,2016,6(10):94-98.Shen Hang, Pang Guan-shi, Lin Shi-mei. Study and Design on IOT Industrial Platform at the Field Level Wireless Sensor Network Nodes[J].The Journal of New Industrialization, 2016,6(10):97-98.
[5]张显库,任光,刘军,等.综合船舶监控系统设计[J].中国造船,2002,43(2):71-80.Zhang Xian-ku, Ren Guang, Liu Jun, et al. Design of Integrated Monitoring Systems for Ships[J].Shipbuilding of China,2002,43(2):71-80.
[6]闫波.基于PLC的船舶机舱监测报警系统设计与实现[D].大连海事大学,2015.Yan Bo. Design and Implement of Ship Engine-Room Monitoring and Alarm System Based on PLC [D]. Dalian Maritime University,2015.
[7]徐弘升,林叶锦.基于嵌入式系统和CAN总线的船舶监控系统设计[J].大连海事大学学报,2008,34(s1):101-103.XuHong-sheng, Lin Ye-jin. Design of a ship monitoring system based on embeded system and CAN bus[J] Journal of Dalian Maritime University,2008,34(s1):101-103.
[8]QM Ashraf, MIM Yusoff, AA Azman, NM Nor. Energy monitoring prototype for Internet of Things: Preliminary results[J].International Symposium on Autonomous Decentralized Systems,2015,40(1):1-5.