關鵬 衣龍浩 陳威行
【摘要】 由于機器人的發(fā)展,循跡算法顯得尤為重要,文章中將討論使用STM32單片機驅動機器人循跡上各種算法優(yōu)劣與實現(xiàn)的最好方式,讓機器人循跡更合理輕松。
【關鍵字】 STM32 機器人 循跡 灰度傳感器
智能循跡機器人是一種被廣泛研究的機器人,國內外有許多重要的比賽圍繞此開展,其中很重要的一部分就是考驗循跡機器人的穩(wěn)定性,機器人循跡系統(tǒng)實際上就是機器人路徑識別系統(tǒng),它將路況的真實信息實時的傳送給主控制器,循跡系統(tǒng)方案的好壞,直接關系到最終性能的優(yōu)劣[1]。
一、硬件基礎
(1)STM32F103RBT6微處理器最小系統(tǒng)板;
(2)前后各安裝一個SEN1660八路灰度傳感器,調節(jié)電位器,使前后八路灰度傳感器精度統(tǒng)一;
(3)16V充電鋰電池;
(4)驅動模塊。
二、STM32F103系列微處理器簡介
STM32F103系列微處理器是首款基于ARM7體系結構的32位標準RISC處理器,在通常8位和16位系統(tǒng)的存儲空間上發(fā)揮了ARM內核的高性能。該系列微處理器工作頻率為72MHz內置高達128K字節(jié)的Flash存儲器和20K字節(jié)的SRAM,具有豐富的通用I/O端口[2]。
三、循跡檢測算法比較與處理
3.1 直線循跡算法
3.1.1 前灰度傳感器+ PWM+偏移量度調節(jié)
如圖1所示,共設置三種偏移情況,微偏、中偏、大偏分別進行不同的調節(jié)。
機器人在白線上行駛時,使用前八路灰度傳感器通過判斷偏移情況,通過PWM利用占空比來調整機器人速率,讓機器人直線循跡。
優(yōu)點:機器人幾乎無卡頓現(xiàn)象。
缺點:當偏移過大時無法調節(jié)沖出跑道。
3.1.2 前后灰度傳感器+PWM+延時+偏移量度調節(jié)
機器人在白線上行駛時,使用前后八路灰度傳感器通過判斷是否偏移,當偏移為微偏時通過PWM利用占空比來調整機器人速率,當偏移超過微偏時通過延時讓機器人左右原地轉調節(jié)直到前后灰度傳感器均被跑道平分為止,讓機器人直線循跡。
優(yōu)點:機器人穩(wěn)定,很少沖出跑道
3.2 轉彎循跡算法
(1)利用前灰度傳感器檢測到的亮燈數(shù)的變化判斷是否到路口。
(2)使用延時俯沖半個車身。
(3)用前灰度傳感器依次壓線轉彎,如3號壓線條件通過后,再判斷4號壓線條件,4號通過后判斷5號壓線條件,這時候停止轉動。
四、 結束語
本文對基于STM32的機器人的直線和轉彎循跡算法進行了探討,經過實際測試以上算法是切實可行的方案,在該方案的基礎上設計功能實現(xiàn)將是今后的目標。
參 考 文 獻
[1]何用輝.復雜環(huán)境下機器人光電循跡系統(tǒng)研究與設計[J].南昌工程學院學報, 2012,31(4)
[2]孫書鷹.新一代嵌入式微處理器STM32F103開發(fā)與應用[J].微計算機應用, 2010,31(1)