




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、基于的托利多電子稱與計(jì)算機(jī)通信的研究基于的托利多電子稱與計(jì)算機(jī)通信的研究在基于javasing技術(shù)開發(fā)的過磅管理系統(tǒng)中,需要與串口通信,讀取電子稱的數(shù)據(jù)。irsft的s是一個(gè)功能強(qiáng)大的串口通信控件,在vb中用它來開發(fā)串口通信程序是一個(gè)不錯(cuò)的選擇。java的jni類庫(kù)用于訪問/+代碼是比較方便的,但是用來訪問vb開發(fā)的串口通信程序卻很費(fèi)事1。jab(java-bridge)是一個(gè)開源的基于jni技術(shù)開發(fā)的類庫(kù),用于java代碼與組件之間的通信。本文利用jab在javasing中調(diào)用vb下開發(fā)的dll串口通信程序,實(shí)現(xiàn)對(duì)地磅數(shù)據(jù)的自動(dòng)讀齲一、8142系列電子秤串口數(shù)據(jù)格式與s通信控件綠華糖廠使用的
2、托利多電子秤型號(hào)是8142或是8142pr,這兩種電子秤的串口發(fā)送數(shù)據(jù)方式都是設(shè)置為連續(xù)發(fā)送,而且數(shù)據(jù)格式都是一樣的,如表1所示:其中,狀態(tài)字a、b、分別表示小數(shù)點(diǎn)位置、分度倍乘、是否超載等信息,詳細(xì)見電子稱所附說明書。限于篇幅,不再一一給出。綜上可知一幀數(shù)據(jù)共有18個(gè)字節(jié),但實(shí)際傳輸中只用了17個(gè)字節(jié),最后一個(gè)字節(jié)檢查校驗(yàn)和,一般不使用。計(jì)算機(jī)與串口通信程序的開發(fā)利用sativex控件是比較方便的2。它具有如下重要屬性:prt屬性:設(shè)置與返回通訊端口數(shù);settings屬性:設(shè)置與返回波特率,奇偶校驗(yàn)位,字符串的停頓位和數(shù)據(jù)位;prtpen屬性:設(shè)置與返回通訊端口的狀態(tài),并可開放、關(guān)閉端口;
3、input屬性:返回和刪除接收緩沖區(qū)的字符;utput屬性:寫字符串到發(fā)送緩沖區(qū)。一數(shù)據(jù)包的提取數(shù)據(jù)包的提取是利用n事件來完成的。設(shè)置s的rthreshld屬性為18,這樣當(dāng)接收緩沖區(qū)收到18個(gè)字節(jié)時(shí),就會(huì)發(fā)生s事件。由于電子稱工作于連續(xù)發(fā)送方式,即使收到18個(gè)字節(jié)仍不能保證是一個(gè)完好的數(shù)據(jù)鄭因此就必須對(duì)這18個(gè)字節(jié)做進(jìn)一步的分析,以確認(rèn)是否為有效數(shù)據(jù)。由表1的數(shù)據(jù)格式可知,正確的數(shù)據(jù)包的第一個(gè)字節(jié)為02h,第17個(gè)字節(jié)為0dh。這樣,在s事件中就可以檢測(cè)這兩個(gè)位置的字節(jié)以判斷是否為正確的數(shù)據(jù)鄭二超載檢測(cè)和負(fù)值檢測(cè)假如承受的數(shù)據(jù)超載即承受的重量超過電子秤的量程范圍或者為負(fù)值,承受數(shù)據(jù)就沒有意義
4、了,所以必須對(duì)它進(jìn)展檢測(cè)。超載檢測(cè)主要是判斷數(shù)據(jù)包中的狀態(tài)字b的2位數(shù)據(jù)是否為1,假設(shè)為1,那么為超載;假設(shè)為0,那么為正常,可以通過超載檢測(cè)。負(fù)值檢測(cè)主要是判斷狀態(tài)字b中的1位數(shù)據(jù)是否為1,假設(shè)為1,那么為負(fù)值;假設(shè)為0,那么為正常,可以通過檢測(cè)。三重量數(shù)據(jù)的析取在托利多電子秤上所顯示的重量數(shù)據(jù)在數(shù)據(jù)包中處于5到10位,有6個(gè)字節(jié),每個(gè)字節(jié)對(duì)應(yīng)于電子秤所顯示的一位數(shù)值。將每個(gè)字節(jié)轉(zhuǎn)換為字符并連接為字符串,就可以作為重量數(shù)據(jù)返回給上層調(diào)用程序了。二、電子稱數(shù)據(jù)采集dll控件的開發(fā)通信程序的開發(fā)是在vb6.0環(huán)境下完成的。點(diǎn)擊文件-新建工程,在彈出的新建工程對(duì)話框中選擇ativexdll控件選項(xiàng)
5、,新建一個(gè)工程,取名為tuled8142。并為該工程添加一個(gè)s控件。源碼主要包括兩個(gè)函數(shù)與一個(gè)n事件處理。其中g(shù)etheng函數(shù)供sing調(diào)用以設(shè)置通信格式并翻開口3。其代碼如下:publifuntingetheng()s1.prt=1s1.settings=9600,e,7,1s1.rthreshld=18s1.inputlen=18s1.inbufferunt=0s1.prtpen=trueendfuntin在n事件中判斷數(shù)據(jù)幀是否有效,并負(fù)責(zé)析取重量數(shù)據(jù),主要代碼如下:privatesubs1_n()diinbytes()asbyteinbytes=s1.inputifinbytes(0
6、)=2andinbytes(16)=13thenvalue=hr(inbytes(4)hr(inbytes(5)hr(inbytes(6)hr(inbytes(7)hr(inbytes(8)hr(inbytes(9)s1.inbufferunt=0s1.prtpen=falseexitsubendsubgetvalue函數(shù)僅供sing讀出重量值:publifuntingetvalue()asstringgetvalue=valueendfuntin接著就需要將該通信程序封裝為x控件。詳細(xì)步驟為,點(diǎn)擊文件-生成tuled8142.dll。這樣會(huì)生成tuled8142.dll文件,可以供sing使
7、用了。三、在sing中使用數(shù)據(jù)采集dll控件一jab的安裝在elipse3.2中,右鍵點(diǎn)擊工程,翻開nfiguratin對(duì)話框,將jab.jar文件參加到lasspath中。二在sing中的java讀磅值函數(shù)publistringreadheng()stringresult=ndata;intunt=0;dispathhengreader=nedispath(yujvheng.lass1);dispath.all(hengreader,beginreadheng);hile(result.equals(ndata)result=dispath.all(hengreader,getresult)
8、.tstring();if(unt+10000)break;returnresu三使用多線程實(shí)時(shí)顯示磅值在實(shí)時(shí)顯示數(shù)據(jù)的同時(shí),為了不影響正常操作的進(jìn)展,必須用多線稱實(shí)現(xiàn)數(shù)據(jù)的顯示4。以下是顯示數(shù)據(jù)的線稱類:lassdisphengthreadipleentsrunnablepublividrun()dispathhengreader=nedispath(heng4thread.lass1);hile(ishengthreadrunned)trythread.sleep(400);ath(interruptedexeptine)e.printstaktrae();stringresult=ndata;intunt=0;dispath.all(hengreader,beginreadheng);hile(result.equals(ndata)trythread.sleep(50);ath(interruptedexeptine)e.printstaktrae();result=dispath.all(hengreader,getresult).tstring();if(unt+10)break;valuehenglabel.set
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字藝術(shù)市場(chǎng)數(shù)字化交易平臺(tái)在藝術(shù)品市場(chǎng)中的用戶體驗(yàn)提升報(bào)告
- 愛好養(yǎng)花面試題及答案
- 施工現(xiàn)場(chǎng)事故案例學(xué)習(xí)考核題目細(xì)解試題及答案
- 廢舊塑料回收再利用技術(shù)革命2025年產(chǎn)業(yè)發(fā)展策略分析報(bào)告
- 鹽業(yè)執(zhí)法考試試題及答案
- 建筑施工安全新技術(shù)試題及答案
- 潮玩市場(chǎng)2025年研究報(bào)告:收藏價(jià)值與文化傳播的雙重視角解讀
- 江蘇省句容市崇明片2024-2025學(xué)年初三畢業(yè)班階段性測(cè)試(七)英語試題含答案
- 智能倉(cāng)儲(chǔ)物流系統(tǒng)智能化改造對(duì)人力資源優(yōu)化影響報(bào)告
- 沈陽城市學(xué)院《德漢口譯》2023-2024學(xué)年第二學(xué)期期末試卷
- 妊娠期高血壓疾病診治指南2020完整版
- 銅及銅合金物理冶金基礎(chǔ)-塑性加工原理
- 2023年自考外國(guó)新聞事業(yè)史歷年考題及部分答案
- 安徽匯宇能源發(fā)展有限公司25萬噸年石腦油芳構(gòu)化項(xiàng)目環(huán)境影響報(bào)告書
- 新《行政處罰法》亮點(diǎn)ppt解讀
- LY/T 1970-2011綠化用有機(jī)基質(zhì)
- 部編人教版五年級(jí)語文下冊(cè)第18課《威尼斯的小艇》精美課件
- 消防(電動(dòng)車)火災(zāi)安全知識(shí)課件
- VSM(價(jià)值流圖中文)課件
- 上海交通大學(xué)醫(yī)學(xué)院附屬仁濟(jì)醫(yī)院-日間手術(shù)管理信息化實(shí)踐與發(fā)展
- 核電站入廠安全培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論