【玩轉(zhuǎn)485】12.讀取從站數(shù)據(jù)2【連載12】
林慧玲
發(fā)布于2015-02-15 10:05
2421
0
標(biāo)簽:通訊
1.報文格式回顧
上一篇文章我向大家介紹了讀取從站設(shè)備數(shù)據(jù)的方式,并且自定義了通訊格式(報文格式),用來完成讀取從站數(shù)據(jù)的工作,當(dāng)然大家看上一篇文章中的報文結(jié)構(gòu)一定會覺得十分簡單,圖 1?1 為主站向從站發(fā)送數(shù)據(jù)的請求報文結(jié)構(gòu),圖 1?2是從站接收到主站信息后返回給主站的信息報文結(jié)構(gòu)。報文具體含義已經(jīng)在上一篇文章中給大家解釋過了,下面我就給大家把從站的程序?qū)懗鰜砣缓筮M行演示。
圖 1?1
圖 1?2
2 .程序編寫 本程序比之前的程序都復(fù)雜一些,因此我先向大家說明程序的結(jié)構(gòu),本程序結(jié)構(gòu)是主程序調(diào)用接收完成中斷,和發(fā)送完成中斷,同時接收完成中斷中調(diào)用一個專門處理如何應(yīng)答主程序請求的子程序。
圖 2?1是主程序
圖 2?1
圖 2?2所示為接收完成中斷
圖 2?2
圖 2?3到圖 2?6是子程序read
圖 2?3
圖 2?4
圖 2?5
圖 2?6
圖 2?7是發(fā)送完成中斷
圖 2?7
3.程序演示
現(xiàn)在我們用電腦向S7-200PLC發(fā)送一組報文查詢S-200PLC中VB300、VB301、VB302、VB303、VB304、VB305、VB306共7個字節(jié)數(shù)據(jù)發(fā)送報文內(nèi)容。
步:我們先給以上7個字節(jié)設(shè)定如下數(shù)據(jù)內(nèi)容。VB300 = 16#17、VB301 = 16#22、VB302 = 16#FF、VB303 = 16#F5、VB304 = 16#ED、VB305 = 16#86、VB306 = 16#0F。如圖 3?1所示
圖 3?1
第二步:設(shè)定要發(fā)送的報文如圖 3?2所示
圖 3?2
第三步:主站發(fā)送查詢請求并接收到從站返回的數(shù)據(jù)如圖 3?3所示。
圖 3?3
作者:馬樂
版權(quán)為技成所有,未經(jīng)同意,盜取必究!