• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

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

      2011-06-11 03:34:58邱占芝于曉龍
      關(guān)鍵詞:類(lèi)庫(kù)汽車(chē)衡網(wǎng)絡(luò)化

      邱占芝,于曉龍

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

      0 引言

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

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

      1 系統(tǒng)方案

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

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

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

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

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

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

      1.2 軟件功能設(shè)計(jì)

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

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

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

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

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

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

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

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

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

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

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

      Javax.comm類(lèi)庫(kù)的安裝方法如下:

      (1)將Sun公司提供的Javax.comm類(lèi)庫(kù)包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ě)的軟件實(shí)現(xiàn)源碼(略).

      2.2 應(yīng)用實(shí)例

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

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

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

      根據(jù)用戶(hù)需求,計(jì)算機(jī)采集的稱(chēng)重?cái)?shù)據(jù)顯示于“稱(chēng)重過(guò)衡單”,結(jié)果如圖4所示.

      圖4 地衡稱(chēng)重記錄單

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

      3 結(jié)論

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

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

      猜你喜歡
      類(lèi)庫(kù)汽車(chē)衡網(wǎng)絡(luò)化
      整車(chē)式動(dòng)態(tài)汽車(chē)衡在高速公路治超中的應(yīng)用
      用Java編寫(xiě)客戶(hù)機(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)可視化類(lèi)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
      當(dāng)代新聞學(xué)的網(wǎng)絡(luò)化發(fā)展
      新聞傳播(2016年11期)2016-07-10 12:04:01
      淺談動(dòng)態(tài)汽車(chē)衡發(fā)展史
      動(dòng)態(tài)汽車(chē)衡準(zhǔn)確度等級(jí)的現(xiàn)實(shí)意義
      基于OPC的網(wǎng)絡(luò)化群梯管理系統(tǒng)開(kāi)發(fā)
      網(wǎng)絡(luò)化時(shí)代社會(huì)認(rèn)同的深刻變遷
      金塔县| 绥棱县| 邵阳县| 福安市| 五原县| 民权县| 南召县| 余干县| 稷山县| 邳州市| 贺州市| 塔城市| 巴东县| 罗源县| 札达县| 宜丰县| 靖安县| 高安市| 峨边| 报价| 织金县| 呼和浩特市| 邵东县| 克山县| 祥云县| 天门市| 宜兰县| 且末县| 毕节市| 泸水县| 旬阳县| 阳新县| 九寨沟县| 雷州市| 民乐县| 鹿泉市| 宜兴市| 贞丰县| 铁力市| 高台县| 吴忠市|