首頁(yè) >> 新聞中心 >>行業(yè)科技 >> 基于超聲波傳感器的全向移動(dòng)平臺(tái)的沿墻控制
详细内容

基于超聲波傳感器的全向移動(dòng)平臺(tái)的沿墻控制

       針對(duì)沿墻自主導(dǎo)航, 搭建一種由全向輪、 步進(jìn)電機(jī)、 超聲波傳感器以及 52 單片機(jī)組成的全向移動(dòng)平臺(tái), 分析了其運(yùn)動(dòng)特性。 進(jìn)行了全向移動(dòng)平臺(tái)自主沿墻導(dǎo)航系統(tǒng)的硬件設(shè)計(jì), 提出了一種全動(dòng)和差動(dòng)相結(jié)合的沿墻控制策略。 實(shí)驗(yàn)結(jié)果證明: 該控制策略能有效實(shí)現(xiàn)自主精確沿墻導(dǎo)航, 為全向移動(dòng)平臺(tái)的沿墻導(dǎo)航控制提供了一種方法。

0 前言

       沿墻導(dǎo)航是指機(jī)器人沿著墻壁的輪廓行走, 保持與墻壁一定的距離, 且不發(fā)生碰撞現(xiàn)象[1]。 沿墻導(dǎo)航在許多領(lǐng)域得到了應(yīng)用, 如室內(nèi)清掃機(jī)器人、 老人服務(wù)機(jī)器人、 AGV 小車、 滅火機(jī)器人等。

       沿墻走是機(jī)器人借助環(huán)境進(jìn)行自主導(dǎo)航的方法之一, 其關(guān)鍵在于如何獲取環(huán)境知識(shí), 這就需要借助機(jī)器人外部傳感器。 視覺、 紅外、 激光、 超聲波等傳感器都在移動(dòng)機(jī)器人中得到實(shí)際應(yīng)用[2]。 但超聲波傳感器以其性價(jià)比高、 硬件實(shí)現(xiàn)簡(jiǎn)單等優(yōu)點(diǎn), 在移動(dòng)機(jī)器人感知系統(tǒng)中得到了廣泛的應(yīng)用[3]。

       郭小勤等[1,3-4] 對(duì)普通差動(dòng)輪式機(jī)器人做了沿墻走研究, 并通過實(shí)驗(yàn)較好地實(shí)現(xiàn)了接近式沿墻走效果。 但對(duì)于普通的輪式移動(dòng)機(jī)構(gòu), 轉(zhuǎn)彎都需要一定的旋轉(zhuǎn)半徑, 在狹小的空間常因無(wú)法橫向移動(dòng)而失去作用, 這在一定程度上就限制了輪式機(jī)器人的使用[5]。全向移動(dòng)機(jī)構(gòu)特別適合移動(dòng)空間狹小、 需要經(jīng)常轉(zhuǎn)彎、 行走距離較短或需要橫向移動(dòng)的場(chǎng)合。
本文作者提出了一種利用超聲波傳感器測(cè)距實(shí)現(xiàn)全向移動(dòng)平臺(tái)沿墻導(dǎo)航控制系統(tǒng)及控制策略。

1 全向移動(dòng)平臺(tái)底盤設(shè)計(jì)
       全向移動(dòng)平臺(tái)底盤采用全向移動(dòng)機(jī)構(gòu), 如圖 1 所示, 采用 4 個(gè)全向輪對(duì)稱分布在底板上, 4 個(gè)全向輪分別通過聯(lián)軸器和 4 個(gè)步進(jìn)電機(jī)連接, 4 個(gè)步進(jìn)電機(jī)軸線相交于一點(diǎn)并互相垂直, 形成 90°交錯(cuò)角。

       由于全向輪圓周由多個(gè)小輥?zhàn)咏M成, 輥?zhàn)拥妮S線與輪子的圓周相切, 并能自由旋轉(zhuǎn), 這樣的結(jié)構(gòu)使得全向輪具備 3 個(gè)自由度: 繞輪軸的轉(zhuǎn)動(dòng)、 饒輥?zhàn)虞S線的轉(zhuǎn)動(dòng)和沿輥?zhàn)虞S線垂直方向的平動(dòng) (也即和普通輪子相比具有側(cè)滑功能)。

2 全向移動(dòng)平臺(tái)運(yùn)動(dòng)方式

      全向移動(dòng)平臺(tái)工作空間為一平面, 如圖 2 (a)所示, 以 4 個(gè)輪子的軸線分別為 x、 y 軸, 以 4 個(gè)輪子的軸線交點(diǎn)也即該全向移動(dòng)平臺(tái)的幾何中心為原點(diǎn), 建立平面直角坐標(biāo)系。

3 全向移動(dòng)平臺(tái)自主沿墻導(dǎo)航系統(tǒng)硬件設(shè)計(jì)
3.1 系統(tǒng)整體結(jié)構(gòu)

      如圖 3 所示系統(tǒng)主要由 STC89C52 單片機(jī)、 2 路超聲波電路以及 4 個(gè)電機(jī)驅(qū)動(dòng)電路組成。 系統(tǒng)采用低功耗、 抗干擾性強(qiáng)、 高性能的 STC89C52 單片機(jī)作為系統(tǒng)的主控制器, 接受 2 路超聲波傳感器測(cè)量到的與障礙物之間的距離信號(hào), 通過自主沿墻導(dǎo)航算法發(fā)出指令給電機(jī)驅(qū)動(dòng)電路, 驅(qū)動(dòng)全向移動(dòng)平臺(tái)自主沿墻導(dǎo)航。

3.2 控制系統(tǒng)

      如圖 4 所示, 控制系統(tǒng)主要由 STC89C52 單片機(jī)、 時(shí)鐘電路、 復(fù)位電路組成。 STC89C52 單片機(jī)具有抗干擾性能強(qiáng)、 速度快、 功耗低和指令代碼完全兼容 8051 單片機(jī)等特點(diǎn)[6]。 時(shí)鐘電路采用內(nèi)部時(shí)鐘方式, 通過 STC89C52 單片機(jī)的 XTAL1 和 XTAL2 引腳外接石英晶體和和兩個(gè)微調(diào)電容來(lái)實(shí)現(xiàn)。 復(fù)位電路采用上電自動(dòng)復(fù)位和按鍵復(fù)位的方式。

67566023-bf77-495a-8e4e-b220e9d6c972.png

3.3 超聲波測(cè)距電路

      超聲波測(cè)距電路用于測(cè)試與障礙物的距離。 一般的超聲波模塊的有效距離不足 5 m[7], KSl03 超聲波傳感器帶溫度補(bǔ)償功能, 測(cè)量精度高, 使用溫度修正的測(cè)距命令, 直接輸出距離 (單位為 mm), 近距離內(nèi)最高精度達(dá) 1 mm; 測(cè)量盲區(qū)最小至 1 cm, 最大量程可達(dá) 11 m, 基本無(wú)盲區(qū); 使用 I2C 接口與主機(jī)通信, 自動(dòng)響應(yīng)主機(jī)的 I2C 控制指令; 省電模式: 具有自動(dòng)休眠功能, 模塊在 5 s 內(nèi)未收到主機(jī)指令自動(dòng)進(jìn)入休 眠 狀 態(tài), 隨 時(shí) 被 主 機(jī) I2C 控 制 指 令 喚 醒[8]。KSl03 支持溫度修正的距離探測(cè)及溫度探測(cè), 測(cè)量距離大, 在 I2C 模式下, 一條 I2C 總線或一對(duì) IO 口可以接 20 個(gè) KS103, 故采用 KSl03 超聲波測(cè)距。

      在 KS103 測(cè)距模塊上連線引腳上標(biāo)識(shí)有: VCC、SDA/ TX (簡(jiǎn)稱 SDA)、 SCL/ RX (簡(jiǎn)稱 SCL)、 GND、MODE。 MODE 引腳懸空時(shí), KS103 工作于 I2C 模式,其中 VCC 用于連接+5 V (3􀆰 0~ 5􀆰 5 V 范圍均可) 電源, GND 用于連接電源地, SDA/ TX 是 I2C 通信的數(shù)據(jù)線, SCL/ RX 引腳是 I2C 通信的時(shí)鐘線。 SCL 及SDA 線均需要由主機(jī)接一個(gè) 4􀆰 7 kΩ (阻值 1 ~ 10 kΩ均可) 電阻到 VCC。 單片機(jī)的 P35、 P36 引腳分別作為 I2C 通信的時(shí)鐘線 SCL 和數(shù)據(jù)線 SDA 與 KS103 測(cè)距模塊的 SCL 及 SDA 引腳相連, 接口電路如圖5所示。

256419a0-903c-4ec1-a32f-d20f2e46ad04.png

圖 5 超聲波傳感器與單片機(jī)接口電路

     KS103 測(cè)距模塊數(shù)據(jù)包括距離、 往返時(shí)間以及溫度, 單片機(jī)通過 I2C 總線向 KS103 模塊寄存器 0x02寫 8 位探測(cè)指令 0xbc (該指令探測(cè)距離為 0 ~ 11 m,帶溫度補(bǔ)償), 等待轉(zhuǎn)換時(shí)間到, 讀取 KS103 模塊的0x02、 0x03 寄存器中的 16 位距離測(cè)量值[9],其單位為 mm。

3.4 步進(jìn)電機(jī)驅(qū)動(dòng)電路

      步進(jìn)電機(jī)采用工作電壓為 12~24 V, 額定相電流為 1. 65 A, 步距角為 1􀆰 8°, 扭矩為 0􀆰 55 N· m 的兩相四線混合式大扭矩 42 系列步進(jìn)電機(jī)。 步進(jìn)電機(jī)驅(qū)動(dòng)芯片采用 A4988, A4988 是一款完全的微步電動(dòng)機(jī)驅(qū)動(dòng)器, 可以以全、 半、 1/ 4、 1/ 8 及 1/ 16 步進(jìn)模式驅(qū)動(dòng)兩相步進(jìn)電機(jī), 輸出驅(qū)動(dòng)性能可達(dá) 35 V 及±2 A,為系統(tǒng)步進(jìn)電機(jī)提供了足夠的驅(qū)動(dòng)功率[10]。 A4988帶有內(nèi)置轉(zhuǎn)換器, 操作簡(jiǎn)便, 只需在步進(jìn)端口輸入一個(gè)脈沖即可驅(qū)動(dòng)電動(dòng)機(jī)產(chǎn)生微步, 無(wú)需相序表、 高頻控制線或復(fù)雜接口[11]。

      A4988 步進(jìn)電機(jī)驅(qū)動(dòng)芯片主要端口有 ENABLE、DIR、 STEP、 MS1、 MS2、 MS3。 ENABLE 端口可以使用單片機(jī)端口控制, 也可以直接連接 GND 使能。 EN⁃ABLE 端口輸入高電平時(shí), 電機(jī)不轉(zhuǎn), 輸入低電平時(shí), 電機(jī)轉(zhuǎn)動(dòng)。 在 STEP 引腳輸入一個(gè)脈沖, 即可驅(qū)動(dòng)步進(jìn)電動(dòng)機(jī)產(chǎn)生微步, 設(shè)置脈沖的頻率, 可控制步進(jìn)電機(jī)旋轉(zhuǎn)速度。 MS1、 MS2、 MS3 按照表 1 分別接高低電平來(lái)設(shè)置步進(jìn)模式, 從而選擇不同的步距角和激勵(lì)方式[10]。 DIR 端口輸入高電平時(shí), 步進(jìn)電機(jī)順時(shí)針旋轉(zhuǎn), 輸入低電平時(shí), 步進(jìn)電機(jī)逆時(shí)針旋轉(zhuǎn)。A4988 電機(jī) 驅(qū) 動(dòng) 芯 片 與 單 片 機(jī) 的 接 口 電 路 如 圖 6所示。

      單片機(jī)的 P00-P05 口同時(shí)與 4 個(gè)步進(jìn)電機(jī)驅(qū)動(dòng)芯片 A4988 的 1~ 6 號(hào)輸入端口相連, 控制步進(jìn)電機(jī)的使能、 步進(jìn)角以及激勵(lì)方式等。 單片機(jī)的的 P2 口分別與 A4988 的 STEP、 DIR 端口相連, 控制步進(jìn)電機(jī)的速度和方向。 4 個(gè)步進(jìn)電機(jī)驅(qū)動(dòng)芯片 A4988 的輸出端 1A 與 1B 分別接步進(jìn)電機(jī)同相的兩端, 輸出端2A 與 2B 分別接步進(jìn)電機(jī)另一相的兩端。

4 沿墻導(dǎo)航控制策略
      全向移動(dòng)平臺(tái)行走方向?yàn)槠叫杏趬Φ姆较颍?并且使全向移動(dòng)平臺(tái)中心離墻始終保持一定距離行走。 在垂直于行走方向靠近墻壁的一側(cè)平行地安裝兩個(gè)超聲波傳感器, 超聲波傳感器離全向移動(dòng)平臺(tái)中心線的距離為 100 mm。 全向移動(dòng)平臺(tái)在直線行走的時(shí)候采用差動(dòng)的行走方式, 也即 1 號(hào)、 3 號(hào)車輪不轉(zhuǎn), 2 號(hào)車輪反轉(zhuǎn)、 4 號(hào)車輪正轉(zhuǎn), 且 2 號(hào)、 4 號(hào)車輪速度相同。 由于 1 號(hào)、 3 號(hào)車輪是分別單獨(dú)用兩步進(jìn)電機(jī)驅(qū)動(dòng), 再加上輪子與地面的摩擦大小不一致, 即使在相同的驅(qū)動(dòng)信號(hào)下兩個(gè)輪子也很難完全同步, 隨著時(shí)間的的變化這種差異就更大, 直觀的表象就是會(huì)偏離預(yù)期的路線。 沿墻走控制策略就是要控制全向移動(dòng)平臺(tái)始終能沿著與墻平行并保持一定距離行走。

       為了直觀地闡明沿墻走控制策略, 可以以直線墻為例, 如圖 7 所示, 期望的全向移動(dòng)平臺(tái)能沿著距離墻 400 mm 距離 (距離值大小可調(diào)) 的直線墻行走。按全向移動(dòng)平臺(tái)中心線與預(yù)期的直線路徑的位置可以分五類情況。 第一類情況如圖 7 (a) 所示, 全向移動(dòng)平臺(tái)的中心線與預(yù)期的直線路徑完全重合, 超聲波傳感器 1 測(cè)距=超聲波傳感器 2 測(cè)距 = 設(shè)定距離, 則不需要調(diào)整, 全向移動(dòng)平臺(tái)直線前進(jìn)。 第二類情況如圖 7 (b) 所示, 移動(dòng)平臺(tái)中心線向左偏離且與預(yù)期的直線路徑相交, 超聲波傳感器 1 測(cè)距<設(shè)定距離,且超聲波傳感器 2 測(cè)距>設(shè)定距離, 則控制全向移動(dòng)平臺(tái)右轉(zhuǎn)。 第三類情況如圖 7 (c) 所示, 移動(dòng)平臺(tái)中心線向右偏離且與預(yù)期的直線路徑相交, 超聲波傳感器 1 測(cè)距>設(shè)定距離, 且超聲波傳感器 2 測(cè)距<設(shè)定距離, 則控制全向移動(dòng)平臺(tái)左轉(zhuǎn)。 第四類情況如圖7 (d)所示, 移動(dòng)平臺(tái)中心線向左偏離且與預(yù)期的直線路徑平行, 超聲波傳感器 1 測(cè)距 = 超聲波傳感器 2測(cè)距<設(shè)定距離, 則控制全向移動(dòng)平臺(tái)右移。 第五類情況如圖 7 (e) 所示, 移動(dòng)平臺(tái)中心線向右偏離且與預(yù)期的直線路徑平行, 超聲波傳感器 1 測(cè)距 = 超聲波傳感器 2 測(cè)距>設(shè)定距離, 則控制全向移動(dòng)平臺(tái)左移。 對(duì)于第一類直線前進(jìn)情況, 采用差動(dòng)的行走方式, 1、 3 號(hào)車輪不轉(zhuǎn), 2、 4 號(hào)車輪轉(zhuǎn), 這樣不僅可以節(jié)省能耗而且相比全動(dòng)直線行走方式走的直線更直。 對(duì)于第二類右轉(zhuǎn)和第三類左轉(zhuǎn)情況采用全動(dòng)方式, 充分發(fā)揮全動(dòng)方式的優(yōu)點(diǎn), 右轉(zhuǎn)、 左轉(zhuǎn)時(shí)可以繞全向移動(dòng)平臺(tái)的幾何中心旋轉(zhuǎn), 轉(zhuǎn)彎半徑; 對(duì)于第四類右移、 第五類左移也采用差動(dòng)方式, 2、 4 號(hào)車輪不轉(zhuǎn), 1、 3 號(hào)車輪轉(zhuǎn), 可以使得全向移動(dòng)平臺(tái)直接橫向移動(dòng)到預(yù)期的路徑上來(lái), 調(diào)整快。

a53a835f-52b2-450c-a5b6-d7a44de2d8d2.png

圖 7 全向移動(dòng)平臺(tái)沿墻走策略

5 實(shí)驗(yàn)結(jié)果
       實(shí)驗(yàn)的時(shí)候, 為了能直觀地看清全向移動(dòng)平臺(tái)行走的軌跡, 在地板上鋪上白紙, 將全向移動(dòng)平臺(tái)放在白紙上, 并在全向移動(dòng)平臺(tái)的中心安裝一支普通用途的簽字筆。 這樣在全向移動(dòng)平臺(tái)行走的過程中, 會(huì)留下簽字筆畫的痕跡, 該痕跡也就是全向移動(dòng)平臺(tái)的運(yùn)動(dòng)軌跡。
       當(dāng)全向移動(dòng)平臺(tái)沿著直線墻行走時(shí), 給超聲波傳感器 1、 2 設(shè)置的值為 400 mm, 從簽字筆畫的痕跡可以看出, 該軌跡平行于墻。 理論上該軌跡的距離應(yīng)為超聲波傳感器設(shè)置的值 400 mm+超聲波傳感器距全向移動(dòng)平臺(tái)中心的距離 100 mm (如圖8 所示) = 500 mm, 實(shí)際上從圖中直尺上可以讀出該距離為 502 mm, 誤差為 2 mm, 誤差小, 說(shuō)明該全向移動(dòng)平臺(tái)能夠較精確地沿直線墻行走。

       全向移動(dòng)平臺(tái)沿著一段為直線墻和一段為弧形墻行走, 從簽字筆畫的痕跡可以看出, 全向移動(dòng)平臺(tái)的軌跡最開始一段為左移線段 1, 直線前進(jìn)線段 2 和弧形線段 3, 運(yùn)動(dòng)軌跡光滑。 全向移動(dòng)平臺(tái)放在紙上的初始位置是隨機(jī)放的, 全向移動(dòng)平臺(tái)的初始位是遠(yuǎn)離墻的, 故全向移動(dòng)平臺(tái)在程序控制下左移, 快速地達(dá)到其中心離墻的距離為 500 mm, 故形成了左移線段 1 的運(yùn)動(dòng)軌跡。 然后全向移動(dòng)平臺(tái)保持離墻為 500 mm 的距離沿直線墻行走, 形成了直線前進(jìn)線段 2 的運(yùn)動(dòng)軌跡。 最后全向移動(dòng)平臺(tái)保持離墻為500 mm 的距離沿弧形墻行走, 形成了弧形線段 3 的運(yùn)動(dòng)軌跡。 當(dāng)然改變超聲波傳感器設(shè)置的值 (大于最小盲區(qū) 1 cm, 小于最大量程 11 m), 也即是改變?nèi)蛞苿?dòng)平臺(tái)中心離墻的距離后, 全向移動(dòng)平臺(tái)也能實(shí)現(xiàn)沿墻走。
a95439dd-74de-4991-b25d-7cbf85e6913a.png

圖 8 全向移動(dòng)平臺(tái)沿著直線墻行走實(shí)驗(yàn)

6 結(jié)論
      所搭建的由全向輪、 步進(jìn)電機(jī)組成的全向移動(dòng)平臺(tái),以 52 單片機(jī)作為控制器, 以超聲波傳感器實(shí)現(xiàn)測(cè)距, 采用差動(dòng)加全動(dòng)的導(dǎo)航策略, 對(duì)全向移動(dòng)平臺(tái)進(jìn)行自主沿墻導(dǎo)航控制。 實(shí)驗(yàn)結(jié)果表明全向移動(dòng)平臺(tái)能沿著墻保持一定距離精確的沿墻導(dǎo)航, 所提出的基于超聲波的全向移動(dòng)平臺(tái)沿墻走導(dǎo)航策略是有效的,為全向移動(dòng)平臺(tái)的沿墻導(dǎo)航控制提供了一種有效方法。

參考文獻(xiàn):
[1] 郭小勤,陳祝齊.基于紅外 PSD 的移動(dòng)機(jī)器人沿墻導(dǎo)航控制[J].機(jī)床與液壓,2009,37(9):133-136.
[2] 丁鎮(zhèn)生.傳感器及傳感技術(shù)應(yīng)用[M].北京:電子工業(yè)出版社,1999.
[3] 金文俊,馮浩,華亮.基于超聲波傳感器的自主移動(dòng)機(jī)器人的探測(cè)系統(tǒng)[J].現(xiàn)代電子技術(shù),2008,31(4):156-158.
[4] 富志凱,邢建春.基于復(fù)合控制算法的移動(dòng)機(jī)器人沿墻導(dǎo)航研究[J].計(jì)算機(jī)應(yīng)用與軟件,2012,29(9):234-236.
[5] 石維亮.全向移動(dòng)機(jī)器人的運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì)[D].南京:東南大學(xué),2008.
[6] 周鵬.基于 STC 單片機(jī)的電子羅盤-超聲波測(cè)障系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013,21(10):163-166.
[7] 王志超,劉波,張樂然.基于傳感網(wǎng)的新型智能照明控制器設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2014,22(3):716-718.
[8] 陳培興,張曉飛,楊娟.基于 SYN6288 的超聲波語(yǔ)音測(cè)距拐杖的設(shè)計(jì)[J].山西電子技術(shù),2015 (1):11-12.
[9] 劉慧.基于超聲波測(cè)距技術(shù)的小型無(wú)人機(jī)高度測(cè)量方法研究[D].呼和浩特:內(nèi)蒙古工業(yè)大學(xué),2015.
[10] 譚秀騰,郭小定,李小龍,等.基于 ARM 的桌面型 3D 打印機(jī)控制系統(tǒng)設(shè)計(jì)[J].應(yīng)用科技,2014(5):57-61.
[11] 謝彤,張米雅,姚建飛.汽車注塑件 3D 打印快速成型機(jī)控制系統(tǒng)設(shè)計(jì)[J].浙江交通職業(yè)技術(shù)學(xué)院學(xué)報(bào),2016,17(2):49-53.




班寧產(chǎn)品匯總   




seo seo