国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于JAVA的汽車衡稱重管理系統(tǒng)關(guān)鍵技術(shù)

2011-06-11 03:34:58邱占芝于曉龍
大連交通大學(xué)學(xué)報 2011年4期
關(guān)鍵詞:類庫汽車衡網(wǎng)絡(luò)化

邱占芝,于曉龍

(大連交通大學(xué) 軟件學(xué)院,遼寧 大連 116208)

0 引言

汽車衡稱重系統(tǒng)廣泛應(yīng)用于煤炭、冶金、石油、化工、港口、倉儲等行業(yè)領(lǐng)域,完成物料的計量與統(tǒng)計功能,為相應(yīng)行業(yè)的企業(yè)生產(chǎn)、調(diào)度、指揮提供可靠的決策依據(jù).隨著科學(xué)技術(shù)的高速發(fā)展和計算機(jī)與電子設(shè)備性能價格比的不斷提高,汽車衡稱重系統(tǒng)也從人工記數(shù)、人工統(tǒng)計與匯總,發(fā)展到今天的自動稱重、自動存儲、自動統(tǒng)計與匯總.在當(dāng)今的網(wǎng)絡(luò)時代,更要求汽車衡稱重系統(tǒng)不僅能夠?qū)崿F(xiàn)自動稱重、存儲、統(tǒng)計與匯總,而且要實現(xiàn)網(wǎng)絡(luò)化管理和數(shù)據(jù)共享,實現(xiàn)稱重數(shù)據(jù)的數(shù)據(jù)庫存儲.企業(yè)管理者需要在任意時間、任意地點(diǎn)、進(jìn)行物料稱重數(shù)據(jù)的查詢、匯總和統(tǒng)計分析,以便及時調(diào)度和決策.同時,還需要杜絕稱重系統(tǒng)的認(rèn)為作弊現(xiàn)象的發(fā)生,保證稱重數(shù)據(jù)的客觀性和準(zhǔn)確性.目前,傳統(tǒng)的汽車衡稱重管理系統(tǒng)大多采用 VB、Delphi、C/C++等語言,而采用 JAVA語言實現(xiàn)衡器自動稱重的方法還不多見.JAVA語言是一種面向?qū)ο?、分布式、解釋型、健壯安全、結(jié)構(gòu)中立、可移植、性能優(yōu)異、多線程的動態(tài)語言,其無比的健壯性、可靠性和平臺無關(guān)性,使得采用JAVA語言的應(yīng)用系統(tǒng)開發(fā)與維護(hù)成本低、多平臺信息傳遞信息塊,并且其豐富的類庫使其廣泛應(yīng)用于網(wǎng)絡(luò)化系統(tǒng)的開發(fā)與實現(xiàn)中.

本文針對汽車衡稱重系統(tǒng)的網(wǎng)絡(luò)化需求,研究基于JAVA的網(wǎng)絡(luò)化汽車衡稱重管理系統(tǒng)的方案設(shè)計和關(guān)鍵技術(shù)實現(xiàn)問題,討論汽車衡自動稱重數(shù)據(jù)的采集與自動存儲JAVA方法,并通過某大型企業(yè)的汽車衡稱重系統(tǒng)的研發(fā)實例,驗證其方案的可行性和有效性.

1 系統(tǒng)方案

1.1 系統(tǒng)體系結(jié)構(gòu)

網(wǎng)絡(luò)化汽車衡稱重管理系統(tǒng),總體結(jié)構(gòu)如圖1所示.

圖1 系統(tǒng)總體結(jié)構(gòu)圖

統(tǒng)體系結(jié)構(gòu)分為3層:稱重現(xiàn)場、數(shù)據(jù)中心、網(wǎng)絡(luò)節(jié)點(diǎn)終端(企業(yè)管理各部門、計劃調(diào)度等).根據(jù)系統(tǒng)功能與技術(shù)實現(xiàn)的需求,系統(tǒng)采用C/S與B/S結(jié)合的運(yùn)行方案.稱重現(xiàn)場,即汽車衡稱重數(shù)據(jù)的采集與自動存儲采用C/S模式.利用Intranet技術(shù),組成本地局域網(wǎng),計算機(jī)采集汽車衡稱重數(shù)據(jù)并自動存儲本地服務(wù)器,同時通過網(wǎng)絡(luò),同步存儲于數(shù)據(jù)中心服務(wù)器,以便于進(jìn)行遠(yuǎn)程數(shù)據(jù)瀏覽、查詢和統(tǒng)計.數(shù)據(jù)采集端采用C/S模式,可保證響應(yīng)速度快、處理復(fù)雜事物邏輯能力強(qiáng)、數(shù)據(jù)存取準(zhǔn)確、可靠等要求.稱重數(shù)現(xiàn)場外的其余部分,采用B/S 模式.采用基于 J2EE[1]平臺的 Struts[2]架構(gòu),設(shè)計網(wǎng)絡(luò)化稱重管理系統(tǒng),實現(xiàn)網(wǎng)絡(luò)遠(yuǎn)程訪問和數(shù)據(jù)查詢與統(tǒng)計.B/S模式的稱重管理系統(tǒng),可實現(xiàn)分布式數(shù)據(jù)查詢與管理,具有可移植性強(qiáng)、重用性好、易于維護(hù)、可伸縮性強(qiáng)等諸多優(yōu)勢.

汽車衡稱重現(xiàn)場系統(tǒng)結(jié)構(gòu)如圖2所示.

圖2 汽車衡稱重現(xiàn)場系統(tǒng)結(jié)構(gòu)

1.2 軟件功能設(shè)計

系統(tǒng)軟件分為C/S端軟件和B/S端軟件兩個部分.

C/S端軟件的主要功能是日常稱重數(shù)據(jù)處理,包括:稱重數(shù)據(jù)的采集;顯示與存儲;參數(shù)設(shè)置(串口參數(shù)配置、計量單位配置、儀表選型等)等.

B/S端軟件的主要功能是稱重數(shù)據(jù)的管理,包括:用戶權(quán)限控制與管理;基礎(chǔ)數(shù)據(jù)(用戶數(shù)據(jù)、車輛信息、稱重計劃等)維護(hù);數(shù)據(jù)傳輸(本地服務(wù)器與數(shù)據(jù)中心服務(wù)器數(shù)據(jù)同步);數(shù)據(jù)查詢;統(tǒng)計分析;報表打印等.

網(wǎng)絡(luò)化汽車衡稱重管理系統(tǒng)功能結(jié)構(gòu)如圖3所示.

圖3 汽車衡稱重管理系統(tǒng)功能框圖

2 數(shù)據(jù)采集技術(shù)與實現(xiàn)

2.1 關(guān)鍵技術(shù)

稱重數(shù)據(jù)采集是稱重現(xiàn)場端的關(guān)鍵技術(shù).計算機(jī)必須準(zhǔn)確監(jiān)控和接收汽車衡稱重數(shù)據(jù),同時同步存儲于本地服務(wù)器和數(shù)據(jù)中心服務(wù)器.數(shù)據(jù)采集端程序的開發(fā)可以采用VB、Delphi、C/C++等任一種高級語言.JAVA由于具有開放性、平臺無關(guān)性和面向?qū)ο蟮忍匦裕蛊涑蔀橐粋€理想的網(wǎng)絡(luò)化系統(tǒng)軟件開發(fā)工具.利用JAVA串口通信API開發(fā)了一個用于串口通信的JAVA程序,大大簡化了對串口進(jìn)行操作的過程[3-6].

Sun的J2SE中沒有直接提供串行通訊協(xié)議的開發(fā)包,而是以獨(dú)立的jar包形式發(fā)布在java.sun.com網(wǎng)站上,稱之為Java(tm)Communications API,它是J2SE的標(biāo)準(zhǔn)擴(kuò)展.Comm.jar提供了對RS-232串行端口通訊的支持,Java通過該類庫能夠極大地簡化對串口的操作過程.

Javax.comm類庫通過SerialPort對象來對串口事件進(jìn)行控制,通過getInputStream()方法讀取串口的數(shù)據(jù),getOutputStream()方法向串口寫數(shù)據(jù);通過setSerialPortParams()方法設(shè)置串口的通信協(xié)議.

與comm.jar開發(fā)包一起的還有兩個重要的文件,win32com.dll和 javax.comm.Properties.comm.jar提供了通信用的 java API,win32com.dll提供了供comm.jar調(diào)用的本地驅(qū)動接口,Javax.comm.properties是這個驅(qū)動的類配置文件.

Javax.comm類庫的安裝方法如下:

(1)將Sun公司提供的Javax.comm類庫包java.comm.win32.zip(可從 http://java.sun.com下載)解壓;

(2)將win32com.dll文件拷貝至<JDK>in目錄下;

(3)將comm.jar、javax.comm.properties文件拷貝至<JDK>lib目錄下;

(4)將comm.jar文件添加到classpath環(huán)境變量中.

串口讀寫的軟件實現(xiàn)源碼(略).

2.2 應(yīng)用實例

將上述系統(tǒng)方案和技術(shù)應(yīng)用于某大型礦業(yè)公司的網(wǎng)絡(luò)化運(yùn)銷控制與管理系統(tǒng),網(wǎng)絡(luò)操作系統(tǒng)采用Windows 2003 Server,數(shù)據(jù)庫管理系統(tǒng)采用SQL Server 2005,Web 服務(wù)器采用 Apache Tomcat.以型號為XK3190-A9的汽車衡為例,其輸出的稱重數(shù)據(jù)通過串口與計算機(jī)通信,所有數(shù)據(jù)均為ASCⅡ碼,每組數(shù)據(jù)有10位組成,第1位為起始位,第10位為停止位,中間8位為數(shù)據(jù)位.通信方式分為連續(xù)方式和指令方,其連續(xù)通信方式為:

所傳送數(shù)據(jù)為儀表顯示的當(dāng)前稱量(毛重或凈重).每幀數(shù)據(jù)由12組數(shù)據(jù)組成,格式如附表.

附表 通信數(shù)據(jù)格式

根據(jù)用戶需求,計算機(jī)采集的稱重數(shù)據(jù)顯示于“稱重過衡單”,結(jié)果如圖4所示.

圖4 地衡稱重記錄單

經(jīng)過調(diào)試與運(yùn)行表明:基于JAVA的串口通信不僅簡化了程序?qū)τ诖诘牟僮?,而且由于JAVA多線程機(jī)制使程序具有并行性和高可靠性,并且可以節(jié)省系統(tǒng)資源.由于JAVA的平臺無關(guān)性,可以使JAVA程序在不同的平臺進(jìn)行方便的移植.

3 結(jié)論

本文給出了基于C/S和B/S相結(jié)合模式的汽車衡稱重系統(tǒng)的總體結(jié)構(gòu)設(shè)計并給出實現(xiàn)數(shù)據(jù)采集部分的關(guān)鍵JAVA代碼.系統(tǒng)可使管理人員有效監(jiān)督稱重過程,使稱重過程公開、透明,杜絕人為因素的干擾,防止了舞弊情況的發(fā)生,實現(xiàn)實時多任務(wù)監(jiān)督控制及多級管理,同時降低成本,提高效益,有利于企業(yè)對進(jìn)出物資的稱重計量過程進(jìn)行有效監(jiān)控和科學(xué)管理,具有顯著的社會效益和經(jīng)濟(jì)效益.

[1]JAVA 2 Enterprise Edition,J2EE TM Connector Architecture Specification,V1.0C copyright 2001,Rahul Sharma,Sun Microsystems,Inc.http://JAVA.sun.com/products August 22,2001.

[2]Govind Seshadri,Understanding JavaServer Pages Model 2 architecture[EB/OL].http://www.javaworld.com/javaworld/jw-12-1999/jw-12-ssj-jspmvc.html.

[3]BERRYC A.J2EE Design Pattern Applied[M].New York:Wrox Press,2002.

[4]李良 朱善安.基于java的串口通信[J].電子器件,2007,30(2):714-720.

[5]周海濤,高興鎖,江曉峰.基于JAVA數(shù)據(jù)采集串口通訊的設(shè)計和實現(xiàn)[J].測控自動化,2006,22(2-1):141-142.

[6]馬海平.基于嵌入式Linux的動態(tài)汽車衡的設(shè)計與實現(xiàn)[D].太原:太原理工大學(xué),2007.

猜你喜歡
類庫汽車衡網(wǎng)絡(luò)化
整車式動態(tài)汽車衡在高速公路治超中的應(yīng)用
用Java編寫客戶機(jī)/服務(wù)器端應(yīng)用程序
Python在數(shù)據(jù)可視化中的應(yīng)用
數(shù)據(jù)結(jié)構(gòu)課程教學(xué)改革方案和應(yīng)用效果
軟件工程(2017年12期)2018-01-29 17:35:55
數(shù)據(jù)結(jié)構(gòu)可視化類庫的設(shè)計與實現(xiàn)
當(dāng)代新聞學(xué)的網(wǎng)絡(luò)化發(fā)展
新聞傳播(2016年11期)2016-07-10 12:04:01
淺談動態(tài)汽車衡發(fā)展史
動態(tài)汽車衡準(zhǔn)確度等級的現(xiàn)實意義
基于OPC的網(wǎng)絡(luò)化群梯管理系統(tǒng)開發(fā)
網(wǎng)絡(luò)化時代社會認(rèn)同的深刻變遷
虞城县| 荥阳市| 南昌市| 龙口市| 揭阳市| 遂川县| 香河县| 清新县| 临沭县| 托克逊县| 香港| 启东市| 华亭县| 清丰县| 黄平县| 绍兴市| 辰溪县| 普格县| 金昌市| 化隆| 定襄县| 鄂温| 仁怀市| 武穴市| 靖安县| 富民县| 建昌县| 南华县| 上高县| 武功县| 盱眙县| 孝昌县| 札达县| 清河县| 株洲市| 邯郸县| 新安县| 商城县| 泊头市| 喀什市| 千阳县|