專利名稱:一種輪腿式機(jī)器人的控制方法
技術(shù)領(lǐng)域:
本發(fā)明屬于航天技術(shù)領(lǐng)域,特別是涉及一種輪腿式機(jī)器人的控制方法。
背景技術(shù):
由于月球具有巨大的開發(fā)價(jià)值,因此對(duì)月球的探測(cè)越來越重要,從而使得月球探測(cè)對(duì)機(jī)器人的移動(dòng)性能要求非常高,主要體現(xiàn)在地面適應(yīng)性、行駛平順性、越障性、自主行駛功能方面。傳統(tǒng)的四輪車因?yàn)榈孛孀赃m應(yīng)能力差,特別是不能很好的適應(yīng)不可預(yù)知的地況,具有翻越障礙、爬長(zhǎng)坡性能較差和轉(zhuǎn)向不靈活等缺陷,由于在崎嶇路面上車輛容易抖動(dòng),車輛遇到左右不等高地形時(shí)無法單獨(dú)通過傾角判斷被抬離地面的車輪。
發(fā)明內(nèi)容
有鑒于現(xiàn)有技術(shù)的上述缺陷,本發(fā)明所要解決的技術(shù)問題是提供一種能夠優(yōu)化機(jī)器人行駛平順性,提高機(jī)器人輪腿系統(tǒng)對(duì)復(fù)雜地形表面響應(yīng)的基于輪腿式機(jī)器人控制系統(tǒng)的控制方法。為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種輪腿式機(jī)器人的控制方法,輪腿式機(jī)器人控制系統(tǒng)包括中央控制芯片、底層控制器、安裝在機(jī)器人車身上的三軸加速度傳感器、安裝在車輪端部的壓力傳感器、關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器、車輪電機(jī)驅(qū)動(dòng)控制器和關(guān)節(jié)角度傳感器,所述壓力傳感器用于對(duì)車輪進(jìn)行輪端壓力檢測(cè),所述三軸加速度傳感器用于檢測(cè)車身傾角并輸出車身傾角反饋信號(hào),所述關(guān)節(jié)角度傳感器用于檢測(cè)各關(guān)節(jié)的傾角、各關(guān)節(jié)的相對(duì)角度值及機(jī)器人的車體重心;所述中央控制芯片通過CAN總線與底層控制器雙向連接;所述底層控制器的第一輸出端連接所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器的輸入端,所述底層控制器的第二輸出端連接所述車輪電機(jī)驅(qū)動(dòng)控制器的輸入端,所述底層控制器的第一輸入端連接所述壓力傳感器的輸出端,所述底層控制器的第二輸入端連接所述關(guān)節(jié)角度傳感器的輸出端,所述中央控制芯片的輸入端 與所述三軸加速度傳感器的輸出端連接;其特征在于包括以下步驟:步驟一、中央控制芯片初始化,設(shè)定車身傾角閾值Θ ^、輪端壓力閾值Ftl和車體重心閾值H。;步驟二、中央控制芯片采集車身傾角值Θ和輪端壓力值F ;步驟三、判斷車身傾角值Θ是否大于車身傾角閾值θ > Θ ^時(shí),執(zhí)行下一個(gè)步驟,否則重復(fù)執(zhí)行步驟三;步驟四、計(jì)算當(dāng)前車體重心值H并判斷車體傾斜方向;設(shè)定車身橫向傾角值為0y,車身縱向傾角值為θχ,當(dāng)0x-0y〈O時(shí),車體為橫向傾斜,執(zhí)行步驟五;當(dāng)θ χ- θ y>0時(shí),車體為縱向傾斜,執(zhí)行步驟六;步驟五、當(dāng)Θ y<0時(shí),車體為左傾,設(shè)定機(jī)器人右前輪端壓力值為Frf,右后輪端壓力值為Frh,右側(cè)輪端壓力差為IF1I, IF11 =Frf-Frh,當(dāng)IF11〈F。時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右側(cè)車輪降低;當(dāng)Η-Η0<0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左側(cè)車輪抬高;當(dāng)IF11 >F0時(shí),判斷F1的正負(fù),當(dāng)F1X)時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右前輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右后輪降低;當(dāng)F1W時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右后輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右前輪降低;當(dāng)ey>0時(shí),車體為右傾,設(shè)定機(jī)器人左前輪端壓力值為Flf,左后輪端壓力值為Flh,左側(cè)輪端壓力差為IF21,IF21 =Flf-Flh,當(dāng)IF21〈F。時(shí),判斷H-Htl是否大于0,當(dāng)H-Hq>0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左側(cè)車輪降低;當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右側(cè)車輪抬高;當(dāng)If2^fci時(shí),判斷F2的正負(fù),當(dāng)F2>0時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左前輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左后輪降低;當(dāng)F2〈0時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左后輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左前輪降低;步驟六、當(dāng)θ χ<0時(shí),車體為前傾,設(shè)定機(jī)器人右后輪端壓力值為Fril,左后輪端壓力值為Flh,后側(cè)輪端壓力差為IF31,IF31 =Frh-Flh,當(dāng)IF31〈F。時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制后側(cè)車輪抬高;當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制前側(cè)車輪降低;當(dāng)If3^fci時(shí),判斷F3的正負(fù),當(dāng)F3>0時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右后輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右前輪降低;當(dāng)F3〈0時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左后輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片 發(fā)送指令給底層控制器,底層控制器控制左前輪降低;當(dāng)θ χ>0時(shí),車體為后傾,設(shè)定機(jī)器人右前輪端壓力值為Frt,左前輪端壓力值為Flf,前側(cè)輪端壓力差為If4I,當(dāng)I匕|〈匕時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制前側(cè)車輪抬高;當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制后側(cè)車輪降低;當(dāng)If4^fci時(shí),判斷F4的正負(fù),當(dāng)f4>o時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右前輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制右后輪降低;當(dāng)F4〈0時(shí),判斷H-Hci是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左前輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片發(fā)送指令給底層控制器,底層控制器控制左后輪降低。進(jìn)一步的,所述輪腿式機(jī)器人控制系統(tǒng)還包括上位機(jī),所述上位機(jī)雙向連接有第一無線收發(fā)模塊,所述中央控制芯片雙向連接有第二無線收發(fā)模塊,所述第一無線收發(fā)模塊與所述第二無線收發(fā)模塊之間通過無線信號(hào)進(jìn)行數(shù)據(jù)交互;所述控制方法還包括通過上位機(jī)控制輪腿式機(jī)器人動(dòng)作的步驟;上位機(jī)發(fā)送速度與轉(zhuǎn)向指令給中央控制芯片,中央控制芯片發(fā)送指令給底層控制器,底層控制器發(fā)送信號(hào)給所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器和車輪電機(jī)驅(qū)動(dòng)控制器,所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器和車輪電機(jī)驅(qū)動(dòng)控制器根據(jù)接收到的信號(hào)控制相應(yīng)的電機(jī)動(dòng)作。本發(fā)明的有益效果是:本發(fā)明通過安裝在車身上的三軸加速度傳感器檢測(cè)車身傾角,輸出車身傾角反饋信號(hào),中心控制芯片通過接收到的反饋信號(hào)控制腿部運(yùn)動(dòng),使車身恢復(fù)水平,本發(fā)明能夠讓車輪所受壓力趨于平均,使各輪負(fù)載轉(zhuǎn)矩均勻分布,能夠確保在崎嶇路面上所有車輪都能與地面接觸,大幅度提升車輛行駛穩(wěn)定性。
圖1是輪腿式機(jī)器人控制系統(tǒng)一具體實(shí)施方式
的電路原理示意圖。圖2是本發(fā)明的流程示意圖。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明:
如圖1所示,一種輪腿式機(jī)器人控制系統(tǒng),包括中央控制芯片1、底層控制器2、安裝在機(jī)器人車身上的三軸加速度傳感器3、安裝在車輪端部的壓力傳感器4、關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器5、車輪電機(jī)驅(qū)動(dòng)控制器6、關(guān)節(jié)角度傳感器7和上位機(jī)8,所述壓力傳感器4用于對(duì)車輪進(jìn)行輪端壓力檢測(cè),所述三軸加速度傳感器3用于檢測(cè)車身傾角并輸出車身傾角反饋信號(hào),所述關(guān)節(jié)角度傳感器7用于檢測(cè)各關(guān)節(jié)的傾角、各關(guān)節(jié)的相對(duì)角度值及機(jī)器人的車體重心;所述中央控制芯片I通過CAN總線與底層控制器2雙向連接;所述底層控制器2的第一輸出端連接所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器5的輸入端,所述底層控制器2的第二輸出端連接所述車輪電機(jī)驅(qū)動(dòng)控制器6的輸入端,所述底層控制器2的第一輸入端連接所述壓力傳感器4的輸出端,所述底層控制器2的第二輸入端連接所述關(guān)節(jié)角度傳感器7的輸出端,所述中央控制芯片I的輸入端與所述三軸加速度傳感器3的輸出端連接;所述上位機(jī)8雙向連接有第一無線收發(fā)模塊9,所述中央控制芯片I雙向連接有第二無線收發(fā)模塊10,所述第一無線收發(fā)模塊9與所述第二無線收發(fā)模塊10之間通過無線信號(hào)進(jìn)行數(shù)據(jù)交互。本發(fā)明提出了分層次模塊化控制方式,分層次模塊化控制通過一個(gè)中央控制芯片通過外部總線控制四個(gè)底層控制器,實(shí)現(xiàn)4條輪腿的協(xié)調(diào)運(yùn)動(dòng),中央控制芯片與底層控制器之間通過CAN總線連接與通信,很好的解決了單一控制器硬件資源有限與高速實(shí)時(shí)響應(yīng)的矛盾,同時(shí)也大大簡(jiǎn)化了控制電路的設(shè)計(jì),CAN總線的高可靠性容錯(cuò)通信機(jī)制也保證了系統(tǒng)的高穩(wěn)定性要求。本實(shí)施例中,中央控制芯片I采用ST公司的STM32 VET6型處理器。STM32微控制器是基于一個(gè)支持實(shí)時(shí)仿真和嵌入式跟蹤的的32位ARMv7 CPU,并帶有32kB、64kB、128kB、256kB和512kB嵌入的高速Flash存儲(chǔ)器。128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu)使32位代碼能夠在最大時(shí)鐘速率下運(yùn)行。對(duì)代碼規(guī)模有嚴(yán)格控制的應(yīng)用可使用16位Thumb模式將代碼規(guī)模降低超過30%,而性能的損失卻很小。由于內(nèi)置了寬范圍的串行通信接口和8/16/32kB的片內(nèi)SRAM,它們也非常適合于通信網(wǎng)關(guān)、協(xié)議轉(zhuǎn)換器、軟件modem、語音識(shí)別、低端成像,為這些應(yīng)用提供大規(guī)模的緩沖區(qū)和強(qiáng)大的處理功能。多個(gè)32位定時(shí)器、2個(gè)12位16路的ADC、12位DAC、PWM通道、集成CAN通信接口、80個(gè)GPIO以及多達(dá)9個(gè)邊沿或電平觸發(fā)的外部中斷使它們特別適用于工業(yè)控制應(yīng)用以及醫(yī)療系統(tǒng)。如圖2所示,一種輪腿式機(jī)器人的控制方法,包括以下步驟:
步驟一、中央控制芯片I初始化,設(shè)定車身傾角閾值Θ C1、輪端壓力閾值Ftl和車體重心閾值H。;步驟二、模式選擇;當(dāng)選擇純滾動(dòng)模式時(shí)執(zhí)行步驟三,當(dāng)選擇可重構(gòu)滾動(dòng)模式時(shí)執(zhí)行步驟四;步驟三、上位機(jī)8發(fā)送速度與轉(zhuǎn)向指令給中央控制芯片1,中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2發(fā)送信號(hào)給所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器5和車輪電機(jī)驅(qū)動(dòng)控制器6,所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器5和車輪電機(jī)驅(qū)動(dòng)控制器6根據(jù)接收到的信號(hào)控制相應(yīng)的電機(jī)動(dòng)作;步驟四、中央控制芯片I采集車身傾角值Θ和輪端壓力值F ;步驟五、判斷車身傾角值Θ是否大于車身傾角閾值Θ ^,當(dāng)θ > Θ ^時(shí),執(zhí)行下一個(gè)步驟,否則重復(fù)執(zhí)行步驟五;步驟六、計(jì)算當(dāng)前車體重心值H并判斷車體傾斜方向;設(shè)定車身橫向傾角值為0y,車身縱向傾角值為θχ,當(dāng)0x-0y〈O時(shí),車體為橫向傾斜,執(zhí)行步驟七;當(dāng)θ χ- Θ y>0時(shí),車體為縱向傾斜,執(zhí)行步驟八;步驟七、當(dāng)Θ y<0時(shí),車體為左傾,設(shè)定機(jī)器人右前輪端壓力值為Frf,右后輪端壓力值為Frh,右側(cè)輪端壓力 差為IF1I, IF11 =Frf-Frh,當(dāng)IF11〈F。時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2發(fā)送信號(hào)給相應(yīng)的關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器5和車輪電機(jī)驅(qū)動(dòng)控制器6,這些電機(jī)驅(qū)動(dòng)控制器驅(qū)動(dòng)電機(jī)以控制右側(cè)車輪降低,然后結(jié)束;當(dāng)Η-Η/0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2發(fā)送信號(hào)給相應(yīng)的關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器5和車輪電機(jī)驅(qū)動(dòng)控制器6,這些電機(jī)驅(qū)動(dòng)控制器驅(qū)動(dòng)電機(jī)以控制左側(cè)車輪抬高,然后結(jié)束;當(dāng)IF11 YciWJljWF1的正負(fù),當(dāng)F1X)時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右前輪抬高,然后結(jié)束,當(dāng)Η-Η/0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右后輪降低,然后結(jié)束;當(dāng)F1W時(shí),判斷H-H0是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右后輪抬高,然后結(jié)束,當(dāng)Η-Η/0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右前輪降低,然后結(jié)束。當(dāng)Θ y>0時(shí),車體為右傾,設(shè)定機(jī)器人左前輪端壓力值為Flf,左后輪端壓力值為Flh,左側(cè)輪端壓力差為IF21,IF21 =Flf-Flh,當(dāng)IF21〈F。時(shí),判斷H-Htl是否大于0,當(dāng)H-Hq>0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左側(cè)車輪降低,然后結(jié)束;當(dāng)Η-Η0<0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2發(fā)送信號(hào)給相應(yīng)的關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器5和車輪電機(jī)驅(qū)動(dòng)控制器6,這些電機(jī)驅(qū)動(dòng)控制器驅(qū)動(dòng)電機(jī)以控制右側(cè)車輪抬高,然后結(jié)束;當(dāng)IF21 >F0時(shí),判斷F2的正負(fù),當(dāng)F2>0時(shí),判斷H-Hci是否大于0,當(dāng)H-Hq>0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左前輪抬高,然后結(jié)束,當(dāng)Η-Η0<0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左后輪降低,然后結(jié)束;當(dāng)F2〈0時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左后輪抬高,然后結(jié)束,當(dāng)Η-Η/0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左前輪降低,然后結(jié)束;步驟八、當(dāng)θ χ<0時(shí),車體為前傾,設(shè)定機(jī)器人右后輪端壓力值為Fril,左后輪端壓力值為Flh,后側(cè)輪端壓力差為IF31,IF31 =Frh-Flh,當(dāng)IF31〈F。時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制后側(cè)車輪抬高,然后結(jié)束;當(dāng)Η-Η/0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制前側(cè)車輪降低,然后結(jié)束;當(dāng)F3|>F0時(shí),判斷F3的正負(fù),當(dāng)F3X)時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右后輪抬聞,然后結(jié)束,當(dāng)Η-Η0<0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右前輪降低,然后結(jié)束;當(dāng)F3〈0時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左后輪抬高,然后結(jié)束,當(dāng)Η-Η/0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左前輪降低,然后結(jié)束;當(dāng)θ χ>0時(shí),車體為后傾,設(shè)定機(jī)器人右前輪端壓力值為Frt,左前輪端壓力值為Flf,前側(cè)輪端壓力差為IF4I,當(dāng)IF4RFtl時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制前側(cè)車輪抬高,然后結(jié)束iiH-H/O時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制后側(cè)車輪降低,然后結(jié)束;當(dāng)
F41 >FQ時(shí),判斷F4的正負(fù),當(dāng)F4X)時(shí),判斷H-H0是否大于O,當(dāng)Η-Η0>0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右前輪抬高,然后結(jié)束,當(dāng)Η-Η/0時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制右后輪降低,然后結(jié)束;當(dāng)F4〈0時(shí),判斷H-H0是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左前輪抬高,然后結(jié)束,當(dāng)H-H^O時(shí),中央控制芯片I發(fā)送指令給底層控制器2,底層控制器2控制左后輪降低,然后結(jié)束。以上詳細(xì)描述了本發(fā)明的較佳具體實(shí)施例。應(yīng)當(dāng)理解,本領(lǐng)域的普通技術(shù)人員無需創(chuàng)造性勞動(dòng)就可以根據(jù)本發(fā)明的構(gòu)思作出諸多修改和變化。因此,凡本技術(shù)領(lǐng)域中技術(shù)人員依本發(fā)明的構(gòu)思在現(xiàn)有技·術(shù)的基礎(chǔ)上通過邏輯分析、推理或者有限的實(shí)驗(yàn)可以得到的技術(shù)方案,皆應(yīng)在由權(quán)利要求書所確定的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種輪腿式機(jī)器人的控制方法,輪腿式機(jī)器人控制系統(tǒng)包括中央控制芯片(I)、底層控制器(2)、安裝在機(jī)器人車身上的三軸加速度傳感器(3)、安裝在車輪端部的壓力傳感器(4)、關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器(5)、車輪電機(jī)驅(qū)動(dòng)控制器(6)和關(guān)節(jié)角度傳感器(7),所述壓力傳感器(4)用于對(duì)車輪進(jìn)行輪端壓力檢測(cè),所述三軸加速度傳感器(3)用于檢測(cè)車身傾角并輸出車身傾角反饋信號(hào),所述關(guān)節(jié)角度傳感器(7)用于檢測(cè)各關(guān)節(jié)的傾角、各關(guān)節(jié)的相對(duì)角度值及機(jī)器人的車體重心;所述中央控制芯片(I)通過CAN總線與底層控制器(2)雙向連接;所述底層控制器(2)的第一輸出端連接所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器(5)的輸入端,所述底層控制器(2)的第二輸出端連接所述車輪電機(jī)驅(qū)動(dòng)控制器(6)的輸入端,所述底層控制器(2)的第一輸入端連接所述壓力傳感器(4)的輸出端,所述底層控制器(2)的第二輸入端連接所述關(guān)節(jié)角度傳感器(7)的輸出端,所述中央控制芯片(I)的輸入端與所述三軸加速度傳感器(3)的輸出端連接;其特征在于包括以下步驟: 步驟一、中央控制芯片(I)初始化,設(shè)定車身傾角閾值Θ C1、輪端壓力閾值Ftl和車體重心閾值H0 ; 步驟二、中央控制芯片(I)采集車身傾角值Θ和輪端壓力值F ; 步驟三、判斷車身傾角值Θ是否大于車身傾角閾值Qtl,當(dāng)時(shí),執(zhí)行下一個(gè)步驟,否則重復(fù)執(zhí)行步驟三; 步驟四、計(jì)算當(dāng)前車體重心值H并判斷車體傾斜方向; 設(shè)定車身橫向傾角值為Qy,車身縱向傾角值為ΘΧ,當(dāng)0x-0y〈o時(shí),車體為橫向傾斜,執(zhí)行步驟五;當(dāng)θ χ- Θ y>0時(shí),車體為縱向傾斜,執(zhí)行步驟六; 步驟五、當(dāng)Θ y〈0時(shí),車體為左傾,設(shè)定機(jī)器人右前輪端壓力值為Frf,右后輪端壓力值為Fril,右側(cè)輪端壓力差為IF11,IF11 =Frf-Frh,當(dāng)IF11 <F0時(shí),判斷H-Htl是否大于O,當(dāng)H-Hq>0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右側(cè)車輪降低;當(dāng)Η-Η0< 0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左側(cè)車輪抬高;當(dāng)IF11 YciWJljWF1的正負(fù),當(dāng)F1X)時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右前輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右后輪降低;當(dāng)匕〈0時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右后輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右前輪降低; 當(dāng)Θ y>0時(shí),車體為右傾,設(shè)定機(jī)器人左前輪端壓力值為Flf,左后輪端壓力值為Flh,左側(cè)輪端壓力差為IF21,IF21 =Flf-Flh,當(dāng)IF21 <F0時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左側(cè)車輪降低;iH-H(l〈0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右側(cè)車輪抬高;當(dāng)IF21 >F0時(shí),判斷F2的正負(fù),當(dāng)F2>0時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左前輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左后輪降低;當(dāng)F2〈0時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左后輪抬高,當(dāng)H-H^O時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左前輪降低;步驟六、當(dāng)Θ X〈0時(shí),車體為前傾,設(shè)定機(jī)器人右后輪端壓力值為fa,左后輪端壓力值為Flh,后側(cè)輪端壓力差為IF31,IF31 =Frh-Flh,當(dāng)IF31 <F0時(shí),判斷H-Htl是否大于O,當(dāng)H-Hq>0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制后側(cè)車輪抬高;當(dāng)Η-Η0<0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制前側(cè)車輪降低;當(dāng)IF31 >F0時(shí),判斷F3的正負(fù),當(dāng)F3>0時(shí),判斷H-H0是否大于O,當(dāng)Η-Η0>0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右后輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右前輪降低;當(dāng)&〈0時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左后輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左前輪降低; 當(dāng)θ χ>0時(shí),車體為后傾,設(shè)定機(jī)器人右前輪端壓力值為Frf,左前輪端壓力值為Flf,前側(cè)輪端壓力差為IF4I,當(dāng)IF4RFtl時(shí),判斷H-H0是否大于O,當(dāng)H-H0X)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制前側(cè)車輪抬高;當(dāng)Η-Η0<0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制后側(cè)車輪降低;當(dāng)If4Pfci時(shí),判斷F4的正負(fù),當(dāng)F4X)時(shí),判斷H-Htl是否大于O,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制右前輪抬高,當(dāng)H-H^O時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底 層控制器(2)控制右后輪降低;當(dāng)F4〈0時(shí),判斷H-Htl是否大于0,當(dāng)H-HtlX)時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左前輪抬高,當(dāng)Η-Η/0時(shí),中央控制芯片(I)發(fā)送指令給底層控制器(2),底層控制器(2)控制左后輪降低。
2.如權(quán)利要求1所述的一種輪腿式機(jī)器人的控制方法,其特征是:所述輪腿式機(jī)器人控制系統(tǒng)還包括上位機(jī)(8),所述上位機(jī)(8)雙向連接有第一無線收發(fā)模塊(9),所述中央控制芯片(I)雙向連接有第二無線收發(fā)模塊(10),所述第一無線收發(fā)模塊(9)與所述第二無線收發(fā)模塊(10)之間通過無線信號(hào)進(jìn)行數(shù)據(jù)交互; 所述控制方法還包括通過上位機(jī)(8)控制輪腿式機(jī)器人動(dòng)作的步驟; 上位機(jī)(8)發(fā)送速度與轉(zhuǎn)向指令給中央控制芯片(1),中央控制芯片(I)發(fā)送指令給底層控制器(2 ),底層控制器(2 )發(fā)送信號(hào)給所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器(5 )和車輪電機(jī)驅(qū)動(dòng)控制器(6 ),所述關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器(5 )和車輪電機(jī)驅(qū)動(dòng)控制器(6 )根據(jù)接收到的信號(hào)控制相應(yīng)的電機(jī)動(dòng)作。
全文摘要
本發(fā)明公開了一種輪腿式機(jī)器人的控制方法,屬于航天技術(shù)領(lǐng)域,本發(fā)明由底層控制部分和中央控制芯片組成,底層控制部分包括底層控制器、三軸加速度傳感器、壓力傳感器、關(guān)節(jié)電機(jī)驅(qū)動(dòng)控制器、車輪電機(jī)驅(qū)動(dòng)控制器和關(guān)節(jié)角度傳感器。底層控制部分進(jìn)行各關(guān)節(jié)與車輪的底層控制、傳感器信號(hào)采集,為中央控制芯片提供控制接口與反饋信號(hào)。本發(fā)明通過安裝在車身上的三軸加速度傳感器檢測(cè)車身傾角,輸出車身傾角反饋信號(hào),中心控制芯片通過控制腿部運(yùn)動(dòng),使車身恢復(fù)水平,能夠讓車輪所受壓力趨于平均,使各輪負(fù)載轉(zhuǎn)矩均勻分布,能夠確保在崎嶇路面上所有車輪都能與地面接觸,大幅度提升車輛行駛穩(wěn)定性。
文檔編號(hào)B25J9/18GK103223673SQ20131018981
公開日2013年7月31日 申請(qǐng)日期2013年5月21日 優(yōu)先權(quán)日2013年5月21日
發(fā)明者李奇敏, 溫皓宇, 羅洋, 端贛來 申請(qǐng)人:重慶大學(xué)