分布式時(shí)鐘是EtherCAT技術(shù)亮點(diǎn)之一,其精準(zhǔn)同步使得整個(gè)系統(tǒng)都運(yùn)行在統(tǒng)一的時(shí)鐘下,每個(gè)EtherCAT從站的同步性遠(yuǎn)小于1 us。本文將介紹引入分布式時(shí)鐘同步的原因并闡述三種同步模式。
由于EtherCAT系統(tǒng)中可能存在各從站時(shí)鐘計(jì)數(shù)不一致的現(xiàn)象,為了精確地控制從站設(shè)備何時(shí)接收輸出數(shù)據(jù)和何時(shí)提供輸入信息,確保數(shù)據(jù)傳輸的準(zhǔn)確性和實(shí)時(shí)性,EtherCAT設(shè)備系統(tǒng)需要實(shí)現(xiàn)時(shí)間同步,而引入分布式時(shí)鐘可以有效解決EtherCAT系統(tǒng)時(shí)鐘同步問(wèn)題。
EtherCAT?網(wǎng)絡(luò)中各個(gè)從站之間時(shí)鐘計(jì)數(shù)不一致的原因
時(shí)鐘偏移:由于各個(gè)站點(diǎn)啟動(dòng)順序不同,初始化流程不同,導(dǎo)致各個(gè)從站本地時(shí)鐘開(kāi)始計(jì)數(shù)的時(shí)間不一致。
時(shí)鐘漂移:受溫度,物理特性等因素影響,各個(gè)時(shí)鐘的晶振頻率并不完全一致,因此隨著運(yùn)行時(shí)間的增加,原來(lái)一致的時(shí)鐘也會(huì)逐漸產(chǎn)生偏差。
時(shí)鐘偏移和時(shí)鐘漂移的解決思路1. 針對(duì)時(shí)鐘偏移采取偏移補(bǔ)償法
- 記錄主站時(shí)間并廣播一個(gè)鎖存各從站時(shí)鐘的報(bào)文;依次讀取各從站被鎖存的時(shí)間,計(jì)算其他從站與第一個(gè)從站的時(shí)間差;將各個(gè)從站的時(shí)鐘差值附加到從站的本地時(shí)鐘上。
2. 針對(duì)時(shí)鐘漂移采取漂移補(bǔ)償法
- 在從站中選擇第一個(gè)支持分布式時(shí)鐘功能的從站時(shí)鐘作為參考時(shí)鐘;在位移補(bǔ)償之后,主站在每個(gè)周期中對(duì)參考時(shí)鐘的時(shí)鐘計(jì)數(shù)執(zhí)行單讀單寫(RMW)的指令,讀取其時(shí)間并廣播到其他從站中;其他從站將自身的時(shí)間與接收到的參考時(shí)間進(jìn)行對(duì)比,動(dòng)態(tài)調(diào)整計(jì)數(shù)器的加值。
分布式時(shí)鐘的三種同步模式
1. Free?Run模式
每個(gè)從站的定時(shí)周期都不一樣,在每個(gè)定時(shí)周期來(lái)到的時(shí)候,每個(gè)從站將執(zhí)行自己的程序,檢查通道上有沒(méi)合適的輸入數(shù)據(jù),如果有合適的數(shù)據(jù)就令其有效,并放到對(duì)應(yīng)的同步管理器通道上等待主站取走。如圖1所示,其中T1為本地微處理器從ESC復(fù)制數(shù)據(jù)并計(jì)算輸出數(shù)據(jù)的時(shí)間,T2為輸出硬件延時(shí),T3為輸入鎖存偏移時(shí)間。
缺點(diǎn):Free Run模式下,由于每個(gè)從站的時(shí)鐘快慢不一致,所以沒(méi)有任何同步性可言。
圖1?Free?Run同步模式
2. SM同步機(jī)制(Sync?Manager同步管理器)
SM指的是同步管理器同步,當(dāng)數(shù)據(jù)幀在到達(dá)對(duì)應(yīng)的從站的時(shí)候,會(huì)觸發(fā)一個(gè)叫同步管理器事件的信號(hào),當(dāng)從站接收到這個(gè)信號(hào)的時(shí)候,會(huì)進(jìn)行中斷服務(wù)例程(即中斷保存當(dāng)期任務(wù),去執(zhí)行插入的中斷例程)。換言之,SM同步模式是根據(jù)數(shù)據(jù)幀到達(dá)特定從站的時(shí)候觸發(fā)的SM事件信號(hào)來(lái)進(jìn)行同步。
缺點(diǎn):對(duì)于特定的幀來(lái)說(shuō),它到達(dá)每一個(gè)從站的時(shí)間必然不同,當(dāng)系統(tǒng)很龐大的時(shí)候,每個(gè)從站接收到數(shù)據(jù)幀的時(shí)間會(huì)相差很大,越在后邊的從站接收到數(shù)據(jù)幀的時(shí)間越晚,同步性效果越差。
圖2 SM同步模式
3. DC同步機(jī)制
這種模式就是高精度的時(shí)間同步模式。如圖3所示,數(shù)據(jù)幀在SYNC信號(hào)提前T1時(shí)間到達(dá),從站在SYNC事件之前已經(jīng)完成數(shù)據(jù)交換和控制計(jì)算,當(dāng)接收SYNC信號(hào)后立即執(zhí)行輸出操作,從而提高了同步性能??梢岳斫鉃槟硞€(gè)從站數(shù)據(jù)幀到達(dá)后不立即處理,因?yàn)橛行恼具€沒(méi)接收到數(shù)據(jù),等待一個(gè)指定的時(shí)間,和其他從站一起處理數(shù)據(jù),這時(shí)候能夠達(dá)到較好的同步效果。
圖3 DC同步模式
? 快速配置分布式時(shí)鐘
ZLG致遠(yuǎn)電子推出了一系列高性能EtherCAT主站控制器和PCIe EtherCAT通訊卡,為了方便用戶的使用,這些EtherCAT主站控制器和通訊卡均提供全面的上位機(jī)配置軟件AWStudio。用戶可以通過(guò)AWStudio快速掃描從站設(shè)備,并可靈活配置分布式時(shí)鐘。
圖4?AWStudio?分布式時(shí)鐘配置界面AWStudio分布式時(shí)鐘配置步驟:
首先打開(kāi)分布式時(shí)鐘使能;
然后選擇參考時(shí)鐘,可以選擇主站或者某一個(gè)從站作為參考時(shí)鐘,通常以第一個(gè)從站作為參考時(shí)鐘;
最后設(shè)置同步偏移時(shí)間,同步偏移時(shí)間(Toffset)根據(jù)以下公式計(jì)算:
其中,T2(n)為由主站發(fā)送時(shí)鐘報(bào)文到達(dá)第n個(gè)從站的時(shí)間,T1為第一個(gè)從站作為參考時(shí)鐘的時(shí)間,Tdelay(n)為參考時(shí)鐘到各從站的傳輸延時(shí)。
廣州致遠(yuǎn)電子以EtherCAT工業(yè)以太網(wǎng)協(xié)議為向?qū)?,開(kāi)發(fā)了一系列EtherCAT主站控制器和通訊卡。這些EtherCAT主站控制器和PCIe EtherCAT通訊卡可以快速、有效、便捷地構(gòu)建數(shù)控智能化設(shè)備。通過(guò)支持固件更新、配置文件下載、數(shù)據(jù)記錄與監(jiān)控、遠(yuǎn)程控制與診斷、分布式文件系統(tǒng)等功能,更能夠適應(yīng)工廠智能化、信息化產(chǎn)業(yè)的需求。
表1 EtherCAT主站控制器
圖5 EtherCAT主站控制器系統(tǒng)框圖表2?PCIe?EtherCAT主站通訊卡
圖6 PCIe EtherCAT通訊卡