欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于EtherCAT總線的通信協(xié)議方法及系統(tǒng)與流程

文檔序號:11147871閱讀:1065來源:國知局
一種基于EtherCAT總線的通信協(xié)議方法及系統(tǒng)與制造工藝

本發(fā)明涉及通信協(xié)議領域,尤其涉及一種基于EtherCAT總線的通信協(xié)議方法及系統(tǒng)。



背景技術:

現(xiàn)有的以太網(wǎng)通信協(xié)議中,從站的傳輸方式一般采用存儲轉發(fā)的模式,當主站發(fā)送報文、數(shù)據(jù)包時,在每個從站(連接點)接收以太網(wǎng)數(shù)據(jù)包,然后進行解碼并復制為過程數(shù)據(jù),并進行轉發(fā)至下一個從站,使得報文在傳輸?shù)倪^程中是逐個往下傳輸。然而,此種傳輸方式在報文數(shù)據(jù)包數(shù)據(jù)量龐大的時候,從站所需的解碼復制時間較長,會導致數(shù)據(jù)包傳輸?shù)臅r間過長,造成較大的延遲。



技術實現(xiàn)要素:

本發(fā)明實施例提供了一種基于EtherCAT總線的通信協(xié)議方法及系統(tǒng),解決了現(xiàn)有的以太網(wǎng)通信協(xié)議中,從站的傳輸方式一般采用存儲轉發(fā)的模式,在報文數(shù)據(jù)包數(shù)據(jù)量龐大的時候,從站所需的解碼復制時間較長,會導致數(shù)據(jù)包傳輸?shù)臅r間過長,造成較大的延遲的技術問題。

本發(fā)明實施例提供的一種基于EtherCAT總線的通信協(xié)議方法,包括:

主站和從站;

方法步驟包括:從站獲取到由主站發(fā)送的數(shù)據(jù)幀,并對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,若數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時,接收數(shù)據(jù)幀并分析數(shù)據(jù)幀,否則不接收數(shù)據(jù)幀。

可選地,從站獲取到由主站發(fā)送的數(shù)據(jù)幀之前還包括:

主站將獲取到的要發(fā)送的數(shù)據(jù)幀儲存于RAM中,并在獲取到數(shù)據(jù)幀發(fā)送指令時將儲存于RAM中的數(shù)據(jù)幀讀出并發(fā)送至從站。

可選地,數(shù)據(jù)幀包括以太網(wǎng)幀頭、EtherCAT數(shù)據(jù)和FCS。

可選地,從站獲取到由主站發(fā)送的數(shù)據(jù)幀,并對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,若數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時,接收數(shù)據(jù)幀并分析數(shù)據(jù)幀之后還包括:

若分析得數(shù)據(jù)幀的地址命令段為從站自增寫操作命令時,從站將數(shù)據(jù)幀保存到內存空間中。

可選地,從站獲取到由主站發(fā)送的數(shù)據(jù)幀,并對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,若數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時,接收數(shù)據(jù)幀并分析數(shù)據(jù)幀之后還包括:

若分析得數(shù)據(jù)幀的地址命令段為寫入操作命令時,從站將內存空間中的數(shù)據(jù)寫入到數(shù)據(jù)幀。

可選地,從站采用寄存器保存數(shù)據(jù)幀。

本發(fā)明實施例提供的一種基于EtherCAT總線的通信協(xié)議系統(tǒng),包括:

主站和從站;

從站包括獲取判斷模塊,用于獲取到由主站發(fā)送的數(shù)據(jù)幀,并對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,若數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時,接收數(shù)據(jù)幀并分析數(shù)據(jù)幀,否則不接收數(shù)據(jù)幀。

可選地,主站包括:

儲存模塊,用于將獲取到的要發(fā)送的數(shù)據(jù)幀儲存于RAM中,并在獲取到數(shù)據(jù)幀發(fā)送指令時將儲存于RAM中的數(shù)據(jù)幀讀出并發(fā)送至從站。

可選地,從站包括:

第一分析模塊,用于若分析得數(shù)據(jù)幀的地址命令段為從站自增寫操作命令時,從站將數(shù)據(jù)幀保存到內存空間中。

可選地,從站還包括:

第二分析模塊,用于若分析得數(shù)據(jù)幀的地址命令段為寫入操作命令時,從站將內存空間中的數(shù)據(jù)寫入到數(shù)據(jù)幀。

從以上技術方案可以看出,本發(fā)明實施例具有以下優(yōu)點:

本發(fā)明實施例提供了一種基于EtherCAT總線的通信協(xié)議方法及系統(tǒng),包括:從站獲取到由主站發(fā)送的數(shù)據(jù)幀,并對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,若數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時,接收數(shù)據(jù)幀并分析數(shù)據(jù)幀,否則不接收數(shù)據(jù)幀,本發(fā)明實施例中通過從站在數(shù)據(jù)幀的傳輸過程中對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,在數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時才接收該數(shù)據(jù)幀并進行分析,否則直接將數(shù)據(jù)幀傳輸至下一個從站,大大降低了數(shù)據(jù)幀的傳輸延遲,解決了現(xiàn)有的以太網(wǎng)通信協(xié)議中,從站的傳輸方式一般采用存儲轉發(fā)的模式,報文數(shù)據(jù)包數(shù)據(jù)量龐大的時候,從站所需的解碼復制時間較長,會導致數(shù)據(jù)包傳輸?shù)臅r間過長,造成較大的延遲的技術問題。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其它的附圖。

圖1為本發(fā)明實施例提供的一種基于EtherCAT總線的通信協(xié)議方法的流程示意圖;

圖2(a)為本發(fā)明實施例提供的一幀數(shù)據(jù)的示意圖;

圖2(b)為本發(fā)明實施例提供的一幀數(shù)據(jù)的另一個示意圖;

圖2(c)為本發(fā)明實施例提供的一幀數(shù)據(jù)的另一個示意圖;

圖2(d)為本發(fā)明實施例提供的一幀數(shù)據(jù)的另一個示意圖;

圖2(e)為本發(fā)明實施例提供的一幀數(shù)據(jù)的另一個示意圖;

圖3為本發(fā)明實施例提供的一種偽雙口RAM的結構示意圖;

圖4為本發(fā)明實施例提供的從站的數(shù)據(jù)幀判斷流程示意圖;

圖5為本發(fā)明實施例提供的一種基于EtherCAT總線的通信協(xié)議系統(tǒng)。

具體實施方式

本發(fā)明實施例提供了一種基于EtherCAT總線的通信協(xié)議方法及系統(tǒng),用于解決現(xiàn)有的以太網(wǎng)通信協(xié)議中,從站的傳輸方式一般采用存儲轉發(fā)的模式,報文數(shù)據(jù)包數(shù)據(jù)量龐大的時候,從站所需的解碼復制時間較長,會導致數(shù)據(jù)包傳輸?shù)臅r間過長,造成較大的延遲的技術問題。

為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點能夠更加的明顯和易懂,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,下面所描述的實施例僅僅是本發(fā)明一部分實施例,而非全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。

請參閱圖1,本發(fā)明實施例提供的一種基于EtherCAT總線的通信協(xié)議方法包括:

101、主站將獲取到的要發(fā)送的數(shù)據(jù)幀儲存于RAM中,并在獲取到數(shù)據(jù)幀發(fā)送指令時將儲存于RAM中的數(shù)據(jù)幀讀出并發(fā)送至從站。

首先,由主站將需要發(fā)送的一個完整的數(shù)據(jù)幀儲存到RAM中,并在獲取到數(shù)據(jù)幀發(fā)送指令時將儲存于RAM中的數(shù)據(jù)幀讀出并發(fā)送至從站。其中,一個完整的數(shù)據(jù)幀包括有以太網(wǎng)幀頭、EtherCAT數(shù)據(jù)和FCS。請參閱圖2(a)至圖2(e),為根據(jù)協(xié)議幀的格式所定義的一幀完整的數(shù)據(jù):包括在RAM中所保存的地址和所代表的意思,包括了前導序,數(shù)據(jù)和幀尾,一共是71個數(shù)據(jù)。請參閱圖3,主站采用偽雙口RAM來進布于存儲數(shù)據(jù),數(shù)據(jù)先從Data端寫入,寫入到相應的地址中,當要發(fā)送數(shù)據(jù)時根據(jù)讀時鐘和讀地址將數(shù)據(jù)從RAM中讀出,從端口Q輸出。

102、從站獲取到由主站發(fā)送的數(shù)據(jù)幀,并對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,若數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時,接收數(shù)據(jù)幀并分析數(shù)據(jù)幀,否則不接收數(shù)據(jù)幀。

在從站獲取到由主站發(fā)送的數(shù)據(jù)幀之后,從站先判斷這個數(shù)據(jù)幀的目的地址,如果是從站自身的MAC地址,就接收并繼續(xù)判斷數(shù)據(jù)的類型是不是EtherCAT的類型,若是就接收該數(shù)據(jù)幀并對該數(shù)據(jù)幀進行分析,在判斷過程中,如果接收數(shù)據(jù)的MAC地址不是從站自身MAC地址的,或者數(shù)據(jù)類型不是EtherCAT的類型時,就結束判斷并且不接收數(shù)據(jù)。請參閱圖4,為從站的數(shù)據(jù)幀判斷流程示意圖。從站在進行接收的整個過程中采用狀態(tài)機的形式來實現(xiàn)。

103、若分析得數(shù)據(jù)幀的地址命令段為從站自增寫操作命令時,從站將數(shù)據(jù)幀保存到內存空間中。

在從站分析得數(shù)據(jù)幀的地址命令段為從站自增寫操作命令時,如當?shù)刂?0處的命令段為02的時候,即將主站發(fā)來的數(shù)據(jù)幀的內容保存到從站的內存空間中。

104、若分析得數(shù)據(jù)幀的地址命令段為寫入操作命令時,從站將內存空間中的數(shù)據(jù)寫入到數(shù)據(jù)幀。

在從站分析得數(shù)據(jù)幀的地址命令段為寫入操作命令時,如當?shù)刂?0處的命令段為01的時候,從站將內存空間中的數(shù)據(jù)寫入到數(shù)據(jù)幀的某個地址中去。

以上為對本發(fā)明實施例提供的一種基于EtherCAT總線的通信協(xié)議方法的詳細描述,為便于理解,以下將對主站發(fā)送數(shù)據(jù)包至從站的過程進行仿真演示。

仿真采用Modlelsim仿真軟件,時鐘選用100M的時鐘,數(shù)據(jù)的采樣時鐘也是100M。數(shù)據(jù)包括前導序六個字節(jié)的0x“BC”,MAC地址中的目的地址和源地址,和第一個EtherCAT數(shù)據(jù)報文,包括有EtherCAT報文的幀頭和從站所要接收的8個字節(jié)的數(shù)據(jù):0x“0203040506070809”。第二個從站的數(shù)據(jù)沒有MAC地址的信息,一個EtherCAT系統(tǒng)中只有第一個被尋址的從站可以用MAC地址來尋址,其他的從站對于MAC數(shù)據(jù)都沒有識別能力的,如果隨便的一個從站被放到不是EtherCAT系統(tǒng)中使用的話將會引起廣播風暴,因為它會接收所有的包。從第二個數(shù)據(jù)報文開始將依靠從站內部的尋址方式來實現(xiàn)尋址,本仿真只是對于第一個從站接收數(shù)據(jù)的過程仿真。

在以上所定義的數(shù)據(jù)的幀結構中,定義了從站將要接收的數(shù)據(jù)的個數(shù)是8個字節(jié)的數(shù)據(jù)0x“0203040506070809”。從站要接收的數(shù)據(jù),最后將會被保存到從站的寄存器中,寄存器采用移位寄存器的形式來保存數(shù)據(jù)。在沒有接收數(shù)據(jù)的時候,移位寄存器中一直都是“0”的,一共是8個字節(jié)的“0”。當有數(shù)據(jù)要保存到寄存器中的時候,首先是數(shù)據(jù)0x“02”被保存到寄存器的最低位,然后是0x“03”被保存到最低位,同時0x“02”向高位移動了一個字節(jié),依次類推,直到數(shù)據(jù)0x“09”被保存到寄存器為止。最后在寄存器data_slave_reg中保存的數(shù)據(jù)就是0x“0203040506070809”。至此數(shù)據(jù)保存到從站的過程就結束了。還可以看到進入到從站中的數(shù)據(jù)和被從站寄存器保存的數(shù)據(jù)之間只有1.5個周期的延遲,即15ns的延遲。整個數(shù)據(jù)接收的過程用時為8個周期即80ns。

狀態(tài)機在數(shù)據(jù)和計數(shù)器到達指定的條件的時候就進行跳變,在寫狀態(tài)的時候,從站的數(shù)據(jù)寄存器中的數(shù)據(jù)是有變化的,數(shù)據(jù)幀中的數(shù)據(jù)被寫入到從站寄存器,其他狀態(tài)的時候寄存器都是處于“0”狀態(tài)的,當數(shù)據(jù)存放完之后就會自動的跳轉到空閑狀態(tài)。

以上為對主站發(fā)送數(shù)據(jù)包至從站的過程進行仿真的過程所進行的詳細描述,以下將對本發(fā)明實施例中提供的一種基于EtherCAT總線的通信協(xié)議系統(tǒng)進行詳細的描述。

請參閱圖5,本發(fā)明實施例提供的一種基于EtherCAT總線的通信協(xié)議系統(tǒng),包括:

主站和從站;

從站包括獲取判斷模塊,用于獲取到由主站發(fā)送的數(shù)據(jù)幀,并對數(shù)據(jù)幀的MAC地址及數(shù)據(jù)幀的數(shù)據(jù)類型進行判斷,若數(shù)據(jù)幀的MAC地址為從站的MAC地址且數(shù)據(jù)幀為EtherCAT數(shù)據(jù)類型時,接收數(shù)據(jù)幀并分析數(shù)據(jù)幀,否則不接收數(shù)據(jù)幀。

主站包括:

儲存模塊,用于將獲取到的要發(fā)送的數(shù)據(jù)幀儲存于RAM中,并在獲取到數(shù)據(jù)幀發(fā)送指令時將儲存于RAM中的數(shù)據(jù)幀讀出并發(fā)送至從站。

從站還包括:

第一分析模塊,用于若分析得數(shù)據(jù)幀的地址命令段為從站自增寫操作命令時,從站將數(shù)據(jù)幀保存到內存空間中。

第二分析模塊,用于若分析得數(shù)據(jù)幀的地址命令段為寫入操作命令時,從站將內存空間中的數(shù)據(jù)寫入到數(shù)據(jù)幀。

所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。

在本申請所提供的幾個實施例中,應該理解到,所揭露的系統(tǒng),裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡單元上。可以根據(jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。

所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,RandomAccess Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。

以上所述,以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的精神和范圍。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
绥化市| 自贡市| 云林县| 莆田市| 石嘴山市| 洞头县| 台州市| 尤溪县| 湘西| 淅川县| 金溪县| 温泉县| 武夷山市| 贡山| 凌海市| 迁西县| 江口县| 五大连池市| 高青县| 牙克石市| 德保县| 霸州市| 马公市| 崇阳县| 鄄城县| 浮山县| 涞源县| 出国| 贺兰县| 徐水县| 奉节县| 星座| 寻乌县| 融水| 六枝特区| 玉田县| 随州市| 海口市| 浪卡子县| 中方县| 樟树市|