基于機(jī)器人視覺(jué)系統(tǒng)的迷宮導(dǎo)航用戶用例
掃描二維碼
隨時(shí)隨地手機(jī)看文章
結(jié)合數(shù)字孿生與計(jì)算機(jī)視覺(jué)的迷宮導(dǎo)航案例,利用Matlab仿真驗(yàn)證機(jī)器人的運(yùn)動(dòng)結(jié)果。
我們衷心感謝Chinmay Amrutkar的寶貴貢獻(xiàn),感謝他在GitHub上公開(kāi)了他的工作。我們也要感謝亞利桑那州立大學(xué)的機(jī)器人實(shí)驗(yàn)室對(duì)這個(gè)項(xiàng)目的發(fā)展所做的貢獻(xiàn)。
產(chǎn)品
柔性協(xié)作機(jī)器人myCobot Pro 630利用更大的工作空間,完美融入生產(chǎn)環(huán)境,基于精確動(dòng)態(tài)模型的防碰撞檢測(cè)功能,使其能夠與人很好地協(xié)同工作。
介紹
在這個(gè)項(xiàng)目中,我們將使用數(shù)字孿生技術(shù)控制機(jī)械臂myCobot Pro 630,利用計(jì)算機(jī)視覺(jué)進(jìn)行迷宮導(dǎo)航。將使用圖像捕獲、圖像處理和迷宮路徑求解的方法。該解決方案將被轉(zhuǎn)換為機(jī)器人手臂可以識(shí)別的軌跡,從而通過(guò)協(xié)作手臂myCobot Pro 630實(shí)現(xiàn)自動(dòng)導(dǎo)航。
項(xiàng)目設(shè)置
1. 捕獲和裁剪迷宮圖像
首先,使用‘cv2 ’。videoccapture '功能,從相機(jī)捕捉實(shí)時(shí)圖像。用戶需要按下“c”鍵來(lái)捕捉迷宮的圖像,然后手動(dòng)選擇需要裁剪的區(qū)域。
2. 解決迷宮問(wèn)題
利用OpenCV中的閾值和輪廓檢測(cè)等計(jì)算機(jī)視覺(jué)算法,可以得到迷宮圖像的關(guān)鍵幾何特征。將迷宮圖像處理成二值圖像,并通過(guò)侵蝕和擴(kuò)張操作提取有效路徑。最后得到迷宮解,用綠色高光標(biāo)記。
3. 提取錨點(diǎn)
為了保證機(jī)械臂的平穩(wěn)運(yùn)動(dòng),我們從迷宮解中提取路徑點(diǎn),并根據(jù)迷宮的尺寸限制路徑點(diǎn)的最大數(shù)量。這確保了路徑點(diǎn)仍然是可管理的,并且不會(huì)過(guò)多。
4.驗(yàn)證路點(diǎn)
5. 將坐標(biāo)映射到機(jī)械臂的坐標(biāo)系統(tǒng)
利用線性插值將迷宮路徑點(diǎn)映射到機(jī)械臂的坐標(biāo)系中,使cobot myCobot Pro 630能夠根據(jù)計(jì)算的軌跡移動(dòng)。
6. 將軌跡保存為CSV
計(jì)算出的機(jī)器人軌跡保存到CSV文件中,供以后導(dǎo)入和執(zhí)行。
7. 在Matlab中運(yùn)行軌跡
我們可以使用Matlab進(jìn)行仿真,驗(yàn)證得到的機(jī)械臂位姿是否正確可行,然后驅(qū)動(dòng)機(jī)械臂進(jìn)行運(yùn)動(dòng)。
總結(jié)
本案例演示了如何使用機(jī)器人手臂myCobot Pro 630和數(shù)字孿生技術(shù)實(shí)現(xiàn)迷宮導(dǎo)航??梢愿鶕?jù)具體需求進(jìn)行進(jìn)一步優(yōu)化,例如添加實(shí)際的機(jī)器人控制和路徑執(zhí)行。
本文編譯自hackster.io