呂 閃 金巳婷 沈 巍
(大連交通大學電氣信息學院 大連 116028)
基于STM32的循跡避障智能小車的設計*
呂 閃 金巳婷 沈 巍
(大連交通大學電氣信息學院 大連 116028)
介紹了基于模糊控制的智能小車循跡避障系統設計,該系統采用改進型超聲波測距傳感器和紅外光電傳感器采集外部障礙信息,然后將障礙信息數據經MCU計算處理并傳送至模糊控制器,經過模糊算法的計算,輸出相對應的行動信號,控制智能小車的前進、轉向等。論文采用雙輸入單輸出結構的模糊控制器,輸入量分別取為避障小車車體各個傳感器采集的障礙物距離信息,智能車相對路徑中心線的方向偏差,輸出量變為舵機期望轉角。通過程序仿真及實際驗證表明,小車能夠在不同環境中實現自主循跡避障。
智能小車; 模糊控制; 循跡; 避障
Class Number TP302
智能小車作為智能車輛的載體,是集傳感器技術、人工智能技術、自動控制技術、車輛工程控制于一體的綜合技術,是未來智能汽車發展的趨勢。近年來,科學技術取得了較大的進步,智能小車的系統設計也不再僅僅依賴于數學理論模型,擺脫了非線性的束縛,為小車的智能控制提供了新的手段,具有廣闊的應用前景。模糊控制通過建立數學模型,并整合人為專家控制經驗來解決系統中動態特性的非線性和不確定因素,具有較強的魯棒性[1~5]。
本文設計了基于STM32的循跡避障小車,利用路面循跡檢測模塊、避障模塊等外圍器件,組成了一個比較完整的控制系統,小車能夠在預先設定的跑道上完成循跡、避障、轉向、停車等各種功能,并且可以智能記錄行駛距離和避障次數,同時當遇到障礙物時,小車會驅動蜂鳴器報警。實踐證明,該系統電路結構簡單、低功耗、高性價比、安全性和穩定性高,具有廣泛的實際應用價值。
智能小車控制系統具備自主循跡、智能障礙物檢測、自主避障、外部無線通信等功能。能夠快速避障,準確循跡,本系統主要包括:MCU主控模塊、改進型超聲波避障模塊、循跡模塊、測速模塊、外部通信模塊等模塊組成[6~9]。
2.1 MCU主控模塊設計
本設計采用STM32F103作為智能小車控制模塊的核心,通過STM32F103利用程序來控制小車的運動,對于控制方面,STM32F103具有高性能、低成本、低功耗的優點。系統時鐘源采用有源晶振,大大提高了系統程序運行的準確性和安全性,避免了控制系統因為復雜的電磁環境影響了時鐘的準確性,保證了系統高效準確無誤的運行。圖1為自主設計的最小系統原理圖。

圖1 MCU原理圖
2.2 改進型超聲波傳感器模塊設計
本文采用自主設計的改進型超聲波傳感器模塊,結合了氣體壓強傳感器和溫濕度傳感器,MCU采集避障信息的同時也采集了空氣的溫濕度和大氣壓強,并將溫濕度和氣體壓強作為障礙物距離的因子,使的系統不僅能夠準確的探測到障礙物,而且能夠精確地計算出小車與障礙物的距離。圖2為改進型超聲波傳感器模塊的部分電路圖。

圖2 改進型超聲波傳感器模塊的部分電路圖
目前,常采用的控制器主要有模糊控制器、最優化控制器以及位置式PID控制器和增量式PID控制器等。其中傳統的控制器包括位置式PID控制器和增量式PID控制器和最優化控制器,它們大部分應用于控制對象都可以用一個精確的數學模型來描述的情況,由于循跡避障小車受路面粗糙度、電機特性、機械的特性等因素的影響,導致整個系統的被控制對象難以用一個精確的數學模型來描述,整個系統表現為高度的非線性和未知性。若用傳統的控制算法必須建立在精確的數學模型上,而若采用某個固定的控制算法就會降低系統的靈活度和應急能力,難以達到理想的控制效果,甚至會使整個系統出現崩潰的極端狀況。
模糊控制器不需要被控制對象擁有精確的數學模型,并且其控制算法具有靈活性強,魯棒性好,且在系統呈現非線性、滯后性等復雜的控制系統中具有明顯的優勢。因此,本文采用模糊邏輯控制策略實現智能小車的循跡避障功能[10~13]。小車控制系統結構圖如圖3所示。

圖3 控制系統結構圖
3.1 智能小車模糊控制器的軟件設計
為尋找上述問題的答案,專家在小鼠身上進行了測試。他們將長春新堿(一種抗腫瘤藥)用于治療患有白血病的肥胖和非肥胖小鼠,并對小鼠的飲食進行了調整。結果發現,如果在開始化療前將肥胖小鼠的飲食從高脂改為低脂飲食,小鼠的預后會顯著改善,其存活率也顯著提高。低脂飲食組的小鼠存活率是高脂飲食組小鼠的5倍。
智能循跡避障小車控制的目的是協調好小車的前進速度和行駛方向,在規定的循跡引導線上能有效、快速地避開障礙物并以最優化的速度達到目的地,因此本文主要是對智能小車行駛方向和循跡避障的控制策略研究。
3.1.1 智能小車轉向模糊控制器的設計
由于循跡避障小車的運動數學模型難以建立,因此在對小車的轉向控制算法上采用了模糊控制器。小車采用的是雙輸入單輸出結構的模糊控制器,輸入量分別取為小車車體各個超聲波傳感器采集的車體距離障礙物距離信息D,智能車相對路徑中心線的方向偏差角度A,輸出量變為舵機期望轉角B,智能小車轉向控制模糊控制器的設計,嚴格按照模糊控制器的設計步驟進行設計。模糊控制器設計流程圖如圖4所示。

圖4 模糊控制器設計流程圖
3.1.2 輸入輸出變量的模糊化
模糊控制的精度與變量的量化等級有關,等級越高,精度就越高,但是整體的運算量也會增加,因將三個語言變量的量化等級取為7級。并將D、A、B模糊集論域都取為7個模糊子集:{-6,-4,-2,0,2,4,6},即NB(負大)、NM(負中)、NS(負小)、ZE(零)、PS(正小)、PM(正中)、PB(正大)。對D、A、B代表的意思有所不同。
D>0表示智能小車行駛方向相右方距離障礙物的距離,D=0表示智能小車行駛方向相前方距離障礙物的距離,D<0表示智能小車行駛方向相左方距離障礙物的距離。
B>O表示舵機右拐,B<0表示舵機左拐,B=0表示舵機打正不改變小車行駛方向。
在避障小車運行過程中,考慮到系統偏差的產生是隨機的,同時為簡化計算,降低編程難度,輸入輸出變量的模糊子集的隸屬度函數均采用三角函數的,模糊變量根據人的駕駛經驗進行賦值,得到模糊集論域中各元素從屬于各模糊子集的隸屬度,如圖5所示。

圖5 各模糊子集的隸屬度
3.1.3 確定模糊控制規則
當小車自動行駛時,通過改進型超聲波傳感器和紅外循跡傳感器不停地對當前車體周圍情況和與循跡引導線的相對位置情況做出判斷,當障礙物距離信息和偏差出現時通過調整小車的舵機的轉角使小車體盡快避開障礙物并快速地回到正常的循跡引導線上行駛,小車在做出變向調整時,實際上是先在前方循跡引導線上選擇某個期望點,并使智能小車按照一定的行駛軌跡到達期望點。在到達期望點處的同時使車體恢復到完全沿循跡引導線運行的狀態,期望點的選取與當前車體周圍障礙物的距離D和相對循跡引導線的偏差A有關,當車體距離障礙物越近也就是D越小或者和循跡引導線之間的距離偏差A大時,期望點選得遠,故舵機轉向角越大。根據上述并結合人在平常生活中的駕駛經驗確定如表1的模糊控制規則表。

表1 模糊控制規則表
本文歸納出49條模糊控制規則。全部模糊控制規則采用:If((D=Di)&&(A=Ai)) Then (Bi=Bj)的形式,其中i,j,m,的取值為{1,2,3,4,5,6,7}。模糊控制規則表的內容如表1所示。
在智能小車設計實現過程中,對實驗小車進行了多次現場測試,以提高小車的實用性及對障礙物的感知能力。在模擬實驗中,試驗了小車可能遇到的各種障礙物情況,同時對智能小車的障礙物感知能力、環境探測能力、運動能力等關鍵模塊進行了測試驗證。
智能小車避障誤差分析如下:
1) 避障測距實驗:本文設計的改進型超聲波傳感器的測量范圍是0.02m~1.50m,測量精度設置為1cm,測量距離時保證傳感器與障礙物無直接接觸,數據顯示在TFT彩屏上。測量結果如圖6所示,可以得出在測量范圍內測量的誤差基本滿足要求。

圖6 測量結果
2) 避障路徑:小車避障路徑實驗結果如圖7所示,設置兩個如圖位置的障礙物,小車默認直線前進,起始點為A(0,0),目標點為B(-100,1300)。從實驗結果可以看出,小車具有自動避障功能。


圖7 小車避障路徑圖
本文主要對智能小車的避障系統進行了設計,小車利用改進型超聲波傳感器對周圍環境信息進行采集分析,同時利用模糊控制器的處理,實現了小車的自動避障,保證小車能夠在各種不同情況下實現避障,通過程序仿真及實際驗證表明,小車能夠在不同環境中實現自主避障,從而大大提高了小車的實用價值,可以應用于現代物流、無人駕駛汽車、無人工廠、服務型機器人等諸多領域。
[1] 劉德華,張丹慧.新型智能小車的設計研究[J].科技視界,2016,02:135. LIU Dehua, ZHANG Danhui. new smart car design study[J]. Science Horizon.2016,02:135.
[2] 楊東,胡春華,水存洋,等.基于模糊控制的智能循跡小車的設計[J].山西電子技術,2015,06:20-22. YANG Dong, HU Chunhua, SHUI Cunyang, et al. The design of intelligent tracking car based on fuzzy control[J]. Journal of Shanxi Electronic Technology.2015,06:20-22.
[3] 尤天鵬,陳玉玲,苗佳興,等.基于單片機智能循跡小車的設計與實現[J].品牌,2015,01:199. YOU Tianpeng, CHEN Yuling, MIAO Jiaxing. The design and realization of intelligent tracking car based on single chip microcomputer[J]. Brand.2015,01:199.
[4] 董雷剛,崔曉微,張丹.復雜路況下的智能循跡小車方案設計[J].電腦知識與技術,2014,07:1532-1536. DONG Leigang, CUI Xiaowei, ZHANG Dan. The design of intelligent tracking car in complex road conditions[J]. Computer knowledge and technology,2014,07:1532-1536.
[5] 徐錦鋼,楊克,沈緐.大學生電子設計競賽智能小車的制作研究[J].江西電力職業技術學院學報,2013,04:62-64,73. XU Jingang, YANG Ke, SHEN Yu. The design contest of the intelligent car production research[J]. Journal of Jiangxi electric power vocational technology college,2013,04:62-64,73.
[6] 盧威.智能小車避障系統的設計與實現[D].南昌:南昌大學,2012. LU Wei. The design and implementation of intelligent vehicle obstacle avoidance system[D]. Nanchang: Nanchang University,2012.
[7] 劉遠明,李道霖,韓緒鵬.感應式循跡小車的設計與實現[J].電子設計工程,2011,10:70-73. LIU Yuanming, LI Daolin, HAN Xupeng. The design and implementation of induction tracking car[J]. Electronic Design Engineering,2011,10: 70-73.
[8] 李磊,曹生煒.智能小車避障技術的實現[J].微電機,2011,06:109-111. LI Lei, CAO Shengwei. The realization of the intelligent car obstacle avoidance technology[J]. Journal of micromotor,2011,06:109-111.
[9] 李恒.基于PCS7的模糊-PID控制在水泥過程控制系統中的應用研究[D].武漢:武漢理工大學,2010. LI Heng. the application research of cement control system Based on fuzzy-PID control[D]. Wuhan: Wuhan University of Technology,2010.
[10] 寧慧慧,余紅英.基于紅外光電傳感器的智能車兩輪差速轉向模糊控制[J].工業控制計算機,2010,01:94-95. NING Huihui, YU Hongying. The two rounds smart car with differential steering fuzzy control based on infrared electric sensor[J]. Industrial control computer,2010,01:94-95.
[11] 黃杰,秦補枝.基于模糊控制的智能循跡小車的設計[J].中國科技信息,2010,20:148-149. HUANG Jie, QIN Buzhi. The design of the intelligent tracking car based on fuzzy control[J]. Journal of information science and technology of China,2010,20:148-149.
[12] 王祥好.模糊PID控制算法在智能小車中的研究與應用[D].合肥:合肥工業大學,2009. WANG Xianghao. Fuzzy PID control algorithm in the research and application of the smart car[D]. Hefei: Hefei university of technology,2009.
[13] 黃炳強,曹廣益,費燕瓊.基于模糊控制器的機器人路徑規劃研究[J].測控技術,2007,01:30-32. HUANG Bingqiang, CAO Guangyi, FEI Yanqiong. Robot path planning based on fuzzy controller research[J]. Journal of measurement and control technology,2007,01:30-32.
Design of Intelligent Tracking and Obstacle Avoidance Car Based on STM32
LV Shan JIN Siting SHEN Wei
(School of Electronics and Information Engineering, Dalian Jiaotong University, Dalian 116028)
This paper introduces the system of the tracking obstacle avoidance car based on fuzzy control, the system adopts the advanced ultrasonic sensors and infrared electric sensor collecting external information, then it will process obstacle information data by the MCU and transfer to the fuzzy controller, output corresponding signal of action through the fuzzy algorithm, control the intelligent car forward, turn and so on. This paper adopts the structure of the double input and single output fuzzy controller, uses the distance of obstacle and direction deviation of the intelligent car relative path center for input, uses the steering expected angle for output. Through process simulation and actual verification show that the car can achieve autonomous tracking obstacle avoidance in different environments.
intelligent car, fuzzy control, tracking, obstacle avoidance
2016年9月8日,
2016年10月29日
遼寧省博士科研啟動基金項目(編號:20141108)資助。
呂閃,女,碩士,研究方向:信號與信息處理、通信及關鍵技術。金巳婷,女,碩士,研究方向:嵌入式技術、通信及關鍵技術。沈巍,男,碩士,研究方向:信號與信息處理、通信及關鍵技術。
TP302
10.3969/j.issn.1672-9722.2017.03.030