999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Modbus/TCP的伺服驅動器控制研究及測試軟件的開發

2014-06-09 12:32:52阮軍元王德成邵晨曦
機電產品開發與創新 2014年1期

阮軍元,王德成,程 鵬,邵晨曦

(中機生產力促進中心,北京 100044)

基于Modbus/TCP的伺服驅動器控制研究及測試軟件的開發

阮軍元,王德成,程 鵬,邵晨曦

(中機生產力促進中心,北京 100044)

要實現自動控制系統各設備間信息和數據的高速交換,快速方便的通訊協議變得尤為可貴。Modbus通訊協議是免費提供的一種全開放式的協議,結合TCP/IP協議形成的Modbus/TCP協議具有幀錯能力強、數據傳輸量大、實時性好、開放型好等特點,特別適合一些數據傳輸要求速度快、信息量大的場合。論文以科爾摩根伺服驅動器為控制對象,結合C#編程語言,并利用Modbus/TCP協議,實現PC對驅動器的直接控制,這樣可以省去一些中間元器件,為一些工業控制提供了一種可靠的方便的控制方法,減少控制成本及后續的維修環節。

Modbus/TCP;驅動器;C#

0 引言

網絡技術的快速高效性使得其應用越來越廣泛,由于其數據傳輸的實時快速低成本性,逐漸在工業控制領域得到應用,形成了當前的工業以太網技術。自20世紀70年代誕生以來,Modbus在工業領域的過程控制和數據采集中得到廣泛應用,逐漸形成了一種工業標準。目前工業中常用的Modbus通信分為兩種,一種是經由RS-232C兼容串行接口(或通過RS232/485轉換器轉換成RS485接口)組成Modbus網絡進行通信,另一種通過以太網結合TCP/IP協議組成Modbus/TCP網絡進行通信。

本文以Modbus/TCP為例,用C#編寫調試軟件,控制科爾摩根伺服驅動器實現一些運動控制。一般情況下伺服驅動器的控制需要利用可編程控制器來實現,這主要是基于可編程控制器的操作性強、控制方便等優點。科爾摩根驅動器集成了一些可編程功能,再加上以太網通信口的集成,可以方便的直接利用PC來控制,而不用通過可編程控制,這樣可以大大減少數據的傳輸時間,節省成本,并減少了維修環節。

1 Modbus/TCP通訊協議

Modbus是標準協議,在TCP/IP以太網上傳輸,支持Ethernet II和802.3兩種幀格式。圖1所示,Modbus/ TCP數據幀包含報文頭、功能代碼和數據3部分[1,2]。

數據幀格式如下:

事務標識:該Area中的數據可以由用戶自主設定,且事務處理的配對由事務標識決定,例如每一幀的序號放在事務標識中。

圖1 Modbus/TCP格式Fig.1 Format of Modbus/TCP

協議標識:該標識的Area用于整個系統內的多路復用(多種協議),而當系統使用的是Modbus協議時,則該值為0。

長度:該Area中的2字節數據表示后續區域的字節個數,包括單元標識、Data啟動位置和協議數據。

單元標識:識別遠程單元(從單元),方便單元路由功能。當使用這片區域時,服務器的響應幀內容必須使用相同的單元標識,來返回該區域的數據。

協議數據包括Function和 Data兩部分。Function:讀多個寄存器的功能碼為0xAA,寫多個寄存器的功能碼為0xFF,Function占用大小為1Byte。設計中讀寫功能在Modbus Function的定義如表1所示。

表1 讀寫寄存器功能碼Tab.1 Function of read and write registers

數據包括兩大部分,即起始位置(地址)和所要讀的字節數 (所要寫的字節數)。起始位置占用大小為 2字節;讀的字節數和寫的字節數為2,占用大小為2字節。Data中的起始位置會與Head中啟動位置進行匹配檢驗。

本文以寫入和讀取伺服驅動器寄存器為例,按上述數據幀格式編寫相應代碼,實現PC與伺服驅動器的數據傳輸。

2 Modbus/TCP在伺服驅動上的應用

一般的控制基本上以讀多個寄存器和寫多個寄存器為主,通過讀寫一些數據達到監控的目的。因此功能碼使用到的主要為03和16,以伺科爾摩根服驅動器的控制為例,電機的控制主要包括伺服的啟停、運動參數的設置、運動模式的選擇和運動任務的啟停等。驅動器內存給不同的控制單元和參數設定了內存地址,這樣伺服的控制就簡化為對不同的內存單元的讀寫操作,再加上TCP/IP數據傳輸的快速性,通過PC控制伺服電機運動及相應數據的采集變得方便而快速。

AKD伺服驅動器一般都會有RJ-45接口 (圖2中X11),通過雙絞線連接至PC的以太網接口,之后需要設置驅動器的IP地址以實現兩者之間的數據傳輸,按照驅動器的要求,使用靜態IP地址,IP地址為192.168. X1.X2,X1和X2通過旋轉開關來設,范圍為0~9。設定結束后,即可通過IP地址和Modbus端口號及相應的協議碼實現PC與驅動器之間的數據交換。

下面以PC控制伺服啟停和輸入伺服運動時間參數的讀寫為例,來說明Modbus/TCP協議格式及其控制方式。

圖2 AKD伺服驅動器Fig.2 AKD Servo Drive

表2 驅動器使能和運動時間的內存地址分配表Tab.2 Memory address allocation table of drive enable and movement time

按照Modbus/TCP協議的格式,則伺服使能的數據幀為:

寫入內容為1,表示將內存單元置位,相對應驅動器的動作為驅動器使能。驅動返回的數據幀中起始地址和寄存器數與驅動器收到的一致,則數據寫入成功。

讀取伺服運動時間的數據幀為:

存儲時間的寄存器數為2,地址754大于256,轉化后為2×256+242,因為為讀取數據,則Send數據幀中不用寫字節數和后續內容。從Receive數據幀中可以看出后四位為讀到的數據,即伺服運動時間為10ms,與設置的時間數據一致,表明數據讀取成功。

3 Modbus/TCP的C#編程

以下是用C#編程的主要代碼,首先建立通訊,通過點擊界面上不同的按鈕,將其對應的數據幀發送給伺服驅動器,即PC向驅動器傳輸Send對應的數據幀,當驅動器返回Receive數據幀時,則表明數據傳輸成功,伺服驅動器執行相應的動作。

程序基本流程如圖3所示。

圖3 Modbus/TCP通訊基本流程圖Fig.3 The basic flowchart of Modbus/TCP communication

建立套接字并建立PC與驅動器連接的函數如下[3]:數據幀發送接收函數這里不贅述,即按照相應的數據幀格式建立數組,調用上述連接函數后,依次將數組中的數據傳輸給驅動器,Modbus/TCP協議進行數據的轉換提取后,若無錯誤且反饋成功,驅動器相應寄存單元內容改變,驅動器執行相應的命令或PC獲取相應的數據,實現數據的交互。測試界面如圖4所示,點擊按鈕驅動器動作和收發數據無誤。

4 結論

圖4 測試軟件界面Fig.4 Test Software Interface

通過 C#編程測試,PC可以直接控制驅動器,如:運動參數的設置,運動任務的設置,運動的啟停等,實現過程方便快捷。利用驅動器自身的運動控制命令實現伺服電機的控制,這樣大大簡化了伺服電機的控制流程,不用通過PLC來建立運動包絡并調用PTO等運動任務向導來發送脈沖控制驅動器了,而是直接利用伺服本身的運動控制,減少了中間環節,降低了控制成本。

[1]康向軍.基于modbus協議的數據讀寫[J].數字技術與應用,2013,2.

[2]白焰,等.基于VC的modbus協議通信測試軟件的實現[J].現代電力,2008,6.

[3]李江全,等.Visual C#.NET串口通訊及測控應用典型實例[M].北京:電子工業出版社,2012.

The Control Research of Servo Drive and the Development of Test Software Based on Modbus/TCP

RUAN Jun-Yuan,WANG De-Cheng,CHENG Peng,SHAO Chen-Xi
(China Productivity Centre for Machinery,Beijing 100044,China)

In order to realize the high speed exchange of information and data between automatic control equipment,a fast and convenient communication protocol has become particularly valuable.Modbus protocol,an open and free protocol,becomes the Modbus/TCP protocol combined with TCP/IP protocol.The new Modbus/TCP has the characteristics:fine frame error ability,a larger amount of data transmission, good real-time and openness etc,which especially is suitable for the requirements of high speed,larger amount of information transmission. In this paper,I will take Cole Morgan servo drive as the control object,combining with the C#programming language and the Modbus/ TCP protocol,to realize the direct control of PC to drive,which can save some intermediate components,provide a reliable and convenient method for some industry control,also reduce the control cost and the subsequent repair link from another point.

Modbus/TCP;Drive;C#

TP311.52

:Adoi:10.3969/j.issn.1002-6673.2014.01.030

1002-6673(2014)01-081-03

2012-12-26

阮軍元(1990-),男,碩士研究生。研究方向:機電一體化。

主站蜘蛛池模板: 浮力影院国产第一页| 亚洲黄色网站视频| 成人在线观看不卡| 无码中文字幕精品推荐| 爱色欧美亚洲综合图区| 精品一区二区三区无码视频无码| 很黄的网站在线观看| 亚洲成人免费看| 97se亚洲| 日韩一二三区视频精品| 无码网站免费观看| 久久五月视频| 日日噜噜夜夜狠狠视频| 毛片免费在线视频| 精品亚洲国产成人AV| 欧美综合一区二区三区| 免费在线a视频| 五月天婷婷网亚洲综合在线| 精品1区2区3区| 国内精品久久久久久久久久影视 | 激情乱人伦| 国产爽爽视频| 日韩在线视频网站| 丰满的少妇人妻无码区| 国产一在线观看| 亚洲国产一区在线观看| jizz在线免费播放| 日韩久草视频| 国产一级无码不卡视频| 精品欧美一区二区三区在线| 精品国产一二三区| 国产精品大尺度尺度视频| 亚洲午夜国产片在线观看| 香蕉网久久| 国产精品福利在线观看无码卡| 国产精品一区二区久久精品无码| 日日拍夜夜操| 少妇高潮惨叫久久久久久| 99国产在线视频| 亚洲成aⅴ人在线观看| 国产精鲁鲁网在线视频| 国产精品无码作爱| 国产91丝袜| 国产精品yjizz视频网一二区| 这里只有精品在线| 国产欧美视频在线观看| 国产成人高清精品免费| 欧美一区二区人人喊爽| 伊人久久综在合线亚洲2019| AV老司机AV天堂| Jizz国产色系免费| 青草精品视频| 91九色国产在线| 成人中文字幕在线| 99精品伊人久久久大香线蕉| 亚洲国产精品VA在线看黑人| 日韩欧美中文字幕在线韩免费 | 亚洲人成在线精品| 亚洲精品无码AⅤ片青青在线观看| 国产91小视频在线观看| 国产精品综合久久久| 精品一区二区三区波多野结衣| 欧美一区二区啪啪| 久久人搡人人玩人妻精品| 国产精品污视频| 草逼视频国产| 国产夜色视频| 欧美日韩动态图| 蜜桃视频一区| 久久无码免费束人妻| 久草视频精品| 国产欧美视频综合二区| 亚洲成人免费看| 欧美中日韩在线| 日韩视频免费| 亚洲精品综合一二三区在线| 91精品专区国产盗摄| 五月婷婷综合色| 久久黄色一级视频| 国产成人在线小视频| 香蕉eeww99国产在线观看| 中文字幕无码制服中字|