本發明屬于自動控制領域,具體設計一種多途徑的撿球和發球機器人控制系統。
背景技術:
目前尚無全自動撿球、發球機器人控制方案,現有撿球器材為輔助型器材,需要使用者走至球跟前使用該器械輔助撿球,相比手工撿球更加省力,但無法實現自主撿球;現有發球器材為固定位置式發球機,無法自主移動,可以實現一定范圍內可調角度、可調力度的發球,但需要人工調整其位置和姿態,且具有笨重、響應慢且不易攜帶的特點。
基于此,目前急需設計一種多途徑的撿球和發球一體化機器人,實現全自動、智能化的撿球和發球。
技術實現要素:
有鑒于此,本發明提供了一種多途徑的撿球和發球機器人控制系統,能夠通過多途徑完成撿球和發球任務,為人工帶來了諸多便利。
實施本發明的具體方案如下:
一種多途徑的撿球和發球機器人控制系統,該系統包括網頁控制模塊、語音語義識別模塊、機器視覺模塊和控制器;網頁控制模塊包括網頁服務器和人機交互頁面;機器視覺模塊包括攝像頭和視覺檢測部分;網頁服務器和人機交互頁面連接,基于網頁控制模塊、語音語義識別模塊和機器視覺模塊,控制器按照接收信息的優先級對機器人發送指令驅動機器人執行對應的運動;
優先級從高到低為:網頁控制模塊、語音語義識別模塊、機器視覺模塊。
優選地,網頁控制模塊、語音語義識別模塊、機器視覺模塊的優先級從高到低具體為:若網頁控制模塊有信息傳遞進來時,則優先執行該命令,當實施網頁控制模塊作用時,通過人機交互頁面將控制指令i經過網頁服務器發送到控制器上,控制器接收控制指令i控制機器人的移動機構、發球機構或撿球機構執行控制指令i對應的動作;若網頁控制模塊無信息傳遞時,則判斷語音語義識別模塊是否有信息傳遞,當語音語義識別模塊有信息傳遞進來時,則優先執行該命令,語音語義識別模塊將監聽到的語音信息解析為控制指令ii,并將制指令ii發送到控制器上,控制器接收控制指令ii控制機器人的移動機構、發球機構或撿球機構執行控制指令ii對應的動作;若網頁控制模塊和語音語義識別模塊均無信息傳遞時,則機器視覺控制模塊在控制器的控制下啟動并利用攝像頭捕獲圖像,攝像頭將捕獲到的圖像信息傳送到視覺檢測部分,視覺檢測部分分析所述圖像信息獲取目標位置并判斷下一步機器人的走向信息,將目標位置和走向信息發送到控制器上,控制器接收目標位置和走向信息后發送控制指令iii控制機器人的移動機構、發球機構或撿球機構執行控制指令iii對應的動作。
優選地,該機器人包括移動機構、撿球機構和發球機構;移動機構包括運動電機、驅動機構、運動底盤和車輪;撿球機構包括傳送帶、減速電機、儲球筐和傳送機架;發球機構包括發球電機、摩擦輪和發球管道;其中,傳送機架的頂端設有出球槽,傳送機架的底端設有進球槽,運動電機與驅動機構連接并均置于運動底盤上,驅動機構與車輪連接,運動底盤的支撐架分別與撿球機構的傳送機架、發球機構的發球管道和儲球筐固聯;傳送帶和減速電機均固定在傳送機架上,減速電機與傳送帶連接;摩擦輪內置在發球管道上,并由固定在發球管道上的發球電機驅動,儲球筐的出球口與發球管道的進球口固聯,儲球筐的進球口與傳送機架的出球槽對接。
優選地,語音語義識別模塊為訊飛開放平臺。
優選地,控制器設有pid調速器,機器人通過無線協議wifi與控制器通訊,若控制器接收的控制指令i、控制指令ii或控制指令iii為發球指令,控制器通過無線協議wifi遠程控制機器人的驅動機構驅動發球機構執行發球;若控制器接收的控制指令i、控制指令ii或控制指令iii為運動指令,控制器使用pid調速器對機器人的運動電機油門進行控制,控制器通過無線協議wifi遠程控制機器人運動到球的位置;若控制器接收的控制指令i、控制指令ii或控制指令iii為撿球指令,控制器通過無線協議wifi遠程控制機器人的驅動機構驅動撿球機構執行撿球。
優選地,視覺檢測部分具體功能為:
捕獲攝像頭圖像,并將圖像的rgb色彩空間轉換為hsv色彩空間;通過顏色閾值對hsv色彩空間進行色調分割,獲得可能為目標的色塊;對色塊進行圓形輪廓檢測,當目標輪廓為圓形;對確定為圓形的區域進行中值濾波,然后采用霍夫變換算法對濾波后的圓形進行高精度的圓形檢測,檢測到的輪廓即為所求目標;當目標輪廓為其他形狀,重復捕獲攝像頭圖像并處理,直到確定所求目標,然后將目標在攝像頭中的位置信息換算為球相對機器人的位置,根據該位置判斷出機器人下一步的行進方向信息,將該行進方向信息作為指令發送至控制器。
優選地,所述對色塊進行圓形輪廓檢測為:
提取目標輪廓色彩的掩碼,對提取后的掩碼再進行輪廓提取,對輪廓的周長c和面積進行檢測,根據周長c和面積的關系判斷提取的輪廓是否為圓形;
其中,若目標輪廓為圓形,則它的半徑為:
然后根據此半徑值得到該輪廓的面積理論值at:
at=π×r2
根據面積理論值at和實際值as判斷是否為圓形:當70%at<as<130%at,則該輪廓為圓形,當as<70%at或as>130%at,則該輪廓不是圓形。
優選地,網頁服務器采用flask搭建。
優選地,該系統進一步包括語音合成模塊,當控制器收到控制指令i、控制指令ii或控制指令iii,由語音合成部分合成語音“收到指令”并播放;當控制器未收到控制指令i、控制指令ii或控制指令iii,由語音合成部分合成語音“指令無效”并播放。
有益效果:
1、本發明通過建立從高到低的優先級,使得該控制系統能夠通過多途徑完成撿球和發球任務,為人工帶來了諸多便利。
2、本發明網頁搭建的網頁交互平臺,使機器人的控制系統具有輕量級、響應速度快的優點。
3、應用在本發明的機器人,能夠通過多途徑、全自動完成撿球和發球任務。
4、本發明使用的訊飛開放平臺,具有識別率高,轉換速度快的優點。
5、本發明的控制器設有的pid調速器,能夠使得機體運行速度平滑變化,防止突變和抖動。
附圖說明
圖1為本發明的總控制流程;
圖2為本發明的機器人示意圖;
圖3為本發明的機器視覺算法流程;
圖4為本發明的語音交互流程;
圖5為本發明的網頁交互流程。
其中,1-移動機構,2-撿球機構,3-發球機構,4-儲球筐。
具體實施方式
下面結合附圖并舉實施例,對本發明進行詳細描述。
本申請人同日提出了一件發明名稱為“一種智能網球機器人”的專利申請,該機器人包括移動機構1、撿球機構2和發球機構3;移動機構1包括運動電機、驅動機構、運動底盤和車輪;撿球機構2包括傳送帶、減速電機、儲球筐4和傳送機架;發球機構3包括發球電機、摩擦輪和發球管道;其中,傳送機架的頂端設有出球槽,傳送機架的底端設有進球槽,運動電機與驅動機構連接并均置于運動底盤上,驅動機構與車輪連接,運動底盤的支撐架分別與撿球機構的傳送機架、發球機構的發球管道和儲球筐4固聯;傳送帶和減速電機均固定在傳送機架上,減速電機與傳送帶連接;摩擦輪內置在發球管道上,并由固定在發球管道上的發球電機驅動,儲球筐的出球口與發球管道的進球口固聯,儲球筐的進球口與傳送機架的出球槽對接。
為了實現上述智能網球機器人的有效控制,本發明提供了一種用于智能網球機器人的多途徑控制系統,該系統包括網頁控制模塊、語音語義識別模塊、機器視覺模塊、控制器和機器人;網頁控制模塊包括網頁服務器和人機交互頁面;機器視覺模塊包括攝像頭和視覺檢測部分;網頁服務器和人機交互頁面連接,基于網頁控制模塊、語音語義識別模塊和機器視覺模塊,控制器按照接收其發送信息的優先級對機器人發送指令驅動機器人執行對應的運動;
優先級從高到低為:網頁控制模塊、語音語義識別模塊、機器視覺模塊,若網頁控制模塊有信息傳遞進來時,則優先執行該命令,當實施網頁控制模塊作用時,通過人機交互頁面將控制指令i經過網頁服務器發送到控制器上,控制器接收控制指令i控制移動機構1、發球機構2或撿球機構3執行控制指令i對應的動作;若網頁控制模塊無信息傳遞時,則判斷語音語義識別模塊是否有信息傳遞,當語音語義識別模塊有信息傳遞進來時,則優先執行該命令,語音語義識別模塊將監聽到的語音信息解析為控制指令ii,并將制指令ii發送到控制器上,控制器接收控制指令ii控制移動機構1、發球機構2或撿球機構3執行控制指令ii對應的動作;若語音語義識別模塊無信息傳遞時,則機器視覺控制模塊自動啟動并利用攝像頭捕獲圖像,攝像頭將捕獲到的圖像信息傳送到視覺檢測部分,視覺檢測部分分析所述圖像信息并獲取目標位置并判斷下一步機器人的走向信息,將目標位置和走向信息發送到控制器上,控制器接收目標位置和走向信息后發送控制指令iii控制移動機構1、撿球機構2或撿球機構3執行相關指令執行控制指令iii對應的動作,如當收到有效指令之后,由語音合成部分合成語音“收到指令”并播放;收到無效指令后,由語音合成部分合成語音“指令無效”并播放。實現與用戶交互的功能。
該系統可以加入語音合成模塊,當控制器收到控制指令i、控制指令ii或控制指令iii,由語音合成部分合成語音“收到指令”并播放;當控制器未收到控制指令i、控制指令ii或控制指令iii,由語音合成部分合成語音“指令無效”并播放,實現與用戶交互的功能。
上述的系統中各個部件的具體功能如下:
目前廣泛使用的計算機視覺庫為opencv,具有跨平臺、效率高的特點,本發明使用將其作為平臺實現網球識別;flask是一個網絡應用框架,具有輕量級、響應速度快的優點,本發明使用其搭建交互網頁;訊飛開放平臺是一個中文語音語義識別平臺,識別率高,轉換速度快,本發明使用其進行語音交互;ros是一個控制器,本發明使用它來進行多節點的信息通訊;pid是一種閉環控制算法,將它用于運動控制可以使得機體運行速度平滑變化,防止突變和抖動,本發明使用它來進行速度調控。
本發明通過計算機視覺自主導航、網頁端用戶交互和語音用戶交互的方式對機器人進行控制,如圖1所示,通過控制器的pid調速控制電機機器人運動底盤上執行運動命令,控制撿球機構執行撿球指令,控制發球機構執行發球指令。該控制方式可用于網球、乒乓球、高爾夫球等運動當中,完成全自動并可隨時人工干預的撿球發球控制方式。
一種控制流程,統籌自動導航、網頁控制、語音控制三種控制方式進行機器人運動控制指令下達并使用pid進行指令執行。其中,自動導航使用計算機視覺技術實現,使用該技術處理出攝像頭中網球的位置坐標,判斷下一步機器人的前進方向,再將該信息打包給控制器;網頁服務器監聽用戶的按鍵操作,當有控制鍵按下時,網頁服務器將其轉化為下一步機器人的前進方向,將該信息打包發送給控制器;語音識別節點隨時通過麥克風收集聲音,過濾掉背景噪音之后識別語義,轉化為機器人前進方向信息發送給控制器。控制器按照一定的優先級對收集的機器人前進方向信息進行統籌,處理得到最終控制方式后發送給執行器執行該運動。執行器在接收到最終運動方式之后將目標速度、之前速度傳遞給pid調速器,由pid調速器計算出運動電機油門量,執行運動。若需要發球,則控制發球機構執行發球命令;若需要撿球,則控制撿球機構執行撿球命令。
機器人使用計算機視覺技術檢測網球。如圖2所示,使用的關鍵算法:hsv顏色空間閾值化、輪廓提取即圓形輪廓檢測、霍夫(hough)變換、中值濾波。機器人提取到攝像頭圖像信息后將圖像由rgb色彩空間轉化到hsv色彩空間,進行通道分離,并對三個通道分別進行閾值化操作,獲得可能為目標的色塊。下一步進行圓形輪廓檢測。先將色彩提取后的掩碼進行輪廓提取,并且對輪廓的面積、周長進行檢測并判斷是否為近似圓形,若為圓形則檢測到網球并返回圓形圓心位置和大小,與真實網球大小作比較即可得到網球平面坐標和距離。根據提取出的輪廓的周長和面積,接下來根據周長和面積的關系判斷提取的輪廓是否為圓形。
然后可以根據此半徑值得到該輪廓的面積理論值at:
at=π×r2
根據面積理論值和實際值判斷是否為圓形:當70%at<as<130%at,則該輪廓為近似圓形,當as<70%at或as>130%at,則該輪廓不是圓形;由于輪廓邊界可能存在鋸齒或是不甚完整,因此若實際面積在理論面積。周圍一定范圍內即認定為是圓形。
進行完之后網球區塊即被提取出來,但同時也會有一些小的噪點被誤判提取,因此需要進行濾波,本發明選用中值濾波。在濾波結束之后,使用霍夫變換算法進行高精度的圓形檢測,檢測到的輪廓即為所求目標。將這一目標在攝像頭中的位置信息換算為網球相對機器人的位置,即可判斷出機器人下一步的行進方式,將該信息作為指令發布至控制器。
語音語義識別平臺通過訊飛開放平臺搭建,如圖3所示,在識別到用戶說出關鍵詞,如“開始”、“停止”、“直行”等命令后,將其作為指令發布至控制器。
控制器設有pid調速器,機器人設有無線協議wifi,無線協議wifi與控制器連接,若控制器接收的控制指令i、控制指令ii或控制指令iii均為發球指令,控制器將發球命令通過無線協議wifi遠程控制機器人的驅動機構驅動發球機構執行發球;若控制器接收的控制指令i、控制指令ii或控制指令iii均為運動指令,控制器使用pid調控器對機器人的電機油門進行控制,控制器通過無線協議wifi遠程控制機器人運動到目標位置;若控制器接收的控制指令i、控制指令ii或控制指令iii均為撿球指令,控制器將發球命令通過無線協議wifi遠程控制機器人的驅動機構驅動撿球機構執行撿球。
直流電機通過油門百分比來控制電機的輸出功率百分比,而電機的實際轉速除了和油門有關外,也和當前機器的負重、道路的坡度等變量有關。這種電機在獨立使用的情況下由于沒有反饋,給定相應的油門百分比之后控制器無法得知電機的實際轉速,在重心不勻,或是下坡、上坡等情況下可能出現運動方向不定、過快或是過慢的情況,因此需要引入當前速度測量值進行反饋。pid通過比例、積分、微分的方式進行速度調控,使得電機轉速均勻變化。
網頁控制器通過flask搭建,如圖4所示,該控制器同樣接入控制器中,在監視到用戶的按鍵行為后,將不同按鍵對應的運動方式同樣作為指令發布至控制器。
通過這種方式,撿球機、發球機可以良好地配合工作,二者可以完成集自動和人工干預的撿球發球任務。
綜上所述,以上僅為本發明的較佳實施例而已,并非用于限定本發明的保護范圍。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。