劉中華
[摘 ? ?要]針對(duì)銀行業(yè)網(wǎng)點(diǎn)多、網(wǎng)點(diǎn)地域分布跨度大、用電設(shè)備數(shù)量和種類眾多問(wèn)題,根據(jù)銀行日常管理和運(yùn)維的要求,采用基于NB-IoT物聯(lián)網(wǎng)技術(shù)的控制終端,結(jié)合B/S架構(gòu)模式設(shè)計(jì)一套控制和能耗管理系統(tǒng),解決傳統(tǒng)銀行業(yè)用電管理手段落后、能耗數(shù)據(jù)采集滯后等問(wèn)題。該系統(tǒng)由信息采集、遠(yuǎn)程控制、能效分析等子系統(tǒng)組成,經(jīng)開(kāi)發(fā)測(cè)試上線驗(yàn)證后,運(yùn)行穩(wěn)定,實(shí)現(xiàn)了對(duì)跨區(qū)域銀行網(wǎng)點(diǎn)能耗的實(shí)時(shí)管理,并具有良好的擴(kuò)展性和推廣性,為綠色金融在金融機(jī)構(gòu)自身的環(huán)境和社會(huì)表現(xiàn)上進(jìn)行了有益的探索。
[關(guān)鍵詞]遠(yuǎn)程控制;能耗管理;系統(tǒng)設(shè)計(jì)
[中圖分類號(hào)]TN929.5;TP391.44 [文獻(xiàn)標(biāo)志碼]A [文章編號(hào)]2095–6487(2021)03–00–04
[Abstract]In view of the problems of many banking outlets, large geographical distribution span of outlets, large number and variety of electrical equipment, according to the requirements of daily management and operation and maintenance of the bank, a control and energy consumption management system is designed based on Nb IOT technology and B / S architecture mode, which solves the problems of backward power management means and energy consumption data acquisition in traditional banking industry. The system is composed of information collection, remote control, energy efficiency analysis and other subsystems. After development and testing, the system runs stably, realizes the real-time management of energy consumption of cross regional bank outlets, and has good scalability and popularization, which makes a beneficial exploration for green finance in the environment and social performance of financial institutions.
[Keywords]remote control; energy consumption management; system design
隨著銀行業(yè)數(shù)字化進(jìn)程的發(fā)展,銀行業(yè)務(wù)和管理系統(tǒng)的數(shù)字化水平得到了迅猛發(fā)展,支持銀行業(yè)務(wù)發(fā)展的核心系統(tǒng)、支付系統(tǒng)、管理系統(tǒng)種類繁多且功能完善齊備。銀行在主要業(yè)務(wù)和管理方面已初步實(shí)現(xiàn)數(shù)字化,且正在努力向平臺(tái)化、智能化方向高速發(fā)展。隨著數(shù)字化進(jìn)程的快速推進(jìn),對(duì)跨地域分布種類繁多的各類用電設(shè)備管理和能耗管理提出了新的要求。
當(dāng)前傳統(tǒng)銀行主要的用電設(shè)備為分散到各營(yíng)業(yè)網(wǎng)點(diǎn)的門頭招牌大屏、室內(nèi)照明設(shè)備、空調(diào)、室內(nèi)風(fēng)盤風(fēng)機(jī)、UPS不間斷電源等,對(duì)用電設(shè)備的管理要求對(duì)于有人值守網(wǎng)點(diǎn),通過(guò)發(fā)布各類管理辦法,從制度上嚴(yán)格要求,或者通過(guò)定時(shí)巡檢來(lái)督促檢查落實(shí);對(duì)于無(wú)人值守網(wǎng)點(diǎn)只能依托于時(shí)控器或者保持長(zhǎng)期開(kāi)機(jī)、關(guān)機(jī)狀態(tài),無(wú)法做到隨時(shí)監(jiān)控狀態(tài)、關(guān)閉啟動(dòng)。能耗數(shù)據(jù)采集依靠人工上報(bào),不僅時(shí)間上延后且極可能產(chǎn)生誤報(bào)漏報(bào)。銀行當(dāng)前的管理方式嚴(yán)重制約了企業(yè)信息網(wǎng)絡(luò)自動(dòng)化管理的水平,需要一套設(shè)計(jì)合理、高度自動(dòng)化系統(tǒng)來(lái)實(shí)現(xiàn)精確管理。
本文根據(jù)某銀行的實(shí)際管理需求,使用軟件工程理論方法結(jié)合當(dāng)前主流技術(shù),對(duì)遠(yuǎn)程控制及能耗管理需求進(jìn)行了深入分析,并根據(jù)需求分析報(bào)告,完成了詳細(xì)的系統(tǒng)分析和開(kāi)發(fā)設(shè)計(jì)。該系統(tǒng)采用安全可靠的應(yīng)用架構(gòu)設(shè)計(jì),能夠及時(shí)、準(zhǔn)確控制目標(biāo)用電設(shè)備,按照預(yù)定的規(guī)則對(duì)用電設(shè)備進(jìn)行控制,同時(shí)實(shí)現(xiàn)實(shí)時(shí)能耗數(shù)據(jù)采集。
1 系統(tǒng)功能需求分析
本文將遠(yuǎn)程控制及能耗管理系統(tǒng)的用戶分為管理員和一般操作員,一般操作員具有轄內(nèi)的用電設(shè)備控制操作權(quán)限、當(dāng)前設(shè)備狀態(tài)查看和歷史能耗數(shù)據(jù)查詢功能。管理員除具有一般操作員權(quán)限外,還具有用戶管理、網(wǎng)點(diǎn)機(jī)構(gòu)管理、用電設(shè)備管理、定時(shí)控制及告警規(guī)則管理權(quán)限。見(jiàn)圖1。
2 系統(tǒng)設(shè)計(jì)及實(shí)現(xiàn)
2.1 系統(tǒng)總體設(shè)計(jì)
系統(tǒng)控制及能耗管理系統(tǒng)使用了基于NB-IoT物聯(lián)網(wǎng)協(xié)議的控制終端,控制設(shè)備接入使用NB協(xié)議負(fù)責(zé)子網(wǎng)內(nèi)設(shè)備間的組網(wǎng)及通信。后臺(tái)服務(wù)采用2臺(tái)應(yīng)用服務(wù)器、2臺(tái)數(shù)據(jù)服務(wù)器保障系統(tǒng)安全穩(wěn)定運(yùn)行,各網(wǎng)點(diǎn)機(jī)構(gòu)通過(guò)安裝控制設(shè)備用于負(fù)載設(shè)備的控制及能耗采集、環(huán)境溫濕度數(shù)據(jù)采集。整個(gè)系統(tǒng)設(shè)計(jì)簡(jiǎn)單、安全、可實(shí)施性高。
在應(yīng)用架構(gòu)設(shè)計(jì)方面,采用的是B/S架構(gòu)的應(yīng)用模式,2臺(tái)應(yīng)用服務(wù)器使用Apache的mod_proxy模塊實(shí)現(xiàn)負(fù)載均衡,負(fù)載分配規(guī)則根據(jù)掛起的請(qǐng)求數(shù)進(jìn)行平衡,提高系統(tǒng)的整體可用。數(shù)據(jù)持久層采用2臺(tái)Mysql數(shù)據(jù)庫(kù)服務(wù)器,通過(guò)Master-Slave主從復(fù)制的方式同步數(shù)據(jù),再通過(guò)MySQL-Proxy讀寫分離來(lái)提升系統(tǒng)的并發(fā)負(fù)載能力。消息及告警服務(wù)模塊通過(guò)ESB接入行內(nèi)統(tǒng)一的郵件和短消息服務(wù)。后端服務(wù)與控制終端采用TCP同步短連接通訊,根據(jù)向遠(yuǎn)程控制設(shè)備發(fā)送不同的報(bào)文實(shí)現(xiàn)遠(yuǎn)程控制后端用電設(shè)備的開(kāi)、關(guān)、狀態(tài)查詢、電力監(jiān)測(cè)、溫濕度監(jiān)測(cè)??傮w設(shè)計(jì)見(jiàn)圖2。
2.2 系統(tǒng)應(yīng)用架構(gòu)
應(yīng)用層級(jí)架構(gòu)采用三層設(shè)計(jì)模式,展示層使用jsp+ajax技術(shù),通過(guò)業(yè)務(wù)邏輯層獲得操作結(jié)果,負(fù)責(zé)用戶交互、數(shù)據(jù)錄入、控制操作、結(jié)果展示。業(yè)務(wù)邏輯層作為展示層和數(shù)據(jù)層的中間層級(jí),基于J2EE架構(gòu)設(shè)計(jì)遵循J2EE開(kāi)發(fā)規(guī)范,為整個(gè)系統(tǒng)提供功能和服務(wù),是整個(gè)系統(tǒng)的中樞控制中心。數(shù)據(jù)層采用mysql用于持久化保存系統(tǒng)產(chǎn)生的業(yè)務(wù)數(shù)據(jù),并為業(yè)務(wù)邏輯層提供數(shù)據(jù)的變更、查詢、存儲(chǔ)功能服務(wù)。應(yīng)用架構(gòu)設(shè)計(jì)見(jiàn)圖3。
2.3 系統(tǒng)主要功能實(shí)現(xiàn)
本系統(tǒng)與NB-IoT控制終端通信方式采用TCP短連接半雙工通信方式,控制終端為服務(wù)器端,應(yīng)用系統(tǒng)為客戶端。每個(gè)控制裝置配置有地址編碼,通信鏈路的建立與解除均由主站發(fā)出的信息幀來(lái)控制。每幀由幀起始符、從站地址域、控制碼、數(shù)據(jù)域長(zhǎng)度、數(shù)據(jù)域、幀信息縱向校驗(yàn)碼及幀結(jié)束符7個(gè)域組成,幀格式見(jiàn)表1。
每字節(jié)含8位二進(jìn)制碼,傳輸時(shí)加上一個(gè)起始位(0)、一個(gè)偶校驗(yàn)位和一個(gè)停止位(1),共11位。其傳輸序列如圖6。D0是字節(jié)的最低有效位,D7是字節(jié)的最高有效位。先傳低位,后傳高位。字節(jié)傳輸序列見(jiàn)圖4。
(1)用戶通過(guò)web頁(yè)面對(duì)控制設(shè)備后端用電設(shè)備進(jìn)行關(guān)閉、打開(kāi)或者查詢操作時(shí),系統(tǒng)通過(guò)TCP短連接協(xié)議連接到控制終端,并發(fā)送按照協(xié)議格式組織的數(shù)據(jù)格式,讀取控制終端返回?cái)?shù)據(jù)判斷操作是否成功,如操作失敗或者返回異常等非明確成功信息,系統(tǒng)再次組織發(fā)送查詢報(bào)文,獲取控制端口最新?tīng)顟B(tài),確保系統(tǒng)中記錄的控制端口狀態(tài)與實(shí)際情況完全一致。流程圖見(jiàn)圖5。
(2)依據(jù)定時(shí)規(guī)則進(jìn)行控制時(shí),檢索定時(shí)規(guī)則控制表中當(dāng)前需要執(zhí)行控制的記錄信息,根據(jù)定時(shí)規(guī)則定義的控制設(shè)備ID,查詢?cè)O(shè)備信息表獲取控制設(shè)備IP地址、端口號(hào)等信息,根據(jù)定時(shí)規(guī)則配置的操作類型,根據(jù)協(xié)議格式組織關(guān)閉或打開(kāi)報(bào)文,以TCP短連接方式發(fā)送報(bào)文并接受解析控制終端操作結(jié)果。操作成功,修改控制設(shè)備當(dāng)前狀態(tài)表用電設(shè)備狀態(tài)。為保證當(dāng)前狀態(tài)表中用電設(shè)備的準(zhǔn)確,在操作失敗或者返回異常后,組織狀態(tài)查詢報(bào)文,獲取用電設(shè)備最新?tīng)顟B(tài),如與控制規(guī)則不一致,則以郵件或短信告知管理人員。流程圖見(jiàn)圖6。
(3)關(guān)鍵代碼實(shí)例如下:
int i1=0x68;int i9=0x14;//控制碼
int i10= 0x02;int i11 =iDevPort;//要控制器端口編號(hào)
int i13=i1+i2+i3+i4+i5+i6+i7+i8+i9+i10+i11+i12;
if(i13>=256)i13 =i13-256;//校驗(yàn)碼
int i14=0x16; //結(jié)束碼
s=new Socket(szSvrIp,iSvrPort);//連接到控制終端
s.setSoTimeout(iTimeOut);//設(shè)置超時(shí)時(shí)間
os=s.getOutputStream();
is=s.getInputStream();
//發(fā)送閉合控制器端口報(bào)文
os.write(i1);os.write(i2);os.write(i3);os.write(i4);os.write(i5);os.write(i6);os.write(i7);os.write(i8);os.write(i9);os.write(i10); os.write(i11);os.write(i12);os.write(i13);os.write(i14);
byte[]buf = new byte[512];
is.read(buf);//讀取返回?cái)?shù)據(jù)
//解析返回報(bào)文
szReturnMsg=SplitGetAllReturnStr(buf,0x94);
if(errcode!=0)return null;
//其他省略
3 關(guān)鍵技術(shù)應(yīng)用
3.1 mysql主從切換技術(shù)
通過(guò)使用MySQL+keepalived來(lái)解決在一臺(tái)數(shù)據(jù)庫(kù)發(fā)生了宕機(jī)或者意外中斷等故障,保證業(yè)務(wù)不會(huì)因?yàn)閿?shù)據(jù)庫(kù)的故障而中斷,盡可能減少停機(jī)時(shí)間。兩臺(tái)MySQL主機(jī)設(shè)為主從關(guān)系,然后用keepalived實(shí)現(xiàn)虛擬IP,通過(guò)keepalived自帶的服務(wù)監(jiān)控功能來(lái)實(shí)現(xiàn)MySQL故障時(shí)自動(dòng)切換。如果作為Master的Mysql停止服務(wù)的話,Keppalived將通過(guò)執(zhí)行keepalived_check_mysql.sh腳本,將mysqld的服務(wù)切換到從數(shù)據(jù)庫(kù)。
3.2 mysql主從模式
利用MySQL主從復(fù)制來(lái)解決MySQL的數(shù)據(jù)一致性問(wèn)題,確保用作備份、只讀副本等功能的Slave的數(shù)據(jù)和Master的數(shù)據(jù)實(shí)時(shí)或者最終保持一致。從庫(kù)開(kāi)啟一個(gè)I/O線程,向主庫(kù)請(qǐng)求Binlog日志。主庫(kù)開(kāi)啟一個(gè)binlog dump線程,檢查自己的二進(jìn)制日志,發(fā)送給從庫(kù),從庫(kù)將接收到的數(shù)據(jù)保存到中繼日志(Relay log)中,執(zhí)行Relay中的操作完成MySQL的主從復(fù)制,確保Slave的數(shù)據(jù)始終與Master保持一致。Mysql主從模式如圖7所示:
4 系統(tǒng)測(cè)試
本系統(tǒng)測(cè)試工作主要經(jīng)過(guò)單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試。開(kāi)發(fā)工程師依據(jù)代碼及代碼注釋和詳細(xì)設(shè)計(jì)文檔,以白盒測(cè)試方法驗(yàn)證功能模塊代碼。在單元測(cè)試通過(guò)后,以黑白盒測(cè)試方法相結(jié)合方式開(kāi)展系統(tǒng)測(cè)試,驗(yàn)證系統(tǒng)的接口及集成后的功能正確性。系統(tǒng)測(cè)試后,由測(cè)試人員對(duì)包括功能、性能以及系統(tǒng)運(yùn)行的軟硬件環(huán)境進(jìn)行測(cè)試。最后,在系統(tǒng)部署前由需求提出方組織開(kāi)展驗(yàn)收測(cè)試,確保系統(tǒng)準(zhǔn)備就緒。運(yùn)行結(jié)果如圖8~圖12所示。
5 結(jié)語(yǔ)
遠(yuǎn)程控制及能耗管理系統(tǒng)通過(guò)對(duì)遠(yuǎn)程的設(shè)備控制、設(shè)備狀態(tài)監(jiān)控及能耗數(shù)據(jù)采集,有效解決用電設(shè)備的管理手段落后、能耗數(shù)據(jù)采集滯后等實(shí)際管理中的問(wèn)題,不僅提高了工作效率,擴(kuò)展了日常管理工作的深度和廣度,還減輕了相應(yīng)人員的工作強(qiáng)度和壓力,填補(bǔ)了傳統(tǒng)金融機(jī)構(gòu)在用電設(shè)備管理方面數(shù)字化空白。同時(shí)隨著系統(tǒng)成功的上線運(yùn)行,客觀上還提升了對(duì)銀行運(yùn)行安全至關(guān)重要的基礎(chǔ)環(huán)境設(shè)備設(shè)施的保障能力和運(yùn)行環(huán)境的安全警戒能力。該系統(tǒng)的實(shí)施是以銀行基層、集中管理的問(wèn)題、堵點(diǎn)為抓手,契合了銀行,乃至證券、保險(xiǎn)等傳統(tǒng)金融業(yè)的管理特點(diǎn),有效解決了目前行業(yè)中網(wǎng)點(diǎn)類型層級(jí)眾多,地域跨度大、人員配置不足且不平衡、基礎(chǔ)運(yùn)行保障管理信息及能耗數(shù)據(jù)反映、收集整理不及時(shí)、不統(tǒng)一等情況,具有集約化、數(shù)字化管理的技術(shù)特征。
參考文獻(xiàn)
[1] 陳曉莉,王志鐸.基于ZigBee的道路智能照明控制系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2019(12):72-75.
[2] 宋洪儒,王宜懷,楊凡.基于窄帶物聯(lián)網(wǎng)的智能路燈控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2019(2):172-176,182.
[3] 趙遠(yuǎn)超,趙建平,徐娟,等.基于NB-IoT技術(shù)的倉(cāng)儲(chǔ)環(huán)境遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)[J].自動(dòng)化儀表,2019(3):55-58.
[4] 黃偉,彭曉宏,張明明,等.一種基于窄帶物聯(lián)網(wǎng)的智能水表設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2019(14):169-172,176.
[5] 王洪輝,卓天祥,魏超宇,等.地質(zhì)災(zāi)害監(jiān)測(cè)NB-IoT數(shù)據(jù)傳輸系統(tǒng)研制[J].中國(guó)測(cè)試,2019(5):121-127.