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