機器人運動控制系統(tǒng)和方法
【專利摘要】本發(fā)明提供了一種機器人運動控制系統(tǒng)和方法,其中,該方法包括:控制器,用于將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令;驅(qū)動器,通過總線與所述控制器相連,用于根據(jù)所述控制指令驅(qū)動所述被控機器人中的電機運動到所述目的位置;電機,與所述驅(qū)動器相連,用于在所述驅(qū)動器的驅(qū)動下轉(zhuǎn)動。本發(fā)明解決了現(xiàn)有技術(shù)中對機器人進行控制的過程中所存在的控制準確性低、成本高的技術(shù)問題,達到了簡單準確地對機器人進行運動控制的技術(shù)效果。
【專利說明】
機器人運動控制系統(tǒng)和方法
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及機器控制技術(shù)領(lǐng)域,具體而言,涉及一種機器人運動控制系統(tǒng)和方法。
【背景技術(shù)】
[0002]隨著智能化水平的不斷提高,對機器人的研究也逐漸增多,目前的工業(yè)機器人已經(jīng)越來越智能,不僅可以與人聊天,還可以為人們執(zhí)行一些簡單的操作,例如,端茶倒水等等。
[0003]這些諸如端茶倒水等需要運動四肢的機器人技術(shù),必然需要涉及到對機器人各個關(guān)節(jié)運動的控制,主要是一種軸控制方式。目前的軸控運動大多還是通過硬件相互之間的配合實現(xiàn)的,控制起來準確性不高,且成本高昂。
[0004]針對上述問題,目前尚未提出有效的解決方案。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提供了一種機器人運動控制系統(tǒng),該系統(tǒng)包括:
[0006]控制器,用于將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令;
[0007]驅(qū)動器,通過總線與所述控制器相連,用于根據(jù)所述控制指令驅(qū)動所述被控機器人中的電機運動到所述目的位置;
[0008]電機,與所述驅(qū)動器相連,用于在所述驅(qū)動器的驅(qū)動下轉(zhuǎn)動。
[0009]在一個實施方式中,上述機器人運動控制系統(tǒng)還包括:
[0010]編碼器,連接在所述驅(qū)動器和所述電機之間,用于確定所述電機的轉(zhuǎn)向、轉(zhuǎn)速和轉(zhuǎn)子轉(zhuǎn)過的角度。
[0011 ] 在一個實施方式中,所述總線為PowerLink總線。
[0012]在一個實施方式中,所述控制器包括:
[0013]算法模塊,用于將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置;
[0014]軸控模塊,與所述算法模塊相連,用于根據(jù)所述目標位置生成控制指令。
[0015]在一個實施方式中,所述被控機器人為6自由度機器人。
[0016]本發(fā)明實施例還提供了一種機器人運動控制方法,該方法包括:
[0017]獲取被控機器人各個軸的位置信息;
[0018]將所述各個軸的位置信息轉(zhuǎn)換為笛卡爾坐標系下的空間位置坐標;
[0019]將所述笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置;
[0020]控制所述被控機器人的軸運動到所述目的位置。
[0021 ]在一個實施方式中,控制所述被控機器人的軸運動到所述目的位置,包括:
[0022]根據(jù)所述目的位置下發(fā)運動控制指令至軸控軟件;
[0023]所述軸控軟件將所述運動控制指令通過總線下發(fā)至驅(qū)動器;
[0024]所述驅(qū)動器根據(jù)所述控制指令控制所述被控機器人的軸運動到所述目的位置。
[0025]在一個實施方式中,所述軸控軟件為CNC軸控軟件。
[0026]在一個實施方式中,所述驅(qū)動器根據(jù)所述控制指令控制所述被控機器人的軸運動到所述目的位置,包括:
[0027]所述驅(qū)動器對所述控制指令進行解析,得到對應于所述目的位置的編碼器信息;
[0028]根據(jù)所述編碼器信息驅(qū)動電機,以使所述被控機器人的軸運動到所述目的位置。
[0029]在一個實施方式中,獲取被控機器人各個軸的位置信息,包括:
[0030]通過編碼器的反饋確定所述被控機器人各個軸的位置信息。
[0031 ]在上述實施例中,通過將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令的方式,使得只要設(shè)計好轉(zhuǎn)換的算法就可以簡單準確地實現(xiàn)對機器人的運動控制,從而解決了現(xiàn)有技術(shù)中對機器人進行控制的過程中所存在的控制準確性低、成本高的技術(shù)問題,達到了簡單準確地對機器人進行運動控制的技術(shù)效果。
【附圖說明】
[0032]構(gòu)成本申請的一部分的附圖用來提供對本發(fā)明的進一步理解,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中:
[0033]圖1是根據(jù)本發(fā)明實施例的機器人運動控制系統(tǒng)結(jié)構(gòu)示意圖;
[0034]圖2是根據(jù)本發(fā)明實施例的機器人運動控制方法的方法流程圖;
[0035]圖3是根據(jù)本發(fā)明實施例的機器人運動控制系統(tǒng)的另一結(jié)構(gòu)示意圖。
【具體實施方式】
[0036]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,下面結(jié)合實施方式和附圖,對本發(fā)明做進一步詳細說明。在此,本發(fā)明的示意性實施方式及其說明用于解釋本發(fā)明,但并不作為對本發(fā)明的限定。
[0037]在本發(fā)明實施例中,提供了一種機器人運動控制系統(tǒng),如圖1所示,包括:
[0038]控制器101,用于將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令;
[0039]驅(qū)動器102,通過總線與所述控制器相連,用于根據(jù)所述控制指令驅(qū)動所述被控機器人中的電機運動到所述目的位置;
[0040]電機103,與所述驅(qū)動器相連,用于在所述驅(qū)動器的驅(qū)動下轉(zhuǎn)動。
[0041 ]在上例中,通過將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令的方式,使得只要設(shè)計好轉(zhuǎn)換的算法就可以簡單準確地實現(xiàn)對機器人的運動控制,從而解決了現(xiàn)有技術(shù)中對機器人進行控制的過程中所存在的控制準確性低、成本高的技術(shù)問題,達到了簡單準確地對機器人進行運動控制的技術(shù)效果。
[0042]對于電機的控制主要是對電機的轉(zhuǎn)向、轉(zhuǎn)速和轉(zhuǎn)子轉(zhuǎn)過的角度等進行的控制,為此,可以在上述機器人運動控制系統(tǒng)中設(shè)置編碼器,編碼器連接在驅(qū)動器102和電機103之間,用于確定電機103的轉(zhuǎn)向、轉(zhuǎn)速和轉(zhuǎn)子轉(zhuǎn)過的角度,當然也可以是下發(fā)具體的電機的轉(zhuǎn)向、轉(zhuǎn)速和轉(zhuǎn)子轉(zhuǎn)過的角度等信息以驅(qū)動電機運轉(zhuǎn)到相應的位置。
[0043]上述的總線可以選擇PowerLink總線,實時通信技術(shù)PowerLink總線是一項在標準以太網(wǎng)介質(zhì)上,用于解決工業(yè)控制及數(shù)據(jù)采集領(lǐng)域數(shù)據(jù)傳輸實時性的技術(shù)。
[0044]具體實現(xiàn)的時候,控制器可以劃分為兩個模塊:
[0045]I)算法模塊,該算法模塊中可以集成有運動學、動力學的算法庫,用于將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置;
[0046]2)軸控模塊,可以集成基于CNC(Computer numerical control,計算機數(shù)字控制機床)的軸控軟件,與算法模塊相連,用于根據(jù)所述目標位置生成控制指令。
[0047]其中,CNC是一種由程序控制的自動化機床,該控制系統(tǒng)能夠邏輯地處理具有控制編碼或其他符號指令規(guī)定的程序,通過計算機將其譯碼,從而使機床執(zhí)行規(guī)定好了的動作,通過刀具切削將毛坯料加工成半成品成品零件。因此,可以基于CNC的基礎(chǔ)上,加入一種機器人的算法轉(zhuǎn)換,實現(xiàn)基于CNC的工業(yè)機器人運動控制。
[0048]上述被控機器人可以是6自由度機器人,所謂的6自由度機器人就是自由度為6的機器人,這6個度主要是:
[0049]I)手腕的旋扭角度范圍:T軸(O度?360度);
[0050]2)手腕的彎曲運動范圍:B軸(-45度?120度);
[0051 ] 3)手腕的橫擺運動范圍:R軸(-150度?150度);
[0052]4)小臂的擺動范圍:U軸(-75度?120度);
[0053]5)大臂的擺動范圍:L軸(-75度?120度);
[0054]6)腰部旋轉(zhuǎn)角度范圍:S軸(-160度?160度)。
[0055]自由度是確定一個系統(tǒng)在空間中的位置所需要的最小坐標數(shù)。例如:火車車廂沿鐵軌的運動,只需從某一起點站沿鐵軌量出路程,就可完全確定車廂所在的位置,即其位置用一個量就可確定,我們說火車車廂的運動有一個自由度;汽車能在地面上到處運動,自由程度比火車大些,需要用兩個量(例如:直角坐標X和y)才能確定其位置,我們說汽車的運動有兩個自由度;飛機能在空中完全自由地運動,需要用三個量(例如:直角坐標x、y和z)才能確定其位置,我們說飛機在空中的運動有三個自由度。所謂自由度數(shù)就是確定物體在空間的位置所需獨立坐標的數(shù)目。
[0056]在本例中,還提供了一種機器人運動控制方法,如圖2所示,可以包括以下步驟:
[0057]步驟201:獲取被控機器人各個軸的位置信息;
[0058]步驟202:將所述各個軸的位置信息轉(zhuǎn)換為笛卡爾坐標系下的空間位置坐標;
[0059]步驟203:將所述笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置;
[0060]步驟204:控制所述被控機器人的軸運動到所述目的位置。
[0061]具體的,在上述步驟204中,可以按照以下方式控制被控機器人的軸運動到所述目的位置:根據(jù)所述目的位置下發(fā)運動控制指令至軸控軟件,軸控軟件將運動控制指令通過總線下發(fā)至驅(qū)動器,驅(qū)動器根據(jù)所述控制指令控制所述被控機器人的軸運動到所述目的位置。
[0062]S卩,控制器所生成的控制指令顯示被下發(fā)至軸控軟件生成適應于驅(qū)動器的指令,然后驅(qū)動器控制軸進行運動至目的位置,以實現(xiàn)機器人的運動控制,該軸控軟件可以是CNC軸控軟件,當然也可以選擇其它的軸控軟件,本例僅是將CNC軸控軟件作為一個具體的示例性說明。
[0063]在驅(qū)動器根據(jù)控制指令控制被控機器人的軸運動到目的位置的時候,可以通過編碼器實現(xiàn),即,驅(qū)動器可以先對控制指令進行解析,得到對應于目的位置的編碼器信息,然后根據(jù)編碼器信息驅(qū)動電機,以使被控機器人的軸運動到目的位置。
[0064]在上述步驟201中,可以通過編碼器的反饋確定被控機器人各個軸的位置信息。
[0065]在上述實施例中,通過將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令的方式,使得只要設(shè)計好轉(zhuǎn)換的算法就可以簡單準確地實現(xiàn)對機器人的運動控制,從而解決了現(xiàn)有技術(shù)中對機器人進行控制的過程中所存在的控制準確性低、成本高的技術(shù)問題,達到了簡單準確地對機器人進行運動控制的技術(shù)效果。
[0066]本發(fā)明實施例中還提供了一個具體實施例對上述機器人運動控制系統(tǒng)和方法進行說明,然而值得注意的是,該具體實施例僅是為了更好地說明本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。
[0067]在本例中以6自由度機器人的控制為例進行說明,其本質(zhì)是對與6個關(guān)節(jié)的電機的控制,考慮到CNC數(shù)控技術(shù)經(jīng)歷了幾十年的發(fā)展已經(jīng)十分的成熟,因此可以基于CNC的基礎(chǔ)上,加入機器人的算法轉(zhuǎn)換,以實現(xiàn)對機器人的控制。具體的實施方法如下:
[0068]如圖3所示,X86平臺運行VxWorks的RTOS(實施操作系統(tǒng))的控制器、驅(qū)動器、電機組成。控制器中包括了Powerlink總線的主站的接口(在FPGA中運行),軸I?6代表機器人關(guān)節(jié)的6個電機,驅(qū)動I?6代表機器人的6個電機的驅(qū)動器。
[0069]每個軸關(guān)節(jié)的位置由電機的編碼器反饋,由驅(qū)動器獲取,并通過Powerlink總線傳送到控制器中。在獲取到每一個軸的位置信息之后,算法庫將其轉(zhuǎn)換成笛卡爾坐標系下的空間位置坐標信息。
[0070]進一步的,建立機器人的笛卡爾坐標系與機器人關(guān)節(jié)空間的轉(zhuǎn)換,控制器在獲取到軸的位置信息之后,通過算法庫進行機器人的笛卡爾空間與機器人軸關(guān)節(jié)空間的位置轉(zhuǎn)換,計算出機器人關(guān)節(jié)軸的目的位置,然后下發(fā)運動控制的指令給CNC軸控軟件。
[0071 ] CNC軸控軟件在接收到轉(zhuǎn)換空間的軸控指令之后,可以將軸控指令通過Power I ink總線下發(fā)到驅(qū)動器中,驅(qū)動器通過Powerlink從主站接收數(shù)據(jù)并解析數(shù)據(jù)。
[0072]驅(qū)動器在解析完軸控指令之后,可以下發(fā)目的位置的編碼器信息,驅(qū)動電機運轉(zhuǎn)到相應的位置,而此時6個電機的位置信息就是通過算法庫轉(zhuǎn)換之后,機器人要運動到的目的位置。
[0073]通過該具體實施例所提供的方案,大大降低了機器人專用控制器的開發(fā)成本,同時利用了CNC的成熟技術(shù),可以進行多通道的控制,即可以一個控制器控制多臺機器人,也可以添加附加軸。進一步的,排除了硬件設(shè)計帶來的風險,基于CNC的機器人運動控制轉(zhuǎn)換算法軟件包,降低了軟件的設(shè)計風險,縮短了市場投入時間。
[0074]從以上的描述中,可以看出,本發(fā)明實施例實現(xiàn)了如下技術(shù)效果:通過將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令的方式,使得只要設(shè)計好轉(zhuǎn)換的算法就可以簡單準確地實現(xiàn)對機器人的運動控制,從而解決了現(xiàn)有技術(shù)中對機器人進行控制的過程中所存在的控制準確性低、成本高的技術(shù)問題,達到了簡單準確地對機器人進行運動控制的技術(shù)效果。
[0075]顯然,本領(lǐng)域的技術(shù)人員應該明白,上述的本發(fā)明實施例的各模塊或各步驟可以用通用的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明實施例不限制于任何特定的硬件和軟件結(jié)合。
[0076]以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明實施例可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。
【主權(quán)項】
1.一種機器人運動控制系統(tǒng),其特征在于,包括: 控制器,用于將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置,并根據(jù)所述目標位置生成控制指令; 驅(qū)動器,通過總線與所述控制器相連,用于根據(jù)所述控制指令驅(qū)動所述被控機器人中的電機運動到所述目的位置; 電機,與所述驅(qū)動器相連,用于在所述驅(qū)動器的驅(qū)動下轉(zhuǎn)動。2.根據(jù)權(quán)利要求1所述的機器人運動控制系統(tǒng),其特征在于,還包括: 編碼器,連接在所述驅(qū)動器和所述電機之間,用于確定所述電機的轉(zhuǎn)向、轉(zhuǎn)速和轉(zhuǎn)子轉(zhuǎn)過的角度。3.根據(jù)權(quán)利要求1所述的機器人運動控制系統(tǒng),其特征在于,所述總線為PowerLink總線。4.根據(jù)權(quán)利要求1所述的機器人運動控制系統(tǒng),其特征在于,所述控制器包括: 算法模塊,用于將被控機器人各個軸在笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置; 軸控模塊,與所述算法模塊相連,用于根據(jù)所述目標位置生成控制指令。5.根據(jù)權(quán)利要求1至4中任一項所述的機器人運動控制系統(tǒng),其特征在于,所述被控機器人為6自由度機器人。6.一種機器人運動控制方法,其特征在于,包括: 獲取被控機器人各個軸的位置信息; 將所述各個軸的位置信息轉(zhuǎn)換為笛卡爾坐標系下的空間位置坐標; 將所述笛卡爾坐標系下的空間位置坐標與被控機器人軸關(guān)節(jié)空間位置進行轉(zhuǎn)換,得到所述被控機器人的軸的目的位置; 控制所述被控機器人的軸運動到所述目的位置。7.根據(jù)權(quán)利要求6所述的方法,其特征在于,控制所述被控機器人的軸運動到所述目的位置,包括: 根據(jù)所述目的位置下發(fā)運動控制指令至軸控軟件; 所述軸控軟件將所述運動控制指令通過總線下發(fā)至驅(qū)動器; 所述驅(qū)動器根據(jù)所述控制指令控制所述被控機器人的軸運動到所述目的位置。8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述軸控軟件為CNC軸控軟件。9.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述驅(qū)動器根據(jù)所述控制指令控制所述被控機器人的軸運動到所述目的位置,包括: 所述驅(qū)動器對所述控制指令進行解析,得到對應于所述目的位置的編碼器信息; 根據(jù)所述編碼器信息驅(qū)動電機,以使所述被控機器人的軸運動到所述目的位置。10.根據(jù)權(quán)利要求6所述的方法,其特征在于,獲取被控機器人各個軸的位置信息,包括: 通過編碼器的反饋確定所述被控機器人各個軸的位置信息。
【文檔編號】B25J9/16GK106003023SQ201610357485
【公開日】2016年10月12日
【申請日】2016年5月25日
【發(fā)明人】彭月, 古鵬, 朱茂娟, 王鑫, 段堯, 楊裕才, 曾奇, 晏晚君, 王林冰, 李晨杰, 李健斌, 薛冰梅, 韓冰
【申請人】珠海格力智能裝備有限公司