999久久久精品国产消防器材,国产成人久久综合77777,√最新版天堂资源网在线,精品久久久久区二区8888,卡一卡二卡三乱码视频

技成培訓(xùn)網(wǎng) 技成學(xué)習(xí)APP 技成工具箱 技成企業(yè)服務(wù)

歡迎回到技成培訓(xùn)網(wǎng)

技成培訓(xùn)網(wǎng)

電工題庫(kù)寶典

技成電工課堂

PLC練習(xí)題

技成PLC課堂

變頻器故障查詢

技成PLC學(xué)吧

伺服驅(qū)動(dòng)故障查詢

技成PLC網(wǎng)校

當(dāng)前位置:技成首頁(yè) > 文章中心 > 西門子PLC > 【玩轉(zhuǎn)485】4.數(shù)據(jù)的接收2【連載4】

【玩轉(zhuǎn)485】4.數(shù)據(jù)的接收2【連載4】

林慧玲 發(fā)布于2015-02-13 15:19 2729 0 標(biāo)簽:通訊

1、報(bào)文

       在開(kāi)始具體講解PLC如何接收數(shù)據(jù)之前,我們首先要向大家介紹報(bào)文這個(gè)概念,所謂報(bào)文就是一段完整的信息,圖 1-1所示為報(bào)文的一種格式。

1.png 
圖 1-1

       在通訊的過(guò)程中無(wú)論是發(fā)送還是接收都是一個(gè)報(bào)文一個(gè)報(bào)文為單位的進(jìn)行的,發(fā)送之所以簡(jiǎn)單就是因?yàn)槲覀冎灰獙?zhǔn)備在發(fā)送緩沖區(qū)的數(shù)據(jù)一次性的全部發(fā)送出去就好,一次發(fā)送一個(gè)報(bào)文,而接收就不同了,我們要判斷一個(gè)報(bào)文的起始與結(jié)束,還要判斷接收到的這個(gè)報(bào)文是否在傳輸?shù)倪^(guò)程中因?yàn)楦蓴_等原因產(chǎn)生錯(cuò)誤。

2、單個(gè)報(bào)文的判斷方法


       如何判斷一段報(bào)文的起始與結(jié)束呢?我們常用的有兩種方法。

       通過(guò)給報(bào)文設(shè)定固定的起始字符和結(jié)束字符,只要接收到起始字符既是一段報(bào)文的開(kāi)始,只要收到結(jié)束字符既是一段報(bào)文的結(jié)束。

       第二通過(guò)空閑時(shí)間判斷,超過(guò)空閑時(shí)間沒(méi)有接收到數(shù)據(jù),我們就認(rèn)為是一段報(bào)文已經(jīng)結(jié)束,之后接收的數(shù)據(jù)就算新的報(bào)文。

       那么本文我們還是先給大家講解如何通過(guò)起始字符和結(jié)束字符來(lái)接收數(shù)據(jù)。

3、通過(guò)首尾字符判斷


  在編寫程序之前我們首先要明確我們使用的特殊位寄存器的狀態(tài),下面我們逐個(gè)按要求進(jìn)行設(shè)置,這里要注意我們統(tǒng)一使用S7-200CPU的端口0。

SMB30 = 2#00001001=16#9

2.png 
圖3-1
1)        自由口模式。第0、1位
2)        通訊速率9600bps。第2、3、4位
3)        每個(gè)字符的數(shù)據(jù)位是8位。第5位
4)        不選用奇偶效驗(yàn)。第6、7位

SMB87 = 2#11100000 =16#E0

3.png 
圖3-2
1)        不使用中斷條件作為檢測(cè)信息的開(kāi)始。第1位。
2)        不使用空閑時(shí)間方式檢測(cè)報(bào)文的開(kāi)始結(jié)束。第2、3、4位。
3)        使用結(jié)束字符檢測(cè)報(bào)文的結(jié)束。第5位。
4)        使用起始字符檢測(cè)報(bào)文的開(kāi)始。第6位。
5)        允許信息接收功能。第7位。
注:第0位為無(wú)效位不使用。

SMB88 =16# AA

用16進(jìn)制AA作為報(bào)文的起始字符,只要PLC接收到字符AA說(shuō)明一段報(bào)文的開(kāi)始。

SMB89 = 16#BB

用16進(jìn)制BB作為報(bào)文的結(jié)束字符,只要PLC接收到字符BB說(shuō)明報(bào)文接收完畢停止接收。

SMB94 = 255

SMB94定義接收緩沖區(qū)大小,此處定義為大255字節(jié)。(注:接收緩沖區(qū)是用來(lái)存放接收到的數(shù)據(jù)的區(qū)域,大255字節(jié),大家可以根據(jù)通訊情況自由定義。)

4、程序編寫

開(kāi)始程序編寫之前讓我們首先了解一下接收指令的使用。
4.png 
圖4-1
RCV接收指令有兩個(gè)管腳,TBL和PORT。

PORT:通訊端口編號(hào),如果用0端口則寫0,如果用1端口則寫1.

TBL:定義接收緩沖區(qū)的起始地址,如果TBL中寫VB100,同時(shí)接收的數(shù)據(jù)是兩個(gè)字節(jié),則VB100中的數(shù)值為2,同時(shí)VB101和VB102用來(lái)存放接收到的數(shù)據(jù)。

下面我們來(lái)看程序的具體寫法。
5.png 
圖4-2

5、接收測(cè)試
       程序我們就編寫完成了,主要是對(duì)特殊位寄存的設(shè)定,另外增加一個(gè)接收指令用于接收數(shù)據(jù)就好,下面我們用PLC接收幾組發(fā)自電腦的數(shù)據(jù),來(lái)具體了解通過(guò)起始、結(jié)束字符判斷報(bào)文的方式來(lái)接收數(shù)據(jù)的使用方法。

1)   接收測(cè)試1

       首先我們使用串口調(diào)試軟件發(fā)送一段報(bào)文16進(jìn)制的 aa 11 22 ff 23 bb一共6個(gè)字節(jié)。根據(jù)我們上面的講解,此段報(bào)文中aa是報(bào)文的起始字符,表示報(bào)文的開(kāi)始bb是報(bào)文的結(jié)束字符,表示該段報(bào)文的結(jié)束,起始字符和結(jié)束字符之間是要發(fā)送給PLC的數(shù)據(jù)內(nèi)容,當(dāng)然現(xiàn)在我們發(fā)送的數(shù)據(jù)是沒(méi)有任何含義的,如圖 5-1所示。
62617xoooz5auglhtlulh.png 
圖 5-1
  圖 5-2所示是Step7 MicroWin的狀態(tài)表監(jiān)控到的數(shù)據(jù),因?yàn)槲覀冊(cè)O(shè)定的起始地址是VB100一共發(fā)送了6個(gè)字節(jié)的數(shù)據(jù),所以數(shù)據(jù)的存放是從 VB101到VB106中。這里可能有人要問(wèn)那VB100中應(yīng)該是6啊為什么是0呢?這個(gè)主要是因?yàn)樵诮邮罩噶頡CV之前我使用的SM0.0因此當(dāng)一次數(shù)據(jù)接收完成后,就重新進(jìn)入接收狀態(tài),這時(shí)會(huì)將Vb100中的數(shù)值清空,所以VB100始終是0。
7.png 
圖 5-2
2)  接收測(cè)試2

  上面我們已經(jīng)成功使用S7-200PLC接收到了電腦發(fā)送的數(shù)據(jù)現(xiàn)在我們用電腦發(fā)送一組沒(méi)有起始字符的報(bào)文看看會(huì)出現(xiàn)什么情況,此次我們發(fā)送數(shù)據(jù)dd 11 22 ff 23 bb如圖 5-3中內(nèi)容所示。
62619c8pxoqj1tjpdynyz.png 

圖 5-3
通過(guò)圖 5-4我們可以發(fā)現(xiàn)PLC沒(méi)有接收到任何數(shù)據(jù),原因就是PLC沒(méi)有檢測(cè)到起始字符
9.png 
圖 5-4
3)  接收測(cè)試3

  本次我們發(fā)送給PLC的數(shù)據(jù)既有起始字符,也有結(jié)束字符,只是在結(jié)束字符后我們?cè)僭黾?個(gè)字節(jié)的數(shù)據(jù),看看會(huì)出現(xiàn)什么情況,這次我們發(fā)送aa 11 22 bb 23 45。
62619rlldvvtppamamm3t.png 
圖5-5
  由圖 5-6我們可以發(fā)現(xiàn)電腦發(fā)送的數(shù)據(jù)PLC只能接收到aa 11 22 bb,而23 45這兩個(gè)字節(jié)由于出現(xiàn)在報(bào)文的結(jié)束字符之后PLC就無(wú)法識(shí)別了。
1.png 
圖 5-6

作者:馬樂(lè)
版權(quán)為技成所有,未經(jīng)同意,盜取必究!

若有收獲,就點(diǎn)個(gè)贊吧!

文章來(lái)源于網(wǎng)絡(luò)及文獻(xiàn)如有侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)
分享到:

微信掃一掃分享

閱讀與本文標(biāo)簽相同的文章

通訊

相關(guān)推薦

最新文章 熱門文章
最新課程 免費(fèi)課程
PLC資料下載 電工電氣資料下載
應(yīng)用新秀
變頻器故障代碼查詢APP
伺服故障代碼查詢APP
技成
手機(jī)APP
熱門標(biāo)簽