基于ATmegal28L的智能探測車的設計與實現(xiàn)
3 軟件設計
系統(tǒng)軟件的主要功能是:能夠根據(jù)傳感器信息正確避開障礙物:小車與PC的無線通信;預先設定路線;測量物體的大小。為了提高小車避障的智能性,軟件設計采用了神經(jīng)網(wǎng)絡自學習。軟件設計的重點在于小車的神經(jīng)網(wǎng)絡訓練程序和小車與PC機的無線通訊程序。
3.1 神經(jīng)網(wǎng)絡訓練程序
BP神經(jīng)網(wǎng)絡應用廣泛,具有較好的分類和記憶功能,同時有很強的容錯性和魯棒性。采用兩層前向BP網(wǎng)絡實現(xiàn)多傳感器信息的融合,輸入層有6個節(jié)點(分別對應6組傳感器。其中超聲波傳感器測得距離在30 cm之內(nèi)記為1),輸出層有4個節(jié)點(前進F、左轉L、右轉R、后退B)。選取的輸入輸出樣本為:
樣本確立后,需要進行網(wǎng)絡訓練。網(wǎng)絡訓練就是對網(wǎng)絡的連接權系數(shù)進行學習和調(diào)整,使該網(wǎng)絡實現(xiàn)給定的輸入輸出映射關系。權系數(shù)修改按照式
(1)進行:
uij(t+1)=uij(t)+λ[dj(t)-yj(t)xi(t)+α△uij(t-1) (1)
式中:λ表示學習速率(取0.3);α表示學習動量(取0.3);dj(t)和yj(t)分別表示j單元在t時刻的目標輸出和實際輸出;xi(t)表示單元i在t時刻的輸入;△uij(t-1)表示前一次迭代中;;單元i和J連接權系數(shù)更新增量。
BP網(wǎng)絡算法采用C語言編程,訓練好的網(wǎng)絡權系數(shù)存放于Flash內(nèi)存之中。采用的是離線訓練方式。
3.2 小車與PC機的無線通訊程序
PC機在小車行駛過程中可以通過無線通訊對小車進行控制。通訊采用中斷的方式,流程圖如圖4所示。
4 結束語
本文討論了基于ATmega128L的智能探測車的設計思路,對系統(tǒng)中的各個模塊接口作了簡要描述,利用神經(jīng)網(wǎng)絡來增強小車的智能性,并提出了系統(tǒng)軟件的總體設計思想。該電路各部分功能模塊化,易于調(diào)試,并且容易擴展其他功能。本設計的應用前景廣闊,可用于骯臟、危險等不適宜人類工作或者是人類難以到達的環(huán)境,可作為特殊應用器材的載體工具,為無線檢測、信息傳輸及遠距離控制技術提供了一個很好的應用平臺。
評論