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

軟PLC開發平臺與EtherMAC接口技術研究*

2015-11-02 11:10:42孫好春張承瑞胡天亮
組合機床與自動化加工技術 2015年3期
關鍵詞:二次開發功能

孫好春,張承瑞,胡天亮

(山東大學a.機械工程學院;b.高效與潔凈機械制造教育部重點實驗室,濟南 250061)

軟PLC開發平臺與EtherMAC接口技術研究*

孫好春a,b,張承瑞a,b,胡天亮a,b

(山東大學a.機械工程學院;b.高效與潔凈機械制造教育部重點實驗室,濟南 250061)

為提升基于EtherMAC工業實時以太網平臺的運動控制系統開發效率,提出了一種可使用IEC 61131-3編程語言在該平臺下開發運動控制系統的方法。通過研究開放式軟PLC開發平臺CoDeSys在Windows CE 6操作系統下的二次開發技術,結合EtherMAC的從站首節點定時觸發機制,設計一種以外部事件機制和內核對象事件機制實現程序同步的EtherMAC組件。并以開發數控繞線機的控制系統為例,對該組件的可行性和性能進行驗證,結果表明其能夠滿足控制系統的功能要求,并有效地提高開發效率。

軟PLC;EtherMAC;工業以太網;運動控制;CoDeSys;IEC 61131

0 引言

由PLCopen組織推行的IEC 61131-3編程語言以其功能標準化,開發效率高等特點成為工業控制系統開發領域的事實標準語言[1]。相比于傳統的PLC編程語言,IEC 61131-3提高了程序復用性并拓寬了編程語言的應用范圍,可滿足運動控制等領域的功能需求[2]。軟PLC是用純軟件實現PLC的功能,不限于特定的硬件平臺,因此具有良好的拓展性,以IEC 61131-3作為編程語言[3-4]。EtherMAC(Ethernet for Manufacture Automation Control)是山東大學數控技術研究中心針對運動控制應用,自主研發的工業實時以太網[5-6]。為能夠使用IEC 61131-3語言開發采用EtherMAC作為運動控制總線的運動控制系統,通過研究軟PLC開發平臺CoDeSys在Windows CE 6下的二次開發技術,設計了EtherMAC組件實現CoDeSys與EtherMAC之間的數據交互。然后以數控繞線機控制系統的開發過程為例,對該組件的功能進行驗證。

1 軟PLC開發平臺

開放式的軟PLC開發平臺,由Runtime和用于PLC程序開發的IDE(Integrated Development Environment,集成開發環境)和兩部分組成。Runtime為可運行在多種實時系統上的軟件模塊,通過執行IDE生成的PLC任務文件實現控制功能。

1.1 CoDeSys簡介

CoDeSys是德國3S公司的開放式軟PLC開發平臺,支持IEC61131-3的五種編程語言:順序功能圖(SFC)、功能塊圖(FBD)、梯形圖(LD)、結構化文本(ST)和指令表(IL)[4]。此外CoDeSys還內置有符合PLCopen標準規范的運動控制功能塊庫。

CoDeSys的IDE名稱也為CoDeSys,它和運行于目標機的Runtime組成一個完整的開放式PLC開發平臺。Windows CE下的Runtime本質為一個應用程序,可通過底層驅動程序訪問底層硬件和外部總線,運行原理如圖1所示。將CoDeSys生成的界面文件和任務文件下載到目標機之后,Runtime即可通過解析這些文件實現控制功能。

1.2 CoDeSys的OEM組件二次開發

CoDeSys的OEM組件是一種面向設備制造商的二次開發模塊,其開發過程如圖2所示。首先使用CoDeSys的IDE定制新的OEM組件接口生成Library文件和M4文件。CoDeSys的IDE可通過加載Library文件使用該OEM組件。M4解析器將M4文件解析生成文件名分別以DEF和ITF結尾的C語言頭文件,其中包含該組件的待實現函數接口及其之間的依賴關系,然后可使用Visual Studio編程實現接口的具體功能并生成相應的程序模塊。在Windows CE下這種程序模塊以DLL(Dynamic Link Library,動態鏈接庫)的形式存在。這樣Runtime在解析由CoDeSys調用新組件的Library生成的任務文件時,會調用相應的DLL程序模塊實現相應的具體功能。

圖2 CoDeSys的OEM組件二次開發流程圖

2 EtherMAC組件設計

2.1 EtherMAC簡介

EtherMAC工業以太網的定時和同步機制均由從站實現,這種機制不要求主站具有高精度實時定時器。主站只需在下一個總線同步周期到來之前向從站下發新的通信數據,即可保證通信的實時性和準確性[7-8]。

2.2 組件的接口設計

一般現場總線的通信周期和同步機制由主站即控制器進行控制,因此在CoDeSys上開發這類總線的組件,通常使用高精度周期性任務控制總線數據的周期性收發。而對于EtherMAC,如果主站也采用高精度周期性任務控制數據收發,那么這種不關聯的主從站雙定時機制會帶來增大數據處理延遲的問題。具體分析如圖3所示。

圖3 雙定時機制產生的延遲時間分析圖

假設主站和從站之間以時間T進行周期性數據交互,那么兩者的定時周期也都為T,相鄰兩個定時周期開始時間為t1和t2,從站首節點向主站發送數據之后,主站并不是立即處理數據,而是延遲一段時間Δt之后,在主站新的定時周期開始時才從硬件緩存中讀取數據包進行處理。

圖4 EtherMAC組件的程序同步機制順序圖

Δt的大小由公式1確定。其中tu是微小的網絡數據傳輸時間,在數據傳輸速率、數據量和網線長度一定時該值為固定值。因此Δt時間主要取決于t1和t2之間的時間差值,最大值可接近定時周期T。主站在Δt時間內并沒有進行有效的工作,而t1和t2為不確定的隨機時間,因此Δt的大小也具有隨機性的。

用事件觸發機制代替主站定時機制可消除Δt,即主站在接收到從站反饋數據之后,立刻觸發CoDeSys的Runtime中的任務進行數據處理。EtherMAC組件正是基于該原理設計的,其利用CoDeSys的OEM組件二次開發技術實現,具體的同步原理如圖4所示。

EtherMAC驅動是一個運行在NDIS(Network Driver Interface Specification)中間層和協議層的驅動。中間層部分可以直接操作以太網卡的數據收發,保證數據收發的實時性和可靠性。協議層向外部提供操作接口,并按照EtherMAC協議實現對網絡數據封裝和解析。Ether-MAC組件內運行EtherMAC主站線程,而Runtime內運行普通任務和外部事件任務。運行之前需要注冊一個CoDeSys外部事件EVENT_EtherMAC和一個Windows CE內核對象事件EVENT_TASK_FINISH。

Runtime啟動時,首先對EtherMAC組件和驅動進行初始化。之后從站進入運行狀態,并周期性地向主站發送數據。EtherMAC主站線程被反饋數據激活后,根據接收到的數據更新各個子模塊的接收數據區并觸發EVENT_EtherMAC。由于外部事件任務優先級被設置為最高,此時Runtime將切換到外部事件任務中執行。在外部事件任務中可以加入開發者設計的子程序,實現運動控制、邏輯控制等功能。外部事件完成任務之后更新EtherMAC組件內各子模塊的發送數據區,并觸發事件EVENT_TASK_FINISH通知EtherMAC主站線程繼續執行,此時Runtime切換到普通任務中運行。然后EtherMAC主站線程采集各個子模塊中的發送數據區的數據,通過EtherMAC驅動向從站發送控制數據。至此一個通信周期完成,EthermMAC驅動繼續等待下一個周期從站數據的到來。

3 實例驗證

通過EtherMAC組件,即可在CoDeSys上使用IEC 61131-3語言開發基于EtherMAC的控制系統,本文以數控繞線機的開發為例驗證該組件帶來的優勢。數控繞線機是一種用于電機線圈繞線的自動化設備,由繞線系統和機械手兩部分組成。繞線系統通過控制3個交流伺服電機實現繞線功能;機械手通過I/O開關量控制氣缸、剪切裝置和離合器,實現送線、剪線和更換模具等功能。如基于EtherMAC開發該控制系統,則從站系統可由3個用于電機控制的Elink從站模塊和6個具有8個開關量輸入點和8個開關量輸出點的IO8從站模塊組成,主站控制器采用支持觸控的Windows CE 6工控機,其上運行CoDeSys的Runtime和EtherMAC組件,結構如圖5所示。

圖5 繞線機控制系統結構圖

原有控制系統由觸摸屏與PLC或獨立運動控制器兩部分組成,兩者之間通過串口實現數據交互,開發者需要根據串口通信約定在不同的軟件開發環境下實現人機交互功能和電機繞線功能。對于基于Ether-MAC工業實時以太網平臺的運動控制系統開發,在沒有EtherMAC組件時,只能使用C/C++等高級語言完成開發該系統,這樣就不能復用原有的PLC程序代碼,因此全部代碼需要重新編寫。而使用EtherMAC組件之后,機械手控制部分可以復用已有的功能成熟的PLC部分代碼,而繞線系統的控制部分可使用CoD-eSys內部的符合PLCopen標準規范的運動控制功能塊庫完成開發,同時人機交互功能也可在同一個開發環境CoDeSys中實現,免去了串口通信。由此可見,EtherMAC組件可提高程序代碼的復用率,簡化開發過程并有效提升基于EtherMAC工業實時以太網平臺的運動控制系統開發效率。

4 結論

本文利用CoDeSys的OEM組件提供的二次開發技術,設計了針對EtherMAC工業實時以太網的Ether-MAC組件。在該組件的幫助下,開發者可以使用IEC 61131-3語言開發基于EtherMAC的運動控制系統。由于IEC 61131-3語言與傳統的PLC編程語言具有較大的兼容性,因此可以復用已有的PLC程序代碼,也使原來PLC開發工程師也有能力開發基于EtherMAC的運動控制系統。經過實例測試驗證,該組件的性能滿足控制系統的應用,并顯著提高運動控制系統的開發效率。

[1]黃延延,林躍,于海斌.軟PLC技術研究及實現[J].計算機工程,2004(1):165-167.

[2]周峰,王新華,李劍峰,等.軟PLC技術的發展現狀及應用前景[J].計算機工程與應用,2004(24):57-60.

[3]Yan Yi,Hangping Zhang.Compiling Ladder Diagram into Instruction List to comply with IEC 61131-3[J].Computers in Industry,2010,61(5):448-462.

[4]王麗麗,康存鋒,馬春敏,等.基于CoDeSys的嵌入式軟PLC系統的設計與實現[J].現代制造工程,2007(3):54-56.

[5]KeWang,Chengrui Zhang,Xinzhong Dingetal.A new realtime Ethernet for numeric control[J].2010 8th World Congress on Intelligent Control and Automation,2010:4137-4141.

[6]Felser M.Real-time ethernet-industry prospective[J].Proceedings of the IEEE,2005,93(6):1118-1129.

[7]孫好春,張承瑞,胡天亮.基于SMP的總線式軟運動控制引擎設計[J].農業機械學報,2014(3):288-292.

[8]Hu Tianliangetal.Design and application of a real-time industrial Ethernet protocol under Linux using RTAI[J].International Journal of Computer Integrated Manufacturing,2013,26(5):429-439.

[9]Boling.D.Windows CE6.0開發者參考[M].北京:機械工業出版社,2009.

[10]Iustinus Tim Avery.CoDeSys[M].Saarland:Cel Publishing,2012.

(編輯 李秀敏)

Research about Interface between Soft PLC Development Platform and EtherMAC

SUN Hao-chuna,b,ZHANG Cheng-ruia,b,HU Tian-lianga,b
(a.School of Mechanical Engineering;b.Key Laboratory of High Efficiency and Clean Mechanical Manufacturing,Shandong University,Jinan 250061,China)

In order to advance the efficiency of developing motion control system,which is based on motion controller using the EtherMAC industrial ethernet,a method is designed to realise using IEC 61131-3 programming languages to develop motion control system using this motion controller.The secondary development technique of open development platform for soft PLC CoDeSys in Windows CE 6 is researched,combined with the timing trigger mechanism decided by the first slave node in EtherMAC,a method about program synchronization is designed to establish the component for EtherMAC,whose mechanism is based on an external event and a kernel object event.Take the development of the control system of numerical control winding machine for example,to verify the feasibility and performance with this component.The result is showed that the functional requirement of the control system can be met,and development efficiency is improved much.

soft PLC;EtherMAC;industry ethernet;motion control;CoDeSys;IEC 61131

TH165;TG65

A

1001-2265(2015)03-0083-03 DOI:10.13462/j.cnki.mmtamt.2015.03.022

2014-06-17;

2014-07-22

國家重大科技專項資助項目(2012ZX04010-021-002-005)

孫好春(1986—),男,山東平度人,山東大學博士研究生,研究方向為運動控制技術,(E-mail)sunvhao@163.com。

猜你喜歡
二次開發功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
西門子Operate高級編程的旋轉坐標系二次開發
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
關于非首都功能疏解的幾點思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
Micaps3.2 版本二次開發入門淺析
西藏科技(2015年12期)2015-09-26 12:13:51
ANSYS Workbench二次開發在汽車穩定桿CAE分析中的應用
汽車零部件(2014年5期)2014-11-11 12:24:32
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 亚洲成人黄色网址| 天堂成人av| 欧美国产日韩一区二区三区精品影视| 亚洲精品另类| 五月婷婷伊人网| a级毛片免费看| 日韩区欧美国产区在线观看 | 亚洲中文久久精品无玛| 国产91透明丝袜美腿在线| 极品国产一区二区三区| 在线播放真实国产乱子伦| 久久久久无码精品| 91亚洲影院| 好吊日免费视频| 9久久伊人精品综合| 亚洲水蜜桃久久综合网站 | 成年女人18毛片毛片免费| 亚洲毛片一级带毛片基地| 亚洲精品无码在线播放网站| 亚洲欧美综合另类图片小说区| jizz国产视频| 自拍偷拍一区| 一区二区自拍| 一本大道东京热无码av| av在线5g无码天天| 国产爽歪歪免费视频在线观看| 中字无码av在线电影| 亚洲国产成人久久精品软件| 国产精品 欧美激情 在线播放| 久久精品只有这里有| a级免费视频| 欧美精品导航| 久久中文字幕不卡一二区| 欧美自拍另类欧美综合图区| 露脸一二三区国语对白| 91久久国产成人免费观看| 亚洲欧美一区二区三区麻豆| 乱人伦中文视频在线观看免费| 精品少妇人妻一区二区| 伊伊人成亚洲综合人网7777| 国产成人精品在线1区| 91精品亚洲| a级毛片毛片免费观看久潮| 91成人在线免费视频| 欧美成人一级| 亚洲欧美国产高清va在线播放| h视频在线观看网站| 日韩欧美高清视频| 日韩中文欧美| 国产福利拍拍拍| 看av免费毛片手机播放| 国产菊爆视频在线观看| 亚洲bt欧美bt精品| 国产夜色视频| 日韩欧美国产综合| 久久精品亚洲热综合一区二区| 久久综合AV免费观看| 综合成人国产| 伊在人亚洲香蕉精品播放| 色婷婷啪啪| 中文字幕久久精品波多野结| 全色黄大色大片免费久久老太| 首页亚洲国产丝袜长腿综合| 亚洲中文字幕久久精品无码一区| 日本午夜视频在线观看| 亚洲一区二区约美女探花| 三上悠亚精品二区在线观看| 美女毛片在线| 亚欧成人无码AV在线播放| 综合色区亚洲熟妇在线| 精品91在线| 亚洲福利视频一区二区| 欧美精品在线视频观看| 国产va视频| 欧美一区二区三区不卡免费| 五月婷婷亚洲综合| 91麻豆精品国产91久久久久| 视频二区国产精品职场同事| 色噜噜在线观看| 在线看片中文字幕| 第九色区aⅴ天堂久久香| 亚洲AⅤ波多系列中文字幕|