基于C#.NET的智能化地磅稱重管理系統
針對目前地磅稱重數據管理效率低、智能化程度不高等缺點,設計了一種基于Visual Studio C# NET的地磅稱重管理系統,介紹了系統的模塊化構成,構建了稱重、查詢與統計、管理控制、系統維護等模塊的設計方法,闡述了利 用SernlPort類實現具有軟件握手的CRC編碼串口通信以及通過動態配置策略實現安全性管理的方法。實驗結果及應用 表明:該地磅稱重管理系統界面友好、操作簡單、數據傳輸穩定,智能化程度高。
0.引言
稱重管理軟件是地磅稱重系統重要的組成部分⑴,與發 達國家相比,國內的地磅稱重管理軟件開發投入不夠、技術 含量低,因此研究一種新的智能化地磅管理軟件對提高地磅的工作效率、減少稱重誤差等具有重要意義。隨著計算機 技術的發展并與地磅稱重系統的結合,目前地磅管理軟件 性能有了很大的提高。然而,在提高數據的可靠性、統計檢索 的靈活性、數據一體化管理的規范性、報表可分析性、數據安全 性等方面,地磅稱重管理軟件仍需進一步完善。
文中以Visual Studio. NET環境下的C#吾言為開發工具,米 用SQL SERVER數據庫,設計一種地磅稱重管理系統。NET 平臺構建于開放的公共協議之上,采用虛擬機的設計理念,極 大地提高了開發效率。文中針對現有地磅管理軟件的不 足,重點研究了如何提高地磅數據錄入、提取及管理的智能 化程度。系統米用Crystal Report結合SQL Server 2005數據庫 作為報表管理方案,展現高度格式化的稱重信息,實現地磅稱重數據的直觀分析與管理的智能化。
1.智能化地磅的構成及原理
1.1智能化地磅的構成
智能化地磅稱重系統主要包括稱重傳感器、地磅秤 體、稱重信號采集與處理系統、用戶管理上位機系統(PC)、人機 接口設備等部分,其結構如圖1所示。圖中,胳稱重傳感 器的稱重信號經調理、A/D后轉換為數字信號,經過MCU的稱 重數據處理后(包括稱重融合、誤差補償等),獲得稱量結果并 通過LCD顯示,同時系統實時將稱重數據傳送至上位機(PC 機),并利用稱重系統管理軟件,完成稱重數據的存儲、查詢、統 計、管理控制、打印等功能。
1.2智能化汽車稱重原理
地磅具有8路稱重傳感器。設各稱重傳感器輸出的稱量值為=1, 2,…,8J即分布在各稱重傳感器上的載荷量’ 8x = S,其中x為被測總載荷量);各稱重傳感器的輸出電壓為 i =1Ui (i =1, 2,…,8);地磅總的輸出信號電壓為u則總稱重結 果y為[7-8]y = Kp u = Kp (U1 + U2 + …+ Us)=K (k1 X1 + k, x + …+ k X8) = EKp ki xt (1)
式中:Kp為地磅總的輸出信號電壓與總稱重結果的比例系 數;k, (i =1, 2,…,8)為各傳感器通道增益。
2.基于C# NET智能化地磅管理系統
地磅稱重管理系統主要由9個模塊構成,即系統登錄模 塊、稱重模塊、查詢統計模塊、設置模塊、管理控制模塊、系統 維護模塊、常用工具模塊、幫助模塊和退出模塊。
2.1地磅管理系統稱重模塊
稱重模塊是上位機稱重管理系統的重要組成部分,其與地磅下位機稱重模塊配合,共同獲得稱重數據,也是系統的稱 重數據顯示儀表盤。地磅管理系統稱重模塊的流程圖如圖2 所示。
操作人員首先打開地磅稱重管理系統登錄界面,輸入用 戶名及密碼,進入稱重界面。在默認情況下,系統自動完成串 口的連接。此時系統自動生成單號,操作人員填寫車號,如果地磅秤體上加載有載荷,系統通過下位機稱重模塊完成被測 載荷的稱重,并將毛重、皮重、凈重等稱重信息通過串口傳送至 上位機;稱重模塊完成毛重、皮重等數據完整性判別后,獲得稱 重結果,并打印、保存相關數據。圖3為采用C# NET開發的稱 重模塊界面。
智能化的提示性信息顯示及輸入方式,降低人為干預度。 由于車號,品名,收、發單位等信息反復多次使用,系統采用的 自編輸入框控件在用戶輸入信息的同時,按符合度和使用頻率 這兩個條件以權重值0.3和0.7的比例,按順序把相應信息列 出在下拉框中。用戶測試顯示,對單條稱重信息輸入時,采用 智能化提示性信息輸入方式,比普通方式要快5?7 s 2 2基于C# NET的串行通信
基于C#. NET的智能化地磅管理系統通過RS- 232串 行通信完成上位機(PC機)與下位機(MCU)的稱重信息、控制命令等數據傳遞。
Microsoft. NET Framework 2 0中提供了 SerialPort類,該類
主要實現串口數據通信等。SernlPort類提供了同步I/O和事 件驅動的I/O、對管腳和中斷狀態的訪問以及對串行驅動程序 屬性的訪問。SernlPort類的常用屬性和常用方法如表1所 示。利用表1中的屬性和方法,實現智能化地磅系統中上位 機與下位機的數據傳輸。
利用 Microsoft. NET Framework 2 0中的 SerialPort類,實現地磅稱重系統上位機與下位機串口通信接收功能的主要程 序如下:
Private void serialPort1_DataReceived(object sender,
System. D. Ports SerialDataReceivedEvenlArgs e)
{tf(flag= = false)//flag初始值為false,用于標識是否處理數據信
息
{if(1his serialPortl. ReadByte() = =0x0A) //判斷收到詢問信號'
0A'
{ 1his serialPortl. W rite (0x0B,0,1); flag = ! flag; } } / /回復確認信號'B'
else if (flag = = true)
{ System. Threading; Thread Sleep (100); / 線程中斷 100暈秒 1his serialPort1. Read( rec—barray,0,4); / /i賣取緩沖區數據 rec—barray—data = CRCdata(rec_barray,2); / 對接收 CRC編碼解碼 temp = Convert ToDouble (rec_barray_data[ 0 ] * 256 + rec—barmy—data[ 1 ]); /胺規約處理數據 rec_dou = temp /100. 00; / /單位轉換 rec_strarray = Convert ToString( rec_dou); flag = ! flag;
SetText1 (rec_strarray); } } / /顯示數據
每當上位機串口緩沖區收到新數據時,g卩觸發此函數。 為了提高地磅稱重系統串口通信的抗干擾能力和降低 誤碼率,上位機與下位機通信采用了 CRC編碼技術,并設計了 一種握手協議,即對于每32 bit數據,由下位機向上位機發送數 據傳輸詢問信號(0A ’,上位機接收到(0A ’信號后,向下位機發 送(0B ’確認信號。下位機接收到‘0B ’后傳輸2 bit數據信息, 上位機將數據按約定規則處理后顯示。若下位機沒有收到‘OB ’確認信號,下位機將持續向上位機發送詢問信號,上位機 數據信息保持不變,避免因干擾而產生數據大幅振蕩。若此狀 態超過2 s,系統將彈出串口通信異常警告對話框。實驗表明, 采用這種方法后,數據通信誤差由實施前的<0.05%降低到< 0.01%。
2.3查詢統計模塊
地磅稱重系統產生地稱重數據被保存在數據庫中,管理 員能夠在查詢統計界面根據條件查詢稱重信息,系統自動統計 結果,包括單數、總毛重量、總皮重量、總凈重量、總扣雜量等。 具備權限的管理員,可以直接修改列表框中的稱重信息,改動 后,系統提示是否保存當前的修改。系統采用水晶報表設計器 生成統計報表。
地磅稱重管理系統查詢功能分為模糊查詢和精確查詢。 默認情況下,系統采用模糊查詢。這兩種查詢方式通過編寫相應的SQL查詢語句“select字段1,字段2 where字段1 like參數'字段2 like ‘參數’……”或“ select字段1,字段2…… where字段1 is參數'字段2 is參數’……”實現。SQL SERVER提供了這2種查詢的方法。
2.4管理控制模塊
管理控制模塊要求使用者具有系統管理員權限。其主要 功能有:快速修改指定單號的稱重信息、系統用戶管理、打印機 參數設置、新增過鎊單、起始單號設置、刪除數據表信息、串口 參數設置及測試等。
新增系統用戶時,同時設置其初始密碼及權限。用戶權限 分為:超級管理員、普通管理員、普通用戶。使用者登錄時,系 統根據用戶名判斷其權限,自動加載相應模塊。
2.5系統維護模塊
系統維護模塊為保護數據安全制定策略和設定參數。為 提咼數據安全性,程序使用DateTime; Now. Month()方法獲取月 份,與寫入動態配置的Properties Settings Default Month信息比 較,判定其是否跳變,在每月第一天自動備份當前表,包括:鎊 單表、皮重表、品名表、單位表、用戶表。備份文件的存放地址 可由管理員設定。還原時,找到對應備份文件即可。備份文件 的命名默認為該文件的生成日期。
系統除自動備份外,管理員還可以在任意時刻主動備份當 前表于指定位置,以降低每月中期數據意外損失的風險。
3.實驗結果
根據國家標準《非自動秤通用檢定規程JJG555 - 1996鄉 規定[10],對研制的智能化汽車衡進行現場檢定,檢定結果如表 2所示。表中,I、、分別表示最小秤量,最大秤量。
從表2可以看出,智能化地磅的稱重結果誤差小,優于國家標準規定的三級秤指標。
4.結束語
文中以Visual Studio 2005為開發平臺,研制了一種基于C# NET的智能化地磅稱重管理系統,其具有操作簡單、人工干預少、智能化程度高以及數據收發穩定等優點。檢定表明,采用此管理系統的智能化地磅測量準確度高,實現了稱重數據的高效安全管理,已批量生產。