基於光纖的點對點工業串行實時通信系統及其控制方法
2023-10-24 02:49:12 1
專利名稱:基於光纖的點對點工業串行實時通信系統及其控制方法
技術領域:
本發明涉及高實時,高可靠性要求的底層設備間的數據通信領域,尤其指基於光纖的點對點工業串行實時通信系統及其控制方法。
背景技術:
數字伺服裝置的出現是數控技術發展史上的一個重要的裡程碑。採用數字伺服裝置,使所有指令值和實際值能在一個微處理器內完成處理,不但能實現傳統的扭矩環和速度環控制,而且能在極短的時間內完成精差補,實現位置環控制。隨著數字伺服裝置的發展,如何實現控制單元與數字伺服裝置之間的數據通訊成為一個關鍵問題,即必須為控制單元和數字伺服裝置配備合適的數字接口,用以簡化控制單元與伺服裝置之間的連線;簡化控制硬體,並可實現遠距離控制,而光纖通信以它固有的優點成為技術的發展方向。
現有基於模擬接口的傳統控制系統,一個模擬接口只能連接一個驅動器,當被控軸數增加時,硬體的需求會引起設計和成本的問題。並且由此引起的連線的增加會使系統更加複雜化;現有技術的另一個限制是它所能處理的信息量有限,數據傳送率和實時性不能滿足高速高精度加工的需求;並且,基於傳統技術的系統,連線的複雜化還會導致系統對噪聲信號的敏感,降低系統的可靠性,並不適合於開放型的高實時性,高可靠性底層設備間的數據通信。
發明內容
本發明的目的在於克服現有技術的缺點,提供基於光纖的點對點工業串行實時通信系統及其控制方法,本發明硬體連線簡便、設計成本低,通信速率和實時性高,系統抗幹擾能力強,適合於開放型的高實時性,高可靠性底層設備間的數據通信。
本發明的目的通過下述技術方案實現基於光纖的點對點工業串行實時通信系統,包括用來運行作業系統及控制軟體的上位機處理器、用來接收並處理上位機處理器和下位機數據的上位機數據處理模塊、上位機光纖收發模塊、下位機光纖收發模塊、用來接收並處理上位機服務數據,反饋伺服裝置數據的下位機數據處理模塊及數字伺服裝置,所述上位機處理器順序通過上位機數據處處理模塊、上位機光纖收發模塊、下位機光纖收發模塊、下位機數據處理模塊與數字伺服裝置連接。
所述上位機數據處理模塊或下位機數據處理模塊包括數據包解析模塊、數據打包模塊、4B/5B編解碼模塊、CRC校驗模塊、握手應答模塊、並/串轉換模塊,串/並轉換模塊,所述數據打包模塊輸出端順序通過4B/5B編解碼模塊、CRC校驗模塊與並/串轉換模塊的輸入端連接,所述串/並轉換模塊的輸出端順序通過CRC校驗模塊、4B/5B編解碼模塊與數據包解析模塊的輸入端連接,所述CRC校驗模塊的輸出端還通過握手應答模塊與數據打包模塊的輸入端連接。
所述上位機處理器與上位機數據處理模塊之間還連接有ISA總線接口模塊。
所述下位機數據處理模塊與數字伺服裝置連接有伺服裝置接口模塊。
所述上位機數據處理模塊或下位機數據處理模塊是用FPGA來實現。
所述上位機數據處理模塊或下位機數據處理模塊與光纖收發模塊之間用LVTTL-LVPECL電平轉換電路連接。
所述的上位機光纖收發模塊或下位機光纖收發模塊是接口採用LVPECL的光纖收發一體化模塊,所述上位機光纖收發模塊和下位機光纖收發模塊之間通過光纖連接。
所述的上位機處理器是基於Intel X86架構的PC104處理器。
一種基於光纖的點對點工業串行實時通信系統的控制方法,包括上位處理器通過控制上位機數據處理模塊把控制命令的發送到下位機數據處理模塊以及下位機數據處理模塊接收來自上位機數據處理模塊的命令完成對數字伺服裝置的控制,所述上位處理器通過上位機數據處理模塊控制下位機數據處理模塊其包括以下步驟(1)上位機數據處理模塊各模塊初始化並進入空閒狀態;(2)上位機數據處理模塊接到發送命令後,上位機數據處理模塊將需要發送的數據進行打包,加上相應的控制位,並對數據包進行4B/5B編碼;(3)上位機數據處理模塊發送同步信號,發送完同步信號後,上位機數據處理模塊發送幀類型符,其中幀類型符標識了該數據幀要傳送的是普通數據還是應答信號,其中應答信號來自下位機數據處理模塊;(4)上位機數據處理模塊發送完幀類型符後,根據所發送的類型符判斷若為數據類型符,則繼續進入傳輸數據的階段,發送數據及其CRC校驗碼,完成數據發送,並進行下一階段的數據傳輸;若為應答信號類型符,則發送結束返回步驟(1);所述下位機數據處理模塊接收來自上位機數據處理模塊的命令完成對數字伺服裝置的控制包括其包括以下步驟(A)下位機數據處理模塊各模塊初始化並進入空閒狀態;(B)下位機數據處理模塊在空閒狀態等待來自上位機數據處理模塊的同步信號,若下位機數據處理模塊收到同步信號就進入接收幀類型符的階段,若沒有,則繼續等待同步信號;(C)下位機數據處理模塊收到同步信號,就進入接收來自上位機數據處理模塊發送的幀類型符的階段;(D)下位機數據處理模塊在收到幀類型符後,根據所收到的類型符判斷,若為數據類型符,則繼續進入接收數據的階段;若不為數據類型符,則判斷該幀類型符是否為應答信號若幀類型符是應答類型符,則判斷應答類型符的類型,若是正應答信號,則下位機數據處理模塊向上位機數據處理模塊發送下一幀數據,若是負應答信號,則下位機數據處理模塊向上位機數據處理模塊重發上一幀數據,並返回執行步驟(A);若幀類型符不是應答類型符又不是數據類型符,則產生報告幀類型錯誤,並返回執行步驟(A);(E)進入接收數據的階段後,下位機數據處理模塊接收數據及CRC校驗碼。根據收到的CRC校驗碼進行校驗,若正確,向上位機返回正應答信號,並返回到步驟(A),若校驗錯誤,則向上位機返回負應答信號;(F)下位機數據處理模塊返回空閒狀態,等待同步信號及下一次數據接收,而伺服裝置接口模塊則對正確接收的數據做進一步處理;(G)伺服裝置接口模塊將數據包解析,從中提取上位機處理器發送的伺服控制信號和伺服數據,並根據這些伺服控制信號和伺服數據由該模塊控制伺服裝置的運行。
所述幀類型的格式如下
,其中CRC校驗碼採用標準的16位CRC生成多項式G(X)1=1+X(1)+X(5)+X(12)+X(15)生成。
本發明與現有技術相比具有如下優點和有益效果1、本發明自行設計的通信協議通過通用的現場可編程門陣列晶片FPGA實現,由於系統的可編程性,協議的修改和功能的添加並不會導致設計周期的延長和成本的增加。
2、本發明採用光纖作為傳輸介質,簡化了現有技術設備之間連線的複雜性,提高了數據傳輸的準確性和可靠性。
3、本發明在協議和硬體上都同時支持單軸和多軸,並能根據被控軸數的數量靈活定義數據幀的長度和格式。
4、本發明在通信協議上是自主設計並實現硬體的通用化,另外本設計在應用時不受驅動器和控制器供應商的限制。
圖1為本發明的系統框圖;圖2為本發明上位機數據處理模塊的結構框圖;圖3為本發明下位機數據處理模塊的結構框圖;圖4為本發明上位處理器通過控制上位機數據處理模塊把控制命令的發送到下位機數據處理模塊工作流程圖;圖5為本發明下位機數據處理模塊接收來自上位機數據處理模塊的命令完成對數字伺服裝置的控制工作流程圖;圖6為基於光纖的點對點工業串行實時通信系統硬體實現結構框圖;圖7為本發明一實施例的上位機數據處理模塊與ISA總線接口模塊連接電路圖;圖8為本發明一實施例的上位機光纖收發模塊或下位機光纖收發模塊及其配置電路的電路圖;圖9為本發明一實施例的下位機數據處理模塊及其外圍電路的電路圖;圖10為本發明一實施例的伺服裝置接口電路圖。
具體實施例方式
下面結合實施例及附圖對本發明作進一步詳細的描述,但本發明的實施方式不限於此。
實施例如圖1所示,本發明的一種基於光纖的點對點工業串行實時通信系統包括上位機處理器、ISA總線接口模塊、上位機數據處理模塊、上位機光纖收發模塊、下位機光纖收發模塊、下位機數據處理模塊、伺服裝置接口模塊及數字伺服裝置,所述上位機處理器順序通過ISA總線接口模塊、上位機數據處理模塊、上位機光纖收發模塊、下位機光纖收發模塊、下位機數據處理模塊、伺服裝置接口模塊與數字伺服裝置連接,所述上位機光纖收發模塊與下位機光纖收發模塊通過光纖連接。
如圖2、圖3所示,上位機數據處理模塊或下位機數據處理模塊包括上位機數據處理模塊或下位機數據處理模塊包括數據包解析模塊、數據打包模塊、4B/5B編解碼模塊、CRC校驗模塊、握手應答模塊、並/串轉換模塊,串/並轉換模塊,所述數據包解析模塊、數據打包模塊、4B/5B編解碼模塊、CRC校驗模塊、握手應答模塊、並/串轉換模塊,串/並轉換模塊,所述數據打包模塊輸出端順序通過4B/5B編解碼模塊、CRC校驗模塊與並/串轉換模塊的輸入端連接,所述串/並轉換模塊的輸出端順序通過CRC校驗模塊、4B/5B編解碼模塊與數據包解析模塊的輸入端連接,所述CRC校驗模塊的輸出端還通過握手應答模塊與數據打包模塊的輸入端連接。
對上位機數據處理模塊或下位機數據處理模塊包括的不同的功能模塊進行封裝,給上層或其他模塊提供一個統一的外圍接口,使得其他模塊或上層模塊只需根據其接口就可以操作該模塊,不必了解其實現細節。
如圖4所示,本發明上位處理器通過控制上位機數據處理模塊把控制命令的發送到下位機數據處理模塊過程包括以下步驟(1)上位機數據處理模塊各模塊初始化並進入空閒狀態;(2)上位機數據處理模塊接到發送命令後,上位機數據處理模塊將需要發送的數據進行打包,加上相應的控制位,並對數據包進行4B/5B編碼;(3)上位機數據處理模塊發送同步信號,該同步信號一般為15個連續的『0』,發送完同步信號後,上位機數據處理模塊發送幀類型符,從這一階段開始,上位機數據處理模塊開始計數,每次從0計數到5,即5個時鐘周期發送一位數據,其中幀類型符標識了該數據幀要傳送的是普通數據還是應答信號,其中應答信號來自下位機數據處理模塊;(4)上位機數據處理模塊發送完幀類型符後,根據所發送的類型符判斷若為數據類型符,則繼續進入傳輸數據的階段,發送數據及其CRC校驗碼,完成數據發送,並進行下一階段的數據傳輸;若為應答信號類型符,則發送結束返回步驟(1);如圖5所示,本發明下位機數據處理模塊接收來自上位機數據處理模塊的命令完成對數字伺服裝置的控制的過程包括以下步驟(A)下位機數據處理模塊各模塊初始化並進入空閒狀態;
(B)下位機數據處理模塊在空閒狀態等待來自上位機數據處理模塊的同步信號,若下位機數據處理模塊收到同步信號就進入接收幀類型符的階段,若沒有,則繼續等待同步信號;(C)下位機數據處理模塊接收到連續13個『0』信號時,下位機數據處理模塊認為收到同步信號,進入接收來自上位機數據處理模塊發送的幀類型符的階段,然後下位機數據處理模塊開始計數,每次從0計數到5,即5個時鐘周期讀取一位數據;因為下位機數據處理模塊在收到13個『0』後就開始計數接收數據,比上位機開始發送數據的時刻提前了兩個時鐘周期,所以當下位機數據處理模塊計數到5採樣一位數據時,在時序上正好處於上位機發送一位數據的中間時刻,保證了數據採樣的正確性。
(D)下位機數據處理模塊在收到幀類型符後,根據所收到的類型符判斷,若為數據類型符,則繼續進入接收數據的階段;若不為數據類型符,則判斷該幀類型符是否為應答信號若幀類型符是應答類型符,則判斷應答類型符的類型,若是正應答信號,則下位機數據處理模塊向上位機數據處理模塊發送下一幀數據,若是負應答信號,則下位機數據處理模塊向上位機數據處理模塊重發上一幀數據,並返回執行步驟(A);若幀類型符不是應答類型符,則產生報告幀類型錯誤,並返回執行步驟(A);(E)進入接收數據的階段後,下位機數據處理模塊接收數據及CRC校驗碼。根據收到的CRC校驗碼進行校驗,若正確,向上位機返回正應答信號,並返回到步驟(A),若校驗錯誤,則向上位機返回負應答信號;(F)下位機數據處理模塊返回空閒狀態,等待同步信號及下一次數據接收,而伺服裝置接口模塊則對正確接收的數據做進一步處理;(G)伺服裝置接口模塊將數據包解析,從中提取上位機處理器發送的伺服控制信號和伺服數據,並根據這些伺服控制信號和伺服數據由該模塊控制數字伺服裝置的運行。
本發明整個發送/接收周期所傳輸的信號按照幀格式的定義進行傳輸,本發明設計定義了如下的幀格式
其中數據段長度可以自行定義,以滿足不同數據通信量的需求。CRC校驗碼採用標準的16位CRC生成多項式G(X)1=1+X(1)+X(5)+X(12)+X(15)生成。
如圖6所示,本發明主站數據處理模塊是採用現場可編程門陣列晶片FPGA實現,上位機處理器採用基於IntelX86架構的PC104處理器。PC104處理器通過主站ISA總線接口模塊與上位機數據處理模塊連接。上位機數據處理模塊連接的電路有FPGA配置電路、測試信號及I/O埠電路、鎖相環電路、電源電路、系統時鐘,復位電路。上位機通信協議晶片與上位機光纖收發模塊之間通過LVTTL-LVPECL電平轉換電路連接,並配有測試埠,用以觀察和測試FPGA協議晶片的內部工作狀況。另外該上位機光纖收發模塊是接口用LVPECL電平的光纖收發一體化模塊。光纖的串行傳輸機制大大簡化了硬體電路結構。具體電路見圖7、圖8。
本發明中下位機數據處理模塊連接的電路有FPGA配置電路、測試信號及I/O埠電路、鎖相環電路、電源電路、系統時鐘、復位電路。下位機數據處理模塊(下位機FPGA通信協議晶片)與下位機光纖收發模塊之間通過LVTTL-LVPECL電平轉換電路連接,並配有測試埠,用以觀察和測試FPGA協議晶片的內部工作狀況。下位機數據處理模塊與數字伺服裝置連接有伺服裝置接口模塊。具體電路見圖8、圖9、圖10。
本發明的上位機FPGA通信協議晶片和下位機FPGA通信協議晶片,上位機光纖收發模塊、下位機光纖收發模塊以及ISA總線接口模塊設計在同一塊電路板上。使用塑料光纖,節點間通信距離可達40M,使用玻璃光纖,站點間通信距離可以達到800M,數據的有效速率能達到4M/s,能夠滿足大規模工業現場的分布式控制需求。
上述實施例為本發明較佳的實施方式,但本發明的實施方式並不受上述實施例的限制,其他的任何未背離本發明的精神實質與原理下所作的改變、修飾、替代、組合、簡化,均應為等效的置換方式,都包含在本發明的保護範圍之內。
權利要求
1.基於光纖的點對點工業串行實時通信系統,其特徵在於,包括用來運行作業系統及控制軟體的上位機處理器、用來接收並處理上位機處理器和下位機數據的上位機數據處理模塊、上位機光纖收發模塊、下位機光纖收發模塊、用來接收並處理上位機服務數據,反饋數字伺服裝置數據的下位機數據處理模塊及數字伺服裝置,所述上位機處理器順序通過上位機數據處理模塊、上位機光纖收發模塊、下位機光纖收發模塊、下位機數據處理模塊與數字伺服裝置連接。
2.根據權利要求1所述的基於光纖的點對點工業串行實時通信系統,其特徵在於,所述上位機數據處理模塊或下位機數據處理模塊包括數據包解析模塊、數據打包模塊、4B/5B編解碼模塊、CRC校驗模塊、握手應答模塊、並/串轉換模塊,串/並轉換模塊,所述數據打包模塊輸出端順序通過4B/5B編解碼模塊、CRC校驗模塊與並/串轉換模塊的輸入端連接,所述串/並轉換模塊的輸出端順序通過CRC校驗模塊、4B/5B編解碼模塊與數據包解析模塊的輸入端連接,所述CRC校驗模塊的輸出端還通過握手應答模塊與數據打包模塊的輸入端連接。
3.根據權利要求1所述的基於光纖的點對點工業串行實時通信系統,其特徵在於,所述上位機處理器與上位機數據處理模塊之間還連接有ISA總線接口模塊。
4.根據權利要求1所述的基於光纖的點對點工業串行實時通信系統及其控制方法,其特徵在於,所述下位機數據處理模塊與數字伺服裝置連接有伺服裝置接口模塊。
5.根據權利要求1所述的基於光纖的點對點工業串行實時通信系統,其特徵在於,所述上位機數據處理模塊或下位機數據處理模塊是用FPGA來實現。
6.根據權利要求1所述的基於光纖的點對點工業串行實時通信系統,其特徵在於,所述上位機數據處理模塊或下位機數據處理模塊與光纖收發模塊之間用LVTTL-LVPECL電平轉換電路連接。
7.根據權利要求1所述的基於光纖的點對點工業串行實時通信系統,其特徵在於,所述的上位機光纖收發模塊或下位機光纖收發模塊是接口採用LVPECL的光纖收發一體化模塊,所述上位機光纖收發模塊和下位機光纖收發模塊之間通過光纖連接。
8.根據權利要求1所述的基於光纖的點對點工業串行實時通信系統,其特徵在於,所述的上位機處理器是基於Intel X86架構的PC104處理器。
9.權利要求1所述基於光纖的點對點工業串行實時通信系統的控制方法的實時通信方法,包括上位處理器通過控制上位機數據處理模塊把控制命令的發送到下位機數據處理模塊以及下位機數據處理模塊接收來自上位機數據處理模塊的命令完成對數字伺服裝置的控制,其特徵在於,所述上位處理器通過上位機數據處理模塊控制下位機數據處理模塊其包括以下步驟(1)上位機數據處理模塊各模塊初始化並進入空閒狀態;(2)上位機數據處理模塊接到發送命令後,上位機數據處理模塊將需要發送的數據進行打包,加上相應的控制位,並對數據包進行4B/5B編碼;(3)上位機數據處理模塊發送同步信號,發送完同步信號後,上位機數據處理模塊發送幀類型符,其中幀類型符標識了該數據幀要傳送的是普通數據還是應答信號,其中應答信號來自下位機數據處理模塊;(4)上位機數據處理模塊發送完幀類型符後,根據所發送的類型符判斷若為數據類型符,則繼續進入傳輸數據的階段,發送數據及其CRC校驗碼,完成數據發送,並進行下一階段的數據傳輸;若為應答信號類型符,則發送結束返回步驟(1);所述下位機數據處理模塊接收來自上位機數據處理模塊的命令完成對數字伺服裝置的控制包括其包括以下步驟(A)下位機數據處理模塊各模塊初始化並進入空閒狀態;(B)下位機數據處理模塊在空閒狀態等待來自上位機數據處理模塊的同步信號,若下位機數據處理模塊收到同步信號就進入接收幀類型符的階段,若沒有,則繼續等待同步信號;(C)下位機數據處理模塊收到同步信號,就進入接收來自上位機數據處理模塊發送的幀類型符的階段;(D)下位機數據處理模塊在收到幀類型符後,根據所收到的類型符判斷,若為數據類型符,則繼續進入接收數據的階段;若不為數據類型符,則判斷該幀類型符是否為應答信號若幀類型符是應答類型符,則判斷應答類型符的類型,若是正應答信號,則下位機數據處理模塊向上位機數據處理模塊發送下一幀數據,若是負應答信號,則下位機數據處理模塊向上位機數據處理模塊重發上一幀數據,並返回執行步驟(A);若幀類型符不是應答類型符又不是數據類型符,則產生報告幀類型錯誤,並返回執行步驟(A);(E)進入接收數據的階段後,下位機數據處理模塊接收數據及CRC校驗碼。根據收到的CRC校驗碼進行校驗,若正確,向上位機返回正應答信號,並返回到步驟(A),若校驗錯誤,則向上位機返回負應答信號;(F)下位機數據處理模塊返回空閒狀態,等待同步信號及下一次數據接收,而伺服裝置接口模塊則對正確接收的數據做進一步處理;(G)伺服裝置接口模塊將數據包解析,從中提取上位機處理器發送的伺服控制信號和伺服數據,並根據這些伺服控制信號和伺服數據由該模塊控制數字伺服裝置的運行。
10.根據權利要求9所述基於光纖的點對點工業串行實時通信系統的控制方法的實時通信方法,其特徵在於,所述幀類型的格式如下
,其中CRC校驗碼採用標準的16位CRC生成多項式G(X)1=1+X(1)+X(5)+X(12)+X(15)生成。
全文摘要
本發明公開了一種基於光纖的點對點工業串行實時通信系統,包括上位機處理器、上位機數據處理模塊、上位機光纖收發模塊、下位機光纖收發模塊,下位機數據處理模塊及數字伺服裝置,所述上位機處理器順序通過上位機數據處理模塊、上位機光纖收發模塊、下位機光纖收發模塊、下位機數據處理模塊與數字伺服裝置連接,本發明用於通信數據幀較短,數據量較小且具有周期性的CNC(計算機數字控制)控制器與伺服單元之間的數據傳輸,也可以應用於其他具有類似數據特點的工業現場實時通信中,特別是應用在高端數控系統中。
文檔編號H04B10/08GK101047447SQ20071002781
公開日2007年10月3日 申請日期2007年4月29日 優先權日2007年4月29日
發明者裴海龍, 焦瑩, 劉少君, 刁明新 申請人:華南理工大學