楊婧芳+祁惠梅
摘要:本設(shè)計(jì)采用了比較先進(jìn)的AT89S52為控制核心。ATMEL公司,AY89S51可以說是單片機(jī)領(lǐng)域的主流產(chǎn)品,通過構(gòu)建智能機(jī)器人系統(tǒng),培養(yǎng)設(shè)計(jì)并實(shí)現(xiàn)自動(dòng)控制系統(tǒng)的能力。此設(shè)計(jì)所使用的移動(dòng)機(jī)器人工程對(duì)象——機(jī)器人,兩個(gè)輪子作為機(jī)器人的兩條腿。它采用AT89S52單片機(jī)作為大腦,通過教學(xué)版安裝在機(jī)器人底盤上。運(yùn)用反射式紅外傳感器來進(jìn)行路徑檢測和速度監(jiān)測模塊,機(jī)器人的大腦——單片機(jī)AT89S52基于這個(gè)傳感器的輸入控制伺服電機(jī)?;谶B續(xù)旋轉(zhuǎn)伺服電機(jī)的移動(dòng)機(jī)器人,使機(jī)器人通過編程自動(dòng)完成相應(yīng)的動(dòng)作。
關(guān)鍵詞:單片機(jī);移動(dòng)機(jī)器人;設(shè)計(jì)
1機(jī)器人的構(gòu)成及設(shè)計(jì)方案
1.1機(jī)器人的構(gòu)成
機(jī)器人主要由八大部分組成,它們分別是單片機(jī)(主控制器)模塊、傳感器模塊、電機(jī)驅(qū)動(dòng)模塊、紅外檢測模塊、電機(jī)驅(qū)動(dòng)模塊、LCD顯示器模塊、電源、無焊錫面包板。他們之間互相協(xié)作,最終完成動(dòng)作。
1.2系統(tǒng)設(shè)計(jì)任務(wù)
設(shè)計(jì)一個(gè)基于連續(xù)旋轉(zhuǎn)伺服電機(jī)的智能移動(dòng)機(jī)器人,系統(tǒng)方案方框圖如圖1所示。
圖1系統(tǒng)方案方框圖
1.3系統(tǒng)的設(shè)計(jì)方案
移動(dòng)機(jī)器人控制系統(tǒng)由單片機(jī)(主控制器)電路模塊、紅外檢則模塊、電機(jī)及驅(qū)動(dòng)模塊、電源模塊、LCD模塊等部分組成。
2移動(dòng)機(jī)器人的硬件設(shè)計(jì)
2.1移動(dòng)機(jī)器人的硬件連接
機(jī)器人大腦需要連接電源來運(yùn)行,同時(shí)也需要連接到PC(或筆記本電腦)以便編程和交互。
2.1.1串口的連接
機(jī)器人教學(xué)板通過串口電纜連接到PC或者筆記本電腦上以便于用戶交互。如果計(jì)算機(jī)有串行接口,直接使用串口連接電纜。將該串口線一端的串口連接到機(jī)器人教學(xué)板上,另一端連接到計(jì)算機(jī)的USB口上,并安裝對(duì)應(yīng)的USB驅(qū)動(dòng)程序。
2.1.2ISP下載線的連接
移動(dòng)機(jī)器人程序通過連接到PC或者筆記本電腦的并口上的ISP下載線來下載到教學(xué)板上的單片機(jī)內(nèi)。下載線一端連接到PC的并行接口上,另一端(小端)連接到教學(xué)板上的程序下載口上。
2.2傳感器檢測模塊
機(jī)器人使用紅外線二極管LED作為前燈。紅外線二極管發(fā)射紅外光線,如果機(jī)器人前面的障礙物,紅外線從物體反射回來,相當(dāng)于機(jī)器人眼睛的紅外檢測(接受)器,檢測到反射回的紅外光線,并發(fā)出信號(hào)來表明檢測到從物體反射回紅外線。機(jī)器人的大腦———單片機(jī)AT89S52基于這個(gè)傳感器的輸入控制伺服電機(jī)。
2.3單片機(jī)模塊
2.3.1AT89S52單片機(jī)模塊
控制機(jī)器人伺服電機(jī)以不同速度運(yùn)動(dòng)是通過讓單片機(jī)的輸入/輸出(I/O)接口輸出不同的脈沖序列來實(shí)現(xiàn)的。51系列單片機(jī)有4個(gè)8位的并行I/O口:P0、P1、P2和P3。這4個(gè)接口既可以作為輸入,也可以作為輸出;也可按位方式(1位)使用。
2.3.2定時(shí)/計(jì)數(shù)器的運(yùn)用
單片機(jī)AT89S52的定時(shí)/計(jì)數(shù)器可以分為定時(shí)器模式和計(jì)數(shù)器模式。其實(shí)這兩種模式?jīng)]有本質(zhì)上的區(qū)別,均使用二進(jìn)制的加一計(jì)數(shù);當(dāng)計(jì)數(shù)器的值計(jì)滿回零時(shí)能自動(dòng)產(chǎn)生中斷的請(qǐng)求,以此來實(shí)現(xiàn)定時(shí)或者計(jì)數(shù)功能。他們的不同之處在于定時(shí)器使用單片機(jī)的時(shí)鐘來計(jì)數(shù),而計(jì)數(shù)器使用的是外部信號(hào)。定時(shí)/計(jì)數(shù)器能產(chǎn)生更精確的延時(shí),它的最小延時(shí)單位為1個(gè)機(jī)器周期。查閱資料可知,若晶振頻率為12MHz,則延時(shí)單位為1μs;若為11.0592MHz,則延時(shí)單位為1.08μs。
2.4LCD模塊
LCD1602有8個(gè)數(shù)據(jù)引腳(D0-D7)與AT89S52相連,用于接收指令和數(shù)據(jù)。AT89S52通過RS、RW和E這三個(gè)端口控制LCD模塊。
2.5無焊錫面包板
在面包板插座上插上元器件,比如電阻、LED、揚(yáng)聲器和傳感器,就夠成了例程電路。元器件靠面包板插座彼此連接。在面包板上端有一條黑色的插座,上面標(biāo)識(shí)著“Vcc”、“Vin”“GND”,稱之為電源端口,通過這些端口,可以給點(diǎn)路供電?!癡cc”指教準(zhǔn)的+5V電壓,“Vin”指電池的正極,“GND”對(duì)應(yīng)于教學(xué)板的接地端。左邊一條黑色的插座從上到下標(biāo)識(shí)著P10,P11,P12,……,P37(共18個(gè),部分端口并未標(biāo)出)。通過這些插座,可以將搭建的電路與單片機(jī)連接起來。
3移動(dòng)機(jī)器人軟件設(shè)計(jì)
在本次設(shè)計(jì)中,將反復(fù)用到3款軟件:KeiluVi-sion2IDE集成開發(fā)環(huán)境、SLISP下載軟件、串口調(diào)試軟件。
3.1.1KeiluVision2IDE集成開發(fā)環(huán)境
該軟件是德國KEIL公司出品的51系列單片機(jī)C語言集成開發(fā)系統(tǒng)。C語言在語法結(jié)構(gòu)上更加靈活,功能更加強(qiáng)大。
3.2.2SLISP軟件下載工具
該軟件是廣州天河雙龍電子有限公司推出的一款I(lǐng)SP下載軟件,使用該軟件可以將可執(zhí)行文件下載到機(jī)器人單片機(jī)上。該軟件的使用需要計(jì)算機(jī)有并行接口。
3.2.3串口天使軟件
此軟件用來顯示單片機(jī)與計(jì)算機(jī)的交互信息。在硬件上,計(jì)算機(jī)至少要有串行接口或USB接口來與單片機(jī)教學(xué)板的串口連接。
3.3光電檢測模塊設(shè)計(jì)
3.3.1光電檢測過程
光電檢測模塊的設(shè)計(jì),使機(jī)器人能夠檢測地面上的白導(dǎo)線。光電檢測電路主要包括發(fā)射部分和接收部分。發(fā)射部分的波形調(diào)制采用調(diào)頻方式。由于LED的響應(yīng)速度快,其工作頻率可以達(dá)到MHz或十MHz以上,檢測系統(tǒng)的調(diào)制頻率可以滿足幾十~幾百千赫的要求。光源驅(qū)動(dòng)器負(fù)責(zé)將調(diào)制波形放大到足夠的功率以驅(qū)動(dòng)光源發(fā)光。光源采用紅外發(fā)光二極管,工作頻率高,適用于方波調(diào)制的光發(fā)射。接收部分采用光敏二極管接收調(diào)制光,并將光信號(hào)轉(zhuǎn)換為電信號(hào)。這種電信號(hào)通常很弱,可以通過濾波和放大處理。調(diào)制信號(hào)的放大采用交流放大的形式,將調(diào)制光信號(hào)與背景光信號(hào)分離,為信號(hào)處理提供方便。在調(diào)制信號(hào)處理部分,對(duì)放大信號(hào)進(jìn)行識(shí)別,判斷被檢測對(duì)象的特征。因此,此模塊的本質(zhì)是將“交流”的、有用的調(diào)制光信號(hào)從“直流”的、無用的背景光信號(hào)中分離出來,從而達(dá)到抗干擾的目的。
3.3.2光電探頭
光電探頭安裝在機(jī)器人底盤前,安裝了5個(gè)檢測點(diǎn)。從理論上講,識(shí)別點(diǎn)越多,檢測越近,識(shí)別的準(zhǔn)確性和可靠性就越高,但硬件成本和軟件復(fù)雜度也相應(yīng)提高。該檢測系統(tǒng)保證了檢測的準(zhǔn)確性,節(jié)省了硬件。發(fā)光二極管發(fā)出的調(diào)制光通過地面反射到光敏二極管。光電二極管產(chǎn)生的光電流與反射光的強(qiáng)度成線性關(guān)系。檢測到這一變化,可以確定測試點(diǎn)是否位于白導(dǎo)線之上,從而確定機(jī)器人和白導(dǎo)線的相對(duì)位置。。
4結(jié)論
在實(shí)踐過程中,熟悉以單片機(jī)為核心控制芯片,并采用C語言對(duì)AT89S52進(jìn)行編程,使機(jī)器人實(shí)現(xiàn)以下4個(gè)基本移動(dòng)任務(wù):安裝傳感器以探測周邊環(huán)境;基于傳感器信息作出決策;控制機(jī)器人運(yùn)動(dòng)(通過操作帶動(dòng)輪子旋轉(zhuǎn)的電機(jī));與用戶交換信息。整個(gè)機(jī)器人系統(tǒng)的設(shè)計(jì)以單片機(jī)為核心,利用了多種電路模塊,將軟件和硬件相結(jié)合。本系統(tǒng)能實(shí)現(xiàn)如下功能:自動(dòng)沿預(yù)設(shè)軌道行駛:機(jī)器人在行駛過程中,能夠自動(dòng)檢測預(yù)先設(shè)好的軌道,實(shí)現(xiàn)直道和弧形軌道的前進(jìn)。若有偏離,能夠自動(dòng)糾正,返回到預(yù)設(shè)軌道上來。當(dāng)機(jī)器人探測到前進(jìn)方的障礙物時(shí),可以自動(dòng)報(bào)警調(diào)整,躲避障礙物,從無障礙區(qū)通過。機(jī)器人通過障礙區(qū)后,能夠自動(dòng)循跡。機(jī)器人能夠自動(dòng)跟隨另一個(gè)機(jī)器人行走,并能夠自動(dòng)調(diào)節(jié)其距離,使其間距維持在固定數(shù)值。
參考文獻(xiàn):
[1]丁易新.基于單片機(jī)的移動(dòng)機(jī)器人路徑規(guī)劃模糊控制器設(shè)計(jì)[J].自動(dòng)化與儀器儀表,2009,01:25-28.
[2]趙銀銀.基于C8051F340單片機(jī)的移動(dòng)機(jī)器人避障系統(tǒng)設(shè)計(jì)[J].長春大學(xué)學(xué)報(bào),2010,12:21-23.
[3]李昌杰.智能移動(dòng)機(jī)器人控制系統(tǒng)設(shè)計(jì)研究[D].長安大學(xué),2012.endprint