TWI703836B - 基於EtherCAT協定的資料交握方法 - Google Patents
基於EtherCAT協定的資料交握方法 Download PDFInfo
- Publication number
- TWI703836B TWI703836B TW108142878A TW108142878A TWI703836B TW I703836 B TWI703836 B TW I703836B TW 108142878 A TW108142878 A TW 108142878A TW 108142878 A TW108142878 A TW 108142878A TW I703836 B TWI703836 B TW I703836B
- Authority
- TW
- Taiwan
- Prior art keywords
- packet
- data
- ethercat
- slave device
- slave
- Prior art date
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
一種基於EtherCAT協定的資料交握方法,應用於EtherCAT的從站設備,並且包括:由前一個設備接收資料封包;從資料封包中取得自身資料或***回饋資料,並產生處理後資料封包;將處理後資料封包傳送至下一個設備;接收下一個設備回傳的回傳封包;將回傳封包傳送至前一個設備;對資料封包、處理後資料封包及回傳封包的至少其中之一執行封包分流程序以產生備援封包,其中備援封包的內容至少部分相同於資料封包、處理後資料封包或回傳封包;對備援封包進行解析;及,於備援封包中過濾出其他從站設備的指定應用資料。
Description
本發明涉及一種資料交握方法,尤其涉及一種基於EtherCAT協定的資料交握方法。
乙太網控制自動化技術(Ethernet for Control Automation Technology, EtherCAT)是一套以乙太網路為基礎的通訊協定,基於EtherCAT高速與即時的通訊效能,使得EtherCAT在追求高精度的工業自動化產業中逐漸受到重視與青睞。
請參閱圖1,為EtherCAT架構的封包傳輸示意圖。如圖1所示,一條EtherCAT總線上會根據所採用的網路拓樸的不同而包括一個EtherCAT主站設備1以及一或多個EtherCAT從站設備2。一個EtherCAT封包3從主站設備1發出後,會被傳輸至所有的從站設備2。各個從站設備2接收所述封包3時,會分別從封包3中抽取出與自身相關的資料,或是將需要回覆給主站設備1的回饋資料***封包3中,接著再將封包3傳遞至下一個從站設備2。當封包3被傳遞至最後一個從站設備2時,處理後的封包3會沿著先前經過的所有從站設備2被回傳至主站設備1,並完成一個通訊週期。
在EtherCAT協定的標準架構下,各個從站設備2的控制器在單一個通訊週期中只能從所接收的封包3中取得自身資料,而無法同時得到其他從站設備2的資料。換句話說,各個從站設備2無法在同一個通訊週期內得到運動所需的所有資料,因此在底層應用上會產生同步不精確的問題。
以將EtherCAT總線運用於加工設備(圖未標示)的伺服驅動器上為例,因為加工設備在進行加工作業時常常會有多個軸同步運動的需求(其中各個軸分別對應一個EtherCAT從站設備2),若各個軸無法得知相關軸(即,需要同步運動的軸)的資料,則因為一個控制指令由主站設備1發出至抵達各個從站設備2時會具有時間差,因此各個軸將無法進行精確的同步運動。如此一來,加工設備的機構在運動時會有彼此相互拉扯的問題,導致加工設備的能源耗損、溫度升高及壽命減短,進而影響加工品質。
於現有技術中,若要令各個軸可以精準地進行同步運動,一般需要在下一個通訊週期中再發送其他指令封包給各個軸,藉此讓各個軸分別取得相關軸的資料,並且等待所有軸皆取得所需資料後再執行同步運動。然而,這樣的作法雖然也可以達到同步運動的目的,但會延長整體加工時間,使得加工速度下降,並導致加工成本的上升。並且,因為在不同通訊週期中採用了不同的指令封包,因此還可能會有資料不精確的風險。
本發明之主要目的,在於提供一種基於EtherCAT協定的資料交握方法,係在不修改EtherCAT協定的標準架構的前提下,令EtherCAT從站設備可以不通過額外的指令封包即同時取得自身資料以及其他從站設備的相關資料。
為了達成上述目的,本發明的資料交握方法主要是應用於EtherCAT的一從站設備,並且包括下列步驟:由前一個設備接收一資料封包;從該資料封包中取得自身資料或***回饋資料,並產生一處理後資料封包;將該處理後資料封包傳送至下一個設備;接收該下一個設備回傳的一回傳封包;將該回傳封包傳送至該前一個設備;對該資料封包、該處理後資料封包及該回傳封包的至少其中之一執行一封包分流程序以產生一備援封包,其中該備援封包的內容至少部分相同於該資料封包、該處理後資料封包或該回傳封包;對該備援封包進行解析;及,於該備援封包中過濾出其他從站設備的指定應用資料。
本發明相較於相關技術所能達成的技術功效在於,EtherCAT從站設備可以在不改變標準的EtherCAT協定,也不影響所傳遞的封包的內容的情況下,不需要通過額外的指令封包即同時取得自身資料以及其他從站設備的相關資料。並且,藉由封包分流程序的技術方案,還可以在單一個通訊週期中同時取得自身資料以及其他從站設備的相關資料。藉此,在EtherCAT的底層應用上,可以達到令多個EtherCAT從站設備精確地執行同步控制的技術目的。
茲就本發明之一較佳實施例,配合圖式,詳細說明如後。
本發明揭露了一種基於乙太網控制自動化技術(Ethernet for Control Automation Technology, EtherCAT)協定的的資料交握方法(下面將於說明書中簡稱為交握方法),所述交握方法主要應用於EtherCAT總線上的EtherCAT從站設備,使得多個EtherCAT從站設備彼此之間可以在不需要EtherCAT主站設備介入的情況下,不需要額外的指令封包也能達到資料同步。並且,於部分實施例中還可於單一個通訊週期內直接達到資料同步,如此一來,可以在不影響通訊速度的前情下,有效提昇同步率。
參閱圖2,為本發明的EtherCAT從站設備的方塊圖的第一具體實施例。圖2揭露了多個EtherCAT從站設備4(下面簡稱為從站設備4),多個從站設備4彼此以串連方式連接,以傳遞EtherCAT封包。
如上所述,本發明的其中一個技術特徵為,在不修改EtherCAT協定的標準架構的前提下,令多個從站設備4可以在不需要額外的指令封包的情況下達到資料同步。更甚者,在部分情況下多個從站設備4還可在單一個通訊週期內達到資料同步,並且在同步過程中不需要主站設備的介入。
具體地,於EtherCAT協定的標準架構下,一個主站設備(圖未標示)是與多個從站設備4呈現串聯的姿態。於封包傳輸程序中,是由主站設備將一個EtherCAT封包依序傳送至EtherCAT總線上的各個從站設備4,以令各個從站設備4分別由封包中取出自身資料,或是將回饋資料***封包中。於封包回傳程序中,是由EtherCAT總線上的最後一個從站設備4將處理後的EtherCAT封包往前傳送,以經由在前的各個從站設備4將EtherCAT封包回傳至主站設備。一般來說,一個EtherCAT封包由主站設備發出,至該EtherCAT封包被回傳至主站設備的時間,稱為一個通訊週期。
如圖2所示,一個從站設備4主要具有從站控制器(EtherCAT Slave Controller, ESC)41、輸入埠42及輸出埠43,其中,從站控制器41連接輸入埠42及輸出埠43。本實施例中,從站設備4通過輸入埠42連接前方的一個資料處理設備(可為主站設備或從站設備,圖未標示),並且通過輸出埠43連接下一個從站設備4。
於封包傳遞程序中,從站設備4可通過一條第一接收路徑來從前一個資料處理設備(例如前一個從站設備4)接收一個資料封包P1。從站設備4經過內部的從站控制器41對資料封包P1進行處理後轉換為一個處理後資料封包P2,並且再通過一條第一傳輸路徑將處理後資料封包P2傳送至下一個從站設備4。
於封包回傳程序中,從站設備4可通過一條第二接收路徑來從下一個從站設備4接收一個回傳封包P3,並且直接通過一條第二傳輸路徑來將回傳封包P3傳送至前一個資料處理設備。
如圖2所示,所述第一接收路徑至少包括前一個資料處理設備與輸入埠42間的連接線路以及輸入埠42與從站控制器41間的第一接收線路(Rx1),所述第一傳輸路徑至少包括從站控制器41與輸出埠43間的第一傳輸線路(Tx1)以及輸出埠43與下一個從站設備4間的連接線路,所述第二接收路徑至少包括下一個從站設備4與輸出埠43間的連接線路以及輸出埠43與從站控制器41間的第二接收線路(Rx2),所述第二傳輸路徑至少包括從站控制器41與輸入埠42間的第二傳輸線路(Tx2)以及輸入埠42與前一個資料處理設備間的連接線路。
本發明的其中一個技術特徵在於,從站設備4可以在上述第一接收路徑、第一傳輸路徑、第二接收路徑或第二傳輸路徑上對所接收/傳送的EtherCAT封包執行封包分流程序,並且從封包分流程序產生的封包中直接擷取其他從站設備4的相關資料。如此一來,各個從站設備4可以在不需要額外的指令封包的情況下同時取得自身資料以及其他從站設備4(主要為具有同步運動需求的一或多個從站設備4)的相關資料(主要被與同步運動有關聯的資料)。並且,各個從站設備4還可以在單一個通訊週期中中同時取得所述自身資料以及其及從站設備4的相關資料,藉此達成精確同步的目的。
請同時參閱圖3,為本發明的交握流程圖的第一具體實施例。圖3揭露了本發明的交握方法的各個實施步驟,並且所述交握方法主要應用於如圖2所示的一或多個從站設備4。
於本發明的交握方法中,首先從站設備4通過第一接收路徑從輸入埠42連接的前一個資料處理設備接收一個資料封包P1(步驟S10)。具體地,步驟S10是由從站設備4的輸入埠42通過外部線路由前一個資料處理設備接收一個資料封包P1,並且由從站設備4的從站控制器41通過內部線路自輸入埠42接收所述資料封包P1。換句話說,所述第一接收路徑包括前一個資料處理設備與輸入埠42間的連接線路,以及從站控制器41的所述第一接收線路(Rx1)。
步驟S10後,從站控制器41可自資料封包P1中取得從站設備4的自身資料,或是將需要進行回報的回饋資料***資料封包P1中,以將資料封包P1轉換為處理後資料封包P2(步驟S12)。於所述處理後資料封包P2被產生後,從站設備4再通過第一傳輸路徑將處理後資料封包P2傳送至輸出埠43連接的下一個從站設備4(步驟S14)。
具體地,步驟S14是由從站控制器41通過內部線路將處理後資料封包P2傳送至輸出埠43,並且再由輸出埠43通過外部線路將處理後資料封包P2傳送至下一個從站設備4。換句話說,所述第一傳輸路徑包括所述從站控制器41的所述第一傳輸線路(Tx1),以及輸出埠43與下一個從站設備4間的連接線路。
於封包回傳程序中,從站設備4還通過第二接收路徑從輸出埠43連接的下一個從站設備4接收一個回傳封包P3(步驟S16)。並且,於本實施例中,從站設備4的從站控制器41不對回傳封包P3進行處理,而是通過第二傳輸路徑直接將所述回傳封包P3傳送至輸入埠42連接的前一個資料處理設備(步驟S18)。於封包回傳程序的最後,所述回傳封包P3會被傳送至EtherCAT總線上的主站設備(圖未標示)。
本實施例中,步驟S16是由從站設備4的輸出埠43通過外部線路由下一個從站設備4接收一個回傳封包P3,並且由從站設備4的從站控制器41通過內部線路自輸出埠43接收所述回傳封包P3。換句話說,所述第二接收路徑包括下一個從站設備4與輸出埠43間的連接線路,以及從站控制器41的所述第二接收線路(Rx2)。步驟S18則是由從站設備4的從站控制器41通過內部線路將回傳封包P3傳送至輸入埠42,並且由輸入埠42通過外部線路將回傳封包P3傳送至前一個資料處理設備。換句話說,所述第二傳輸路徑包括從站控制器41的所述第二傳輸線路(Tx2),以及輸入埠42與前一個資料處理設備間的連接線路。
本發明的其中一個技術特徵在於,從站設備4可對步驟S10中傳輸的資料封包P1、步驟S14中傳輸的處理後資料封包P2、步驟S16中傳輸的回傳封包P3及步驟S18中傳輸的回傳封包P3中的至少其中之一執行封包分流程序,以基於所述資料封包P1、處理後資料封包P2或回傳封包P3產生一個備援封包P4(步驟S20)。
於一實施例中,從站設備4是於前述步驟S10、S14、S16或S18中擷取資料封包P1、處理後資料封包P2或回傳封包P3的部分內容以產生所述備援封包P4。於此實施例中,備援封包P4的內容部分相同於所述資料封包P1、處理後資料封包P2或回傳封包P3的內容。
於另一實施例中,從站設備4是於前述第一接收路徑、第一傳輸路徑、第二接收路徑或第二傳輸路徑上直接複製資料封包P1、處理後資料封包P2或回傳封包P3以做為所述備援封包P4。於此實施例中,備援封包P4的內容完全相同於所述資料封包P1、處理後資料封包P2或回傳封包P3的內容。
於步驟S20後,從站設備4通過從站控制器41對備援封包P4進行解析,以過濾並保留EtherCAT總線上的其他從站設備的指定應用資料(步驟S22)。於步驟S22後,從站設備4除了可以通過在前述步驟S12中取得的自身資料來實現自身功能之外,還可將所述自身資料與在步驟S22中取得的指定應用資料進行結合,以實現附加功能(步驟S24)。如此一來,可以有效提升多個從站設備4間的同步運動的效能。
值得一提的是,本發明中所指的單一個通訊週期,是指一個封包由主站設備被發出,經過EtherCAT總線上的所有從站設備4,最後被回傳至主站設備的時間。於一實施例中,前述步驟S10至步驟S24是在單一個通訊週期內完成。於另一實施例中,前述步驟S10至步驟18以及步驟20至步驟S24是在兩個或兩個以上的通訊週期內完成。
回到圖2。所述從站設備4中進一步包括自身資料交換模組44、自身功能實現模組45、封包分流模組46、指定資料取得模組47及附加功能實現模組48。於一實施例中,上述模組44-48可以藉由硬體元件(例如IC)來實現;於另一實施例中,上述模組44-48亦可藉由預先編寫並燒錄在晶片中的韌體來實現,但不加以限定。
於一實施例中,本發明的從站設備4可以通過電場可編程邏輯閘陣列(Field Programmable Gate Array, FPGA)、特殊應用積體電路(Application Specific Integrated Circuit, ASIC)或微控制器(Micro Controller Unit, MCU)來實現。EtherCAT總線的使用者可以藉由韌體來實現上述各個模組44-48的各項功能,並將韌體燒錄至FPGA、ASIC或MCU中,以結合晶片中的從站控制器41來實現本發明的交握方法。
具體地,自身資料交換模組44主要用以取得從站控制器41自資料封包P1中擷取出來資料。並且,從站設備4可通過數位訊號處理器(Digital Signal Processor, DSP)的通訊介面從自身資料交換模組44取得所述資料,藉此,自身功能實現模組45可以藉由所述資料來實現從站設備4的底層功能。
舉例來說,本發明的從站設備4可以被應用於面板檢測器、電腦化數值控制器(Computer Numerical Controller, CNC)、多軸機器人等設備的多個驅動器上,以控制設備上的多個軸。藉由上述資料,各個從站設備4可通過自身功能實現模組45來對應執行各個驅動器所被分別指派的運動。於一實施例中,上述資料可例如為從站設備4相對於此驅動器的位置回饋資料、速度回饋資料或扭力回饋資料,但不加以限定。
於本發明中,所述封包分流模組46可以被設置在該第一接收路徑、該第一傳輸路徑、該第二接收路徑或是該第二傳輸路徑上。
於圖2的實施例中,所述封包分流模組46是被設置於從站設備4的內部,即,所述第一接收線路(Rx1)、第一傳輸線路(Tx1)、第二接收線路(Rx2)或是第二傳輸線路(Tx2)上,用以擷取前述封包(包括資料封包P1、處理後資料封包P2及回傳封包P3)的內容或直接複製該些封包P1-P3,以產生所述備援封包P4。然而,於其他的實施例中,所述封包分流模組46亦可被設置於從站設備4的外部(容後詳述)。
所述指定資料取得模組47自封包分流模組46取得所述備援封包P4,並且依據從站設備4的初始設定值而從備援封包P4中取得其他從站設備4的指定應用資料。
更具體地說,使用者可於從站設備4啟動前預先對各個從站設備4的初始設定值進行設定,以指定與此從站設備4有關聯(例如具有同步運動需求)的一或多個其他從站設備4,並且指定所需要的資料類型。
舉例來說,若一個從站設備4被應用於面板檢測器的龍門主軸,則使用者可對此從站設備4的初始設定值進行設定,以令其指定資料取得模組47從備援封包P4中取得對應至的龍門從軸的從站設備4的指定應用資料,如位置回饋資料、速度回饋資料或扭力回饋資料,但不加以限定。
本實施例中,從站設備4還可通過所述數位訊號處理器的通訊介面從指定資料取得模組47取得所述指定應用資料。藉此,附加功能實現模組48可以將從站設備4的自身資料以及其他從站設備4的指定應用資料進行結合,藉此提昇多個從站設備4之間的同步運動的性能,並且還可以執行延伸性的應用(例如即時控制多個從站設備4之間的輸入/輸出點)。如此一來,本發明可以令多個具有合作關係的從站設備4實現精準的同步控制。
值得一提的是,若將所述封包分流模組46設置於第一接收線路(Rx1)或第一傳輸線路(Tx1)上,則因為從站設備4通過輸出埠43所連接的下一個從站設備4尚未將回饋資料寫入所述資料封包P1或處理後資料包P2中,因此封包分流模組46取得的備援封包P4中不會包含下一個從站設備4的資料。換句話說,若一個從站設備4被指定而需要取得排列在後方的一或多個從站設備4的資料,則所述封包分流模組46將不能實現於第一接收線路(Rx1)或第一傳輸線路(Tx1)的位置上,而僅能實現於第二接收線路(Rx2)與第二傳輸線路(Tx2)的位置上。
然而,按照EtherCAT協定的標示架構,從站控制器41不會對所接收的回傳封包P3執行任何動作,並且回傳封包P3中已經包含了EtherCAT總線上的所有從站設備4的回饋資料。因此,一個從站設備4無論需與前方或後方的一或多個從站設備4執行同步運動,都可直接將所述封包分流模組46實現於第二接收線路(Rx2)與第二傳輸線路(Tx2)的位置上。
續請參閱圖4,為本發明的EtherCAT從站設備的方塊圖的第二具體實施例。如前文所述,本發明中的從站設備4至少可以通過FPGA、ASIC或MCU來實現。於圖4的實施例中,是將本發明的交握方法寫成韌體並燒錄至FPGA中,以藉由FPGA來實現所述從站設備4,但並不以此為限。
如圖4所示,從站控制器41中係設置有第一媒體存取控制(Media Access Control, MAC)單元411及第二MAC單元412。於封包傳輸程序中,前一個資料處理設備(主站設備或從站設備)可將資料封包P1發送至第一MAC單元411,使得從站控制器41可以接收資料封包P1。當從站控制器41由資料封包P1中取得自身資料或是將回饋資料***資料封包P1而生成處理後資料封包P2後,可通過第二MAC單元412將處理後資料封包P2發送至下一個從站設備所使用的位址。
於封包回傳程序中,從站設備4的從站控制器41可通過第二MAC單元412來接收下一個從站設備4回傳的回傳封包P3,並且再通過第一MAC單元411將此回傳封包P3發送至前一個資料處理設備(主站設備或從站設備)的位址,以完成封包回傳程序。
值得一提的是,若一個從站設備4為EtherCAT總線上的最後一個從站設備4,則因為此從站控制器41不需要再將封包向後方發送,因此可以不需要具備第二MAC單元412。具體地,此從站設備4可於生成處理後資料封包P2後,將處理後資料封包P2直接做為回傳封包P3,並且通過從站控制器41的第一MAC單元411將回傳封包P3回傳至前一個資料處理設備(主站設備或從站設備)的位址,以開始封包回傳程序。
本發明的其中一個技術特徵在於,所述封包分流模組46可以設置有一個相異於第一MAC單元411及第二MAC單元412的第三MAC單元51。
於第一實施例中,所述封包分流模組46實現於從站控制器41的第一接收線路(Rx1)上。於執行封包分流程序時,是由前一個資料處理設備經由輸入埠42將資料封包P1同時傳送至從站控制器41的第一MAC單元411及封包分流模組46的第三MAC單元51。藉此,封包分流模組46可以將所接收的封包做為所述備援封包P4,藉此完成封包分流程序。
於第二實施例中,所述封包分流模組46實現於所述第一傳輸線路(Tx1)上。於執行封包分流程序時,是由從站控制器41通過該第二MAC單元412將處理後資料封包P2同時傳送至下一個從站設備的位址以及封包分流模組46的第三MAC單元51。藉此,封包分流模組46可以將所接收的封包做為所述備援封包P4,藉此完成封包分流程序。
於第三實施例中,所述封包分流模組46實現於所述第二接收線路(Rx2)上。於執行封包分流程序時,是由下一個從站設備4將回傳封包P3同時傳送至從站控制器41的第二MAC單元412以及封包分流模組46的第三MAC單元51。藉此,封包分流模組46可以將所接收的封包做為所述備援封包P4,藉此完成封包分流程序。
於第四實施例中,所述封包分流模組46實現於所述第二傳輸線路(Tx2)上。於執行封包分流程序時,是由從站控制器41通過該第一MAC單元411將回傳封包P3同時傳送至前一個資料處理設備的位址以及封包分流模組46的第三MAC單元51。藉此,封包分流模組46可以將所接收的封包做為所述備援封包P4,藉此完成封包分流程序。
於一實施例中,所述封包傳輸程序、封包回傳程序與封包分流程序是在同一個通訊週期內完成。於另一實施例中,所述封包傳輸程序與封包回傳程序是在同一個通訊週期內完成,所述封包分流程序是在另一個通訊週期完成。
值得一提的是,封包分流模組46取得所述備援封包P4後,係可將備援封包P4直接寫入從站設備4的內儲記憶體52中保存,或可於指定資料取得模組47從備援封包P4中過濾並取得指定應用資料後,再將指定應用資料寫入內儲記憶體52中,不加以限定。
於另一實施例中(例如以ASIC或MCU來實現從站設備4時),所述封包分流模組46可被設置在前述任一路徑上,並且於從站控制器41接收/傳送所述資料封包P1、處理後資料封包P2或回傳封包P3之前,直接複製各個封包P1-P3並儲存至內儲記憶體52,以直接產生所述備援封包P4。惟,上述僅為本發明的多個不同具體實施例,但並不以上述者為限。
如前文所述,本發明的封包分流程序可以被實現於第一接收路徑、第一傳輸路徑、第二接收路徑或第二傳輸路徑上。如圖4所示,所述封包分流模組46可以以韌體的方式實現於從站設備4的內部。具體地,圖4的實施例是將封包分流模組46設置於第一接收路徑上的第一接收線路(Rx1)、第一傳輸路徑上的第一傳輸線路(Tx1)、第二接收路徑上的第二接收線路(Rx2)或第二傳輸路徑上的第二傳輸線路(Tx2)。惟,於其他實施例中,所述封包分流程序亦可以硬體方式被實現於從站設備4的外部。
續請參閱圖5,為本發明的封包分流處理架構圖的第一具體實施例。於圖5的實施例中,所述封包分流程序可被實現在EtherCAT從站設備6的外部,並且以實體的封包分流處理晶片7來實現。如圖5所示,具體來說,所述封包分流處理晶片7可以被設置於印刷電路板(圖未標示)上,並且藉由印刷電路板電性連接至需要執行封包分流程序的從站設備6。
值得一提的是,若有多個從站設備6需要執行封包分流程序,則使用者可為各個從站設備6分別設置一個獨立的封包分流處理晶片7,或是令一個封包分流處理晶片7同時電性連接多個從站設備6,以同時為多個從站設備6執行封包分流程序,不加以限定。
如圖5所示,所述封包分流處理晶片7可被連接至從站設備6與前一個資料處理設備(例如主站設備或從站設備6)間的第一連接線路61(即,前述的第一接收路徑的一部分,或是第二傳輸路徑的一部分),亦可被連接至從站設備6與下一個從站設備6間的第二連接線路62(即,前述的第一傳輸路徑的一部分,或是第二接收路徑的一部分)。
本實施例中,封包分流處理晶片7被寫入了可實現本發明的交握方法的韌體,因此可為所連接的從站設備6執行前述的封包分流程序,以產生所述備援封包P4,並從備援封包P4中取出其他從站設備的指定應用資料。其所採用的交握方法於此不再贅述。
續請同時參閱圖6及圖7,圖6為面板檢測器的示意圖的第一具體實施例,圖7為龍門軸電流值的示意圖的第一具體實施例。
如圖6所示,一個面板檢測器8主要具有可以沿著Y軸方向運動的龍門主軸81及龍門從軸82,龍門主軸81及龍門從軸82上延伸設置有平行於X軸方向的橫軸83,橫軸83上設置有平行於Z軸方向的縱軸84。縱軸84的一端設置有用以擷取待檢測面板9的影像的影像感測器85,並且縱軸84一側還設置有用來提高影像品質的光源86。
於一實施例中,龍門主軸81與龍門從軸82的伺服驅動器是由EtherCAT從站設備(以前述從站設備4為例)來實現,以藉由兩個從站設備4分別控制龍門主軸81與龍門從軸82的運動。由於龍門主軸81與龍門從軸82需要同步運動以帶動影像感測器85與光源86在Y軸方向上移動,因此各個從站設備4是否能在單一個通訊週期中不通過額外的指令封包而直接得到另一個從站設備4的資料並且完成運動補償,即影響了面板檢測器8的檢測品質。
圖7的(a)部分顯示了龍門主軸81運動時的電流值變化,包括沒有應用本發明的交握方法時的第一主軸電流I1a,以及應用了本發明的交握方法後的第二主軸電流I2a。圖7的(b)部分顯示了龍門從軸82運動時的電流值變化,包括沒有應用本發明的交握方法時的第一從軸電流I1b,以及應用了本發明的交握方法後的第二從軸電流I2b。
在沒有應用本發明的交握方法時,用以控制龍門主軸81的從站設備4無法取得用以控制龍門從軸82的從站設備4的資料,反之亦然。當面板檢測器8的上層控制器(圖未標示)控制龍門主軸81與龍門從軸82進行運動時,由於所發出的控制命令具有時間差,因此龍門主軸81的運動會超前龍門從軸82的運動。由圖7可看出,龍門主軸81動作時,龍門從軸82尚未開始動作,因此龍門主軸81動作時會拉扯龍門從軸82,進而產生較大的第一主軸電流I1a。反之,龍門從軸82是先被龍門主軸81拉扯後才開始動作,因此在動作時會朝向龍門主軸81的反方向輸出,進而產生反向的第一從軸電流I1b。
由上述說明可看出,在沒有應用本發明的交握方法前,龍門主軸81與龍門從軸82無法精確地進行同步運動,除了會使面板檢測器8耗費較大的能源之外,面板檢測器8在運動時也會因為龍門主軸81與龍門從軸82的相互拉扯而抖動地相當厲害,進而導致檢測品質的下降,甚至影響面板檢測器8的壽命。
在應用了本發明的交握方法後,用以控制龍門主軸81的從站設備4與用以控制龍門從軸82的從站設備4可以在單一個通訊週期中不通過額外的指令封包即直接取得另一從站設備4的資料。如此一來,各個從站設備4可以在接收到控制命令時完成運動補償。舉例來說,用以控制龍門主軸81的從站設備4可以在動作前先得到用以控制龍門從軸82的從站設備4的相關資料(例如位置回饋資料、速度回饋資料與扭力回饋資料等),並且依據所述資料對控制命令進行修正,進而對龍門主軸81的運動進行補償。
當面板檢測器8的上層控制器控制龍門主軸81與龍門從軸82進行運動時,會發出控制命令至各個從站設備4,而各個從站設備4可以依據另一從站設備4的上述資料來對控制命令進行補償。由圖7可看出,本實施例中龍門主軸81與龍門從軸82的運動一致,因此會分別產生較平穩且一致的第二主軸電流I2a與第二從軸電流I2b。由圖7可看出,通過本發明的交握方法確實可以使得多個從站設備4達到最佳化同步效果,進而降低無謂的能耗,並且令設備的運動順暢而提昇設備壽命。
如前文所述,從站設備4藉由封包分流模組46取得備援封包P4後,主要可藉由指定資料取得模組47對備援封包P4進行解析,以過濾掉不需要的資料(即,未被指定的資料),並且僅保留需要的資料(即,被指定的資料)。
參閱圖8,為本發明的封包處理流程圖的第一具體實施例。圖8用以具體說明圖3所示的步驟S22,即,如何對備援封包P4進行解析並過濾出所需資料。
如圖8所示,首先,從站設備4取得封包分流程序後產生的備援封包P4(步驟S220),接著,判斷備援封包P4是否為EtherCAT封包(步驟S222)。若備援封包P4不是EtherCAT封包,代表備援封包P4中不會包含EtherCAT總線上的其他從站設備4的資料,因此從站設備4可直接捨棄此備援封包P4(步驟S224)。
若備援封包P4確實是EtherCAT封包,則從站設備4進一步判斷此備援封包P4是否為週期性封包(步驟S226)。如前文所述,本發明的其中一個目的是要令多個從站設備4於單一個通訊週期內不通過額外的指令封包而直接得到其他從站設備4的資料,以最佳化同步效果。若備援封包P4不是週期性封包,而是屬於非週期性封包,代表此備援封包P4無法實現本發明的上述目的,因此從站設備4可捨棄此備援封包P4(步驟S224)。
本實施例中,上述步驟S222與步驟S226沒有執行上的順序關係。
若備援封包P4是EtherCAT封包,並且也是週期性封包,則從站設備4依據使用者預設的初始設定值(圖未標示)來對此備援封包P4進行解析,以取得使用者所指定的一或多個從站設備4的指定資料。
在對備援封包P4進行解析時,從站設備4主要可依據初始設定值的內容來確認需要進行交握的一或多個從站設備4的身份(例如數量、編號及位置等),並且進一步識別所述備援封包P4中用以記錄這些從站設備4的相關資料的資料區(步驟S228)。接著,從站設備4由備援封包P4中取得所述資料區中的所有資料(步驟S230),並且再由所取得的資料中過濾出初始設定值中記錄的指定應用資料(步驟S232)。於一實施例中,所述指定應用資料可例如為位置回饋資料、速度回饋資料、扭力回饋資料等,但不加以限定。
步驟S232後,從站設備4可將所取得的指定應用資料儲存至所述內建記憶體52中,或是依據指定應用資料生成符合從站控制器41所需格式的控制器封包P5(步驟S234)。當從站控制器41要實現從站設備4的底層功能(例如控制面板檢測器、CNC控制器、機器人等設備上的軸)時,可藉由所述指定應用資料/控制器封包P5來與具有合作關係的其他從站設備4達到最佳化同步控制,藉此降至設備能耗並提昇設備品質。
以上所述僅為本發明之較佳具體實例,非因此即侷限本發明之專利範圍,故舉凡運用本發明內容所為之等效變化,均同理皆包含於本發明之範圍內,合予陳明。
1:EtherCAT主站設備
2:EtherCAT從站設備
3:EtherCAT封包
4:EtherCAT從站設備
41:從站控制器
411:第一MAC單元
412:第二MAC單元
42:輸入埠
43:輸出埠
44:自身資料交換模組
45:自身功能實現模組
46:封包分流模組
47:指定資料取得模組
48:附加功能實現模組
51:第三MAC單元
52:內儲記憶體
6:EtherCAT從站設備
61:第一連接線路
62:第二連接線路
7:封包分流處理晶片
8:面板檢測器
81:龍門主軸
82:龍門從軸
83:橫軸
84:縱軸
85:影像感應器
86:光源
9:待測面板
I1a:第一主軸電流
I1b:第一從軸電流
I2a:第二主軸電流
I2b:第二從軸電流
P1:資料封包
P2:處理後資料封包
P3:回傳封包
P4:備援封包
P5:控制器封包
Rx1:第一接收線路
Rx2:第二接收線路
Tx1:第一傳輸線路
Tx2:第二傳輸線路
S10~S24:交握步驟
S220~S234:封包處理步驟
圖1為EtherCAT架構的封包傳輸示意圖。
圖2為本發明的EtherCAT從站設備的方塊圖的第一具體實施例。
圖3為本發明的交握流程圖的第一具體實施例。
圖4為本發明的EtherCAT從站設備的方塊圖的第二具體實施例。
圖5為本發明的封包分流處理架構圖的第一具體實施例。
圖6為面板檢測器的示意圖的第一具體實施例。
圖7為龍門軸電流值的示意圖的第一具體實施例。
圖8為本發明的封包處理流程圖的第一具體實施例
S10~S24:交握步驟
Claims (11)
- 一種基於EtherCAT協定的資料交握方法,應用於一EtherCAT從站設備,該EtherCAT從站設備具有一從站控制器(EtherCAT Slave Controller, ESC),該資料交握方法包括下列步驟: a)通過一第一接收路徑由前一個資料處理設備接收一資料封包; b)該從站控制器自該資料封包中取得該EtherCAT從站設備的自身資料或***該EtherCAT從站設備的回饋資料至該資料封包,並產生一處理後資料封包; c)通過一第一傳輸路徑將該處理後資料封包傳遞至下一個從站設備; d)通過一第二接收路徑由該下一個從站設備接收一回傳封包,並通過一第二傳輸路徑將該回傳封包回傳至該前一個資料處理設備; e)對該資料封包、該處理後資料封包及該回傳封包的至少其中之一執行一封包分流程序以產生一備援封包,其中該備援封包的內容至少部分相同於該資料封包、該處理後資料封包或該回傳封包;及 f)該從站控制器對該備援封包進行解析,以過濾並保留其他從站設備的指定應用資料。
- 如請求項1所述的基於EtherCAT協定的資料交握方法,其中該EtherCAT從站設備更包括一輸入埠及一輸出埠,該第一接收路徑包括該EtherCAT從站設備內部的一第一接收線路(Rx1)及該EtherCAT從站設備與該前一個資料處理設備間的連接線路,該第一傳輸路徑包括該EtherCAT從站設備內部的一第一傳輸線路(Tx1)及該EtherCAT從站設備與該下一個從站設備間的連接線路,該第二接收路徑包括該EtherCAT從站設備內部的一第二接收線路(Rx2)及該EtherCAT從站設備與該下一個從站設備間的連接線路,該第二傳輸路徑包括該EtherCAT從站設備內部的一第二傳輸線路(Tx2)及該EtherCAT從站設備與該前一個資料處理設備間的連接線路,該從站控制器通過該第一接收線路連接該輸入埠以接收該資料封包,通過該第一傳輸線路連接該輸出埠以傳送該處理後資料封包,通過該第二接收線路連接該輸出埠以接收該回傳封包,並通過該第二傳輸線路連接該輸入埠以傳送該回傳封包,其中該步驟e)是藉由設置在該第一接收線路、該第一傳輸線路、該第二接收線路或該第二傳輸線路上的一封包分流模組執行該封包分流程序,以產生該備援封包。
- 如請求項2所述的基於EtherCAT協定的資料交握方法,其中該從站控制器具有一第一MAC單元及一第二MAC單元,該封包分流模組具有一第三MAC單元,該封包分流程序是經由該輸入埠與該第一接收線路將該資料封包同時傳送至該第一MAC單元及該第三MAC單元、通過該第二MAC單元經由該第一傳輸線路同時將該處理後資料封包傳送至該下一個從站設備的位址及該第三MAC單元、經由該輸出埠與該第二接收線路將該回傳封包同時傳送至該第二MAC單元及該第三MAC單元、或通過該第一MAC單元經由該第二傳輸線路同時將該回傳封包傳送至該前一個資料處理設備的位址及該第三MAC單元。
- 如請求項2所述的基於EtherCAT協定的資料交握方法,其中該步驟e)是由該封包分流模組直接複製該資料封包、該處理後資料封包或該回傳封包並儲存至該EtherCAT從站設備的一內儲記憶體,以產生該備援封包。
- 如請求項1所述的基於EtherCAT協定的資料交握方法,其中該前一個資料處理設備為一EtherCAT主站設備或其他的EtherCAT從站設備。
- 如請求項1所述的基於EtherCAT協定的資料交握方法,其中該EtherCAT從站設備是以電場可編程邏輯閘陣列(Field Programmable Gate Array, FPGA)、特殊應用積體電路(Application Specific Integrated Circuit, ASIC)或微控制器(Micro Controller Unit, MCU)來實現。
- 如請求項1所述的基於EtherCAT協定的資料交握方法,其中該步驟f)包括下列步驟: f1)取得該備援封包; f2)判斷該備援封包是否為一EtherCAT封包; f3)判斷該備援封包是否為一週期性封包; f4)於該備援封包不是EtherCAT封包,或該備援封包為一非週期性封包時,捨棄該備援封包;及 f5)於該備援封包是EtherCAT封包並且為該週期性封包時,該備援封包進行解析。
- 如請求項7所述的基於EtherCAT協定的資料交握方法,其中該步驟f)更包括下列步驟: f6)判斷要與該EtherCAT從站設備進行交握的其他從站設備的相關資料所在的資料區; f7)於該備援封包中取得該資料區的所有資料;及 f8)於所取得的資料中過濾出該指定應用資料。
- 如請求項8所述的基於EtherCAT協定的資料交握方法,其中該EtherCAT從站設備運用於一伺服驅動器,該指定應用資料至少包括其他從站設備的位置回饋資料、速度回饋資料或扭力回饋資料。
- 如請求項1所述的基於EtherCAT協定的資料交握方法,其中該EtherCAT從站設備更包括與該從站控制器連接的一輸入埠及一輸出埠,該輸入埠通過一第一連接線路連接該前一個資料處理設備,該輸出埠通過一第二連接線路連接該下一個從站設備,該步驟e)是藉由該第一連接線路或該第二連接線路上的一封包分流處理晶片執行該封包分流程序,以產生該備援封包。
- 如請求項1所述的基於EtherCAT協定的資料交握方法,其中該步驟a至該步驟f皆於同一個通訊週期內完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108142878A TWI703836B (zh) | 2019-11-26 | 2019-11-26 | 基於EtherCAT協定的資料交握方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW108142878A TWI703836B (zh) | 2019-11-26 | 2019-11-26 | 基於EtherCAT協定的資料交握方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI703836B true TWI703836B (zh) | 2020-09-01 |
TW202121872A TW202121872A (zh) | 2021-06-01 |
Family
ID=73644105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108142878A TWI703836B (zh) | 2019-11-26 | 2019-11-26 | 基於EtherCAT協定的資料交握方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI703836B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100223374A1 (en) * | 2006-04-07 | 2010-09-02 | Microsoft Corporation | Combined header processing for network packets |
CN103425106A (zh) * | 2013-08-08 | 2013-12-04 | 华南理工大学 | 一种基于Linux的EtherCAT主/从站控制***及方法 |
US20150293871A1 (en) * | 2012-11-27 | 2015-10-15 | Freescale Semiconductor, Inc. | Redundant packet forwarding system |
TW201721498A (zh) * | 2015-12-01 | 2017-06-16 | Chunghwa Telecom Co Ltd | 具安全與功能擴充性的有線區域網路使用者管理系統及方法 |
WO2017113080A1 (zh) * | 2015-12-29 | 2017-07-06 | 深圳配天智能技术研究院有限公司 | 一种从站固件更新的方法、***、主站及从站 |
WO2018188070A1 (zh) * | 2017-04-14 | 2018-10-18 | 深圳配天智能技术研究院有限公司 | 一种转换装置以及控制*** |
US20190094837A1 (en) * | 2014-03-03 | 2019-03-28 | Samsung Electronics Co., Ltd. | Ethercat control device and factory automation system having the same |
-
2019
- 2019-11-26 TW TW108142878A patent/TWI703836B/zh active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100223374A1 (en) * | 2006-04-07 | 2010-09-02 | Microsoft Corporation | Combined header processing for network packets |
US20150293871A1 (en) * | 2012-11-27 | 2015-10-15 | Freescale Semiconductor, Inc. | Redundant packet forwarding system |
CN103425106A (zh) * | 2013-08-08 | 2013-12-04 | 华南理工大学 | 一种基于Linux的EtherCAT主/从站控制***及方法 |
US20190094837A1 (en) * | 2014-03-03 | 2019-03-28 | Samsung Electronics Co., Ltd. | Ethercat control device and factory automation system having the same |
TW201721498A (zh) * | 2015-12-01 | 2017-06-16 | Chunghwa Telecom Co Ltd | 具安全與功能擴充性的有線區域網路使用者管理系統及方法 |
WO2017113080A1 (zh) * | 2015-12-29 | 2017-07-06 | 深圳配天智能技术研究院有限公司 | 一种从站固件更新的方法、***、主站及从站 |
WO2018188070A1 (zh) * | 2017-04-14 | 2018-10-18 | 深圳配天智能技术研究院有限公司 | 一种转换装置以及控制*** |
Also Published As
Publication number | Publication date |
---|---|
TW202121872A (zh) | 2021-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105137916B (zh) | 一种振镜式激光扫描大幅面材料成形加工控制*** | |
CN109005070A (zh) | 一种基于共享内存的双机冗余热备设备 | |
WO2015101217A1 (zh) | 一种控制卡及机器人 | |
CN102253910B (zh) | 一种i2c传输方法及其装置 | |
CN112147927B (zh) | 一种双通道总线通信的多轴运动控制*** | |
CN104950768A (zh) | 基于vme总线的光刻机双工件台控制***多板卡通信方法 | |
JPWO2015166953A1 (ja) | 設計支援装置、設計支援方法およびプログラム | |
Liu et al. | EtherCAT based robot modular joint controller | |
CN110087037A (zh) | 一种集成摄像头的EtherCAT主站和工作方法 | |
WO2023236696A1 (zh) | 图像采集卡及图像采集方法 | |
TWI703836B (zh) | 基於EtherCAT協定的資料交握方法 | |
JPWO2016142999A1 (ja) | 多重化通信システム及び作業機 | |
CN106851183A (zh) | 基于fpga的多路视频处理***及其方法 | |
JP6960035B2 (ja) | EtherCATプロトコルに基づくデータハンドシェイク方法 | |
CN113507602A (zh) | 一种高速视频测量***中的软硬件同步控制方法 | |
CN108008658B (zh) | 一种数据采集***及采集方法 | |
CN115766901B (zh) | 一种图像传感器的数据传输设备及方法 | |
US11703832B2 (en) | Production system, communication method, and information storage medium | |
US20210064003A1 (en) | Controller and Control System | |
CN202795349U (zh) | 一种串行总线数据分析仪及分析*** | |
CN110874020A (zh) | 光刻机控制***和方法 | |
JP2017169080A (ja) | 多重化通信システム及び作業機 | |
JP2011119999A (ja) | 通信装置及びマスタ装置 | |
Chen et al. | Multi-kilohertz control of multiple robots via IEEE-1394 (firewire) | |
JP2019161644A (ja) | 産業用画像処理のためのスマートカメラのカメラ中枢部及び産業用画像処理のための方法 |