林甲章



【摘 要】建立一個高效的核電大修信息管理系統對大修期間各方信息的溝通、輔助計劃有效執行有著重要的意義。該文在分析大修信息發布和匯總方面的需求基礎上,研究了大修信息管理系統的總體設計,并進一步對水位圖、工作票查詢、工作進度統計、大修日報、出票統計等各個應用模塊進行了設計,并展示了如何使用腳本語言編程實現各種功能。 最后展示了該系統在大修期間應用的良好效果。
【關鍵詞】核電大修;信息系統;查詢;日報
The design and implementation of nuclear power plant information management system
LIN Jia-zhang
(CNNC Nuclear Power Operations Management Co.Ltd,Zhejiang Haiyan,314300)
【Abstract】Its important to establish a effective information management system for during outage Based on the requirement of outage information collection and publish, this paper introduces the overall design of outage information management system , and then introduces the design and implementation of all of the modules including water level graph, work order query, progress calculate , outage daily report and work order balance in details. All of these modules are programmed using scripting language. Finally , it displays the application effect of this system.
【Key words】Nuclear power outage; Information system; Query; Daily report
0 引言
核電廠的大修工期緊,工作量大,需要周密的計劃和充分的準備。大修過程中涉及到多個部門之間的溝通協調。而大修計劃作為整個大修的龍頭,在執行計劃的繁忙之余還要與各部門充分分享計劃信息,并匯總各方面的信息進行發布。因此一個穩定高效大修信息系統對提高大修的工作效率,保證各項工作順利開展有重大的意義。秦山二核在應用信息化技術輔助進行大修信息的發布和匯總已有多年的經驗。本文主要在總結多年應用經驗的基礎上,研究了大修信息管理系統的設計實現及其應用效果。
1 系統總體設計
1.1 需求分析
大修期間計劃部門面向全廠發布的信息的主要內容包括工作票查詢,大修日報,大修水位圖,進展統計圖等信息。秦山二核機組投運之初,大修工作的信息化程度還比較落后,很多工作都要靠手動操作。大修信息的發布和整理也主要依靠計劃人員手動操作。手動更新導致的工作量巨大問題主要反映在以下幾個方面:
1.1.1 大修計劃的發布
大修期間由大修計劃安排各個部門的工作。基本上所有的工作都是通過工單的形式開展的。計劃人員在把所有的工單都放在計劃軟件中,在軟件中安排好各個工單的開始完成時間。在實際執行過程中,各部門工作人員需要經常了解大修計劃未來幾天的工作安排,以便做好工作準備。而大修計劃會根據大修的實際進展不斷的調整,計劃人員就必須不停在網上更新發布最新版的計劃,不僅費時費力,也不夠及時;1.1.2 大修日報的匯編
大修日報的傳統編輯方法也極其繁瑣。大修日報主要是word格式的當天各部門大修工作完成情況的總結。目前共分13個章節,每個章節由一個部門編寫。每天由各部門編寫人員編寫完畢后發送到主線計劃的郵箱,由主線計劃工程師將各部門的日報匯總,并審核修改后公開發布。由于各部門都有自己的日報格式,主線計劃工程師需要把各部門日報逐個添加到一個文件中,并通過不斷調整各個章節的格式以確保整個日報的美觀整齊。如此復雜的操作對于大修期間原本就極其繁忙的主線計劃工作師來說無疑是一個很沉重的負擔。因此急需一種高效的方法來改進大修日報的匯總發布工作;
1.1.3 出票平衡
大修工作的安排,主要是依據該工作的所需要的隔離要求決定。但大修期間往往會出現同一天很多設備都可以進行隔離開展工作的情況,此時計劃人員就要調整每天的出票量到一個各部門都可以接受的數量。所以就要對每天出票量進行統計。統計時需要導出到Excel中,通過Excel的數據透視圖功能進行。操作比較復雜,不便于經常調整。
除此之外,對于備受關注的能直觀反映大修總體進度的水位圖,也需要用Excel的畫圖工具手動繪制,無法自動更新,不僅增加了計劃人員的負擔,也降低了工作效率。為了解決上述問題,我們開發了大修信息管理系統。通過信息化技術的應用,大修信息管理系統不僅用簡單的鼠標點擊代替了以前繁瑣耗時的人工操作成功解決了上述問題,還增加了里程碑分析,移交報告編制等計劃輔助工具,進一步提高了計劃人員的工作效率。
1.2 系統總體結構(圖1)
本系總共分為6個功能模塊。大修日報和工作票查詢模塊是兩個最重要的模塊。除此之外還的水位圖模塊用于在網站首頁的顯要位置顯示當前最新的水位圖,并根據工作進展實時更新。工作票查詢模塊提供按日期分布的出票量統計圖,供計劃人員在計劃編制階段平衡工作量。工作進度統計用條形圖展示當前所有工作的進度,核島,常規島以及各專業的工作進度。里程碑分析模塊提供當前各個里程碑節點的完成情況和各個窗口的用時情況,并與原計劃,參考計劃,最佳工期進行比較分析。
1.3 系統后臺實現
本系統后臺采用Php+Mysql+Apache組合來實現網站服務。PHP是目前最熱門三種主流Web開發語言之一,它簡單高效、開源免費、跨平臺等特性受到廣大Web開發人員的歡迎,尤其適用于中小型網站。配合Mysql數據庫和Apache服務器,可以實現高效,穩定的網站服務。
2 各功能模塊設計和實現
2.1 數據庫設計
數據庫是所有前臺應用的基礎,因此一個良好的數據庫設計非常重要。本系統的需要處理的數據全部來源于計劃編制軟件P6。P6軟件后臺采用的oracle數據庫。因此設計之初有兩種選擇,一種選擇是直接用php連接oracle數據庫獲取最新數據,另一種在本地服務器上搭建Mysql服務器,再用一個程序定時從oracle同步數據至Mysql。經過考慮多方面因素我們最終選擇了后一種方案。主要有以下幾點考慮:
1)P6的oracle數據庫服務器還負擔著公司其它重要信息系統的應用,Mysql方案每天僅僅是幾次讀取操作,不修改任何數據,可以最大程度地避免對公司服務器的干擾;
2)計劃查詢所需的很多字段在P6中屬于用戶自定義字段,而 P6后臺數據中每條作業的系統標準字段和用戶自定義字段是分開兩個表存放的,而且所有自定義字段的值都單獨做為一條記錄,如果要直接讀取oracle的話就要在每次查詢的時候進行比較復雜的格式處理,才能合成一條包含各個字段的完整的作業記錄,效率較低,Mysql方案可以在同步數據做好處理,查詢時就可以多次重復使用了。
Mysql是php在數據庫方面的最佳搭檔,與php連接性能要優于oracle,同時其規模也適合搭建中小型站點。
本系統中統計圖表比較多,如果在每次頁面刷新時都進行動態繪制,不僅速度慢影響用戶體驗,也會對服務器造成較大壓力。所以還是要采取定時更新的方法,在更新程序同步數據的時候可以順便把系統所有的圖表一起更新。
綜上所述我們最終選擇了Mysql做為數據庫服務器,并另外編寫了一個數據更新軟件,每天在設定的時間點讀取服務器并更新Mysql數據庫中的三張表zxplan,niplan,ciplan,(分別對應主線,核島,常規島三項計劃)。更新時間可以自定義,也可以手動更新。更新程序采用Delphi編寫,長期運行,并可以設置為開機自動啟動,界面如圖2所示。
2.2 水位圖
水位圖是能直觀地展示大修的當前進度以及與原計劃的對比情況。因此廣泛用于大修相關宣傳資料中。但在沒有管理系統前,需要計劃人員用Excel的畫圖功能手動繪制并更新發布。為提高效率,我們要在大修信息管理系統的首頁顯示并自動根據大修進展更新水位圖。為實現這個功能,需要采集主線計劃中的導致一回路水位發生變化的作業的開始時間。因此我們通過分析主線計劃,設置了以下幾個水位變化點作業。
同時在這些作業的備注里加上“水位變化點”,以便程序篩選。水位圖的繪制通過php自帶的GDI函數庫實現。在Php中,通過連接Mysql獲取所有水位變化點的名稱和時間點,并根據預置的各個水位點的水位高度畫出水位線,便可以畫出初始的原計劃水位圖。然后再根據當前的時間點,在原先水位線上再畫一條藍色的實際水位線,表示當前實際的水位圖和進展。最終效果如圖3所示:
水位圖的繪制由PHP的GD函數庫實現。為了便于調用,所有的操作都封裝類swt里面,在類中定義了水位圖的長,寬,類型和各種繪圖函數。主要流程如下。1.用imageline和imagestring函數畫好水位圖的日期分隔線、日期名稱和示意文字2.按時間順序從數據庫中篩選出帶有水位變化點標識的記錄,存儲在數組中。3.把各記錄的時間轉換成圖片上橫坐標,并把對應的水位高度轉換為縱坐標,從而得到一個包含水位線各個水位變化點的橫縱坐標的數組;4.調用自定義的draw_line函數,把各個點用一根實線相連,從而得到完整的水位圖。
在計劃水位繪制完成后,再根據當前的實際時間,在原計劃水位上畫上藍色的實際水位線,便可以直觀地展示當前一回路水位的進展了。
2.3 大修日報
大修日報編輯最大的工作量在于格式的調整和多個部門日報的合并。為了解決人工合并日報效率低下的問題,本系統利用php調用word的com組件的方式,在后臺完成word合并的操作。
如圖4所示。左側是日報編寫人員的登陸界面,右側是當天各部門日報的上傳情況和日報的上傳時間,右下側是已經發布的日報列表。為了統一各部門日報的格式,登陸窗口下放置了各部門日報的標準模板,各部門日報人員登陸后,先下載模板后,根據模板的格式編寫本部門的日報,再點擊上傳按鈕上傳日報。此時上傳的日報還未經計劃人員審核,因此在頁面上顯示為待審核狀態,未登陸的一般用戶是看不到日報內容。1.當計劃人員登陸后,系統在未審核的日報名稱后面顯示審核按鈕,計劃人員點擊審核后進入審核界面,可以對日報內容進行修改。審核完成后日報就變成已審核狀態,所有人員都可以看到審核后的日報內容同時計劃人員對審核后的日報也可以再次進行修改;2.當所有日報上傳并審核完畢后,只要計劃人員點擊生成日報按鈕,系統就會根據預先設置好的順序,將各日報進行合并,生成當天的總的日報。合并完后經過計劃人員的審核便可發布為全廠可見。
在實際應用中,一般只需要幾秒鐘便可完成日報的合并工作,而且格式也已經統一,無需再進行人工操作,成功實現了主線計劃工程的減負。從204大修投運以來至今已順利完成了4臺機組8次大修的日報的匯編和發布工作,也使信息管理系統成為大修期間全廠人員關注大修信息的重要窗口。
2.4 工作票查詢
工單查詢是本系統比較常用的功能,因此我們在網站首頁上設置了一個詳細的查詢界面,供用戶隨時查詢最新的計劃安排。
一個工單包含很多個字段,CMS中至少有上百個,列入計劃中的也有幾十個。但對大部分人來說,常用的查詢字段不是很多,因此本系統只選了幾個常用的查詢字段,如圖5所示,本系統提供了部門代碼、工作負責人姓名、設備代碼、工作內容、工作許可證類型、開工時間、完工時間、開工狀態等10個字段,同時還考慮到不同計劃類型查詢的需要,在界面上還加入了主線,核島,常規島三個復選框,供用戶自由選擇需要查詢的計劃。多個字段可以組合進行查詢。當用戶提交查詢后,后臺將各個查詢條件組合成相應的SQL語句,再通過mysql_query函數獲取相應的數據,并在新的頁面中顯示結果。具體代碼比較繁雜,在此就不列出來了。
如圖6所示,系統會按照預設的格式顯示查詢結果。
2.5 工作進度統計
為了能形象地展示當前大修工作的完成,我們對所有工單的執行情況按照未開工,已開工,已完工三種狀態進行了統計,并以柱狀圖的形式在首頁進行展示。一個工單在CMS系統從誕生到結束要經歷十幾種狀態。為了便于歸類,我們以已開工狀態為分隔點,在此之前的所有狀態的工單都統計為未開工,在此之后的都統計為已完工,余下的便是已開工狀態。利用sql查詢語句統計出各種狀態工單的數量,得到一組包含各個狀態工單數量的數組,再由自定義的柱狀圖繪制類zhu利用該數組作為數據進行繪制。類zhu首先定義了圖形的心尺寸,柱形的顏色等屬性,再根據給定的數據繪制各柱的邊框,最后調用imagefilledrectangle函數依次填充各個柱形。
最終效果如圖7所示,這是某次大修中進展到一半左右的統計圖。圖中未開工的工作數量用紅色柱子表示,已開工用黃色表示,已完工用綠色表示,并在頂上注明具體工作數量和百分比。如果要查詢具體的某種開工狀態的工作的清單,可以在工作票查詢界面中選擇相應的工單狀態即可查詢。該模塊可以很直觀地展示當前大修的總體進度,方便管理層對大修進度進行評估分析,為下一步的決策提供數據基礎。
2.6 出票量統計
出票量統計是大修計劃編制過程必需經歷的一步。本系統的數據庫中原本就儲存了所有工單的數據,因此對工單按照開工日期進行分類匯總就可以在本系統實現出票量統計功能。為了直觀顯示,同樣采用柱狀圖的形式,因此可以與工作進度統計模塊共用柱狀圖繪制類zhu。統計界面如圖6所示,計劃人員只要選擇好需要統計的日期(默認為大修開始時間和結束時間),再按統計按鈕,就可以顯示統計結果。應用效果如圖8所示。
統計結果的返回采用ajax技術實現,無需刷新頁面即可在按鈕下部顯示最新結果,同時為了方便計劃人員查看每日的出票明細,統計圖下面還附上了查詢每日出票明細的鏈接。鏈接的目標是工作票查詢模塊的后臺頁面,通過get方式傳輸了日期篩選的參數。因此點擊該鏈接的輸出頁面和工作票查詢的結果是一樣的。這樣既然可以實現工作票清單界面的統一,也可以達到代碼復用的目的。
自從本模塊投運以來,計劃人員再也不用進行復雜的Excel操作了,輕點幾下鼠標就完成了出票量的統計,大幅提高了工作效率,也方便了全廠其它人員查看票量情況。該模塊也成了大修計劃編制過程中的必備工具。
3 系統應用效果
本系統的首頁界面如圖9所示。每次大修期間開通,并在公司主頁上設置專門的入口鏈接。自2007年105大修投運以來,已經安全穩定運行5年之久,期間經歷了不斷的完善修改,功能日趨強大系統,累計訪問量近40多萬人次,已經成為大修期間必備的信息門戶網站。
4 結語
本文在分析秦山二核大修信息發布和匯總方面的需求基礎上,主要研究了大修信息管理系統的設計和實現。大修信息管理系統利用信息化手段解決了大修信息發布和匯總方面的各種不足。不僅減輕了計劃人員的工作負擔,也有利于全廠各部門和計劃之間的溝通和合作,還為管理層及時掌握最新大修進展提供了便捷的窗口。在將來的大修工作中,大修信息管理系統也會不斷改進,在大修領域發揮更大的作用。
【參考文獻】
[1]PHP5與MYSQL 5 WEB開發技術詳解[M].杜江.電子工業出版社.2007.
[2]基于數據倉庫技術的醫療信息管理系統設計與實現[D].郝建朋.陜西科技大學,2008.
[3]基GSM短消息的公交管理系統的研究與設計[D].袁小玲.四川大學,2006.
[4]基于Struts框架的電信詳單管理系統的設計與實現[D].姜禹.四川大學,2006.
[5]基于VB的選媒廠帶形式輸送機保護管理系統設計[D].寇俊利,尹君.工礦自動化2011.2.
[責任編輯:張濤]