介紹了鄂鋼地磅計量系統(tǒng)的硬軟件結構,利用計量軟件并使用VB控件,實現(xiàn)了地磅電子流水記錄。
1 .前言
鄂鋼使用的地磅計量系統(tǒng)均配置兩臺打印機, 一臺打印票據,一臺打印流水,每進行一次計量操作, 都會打印一條流水信息,記錄計量時間、流水號、發(fā)貨 單位、收貨單位和毛重皮重等信息,通過查詢這些紙 質記錄,從而查詢計量信息。通過編寫計量軟件程 序,實現(xiàn)了計量員通過軟件查詢功能查詢計量數據, 從而取消了流水打印機,這樣不僅節(jié)約了打印機,還 節(jié)約了各種耗材。
2.計量系統(tǒng)簡介
2. 1 硬件結構
計量站通過計算機進行計量作業(yè),計算機與地磅通過稱重顯示表進行通訊,采集重量數據;通過在 計算機上加裝視頻監(jiān)控卡采集過秤時的現(xiàn)場狀況;利 用在汽車衡兩端加裝冷金屬紅外探測器來判斷汽車 過衡的位置信息,I/O卡用來接收從冷金屬探測器傳 遞過來的探測信號;網卡用于與其它計量計算機進行 通訊。其硬件結構如圖1所示。
2.2軟件結構
計量系統(tǒng)的軟件由數據采集、視頻采集、紅外處理、 打印輸出、防作弊、數據計量和數據統(tǒng)計共7部分組成。
數據采集部分主要負責讀取稱重顯示表所顯示 的計量數據。它主要通過COM 口 RS232通訊來完 成。計量數據被讀取后,用于顯示在計量界面和計毛計皮時的數據處理。
視頻采集部分的作用是對計量界面進行抓圖,其 中包含各種計量信息和車頭車尾的圖片,用來和流水 信息進行比較。
紅外處理部分主要用于接收I/O卡的信息,當車 輛不完全在秤臺上時,計量畫面上的左越界和右越界 的燈就會變色,同時在計量時彈出提示信息左越界或 右越界,不能計量。
打印輸出部分包括流水打印和票據打印,流水打 印在連續(xù)紙上打印各種流水信息,用于查詢和與圖片 進行比較,票據打印可打印標準票據,用于結算。
防作弊部分的作用是:每輛汽車第一次計皮重時 均寫入皮重庫,以后再進行計量時,都會將當前皮重與 皮重庫中的歷史皮重進行比較,當超過一定范圍時,計量就會彈出對話框提示皮重超差,不予計量。如果需 要計量,則需要管理員對皮重進行解鎖后方可進行。
數據計量部分包括計毛重和計皮重。計毛重時, 首先判斷車輛是否超出邊界,當前重量是否超出量 程,當前重量顯示值是否合法,再進行計量性質的判 斷(進公司不可先計皮重,出公司不可先計毛重),檢 查計量信息是否完整,確定直接定皮重時搜索記錄的 允許時間間隔,當判斷為進公司時,直接計毛重,將計 量信息寫入文件,抓取計量圖片,判斷為出公司時,搜 索對應車牌號皮重,計算出凈重,然后將計量信息寫 入文件,打印票據,通過聲卡輸出提示司機計量完畢, 最后進行流水信息打印。計皮重時,開始的判斷與計 毛重一樣,在檢查完輸入信息是否規(guī)范后要進行防作 弊比較,如超出允許誤差范圍則提示后退出,如果正 常就進行下一步的判斷,計量性質為出公司時直接計 皮重,將計量信息寫入文件,抓取計量圖片,計量性質 為進公司時,搜索對應車牌號毛重,計算出凈重,計量 信息寫入文件,打印票據,通過聲卡輸出提示司機計 量完畢,最后進行流水信息打印。
數據統(tǒng)計部分可以對每天或者每月的計量信息 進行分類統(tǒng)計,并形成報表。
3.流水電子化的實現(xiàn)
計量程序使用Visual Basic6. 0編寫。首先在 程序中添加一個新窗體“form2”在主計量畫面建立 一個按鈕,按鈕命名為“流水查詢”用于打開新建窗 體;根據流水需要在Form_Load ()中設計相應的表 頭;在工具欄添加MSFlexGrid控件和CommonDialog 控件,MSFlexGrid控件可以顯示網格數據,Common-Dialog 控件提供一組標準的操作對話框,進行諸如打 開和保存文件、設置打印選項、選擇顏色和字體等操 作,用它來選擇相應的文件。程序如下:
ComDlgl. DialogTitle ="打開計量數據文件"
ComDlgl. Filter ="計量數據文件(* . mqd) I * . mqd"
*利用CommonDialog控件選擇計量數據文件 Open checkfile For Random Access Read Write As # filenumber Len = Len (Data)
*打開所選擇的數據文件
FxGd1 . FormatString = header *將定制好的表頭傳給MSFlexGrid控件 For i = 1 To rec_no Step 1 Get #filenumber,i,Data
FxGdl. | row | =i | |||
FxGdl. | Col | =0 | FxGdl | Text | = str( i) |
FxGdl. | Col | =l | FxGdl | Text | = Data. gross_no |
FxGdl. | Col | =2 | FxGdl | Text | = Data. tare_no |
FxGdl. | Col | =3: | FxGdl | Text | = Data. car_no |
FxGdl. | Col | =4: | FxGdl | Text | = Data. send |
FxGdl. | Col | =5 | FxGdl | Text | =Data. recv |
FxGdl. | Col | =6: | FxGdl | Text | = str( Data. gross) |
FxGdl. | Col | =7 | FxGdl | Text | = str( Data. tare) |
FxGdl. | Col = | :8: FxGdl. Text = | str ( Data. mtime) | ||
FxGdl. Col | =9: FxGdl. | Text | = str( Data. ptime) |
Next i
*利用循環(huán)在MSFlexGrid控件中顯示文件中所有的 記錄
Close #filenumber
*關閉打開的文件
根據需要調整表格的大小和按鈕的位置。
禁止流水打印。
對修改好的文件進行編譯,生成目標文件。
4.結語
取消汽車衡計量系統(tǒng)中的流水打印機,實現(xiàn)流水 電子化,不僅滿足了鄂鋼計量工藝要求及管理要求, 還確保了數據的安全性和穩(wěn)定性,減輕了計量人員的 工作強度,節(jié)約了計量成本。到目前為止,軟件運行 良好,達到預期目標。