專利名稱:一種獲取乒乓球機器人球拍擊球姿態和擊球速度的方法
技術領域:
本發明屬于機器人控制領域中的運動規劃,具體地說是用于獲得乒乓球機器人球拍擊球姿態和擊球速度的一種方法。
背景技術:
傳統上乒乓球機器人球拍擊球姿態和擊球速度的計算主要通過以下兩種方法實現1)將乒乓球飛行軌跡模型簡化為拋物線,將球拍反彈模型簡化為鏡面反射模型(參見 "Kalpesh P. M.,Ferat S.,and Eli S.,An application of human robot interaction development of a ping-pong playing robotic arm IEEE International Conference on Systems,Man and Cybernetics,第 2 卷,第 1831 1836 頁,2005。”)。2)利用學習算法和專家系統,通過大量的釆樣數據獲得球拍擊球姿態和擊球速度(參見“L. Acosta, J. Rodrigo, J. A. Mendez, G. N. Marichal and Μ. Sigut, Ping-pong player prototype, a PC-based, low-Cost, ping pong robot, IEEE Robotics and Automation Magazine,第 10 卷,第 4 期,第 44 52 頁,2003 年,,及"Michiya M.,Takaaki H.,Masahiro T.,and Fumio Μ. ,A Learning Approach to Robotic Table Tennis. IEEE Transaction on Robotics and Automation,第21卷,第4期,第767 771頁,2005年”)。其中第一種方法由于忽略乒乓球飛行時空氣阻力和球拍表面反彈特性,計算簡單。但通過模型計算得出的球拍擊球姿態和擊球速度存在較大的偏差,從而造成乒乓球機器人回球時落點較為分散,回球質量較差, 只能實現乒乓球機器人與人簡單對打。第二種方法利用學習算法和專家系統,通過大量訓練數據獲得球拍擊球姿態和擊球速度,對于采樣數據集內的數據,乒乓球機器人能夠計算正確球拍擊球姿態和擊球速度,但對于采樣數據集以外的數據,機器人計算出的球拍擊球姿態和擊球速度并不能滿足控制精度要求。而且在訓練采樣數據時,來球速度、擊球位置等多種因素共同決定了乒乓球機器人回球落點的位置和速度,訓練較為困難,回去的落到位置和速度不可控,影響運動員的訓練質量。
發明內容
本發明的目的在于提供一種能夠克服上述不足、提高乒乓球機器人回球質量的球拍擊球姿態和擊球速度獲取方法。為了實現所述目的,本發明提出的一種獲取乒乓球機器人球拍擊球姿態和擊球速度的方法,利用視覺單元、控制裝置中的控制PC機期望落點計算單元、預測擊打點單元、擊打點出球速度計算單元和非線性模型實現所述方法的具體步驟包括步驟Sl 由視覺單元采集乒乓球初始飛行時的一小段運動軌跡,建立乒乓球飛行解析模型,設定乒乓球落點位置及乒乓球落點速度;步驟S2 預測擊打點單元利用飛行解析模型、視覺單元輸出的乒乓球的運動軌跡數據計算出乒乓球來球速度Vin、乒乓球的擊打位置和擊球剩余時間;步驟S3 擊打點出球速度計算單元利用飛行解析模型、預測擊打點單元輸出擊打乒乓球的位置信息和擊球剩余時間、期望落點計算單元期望輸出的乒乓球落點位置、期望乒乓球落點速度計算并生成擊打點處的期望出球速度V1 ;步驟S4 利用機器人運動學方程、乒乓球球拍反彈模型、擊打點處的出球速度及乒乓球來球速度,建立包含乒乓球機器人球拍擊球姿態和擊球速度參數的非線性模型為Γ1 (V1-Vh) = ΚΓ1 (Vin-Vh) +B,式中T為已知的乒乓球機器人從世界坐標系到球拍坐標系的變換矩陣,V1為乒乓球在擊打點處的期望出球速度,Vh為球拍擊球速度,Vin為乒乓球在擊打點處的來球速度,K 是球拍速度反彈模型的比例系數矩陣,B是球拍速度反彈模型的偏移系數矩陣;Κ、Β為常數由實驗確定;步驟S5 設定非線性模型中球拍擊球速度Vh在Xw和Zw方向的速度分量為零,利用已知乒乓球在擊打點處的出球速度V1、乒乓球在擊打點處的來球速度Vin、常數K和B及 L-M優化方法求解非線性方程組,計算得到余下的球拍姿態參數Q1* θ 2和球拍擊球速度在Yw方向上的速度分量,得到機器人球拍擊球姿態和擊球速度;利用多項式插值規劃方法對機器人關節進行運動規劃,控制球拍在擊球時刻以擊球速度到達擊球位置,并且使機器人球拍調整到擊球姿態完成擊球,實現對乒乓球的落點位置和落點速度控制。本發明的有益效果本發明與以往乒乓球機器人的簡單回球相比,能夠實現乒乓球機器人的定點定速回球。本發明考慮乒乓球飛行阻力,建立了乒乓球飛行的解析模型和球拍的速度反彈模型,其參數均通過實驗確定,本發明的突出特點是建立了乒乓球飛行的解析模型,利用該模型根據期望的回球落點和預測的擊打點位置,結合期望的回球落點速度,能夠準確的計算出機器人球拍的擊球姿態和擊球速度,便于實現對乒乓球機器人的控制。本發明的另一個突出特點是乒乓球機器人的回球落點位置和落點速度可以通過機器人球拍的擊球姿態和擊球速度控制。
圖Ia是本發明獲取乒乓球機器人球拍擊球姿態和擊球速度的方法流程圖。圖Ib是本發明控制裝置中擊打點出球速度計算單元的計算流程圖。圖加為乒乓球飛行受力模型的Xw-Yw平面。圖2b為乒乓球飛行模型的Yw-Zw平面。圖3為乒乓球機器人實驗平臺原理圖。圖如為定點回球落點位置球桌視圖。圖4b為定點回球落點位置放大視圖。主要元件說明前后平移機構1,左右平移機構2,上下平移機構3,左右旋轉機構4,上下俯仰機構5,機器人球拍6,球桌7, 控制裝置8實際T, 期望Q。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚明白,以下結合具體實施例,并參照附圖,對本發明進一步詳細說明。圖1示出本發明獲取乒乓球機器人球拍擊球姿態和擊球速度的方法流程圖,本發明建立了乒乓球飛行的解析模型,利用該模型根據期望的回球落點和預測的擊打點位置, 結合期望的回球落點速度,可計算出機器人球拍擊球后的期望出球速度。根據球拍擊球前后的乒乓球速度,結合球拍的反彈模型和五自由度打乒乓球機器人的運動學模型,建立一組含有球拍擊球姿態和球拍擊球速度的非線性方程。利用公知的優化方法求解非線性方程組,可以計算出機器人球拍的擊球姿態和擊球速度,使得乒乓球機器人的回球落點位置和落點速度可以通過機器人控制。利用乒乓球機器人的視覺單元8、控制裝置9中的控制PC 機期望落點計算單元、預測擊打點單元、擊打點出球速度計算單元和非線性模型實現獲取乒乓球機器人球拍擊球姿態和擊球速度的步驟包括步驟Sl 由視覺單元采集乒乓球初始飛行時的一小段運動軌跡,建立乒乓球飛行解析模型,設定乒乓球落點位置及乒乓球落點速度;步驟S2 預測擊打點單元利用飛行解析模型、視覺單元輸出的乒乓球的運動軌跡數據計算出乒乓球來球速度Vin、乒乓球的擊打位置和擊球剩余時間;步驟S3 擊打點出球速度計算單元利用飛行解析模型、預測擊打點單元輸出擊打乒乓球的位置信息和擊球剩余時間、期望落點計算單元期望輸出的乒乓球落點位置、期望乒乓球落點速度計算并生成擊打點處的期望出球速度V1 ;步驟S4 利用機器人運動學方程、乒乓球球拍反彈模型、擊打點處的出球速度及乒乓球來球速度,建立包含乒乓球機器人球拍擊球姿態和擊球速度參數的非線性模型為Γ1 (V1-Vh) = ΚΓ1 (Vin-Vh) +B,式中T為已知的乒乓球機器人從世界坐標系到球拍坐標系的變換矩陣,V1為乒乓球在擊打點處的期望出球速度,Vh為球拍擊球速度,Vin為乒乓球在擊打點處的來球速度,K 是球拍速度反彈模型的比例系數矩陣,B是球拍速度反彈模型的偏移系數矩陣;Κ、Β為常數由實驗確定;步驟S5 設定非線性模型中球拍擊球速度Vh在Xw和Zw方向的速度分量為零,利用已知乒乓球在擊打點處的出球速度V1、乒乓球在擊打點處的來球速度Vin、常數K和B及 L-M優化方法求解非線性方程組,計算得到余下的球拍姿態參數Q1* θ 2和球拍擊球速度在Yw方向上的速度分量,得到機器人球拍擊球姿態和擊球速度;利用多項式插值規劃方法對機器人關節進行運動規劃,控制球拍在擊球時刻以擊球速度到達擊球位置,并且使機器人球拍調整到擊球姿態完成擊球,實現對乒乓球的落點位置和落點速度控制。請參閱圖加及圖2b,乒乓球從Pl點飛行到P3點,在此過程中,乒乓球飛行經過最高點P2。將乒乓球的飛行速度分別分解到球桌平面和Zw方向。如圖加所示為乒乓球飛行受力模型的Xw-Yw平面,在球桌平面乒乓球受到球桌平面方向的空氣阻力Fxy作用,該阻力的方向與乒乓球飛行方向相反,乒乓球飛行軌跡在球桌平面投影的傾角Θ。如圖2b所示為乒乓球飛行模型的Yw-Zw平面,在豎直方向,乒乓球在Pl點到P2點上升段飛行過程中受到豎直向下的重力mg和豎直向下的空氣阻力kfvzs2,在P2點到P3點下降段飛行過程中受到豎直向下的重力mg和豎直向上的空氣阻力kfvzx2。本發明建立的乒乓球飛行的解析模型如下
(1)乒乓球球速在球桌平面Xw和Yw方向的速度分量的函數表達式為
權利要求
1 一種獲取乒乓球機器人球拍擊球姿態和擊球速度的方法,其特征在于,利用視覺單元、控制裝置中的控制PC機期望落點計算單元、預測擊打點單元、擊打點出球速度計算單元和非線性模型實現所述方法的具體步驟包括步驟Sl 由視覺單元采集乒乓球初始飛行時的一小段運動軌跡,建立乒乓球飛行解析模型,設定乒乓球落點位置及乒乓球落點速度;步驟S2 預測擊打點單元利用飛行解析模型、視覺單元輸出的乒乓球的運動軌跡數據計算出乒乓球來球速度Vin、乒乓球的擊打位置和擊球剩余時間;步驟S3 擊打點出球速度計算單元利用飛行解析模型、預測擊打點單元輸出擊打乒乓球的位置信息和擊球剩余時間、期望落點計算單元期望輸出的乒乓球落點位置、期望乒乓球落點速度計算并生成擊打點處的期望出球速度V1 ;步驟S4 利用機器人運動學方程、乒乓球球拍反彈模型、擊打點處的出球速度及乒乓球來球速度,建立包含乒乓球機器人球拍擊球姿態和擊球速度參數的非線性模型為 T"1 (V1-Vh) = Kr1 (Vin-Vh)+B,式中τ為已知的乒乓球機器人從世界坐標系到球拍坐標系的變換矩陣,V1為乒乓球在擊打點處的期望出球速度,Vh為球拍擊球速度,Vin為乒乓球在擊打點處的來球速度,K是球拍速度反彈模型的比例系數矩陣,B是球拍速度反彈模型的偏移系數矩陣;Κ、Β為常數由實驗確定;步驟S5 設定非線性模型中球拍擊球速度Vh在Xw和Zw方向的速度分量為零,利用已知乒乓球在擊打點處的出球速度力、乒乓球在擊打點處的來球速度Vin、常數K和B及L-M優化方法求解非線性方程組,計算得到余下的球拍姿態參數9工和θ 2和球拍擊球速度在YwS 向上的速度分量,得到機器人球拍擊球姿態和擊球速度;利用多項式插值規劃方法對機器人關節進行運動規劃,控制球拍在擊球時刻以擊球速度到達擊球位置,并且使機器人球拍調整到擊球姿態完成擊球,實現對乒乓球的落點位置和落點速度控制。
2.如權利要求1所述獲取乒乓球機器人的球拍擊球姿態和擊球速度的方法,其特征在于,所述擊打點出球速度計算單元計算步驟包括步驟S31 建立乒乓球球速在球桌平面Xw和Yw方向的速度分量vlx、vly的函數;建立乒乓球飛行軌跡在球桌平面的投影距離c的函數;建立乒乓球處于上升階段時,乒乓球球速在Zw方向的速度分量Vzs的函數;建立乒乓球處于上升階段時,乒乓球在Zw方向的位置分量 Zs的函數;建立乒乓球處于下降階段時,乒乓球球速在Zw方向的速度分量Vzx的函數;建立乒乓球處于下降階段時,乒乓球在球桌平面Zw方向的位置分量\的函數;步驟S32 利用乒乓球球速在球桌平面Xw和Yw方向的速度分量的函數表達式,根據回球落點速度在球桌平面的速度分量和擊打點到落點之間的飛行距離計算擊打點處乒乓球期望出球速度在Xw和Yw方向的速度分量Vlx和Vly ;步驟S33 利用乒乓球球速在球桌平面Xw和YwS向的速度分量的函數表達式和乒乓球飛行軌跡在球桌平面的投影距離的函數表達式,計算乒乓球從擊打點飛行到落點的時間式中,m是乒乓球質量,kf是空氣阻力系數,V3xy是落點處乒乓球速度在球桌平面的合速度,Vlxy是擊打點處乒乓球期望出球速度在球桌平面的合速度;步驟S34 利用乒乓球處于上升階段時,在Zw方向的位置分量表達式和乒乓球處于下降階段時,在Zw方向的位置分量表達式得到乒乓球在落點處τ、方向的位置分量^等于乒乓球的半徑如下表示
3.如權利要求2所述的乒乓球機器人的球拍擊球姿態和擊球速度的獲取方法,其特征在于,所述乒乓球在擊打點處期望出球速度在Xw和Yw方向的速度分量Vlx和Vly的函數表達式為
4.如權利要求2所述的乒乓球機器人的球拍擊球姿態和擊球速度的獲取方法,其特征在于,所述乒乓球飛行軌跡在球桌平面的投影距離c的函數表達式為
5.如權利要求2所述的乒乓球機器人的球拍擊球姿態和擊球速度的獲取方法,其特征在于,所述乒乓球處于上升階段時,乒乓球球速在Zw方向的速度分量Vzs表示為
6.如權利要求2所述的乒乓球機器人的球拍擊球姿態和擊球速度的獲取方法,其特征在于,所述乒乓球處于上升階段時,乒乓球在Zw方向的位置分量Zs為
7.如權利要求2所述的乒乓球機器人的球拍擊球姿態和擊球速度的獲取方法,其特征在于,所述乒乓球處于下降階段時,乒乓球球速在Zw方向的速度分量Vzx為
8.如權利要求2所述的乒乓球機器人的球拍擊球姿態和擊球速度的獲取方法,其特征在于,所述乒乓球處于下降階段時,乒乓球在Zw方向的位置分量\為
全文摘要
本發明是一種獲取乒乓球機器人球拍擊球姿態和擊球速度的方法,建立了乒乓球飛行的解析模型,利用該模型根據期望的回球落點和預測的擊打點位置,結合期望的回球落點速度,計算出機器人球拍擊球后的出球速度。根據球拍擊球前后的乒乓球速度,結合球拍的反彈模型和乒乓球機器人的運動學模型,推導出一組含有球拍擊球姿態和球拍擊球速度的非線性方程。利用公知的優化方法求解非線性方程組,計算出機器人球拍的擊球姿態和擊球速度。
文檔編號G05B13/04GK102200760SQ201110136109
公開日2011年9月28日 申請日期2011年5月25日 優先權日2011年5月25日
發明者張正濤, 徐德, 楊平, 譚民 申請人:中國科學院自動化研究所