時間:2020年12月05日 分類:電子論文 次數:
摘要:采用ADS通訊協議,以VisualStudio和TwinCATPLC控制軟件為開發平臺,通過實驗驗證通訊模塊的基本配置以及通信性能的穩定性,實踐證明,該種通信方式符合軟件通信的要求,系統性能穩定,為后續的上位機軟件開發奠定了基礎。
關鍵詞:EtherCAT;ADS通信;TwinCATPLC
1EtherCAT協議EtherCAT(EthernetforControlAutomationTechnology)是一種基于以太網的實時工業現場總線通信協議和國際標準。它具有高速和高數據有效率(dataratio)的特點,支持多種物理拓撲結構。[1]符合該總線的主站采用標準的以太網控制器,通過5類非屏蔽雙絞線進行傳輸交互,物理層上使用網絡接口卡集成功能。EtherCAT主站通過純軟件實現,一種是倍福公司自行研發的TwinCAT自動化編程開發軟件,另一種是基于NDIS的主站以及基于實施擴展的主站[2]。
2ADS通訊協議
2.1ADS概述
TwinCAT是一款由BECKHOFF自主設計開發的軟件,有控制編程以及可視化操作的功能。不單單適用于Windows操作系統而且還不需要其他的硬件來支持,將非實時系統改變為實時性系統,適用于高性能、高精度的控制任務。TwinCAT可通過對象類別擴充組件或者動態鏈接庫等方式訪問自主設計的人機界面,而且可通過傳輸控制協議/網際協議等實現遠程訪問。
ADS通訊是通過調用動態鏈接庫文件的方式實現TwinCAT控制器與上位用戶界面通信的協議[3]。TwinCAT系統中,包括TwinCATPLC、TwinCATNC、Windows應用程序等的工作模式類似于硬件設備,相互之間可以獨立工作。模塊之間的信息交換通過ADS完成。ADS(AutomationDeviceSpecification)自動化設備規范,為設備之間通訊提供路由[3]。
2.2ADS通訊方式ADS以傳輸控制協議/網際協議為基礎,相當于網絡通訊協議的應用層。屬于ADS設備通訊使用多種方式,每一種方式都有它獨特的亮點。異步方式(Asynchronous)——Client一邊持續自己的輸出工作,一邊向Server發送傳輸請求。Server把請求處理后,使用Call-back函數的方式重新發給Client。通知方式(Notification)——Client向Server發送傳輸請求,Server使用Call-back函數的方式不斷向Client發送響應,直到Server中止這個請求。
2.3上位機和PLC接口TwinCAT提供多種接口組件用于ADS通訊,ADS.NETComponent、ADS-OCX、ADS-DLL。TwinCATADS訪問的其中一種方式是地址方式——一個PLC變量的地址由兩部分組成:分組索引和偏移量索引:分組索引是用來區別寄存器的類型,是一個常量,。偏移量索引是變量的偏移地址,可以確定在PLC中為變量的地址。另一種方式是變量名方式——在TwinCATPLC程序里邊中任意變量都有一個專屬句柄,使用變量名訪問變量首先捕獲它的句柄,然后讀寫操作,最后釋放句柄。
3通訊模塊設計
總體設計:設計使用VS2017的MFC模塊,實現實驗板通過記數方式點亮LED流水燈以及按鍵顯示的設計面板。設計面板中用到的PLC程序中任意變量以文件方式存放在上位機中,根據變量名稱獲取變量地址信息。為了得到相應PLC變量的句柄,使用接口函數“AdsSyncReadWriteReq”,上位機軟件對PLC進行數據讀寫。在運行時需要將PLC程序與開關量模塊的物理地址完成關聯,在TwinCAT的SystemManager下將I/O變量實現鏈接。實驗運行界面。
通信論文范例:面向5G通信的射頻關鍵技術研究
結束語
為了實現上位機軟件與實驗板通信端口的數據傳輸,通訊程序以VisualStudio作為開發平臺,設計了基于C++程序與TwinCATPLC程序之間的傳輸模塊,采用ADS通訊協議通信。通過實驗證明,通訊模塊設計合理,數據傳輸正常、效率高,能夠實現人機界面以及控制系統的數據交互,為后續的上位機軟件設計奠定了基礎。
參考文獻
[1]郇極,劉艷強.工業以太網現場總線EtherCAT驅動程序設計及應用[M].北京:北京航空航天大學出版社,2010.
[2]吳麗菲.EtherCAT在實時系統下的實現[D].廣州:華南理工大學,2014.
[3]Beckhoff.嵌入式PC從入門到精通[R].德國倍福自動化有限公司,2009.
作者:姬寧博李高益王冠