|
基于超聲波傳感器的全向移動平臺的沿墻控制 針對沿墻自主導航, 搭建一種由全向輪、 步進電機、 超聲波傳感器以及 52 單片機組成的全向移動平臺, 分析了其運動特性。 進行了全向移動平臺自主沿墻導航系統(tǒng)的硬件設(shè)計, 提出了一種全動和差動相結(jié)合的沿墻控制策略。 實驗結(jié)果證明: 該控制策略能有效實現(xiàn)自主精確沿墻導航, 為全向移動平臺的沿墻導航控制提供了一種方法。 0 前言 沿墻導航是指機器人沿著墻壁的輪廓行走, 保持與墻壁一定的距離, 且不發(fā)生碰撞現(xiàn)象[1]。 沿墻導航在許多領(lǐng)域得到了應用, 如室內(nèi)清掃機器人、 老人服務機器人、 AGV 小車、 滅火機器人等。 沿墻走是機器人借助環(huán)境進行自主導航的方法之一, 其關(guān)鍵在于如何獲取環(huán)境知識, 這就需要借助機器人外部傳感器。 視覺、 紅外、 激光、 超聲波等傳感器都在移動機器人中得到實際應用[2]。 但超聲波傳感器以其性價比高、 硬件實現(xiàn)簡單等優(yōu)點, 在移動機器人感知系統(tǒng)中得到了廣泛的應用[3]。 郭小勤等[1,3-4] 對普通差動輪式機器人做了沿墻走研究, 并通過實驗較好地實現(xiàn)了接近式沿墻走效果。 但對于普通的輪式移動機構(gòu), 轉(zhuǎn)彎都需要一定的旋轉(zhuǎn)半徑, 在狹小的空間常因無法橫向移動而失去作用, 這在一定程度上就限制了輪式機器人的使用[5]。全向移動機構(gòu)特別適合移動空間狹小、 需要經(jīng)常轉(zhuǎn)彎、 行走距離較短或需要橫向移動的場合。 1 全向移動平臺底盤設(shè)計 由于全向輪圓周由多個小輥子組成, 輥子的軸線與輪子的圓周相切, 并能自由旋轉(zhuǎn), 這樣的結(jié)構(gòu)使得全向輪具備 3 個自由度: 繞輪軸的轉(zhuǎn)動、 饒輥子軸線的轉(zhuǎn)動和沿輥子軸線垂直方向的平動 (也即和普通輪子相比具有側(cè)滑功能)。 2 全向移動平臺運動方式 全向移動平臺工作空間為一平面, 如圖 2 (a)所示, 以 4 個輪子的軸線分別為 x、 y 軸, 以 4 個輪子的軸線交點也即該全向移動平臺的幾何中心為原點, 建立平面直角坐標系。 3 全向移動平臺自主沿墻導航系統(tǒng)硬件設(shè)計 如圖 3 所示系統(tǒng)主要由 STC89C52 單片機、 2 路超聲波電路以及 4 個電機驅(qū)動電路組成。 系統(tǒng)采用低功耗、 抗干擾性強、 高性能的 STC89C52 單片機作為系統(tǒng)的主控制器, 接受 2 路超聲波傳感器測量到的與障礙物之間的距離信號, 通過自主沿墻導航算法發(fā)出指令給電機驅(qū)動電路, 驅(qū)動全向移動平臺自主沿墻導航。 3.2 控制系統(tǒng) 如圖 4 所示, 控制系統(tǒng)主要由 STC89C52 單片機、 時鐘電路、 復位電路組成。 STC89C52 單片機具有抗干擾性能強、 速度快、 功耗低和指令代碼完全兼容 8051 單片機等特點[6]。 時鐘電路采用內(nèi)部時鐘方式, 通過 STC89C52 單片機的 XTAL1 和 XTAL2 引腳外接石英晶體和和兩個微調(diào)電容來實現(xiàn)。 復位電路采用上電自動復位和按鍵復位的方式。 3.3 超聲波測距電路 超聲波測距電路用于測試與障礙物的距離。 一般的超聲波模塊的有效距離不足 5 m[7], KSl03 超聲波傳感器帶溫度補償功能, 測量精度高, 使用溫度修正的測距命令, 直接輸出距離 (單位為 mm), 近距離內(nèi)最高精度達 1 mm; 測量盲區(qū)最小至 1 cm, 最大量程可達 11 m, 基本無盲區(qū); 使用 I2C 接口與主機通信, 自動響應主機的 I2C 控制指令; 省電模式: 具有自動休眠功能, 模塊在 5 s 內(nèi)未收到主機指令自動進入休 眠 狀 態(tài), 隨 時 被 主 機 I2C 控 制 指 令 喚 醒[8]。KSl03 支持溫度修正的距離探測及溫度探測, 測量距離大, 在 I2C 模式下, 一條 I2C 總線或一對 IO 口可以接 20 個 KS103, 故采用 KSl03 超聲波測距。 在 KS103 測距模塊上連線引腳上標識有: VCC、SDA/ TX (簡稱 SDA)、 SCL/ RX (簡稱 SCL)、 GND、MODE。 MODE 引腳懸空時, KS103 工作于 I2C 模式,其中 VCC 用于連接+5 V (3 0~ 5 5 V 范圍均可) 電源, GND 用于連接電源地, SDA/ TX 是 I2C 通信的數(shù)據(jù)線, SCL/ RX 引腳是 I2C 通信的時鐘線。 SCL 及SDA 線均需要由主機接一個 4 7 kΩ (阻值 1 ~ 10 kΩ均可) 電阻到 VCC。 單片機的 P35、 P36 引腳分別作為 I2C 通信的時鐘線 SCL 和數(shù)據(jù)線 SDA 與 KS103 測距模塊的 SCL 及 SDA 引腳相連, 接口電路如圖5所示。 圖 5 超聲波傳感器與單片機接口電路 KS103 測距模塊數(shù)據(jù)包括距離、 往返時間以及溫度, 單片機通過 I2C 總線向 KS103 模塊寄存器 0x02寫 8 位探測指令 0xbc (該指令探測距離為 0 ~ 11 m,帶溫度補償), 等待轉(zhuǎn)換時間到, 讀取 KS103 模塊的0x02、 0x03 寄存器中的 16 位距離測量值[9],其單位為 mm。 3.4 步進電機驅(qū)動電路 步進電機采用工作電壓為 12~24 V, 額定相電流為 1. 65 A, 步距角為 1 8°, 扭矩為 0 55 N· m 的兩相四線混合式大扭矩 42 系列步進電機。 步進電機驅(qū)動芯片采用 A4988, A4988 是一款完全的微步電動機驅(qū)動器, 可以以全、 半、 1/ 4、 1/ 8 及 1/ 16 步進模式驅(qū)動兩相步進電機, 輸出驅(qū)動性能可達 35 V 及±2 A,為系統(tǒng)步進電機提供了足夠的驅(qū)動功率[10]。 A4988帶有內(nèi)置轉(zhuǎn)換器, 操作簡便, 只需在步進端口輸入一個脈沖即可驅(qū)動電動機產(chǎn)生微步, 無需相序表、 高頻控制線或復雜接口[11]。 A4988 步進電機驅(qū)動芯片主要端口有 ENABLE、DIR、 STEP、 MS1、 MS2、 MS3。 ENABLE 端口可以使用單片機端口控制, 也可以直接連接 GND 使能。 EN⁃ABLE 端口輸入高電平時, 電機不轉(zhuǎn), 輸入低電平時, 電機轉(zhuǎn)動。 在 STEP 引腳輸入一個脈沖, 即可驅(qū)動步進電動機產(chǎn)生微步, 設(shè)置脈沖的頻率, 可控制步進電機旋轉(zhuǎn)速度。 MS1、 MS2、 MS3 按照表 1 分別接高低電平來設(shè)置步進模式, 從而選擇不同的步距角和激勵方式[10]。 DIR 端口輸入高電平時, 步進電機順時針旋轉(zhuǎn), 輸入低電平時, 步進電機逆時針旋轉(zhuǎn)。A4988 電機 驅(qū) 動 芯 片 與 單 片 機 的 接 口 電 路 如 圖 6所示。 單片機的 P00-P05 口同時與 4 個步進電機驅(qū)動芯片 A4988 的 1~ 6 號輸入端口相連, 控制步進電機的使能、 步進角以及激勵方式等。 單片機的的 P2 口分別與 A4988 的 STEP、 DIR 端口相連, 控制步進電機的速度和方向。 4 個步進電機驅(qū)動芯片 A4988 的輸出端 1A 與 1B 分別接步進電機同相的兩端, 輸出端2A 與 2B 分別接步進電機另一相的兩端。 4 沿墻導航控制策略 為了直觀地闡明沿墻走控制策略, 可以以直線墻為例, 如圖 7 所示, 期望的全向移動平臺能沿著距離墻 400 mm 距離 (距離值大小可調(diào)) 的直線墻行走。按全向移動平臺中心線與預期的直線路徑的位置可以分五類情況。 第一類情況如圖 7 (a) 所示, 全向移動平臺的中心線與預期的直線路徑完全重合, 超聲波傳感器 1 測距=超聲波傳感器 2 測距 = 設(shè)定距離, 則不需要調(diào)整, 全向移動平臺直線前進。 第二類情況如圖 7 (b) 所示, 移動平臺中心線向左偏離且與預期的直線路徑相交, 超聲波傳感器 1 測距<設(shè)定距離,且超聲波傳感器 2 測距>設(shè)定距離, 則控制全向移動平臺右轉(zhuǎn)。 第三類情況如圖 7 (c) 所示, 移動平臺中心線向右偏離且與預期的直線路徑相交, 超聲波傳感器 1 測距>設(shè)定距離, 且超聲波傳感器 2 測距<設(shè)定距離, 則控制全向移動平臺左轉(zhuǎn)。 第四類情況如圖7 (d)所示, 移動平臺中心線向左偏離且與預期的直線路徑平行, 超聲波傳感器 1 測距 = 超聲波傳感器 2測距<設(shè)定距離, 則控制全向移動平臺右移。 第五類情況如圖 7 (e) 所示, 移動平臺中心線向右偏離且與預期的直線路徑平行, 超聲波傳感器 1 測距 = 超聲波傳感器 2 測距>設(shè)定距離, 則控制全向移動平臺左移。 對于第一類直線前進情況, 采用差動的行走方式, 1、 3 號車輪不轉(zhuǎn), 2、 4 號車輪轉(zhuǎn), 這樣不僅可以節(jié)省能耗而且相比全動直線行走方式走的直線更直。 對于第二類右轉(zhuǎn)和第三類左轉(zhuǎn)情況采用全動方式, 充分發(fā)揮全動方式的優(yōu)點, 右轉(zhuǎn)、 左轉(zhuǎn)時可以繞全向移動平臺的幾何中心旋轉(zhuǎn), 轉(zhuǎn)彎半徑小; 對于第四類右移、 第五類左移也采用差動方式, 2、 4 號車輪不轉(zhuǎn), 1、 3 號車輪轉(zhuǎn), 可以使得全向移動平臺直接橫向移動到預期的路徑上來, 調(diào)整快。 圖 7 全向移動平臺沿墻走策略 5 實驗結(jié)果 全向移動平臺沿著一段為直線墻和一段為弧形墻行走, 從簽字筆畫的痕跡可以看出, 全向移動平臺的軌跡最開始一段為左移線段 1, 直線前進線段 2 和弧形線段 3, 運動軌跡光滑。 全向移動平臺放在紙上的初始位置是隨機放的, 全向移動平臺的初始位是遠離墻的, 故全向移動平臺在程序控制下左移, 快速地達到其中心離墻的距離為 500 mm, 故形成了左移線段 1 的運動軌跡。 然后全向移動平臺保持離墻為 500 mm 的距離沿直線墻行走, 形成了直線前進線段 2 的運動軌跡。 最后全向移動平臺保持離墻為500 mm 的距離沿弧形墻行走, 形成了弧形線段 3 的運動軌跡。 當然改變超聲波傳感器設(shè)置的值 (大于最小盲區(qū) 1 cm, 小于最大量程 11 m), 也即是改變?nèi)蛞苿悠脚_中心離墻的距離后, 全向移動平臺也能實現(xiàn)沿墻走。 圖 8 全向移動平臺沿著直線墻行走實驗 6 結(jié)論 參考文獻: 班寧產(chǎn)品匯總 |