中文字幕无码日韩视频无码三区

機器人的控制方法和裝置的制造方法

文檔序號:10488891閱讀:329來源:國知局
機器人的控制方法和裝置的制造方法
【專利摘要】本發明涉及一種機器人的控制方法和裝置,所述方法包括:主站節點接收多個從站節點對應的軸命令;所述主站節點通過總線對從站節點發送軸命令;所述從站節點通過總線接收所述軸命令,根據所述軸命令獲取對應的狀態數據,并將所述狀態數據通過總線返回至所述主站節點;主站節點接收多個從站節點返回的狀態數據,并對所述狀態數據進行存儲。采用本方法能夠有效提高模塊化機器人的控制性能。
【專利說明】
機器人的控制方法和裝置
技術領域
[0001]本發明涉及機器人技術領域,特別是涉及一種機器人的控制方法和裝置。
【背景技術】
[0002]在設備制造領域中,機器人目前成為一種新興的生產設備,其擴展新、系統性和操作的簡易性使得機器人能夠應用于多種生產流水線來替代人工操作。目前出現了一種結構簡化的模塊化機器人,可以將多個軸的控制環路集成在幾個特定的模塊內,模塊之間的電氣連接只有電源線和通訊總線。與傳統機器人相比,這種模塊化機器人消除了傳統的驅動控制電柜,但是由于各個軸與主控制器之間的通訊存在不同程度的延遲,由此導致模塊化機器人的控制性能降低。

【發明內容】

[0003]基于此,有必要針對上述技術冋題,提供一種能夠有效提尚I旲塊化機器人的控制性能的機器人控制方法和裝置。
[0004]—種機器人的控制方法,所述方法包括:
[0005]主站節點接收多個從站節點對應的軸命令;
[0006]所述主站節點通過總線對從站節點發送軸命令;
[0007]所述從站節點通過總線接收所述軸命令,根據所述軸命令獲取對應的狀態數據,并將所述狀態數據通過總線返回至所述主站節點;
[0008]主站節點接收多個從站節點返回的狀態數據,并對所述狀態數據進行存儲。
[0009]在其中一個實施例中,所述從站節點包括目標從站節點,所述從站節點通過總線接收所述軸命令,根據所述軸命令獲取對應的狀態數據,并將所述狀態數據通過總線返回至所述主站節點的步驟包括:
[0010]所述目標從站節點通過總線接收所述軸命令,識別所述軸命令并對所述軸命令進行解析,得到解析后的軸命令;
[0011 ]所述目標從站節點將所述解析后的軸命令存儲至對應的命令緩存,在狀態緩存中獲取上一個周期的狀態數據;
[0012]所述目標從站節點將所述上一個周期的狀態數據按照預設格式進行封包,得到封包后的狀態數據,并將所述封包后的狀態數據發送至總線。
[0013]在其中一個實施例中,所述軸命令中包括同步命令;所述主站節點通過總線對從站節點發送軸命令的步驟之后,還包括:
[0014]所述主站節點開啟發送延時,在等待預設的時間間隔后觸發與目標從站節點相同的同步動作;
[0015]其他從站節點通過總線接收所述同步命令,根據所述同步命令觸發與所述目標從站節點相同的同步動作。
[0016]在其中一個實施例中,在所述將所述狀態數據通過總線返回至所述主站節點的步驟之后,還包括:
[0017]所述主站節點向多個從站節點發送同步命令;
[0018]所述主站節點開啟發送延時,在等待預設的時間間隔后與多個從站節點根據所述同步命令觸發相同的同步動作。
[0019]在其中一個實施例中,所述方法還包括:
[0020]在觸發同步動作時,主站節點或從站節點獲取當前狀態數據,并將當前狀態數據保存至狀態緩存;
[0021]讀取命令緩存中的軸命令作為插補時的命令基數;
[0022]計算軸命令的變化率;
[0023]根據所述命令基數和變化率計算出插補后的命令,將所述插補后的命令作為實際命令進行下發。
[0024]在其中一個實施例中,在所述讀取命令緩存中的軸命令作為插補時的命令基數的步驟之前,還包括:
[0025]主站節點或從站節點在接收到同步命令之后,判斷對應的命令緩存是否被更新;
[0026]若是,則記錄當前時間為第一時間;
[0027]獲取上次同步的第二時間;
[0028]利用本次軸命令的命令值和上一次軸命令的命令值的變化量,以及第一時間與第二時間的時間間隔來計算連續的軸命令對應的變化率;
[0029]將當前狀態數據上傳至狀態緩存,并將命令緩存中的軸命令確定為命令基數。
[0030]—種機器人的控制裝置,包括:主站節點、總線和從站節點,其中:
[0031]主站節點,用于接收多個從站節點對應的軸命令,通過總線對從站節點發送軸命令;
[0032]從站節點,用于通過總線接收所述軸命令,根據所述軸命令獲取對應的狀態數據,并將所述狀態數據通過總線返回至所述主站節點;
[0033]所述主站節點還用于接收多個從站節點返回的狀態數據,并對所述狀態數據進行存儲。
[0034]在其中一個實施例中,所述從站節點包括目標從站節點,所述目標從站節點用于通過總線接收所述軸命令,識別所述軸命令并對所述軸命令進行解析,得到解析后的軸命令;將所述解析后的軸命令存儲至對應的命令緩存,在狀態緩存中獲取上一個周期的狀態數據;將所述上一個周期的狀態數據按照預設格式進行封包,得到封包后的狀態數據,并將所述封包后的狀態數據發送至總線。
[0035]在其中一個實施例中,所述軸命令中包括同步命令,所述主站節點還用于開啟發送延時,在等待預設的時間間隔后觸發與目標從站節點相同的同步動作;其他從站節點用于通過總線接收所述同步命令,根據所述同步命令觸發與目標從站節點相同的同步動作。
[0036]在其中一個實施例中,所述主站節點還用于向多個從站節點發送同步命令;開啟發送延時,在等待預設的時間間隔后與多個從站節點根據所述同步命令觸發相同的同步動作。
[0037]上述機器人控制方法和裝置,通過主站節點來統一接收多個從站節點的軸命令,主站節點通過總線向從站節點發送軸命令,從站節點根據軸命令獲取對應的狀態數據后通過總線返回至主站節點。主站節點接收多個從站節點返回的狀態數據并進行存儲。由此能夠通過主站節點來統一管理多個從站節點的軸命令和狀態數據,無需多個軸與外部主控制器單獨進行通信,從而使得模塊化機器人克服了多個軸不同步的問題,有效提高了模塊化機器人的控制性能。
【附圖說明】
[0038]圖1為一個實施例中機器人控制方法的流程圖;
[0039]圖2為一個實施例中六軸機器人的結構示意圖;
[0040]圖3為一個實施例中機器人控制裝置的結構示意圖。
【具體實施方式】
[0041 ]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0042]在一個實施例中,如圖1所示,提供了一種機器人的控制方法,包括:
[0043 ]步驟102,主站節點接收多個從站節點對應的軸命令。
[0044]機器人是指簡化結構的模塊化機器人,該機器人是多軸機器人,例如,該機器人可以是六軸機器人、五軸機器人或四軸機器人等。為了克服目前模塊化機器人各個軸與主控制器之間的通信延遲不同的問題,對該機器人搭建一種主從結構的總線架構。該總線架構中包括主站節點、總線和多個從站節點。該機器人構成一個包含多個節點的總線網絡。以六軸機器人為例,其結構示意圖如圖2所示。其中,第一軸202作為主站節點,第二軸204、第三軸206、第四軸208、第五軸210和第六軸212分別作為從站節點。主站節點還包括網絡接口。網絡接口的形式按照與該機器人通信的外部網絡協議決定。該網絡接口是外部網絡與主站節點之間的通道。對于外部網絡而言,該機器人可以視為一個獨立的設備進行控制。其中,由主站節點負責所有節點的軸命令和狀態數據的管理,并保持與外部網絡的通訊。
[0045]步驟104,主站節點通過總線對從站節點發送軸命令。
[0046]主站節點接收外部網絡通過網絡接口發送過來的軸命令。主站節點將接收到的軸命令存儲到主站節點對應的命令緩存。軸命令也就是對多個軸的控制命令。機器人的每個節點都設置了對應的命令緩存和狀態緩存。由于主站節點與第一軸相對應,主站節點的軸命令不需通過總線來發送,主站節點可以從對應的命令緩存中獲取對第一軸的軸命令,并根據該軸命令在對應的狀態緩存中獲取第一軸的狀態數據。
[0047]主站節點通過總線對從站節點發送對應的軸命令。具體的,主站節點在對應的命令緩存中獲取從站節點的軸命令,并將軸命令按照預設格式進行封包,將封包后的軸命令發送至總線。其中,軸命令的預設格式可以是總線協議格式。軸命令中包括了節點標識和對應的命令內容。節點標識可以在軟件燒寫時決定,也可以通過硬件撥碼開關決定。
[0048]步驟106,從站節點通過總線接收所述軸命令,根據軸命令獲取對應狀態數據,并將狀態數據通過總線返回至主站節點。
[0049]從站節點包括目標從站節點和其他從站節點。主站節點通過總線對目標從站節點發送軸命令時,其他從站節點可以通過總線來接收該軸命令。多個從站節點在接收到軸命令后,將軸命令存入對應的命令緩存。
[0050]在一個實施例中,從站節點通過總線接收軸命令,根據軸命令獲取對應的狀態數據,并將狀態數據通過總線返回至主站節點的步驟包括:目標從站節點通過總線接收軸命令,識別軸命令并對軸命令進行解析,得到解析后的軸命令;目標從站節點將解析后的軸命令存儲至對應的命令緩存,在狀態緩存中獲取上一個周期的狀態數據;目標從站節點將上一個周期的狀態數據按照預設格式進行封包,得到封包后的狀態數據,并將封包后的狀態數據發送至總線。
[0051 ]從站節點根據節點標識來對軸命令進行識別。若該軸命令中攜帶的節點標識與從站節點一致,則表示目標從站節點接收到了對應的軸命令。其他從站節點可以將該軸命令忽略。目標從站節點對該軸命令進行解析,得到解析后的軸命令,將解析后的軸命令存儲至命令緩存中,并在狀態緩存中獲取上一個周期的狀態數據。目標從站節點將所述上一個周期的狀態數據按照預設格式進行封包,得到封包后的狀態數據,并將所述封包后的狀態數據發送至總線。
[0052]主站節點對所有節點發送對應的軸命令并接收到各個節點返回的狀態數據,可以視為一個周期。其中主站節點對各節點發出的同步命令可以視為上一個周期的結束與下一個周期的開始的分界點。為了保持多個軸之間的同步,其他從站節點通過總線接收到軸命令后,將軸命令存儲至對應的命令緩存中。
[0053]主站節點和其他從站節點可以通過總線同時接收到目標從站節點返回的狀態數據,但是除了總站節點之外其他從站節點會將該狀態數據忽略掉。主站節點在接收到目標從站節點通過總線返回的狀態數據之后,再向下一個目標從站節點發送軸命令,直至所有的從站節點向主站節點返回對應的狀態數據。
[0054]步驟108,主站節點接收多個從站節點返回的狀態數據,并對狀態數據進行存儲。
[0055]主站節點對每個從站節點返回的封包后的狀態數據進行解包,得到解包后的狀態數據,將解包后的狀態數據對應節點標識存儲在主站節點對應的狀態緩存中。
[0056]以六軸機器人為例,主站節點獲取第一軸對應的軸命令,根據該軸命令將第一軸的狀態數據存儲在對應的狀態緩存中。主站節點獲取第二軸對應的從站節點的軸命令,對該軸命令進行封包并發送至總線上,其他軸對應的從站節點通過總線同時接收該軸命令,第二軸對應的從站節點識別出該軸命令,其他從站節點忽略該軸命令。第二軸對應的從站節點對軸命令進行解包,根據解包后的軸命令獲取第二軸的狀態數據。第二軸對應的從站節點將狀態數據進行封包并發送到總線上。主站節點和其他從站節點通過總線同時接收封包后的狀態數據,除了主站節點之外其他節點將該狀態數據忽略。主站節點將該狀態數據進行解包,并將解包后的狀態數據存儲在主站節點對應的狀態緩存中。主站節點向第三軸對應的從站節點發送軸命令,直至對第六軸對應的從站節點發送軸命令,主站節點接收到所有從站節點返回的各個軸的狀態數據,并存入對應的狀態緩存中。由此完成一次軸數據的交換行為。
[0057]進一步的,主站節點可以將多個目標從站節點的軸命令分別按照預設格式進行封包,可以同時將封包后的多個軸命令發送至總線。多個目標從站節點可以同時接收封包后的軸命令,并根據節點標識來識別出各自對應的軸命令。多個目標從站節點對軸命令進行解包,分別根據解包后的軸命令獲取對應的狀態數據,并將狀態數據根據預設格式進行封包。多個目標從站節點可以同時將封包后的狀態數據發送至總線,主站節點接收多個封包后的狀態數據,并對多個封包后的狀態數據進行解包,得到多個解包后的狀態數據。主站節點將多個解包后的狀態數據對應節點標識存儲在主站節點對應的狀態緩存中。
[0058]本實施例中,通過主站節點來統一接收多個從站節點的軸命令,主站節點通過總線向從站節點發送軸命令,從站節點根據軸命令獲取對應的狀態數據后通過總線返回至主站節點。主站節點接收多個從站節點返回的狀態數據并進行存儲。由此能夠通過主站節點來統一管理多個從站節點的軸命令和狀態數據,無需多個軸與外部主控制器單獨進行通信,從而使得模塊化機器人克服了多個軸不同步的問題,有效提高了模塊化機器人的控制性能。
[0059]在一個實施例中,軸命令中包括同步命令;主站節點通過總線對從站節點發送軸命令的步驟之后,還包括:主站節點開啟發送延時,在等待預設的時間間隔后觸發與目標從站節點相同的同步動作;其他從站節點通過總線接收同步命令,根據同步命令觸發與目標從站節點相同的同步動作。
[0060]本實施例中,主站節點中發送的軸命令可以包括同步命令。由于同步命令是包括在軸命令中的,因此能夠有效節省命令緩存空間。同步命令可以包括在主站節點發送的第一個軸命令中,也可以包括在其他的軸命令中。優選的,同步命令包括在主站節點向第一個從站節點發送的軸命令中。同步命令可以視為上一個周期的結束和下一個周期的開始的分界點。
[0061]主站節點通過總線發送同步命令時,會相應的開啟發送延時,等待一個預設的時間間隔。由于總線傳輸軸命令和同步命令需要一定的時間,為了保持多個軸的控制延時相同,需要對主站節點增加一個發送延時。發送延時等待的預設時間間隔與從站節點響應軸命令的時間相等。在主站節點發布完同步命令后,觸發第一軸與目標從站節點相同的同步動作,在主站節點對應的命令緩存中獲取命令緩存值用以控制第一軸的行為,并讀取第一軸的實際狀態至主站節點對應的狀態緩存。其他從站節點通過總線可以檢測到同步命令。其他從站節點根據同步命令觸發與目標從站節點相同的同步動作。
[0062]以六軸機器人為例,同步命令可以包括在主站節點向第二軸對應的從站節點發送的軸命令中。主站節點向總線上發送第二軸對應的軸命令,并相應的開啟發送延時,等待一個預設的時間間隔。主站節點觸發第一軸與第二軸相同的同步動作,在命令緩存中獲取命令緩存值用以控制第一軸的行為,并讀取第一軸的實際狀態至主站節點對應的狀態緩存。其他從站檢測到對第二軸發送的軸命令后,會根據該軸命令中攜帶的同步命令觸發與第二軸相同的同步動作。
[0063]本實施例中,通過執行同步命令,能夠使得多個軸的控制延時相同,響應時間得到統一。外部網絡對機器人發出控制命令后,機器人的各個軸均會在相同的延時之后產生動作。
[0064]在一個實施例中,在將狀態數據通過總線返回至主站節點的步驟之后,還包括:主站節點向多個從站節點發送同步命令;主站節點開啟發送延時,在等待預設的時間間隔后與多個從站節點根據同步命令觸發相同的同步動作。
[0065]本實施例中,主站節點可以在所有的節點返回狀態數據之后,再通過總線向所有的節點發送同步命令。主站節點在發送同步命令時,開啟發送延時,等待一個預設的時間間隔。主站節點可以觸發與某個從站節點相同的同步動作。優選的,主站節點可以觸發與第一個從站節點相同的同步動作。預設的時間間隔與從站節點響應軸命令的時間相同。在主站節點對應的命令緩存中獲取命令緩存值用以控制第一軸的行為,并讀取第一軸的實際狀態至主站節點對應的狀態緩存。多個從站節點根據同步命令觸發相同的同步動作。具體的,多個從站節點可以觸發與某個從站節點相同的同步動作。優選的,多個從站節點可以觸發與第一個從站節點相同的同步動作。通過執行同步命令,能夠使得多個軸的控制延時相同,響應時間得到統一。外部網絡對機器人發出控制命令后,機器人的各個軸均會在相同的延時之后產生動作。
[0066]在一個實施例中,方法還包括:在觸發同步動作時,主站節點或從站節點獲取當前狀態數據,并將當前狀態數據保存至狀態緩存;讀取命令緩存中的軸命令作為插補時的命令基數;計算軸命令的變化率;根據命令基數和變化率計算出插補后的命令,將插補后的命令作為實際命令進行下發。
[0067]本實施例中,每個節點會接收到連續的軸命令,其中節點包括主站節點和多個從站節點。鑒于每個節點的命令更新速度較慢,需要對連續變化的軸命令的命令值進行插補,以便對輸出的軸命令曲線進行有效平滑。
[0068]當主站節點或從站節點被觸發同步動作時,獲取當前狀態數據,并將當前狀態數據保存至狀態緩存。主站節點或從站節點讀取命令緩存中的軸命令作為插補時的命令基數。在讀取命令基數之前還需要判斷命令是否被更新。
[0069]在一個實施例中,在讀取命令緩存中的軸命令作為插補時的命令基數的步驟之前,還包括:主站節點或從站節點在接收到同步命令之后,判斷對應的命令緩存是否被更新;若是,則記錄當前時間為第一時間;獲取上次同步的第二時間;利用本次軸命令的命令值和上一次軸命令的命令值的變化量,以及第一時間與第二時間的時間間隔來計算連續的軸命令對應的變化率;將當前的狀態數據上傳至狀態緩存,并將命令緩存中的軸命令確定為命令基數。
[0070]主站節點或從站節點在接收到同步命令之后,會判斷對應的命令緩存是否被更新。具體的,在命令緩存中設置開關標識,如果命令緩存中有更新則對更新的軸命令添加開標識,如果未更新則保持關標識。開關標識可以采用布爾量來表示。如果命令緩存中有開標識的軸命令,則表示命令緩存被更新。記錄當前時間為第一時間。如果命令緩存未更新,則直接結束同步動作。獲取上次同步的時間作為第二時間。計算第一時間與第二時間之間的時間間隔,將該時間間隔作為上一次同步的時間間隔。獲取本次軸命令的命令值與上一次軸命令的命令值,計算本次軸命令的命令值與上一次軸命令的命令值的變化量。將該變化量除以上一次同步的時間間隔,得到本次軸命令與上一次軸命令的變化率。
[0071]主站節點或從站節點將當前狀態數據上傳至狀態緩存,并將命令緩存中的軸命令確定為命令技術。由此使得狀態緩存與實際的狀態數據同步,命令緩存與命令基數同步。更新當前時間為第二時間。從而完成了軸命令的更新。
[0072]主站節點或從站節點在計算出軸命令的變化率之后,會根據命令基數和軸命令的變化率來計算插補后的命令,并將插補后的命令作為實際命令。具體的,記錄下發實際命令的時間為第三時間,計算第三時間與第二時間的時間間隔作為插補時間間隔。利用命令基數加上軸命令的變化率與插補時間間隔的乘積計算出實際命令的命令值。即實際命令的命令值=命令基數+軸命令的變化率*(第三時間-第二時間)。主站節點或從站節點將實際命令進行下發。通過對連續變化的軸命令的命令值進行插補,由此能夠對輸出的軸命令曲線進行有效平滑。
[0073]在一個實施例中,如圖3所示,提供了一種機器人的控制裝置,包括:主站節點、總線和從站節點,其中:
[0074]主站節點,用于接收多個從站節點對應的軸命令,通過總線對從站節點發送軸命令。
[0075]從站節點,用于通過總線接收軸命令,根據軸命令獲取對應的狀態數據,并將狀態數據通過總線返回至主站節點。
[0076]主站節點還用于通過總線接收多個從站節點返回的狀態數據,并對狀態數據進行存儲。
[0077]在一個實施例中,所述從站節點包括目標從站節點,所述目標從站節點用于通過總線接收所述軸命令,識別所述軸命令并對所述軸命令進行解析,得到解析后的軸命令;將所述解析后的軸命令存儲至對應的命令緩存,在狀態緩存中獲取上一個周期的狀態數據;將上一個周期的狀態數據按照預設格式進行封包,得到封包后的狀態數據,并將封包后的狀態數據發送至總線。
[0078]在一個實施例中,軸命令中包括同步命令,主站節點還用于開啟發送延時,在等待預設的時間間隔后觸發與目標從站節點相同的同步動作;其他從站節點用于通過總線接收同步命令,根據同步命令觸發與目標從站節點相同的同步動作。
[0079]在一個實施例中,主站節點還用于向多個從站節點發送同步命令;開啟發送延時,在等待預設的時間間隔后與多個從站節點根據同步命令觸發相同的同步動作。
[0080]在一個實施例中,在觸發同步動作時,主站節點或從站節點還用于獲取當前狀態數據,并將當前狀態數據保存至狀態緩存;讀取命令緩存中的軸命令作為插補時的命令基數;計算軸命令的變化率;根據命令基數和變化率計算出插補后的命令,將插補后的命令作為實際命令進行下發。
[0081]在一個實施例中,主站節點或從站節點還用于在接收到同步命令之后,判斷對應的命令緩存是否被更新;若是,則記錄當前時間為第一時間;獲取上次同步的第二時間;利用本次軸命令的命令值和上一次軸命令的命令值的變化量,以及第一時間與第二時間的時間間隔來計算連續的軸命令對應的變化率;將當前狀態數據上傳至狀態緩存,并將命令緩存中的軸命令確定為命令基數。
[0082]以上實施例的各技術特征可以進行任意的組合,為使描述簡潔,未對上述實施例中的各個技術特征所有可能的組合都進行描述,然而,只要這些技術特征的組合不存在矛盾,都應當認為是本說明書記載的范圍。
[0083]以上實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對發明專利范圍的限制。應當指出的是,對于本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬于本發明的保護范圍。因此,本發明專利的保護范圍應以所附權利要求為準。
【主權項】
1.一種機器人的控制方法,所述方法包括: 主站節點接收多個從站節點對應的軸命令; 所述主站節點通過總線對從站節點發送軸命令; 所述從站節點通過總線接收所述軸命令,根據所述軸命令獲取對應的狀態數據,并將所述狀態數據通過總線返回至所述主站節點; 主站節點接收多個從站節點返回的狀態數據,并對所述狀態數據進行存儲。2.根據權利要求1所述的方法,其特征在于,所述從站節點包括目標從站節點,所述從站節點通過總線接收所述軸命令,根據所述軸命令獲取對應的狀態數據,并將所述狀態數據通過總線返回至所述主站節點的步驟包括: 所述目標從站節點通過總線接收所述軸命令,識別所述軸命令并對所述軸命令進行解析,得到解析后的軸命令; 所述目標從站節點將所述解析后的軸命令存儲至對應的命令緩存,在狀態緩存中獲取上一個周期的狀態數據; 所述目標從站節點將所述上一個周期的狀態數據按照預設格式進行封包,得到封包后的狀態數據,并將所述封包后的狀態數據發送至總線。3.根據權利要求1所述的方法,其特征在于,所述軸命令中包括同步命令;所述主站節點通過總線對從站節點發送軸命令的步驟之后,還包括: 所述主站節點開啟發送延時,在等待預設的時間間隔后觸發與目標從站節點相同的同步動作; 其他從站節點通過總線接收所述同步命令,根據所述同步命令觸發與所述目標從站節點相同的同步動作。4.根據權利要求1所述的方法,其特征在于,在所述將所述狀態數據通過總線返回至所述主站節點的步驟之后,還包括: 所述主站節點向多個從站節點發送同步命令; 所述主站節點開啟發送延時,在等待預設的時間間隔后與多個從站節點根據所述同步命令觸發相同的同步動作。5.根據權利要求3或4所述的方法,其特征在于,所述方法還包括: 在觸發同步動作時,主站節點或從站節點獲取當前狀態數據,并將當前狀態數據保存至狀態緩存; 讀取命令緩存中的軸命令作為插補時的命令基數; 計算軸命令的變化率; 根據所述命令基數和變化率計算出插補后的命令,將所述插補后的命令作為實際命令進行下發。6.根據權利要求5所述的方法,其特征在于,在所述讀取命令緩存中的軸命令作為插補時的命令基數的步驟之前,還包括: 主站節點或從站節點在接收到同步命令之后,判斷對應的命令緩存是否被更新; 若是,則記錄當前時間為第一時間; 獲取上次同步的第二時間; 利用本次軸命令的命令值和上一次軸命令的命令值的變化量,以及第一時間與第二時間的時間間隔來計算連續的軸命令對應的變化率; 將當前狀態數據上傳至狀態緩存,并將命令緩存中的軸命令確定為命令基數。7.—種機器人的控制裝置,其特征在于,所述控制裝置包括:主站節點、總線和從站節點,其中: 主站節點,用于接收多個從站節點對應的軸命令,通過總線對從站節點發送軸命令; 從站節點,用于通過總線接收所述軸命令,根據所述軸命令獲取對應的狀態數據,并將所述狀態數據通過總線返回至所述主站節點; 所述主站節點還用于通過總線接收多個從站節點返回的狀態數據,并對所述狀態數據進行存儲。8.根據權利要求7所述的控制裝置,其特征在于,所述從站節點包括目標從站節點,所述目標從站節點用于通過總線接收所述軸命令,識別所述軸命令并對所述軸命令進行解析,得到解析后的軸命令;將所述解析后的軸命令存儲至對應的命令緩存,在狀態緩存中獲取上一個周期的狀態數據;將所述上一個周期的狀態數據按照預設格式進行封包,得到封包后的狀態數據,并將所述封包后的狀態數據發送至總線。9.根據權利要求7所述的控制裝置,其特征在于,所述軸命令中包括同步命令,所述主站節點還用于開啟發送延時,在等待預設的時間間隔后觸發與目標從站節點相同的同步動作;其他從站節點用于通過總線接收所述同步命令,根據所述同步命令觸發與目標從站節點相同的同步動作。10.根據權利要求7所述的控制裝置,其特征在于,所述主站節點還用于向多個從站節點發送同步命令;開啟發送延時,在等待預設的時間間隔后與多個從站節點根據所述同步命令觸發相同的同步動作。
【文檔編號】G06F13/40GK105843764SQ201610214800
【公開日】2016年8月10日
【申請日】2016年4月7日
【發明人】王璐明, 高云峰
【申請人】大族激光科技產業集團股份有限公司, 深圳市大族電機科技有限公司
網(wang)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1