喻偉闖,王 銘,付 豪,周彬彬,袁海林,廖紅華*
(1.湖北民族學(xué)院 科技學(xué)院,湖北 恩施 445000;2.湖北民族學(xué)院 信息工程學(xué)院,湖北 恩施 445000;3.懷化學(xué)院 電氣與信息工程學(xué)院,湖南 懷化 418000)
?
基于STC89C51單片機(jī)的避障移動(dòng)機(jī)器人的設(shè)計(jì)與實(shí)現(xiàn)
喻偉闖1,王銘3,付豪2,周彬彬2,袁海林2,廖紅華2*
(1.湖北民族學(xué)院 科技學(xué)院,湖北 恩施 445000;2.湖北民族學(xué)院 信息工程學(xué)院,湖北 恩施 445000;3.懷化學(xué)院 電氣與信息工程學(xué)院,湖南 懷化 418000)
摘要:設(shè)計(jì)一種避障移動(dòng)機(jī)器人,該機(jī)器人以STC89C51單片機(jī)作為控制核心,通過兩個(gè)四相六線步進(jìn)電機(jī)控制轉(zhuǎn)動(dòng),并由L293D專用電機(jī)驅(qū)動(dòng)芯片驅(qū)動(dòng).避障模塊采用四對(duì)反射式紅外傳感器檢測(cè)障礙物位置,單片機(jī)控制系統(tǒng)通過PID控制算法對(duì)采集的信號(hào)進(jìn)行處理,語音模塊選用ISD1420語音芯片進(jìn)行報(bào)警.實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)性能穩(wěn)定,機(jī)器人能智能避障和自動(dòng)語音報(bào)警.
關(guān)鍵詞:移動(dòng)機(jī)器人;避障;單片機(jī);步進(jìn)電機(jī);紅外傳感器
移動(dòng)機(jī)器人是智能機(jī)器人研究領(lǐng)域的一個(gè)重要分支,被廣泛地應(yīng)用于偵查、探測(cè)、軍事、搜救等特殊場(chǎng)合[1].隨著傳感器技術(shù)的快速發(fā)展,自主避障移動(dòng)機(jī)器人成為當(dāng)前智能機(jī)器人研究的熱點(diǎn)[2-3].以往對(duì)機(jī)器人的研究大多是在已知、結(jié)構(gòu)化環(huán)境中進(jìn)行的,難以適應(yīng)復(fù)雜、多變的實(shí)際環(huán)境要求.本文設(shè)計(jì)的避障移動(dòng)機(jī)器人采用STC89C51單片機(jī)作為控制核心,機(jī)器人能夠根據(jù)紅外傳感器檢測(cè)到的信號(hào)判斷出障礙物的位置,通過智能算法控制步進(jìn)電機(jī)前進(jìn)、后退、左右轉(zhuǎn)彎,自動(dòng)避開障礙物,同時(shí)發(fā)出語音報(bào)警提示.該系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、性能穩(wěn)定性,同時(shí)具有功耗小、響應(yīng)快、成本低等優(yōu)點(diǎn),能滿足不同障礙物環(huán)境下機(jī)器人智能避障的需求.
1硬件電路設(shè)計(jì)
1.1系統(tǒng)總體設(shè)計(jì)
設(shè)計(jì)采用STC89C51單片機(jī)來完成各項(xiàng)控制功能,其外圍電路主要包括:電機(jī)驅(qū)動(dòng)模塊、紅外避障模塊和語音報(bào)警模塊.紅外避障模塊將檢測(cè)信號(hào)反饋給單片機(jī),單片機(jī)判斷障礙物的具體位置,控制步進(jìn)電機(jī)向前、向后、向左或向右轉(zhuǎn)動(dòng),同時(shí)控制語音芯片進(jìn)行報(bào)警提示.系統(tǒng)總體結(jié)構(gòu)如圖1所示.
1.2電機(jī)驅(qū)動(dòng)模塊
步進(jìn)電機(jī)具有啟???,轉(zhuǎn)換精度高,正轉(zhuǎn)反轉(zhuǎn)控制靈活等特點(diǎn).本設(shè)計(jì)選用四相六線步進(jìn)電機(jī),其半步工作方式和整步工作方式的控制時(shí)序如表1、2所示.與整步方式相比,半步方式具有精度高、低速運(yùn)行時(shí)振動(dòng)小的優(yōu)點(diǎn),所以設(shè)計(jì)中選用半步工作模式.
圖1 系統(tǒng)總體結(jié)構(gòu)框圖Fig.1 Overall block diagram of the system
圖2 步進(jìn)電機(jī)驅(qū)動(dòng)模塊Fig.2 The stepping motor driving module
時(shí)序A+B-A-B+1000120011300104011050100611007100081001
表2 整步工作方式時(shí)序表
步進(jìn)電機(jī)在使用過程中加入驅(qū)動(dòng)器的話,會(huì)使電路變得簡(jiǎn)單,只需要控制脈沖(頻率、數(shù)目)和方向(電平高低)兩個(gè)信號(hào).本設(shè)計(jì)選用L293D專用電機(jī)驅(qū)動(dòng)芯片,L293D芯片可以直接由單片機(jī)的I/O口提供信號(hào),輸出電壓最高可達(dá)32 V,可以直接通過電源來調(diào)節(jié)輸出電壓;最高電流可達(dá)2A;能穩(wěn)定地驅(qū)動(dòng)步進(jìn)電機(jī),電路設(shè)起來比較方便.步進(jìn)電機(jī)驅(qū)動(dòng)模塊如圖2所示.
1.3紅外避障模塊
機(jī)器人安全避障的實(shí)現(xiàn)方法主要有超聲避障、紅外傳感器、激光避障、微波雷達(dá)等方法.超聲避障實(shí)現(xiàn)方便,技術(shù)成熟,成本低,成為移動(dòng)機(jī)器人常用的避障方法[4],但超聲波避障受環(huán)境影響較大,電路復(fù)雜,易產(chǎn)生三角誤差、多次反射[5],地面對(duì)超聲波的反射,會(huì)影響系統(tǒng)對(duì)障礙物的判斷.本設(shè)計(jì)中,由于障礙物距離機(jī)器人有效距離較近,機(jī)器人只需要避開障礙物,不必識(shí)別障礙物的精確位置,因此可以采用非調(diào)制的紅外傳感器避障方法.紅外避障模塊的電路如圖3所示.
紅外傳感器分對(duì)射式和反射式兩種.設(shè)計(jì)中選用的是反射式紅外傳感器,在機(jī)器人小車的前端和后端的左右兩側(cè)各安裝一個(gè)紅外傳感器.為了避免傳感器之間的相互干擾,將它們的發(fā)射、接收管用黑紙筒進(jìn)行了隔離.由于經(jīng)電壓比較器LM324輸出的高電平為3.26 V,低電平是1.0 V,單片機(jī)不能很好的識(shí)別,所以在比較器的輸出端接一個(gè)六反向器CD4069,將低電平轉(zhuǎn)換成5 V,高電平轉(zhuǎn)換成0 V.圖3中P2.1~P2.4分別對(duì)應(yīng)左前端、右前端、左后端和右后端紅外傳感器的反饋信號(hào).
1.4語音報(bào)警模塊
本設(shè)計(jì)中的語音報(bào)警模塊選用具有分段錄放功能的語音芯片ISD1420,其電路如圖4所示.ISD1420是美國(guó)ISD公司開發(fā)的優(yōu)質(zhì)單片語音錄放芯片,該芯片采用了先進(jìn)的模擬語音存儲(chǔ)技術(shù)(DAST TM),具有音質(zhì)好、無須A/D轉(zhuǎn)換、斷電語音保護(hù)等特點(diǎn),最大可錄20秒的語音信息[6].ISD1420語音芯片片內(nèi)包含振蕩器、語音存儲(chǔ)單元、前置放大器、自動(dòng)增益控制電路、抗干擾濾波器、輸出放大器等單元電路.一個(gè)最小的錄放系統(tǒng)僅需一個(gè)駐極體話筒、一個(gè)喇叭、兩個(gè)按鈕、一個(gè)電源和少量的電阻、電容,所需的外圍元件少,使用起來非常方便.
圖3 紅外避障模塊Fig.3 The infrared obstacle avoidance module
(a)主流程圖 (b)紅外避障子程序流程圖圖5 系統(tǒng)工作流程圖Fig.5 The flowchart for the system
2系統(tǒng)軟件設(shè)計(jì)
本設(shè)計(jì)整個(gè)系統(tǒng)是以移動(dòng)機(jī)器人為控制對(duì)象,以有限區(qū)域?yàn)楣ぷ鞅尘?,完成?duì)未知有障礙物分布平面的智能避障,并將檢測(cè)到的情況發(fā)送到單片機(jī)控制中心進(jìn)行相關(guān)操作.因此,在軟件設(shè)計(jì)中,要求機(jī)器人具有獨(dú)立決策的能力,并能夠在單片機(jī)控制下協(xié)調(diào)工作[7].如:繞開障礙、選擇下一步的有效路徑、語音報(bào)警等.
機(jī)器人路徑規(guī)劃是機(jī)器人在已知的環(huán)境中,自主尋找一條優(yōu)化路徑[8].本設(shè)計(jì)改變機(jī)器人的傳統(tǒng)的設(shè)計(jì)方法,更加注重機(jī)器人的適應(yīng)性,為了保證對(duì)系統(tǒng)的精確控制,軟件上采用PID控制算法.通過機(jī)器人自身對(duì)未知環(huán)境的探測(cè),來建立環(huán)境的模型,并且具有自恢復(fù)能力,能在進(jìn)入循環(huán)推測(cè)中退出.系統(tǒng)的主流程圖如圖5(a)所示,紅外避障子程序流程圖如圖5(b)所示.
步進(jìn)電機(jī)在空載情況下能夠正常啟動(dòng)的脈沖頻率稱為空載啟動(dòng)頻率,如果脈沖頻率高于該值,步進(jìn)電機(jī)不能正常啟動(dòng),可能會(huì)導(dǎo)致丟步或堵轉(zhuǎn)現(xiàn)象.在有負(fù)載的情況下,啟動(dòng)頻率更低.如果要使電機(jī)達(dá)到高速轉(zhuǎn)動(dòng),脈沖頻率應(yīng)該有加速過程[9],以一個(gè)較低頻率啟動(dòng),然后按一定加速度升到所希望的高頻,電機(jī)轉(zhuǎn)速?gòu)妮^低速度逐步上升到較高速度.程序中設(shè)置了正轉(zhuǎn)起步和反轉(zhuǎn)起步子程序,其目的是使小車在運(yùn)動(dòng)中先有一個(gè)加速起步過程,然后才開始勻速前進(jìn)或后退.
3系統(tǒng)測(cè)試與分析
根據(jù)實(shí)驗(yàn)環(huán)境要求,我們?cè)诓煌轿环胖谜系K物,使機(jī)器人在環(huán)境中進(jìn)行實(shí)驗(yàn),并修正了程序算法,機(jī)器人的運(yùn)動(dòng)方式如圖6所示.經(jīng)過反復(fù)實(shí)驗(yàn),實(shí)現(xiàn)了機(jī)器人小車的智能移動(dòng)避障功能.該系統(tǒng)在以下兩個(gè)方面具有較為突出的優(yōu)點(diǎn):一是實(shí)現(xiàn)了多路傳感器的數(shù)據(jù)融合處理;二是利用了單片機(jī)的集成性,極大的簡(jiǎn)化了外圍電路.
圖6 機(jī)器人運(yùn)動(dòng)方式圖Fig.6 The pictures of the robot moving modes
4結(jié)語
本設(shè)計(jì)中的避障移動(dòng)機(jī)器人以STC89C51單片機(jī)為控制核心,采用步進(jìn)電機(jī)控制其轉(zhuǎn)動(dòng),并通過電機(jī)驅(qū)動(dòng)模塊進(jìn)行驅(qū)動(dòng),同時(shí)選用反射式紅外傳感器檢測(cè)障礙物位置,所編的程序算法較好地實(shí)現(xiàn)的了機(jī)器人的避障移動(dòng)功能,當(dāng)紅外避障模塊沒有感應(yīng)到障礙物時(shí),機(jī)器人小車向前行駛,一旦遇到障礙物,紅外傳感器迅速作出反應(yīng),反饋信號(hào)給單片機(jī),單片機(jī)通過控制步進(jìn)電機(jī)的轉(zhuǎn)向使機(jī)器人小車避開障礙物,同時(shí)給語言報(bào)警模塊一信號(hào),使其發(fā)出告警提示.整個(gè)系統(tǒng)硬件電路簡(jiǎn)單,性能穩(wěn)定,便于擴(kuò)展,具有廣闊的市場(chǎng)應(yīng)用前景.
參考文獻(xiàn):
[1]蘇紅飛.野外機(jī)器人導(dǎo)航避障系統(tǒng)設(shè)計(jì)[D].南京:南京理工大學(xué),2008.
[2]劉顏.基于DSP的移動(dòng)機(jī)器人控制系統(tǒng)設(shè)計(jì)與避障算法的實(shí)現(xiàn)[D].北京:北京交通大學(xué),2007.
[3]于竹林.嵌入式移動(dòng)機(jī)器人避障研究與系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)[D].青島:青島科技大學(xué),2009.
[4]葉濤,李磊,譚民.移動(dòng)機(jī)器人技術(shù)研究現(xiàn)狀與未來[J].機(jī)器人,2002,24(5):107-109.
[5]周興超,段智敏.移動(dòng)機(jī)器人的避障模糊算法[J].沈陽(yáng)理工大學(xué)學(xué)報(bào),2008,27(4):23-25.
[6]徐朝農(nóng),韓江洪.基于緊揍存儲(chǔ)模式的ISD1420語音系統(tǒng)的開發(fā)[J].微計(jì)算機(jī)信息,2000,16(5):67-68.
[7]鄭忠楷.智能避障機(jī)器人設(shè)計(jì)初探[J].福州師專學(xué)報(bào),2002,22(2):15-18.
[8]梁玉清,李妍,何靜濤.一種改進(jìn)柵格蟻群算法的機(jī)器人路徑規(guī)劃[J].湖北民族學(xué)院學(xué)報(bào)(自然科學(xué)版),2014,32(2):196-199.
[9]李磊.基于單片機(jī)的步進(jìn)電機(jī)升降速控制研究[J].微機(jī)電,2011,44(11):84-86.
責(zé)任編輯:時(shí)凌
Design and Implemention of Obstacle Avoidance Mobile Robot Based on STC89C51 MCU
YU Weichuang1,WANG Ming3,FU Hao2,ZHOU Binbin2,YUAN Hailing2,LIAO Honghua2*
(1.Science and Technology College of Hubei University for Nationalities,Enshi 445000,China;2.School of Information and Engineering,Hubei University for Nationalities,Enshi 445000,China;3.College of Electrical and Information and Engineering,Huaihua University,Huaihua 418000,China)
Abstract:In this paper,a kind of obstacle avoidance mobile robot was designed.It adopted the STC89C51 MCU as the control core,the rotation of the robot was controlled by two four-phase six-line stepping motors,which were driven by the special driving chip L293D.Four pairs of reflective infrared sensor were used in the obstacle avoidance module to detect obstacle position.The collected signals were processed by PID control algorithm,and the robot alarmed by the voice chip ISD1420.The experimental results show that the system is stable,the robot is able to avoid obstacles intelligently and give voice alarm automatically.
Key words:Mobile robot;obstacle avoidance;MCU;stepping motor;infrared sensor
收稿日期:2015-12-04.
基金項(xiàng)目:國(guó)家自然科學(xué)基金項(xiàng)目(61463014/61263030).
作者簡(jiǎn)介:喻偉闖(1982- ),男,碩士,主要從事智能控制、嵌入式系統(tǒng)研究;*通信作者:廖紅華(1972- ),男,博士,教授,主要從事智能化儀器、嵌入式系統(tǒng)等研究.
文章編號(hào):1008-8423(2016)01-0060-04
DOI:10.13501/j.cnki.42-1569/n.2016.03.016
中圖分類號(hào):TP311
文獻(xiàn)標(biāo)志碼:A