国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

PLC在自由口通訊中實現多地址指針接收數據的方法

發布時間:2010-12-7 21:27    發布者:designer
關鍵詞: PLC , 指針
1 引言

西門子S7-200PLC由于其體積小,可靠性高,通訊功能強大等特點,在工業控制領域得到廣泛的應用,使用S7-200PLC高性價比的自由口通訊協議實現人機界面靈活方便。目前S7-200PLC接收計算機指令數據主要有兩種方法:第一種方法是使用PLC自帶的RCV指令來接收計算機數據;第二種方法采用PLC提供的“接收字符中斷”方式,將SMB2(自由口接收字符緩沖區)定義指針,使用指針接收數據。

使用“RCV"指令接收數據的方法雖然簡單,但在接收大量數據的時候每次都要依次接收,大大降低了數據傳輸效率。在本實驗室的一套機電一體化控制系統中,人機界面設計要求是:界面可以向PLC寫入QB0、QB1、QB2、傳感器采樣周期、一個判斷指令、AQ0、AQ1等不同指令數據。若一次上位機寫指令僅僅是控制QB0.3的啟動,為了寫入QB0則需要將9 B的數據全部發送,由于PLC內接收數據是用“RCV”指令,必須將9 B的數據依次存儲,這樣會造成數據傳輸線路中的時間過長產生延時,降低數據傳輸的效率,甚至導致誤碼出現,顯然這種使用“RCV”接收大量數據的方法不太適合。

使用PLC提供的“接收字符中斷”方式,將SMB2(自由口接收字符緩沖區)定義指針,使用指針接收數據。此方法若僅僅定義一個指針,其效果和“RCV”指令是一樣的。但此方法由于其使用起來比較靈活,故本文設計了一種多地址指針接收數據的方法,即在計算機向PLC寫入數據時,僅寫入指針判別的代號和對應數據就可完成上位機對下位機的寫指令,不同的代號對應不同的地址,與以往使用“RCV”指令相比,有效地減少了寫指令的數據,提高了通訊效率。本文在設計PLC與上位機的串口通訊中設計了此種方案,尚未見其他同類文章使用。

2 指針判別

在PLC與計算機的自由口通訊中,為消除“RCV”或單指針接收計算機數據帶來的大數據流,本文在計算機每次向PLC發送指令時,第一個字節總是模式的代號,從第二個字節開始才是指令數據的內容。在PLC接收數據時,第一個數據進入“自由口接收字符緩沖區”SMB2時,PLC通過“選擇指針”最先接收的是指針判別的代號,通過接收代號的數值比較來判斷該指令數據對應的是哪種數據,判斷完成后定義一個地址指針接收并存儲這種數據的內容。不同的指針判別代號對應不同的地址指針,因此計算機每次寫入PLC指令時發送的指令數據都是由兩部分構成:第一部分為指針判別代號,第二部分為指令數據的內容。指針判別過程是PLC內接收到判別代號后進行數值比較。指針判別的意義就是通過一個總指針接收模式代號,用不同模式代號再定義多個指針完成不同種類的指令數據的接收與存儲。




3 具體應用方案

在設計本實驗室的一套電液伺服控制系統中,上位機的人機界面使用VB 6.0編程,下位機的通訊模式為自由口通訊。人機界面設計要求:界面可以向PLC寫入QB0、QB1、QB2、傳感器采樣周期、AQW0、AQW2等不同指令數據,PLC在定時中斷內使用XMT指令周期地向上位機發送變量存儲器VB1~VB21中的待監視數據(包含PLC中的數字量與模擬量)。由于在設計中上位機寫入PLC指令數據種類較多,其中包括定時中斷的時間設置、狀態位值的寫入、模擬量擴展模塊的輸出等,故本文的模式選擇可以將種類不同的指令數據用多個指針接收并存儲。表1是本設計PLC程序的部分地址分配表,以便結合PLC程序來說明多地址指針方案的具體實現方法。

SBR_0子程序初始化:

網絡1:在子程序中定義中斷事件。








INT_0接收字符中斷事件中采用指針判別:

網絡1:指針代號接收存儲于VB22。




網絡2:啟動指針1,接收數據寫入VB24,用于啟動/停止XMT(0啟動,1停止)。




網絡3:啟動指針2,接收數據寫VB26,VB27,VB28,用于寫入QB0,QB1,QB2。




網絡4:啟動指針3,接收數據為寫入定時中斷的時間設置SMB34。




網絡5:啟動指針4,接收數據賦值給PLC模擬量輸出AQW0。




網絡6:啟動指針5,接收數據賦值給PLC模擬量輸出AQW2。




INT_1定時中斷事件中PLC發送監視數據:

網絡1:通過VB24接收的數據控制XMT的“啟/停”動作,進而控制PLC向計算機發送數據。




4 注意要點

由于在本設計中PLC每次接收數據,第一個字節“指針代號”進入SMB2時,在一次中斷事件內,指針代號的數值也存儲在每個指針對應的第一個存儲地址中,因此每個指針接收數據時從第2個字節起才是指令數據的信息內容,第一個字節都是對應該指針的代號,否則會出現數據傳輸錯誤。在PLC程序設計時需要為每個指針預留第一個存儲地址來存儲該指針的代號。

故上位機每次向PLC寫指令時,第一個數據內容是指針代號,通過上位機程序中直接賦值即可實現;從第2個數據開始為上位機的控制指令。

5 結 語

本設計方案已在實驗室機電一體化控制系統的人機界面中成功地應用。系統運行穩定,大大減少了與上位機操作指令無關的數據傳輸,可精確高效地將上位機指令數據寫入目標地址,有效解決了串口通訊中出現因大量數據傳輸而造成的延時。
本文地址:http://m.qingdxww.cn/thread-44792-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲国产精品成人综合色在线婷婷| 亚洲动漫第一页| 在线视频中文字幕| 世界上第一个得抑郁症的人是谁| 亚洲欧美自拍明星换脸| 日韩福利在线| 欧美性88xx| 四虎伊人| 双性大奶肉文| 一人上面2人的小说| 阿片在线播放| 两个人的视频免费| 香蕉动漫库| 亚洲干综合| 欧美在线免费播放| 香蕉视频在线观看网址| 婷婷激情亚洲| 在线观看视频免费入口| 国产美熟女乱又伦AV | 不卡一区二区高清观看视频| 免费在线观看的毛片| 中文字幕伊人香蕉在线| 欧美亚洲h在线一区二区| 日本无吗免费一二区| 亚洲国产青草| 亚洲国产欧美另类| 国产精品爽爽久久久久久蜜桃网站| 全身无赤裸裸美女网站| 日韩区欧美区| 亚洲国语在线视频手机在线| 色综合a| 中文字幕一二三四| 一二三四影院网在线观看免费 | 亚洲日韩aⅴ在线视频| 在线天堂新版在线观看| 在线播放91| 久久黄色免费网站| 亚洲色综合中文字幕在线| 亚洲欧洲久久| 视频二区 素人 欧美 日韩| 天堂在线视频|