通訊協(xié)議標(biāo)準(zhǔn)_第1頁
通訊協(xié)議標(biāo)準(zhǔn)_第2頁
通訊協(xié)議標(biāo)準(zhǔn)_第3頁
通訊協(xié)議標(biāo)準(zhǔn)_第4頁
通訊協(xié)議標(biāo)準(zhǔn)_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

編號(hào):密級(jí):內(nèi) 部頁數(shù): RS485DGL通信協(xié)議〔修改〕編寫: 校對(duì): 同意: 序言在常見數(shù)字式磁致伸縮液位計(jì)中,多實(shí)行RS485通信方法。但RS485標(biāo)準(zhǔn)僅對(duì)物理層接口進(jìn)展了明確定義,并沒有制訂通信協(xié)議標(biāo)準(zhǔn)。所以,在RS485根底上,派生出很多不一樣協(xié)議,不一RS485協(xié)議不一樣,很輕易造成誤觸發(fā),造成總線堵塞,使得不一樣產(chǎn)品對(duì)總線兼容性很差。伴隨RS485進(jìn)展,Modicon企業(yè)提出MODBUS泛應(yīng)用。而MODBUS協(xié)議標(biāo)準(zhǔn)比較煩瑣,而且每字節(jié)數(shù)據(jù)僅用低4位〔0~1一樣時(shí),對(duì)總線占用時(shí)間較長。DGL協(xié)議是依據(jù)以上問題提出一個(gè)通信協(xié)議。在制訂該協(xié)議時(shí)已充分考慮以下幾點(diǎn)要求:兼容于MODBUS。也就是說,符合該協(xié)議從機(jī)均可掛接到同一總線上。要適應(yīng)大數(shù)據(jù)量通信。如:滿足產(chǎn)品在線程序更需要(將來成效)。數(shù)據(jù)傳輸需穩(wěn)定牢靠。對(duì)不確定緣由應(yīng)參加必需冗錯(cuò)方法。降低總線占用率,確保數(shù)據(jù)傳輸通暢。協(xié)議描述為了兼容其它協(xié)議,現(xiàn)做以下定義:116進(jìn)制數(shù)表示。從機(jī)地址范圍為:0x80~0xFD,即:MSB=1;命令0~0x7F之間。即:MSB=0,以區(qū)分地址和其它數(shù)據(jù)。液位計(jì)編碼地址為:0x82~0x9F。其初始地址(出廠默認(rèn)值)為:0x81。罐旁表編織地址為:0xA2~0xBF。其初始地址(出廠默認(rèn)值)為:0xA1。其它地址用于連接其它類型設(shè)備,也可用于液位計(jì)、罐區(qū)表地址不夠時(shí)擴(kuò)大。液位計(jì)命令范圍為:0x01~0x2F,共47條,將分別用于參數(shù)設(shè)定、實(shí)時(shí)測量、診療測試、在線編程等。通信根底參數(shù)為:4800波特率,1個(gè)起始位,1個(gè)完畢位。字節(jié)校驗(yàn)為奇校驗(yàn)。MODBUSRTU通信格式編寫,并對(duì)其進(jìn)展了局部修改,以提升數(shù)據(jù)傳輸速度。另外,還局部參考了HART協(xié)議。其具體格式以下:ADDRESSCOMMANDByteCountDATACheckSUM地址命令字節(jié)數(shù)數(shù)據(jù)校驗(yàn)和1Byte1Byte=n,1BytenByte1Byte80~9F01~2F00~100~7F0~7F表中,數(shù)據(jù)最大字節(jié)數(shù)為16個(gè)。也就是說,整個(gè)數(shù)據(jù)包最長為20個(gè)字節(jié)?!靶r?yàn)和”是其前面全部數(shù)據(jù)異或得到數(shù)值,然后將該數(shù)值MSB位清零,使其滿足0~7F要求。在驗(yàn)證接收數(shù)據(jù)包“校驗(yàn)和”是否正確時(shí),可將全部接收數(shù)(包含“校驗(yàn)和”)進(jìn)展異或操作,得到數(shù)據(jù)應(yīng)=0x80。這是由于,只有“地址”MSB=1MSB1。本協(xié)議不支持MODBUS中所要求播送模式。時(shí)序安排105秒時(shí)間進(jìn)展自檢和測試數(shù)據(jù)。接著產(chǎn)品進(jìn)入待機(jī)狀態(tài)并翻開RS485通信接口,等候主機(jī)懇求。所以,主機(jī)應(yīng)在液位計(jì)上電20秒后,再將液位計(jì)置為工作狀態(tài),進(jìn)展測量操作。液位掌握器〔HMT-900或H-1000〕關(guān)鍵用于液位計(jì)供電和防爆安全隔離。主機(jī)可經(jīng)過RTS信號(hào)掌握〔HMT-900或H-1000〕供給液位計(jì)電源。當(dāng)RTS有效時(shí),電源將被翻開。所以,液位計(jì)電源是能夠經(jīng)過主機(jī)軟件掌握。在現(xiàn)場應(yīng)用中,主機(jī)軟件工作時(shí)序通常應(yīng)遵照以下多個(gè)步驟。在開主機(jī)前,并認(rèn)真檢驗(yàn)各相關(guān)設(shè)備電源和電纜連接狀況。在開啟主機(jī)軟件時(shí),翻開對(duì)應(yīng)串行端口。使能RTS信號(hào),給液位計(jì)上電。20秒。讀液位計(jì)對(duì)應(yīng)參數(shù),然后將液位計(jì)置為工作狀態(tài)。此時(shí),主機(jī)可進(jìn)入正常輪訓(xùn)、統(tǒng)計(jì)、顯示、報(bào)警等工作。主機(jī)軟件關(guān)鍵工作是經(jīng)過RS485總線和各個(gè)液位計(jì)進(jìn)展DGL格式數(shù)據(jù)包通信。所以,通信時(shí)1時(shí),必需保持接收狀態(tài)。在設(shè)計(jì)從機(jī)電路時(shí),應(yīng)確保從機(jī)在上電時(shí)不能消滅對(duì)總線占用(發(fā)送狀態(tài)),哪怕是很短時(shí)間。以免增加系統(tǒng)功耗,影響其“本質(zhì)安全”性能。求數(shù)據(jù)包時(shí),才進(jìn)入發(fā)送狀態(tài)。主機(jī)發(fā)送接收狀態(tài)切換由其串口DTR信號(hào)掌握,可稱為MDTR。一樣,從機(jī)也有一個(gè)掌握信號(hào),稱為SDTRDTR無效(TTL電平,MDTR為高電平)時(shí),端口處于發(fā)送狀態(tài)。當(dāng)DTR有效(MDTR為低電平)時(shí),端口處于接收狀態(tài)。據(jù)此,可繪制出數(shù)據(jù)包傳輸時(shí)序圖以下:MDTR懇求數(shù)據(jù)包SDTR應(yīng)答數(shù)據(jù)包時(shí)刻: T1T2 T3T4T5T6 T7T8T1MDTR置為高電平(DTR無效),預(yù)備發(fā)送數(shù)據(jù)。T2時(shí)刻,主機(jī)發(fā)送“懇求(T3時(shí)刻)后,隨即要將MDTR變?yōu)榈碗娖?T4時(shí)刻),釋放總線,等候接收“應(yīng)答數(shù)據(jù)包在對(duì)應(yīng)從機(jī)(液位計(jì))T5時(shí)刻,從機(jī)將SDTR置為高電平,掌握總線。然后,在T6(T7時(shí)刻)后,隨馬上SDTR置為低電平,釋放總線。這么一次數(shù)據(jù)包通信就完成了。對(duì)以上各時(shí)刻時(shí)序要求能夠描述為:T2-T1=1.9~3.5ms,T3-T2=10~60ms,T4-T3=1~3.5ms,T5-T3=8~18ms,T6-T5=1.9~3.5ms,T7-T6=10~60ms,T8-T7=1~3.5ms。一次通信最長時(shí)間將掌握在160ms以內(nèi)。兩次數(shù)據(jù)包通信間隔應(yīng)≥20ms。錯(cuò)誤和故障,進(jìn)展冗錯(cuò)設(shè)計(jì)。命令定義命令0x01 通信協(xié)議識(shí)別碼懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):3byte 字符串“DGL”44,47,4C命令0x02 地址更改懇求數(shù)據(jù):1byte NewAdr-0x80應(yīng)答數(shù)據(jù):1byte NewAdr-0x80注:應(yīng)答數(shù)據(jù)中仍保存為原來地址不變命令0x03,0x4 保存命令0x05 讀廠家名懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):10byte 字符串“ALMRTLtd.”命令0x06 讀產(chǎn)品類型懇求數(shù)據(jù):0byte 無應(yīng)答數(shù)據(jù):8byte DT0~7浮子數(shù)溫度測點(diǎn)外管類型測桿材料安裝形式防爆類型 x x命令0x07 讀產(chǎn)品桿長懇求數(shù)據(jù):0byte 無應(yīng)答數(shù)據(jù):2byte DT0,DT1基數(shù):2mm,范圍:≤20m,GL=(DT1*128+DT0)*2mm命令0x08 讀溫度測點(diǎn)位置懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):5byte DT0~4 對(duì)應(yīng)于VT1~5位置相對(duì)桿長百分?jǐn)?shù)0~99。命令0x09 讀產(chǎn)品序列號(hào)懇求數(shù)據(jù):0byte 無應(yīng)答數(shù)據(jù):4byte 具體待定,存于MCUEEPROM中。命令0x0A 讀電路和程序版本號(hào)懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):2byte DT0電路版本,DT1程序版本命令0x0B 讀零點(diǎn)校準(zhǔn)參數(shù)數(shù)據(jù)懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):8byte DT0~7Level1Zero=((DT2*128+DT1)*128+DT0)*0.01mm DT3<>0,數(shù)據(jù)求反Level2Zero=((DT6*128+DT5)*128+DT4)*0.01mm DT7<>0,數(shù)據(jù)求反命令0x0F 設(shè)置產(chǎn)品工作狀態(tài)懇求數(shù)據(jù):1byte DT0=0,產(chǎn)品工作;DT0<>0,產(chǎn)品待機(jī);應(yīng)答數(shù)據(jù):1byte 和懇求數(shù)據(jù)一樣。命令0x10 讀液位1〔Level1,油面〕數(shù)據(jù)懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):3byte DT0,DT1,DT2區(qū)分率:0.01mm,范圍:30mm~20m(0x1E8480,DT2=7A,DT1=09,DT0=0)。DT2=DT1=DT=7F時(shí),液位上溢出;Level1=((DT2*128+DT1)*128+DT0)*0.01mm命令0x11 讀液位2〔Level2,界面〕數(shù)據(jù)懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):3byte DT0,DT1,DT2Level2=((DT2*128+DT1)*128+DT0)*0.01mm命令0x12 讀兩個(gè)液位數(shù)據(jù)懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):6byte DT0,DT1,DT2, DT3,DT4,DT5Level1=((DT2*128+DT1)*128+DT0)*0.01mmLevel2=((DT5*128+DT4)*128+DT3)*0.01mm1值,提升了通信速度。0x13~0x14保存命令0x15 讀各測桿測點(diǎn)溫度(只有一個(gè)溫度測點(diǎn))懇求數(shù)據(jù):0byte應(yīng)答數(shù)據(jù):10byte DT0~9區(qū)分率(刻度):KD=0.015625℃(2^-6),范圍:-56~130℃VT1=(DT1*128+DT0)*KD-56,VT2=(DT3*128+DT2)*KD-56,……命令0x16 保存1Byte16進(jìn)制數(shù)表示,數(shù)據(jù)包中地址〔ADDRESS〕字1Byte,HT-1000(主機(jī))uPSD3200(從機(jī))發(fā)送數(shù)據(jù)時(shí),數(shù)據(jù)包中地址〔ADDRESS〕字段MSB1,由于此時(shí)數(shù)據(jù)包要抵達(dá)地址是從機(jī),從機(jī)地址范圍為:0x80~0xFD,即:MSB=1。主機(jī)(HT-1000沒有地址〔可能理論上應(yīng)當(dāng)有,主從機(jī)通信過程是這么:主機(jī)不停發(fā)出4個(gè)字節(jié)數(shù)據(jù)包〔地址,命令,字節(jié)數(shù),校驗(yàn)和〕去查詢從機(jī)測量狀況,其中字節(jié)數(shù)為0,則沒有數(shù)據(jù)字節(jié),4個(gè)字節(jié)就可組成一個(gè)數(shù)據(jù)包。以下:811600178816001E84160012871600118F160019555個(gè)從機(jī),每發(fā)一個(gè)數(shù)據(jù)包,主時(shí)機(jī)等候從機(jī)回應(yīng),然后再發(fā)下一個(gè)數(shù)據(jù)包,假設(shè)等候超時(shí),則認(rèn)為通信錯(cuò)誤〔HT-1000上會(huì)顯示XX號(hào)罐通信錯(cuò)誤。假設(shè)有回應(yīng),則主機(jī)進(jìn)展數(shù)據(jù)處理,在友好人機(jī)界面16是命令字,16具體含義可查詢具體命令字信息。第三個(gè)00代表數(shù)據(jù)位是零個(gè),第四個(gè)字節(jié)是校驗(yàn)和〔這里設(shè)計(jì)協(xié)議標(biāo)準(zhǔn)是盡可能是通信字節(jié)數(shù)變少,降低信息在傳輸過程中喪失,固然也要考慮擴(kuò)展性〕一個(gè)回應(yīng)數(shù)據(jù)包以下:881608697F057A3A0223274312個(gè)字節(jié),再依據(jù)字段分一下:88 16 08 697F05 7A3A02 2327 43第一個(gè)字節(jié)88是從機(jī)地址,由于主機(jī)實(shí)行“發(fā)送---等候回應(yīng)”方法來和從機(jī)通信,而且現(xiàn)在〔除非有多個(gè)主機(jī),在了解協(xié)議數(shù)據(jù)是目標(biāo)地主機(jī)地址XX160888697F05(697F057A3A02是水位測量值,數(shù)據(jù)信息最終兩個(gè)字節(jié)232743是校驗(yàn)和。0x16DGL協(xié)議里一條命令,表示取得探棒油位,水位和溫度。其中:1NUM:數(shù)據(jù)字節(jié)數(shù)P:校驗(yàn)位命令0x17 讀實(shí)時(shí)電路參數(shù)(保存)懇求數(shù)據(jù):1byte ;0電子倉溫度,1VCC電壓,2工作狀態(tài)應(yīng)答數(shù)據(jù):2byte命令0x18~0x1F 保存命令0x20~0x2F 對(duì)外保存,用于參數(shù)設(shè)置、產(chǎn)品測試、程序更等成效。補(bǔ)充說明DGLMODBUS協(xié)議兼容性。但不確保當(dāng)這兩種協(xié)議設(shè)備掛接到同一總線上時(shí),實(shí)行MODBUS協(xié)議設(shè)備之間不會(huì)發(fā)生沖突。也不確保和以下設(shè)備兼容性:其它協(xié)議從機(jī)設(shè)備、除Modicon企

溫馨提示

  • 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論