99ri日韩精品视频|久久成人永久免费播放|国产色综合色产在线视频|久久婷婷香蕉热狠狠综合|免费h无码动漫在线观看人|欧美日韩国产在线人成网站|九二精品福利少妇午夜一百集|99国产精品丝袜久久久久无码

當(dāng)前位置: 首頁 » 行業(yè)資訊 » 特種機(jī)器人 » 正文

如何才能讓機(jī)器人在預(yù)先定義的路徑上精確移動(dòng)

放大字體  縮小字體 發(fā)布日期:2022-06-21  來源:電子發(fā)燒友  瀏覽次數(shù):411
核心提示:該項(xiàng)目旨在讓機(jī)器人在預(yù)先定義的路徑上精確移動(dòng),無需使用GPS或WiFi或藍(lán)牙進(jìn)行定位,甚至無需地圖或建筑布局規(guī)劃。并實(shí)時(shí)繪制其實(shí)

該項(xiàng)目旨在讓機(jī)器人在預(yù)先定義的路徑上精確移動(dòng),無需使用GPS或WiFi或藍(lán)牙進(jìn)行定位,甚至無需地圖或建筑布局規(guī)劃。并實(shí)時(shí)繪制其實(shí)際路徑(按比例)。藍(lán)牙可以代替有線,用于傳輸實(shí)時(shí)位置信息。


poYBAGKexECAQkEsAAXk1Nr4yXA055.png



背景


我們一直在為基于Arduino的機(jī)器人的室內(nèi)導(dǎo)航尋找強(qiáng)大的解決方案。在為此應(yīng)用選擇正確的運(yùn)動(dòng)傳感解決方案時(shí),我們考慮了Oblu(一種開源IMU)。它的低成本和開源性質(zhì)使其成為可能的候選者。這里棘手的部分是oblu的開源程序適用于腳踏式室內(nèi)行人航位推算(PDR)或行人導(dǎo)航,簡而言之。Oblu作為一款腳裝式IMU在室內(nèi)的PDR性能令人印象深刻。一個(gè)很大的優(yōu)點(diǎn)是免費(fèi)的Android應(yīng)用程序(Xblu)的實(shí)時(shí)位置跟蹤。但是,我們不確定如何利用其現(xiàn)有的基于人類步行模型的行人導(dǎo)航算法。


Oblu的內(nèi)部計(jì)算基于人類行走。Oblu給出兩個(gè)連續(xù)步驟之間的位移和航向變化。當(dāng)腳與地面接觸時(shí),鞋底的速度為零,即鞋底處于靜止?fàn)顟B(tài)。這樣,Oblu可以檢測“步驟”并糾正一些內(nèi)部錯(cuò)誤。這種頻繁的錯(cuò)誤糾正會帶來出色的跟蹤性能。所以我們的機(jī)器人也以同樣的方式行走——移動(dòng)、停止、移動(dòng)、停止。


我們選擇了Oblu,很快我們就可以組裝我們的機(jī)器人和跟蹤系統(tǒng)。


它是如何工作的:


機(jī)器人以預(yù)先編程的路徑移動(dòng),并將其實(shí)際移動(dòng)信息(通過藍(lán)牙)傳輸?shù)绞謾C(jī)以進(jìn)行實(shí)時(shí)跟蹤。


Arduino預(yù)編程了路徑,oblu用于感知機(jī)器人的運(yùn)動(dòng)。oblu定期向Arduino傳輸運(yùn)動(dòng)信息。在此基礎(chǔ)上,Arduino控制輪子的運(yùn)動(dòng),讓機(jī)器人遵循預(yù)定義的路徑。


poYBAGKexDuASJyDAAJpqB8UR64588.png


機(jī)器人的路徑被編程為一組直線段。每個(gè)線段由其長度和相對于前一個(gè)線段的方向定義。機(jī)器人的運(yùn)動(dòng)保持謹(jǐn)慎,即它以直線運(yùn)動(dòng),但在較小的部分(為簡單起見,我們稱之為“步幅”)。在每一步結(jié)束時(shí),oblu將步長和偏離程度(方向變化)從直線傳輸?shù)紸rduino。如果Arduino發(fā)現(xiàn)與預(yù)定義的直線有偏差,則Arduino在收到此類信息的每一步都會糾正機(jī)器人的對齊方式。


根據(jù)程序,機(jī)器人總是應(yīng)該直線移動(dòng)。但是,由于表面不平整、機(jī)器人裝配質(zhì)量不平衡、直流電機(jī)的結(jié)構(gòu)或電氣不平衡或前自由運(yùn)轉(zhuǎn)輪的隨機(jī)方向等非理想情況,它可能會偏離直線,并可能以一定的角度或傾斜的路徑行走。


邁出一步→糾正你的前進(jìn)方向→前進(jìn)


如果機(jī)器人的行程超過該特定線段的編程長度,它也會向后移動(dòng)。


下一個(gè)步長取決于該特定直線段要覆蓋的剩余距離。當(dāng)要行進(jìn)的距離較大時(shí),機(jī)器人會大步走,而在接近目的地(即每個(gè)直線段的末端)時(shí),機(jī)器人會小步走。


IMUOblu同時(shí)將數(shù)據(jù)傳輸?shù)紸rduino和手機(jī)(通過藍(lán)牙)。Xblu(Android應(yīng)用程序)根據(jù)從機(jī)器人接收到的運(yùn)動(dòng)信息執(zhí)行一些簡單的計(jì)算來構(gòu)建路徑,用于在手機(jī)上進(jìn)行實(shí)時(shí)跟蹤。使用Xblu構(gòu)建路徑如下所示:


pYYBAGKexDeAHOhuAAHx8ZAHyO4347.png


總而言之,Obl可以感知運(yùn)動(dòng)并定期將運(yùn)動(dòng)信息傳達(dá)給Arduino和手機(jī)。根據(jù)編程路徑和運(yùn)動(dòng)信息(由oblu發(fā)送),Arduino控制車輪的運(yùn)動(dòng)。除啟動(dòng)/停止命令外,機(jī)器人的運(yùn)動(dòng)不受遠(yuǎn)程控制。


路徑建模:


如果機(jī)器人只在直線段上行走,它可能會最容易控制。因此,必須首先將路徑建模為一組直線段。下面的圖片包含幾個(gè)示例路徑及其在位移和方向方面的表示。這就是在Arduino中對路徑進(jìn)行編程的方式。


pYYBAGKexDKAbP5lAAEH5tQ_73E653.png


同樣,任何作為一組直線段的路徑都可以在Arduino中定義和編程。


通訊協(xié)議:


第1步:Xoblu向oblu發(fā)送START命令


第2步:oblu通過向Xblu發(fā)送適當(dāng)?shù)腁CK來確認(rèn)接收命令


第3步:oblu在每一步向Xoblu發(fā)送包含每個(gè)步幅的位移和方向信息的DATA包。(步驟=每當(dāng)檢測到零運(yùn)動(dòng)或檢測到靜止時(shí))。


第4步:Xblu通過向oblu發(fā)送適當(dāng)?shù)腁CK來確認(rèn)接收到最后一個(gè)DATA數(shù)據(jù)包。(重復(fù)第3步和第4步的循環(huán),直到Xblu發(fā)送STOP。收到STOP命令后,oblu執(zhí)行第5步)


第5步:停止-(i)在oblu中停止處理(ii)在oblu中停止所有輸出

 
工博士智能制造網(wǎng)凡資訊來源注明為其他媒體來源的信息,均為轉(zhuǎn)載自其他媒體,并不代表本網(wǎng)站贊同其觀點(diǎn),也不代表本網(wǎng)站對其真實(shí)性負(fù)責(zé)。您若對該文章內(nèi)容有任何疑問或質(zhì)疑,請立即與我們聯(lián)系,本網(wǎng)站將迅速給您回應(yīng)并做處理。
聯(lián)系電話:021-31666777
新聞、技術(shù)文章投稿QQ:3267146135  投稿郵箱:syy@gongboshi.com
 
[ 行業(yè)資訊搜索 ]  [ 加入收藏 ]  [ 告訴好友 ]  [ 打印本文 ]  [ 違規(guī)舉報(bào) ]  [ 關(guān)閉窗口 ]

 

 
推薦圖文
推薦行業(yè)資訊
點(diǎn)擊排行
 
首頁 | 店鋪 | 產(chǎn)品中心 | 工博士培訓(xùn) | 資料下載 | 方案案例 | 機(jī)器人選型 | 會員注冊 | 關(guān)于我們 | 聲明 | 合作客戶 | 聯(lián)系方式 | 網(wǎng)站留言| 網(wǎng)站地圖

咨詢電話

021-80392549

企業(yè)微信