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