牛江波 (安徽省水利水電勘測設計院,安徽 蚌埠 233000)
目前土工試驗行業(yè)開工過程基本采用手工記錄,數(shù)據(jù)都是紙質(zhì)的,無法較好地進行二次利用,各個單項試驗也缺乏統(tǒng)一標準的計算軟件,即使有對應的計算軟件,也是標準不一,有單位自己設計的,也有不同儀器廠家的,最終無法把各個單項試驗有機地整合在一起,在最后形成土工試驗總表時,需要手工分別錄入不同軟件或手工計算得到的試驗成果,然后再對應各個單項試驗成果與紙質(zhì)版的開土記錄對土工試驗成果進行人工校核、審查工作,由于土工試驗成果包含有大量的數(shù)值型數(shù)據(jù),這種方法不但效率低下,而且很容易發(fā)生漏輸、漏檢、錯輸?shù)确矫娴娜藶樾藻e誤,筆者開發(fā)的本系統(tǒng)較好地解決了這一系列的問題。
土工試驗開土、匯總分析系統(tǒng)采用C/S結(jié)構(gòu),分為服務器端與客戶端兩層。其中服務器端運行系統(tǒng)服務程序以及SQLserver2008數(shù)據(jù)庫程序,客戶端又分為開土客戶端與匯總分析客戶端,開土客戶端運行在平板設備上,輕巧方便,主要用于現(xiàn)場開土工作,匯總分析客戶端運行在個人電腦上,方便操作辦公。
系統(tǒng)主要功能包括:工程項目信息管理、導入土樣名稱形成土工總表、開土過程電子記錄、單項試驗成果上傳、單項試驗成果下載、匯總某單項試驗成果、匯總?cè)繂雾椩囼灣晒?、土工成果自動校審標紅、數(shù)據(jù)庫備份與還原。
2.2.1 SQLserver2008數(shù)據(jù)庫建庫及應用
SQLserver2008數(shù)據(jù)庫是Microsoft公司推出的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它可以將結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化文檔的數(shù)據(jù)直接存儲到數(shù)據(jù)庫中,可以對數(shù)據(jù)進行查詢、搜索、同步、報告和分析之類的操作,允許使用Microsoft.NET和Visual Studio開發(fā)的自定義應用程序中使用數(shù)據(jù)。在數(shù)據(jù)庫中建有三種類型的表,一種是用戶表,該表用于存儲系統(tǒng)用戶信息及設置相應權(quán)限;一種是工程信息表,該表用于存儲相應年度的土工試驗工程項目信息;最后一種是具體項目的土工試驗成果表。在系統(tǒng)中利用結(jié)構(gòu)化查詢語言SQL進行數(shù)據(jù)的存儲、查詢、刪除、修改、分析等操作。
2.2.2 TCP/IP網(wǎng)絡編程
TCP是傳輸控制協(xié)議的簡稱,是TCP/IP體系中面向連接的運輸層協(xié)議,在網(wǎng)絡中提供全雙工的和可靠的服務。在編寫TCP應用程序時,必須先建立TCP連接。一旦通信雙方建立了TCP連接,連接中的任何一方都能向?qū)Ψ桨l(fā)送數(shù)據(jù)和接收對方發(fā)送來的數(shù)據(jù),其中的數(shù)據(jù)是以字節(jié)流的形式進行傳輸?shù)摹@肨CP進行網(wǎng)絡編程時,.NET框架提供了兩種工作方式,一種是同步工作方式,另一種是異步工作方式,本系統(tǒng)采用同步工作方式。
2.2.3 多線程與線程同步
一個進程可以包括一個或多個線程,線程是操作系統(tǒng)分配處理器時間的基本單元,在進程中可以有多個線程同時執(zhí)行代碼,本系統(tǒng)利用多線程技術(shù)大大提高了系統(tǒng)的數(shù)據(jù)處理速度,提高了用戶體驗度。同時又因為這些線程要在同一時間段內(nèi)反復操作同一工程的土工總表,為了系統(tǒng)穩(wěn)定,對這些線程進行了同步操作。
2.2.4 土工試驗專業(yè)知識與經(jīng)驗集成化
筆者在多年的的土工試驗工作中,潛心學習研究,增長了不少的專業(yè)知識,積累了較為豐富的工作經(jīng)驗。比如根據(jù)土的組成與狀態(tài)去判斷土的物理、力學指標,這些指標大約有一個范圍值,以及根據(jù)這些指標的內(nèi)在聯(lián)系來判斷具體某個指標合適與否等。筆者把這些知識與經(jīng)驗從日常工作中提練出來,形成了一些具體的規(guī)則,并把這些規(guī)則利用計算機語言集成了土工試驗開土、匯總分析系統(tǒng)中,以輔助試驗人員進行成果分析。
2.2.5 利用.NET平臺操作EXCEL文件
在.NET平臺中引入相應的動態(tài)鏈接庫文件以及對應的命令空間和相關(guān)對象,利用這些對象中的一系列屬性與方法,便可把系統(tǒng)中操作所得到數(shù)據(jù)導出到EXCEL文件中,并對EXCEL文件進行所需要的編輯、修改等操作。
開土客戶端運行在平板設備上,它可以自動讀取勘察部門送來的土樣送樣單上的土樣信息,然后把這些信息存儲到服務器端的SQLSERVER數(shù)據(jù)庫中。當開始開土作業(yè)時,打開開土客戶端,從服務器端的SQLSERVER數(shù)據(jù)庫中調(diào)出當前的開土土樣,在開土客戶端的對應位置處輸入土樣的描述信息。開土客戶端可以對當前土樣進行拍照,把照片存儲到數(shù)據(jù)庫中以保留圖片信息,這樣可以使土樣描述信息更為豐富。開土結(jié)束后,點擊生成總表的功能按鈕,便可自動生成土工總表框架,總表中包括土樣名稱、取土深度、土樣描述信息等內(nèi)容,供后期的分析校審工作參考。
上圖是匯總分析客戶端的一個主要界面,當從某個客戶端添加工程信息后,這些信息便會存儲至服務器端SQLSERVER數(shù)據(jù)庫中,其它的匯總分析客戶端就可以從服務器端訪問所需要的工程信息。本客戶端還可以對工程信息進行修改、刪除等編輯操作。其中的“上傳”按鈕可以自動搜索運行當前客戶端的計算機上都有哪些單項試驗的成果,搜索到后,把這些試驗成果上傳至系統(tǒng)服務器端,配合開土客戶端也上傳的土工總表框架,就可在服務器端形成一整套的原始試驗成果。當需要生成完整的土工試驗總表時,只需通過“下載“按鈕,把所有上傳過的原始試驗成果下載至本地計算機,然后通過點擊”物理“等匯總單項試驗的按鈕來匯總單項試驗,或通過點擊”匯總?cè)俊鞍粹o來匯部所有單項試驗成果,這樣就得到了一個完整的土工試驗成果總表?!弊詣有:恕鞍粹o負責自動校核上述得到土工試驗成果總表,對不符合土工試驗規(guī)范的或是不在土工試驗經(jīng)驗范圍內(nèi)的又或是操作失誤造成的異常數(shù)據(jù)都會自動標紅或改正后再標紅,以供專業(yè)負責人再重點分析判斷。匯總、校核土工試驗成果總表后,可以下載總表至本地計算機指定位置處。
該系統(tǒng)可以對土工試驗項目進行有效管理,方便了試驗人員的日常辦公與交流。其中開土客戶端既存有電子版的開土信息,又可以保留開土照片,不但為后期的匯總、分析、校核提供了便利,也是一種創(chuàng)新。匯總、分析客戶端可以自動生成土工試驗成果總表,并自動進行校審。本系統(tǒng)節(jié)約了大量的人力,極大地提高了生產(chǎn)效率,避免了手工輸入錯誤,并結(jié)合一線大量生產(chǎn)所得到的寶貴經(jīng)驗來對成果數(shù)據(jù)進行校審,在提高生產(chǎn)效率的同時,也為土工試驗數(shù)據(jù)成果的準確與可靠增加了一道保障,有著切實的經(jīng)濟與社會效益。