?

基于手持設備的電力檢修作業地線掛接信息管理系統的開發

2015-12-20 06:46劉家軍陶凱楊帆張甜
電網與清潔能源 2015年9期
關鍵詞:彩信號碼短信

劉家軍,陶凱,楊帆,張甜

( 西安理工大學 水利水電學院, 陜西 西安 710048)

電力檢修作業現場操作信息的有效利用直接關乎到接地線掛接的安全進行。 電力線路檢修的安全措施采用工作票制度[1-2],人工直接參與完成掛接信息的傳達和收集,因此存在和誤操作信息遺漏的可能性[3-4]。 文獻[5-7] 針對電力系統檢修工作中掛、拆除地線存在的問題,提出了一種新型電力檢修作業地線裝置,用于解決目前檢修作業中存在的事故隱患,可以及時將接地線的工作狀態以短消息和視頻圖像的方式通過GPRS/GSM網絡發送到調度中心,便于調度中心對現場工作進行實時監控。 文獻[8-9]提出了一種接觸網作業地線的信息收集裝置,采用DSP處理器, 利用了GSM網絡以短信通信方式收集接觸網各檢修作業點下位機發送的接地線掛接狀態信息,同時通過RS232串口以及USB接口傳送給PC端后臺信息處理軟件。文獻[10-11]提出了一種基于鐵路電力調度接觸網停送電閉鎖信息處理系統,該系統會根據自動監測到的地線信息,并依據規則庫調度進行停送電防誤閉鎖, 之后生成操作票。 這些研究可實現電力檢修作業掛接地線掛接狀態的實時監控和可視化管理,但是現場檢修工作管理人員未能直接接收電力檢修作業現場發送的操作信息,存在現場檢修工作管理人員不能共享信息并快速、全面地了解所有派出工作的接地線掛接狀態的問題,這不利于現場作業掛接地線的安全管理。

因此,本文設計了一種基于手持設備的電力檢修作業地線掛接信息管理系統。該裝置選取Android系統手機為硬件平臺,利用Java語言編譯,調用手機短信、彩信、圖片等功能,將現場作業所有設備的狀態、數量、時間、GPS用短信和圖像的形式呈現在手持設備上。 同時對所收到的圖像和短信數據進行分析整理后轉發到遠端調度,方便現場檢修工作管理人員和遠端調度管理人員快速查詢地線掛接設備的狀態及工作環境,為現場檢修工作管理人員了解設備工作狀態,及時判斷可能存在的事故隱患點提供判斷依據,從而合理安排現場檢修工作,避免和減少人工操作接地線所帶來的不便和隱患,提高管理現場工作的效率和質量,提高電網安全生產。

1 Android操作系統的介紹

Android是Google開發的基于開源手機平臺,它包括操作系統、用戶界面和應用程序,而且不存在任何以往阻礙移動產業創新的專有權障礙[12]。Android系統結構如圖1所示,主要分為4個部分。

圖1 Android系統架構Fig. 1 System architecture of Android

從上到下分別是應用層( applications)、應用框架層( application framework)、系統庫( Libraries)和系統運行時( operating environment), 最底層是Linux內核層( Linux kernel)。

①應用程序:基于Android平臺的開放性,開發者可以采用Java程序語言編寫應用程序。

②應用程序框架:提供了應用程序開發的各種API。 支持組件的重用和替換。

③系統庫:一套C/C++庫,為應用程序框架提供支撐,為開發者提供服務。

④Linux內核。 Linux內核包括各部分驅動程序,如攝像頭驅動、鍵盤驅動等[13]。

Android系統的開放性,使得系統得到了快速發展, 與Android相關的服務層出不窮,Android系統呈現豐富的軟件支持、網絡使用良好、軟件兼容性好,界面親和的特點。 因此,利用Android操作系統作為電力檢修作業地線掛接信息管理系統的應用平臺,能夠降低開發成本,豐富操作功能,便于檢修工作管理人員在操作現場的使用。

2 系統框架的設計

本系統定位于在現場電力檢修作業地線裝置向調度中心信息收集裝置信息傳送的中間環節,主要用于實時收集所有當前工作的接地線監測設備返回的狀態,并顯示檢測設備所采集的檢修作業現場圖像信息, 并將檢測設備返回的GPS位置信息通過百度地圖支持的網絡服務顯示到手持設備的地圖上。 所有收集到的信息在后臺軟件處理下整合成一條信息,從現場的手持設備上返回到遠端調度的后臺設備上,用于讓遠端調度管理人員更好地確認現場檢修工作中地線的掛接狀態,使調度工作人員更好地確認其在檢修工作時斷電或供電操作的安全性。 掛接地線手機監控系統整體結構框圖如圖2所示。

3 應用程序的設計與實現

本系統應用程序的設計方法采用結構化與面向對象的混合方法,在開發應用之前需要采用結構化設計的方法將對應的功能進行模塊化的設計,將系統應用程序分為不同功能的模塊進行編碼調試。應用程序整體結構如圖3所示,主要由主窗口、接地線監測設備號碼設置、接地線狀態監測、接地線工作環境圖片信息、接地線工作位置信息、退出系統六大模塊組成。

圖2 掛接地線手機監控系統整體結構框圖Fig. 2 The overall structure diagram of the mobile phone monitoring system

主窗類型是android.intent.category.LAUNCHER,通過Package Manager提供的各個APK的信息以菜單方式對各個功能進行調用。接地線監測設備號碼設置模塊用于設置所有派出工作的接地線監測設備的SIM卡號碼,用來接受對應信息。 接地線狀態監測分為兩個子模塊:狀態顯示模塊與狀態信息轉發模塊。 該模塊通過SIM號和帶有掛接標識的圖片將對應地線的掛接狀態反饋給現場檢修作業人員和調度管理人員。 接地線工作環境圖片信息模塊,對彩信處理后得到對應地線的圖片。 接地線工作位置信息,從短信里面提取出經緯度信息,處理以后將位置信息顯示在手持設備所加載的地圖模塊上。 退出系統模塊,本模塊用于在檢修工作結束以后退出整個檢測系統,在退出系統的同時清除數據庫的所有信息,在下次檢修工作時系統不存在無用信息。

圖3 應用程序整體結構Fig. 3 The overall structure of the application program

3.1 SQLite數據庫的使用

SQLite數據庫的使用,必須先創建數據庫。Android中操作數據庫的最主要的API是SQLiteOpenHelper類,要想創建必須繼承這個類。 根據開發應用程序的需要,SQLiteOpenHelper類中封裝了創建和更新數據庫的各種邏輯和方法[14]。

本系統中數據庫的建立和操作是通過SRC文件夾下的dataadapter.java文件實現的。

首先在數據庫中定義出本系統中所要應用的字段信息,此信息包括:編號、SIM卡號碼、線路號、支柱號、緯度信息、經度信息、地線狀態信息、圖片信息。 以編號字段為例下面為其定義的源代碼:

public static final String KEY_ROWID = "_id"。

定義成功數據庫字段以后就可以定義數據庫和數據庫的表名以及定義一些建立數據庫的字符串命令。 本數據庫是通過SQLiteOpenHelper方法建立的, 然后通過dataadapter類來繼承SQLite Open Helper方法來提供接口來調用數據庫中的數據。

數據庫建立完畢以后,還需要給數據庫建立一些數據的接口,以用來使各個模塊可以通過這些接口來給數據庫加入相應的內容, 這些數據接口包括:插入SIM卡號碼接口、更新支柱號接口、更新經緯度信息接口、更新狀態信息接口、更新圖片信息接口、刪除號碼接口、刪除數據庫接口。 還必須建立一些訪問數據庫內容的接口,以用來使各個功能模塊查詢數據庫中的內容,這些數據接口包括:獲取SIM卡號碼接口、獲取所有緯度信息接口、獲取所有經度信息接口、獲取狀態信息接口、獲取圖片信息接口。 SQLite數據庫圖表示意圖如圖4所示。

圖4 SQLite數據庫圖表示意圖Fig. 4 Chart diagram of SQLite

3.2 短信收取及轉發模塊的開發

短信息的常用編碼模式有Text模式和PDU模式[15]。而在Android系統中用的是PDU模式。PDU是指通訊單元,它規定了數據中除了用戶發送的信息之外,還包含另外其他的字段,而且規定字段中每個數據位為0或1所代表的意義。 PDU是通過十六進制編碼的。 從終端設備發出的PDU編碼包含了大量的信息, 系統通過這些信息來完成短信服務的全過程。 系統短信服務過程如圖5所示。

圖5 系統短信服務過程Fig. 5 Process of system SMS service

3.2.1 短信收取模塊

短信收取模塊包括兩個方面的內容:短訊收取存庫文件、短信顯示文件。

短信收取存庫文件在scr 文件夾中的SMSreceiver.java 文件中, 在進入系統APP后立即運行此后臺文件, 系統開始監聽Android系統是否有發出短信的廣播, 短信息傳入時Android系統底層開始推送,本系統攔截到此短息廣播后提取出此短信的內容,與數據庫中的號碼相匹配成功即進入下一步操作否則丟棄此廣播內容,號碼匹配成功后再與相應的內容模板相匹配,匹配成功的話即提取短信內容中相應的信息并存入數據庫中相應號碼的位置,否則系統丟棄此短信內容。

接地線信息收集裝置掛接成功的短信模板形式為“ *******號地線已掛接成功! ***號支柱”,當收到的短信內容與此內容匹配成功以后提取相應的線路號和支柱號存入數據庫中相應的位置,并將此地線的狀態在系統中顯示為掛接。 接地線信息收集裝置摘下成功的短信模板形式為“ *******號地線已成功摘下! ***號支柱”,當收到的短信內容與此內容匹配成功以后就將此地線的狀態在系統中顯示為摘下。 短信收取文件流程如圖6所示。

圖6 短信收取文件流程圖Fig. 6 Flow chart of SMS collection file

短信顯示文件源程序在scr 文件夾中的Activity02.java文件中。當點擊“ 顯示狀態”按鈕時,系統讀取數據庫中所有的號碼信息和相應的狀態信息,如果對應的是掛接狀態及將此接地線監測裝置的SIM卡號碼與系統中對應的掛接圖標相對應,否則就將相應的SIM卡號碼與系統中對應的摘下圖標相對應。 短信顯示文件流程如圖7所示。

圖7 短信顯示文件流程圖Fig. 7 Flow chart of message display

3.2.2 短信轉發模塊

短信轉發模塊源程序在scr 文件夾中的Activity02.java文件中。 當點擊“ 轉發”按鈕進入顯示狀態界面點擊轉發按鈕時, 調取輸入號碼的對話框,點擊輸入條是調取出系統鍵盤插件,就可以輸入所要收取轉發狀態信息的SIM卡號碼, 輸入完成以后點擊對話框中的取消按鈕時即關閉轉發對話框系統不作任何處理;當點擊確認按鈕時,首先系統先建立一個要發送的空的短信文本,然后遍歷數據庫中全部監測設備的號碼和狀態信息,按照數據庫中ID順序先將設備號碼加入短信文本內容然后進行狀態判斷。

如果沒有接到掛接短信或者只接到摘下信息,數據庫中對應的狀態信息為0或者NULL, 這時在這個號碼后加入“ 摘下”文字信息;如果接到了掛接成功的信息,數據庫中對應的狀態信息為1,這時在此號碼后加入“ 掛接”文字信息。

當遍歷完成以后提取對話框中的號碼,將此號碼加入此短信的發送目的地,最后調用Android中的發送短信方法將此文本信息發送出去。 短信轉發流程如圖8所示。

圖8 短信轉發流程圖Fig. 8 Flow chart of SMS forwarding

轉發短信界面的對話框是通過Android提供的Dialog Builder接口方法來實現的, 這個接口省略了我們使用繼承的方法,在此我們所設計的這個對話框只在轉發短信時才調用, 僅僅為這一次使用而去創造一個新的類, 對程序設計來說比較麻煩也不利于后續的開發, 對運行本系統的設備來說是資源的浪費。 下面是建立此設計對話框的程序源代碼:

3.3 彩信收取模塊的開發

彩信收取模塊包括彩信圖片監聽、圖片存儲和圖片顯示三部分,源程序分別保存在scr文件夾中的MMSreceiver.java,saveImage.java 和Activity03.java 文件中。

彩信圖片信息的傳播方式采用存儲轉發機制。當有彩信傳入系統中時,Android手機系統會向應用程序層發送一個有序廣播Intents.WAP_PUSH_RECEIVED_ACTION, 我們需要注冊一個廣播接收器用來專門接收該有序廣播。 優先級的高低決定應用接收到此廣播的順序。

Android手機每次收到彩信時,Android源碼均會向應用程序層發送一個彩信的有序廣播Intent.WAP_PUSH_RECEIVED_ACTION,此廣播用來向應用程序通知有新彩信的到達。 系統接到彩信有序廣播的data中獲取彩信的消息頭信息, 這些系統收到彩信的消息頭信息必須應用相應的PDU工具來解析。 獲取到相應彩信附件的下載地址以后,利用系統中HTTP協議的get方法從彩信服務中心下載此彩信信息中的所有附件信息,此時得到的彩信附件信息是一個byte數組, 使用PDU解析工具對彩信附件的byte數組進行解析就能得到彩信附件的具體信息。 彩信收取流程如圖9所示。

3.4 位置顯示模塊的開發

位置顯示模塊源程序在scr文件夾中的Activity 04.java文件中。當點擊顯示位置按鈕時,系統調用百度地圖API文件, 如果是首次進入顯示界面系統會通過網絡更新現有的地圖信息,如果在之前已使用過此界面那么地圖信息已保存在此API文件中可以直接顯示。 當地圖信息加載完成以后系統自動打開數據庫查詢所有SIM卡號碼后的經緯度信息, 將每個號碼所對應的經緯度信息提取出來以后調用addOverlay方法將經緯度信息加入百度地圖的API文件中,然后添加坐標圖片在地圖的相應位置覆蓋出此時設備的位置點,當一次地圖標定工作完成以后系統有自動返回數據庫中提取下一個號碼的經緯度然后進行標定,直到數據庫中的號碼信息為空時系統停止查詢數據庫中經緯度信息,從而地圖顯示功能也就得到實現[16]。

圖9 彩信收取流程圖Fig. 9 Flow chart for MMS

位置信息的短信模板形式為“ *******時間:**時** 分** 秒 緯 度:**.*******,N 經 度:***.*******,E” 當系統收到的短信內容與此條短信內容匹配成功時, 系統將提取出此短信的SIM卡號碼和相應的經緯度信息, 在數據庫中以相應的SIM卡號碼為標志的對應位置存儲此設備的經緯度信息,處理以后將其在地圖中的相應位置上標示出來。 圖10為位置顯示流程圖。

圖10 位置顯示流程圖Fig. 10 Flow chart of position display

4 結語

本文綜合考慮了在電力線路檢修作業掛接地線的安線的安全要求及實用推廣性,并結合檢修現場管理人員的各種實時需求等多種因素,使用了目前手持設備市場占有率最高的Android平臺開發了這套系統。 解決了地線掛接整個工作流程中現場信息實時管理與掛接地線可靠監控的問題,以現代移動通信網絡技術為基礎,實現了工作現場對接地線作業狀態的可視化圖像檢測和信息管理,從而在整個工作流程上保障電力線路檢修掛接地線作業的安全,并可杜絕掛接地線誤送電事故的發生,從而大大降低作業人員傷亡的風險。

[1] 楊建. 電力線路檢修過程中的危險因素及對策[J]. 安全、健康和環境, 2003( 6): 15.YANG Jian. Risk factors and countermeasures in the process of electric power line maintenance[J]. Safety,Health and Environment, 2003( 6): 15( in Chinese).

[2] 黃乃成. 線路檢修時的工作許可問題[J]. 電力安全技術,2003( 10): 24.HUANG Naicheng. Work permit for line maintenance[J].Electrical Safety Technology, 2003( 10): 24( in Chinese).

[3] 貴州電力中心調度所. 一次帶地線合刀閘引起的系統性事故[J]. 電網技術, 1985( 4): 8-11.Guizhou Power Center. A systematic accident caused by the ground wire and the brake at the time[J]. Grid Technology, 1985( 4): 8-11( in Chinese).

[4] 李生霞. 一起嚴重的帶地刀閘送電誤操作事故[J]. 電力安全技術, 2008( 6): 36.LI Shengxia. A serious accident of the power of the ground knife gate[J]. Electrical Safety Technology, 2008( 6): 36( in Chinese).

[5] 劉家軍, 繆俊. 新型電力檢修作業地線裝置的研究[J].電力系統保護與控制, 2009( 23): 119-120.LIU Jiajun, MIAO Jun. Research on new type of electric power overhaul grounding line device[J]. Power System Protection and Control, 2009( 23): 119-120( in Chinese).

[6] 劉家軍, 繆俊, 姚李孝, 等. 電力線路作業掛接地線可視化監測裝置[J]. 電力自動化設備, 2010( 7): 134-136.LIU Jiajun, MIAO Jun, YAO Lixiao, et al. Visualized monitoring of grounding wire connection equipment[J].Electric Power Automation Equipment, 2010( 7): 134-136( in Chinese).

[7] 劉家軍, 姚李孝, 王勇科, 等. 電力線檢修作業掛接地線掛接信息監視裝置及監視方法[Z]. 中國, 發明,201110101469.0, 2011.

[8] 劉家軍, 劉博, 徐新, 等. 電力線路作業地線的信息收集裝置的研究[J]. 電力系統保護與控制,2011( 5):139-143.LIU Jiajun, LIU Bo, XU Xin, et al. Research on the grounding line information-gathering device of catenary operation[J]. Power System Protection and Control, 2011( 5): 139-143( in Chinese).

[9] 劉家軍, 姚李孝, 劉博, 等. 接觸網檢修作業中掛接地線信息收集裝置[Z]. 中國, 實用新型,201522776,2010.

[10] 劉家軍, 巨軒同, 王勇科. 基于鐵路電力調度電力線路停送電閉鎖信息處理系統[J]. 電網與清潔能源, 2014( 9): 26-30.LIU Jiajun, JU Xuantong,WANG Yongke. The contact line power cut and power transmission licked-in information management system based on railway power dispatching[J].Power System and Clean Energy, 2014( 9): 26-30( in Chinese).

[11] 劉家軍, 白志國, 劉博, 等. 接觸網人工檢修作業信息化管理系統[Z]. 中國, 實用新型,201120490797.6,2011.

[12] 詹成國, 朱偉, 徐敏, 等. 基于Android的測控裝置人機界面的設計與開發[J]. 電力自動化設備,2012( 1):119-122.ZHAN Chengguo, ZHU Wei, XU Min, et al. Design and development of human computer interface based on Android[J]. Electric Power Automation Equipment, 2012( 1): 119-122( in Chinese).

[13] 孔令來, 王倩, 季紅, 等. 基于Android系統平臺設計和實現電子書的閱讀應用[J]. 電子制作, 2013( 24): 50-55.KONG Linglai, WANG Qian, JI Hong, et al. The design and implementation of electronic books based on Android system[J]. Electronic Production, 2013( 24): 50-55( in Chinese).

[14] 馬獲蕾, 湯海鳳. Android系統中SQLite數據庫的研究[J].電腦知識與技術, 2013( 28): 6243-6245.MA Huolei, TANG Haifeng. Research on SQLite database in Android system[J]. Computer Knowledge and Technology, 2013( 28): 6243-6245( in Chinese).

[15] 吳準, 于劍飛, 孫靖. Android智能手機彩信業務分析與測試[J]. 電信網技術, 2013, 10( 10): 63-68.WU Zhun, YU Jianfei, SUN Jing. Analysis and testing of Android intelligent mobile phone MMS[J]. Telecommunication Network Technology, 2013, 10( 10): 63-68( in Chinese).

[16] 張波, 趙雙明. 基于Android平臺的百度地圖開發研究[J].軟件導刊, 2015( 7): 96-98.ZHANG Bo, ZHAO Shuangming. Research on Baidu map development based on Android[J]. Software Guide, 2015( 7): 96-98( in Chinese).

猜你喜歡
彩信號碼短信
說號碼 知顏色
一個號碼,一個故事
猜出新號碼
道歉短信
代發短信
彩信的巔峰與隕落
這個號碼很吉祥
一種基于IP的彩信收發模塊設計
山東省氣象彩信平臺本地化設計與實現
“八一”節日短信之一
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合