摘要:隨著科技的不斷進步,機器人技術也日臻完善。移動機器人作為機器人的一種,因其具有靈活、操作簡單等特點,在多領域都得到了長足發展和應用,比如農業、工業、服務和醫療等行業。此外,移動機器人在空間探測、國防和城市安全等復雜環境危險場合也得到了廣泛的應用。文章針對自動避障小車硬件設計進行了概述。
關鍵詞:機器人;自動避障;小車硬件設計;空間探測;國防;城市安全 文獻標識碼:A
中圖分類號:TP391 文章編號:1009-2374(2017)08-0010-02 DOI:10.13535/j.cnki.11-4406/n.2017.08.005
避障小車是一種采用了紅外、超聲波、CCD和激光等傳感器設計的移動機器人。其工作原理是:避障小車在復雜環境自主移動時,通過傳感器系統感知外界環境從而完成避障。避障控制系統的總體設計思路是基于自動引導小車系統,這種系統使用傳感器感知路線和障礙,根據智能小車實現自動識別路線,在遇到障礙時自動避讓,并且選擇正確的路線行進。
1 設計任務
1.1 設計思想
本系統要求自行設計制作一個智能小車,該小車在前進的過程中能夠檢測到前方障礙并自動避開,達到避障的效果。設計思想是采用單片機為控制核心,利用位置傳感器檢測道路上的障礙,通過采集數據并處理后由單片機產生PWM波驅動直流電機對車進行轉向和行動控制,控制電動小汽車的自動避障、快慢速行駛以及自動停車。
1.2 功能概述
本系統主要由微控制器模塊、避障模塊、直流電機及其驅動模塊電源模塊等構成。
微控制器模塊:通過采用STC89C52作為微控制器接受傳感器部分收集到的外部信息進行處理,并將結果輸出到電機驅動模塊控制電機運行。
避障模塊:采用位置傳感器的漫反射檢測來檢測前方是否有障礙,通過紅外光電開關將采集到的信號送到微控制器。
驅動模塊:通過接收微控制器產生的信號來驅動電機運行,實現快慢速行駛,轉向控制以及自動停車。
電源模塊:為保證正常工作,為整個電路模塊提供電源支持。
2 硬件電路設計
關鍵元件選擇討論:
2.1 單片機的選擇
單片機全稱單片微型計算機(Single Chip Microcomputer),簡稱SCM,把一個計算機系統集成到一個芯片上,具有質量輕、體積小、價格便宜的特點。單片機內部也有著內存、CPU、類似硬盤一樣具有存儲功能的器件等與電腦功能類似的模塊。
單片機的核心是集成電路芯片,該芯片采用了規模超大的集成電路技術,將各種模塊集成在一起,包括對數據進行處理的中央處理器CPU、模擬多路轉換器、顯示驅動電路、中斷系統、數據存儲器RAM、程序存儲器ROM、定時器/計時器、A/D轉換器等,這些功能模塊被集成在硅片上,形成了一個小型的、完善的計算機系統。
MCS-51系列單片機的內部含有九個功能部件:CPU(運算器、控制器和專用寄存器)、程序存儲器(ROM和Flash存儲器)、數據存儲器、定時/計數器、并行輸入/輸出(I/O)接口(P0-P3口)、全雙工串行接口、中斷系統、時鐘電路和內部總線。
STC89C52單片機是帶有8K字節閃爍可編程可擦除功能的只讀存儲器,該存儲器控制器為CMOS8位微控制器,其能耗較低、性能較高,同時在一個芯片上可以安裝具有可編程Flash功能,并且擁有8位CPU。STC89C52可以為嵌入式控制系統提供相應的解決方案,其各個部分的具體標準是:Flash為8k字節,RAM為512字節,I/O口線為32位,內置4KBEEPROM,看門狗定時器,一個6向量2級中斷結,兩個16位定時器/計數器,全雙工串行口。此外,當系統處于空閑狀態的時候,CPU會立即停止工作,但是RAM、定時器/計數器、串口、中斷等模塊會繼續保持工作狀態,在這種狀態下,RAM的內容可以被及時保存,振蕩器會被凍結,單片機的所有工作都會隨即停止,直到具體的硬件復位到工作狀態或者下一個中斷出現,才能繼續恢復工作。
2.2 傳感器的選擇
避障小車是通過傳感器系統感知外界環境,在復雜環境中自主移動并完成避障的任務。要想實現避障小車的視覺功能有多種方式,可以使用CCD攝像頭進行圖像采集和識別的方法,基于檢測對象表面靠近傳感元件時的電容變化的電容式接近傳感器,根據波從發射到接收的傳播過程中所受到的影響來檢測物體的接近程度的超聲波傳感器以及包括一個可以發射紅外光的固態發光二極管和一個用作接收器的固態光敏二極管(或光敏三極管)的紅外反射式光電傳感器。由于CCD傳感器的價格、體積和使用方式上并不占優勢。相對于CCD傳感器,紅外傳感器優勢明顯,其不但方向感強、探測視角小、測量精度高,而且價格也不算高,又能在夜間工作,所以移動機器人避障的視覺可選用紅外傳感器。基于上述要求,避障小車一般情況下只需粗略感知,不需要清晰的圖像,因此,物美價廉的紅外反射式傳感器便在與昂貴的CCD傳感器的競爭中勝出。
這次采用的小車傳感器是紅外位置傳感器,用漫反射式光電開關對故障進行規避,光電接近開關簡稱為紅外線光電開關。是利用紅外線進行遮光和反射的原理對物體進行檢測的方式,光電接近開關的檢測范圍包括所有具有反光特性的物體,不僅局限于金屬,只要可以反光,其他材質的材料也可以。漫反射式光電開關是一種集發射器和接收器于一體的傳感器,光電開關產生開關信號的原理為:當有被檢測物體經過時,光電開關發射器就會發射充足的光線,這些光線被反射到接收器,開關信號由此產生。
2.3 電機類型的選擇
2.3.1 步進電機。小車前進和避障由步進電機控制。脈沖控制步進電機,輸入的脈沖頻率決定其步距角和轉速,脈沖的頻率以及電機的轉速是成正比的,因此可以通過對電機的脈沖頻率進行控制,從而達到控制電機工作的目的,步進電機的驅動脈沖可以通過單片機的相關部件輸出。對于需要用步進電機驅動芯片來驅動的原因由于步進電機工作時需要較大的工作電流,步進電機的驅動法我們通過ULN2803芯片進行,并且用單片機的P0I/O口來給ULN2803芯片輸入不同頻率的脈沖,再通過ULN2803來驅動步進電機。
在本文中,對智能小車進行驅動的是兩個四相五線的步進電機。四相五線步進電機中一共包括五根線,其中紅色的線接通電源的正極,剩下的四根線分別與ULN2803芯片的輸出端相連接,為了使得步進電機能夠正常工作,則需要保持四個I/O口依次輸出高電平。智能小車的車輪也受到不同電機的控制,前面的輪子用兩個步進電機來驅動,當兩個步進電機的轉速相同的時候,車子就可以保持直線前行,但是當兩個電機的轉速不相同,則車子的運行路徑不為直線,會出現拐彎,因此想要讓小車在行進過程中變換方向,則只需要通過對電機的轉速進行改變即可。具體的運動方向原則是:如果右邊的步進電機轉速比左邊的快,小車則會向左邊拐彎,相反,如果左邊的電機轉速較快,車子則會向右邊轉彎。通過控制電機的轉速,可以控制小車的運行方向,從而對障礙進行有效規避。
2.3.2 語音提示功能模塊。語音提示指的是在智能小車的運行過程中提供語音服務,提示用戶小車遇到的障礙情況。當小車與障礙物比較接近的時候,提示系統可以發出類似語音:“在距您車前方x米的地方有一障礙物,請您注意避讓”。此功能是用ISD1760語音芯片來實現,預先給語音芯片錄入“在距您車前方”,“米的地方有一障礙物,請您注意避讓”,“0”、“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”、“10”等語音信息,語音提示的實現通過在單片機程序來控制語音芯片的定點放音。ISD1760語音芯片的定點放音的控制通過單片機的P2.2到P2.5四個I/O口來實現。錄音時一直按住RES鍵,錄完后松手,按住PLAY鍵即可播放剛錄制的語音片段;可以通過按動VOL鍵加減音量,如果想增大一級音量,只需按動一次VOL鍵。由于音量調節只有8級,因此如果想要聲音重新回到最小音量,就必須按動VOL鍵9次。ERASE鍵可以擦除已經錄入的語音片段,通過長按、短按刪除不同的語音片段:短按此鍵可以擦除上一段錄音,長按此鍵可以擦除所有錄音;通過SCLK、SS、MISO、MOSI腳與單片機進行SPI通信,單片機就是通過這幾個腳來實現對ISD1760的定點放音。
3 軟件設計
3.1 程序設計總體思路
在設計過程中,我們將STC89C52單片機作為控制核心,利用紅外位置傳感器檢測道路上的障礙信息,而小車通過位置傳感器獲得路徑信息,當有光線反射回來時,輸出低電平。當沒有光線反射回來時,輸出高電平,并且將檢測到信號返回到單片機中,然后STC89C52進行判斷并開始處理小車所處的狀態,采用單片機產生PWM波驅動直流電機對車進行轉向和行動控制,控制電動小汽車的自動避障、快慢速行駛以及自動停車。
3.2 PWM控制的實現
Pulse Width Modulation簡稱PWM控制——脈沖寬度調制技術,通過對一系列脈沖的寬度進行調制來等效地獲得所需要波形(含形狀和幅值)。在逆變電路中PWM控制技術應用得最為廣泛,PWM型在應用的逆變電路中最為常見,可以說電力電子技術中的重要地位的確定正是由于PWM控制技術在逆變電路中的應用。作為直流電機的調速方式,PWM驅動基本是不二的選擇,特別是單片機日益普及的今天。而我們設計中的電機兩端的電壓與控制波形的占空比成正比,而電機轉速與電機兩端的電壓成比例,因此電機轉速與占空比成比例,占空比越大,電機轉動越快。我們在控制程序中可以設置一個寄存器,用來存儲PCA0L的初值,通過改變PCA0L的初值來對小車的方向和轉速進行控制。
3.3 小車狀態定義
我們在設計小車的程序設計中設計思想如下:小車在運行狀態中當前方有障礙的時候,傳感器將得到信號返回到單片機后,單片機產生中斷讓小車停駛,并且產生PWM波讓小車前輪轉向中倒車一定的時間,然后再次返回到主程序中運行,直到再次檢測到障礙物時中斷再次執行……直至順利到達目的地,完成避障功能。
參考文獻
[1] 郭天祥.新概念51單片機C語言教程——入門、提
高、開發、拓展全攻略[M].北京:電子工業出版
社,2009.
作者簡介:李彤(1988-),男,天津人,供職于天津渤海職業技術學院,初級職稱,碩士,研究方向:電腦鼠算法優化。
(責任編輯:黃銀芳)