智能機(jī)器人控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)說明書_第1頁
智能機(jī)器人控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)說明書_第2頁
智能機(jī)器人控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)說明書_第3頁
智能機(jī)器人控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)說明書_第4頁
智能機(jī)器人控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)說明書_第5頁
已閱讀5頁,還剩72頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

智能機(jī)器人控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)說明書摘要本設(shè)計(jì)采用Motorola生產(chǎn)的68HC11單片機(jī),來實(shí)現(xiàn)該機(jī)器人的硬件仿真設(shè)計(jì)和實(shí)物驗(yàn)證。首先完成了能力風(fēng)暴智能機(jī)器人的自主運(yùn)行、躲避障礙、智能跟隨的仿真設(shè)計(jì)和實(shí)際控制系統(tǒng)設(shè)計(jì)。隨后在Proteus平臺上采用68HC11單片機(jī)進(jìn)行了系統(tǒng)的硬件設(shè)計(jì),通信模塊與68HC11之間的存儲設(shè)計(jì),編程傳感器的仿真驅(qū)動程序,并實(shí)現(xiàn)避障、智能跟隨等功能的模擬;最終,借助能力風(fēng)暴智能機(jī)器人自帶的交互式C語言下載軟件,避障、智能跟隨等功能從仿真轉(zhuǎn)化到實(shí)物,從而完成了整個智能機(jī)器人控制系統(tǒng)的設(shè)將計(jì)。關(guān)鍵詞:智能機(jī)器人;Proteus仿真;68HC11IAbstractThisdesignusestheMotorola68HC11MCUproduction,thehardwaredesignandSimulationofthephysicalverificationoftherobot.Thisdesignmainlycompletesthedesignofsimulationdesignandpracticalcontrolsystemforautonomousoperation,abilitystormrobottoavoidobstacles,intelligentfollows.Andthehardwaredesignofthesystemis68HC11microcontrollerontheProteusplatform,completedthedesignofstoragebetweenthecommunicationmoduleand68HC11,thesensorsimulationdriver,toachievethewholeprocesscontrol,simulation,intelligentobstacleavoidancewithfeaturessuchascomplete;then,withthehelpofabilitystormrobotcomeswithinteractiveClanguagedownloadsoftware,theobstacleavoidance,intelligentfollowfunctionsfromsimulationtoreality,thuscompletingthedesignoftheintelligentrobotcontrolsystem.Keywords:Robot;Proteussimulation;68HC11II目錄第一章緒論11.1課題來源11.2本課題的研究目的及意義11.3智能小車的現(xiàn)狀11.4小結(jié)2第二章系統(tǒng)方案設(shè)計(jì)及論證32.1模塊方案比較及論證32.2電機(jī)驅(qū)動方案選擇52.3避障模塊方案選擇62.4檢測模塊的設(shè)計(jì)72.4.1碰撞傳感器72.4.2紅外傳感器82.4.3光敏傳感器92.4.4麥克風(fēng)92.4.5光電編碼器92.4.6其他傳感器102.5小結(jié)10第三章機(jī)器人硬件電路設(shè)計(jì)113.168HC11A1最小系統(tǒng)113.2復(fù)位及啟動方式133.3檢測模塊硬件仿真133.3.1碰撞模塊仿真133.3.2紅外避障模塊仿真143.4機(jī)器人動作驅(qū)動模塊163.568HC11單片機(jī)編譯環(huán)境173.6小結(jié)19第四章系統(tǒng)軟件設(shè)計(jì)與調(diào)試204.1系統(tǒng)流程圖設(shè)計(jì)204.1.1避障流程圖204.1.2循跡與智能跟隨流程圖214.2驅(qū)動程序與編程234.3按鍵檢測軟件設(shè)計(jì)254.4程序下載與調(diào)試26I4.5小結(jié)26總結(jié)27外文資料29外文翻譯38致謝47附錄149附錄256II第一章緒論1.1課題來源智能機(jī)器人是一種自動化的機(jī)器,所不同的是這種機(jī)器具備一些與人或生物相似的能力,如感知能力、避障能力、判斷能力和協(xié)同能力,是一種具備高度靈活性的自動化機(jī)器。智能機(jī)器人是二十一世紀(jì)新的熱點(diǎn),也是一個國家整體實(shí)力的顯示。機(jī)器人的發(fā)展及普及更是一個國家的科技基礎(chǔ)和制造業(yè)發(fā)展水平的重要體現(xiàn)。近年來,在智能機(jī)器人和自動化領(lǐng)域里移動機(jī)器人的研究吸引了眾多研究者的注意力,其中智能機(jī)器人以其結(jié)構(gòu)簡單、容易實(shí)現(xiàn)仿真功能受到歡迎。在另一方面,智能機(jī)器人在移動方向辨別的問題上,具有廣闊的運(yùn)動空間,這更成為它吸引注意力的有利武器,紅外避障成為智能機(jī)器人所必須具備的模塊。在這種背景下,有關(guān)智能機(jī)器人控制系統(tǒng)的設(shè)計(jì)課題應(yīng)運(yùn)而生。1.2本課題的研究目的及意義“能力風(fēng)暴”(AbilityStorms)機(jī)器人由上海廣茂達(dá)電子信息有限公司開發(fā),外形酷似UFO,是專為個人機(jī)器人的需求設(shè)計(jì)的,專門面向教育的機(jī)器人。它是專門為大學(xué)進(jìn)行課程教學(xué)、工程訓(xùn)練、機(jī)器人競賽、科技創(chuàng)新以及研究服務(wù)開發(fā)的新型移動智能機(jī)器人。能力風(fēng)暴個人機(jī)器人配有5種十幾個傳感器,另外還可以根據(jù)需要擴(kuò)展其他傳感器,對環(huán)境的感知能力很強(qiáng)。感知環(huán)境的能力是產(chǎn)生智能行為的前提,因此能力風(fēng)暴能產(chǎn)生許多智能性行為。能力風(fēng)暴智能機(jī)器人作為革命性的能力培養(yǎng)平臺,用于培養(yǎng)個人動手能力、創(chuàng)造能力、綜合能力、合作能力和進(jìn)取精神。能力風(fēng)暴智能機(jī)器人融合了光學(xué)、電子、計(jì)算機(jī)、人工智能等高科技知識,他集輔助教學(xué)和娛樂于一身。它具有三方面的特點(diǎn):l.提供強(qiáng)大的交互式C語言;2.采用模塊化結(jié)構(gòu);3.能力風(fēng)暴運(yùn)用開放式接口,達(dá)到了硬件的高度開放?;谝陨先c(diǎn)可知,能力風(fēng)暴軟硬件開放性很大。這就讓使用人員的動手能力在娛樂中得以提高。又由于它是多種高科技的融合,使用人員的綜合能力也不容置疑地得以提高這對于我們而言,正是培養(yǎng)創(chuàng)造力、合作能力、進(jìn)取精神的絕好機(jī)會。1.3智能小車的現(xiàn)狀智能小車發(fā)展很快,從智能玩具到其它各行業(yè)都有實(shí)質(zhì)成果。其基本可實(shí)現(xiàn)智能跟隨、避障、檢測地面灰度、尋光跟隨等基本功能,近年來,隨著個人計(jì)算機(jī)的普及,計(jì)1算機(jī)技術(shù)和互聯(lián)網(wǎng)技術(shù)突飛猛進(jìn)的發(fā)展,這就促進(jìn)了智能機(jī)器人的發(fā)展,我國機(jī)器人起步于二十世紀(jì)七十年代,那是我國機(jī)器人的萌芽期,經(jīng)過長期的研究和發(fā)展,已經(jīng)有了很大進(jìn)步,但相對于發(fā)達(dá)國家,還是有很多不足之處,智能機(jī)器人以其優(yōu)越的性能、強(qiáng)大的功能正逐漸被普及應(yīng)用,將在以后的生活中扮演重要的角色。使用68HC11單片機(jī)開發(fā)小型智能機(jī)器人控制系統(tǒng),主要的作用是研究單片機(jī)開發(fā)技術(shù),學(xué)習(xí)常用傳感器的硬件設(shè)計(jì)和軟件驅(qū)動,以及前后臺控制思想在機(jī)器人控制系統(tǒng)中的實(shí)現(xiàn)。具體總結(jié)來說,主要的研究內(nèi)容如以下幾個方面:(1)學(xué)習(xí)掌握摩托羅拉68HC11單片機(jī);(2)對能力風(fēng)暴智能機(jī)器人的功能進(jìn)行研究,選擇傳感器;(3)分析傳感器和機(jī)器人行動機(jī)構(gòu)的原理和特點(diǎn),設(shè)計(jì)控制思路完成機(jī)器人自主行動,可以避障,可以實(shí)現(xiàn)一些簡單的機(jī)器人交互行為;(4)在Proteus仿真平臺里設(shè)計(jì)硬件電路圖,并設(shè)計(jì)軟件,模擬機(jī)器人的運(yùn)行;(5)將仿真的軟件思路移植到“能力風(fēng)暴”機(jī)器人實(shí)物平臺上,實(shí)現(xiàn)真實(shí)小型機(jī)器人基本避障等功能。1.4小結(jié)本章主要了解了該課題研究的主要內(nèi)容及意義以及智能小車的發(fā)展與現(xiàn)狀,對整個設(shè)計(jì)內(nèi)容有了初步認(rèn)知,明確本設(shè)計(jì)所要做的工作。2第二章系統(tǒng)方案設(shè)計(jì)及論證根據(jù)題目的要求,確定如下方案,首先設(shè)計(jì)出小車的基本模型以及方案,并在車上加裝傳感器,實(shí)現(xiàn)對電動車的速度、位置、運(yùn)行狀況的實(shí)時測量,并將測量數(shù)據(jù)傳送至控制器中進(jìn)行處理,然后由單片機(jī)根據(jù)所檢測的各種數(shù)據(jù)實(shí)現(xiàn)對電動車的智能控制。這種方案能實(shí)現(xiàn)對電動車的運(yùn)動狀態(tài)進(jìn)行實(shí)時控制,控制靈活、可靠,精度高,可滿足對系統(tǒng)的各項(xiàng)要求。穩(wěn)壓與低壓復(fù)位系統(tǒng)控制器檢測模塊驅(qū)動模塊擴(kuò)展部分圖2.1能力風(fēng)暴主體框圖2.1模塊方案比較及論證能力風(fēng)暴智能機(jī)器人由檢測模塊、控制模塊以及驅(qū)動模塊組成??梢赃x用的控制器有很多,據(jù)此,擬定了以下兩種控制方案并進(jìn)行了綜合的比較論證,具體如下:方案一:選用一片CPLD作為系統(tǒng)的核心部件,來實(shí)現(xiàn)控制與處理的功能。CPLD是一種用戶根據(jù)各自需要而自行構(gòu)造邏輯功能的數(shù)字集成電路,具有速度快、編程容易、資源豐富、開發(fā)周期短等優(yōu)點(diǎn),可利用VHDL語言進(jìn)行編寫開發(fā)。但CPLD在控制上較單片機(jī)有較大的劣勢。同時,CPLD的處理速度非???,而智能機(jī)器人的行進(jìn)速度不要求太高,那么對系統(tǒng)處理信息的要求也就不會要求太高,在這一點(diǎn)上,MCU就已經(jīng)可以勝任了。若采用該方案,必將在控制上遇到許許多多不必要增加的難題。為此,我們不采用該種方案,3進(jìn)而提出了第二種設(shè)想。方案二:采用單片機(jī)作為整個系統(tǒng)的核心,來實(shí)現(xiàn)機(jī)器人的控制與需要的性能指標(biāo)。充分分析該控制系統(tǒng),其關(guān)鍵在于實(shí)現(xiàn)智能小車的自動避障控制,而在這一點(diǎn)上,單片機(jī)就顯現(xiàn)出來它的優(yōu)勢——控制簡單、方便、快捷。這樣一來,單片機(jī)就可以充分發(fā)揮其資源豐富、有較為強(qiáng)大的控制功能及可位尋址操作功能、價格低廉等優(yōu)點(diǎn)。因此,這種方案是一種較為理想的方案。本設(shè)計(jì)特點(diǎn)是多開關(guān)量輸入的復(fù)雜控制系統(tǒng),需要的處理器能夠處理很多開關(guān)量,根據(jù)這些分析,我選定了MC68HC11A1單片機(jī)作為本設(shè)計(jì)的主控裝置。圖2.2最小系統(tǒng)電路圖M68HC11A1單片機(jī)主要具有如下功能:(1)無內(nèi)部RAM,512字節(jié)EEPROM,可重定位的256字節(jié)RAM;(2)16位高性能定時系統(tǒng),8M晶振,定時器頻率2MHz,3個輸入捕捉,可測量脈沖數(shù)量及脈沖周期、寬度和相位等。5個輸出比較,可輸出PWM信號,可以完成各種定時控制功能,有定時溢出中斷功能;(3)串行通訊接口SCI,智能機(jī)器人用于和PC機(jī)通信。全雙工同步串行外圍接口SPI,用于擴(kuò)展外圍芯片和多機(jī)通訊,智能機(jī)器人將用于其他設(shè)備驅(qū)動;(4)復(fù)位,時鐘監(jiān)視復(fù)位,上電自動復(fù)位,外部Reset復(fù)位,系統(tǒng)保護(hù)特性:計(jì)算4機(jī)操作正常(COP)監(jiān)視(Watchdog);(5)特別地,MC68HC11系列具有自動下載功能,可以利用交互C語言(JC)開發(fā)高層應(yīng)用程序,也可開發(fā)低層驅(qū)動,還能交互調(diào)試。在綜合考慮了傳感器、兩部電機(jī)的驅(qū)動等諸多因素后,我們決定采用一MC68HC11A1單片機(jī),能力風(fēng)暴充分利用MC68HC11A1的全部硬件資源。M68HC11系列單片機(jī)的結(jié)構(gòu)基本相同,它有兩個主要部分組成:控制單元和執(zhí)行單元??刂茊卧袝r序發(fā)生器、控制存儲器和隨機(jī)控制邏輯組成,能為執(zhí)行單元提供所有的控制。執(zhí)行單元包含所有的寄存C68HC11系列采用模塊化設(shè)計(jì),各種不同型號的單片機(jī)可由不同器、ALU和總線接口。M的模塊組成,MC68HC11A1是其中的代表產(chǎn)品,它速度快、功能強(qiáng)、功耗低、可靠性高、價格低。MC68HC11A1有CPU、片內(nèi)存儲器、定時器系統(tǒng)、串行口、A/D、并行I/O口,中斷和復(fù)位系統(tǒng)組成。2.2電機(jī)驅(qū)動方案選擇我們知道,機(jī)器人可以做很多動作,這些動作的配合也會產(chǎn)生非常多的效果,電機(jī)起著非常關(guān)鍵的作用。我們需要控制電機(jī)的因子有:電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)以及電機(jī)的調(diào)速,并且兩個電機(jī)是獨(dú)立驅(qū)動的。由這個分析我們設(shè)計(jì)的雙電機(jī)驅(qū)動電路有兩個驅(qū)動方案:方案一:使用雙極型D/A轉(zhuǎn)換芯片單片機(jī)使用一個8位并口輸出數(shù)字量,經(jīng)D/A轉(zhuǎn)換為-5V到+5V的輸出電壓,從而驅(qū)動電機(jī)的正轉(zhuǎn)和反轉(zhuǎn),以及電機(jī)的調(diào)速。電壓絕對值越大,電機(jī)轉(zhuǎn)速越高,反之越小。電機(jī)的正反轉(zhuǎn)由輸出電壓的極性控制。這個方案的優(yōu)點(diǎn)在于單片機(jī)編程簡單,只需要在一個8位并口上輸出對應(yīng)的數(shù)字量,電機(jī)驅(qū)動的部分直接交給D/A轉(zhuǎn)換電路,輸出0則反轉(zhuǎn)速度最大,輸出128電機(jī)不轉(zhuǎn),輸出255電機(jī)正轉(zhuǎn)速度最大。但這個方案的缺點(diǎn)卻是很明顯的:首先是需要專用的D/A轉(zhuǎn)換芯片以及相應(yīng)的外圍器件電路,電路復(fù)雜,且模擬電路容易受環(huán)境的干擾,造成控制精度很差。其次,該方案中,一個電機(jī)的驅(qū)動電路就要占用一個8位并口,既8個單片機(jī)引腳,非常浪費(fèi)單片機(jī)的資源。雖然可以改由串口發(fā)送數(shù)據(jù)再由專用芯片轉(zhuǎn)換為并行數(shù)據(jù)供D/A使用,但這樣又會大大增加硬件電路的成本和復(fù)雜度,同時降低穩(wěn)定性。所以,我們提出下面第二種方案。方案二:使用H橋驅(qū)動電路控制電機(jī)H橋電機(jī)驅(qū)動的原理比較容易理解,既使用四個晶體管組成一個電流H橋,電機(jī)接中間的橋臂,四個晶體管成對導(dǎo)通,從而在電機(jī)上產(chǎn)生相反的電流,控制電機(jī)正反轉(zhuǎn),電機(jī)的轉(zhuǎn)速則由晶體管門極的導(dǎo)通時間和關(guān)斷時間的比值來控制。這種調(diào)速控制的方法叫做“脈沖寬度調(diào)制”(PWM),電機(jī)的轉(zhuǎn)速由PWM波的占空比控制。H橋驅(qū)動有專門的驅(qū)動芯片,常用的有L298,L293等。直流電機(jī)可以直接用L2985來驅(qū)動,它是一個雙H橋驅(qū)動芯片。圖2.2是一個L298驅(qū)動雙電機(jī)的電路。圖2.2L298驅(qū)動雙電機(jī)的電路L298使用5V電源供電(VCC),電機(jī)的驅(qū)動電源VS輸入范圍是5-40V,ENA和ENB分別輸入電機(jī)1和電機(jī)2的驅(qū)動PWM信號,IN1,IN2,IN3,IN4為兩個電機(jī)轉(zhuǎn)動方向的控制。下面以左輪電機(jī)示例:ENA=1,IN1=1,IN2=0時,電機(jī)正轉(zhuǎn);ENA=1,IN1=0,IN2=1時,電機(jī)反轉(zhuǎn);ENA=1,IN1=1,IN2=1時,電機(jī)急停;ENA=1,IN1=0,IN2=0時,電機(jī)不動作;ENA=0時,電機(jī)不動作;、D2、D3、D4、D9、D10、D11、D12右輪電機(jī)的控制和左輪完全相同,該電路中,D1這八個二極管的作用是防止電機(jī)啟動和停止時,電機(jī)中電樞電感產(chǎn)生的反向電動勢燒壞芯片或者燒掉電機(jī)。由于PWM控制信號的頻率可能比較高,因此這八個二極管一定要選擇快速恢復(fù)二極管,最好選用電流1A以上的肖特基二極管,這有利于電路的穩(wěn)定運(yùn)行。2.3避障模塊方案選擇“能力風(fēng)暴”智能機(jī)器人主要功能為避障功能,能力風(fēng)暴是移動的機(jī)器人,為確保機(jī)器人行動安全。必須有避障模塊來使機(jī)器人能夠自主運(yùn)行,不能避障的機(jī)器人就不能行動自如,更不用說完成其他的功能,所以,避障模塊對機(jī)器人來說是非常重要的,根據(jù)本設(shè)計(jì)要求,可設(shè)計(jì)如下兩種方案來完成避障功能。方案一:采用一只紅外對管置于機(jī)器人前面。這種方案安裝簡易,也可以檢測到障礙物的存在,但難以確定智能機(jī)器人在水平方向上是否會與障礙物相撞,也不易讓智能機(jī)器人做出精確的轉(zhuǎn)向反應(yīng),所以不能精確的檢測機(jī)器人的運(yùn)動狀態(tài)。方案二:采用兩只紅外發(fā)射管和一只紅外接收模塊構(gòu)成紅外傳感系統(tǒng),主要用來檢測前方、左前方和右前方的障礙,檢測距離為10~80cm,這種方案很好的避免了機(jī)器人與左右兩6側(cè)的障礙物碰撞,也能對智能機(jī)器人與障礙物相對距離和方位能作出較為準(zhǔn)確的判別和及時反應(yīng)。但紅外接收模塊只有在接收到了一定強(qiáng)度的紅外光時才能起到質(zhì)的變化,認(rèn)為有障礙,所以遇到障礙物太細(xì)、紅外光強(qiáng)度不夠時,不足以產(chǎn)生有障礙的信號。紅外傳感器電路圖如下圖所示:圖2.3紅外傳感器電路圖比較兩種方案的優(yōu)缺點(diǎn),智能小車不要求太高的速度,為了能夠讓能力風(fēng)暴機(jī)器人更準(zhǔn)確的實(shí)現(xiàn)避障功能,所以選擇第二種方案。2.4檢測模塊的設(shè)計(jì)2.4.1碰撞傳感器碰撞傳感器是使能力風(fēng)暴個人機(jī)器人有感知碰撞環(huán)上的碰撞信息能力的傳感器。在能力風(fēng)暴個人機(jī)器人的左前、右前、左后、右后設(shè)置有四個碰撞開關(guān)(常開),它們與圖2.3碰撞傳感器方位碰撞環(huán)共同構(gòu)成了碰撞傳感器。碰撞環(huán)與底盤柔性連接,在受力后與底盤產(chǎn)生相對位移,觸發(fā)固連在底盤上相應(yīng)的碰撞開關(guān),使之閉合。然后經(jīng)過控制器來完成相應(yīng)的動作,它在機(jī)器人中占有很重要的地位,通過碰撞傳感器來感知周圍的環(huán)境。我們把來自四周的7碰撞分為八個方向。在機(jī)器人碰到障礙物時相應(yīng)方向的行程開關(guān)接觸,從而產(chǎn)生電平變化信號,由單片機(jī)掃描檢測到以后判定該方向發(fā)生碰撞,然后控制執(zhí)行模塊使機(jī)器人轉(zhuǎn)向從而避開障礙物。其碰撞方位圖如圖2.3所示。2.4.2紅外傳感器能力風(fēng)暴運(yùn)用了2只紅外發(fā)射管(970nm)和一只紅外接收模塊構(gòu)成紅外傳感系統(tǒng),主要用來檢測前方、左前方和右前方的障礙,檢測距離范圍為10,80cm。用戶可以通過調(diào)節(jié)IRLEFT和IRRIGHT兩個電位器來調(diào)節(jié)左右兩個紅外的檢測距離。主板中的R5為24K電阻,它將紅外光發(fā)射的調(diào)制頻率固化在38KHz左右,這是紅外接收模塊中帶通濾波器的中心頻率。紅外發(fā)射管的頭部象一個發(fā)光二極管,它是兩針的;紅外接收器的頭部是個集成塊,它是三針的。紅外接收模塊集成了紅外接收管、前置放大器、限幅放大器、帶通濾波器、峰值檢波器、整前電路和輸出放大電路,靈敏度很高。有時從紅外管側(cè)面和后面漏出的紅外光也會被接受模塊探測到,在能力風(fēng)暴個人機(jī)器人上,兩個紅外發(fā)射管和一個紅外接收器都是先裝在套管里再固定在外殼上的,有效的避免了這種情況的發(fā)生。用戶在自己擴(kuò)展紅外傳感器時,如果遇到這種情況,只需用黑膠布把發(fā)射管的側(cè)面和后部包住即可,紅外傳感器是靠發(fā)射并接收由障礙物反射回來的紅外光來判斷是否有障礙。圖2.4紅外測障原理示意圖在紅外線檢測避障中,紅外光以60度的散角向外發(fā)射,碰到障礙物然后反射回來,陰影區(qū)域分別是左右兩個紅外的反射光區(qū)域,而紅外的接收模塊正好處于左右兩個反射光區(qū)域內(nèi),能接收到左右兩個紅外發(fā)射管的反射光,所以判斷此時前方有障礙,從而實(shí)現(xiàn)避障功能。紅外接收模塊只是在接收到了一定強(qiáng)度的紅外光時才起到質(zhì)的變化,認(rèn)為有障礙。所以,當(dāng)障礙物太細(xì)時,能力風(fēng)暴個人機(jī)器人會檢測不到;當(dāng)障礙物是黑色或深色時,會吸收大部分的紅外光,而只反射回一小部分,有時會使接收模塊接收到的紅外光強(qiáng)度不夠,不足以產(chǎn)生有障礙的信號。根據(jù)采集的數(shù)據(jù)可以判別是否有反射,只有在初始探測無反射而第二次探測有反射8時,左反射管才是有反射的,這樣系統(tǒng)才認(rèn)為左方有障礙。同理,初始探測無反射而第三次探測有反射時,右反射管才是有反射的,右方被認(rèn)為有障礙。2.4.3光敏傳感器能力風(fēng)暴個人機(jī)器人上有2只光敏傳感器,它可以檢測到光線的強(qiáng)弱。光敏傳感器其實(shí)是一個光敏電阻,它的阻值受照射在它上面的光線強(qiáng)弱的影響。能力風(fēng)暴個人機(jī)器人所用的光敏電阻的阻值在很暗的環(huán)境下為幾百,Ω,室內(nèi)照度下幾,Ω,陽光或強(qiáng)光下幾十Ω。光敏傳感器很靈敏,若需要左右兩個光敏傳感器對光強(qiáng)的反應(yīng)非常一致,則把光敏傳感器對準(zhǔn)照度均勻的白墻進(jìn)行調(diào)節(jié),數(shù)字較小的一邊,在光敏傳感器上貼一小片黑膠布;或者通過軟件進(jìn)行偏差值調(diào)整,光敏傳感器在能力風(fēng)暴個人機(jī)器人里表現(xiàn)出的光越暗,數(shù)值越大,光越強(qiáng),數(shù)字越小是因?yàn)?光敏電阻和10K的電阻R8,R10相連后構(gòu)成分壓器。左右兩個光敏電阻分別與模擬輸入口PE0,PE1相連,在系統(tǒng)中采集的是光敏電阻上的電壓值。光暗時,光敏電阻上的電壓接近5V,光強(qiáng)時,接近0V,模數(shù)轉(zhuǎn)換為8位數(shù)字量后的范圍為0-255。2.4.4麥克風(fēng)能力風(fēng)暴個人機(jī)器人上的麥克風(fēng)(microphone)是能夠識別聲音聲強(qiáng)大小的聲音傳感器,對著microphone發(fā)出一些聲音,可以看到microphone的值不斷變化。它的變化范圍是0,255。麥克風(fēng)采集到的信號通過LM386(IC5)進(jìn)行放大,放大倍數(shù)為200(由C13確定),輸出信號接至PE2。沒有聲音時,電壓為2(5V左右,轉(zhuǎn)換為8位二進(jìn)制數(shù)后得到的十進(jìn)制整數(shù)為127左右。當(dāng)有聲音時,LM386的輸出電壓在2.5V上下波動。PE2測得的電壓和2.5V相減的絕對值越大,則聲音越大。如MIC=100=(127-27)與MIC,154=(127+27)表示兩次采集時的瞬時聲強(qiáng)是相同的,只是波動的方向不同。R1,C12構(gòu)成高頻濾波,濾去線路板其他元器件產(chǎn)生的高頻噪聲。2.4.5光電編碼器光電編碼器是一種能夠傳遞位置信息的傳感器,它由光電編碼模塊及碼盤組成。能力風(fēng)暴個人機(jī)器人有2只光電編碼器,運(yùn)用紅外發(fā)射接收模塊。反射器(即碼盤)是黑白相間的鋁合金制成的圓片,66等分。當(dāng)碼盤隨輪子旋轉(zhuǎn)時,黑條和白條交替經(jīng)過光電編碼器,反饋的信號狀態(tài)不同,即構(gòu)成一個脈沖。因此360度共產(chǎn)生33個脈沖,每個脈沖的分辨率約為10.91度,輪子直徑為65mm,則周長方面的分辨率約為6.19mm。碼盤裝在輪子的內(nèi)側(cè),光電編碼器原理上也是靠發(fā)射與接收紅外光來工作的。能力風(fēng)暴個人機(jī)器人上用的光電編碼器芯片集成了發(fā)射與接收功能。紅外光射在黑色輻條上時沒有反射信號,因?yàn)榧t外光大部分已經(jīng)被黑色輻條吸收;當(dāng)紅外光射在白色輻條上時有反射信號,因?yàn)榧t外光在白輻條上反射強(qiáng)烈。92.4.6其他傳感器1.人體熱釋片傳感器人體熱釋片傳感器對移動的人體熱源敏感,加上菲涅耳透鏡后可以探測10米外的人體。能力風(fēng)暴裝上1個或幾個人體熱釋片傳感器后,你可以讓他一看見你,就向你迎過來,讓他跟著你走。2.超聲傳感器超聲傳感器是機(jī)器人測距的專業(yè)傳感器,測量距離一般為20cm-6m,測量精度為1%,是測量聲波發(fā)射與收到回波之間的時間差來測量距離的。運(yùn)用能力風(fēng)暴本體上帶的傳感器在房間里找到門不容易,但運(yùn)用聲納對房間掃描一周后,就能較方便找到房門。3.連續(xù)測距紅外傳感器SHARP公司推出了創(chuàng)新的GP2D02/GP2D12連續(xù)測距紅外傳感器,測量范圍為10cm-80cm,參加滅火比賽時,用它來找房間非常好。4.溫度傳感器想讓機(jī)器人動態(tài)告訴你氣溫嗎,加一個溫度傳感器是個好方法。能力風(fēng)暴的魅力在于你能控制所有的資源,直接領(lǐng)悟信息采集與處理的機(jī)制,以及如何處理現(xiàn)實(shí)情況的復(fù)雜性和難以預(yù)測性。2.5小結(jié)本章主要完成了系統(tǒng)方案的選擇及器件的選型,對系統(tǒng)各模塊有了初始的設(shè)計(jì)。通過查閱相關(guān)書籍和相關(guān)資料,知道了MC68HC11系列采用模塊化設(shè)計(jì),各種不同型號的單片機(jī)可由不同的模塊組成,我選擇了MC68HC11A1。這個型號是其中的代表產(chǎn)品,它速度快、功能強(qiáng)、功耗低、可靠性高、價格低。由于程序代碼量也不是很大,為了合理完成對系統(tǒng)的控制,我們選擇68HC11A1作為主控芯片來完成對系統(tǒng)的設(shè)計(jì)。10第三章機(jī)器人硬件電路設(shè)計(jì)能力風(fēng)暴的輪子一共有四只,兩只主動輪,兩只從動輪,主動輪帶動整個能力風(fēng)暴機(jī)器人運(yùn)動,從動輪起到平衡和導(dǎo)向的作用,在四只輪子的共同配合下能力風(fēng)暴機(jī)器人能夠完成向前直走,向后倒退,左轉(zhuǎn),右轉(zhuǎn),原地打轉(zhuǎn)等這些平地上的技術(shù)動作,將紅外接受模塊裝在能力風(fēng)暴機(jī)器人的前面,當(dāng)檢外發(fā)射器裝在能力風(fēng)暴的左前和右前,紅測到有障礙時,控制器會控制平移速度和旋轉(zhuǎn)速度的大小,從而避開障礙。跟隨的原理和避障一樣,當(dāng)其檢測到有移動的物體時,會跟隨上去,沒有檢測到時,會一直停在原地。主板設(shè)計(jì)框圖如下圖所示:穩(wěn)壓與低壓復(fù)位系統(tǒng)4只碰撞傳感器電機(jī)驅(qū)動2只紅外傳感器MC68HC112只光敏傳感LCD器2只光電編碼喇叭驅(qū)動器1只麥克風(fēng)ASBUS總線串口通訊圖3.1能力風(fēng)暴機(jī)器人主板結(jié)構(gòu)3.168HC11A1最小系統(tǒng)摩托羅拉MC68HC11單片機(jī)的最小系統(tǒng),即單片機(jī)要正常工作必須具備的最少外圍器件組成的電路,包括電源供給、復(fù)位電路、系統(tǒng)時鐘電路及其他部分。1.電源68HC11A8使用5V單電源供電,VDD是電源正,VSS是地。單片機(jī)內(nèi)部共有兩組電源,VDD和VSS是給單片機(jī)內(nèi)部數(shù)字電路供電,AVDD和AVSS是給內(nèi)部A/D轉(zhuǎn)換電路供電,兩部分電源可以單獨(dú)去耦,這樣可以減少模擬電路對數(shù)字電路的影響,保證了MCU核心11的穩(wěn)定性同時提高了A/D轉(zhuǎn)換的抗噪聲能力。2.復(fù)位電路68HC11A8的復(fù)位引腳是RESET,該引腳低電平有效,當(dāng)該引腳保持低電平8個時鐘周期則系統(tǒng)復(fù)位,該復(fù)位方式稱為外部復(fù)位。該單片機(jī)還有內(nèi)部復(fù)位,內(nèi)部復(fù)位時該引腳自動變?yōu)榈碗娖讲⒈3?個時鐘周期后變?yōu)楦唠娖?。另外,由于該單片機(jī)內(nèi)部有EEPROM,為了防止VDD電壓過低造成EEPROM中數(shù)據(jù)丟失,在穩(wěn)定的系統(tǒng)中應(yīng)使用低壓保護(hù)電路,既電源電壓過低時在RESET引腳上產(chǎn)生低電平使系統(tǒng)復(fù)位,從而防止EEPROM中數(shù)據(jù)的意外丟失。在本文的電路中由于仿真時電源穩(wěn)定,從而省略了低壓保護(hù)電路,直接讓RESET保持高電平,從而一直讓系統(tǒng)持續(xù)運(yùn)行而不復(fù)位。3.外部時鐘電路外部時鐘輸入引腳是XTAL和EXTAL。這兩個引腳直接接外部晶體振蕩器為系統(tǒng)提供時鐘,這里選用8M晶振,從而為系統(tǒng)提供時鐘。需要注意的是內(nèi)部時鐘的頻率是該晶振頻率的四分之一,既2M。系統(tǒng)時鐘可以在E管腳上輸出。4.中斷請求引腳的處理該單片機(jī)有兩個外部中斷引腳,分別為IRQ和XIRQ引腳。IRQ是異步中斷請求的輸入引腳,通過配置OPTION寄存器中的相應(yīng)位可以配置成下降沿觸發(fā)還是電平觸發(fā),默認(rèn)是低電平觸發(fā)。該中斷引腳是可軟件屏蔽的。XIRQ是不可屏蔽中斷引腳。該引腳的機(jī)制是在CPU復(fù)位時系統(tǒng)自動將CCR寄存器中的X位置位,此時所有中斷被屏蔽,而此后不能通過軟件設(shè)置來屏蔽這個中斷,既這CCR中這個X位不能置位。該中斷是電平觸發(fā)中斷,不能配置成下降沿觸發(fā)。5.模式選擇根據(jù)前面敘述的該單片機(jī)工作模式,對照下表中的MODA和MODB的電平配置,我們選擇單片工作模式,因此MODA接VDD,MODB接地。Vrh和Vrl引腳的處理,這兩個引腳分別為單片機(jī)內(nèi)部A/D轉(zhuǎn)換的參考電壓和模擬地,這里Vrh接VDD,Vrl接地。本系統(tǒng)根據(jù)能力風(fēng)暴機(jī)器人的系統(tǒng)結(jié)構(gòu),首先選用同系列的摩托羅拉68HC11單片機(jī),在Proteus仿真平臺里搭建仿真環(huán)境,根據(jù)各部分需要的功能設(shè)計(jì)了以下模塊:電機(jī)驅(qū)動模塊,避障模塊,地面檢測模塊,用戶交互模塊。其中,各部分電路和程序均需重新從底層設(shè)計(jì)。因此本系統(tǒng)設(shè)計(jì)的重點(diǎn)和難點(diǎn)放在了基于68HC11單片機(jī)的底層軟件驅(qū)動的開發(fā),和最后各模塊配合工作的調(diào)試上。最終,在Proteus仿真模型里實(shí)現(xiàn)電機(jī)的正反轉(zhuǎn),完成機(jī)器人行走、轉(zhuǎn)彎、后退功能,然后加入避障模塊的檢測,完成避障功能;最后加入地面灰度傳感器,和前面的模塊綜合聯(lián)調(diào),經(jīng)過不斷的參數(shù)對比來完成綜合的避障和循跡功能。在仿真結(jié)束后,在能力風(fēng)暴機(jī)器人上再根據(jù)仿真的算法思想來設(shè)計(jì)具體的操作實(shí)物機(jī)器人的程序,完成實(shí)際機(jī)器人的避障和循跡等所有功能。123.2復(fù)位及啟動方式計(jì)算機(jī)有多種復(fù)位方式:上電自動復(fù)位;外部RESET復(fù)位;看門狗復(fù)位(軟件工作不正常時);時鐘監(jiān)視復(fù)位。能力風(fēng)暴采用前兩種復(fù)位方式,并且在工作是有4種工作模式可選。初始工作模式的確定是靠在MODA和MODB兩條引腳上加高低不同電平而實(shí)現(xiàn)的。1.單片工作模式只能是先有了應(yīng)用程序并寫入片子中,才能使之工作在單片方式下。在我們學(xué)習(xí)和開發(fā)單片機(jī)時,顯然不適合這種工作方式。2.擴(kuò)展模式單片機(jī)提供給外界數(shù)據(jù)總線和地址總線,允許用戶在64K空間上擴(kuò)展RAM和EPROM,,擴(kuò)展I/O。這給用戶開發(fā)程序帶來了極大的方便。這種方式的缺點(diǎn)是擴(kuò)展地址和數(shù)據(jù)總線占用了兩個8位的I/O端口,而另外擴(kuò)展出兩個8位并行口并不困難。當(dāng)開發(fā)工作基本完成后,回到單片方式去,將兩個并口還給系統(tǒng),這種工作方式是開發(fā)階段最適用的。3.自引導(dǎo)模式在自引導(dǎo)模式下,單片機(jī)加電復(fù)位后,可以從串行口向芯片內(nèi)部的256個字節(jié)RAM中裝入一段程序,并開始執(zhí)行這段程序??梢韵胂?,裝入的程序不同,單片機(jī)能實(shí)現(xiàn)很多不同的功能。例如對系統(tǒng)作不同的初始化,然后跳轉(zhuǎn)到不同的ROM中程序起始地址。只能等到對68HC11應(yīng)用嫻熟時才能這種工作方式也是要先有應(yīng)用程序在ROM中才行,用得巧妙。4.測試模式該模式用于工廠中對產(chǎn)品進(jìn)行測試,對這種模式暫不考慮。確切地說,工作模式的確定是靠68HC11復(fù)位后鎖存MODA和MODB端的電平狀態(tài)完成的,工作模式的切換也可用寫寄存器指令在程序中進(jìn)行。各模式和對用MODEA和MODEB對應(yīng)電平:單片模式(01)擴(kuò)展模式(11)測試模式(10)自引導(dǎo)模式(00)3.3檢測模塊硬件仿真3.3.1碰撞模塊仿真智能機(jī)器人通常用行程開關(guān)裝在機(jī)器人的周圍來感知碰撞,在機(jī)器人碰到障礙物時相應(yīng)方向的行程開關(guān)接觸,從而產(chǎn)生電平變化信號,由單片機(jī)掃描檢測到以后判定該方13向發(fā)生碰撞,然后控制執(zhí)行模塊使機(jī)器人轉(zhuǎn)向從而避開障礙物。這種方法的優(yōu)點(diǎn)是電路簡單,驅(qū)動容易,軟件調(diào)試和編程也相對簡單容易。但是該方法由于檢測方法的限制,只能在機(jī)器人發(fā)生碰撞以后才能檢測,不能預(yù)先檢測到障礙物然后繞行,因此存在很大弊端。碰撞傳感器仿真電路圖如圖3.2所示:R94.7kR24.7kR84.7kR34.7kR74.7kR44.7kR64.7kR5C14C154.7k15u15u圖3.2碰撞仿真電路圖該電路中四個行程開關(guān)通過上拉電阻接單片機(jī)PE口,單片機(jī)PE口是專門的輸入口,通過軟件不斷查詢掃描PE口的高低電平就可以判斷出行程開關(guān)是否按下,按下時為低電平,則判斷出該方向碰到障礙了,不按下時為高電平,上拉電阻的作用是在沒有碰撞時是單片機(jī)輸入電平為高。3.3.2紅外避障模塊仿真紅外傳感器是機(jī)器人的感知行為的重要組成部分,紅外線一般是指波長在940nm以內(nèi)的光波,它的的特點(diǎn)是人的肉眼看不見,但是容易被障礙物反射回來。通過一個紅外接收管來檢測反射回來的紅外線強(qiáng)度,就可以判斷出機(jī)器人前面有沒有障礙物。但是做為傳感器,紅外探頭為了減少環(huán)境中可見光和其他波長光線干擾,通常要加載波調(diào)制成38Khz的調(diào)制波,然后再檢測。紅外避障一般使用940nm波長以內(nèi)的紅外發(fā)射探頭,通過單片機(jī)的IO口將信號波和調(diào)制波疊加后經(jīng)過三極管放大,通過紅外發(fā)射管發(fā)射出去。紅外接收管有專門的芯片,可以將接收到的紅外強(qiáng)弱轉(zhuǎn)換成電壓信號,送入單片機(jī)檢測。紅外壁障相對克服了行程開關(guān)壁障的弱點(diǎn),不需要等機(jī)器人碰到障礙物了以后才判斷出障礙物的方向,可以在一定距離以內(nèi)不經(jīng)碰撞直接檢測出障礙物。但是其實(shí)現(xiàn)起來相對較復(fù)雜,使用元器件多,軟件編程要配合硬件來調(diào)整,比較復(fù)雜。紅外傳感器的仿真電路圖如圖3.3所示。14R12R114.7k4.7kU2U4U6R12727274.7k363636R10OPTOCOUPLER-NANDOPTOCOUPLER-NANDOPTOCOUPLER-NAND10kR17R18C830p1k1kLDR20.1X1LDR8MC9U130p30XTALPB[0..7]29EXTAL圖3.3紅外傳感器仿真圖27EPC[0..7]2526在仿真機(jī)器人紅外傳感器的部分時,遇到了仿真平臺Proteus里不能模擬紅外線被MODA/LIRSTRA2428MODBSTRB障礙物反射而被紅外接收探頭接收到的情況。因此在Proteus仿真里使用了模擬紅外傳418IRQPA0/IC3407XIRQPA1/IC2感器的折衷辦法,即:使用光耦來模擬紅外傳感器,使用按鈕來改變光耦接收信號的值396RESETPA2/IC15PA3/OC5/OC1來模擬紅外傳感器檢測到障礙物的電平信號變化,從而模擬出了紅外傳感器的工作模4PA4/OC4/OC1173PE0/AN0PA5/OC3/OC1182式。之所以用光耦而不直接用按鈕來模擬障礙物的信號,是因?yàn)楣怦畹墓ぷ髟硪彩怯蒔E1/AN1PA6/OC2/OC1191PE2/AN2PA7/PAI/OC120光電器件傳遞電平變化的信號,他們的工作原理基本一致,不同點(diǎn)是紅外避障傳感器是PE3/AN342PD0/RxD43PD1/TxD向外界發(fā)射紅外線,而光耦的發(fā)射和接收是封裝在塑料殼內(nèi)部的。44PD2/MISO45PD3/MOSI在真實(shí)紅外傳感器的工作機(jī)理中,為了減少環(huán)境光線對傳感器的影響,防止傳感器2246VRHPD4/SCK2147VRLPD5/SS誤檢測障礙物信號,需要對紅外發(fā)射管的信號進(jìn)行調(diào)制。這里,能力風(fēng)暴機(jī)器人上采用MC68HC11A1了最常用的38Khz載波信號調(diào)制的方法,讓紅外發(fā)射管發(fā)射的紅外線和38Khz載波疊加,從而產(chǎn)生38Khz紅外線檢測信號。在紅外接收探頭部分,直接使用工作在38Khz的紅外接收管,即可輸出相應(yīng)高低電平。既,有38Khz紅外線反射回來被接收管接收到,則輸出低電平,說明相應(yīng)方向上有障礙物;若沒有38Khz紅外線反射回來,輸出高電平,則說明相應(yīng)方向上沒有障礙物;若接收到的紅外信號不是38Khz,則說明這個信號是環(huán)境中光線或者其他信號的干擾,同樣輸出高電平,說明相應(yīng)方向上沒有障礙物。紅外避障電路是使用光耦模擬紅外傳感器的電路,電路的工作方式如下:光耦的發(fā)射端通過4.7K上拉電阻接5V,光耦輸出端通過2K電阻接地,然后將輸出端接單片機(jī)PA.0、PA.1、PA.2。按鍵用來模擬機(jī)器人相應(yīng)方向上可檢測范圍內(nèi)有障礙物的情況,當(dāng)按鍵按下時光耦發(fā)射端發(fā)射出去的紅外光被接收端接收,輸出端由光耦的自帶與非門輸出高電平,說明檢測到障礙物,從而完成避障。不難看出,紅外避障的控制流程和行程開關(guān)避障的控制流程相似,他們的軟件編寫方法也相似,但是不同點(diǎn)是,行程開關(guān)是接觸式避障,效果差;紅外避障是非接觸式避障,效果較好。153.4機(jī)器人動作驅(qū)動模塊機(jī)器人使用的各種傳感器是機(jī)器人的感覺器官,下面研究機(jī)器人的執(zhí)行器官。能力風(fēng)暴機(jī)器人采用圓形平板機(jī)身的設(shè)計(jì),他的支撐機(jī)構(gòu)是由兩個處于直徑位置的主動輪和前后兩個萬向輪組成的。主動輪不僅承擔(dān)了機(jī)器人的動力,充當(dāng)“發(fā)動機(jī)”的角色,而且也完成轉(zhuǎn)向動作。機(jī)器人如何轉(zhuǎn)向?qū)⒃谙旅嬗懻?,首先介紹能力風(fēng)暴機(jī)器人的底盤結(jié)構(gòu),如圖3.4所示:圖3.4能力風(fēng)暴機(jī)器人的底盤結(jié)構(gòu)圖機(jī)器人的行動是這樣控制的:直行:左電機(jī)正轉(zhuǎn),右電機(jī)正轉(zhuǎn),且轉(zhuǎn)速一致;R1114.7kVSS2VDDU2U4U63R12727VEE2744.7kRSR13R1953636RW3610k6LCD1E1kLM016LR107OPTOCOUPLER-NANDOPTOCOUPLER-NANDOPTOCOUPLER-NANDD010k8D19D2R17R18LDR110C80.1D3LDR1130p1k1kD412D5LDR2130.1X1D6LDR148MD7C9U130p30XTALPB[0..7]29EXTAL27EPC[0..7]2526RSMODA/LIRSTRAC52428RWMODBSTRBEC10U3418C7C615uIRQPA0/IC31.0u4071.0u1.0uXIRQPA1/IC254396RESETPA2/IC15PA3/OC5/OC1C2-C2+4R15PA4/OC4/OC1173PE0/AN0PA5/OC3/OC16VS-1k182PE1/AN1PA6/OC2/OC12VS+191PE2/AN2PA7/PAI/OC1R920PE3/AN389R2INR2OUT42PD0/RxD710R164.7kT2OUTT2IN43PD1/TxD13121kR1INR1OUT44R2PD2/MISO1411T1OUTT1IN45R144.7kPD3/MOSIC42246MAX2321.5kVRHPD4/SCKC1-C1+2147R8VRLPD5/SSMC68HC11A11.0u4.7k31C13R34.7kC1215uR7U5D7D8D9D109415uDIODEDIODEDIODEDIODE4.7k5R4VCCVSIN1724.7kIN2OUT110IN3123R6IN4OUT26ENA4.7k1113ENBOUT3+88.8R5114SENSAOUT4C14C154.7k15SENSBGNDD3D4D5D615u15uL298DIODEDIODEDIODEDIODE8圖3.5總電路仿真圖行進(jìn)中左轉(zhuǎn):左電機(jī)正轉(zhuǎn),右電機(jī)正轉(zhuǎn),左電機(jī)轉(zhuǎn)速小于右電機(jī);16行進(jìn)中右轉(zhuǎn):左電機(jī)正轉(zhuǎn),右電機(jī)正轉(zhuǎn),左電機(jī)轉(zhuǎn)速大于右電機(jī);后退:左電機(jī)和右電機(jī)均反轉(zhuǎn);原地180度轉(zhuǎn)彎:左電機(jī)正轉(zhuǎn),右電機(jī)反轉(zhuǎn),或者左電機(jī)反轉(zhuǎn),右電機(jī)正轉(zhuǎn),且兩個電機(jī)轉(zhuǎn)速一致。以一個電機(jī)為圓心;以機(jī)器人直徑為半徑做圓弧轉(zhuǎn)彎:左電機(jī)停轉(zhuǎn),右電機(jī)正轉(zhuǎn)或反轉(zhuǎn),或者右電機(jī)停轉(zhuǎn),左電機(jī)正轉(zhuǎn)或反轉(zhuǎn)。Proteus仿真的總電路圖如圖3.5所示,該電路綜合了單片機(jī)最小系統(tǒng)、避障行程開關(guān)電路、紅外傳感器電路、電機(jī)驅(qū)動電路、按鍵、蜂鳴器、LED指示燈、串口模塊。3.568HC11單片機(jī)編譯環(huán)境68HC11單片機(jī)可以使用的IDE環(huán)境不多,這里選擇使用ICC11。ICC11集成開發(fā)環(huán)境是ICC公司面向摩托羅拉68HC系列單片機(jī)推出的一款集成開發(fā)環(huán)境,可以對68HC05到68HC11全系列單片機(jī)進(jìn)行代碼的編寫、編譯、連接、生成燒寫用的s19文件。68HC11單片機(jī)需要人為分配其ROM地址以供代碼存貯、堆棧和中斷向量表使用,這里修改include文件夾下的vector.c文件來完成。我們選擇C語言開發(fā),使用C語言的好處是可移植性強(qiáng),程序易讀易懂。Vector.c文件中,使用語句“#pragmaabs_address:0xffd6”定義中斷向量表的地址;然后將函數(shù)“void(*interrupt_vectors[])(void)”中的相應(yīng)默認(rèn)中斷向量入口地址“DUMMY_ENTRY”改為用戶需要使用的中斷服務(wù)程序名稱即可。原定義如下:#pragmaabs_address:0xffd6void(*interrupt_vectors[])(void){DUMMY_ENTRY,/*SCI*/DUMMY_ENTRY,/*SPI*/DUMMY_ENTRY,/*PAIE*/DUMMY_ENTRY,/*PAO*/DUMMY_ENTRY,/*TOF*/DUMMY_ENTRY,/*TOC5*/DUMMY_ENTRY,/*TOC4*/DUMMY_ENTRY,/*TOC3*/DUMMY_ENTRY,/*TOC2*/DUMMY_ENTRY,/*TOC1*/DUMMY_ENTRY,/*TIC3*/DUMMY_ENTRY,/*TIC2*/17DUMMY_ENTRY,/*TIC1*/DUMMY_ENTRY,/*RTI*/DUMMY_ENTRY,/*IRQ*/DUMMY_ENTRY,/*XIRQ*/DUMMY_ENTRY,/*SWI*/DUMMY_ENTRY,/*ILLOP*/DUMMY_ENTRY,/*COP*/DUMMY_ENTRY,/*CLM*/DUMMY_ENTRY,/*TIC1*/DUMMY_ENTRY,/*RTI*/DUMMY_ENTRY,/*IRQ*/DUMMY_ENTRY,/*XIRQ*/DUMMY_ENTRY,/*SWI*/_start/*RESET*/};#pragmaend_abs_address自定義完中斷向量表以后,需要在主程序的末尾加上語句include<vectors.c>來使用自定義的中斷向量表。在編譯環(huán)境中新建工程,添加文件后,必須設(shè)置軟件中的一些參數(shù)才能夠進(jìn)行在仿真,這些仿真參數(shù)保證了軟件能夠正常的仿真出來所想要的結(jié)果,在軟件中進(jìn)行如下設(shè)置就可以使用C語言進(jìn)行開發(fā)了:圖3.6編譯環(huán)境設(shè)置183.6小結(jié)本章設(shè)計(jì)出了68HC11單片機(jī)的最小系統(tǒng);設(shè)計(jì)了碰撞避障模塊,機(jī)器人通過周圍行程開關(guān)來感知碰撞,在機(jī)器人碰到障礙物時相應(yīng)方向的行程開關(guān)接觸,從而產(chǎn)生電平變化信號,由單片機(jī)掃描檢測到以后判定該方向發(fā)生碰撞,然后控制執(zhí)行模塊使機(jī)器人轉(zhuǎn)向從而避開障礙物;設(shè)計(jì)了紅外避障模塊,紅外避障一般使用940nm波長以內(nèi)的紅外發(fā)射探頭,通過單片機(jī)的IO口將信號波和調(diào)制波疊加后經(jīng)過三極管放大,通過紅外發(fā)射管發(fā)射出去。紅外接收管有專門的芯片,可以將接收到的紅外強(qiáng)弱轉(zhuǎn)換成電壓信號,送入單片機(jī)檢測,然后經(jīng)過處理完成相應(yīng)的動作。19第四章系統(tǒng)軟件設(shè)計(jì)與調(diào)試4.1系統(tǒng)流程圖設(shè)計(jì)4.1.1避障流程圖碰撞傳感器相當(dāng)于能力風(fēng)暴機(jī)器人的皮膚,通過他們可以使機(jī)器人在碰到障礙物后能做出反應(yīng),使機(jī)器人能夠正常的行走.碰撞檢測的軟件設(shè)計(jì),就是在主函數(shù)里通過一個死循環(huán)讓其一直讀取PE口的電平,然后進(jìn)入判斷函數(shù)判斷四個行程開關(guān)的狀態(tài)。單片機(jī)檢測PE口的規(guī)則是:若檢測到二進(jìn)制數(shù)為0010,則說明左前方發(fā)生碰撞;若檢測到二進(jìn)制數(shù)為0001,則說明右前方發(fā)生碰撞;若檢測到二進(jìn)制數(shù)為1000,則說明左后方發(fā)生碰撞;若檢測到二進(jìn)制數(shù)為0100,則說明右后方發(fā)生碰撞。如果其他四個派生方向發(fā)生碰撞,則可經(jīng)過相應(yīng)的計(jì)算得到應(yīng)檢測到的值,從而判斷是哪個方向發(fā)生了碰撞。碰撞檢測避障是接觸后才能開始實(shí)現(xiàn)避障,如果沒有接觸則不能起作用,這是碰撞檢測避障的不利的方面。運(yùn)行仿真程序以后,系統(tǒng)既開始運(yùn)行,不斷掃描傳感器的信號。例:當(dāng)按下碰撞傳感器的“右前”時,PE3口電平被傳感器拉低,單片機(jī)檢測到這個電平變化既認(rèn)為機(jī)器人右前方碰撞傳感器動作,然后控制電機(jī),首先左右電機(jī)同時減速,機(jī)器人剎車,然后右輪開始加速,左輪不加速,那么右輪轉(zhuǎn)速高于左輪,機(jī)器人開始左轉(zhuǎn)。左轉(zhuǎn)時兩個電機(jī)的轉(zhuǎn)速差很容易在仿真截圖中看出:從圖中讀數(shù),左輪電機(jī)轉(zhuǎn)速為20,右輪電機(jī)轉(zhuǎn)速為36,顯示此時機(jī)器人正在左轉(zhuǎn)。這就完成了一次避障過程。其他方向的避障過程類似,左前方有障礙時,機(jī)器人調(diào)整右轉(zhuǎn);正前方有障礙時,機(jī)器人掉頭,然后行走;后邊被撞到后,機(jī)器人加速,然后恢復(fù)正常行駛。紅外傳感器是能力風(fēng)暴機(jī)器人的眼睛,他能夠和人眼一樣,在看見前方的障礙物后,通知“大腦”然后避開。紅外傳感器共包含兩種器件:紅外發(fā)射管和紅外接收管,通過插針位置圖就可以發(fā)現(xiàn)紅外接收管位于能力風(fēng)暴機(jī)器人的正前方,兩只紅外發(fā)射管位于紅外接收管的兩側(cè),他們共同組成了能力風(fēng)暴機(jī)器人的“眼睛”。紅外傳感器是機(jī)器人的重要組成部分,機(jī)器人主要靠他來避開障礙物,從而保證自己能夠正常的行走。紅外避障模塊的仿真和避障開關(guān)的作用非常相似,不同之處僅在于紅外和碰撞行程開關(guān)的實(shí)現(xiàn)機(jī)理不同,程序的流程是相同的。既:當(dāng)按下紅外傳感器的“右前”觸發(fā)按鈕時,模擬的是機(jī)器人左前方向的紅外傳感器檢測到障礙物反射回來的38Khz紅外線,這時通過光耦輸出端與非門模擬紅外接收管輸出的低電平,PA2口電平被傳感器拉低,單片機(jī)檢測到這個電平變化既認(rèn)為機(jī)器人右前方遇到障礙,然后控制電機(jī),首先左右電機(jī)同時減速,機(jī)器人剎車,然后右輪開始加速,左輪不加速,那么右輪轉(zhuǎn)速高于左輪,機(jī)器人開始左轉(zhuǎn)。這就完成了一次紅外避障過程。相比碰撞檢測的避障過程,紅外避障是非接觸20的。避障系統(tǒng)控制流程圖如下:子程序開始子程序開始紅外傳感器碰撞傳感器檢測值數(shù)值YY障礙物在前面發(fā)音并轉(zhuǎn)身碰撞物在左前方,發(fā)音并右轉(zhuǎn)NNYY障礙物在左前方發(fā)音并右轉(zhuǎn)碰撞物在右前方,發(fā)音并左轉(zhuǎn)NNYY障礙物在右前面發(fā)音并左轉(zhuǎn)碰撞物在左后方?發(fā)音前進(jìn)并右轉(zhuǎn)NN前進(jìn)前進(jìn)并左轉(zhuǎn),發(fā)音延時一個采樣周期延時一個采樣周期圖4.1避障流程圖4.1.2循跡與智能跟隨流程圖機(jī)器人智能跟隨在機(jī)器人應(yīng)用中占有很重要的地位,可以通過這個功能讓機(jī)器人跟人行走,為了提高機(jī)器人的智能性,就要求機(jī)器人全自主的對移動的主人進(jìn)行準(zhǔn)確的跟隨,機(jī)器人的智能跟隨是通過紅外傳感器實(shí)現(xiàn)的,程序開始后,在機(jī)器人前面放一移動的物體或者人站在機(jī)器人前面。機(jī)器人就會跟隨上去,隨著障礙物移動,如果前方有移動的物體,機(jī)器人就向前運(yùn)動,如果左前方有移動的物體,機(jī)器人就會左轉(zhuǎn)然后再前進(jìn),完成機(jī)器人的智能跟隨動作。21地面灰度檢測傳感器是能力風(fēng)暴機(jī)器人的第三只眼睛,如果說前兩只眼睛起到探知外界環(huán)境以躲避外界障礙的作用,那么這第三只眼睛就是利用外地面環(huán)境提供的不同信息,根據(jù)傳感器采集的數(shù)值來執(zhí)行相應(yīng)的動作,如沿地面上黑色線條前進(jìn)。地面檢測傳感器可以探測到地面各個位置的不同顏色和不同亮度,它由一個發(fā)光管和一個光敏電阻組成。我們以黑白兩種顏色的地面為例,能力風(fēng)暴在進(jìn)行地面檢測時,首先由發(fā)光管發(fā)出光線,然后光敏電阻就可以檢測地面反射回來的光線的強(qiáng)度,我們知道黑、白兩種顏色反射光的能力不一樣,白色地面反射的光線多,而黑色地面反射的光線少,這樣當(dāng)光敏電阻檢測到反射光的強(qiáng)弱時就將信息發(fā)回給“大腦”,大腦就可以根據(jù)這個信息判斷出檢測到的地面是黑色的還是白色的,機(jī)器人就可以沿著地面上黑色的線條前進(jìn)了。這就是智能機(jī)器人的循跡功能。其流程圖如圖4.2所示:開始開始紅外檢測數(shù)值紅外檢測數(shù)值YY前方是否有障礙右轉(zhuǎn)人在前面前進(jìn)NNY人在左前面左轉(zhuǎn)并前進(jìn)前進(jìn)NY人在右前面右轉(zhuǎn)并前進(jìn)地面灰度檢測值N延時一個采樣周期N是否沿黑線前進(jìn),發(fā)音并調(diào)整Y結(jié)束顯示延時一個采樣周期圖4.2循跡與智能跟隨流程圖結(jié)束224.2驅(qū)動程序與編程基于C的單片機(jī)編程一般有兩個構(gòu)造:一、使用嵌入式實(shí)時操作系統(tǒng);二、使用前后臺查詢的方式。第一種方法是實(shí)時性最好的一種方法。目前市面上有許多實(shí)時操作系統(tǒng)可以供選擇,例如UcOSII,VxWorks等等。UcOSII有很高的可裁剪性,對于68HC11單片機(jī)有限的資源和有限的ROM來說比較合適。但是其移植非常復(fù)雜,盡管實(shí)時性很高,但是不適合本機(jī)器人的開發(fā),會大大增加該機(jī)器人控制系統(tǒng)的開發(fā)難度。第二種方法是比較常見的一種偽實(shí)時的方法,既前后臺查詢的方法。單片機(jī)是單流水線工作的,而單片機(jī)要控制的外設(shè)卻有多個:一組避障開關(guān),一組紅外傳感器,一組光敏傳感器,一組光電編碼器,兩個電機(jī),蜂鳴器,LED等等。因此,當(dāng)一個外設(shè)需要單片機(jī)響應(yīng)的時候,單片機(jī)并不能保證實(shí)時響應(yīng)。一個折衷的辦法是讓單片機(jī)以一定的頻率查詢各個外設(shè)的端口,并將查詢結(jié)果不斷的更新到相應(yīng)的全局變量中,然后在主函數(shù)里不斷掃面這些全局變量的值,根據(jù)變量的值的變化控制外設(shè)的動作,這樣可以做到相對實(shí)時性比較好,而且編程較為簡單。這種方法稱為前后臺方式。根據(jù)電機(jī)的硬件電路連接,PD2、3控制左電機(jī)的方向,PD4、5控制右電機(jī)的方向,由前面分析得知,PD2、3、4、5分別輸出0101時機(jī)器人直行。因此直行的程序?yàn)?voidMotorGoSt(void){DDRD=DDRD|(bit(2)|bit(3)|bit(4)|bit(5));//將PD2345設(shè)置為輸出PORTD=PORTD&(~(bit(2)|bit(3)|bit(4)|bit(5)));//先將PD2、3、4、5都置零Delay(10);//延時PORTD=PORTD&(~(bit(2)|bit(4)));//將PD2、PD4設(shè)置為低電平Delay(10);PORTD=PORTD|(bit(3)|bit(5));//將PD3、PD5設(shè)置為高電平}做仿真的目的就是要在實(shí)物編程之前了解機(jī)器人底層的運(yùn)行機(jī)理和實(shí)現(xiàn)的控制方法。然而,Proteus仿真的局限性決定了它只能模擬各部分電路的信號,而不能顯示機(jī)器人實(shí)際的運(yùn)行狀態(tài),例如走了多遠(yuǎn),紅外避障多遠(yuǎn)的距離才有效,最致命的是,物理上紅外傳感器檢測的是障礙物反射38Khz紅外線,而仿真中根本沒有辦法模擬障礙物反射紅外線的過程,因此只能在仿真中用光耦代替紅外傳感器。那么,在程序移植時就要考慮能力風(fēng)暴自身的軟件條件和硬件條件。能力風(fēng)暴機(jī)器人使用的是自由的JC交互語言開發(fā)環(huán)境,而不是基于原68HC11單片機(jī)的編譯環(huán)境,JC交互開發(fā)環(huán)境的優(yōu)點(diǎn)是擁有豐富的庫函數(shù),許多底層模塊的驅(qū)動不需要再重新編寫。但是,它的缺點(diǎn)是不自由,由于能力風(fēng)暴的硬件電路圖并沒有公開,因此我們也不能自行23的修改其底層的驅(qū)動程序,只能利用現(xiàn)有的庫函數(shù)來實(shí)現(xiàn)原來仿真的控制方法。在能力風(fēng)暴實(shí)物中,對原有仿真程序的改動為:將中斷程序去掉,改由主程序中while(1)永遠(yuǎn)循環(huán)來查詢傳感器狀態(tài)。假設(shè)定義碰撞用全局變量為bmpr,則碰撞傳感器檢測行為語句為bmpr=bumper();即可采樣得到碰撞傳感器的狀態(tài)。用ir=ir_detect()就可以得到紅外傳感器的值。因此,實(shí)物中,能力風(fēng)暴機(jī)器人的運(yùn)行流程和仿真的軟件控制流程一樣,只是檢測方式改變了。該系統(tǒng)工作的流程如圖4.3所示。開始關(guān)閉全局中斷初始化設(shè)置10ms定時中斷打開全局中斷查詢碰撞傳感器狀態(tài)查詢紅外傳感器狀態(tài)根據(jù)傳感器數(shù)據(jù),控制電機(jī)與LED動作圖4.368HC11系統(tǒng)工作的流程圖能力風(fēng)暴智能機(jī)器人有很多庫函數(shù),這些庫函數(shù)讓能力風(fēng)暴調(diào)試編程更容易些,利用庫函數(shù)可以編程各種程序,使機(jī)器人更加智能化。244.3按鍵檢測軟件設(shè)計(jì)在仿真中我們使用了一個按鍵用來控制仿真程序的運(yùn)行,一個按鍵通過上拉電阻接到PA7上。一般的按鍵輸入軟件接口程序通常非常簡單,在程序中一旦檢測到按鍵輸入口為低電平時,便調(diào)用軟件延時程序延時10ms。然后再次檢測按鍵輸入口,如果還是低電平則表示按鍵按下,轉(zhuǎn)入執(zhí)行按鍵處理程序。如果第二次檢測按鍵輸入口為高電平,則放棄本次按鍵的檢測,重新開始一次按鍵檢測過程。這種方式實(shí)現(xiàn)的按鍵輸入接口,可做為基礎(chǔ)學(xué)習(xí)和一些簡單的系統(tǒng)中可以采用,但在多數(shù)的設(shè)計(jì)產(chǎn)品設(shè)計(jì)中,這種按鍵輸入軟件的實(shí)現(xiàn)方法有很大的缺陷和不足。傳統(tǒng)簡單的按鍵檢測處理方法,不僅由于調(diào)用了軟件延時而使得MCU的效率降低,而且也不容易同系統(tǒng)中其他功能模塊協(xié)調(diào)工作,系統(tǒng)的實(shí)時性也差。在仿真中,實(shí)驗(yàn)用延時的方法處理的按鍵檢測程序?qū)斐蓡纹瑱C(jī)判斷障礙物的實(shí)時性變差,效果不好。將單個按鍵看出一個狀態(tài)機(jī),首先需要對一次按鍵操作和確認(rèn)的過程進(jìn)行分析,然后根據(jù)實(shí)際情況和系統(tǒng)需要確認(rèn)按鍵在整個過程的狀態(tài)和每個狀態(tài)的輸入信號和輸出信號,以及狀態(tài)之間的轉(zhuǎn)換關(guān)系,最后還要考慮時間序列的間隔。按鍵的操作是隨機(jī)的,因此系統(tǒng)軟件對按鍵需要一直循環(huán)查詢。由于按鍵的檢測過程需要進(jìn)行消抖處理,因此取狀態(tài)機(jī)的時間序列的周期約為10ms。這樣不僅可以跳過按鍵抖動的影響,同時也遠(yuǎn)小于按鍵0.3s-0.5s的穩(wěn)定閉合期,不會將按鍵操作過程丟失。0為按鍵的初始狀態(tài),這個狀態(tài)我們稱為狀態(tài)1。當(dāng)有按鍵按下時,系統(tǒng)查詢到按鍵按下的電平變?yōu)榈碗娖?,則跳到狀態(tài)2;由于每隔10ms判斷一次按鍵的狀態(tài),因此只有當(dāng)過了10ms后進(jìn)入中斷判斷,如果此時是狀態(tài)2,并且按鍵仍處于狀態(tài)2,則跳到狀態(tài)3,在狀態(tài)2中輸出按鍵的判斷結(jié)果。如果按鍵一直按下沒有松開,那么在下一個按鍵檢測周期中狀態(tài)3沒有跳出來,并不會繼續(xù)輸出判斷結(jié)果,所以就沒有了按鍵連擊的錯誤。當(dāng)按鍵松開后,下一個檢測周期來臨時,由狀態(tài)3轉(zhuǎn)換到狀態(tài)1,重新準(zhǔn)備好了下一次按鍵的檢測。設(shè)計(jì)出了68HC11單片機(jī)的最小系統(tǒng),設(shè)計(jì)了碰撞避障模塊,機(jī)器人通過周圍行程開關(guān)來感知碰撞,在機(jī)器人碰到障礙物時相應(yīng)方向的行程開關(guān)接觸,從而產(chǎn)生電平變化信號,由單片機(jī)掃描檢測到以后判定該方向發(fā)生碰撞,然后控制執(zhí)行模塊使機(jī)器人轉(zhuǎn)向從而避開障礙物;設(shè)計(jì)了紅外避障模塊,紅外避障一般使用940nm波長以內(nèi)的紅外發(fā)射探頭,通過單片機(jī)的IO口將信號波和調(diào)制波疊加后經(jīng)過三極管放大,通過紅外發(fā)射管發(fā)射出去。紅外接收管有專門的芯片,可以將接收到的紅外強(qiáng)弱轉(zhuǎn)換成電壓信號,送入單片機(jī)檢測;設(shè)計(jì)了機(jī)器人動作驅(qū)動模塊,即電機(jī)驅(qū)動電路設(shè)計(jì);完成了基于狀態(tài)機(jī)的按鍵檢測軟件設(shè)計(jì)。254.4程序下載與調(diào)試寫好的應(yīng)用程序必須下載到能力風(fēng)暴個人機(jī)器人上運(yùn)行。我們可以選擇菜單上“下載”來下載當(dāng)前窗口里的應(yīng)用程序或直接選擇工具欄里“下載當(dāng)前程序”按鈕完成同樣的操作,JC會在交互式窗口里顯示你的應(yīng)用程序的編譯下載過程。如果編譯下載都正確,JC會在最后一行顯示“完成”表明下載成功。下載過程中,你可以看到控制板前面的黃色LED在閃動,表明數(shù)據(jù)在傳動。但是,若你編寫的JC的程序有語法錯誤,那么JC編譯就不會通過,也不能下載。JC會在交互式窗口里顯示程序的語法錯誤,提示錯誤可能在第幾行(已用括號注明),并提示可能的語法錯誤。請回原程序窗口(可以在菜單“窗口”里找到你的程序窗口),修改有關(guān)錯誤,再次編譯下載,直到?jīng)]有編譯錯誤下載成功為止。用戶程序下載后,按下能力風(fēng)暴的“復(fù)位”鍵就能立即運(yùn)行。也可以先關(guān)機(jī),拔掉串口線,帶到其他場地,開機(jī)就能運(yùn)行原來下載的程序。4.5小結(jié)本章主要進(jìn)行了硬件仿真電路的設(shè)計(jì)及其仿真,設(shè)計(jì)了機(jī)器人動作驅(qū)動模塊,即電機(jī)驅(qū)動電路設(shè)計(jì);完成了基于狀態(tài)機(jī)的按鍵檢測軟件設(shè)計(jì)。硬件仿真電路綜合了單片機(jī)最小系統(tǒng)、避障行程開關(guān)電路、紅外傳感器電路、電機(jī)驅(qū)動電路、按鍵、蜂鳴器、LED指示燈、串口模塊。這里選擇了ICC11集成開發(fā)環(huán)境,可以對68HC05到68HC11全系列單片機(jī)進(jìn)行代碼的編寫、編譯、連接、生成硬件連接圖仿真燒寫用的s19文件。完成了仿真實(shí)驗(yàn),能模擬出碰撞避障和紅外避障功能。26總結(jié)我做的畢業(yè)設(shè)計(jì)題目是:“能力風(fēng)暴”智能機(jī)器人控制系統(tǒng)設(shè)計(jì),開始選題時,由于不知道機(jī)器人的題目有實(shí)物,所以就沒有選擇這個。后來經(jīng)過老師對每個題目的分析,感覺智能機(jī)器人挺有意思的,也比較喜歡動手操作,所以就選擇了這個題目。開始做時,對MC68HC11系列單片機(jī)完全不了解,自己從網(wǎng)上下了介紹這個系列單片機(jī)的書籍,從內(nèi)部結(jié)構(gòu)到I/O口,到通信和擴(kuò)展,花費(fèi)了很長時間對它有了了解。最roteus中模擬完成了設(shè)計(jì)要求的部后,在馮老師幫助下,我掌握了它的使用方法,在P分功能。因?yàn)橛袑?shí)物,在拿到能力風(fēng)暴后,需要用自帶的編程軟件進(jìn)行程序調(diào)試,我仔細(xì)閱讀了交互式語言的有關(guān)書籍,因?yàn)閷W(xué)習(xí)過c語言,便很快理解了JC語言的編譯方法,并在能力風(fēng)暴中實(shí)現(xiàn)了避障等功能。27參考文獻(xiàn)[1]胡漢才.單片機(jī)原理及系統(tǒng)設(shè)計(jì)[M].北京:清華大學(xué)出版社,2002:103-188.[2]王耀南.機(jī)器人智能控制工程[M].北京:科學(xué)出版社,2004:156-201.[3]鐘玉琢,喬秉新等.機(jī)器人視覺技術(shù)[M].北京:國防工業(yè)出版社,1994:156-189.[4]蔡文貴.CCD技術(shù)及應(yīng)用[M].北京:電子工業(yè)出版社,1992:233-276.[5]趙加祥.TMS320C54xDSP應(yīng)用程序設(shè)計(jì)教程[J].2007,8(2):122-138.[6]辛春艷.VHDL硬件描述語言[M].北京:國防工業(yè)出版社,2002:89-122.[7]趙明忠,顧斌,王鈞銘等.DSP應(yīng)用技術(shù)[M].西安:西安電子科技大學(xué)出版社,2004:56-147.[8]張俊謨,北京工業(yè)大學(xué)教師.單片機(jī)中級教程:原理與應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2000:135-208.28外文資料5.1DiscreteDeltaDomainModelsqTheforwardshiftoperator,,definedinsection?12.5isthemostcommonlyuseddiscretetimeoperator.However,insomeapplicationstheforwardshiftoperatorcanleadtodifficulties.Thereasonforthesedifficultiesareexplainedbelow.Althoughthereisaclearresemblancebetweenthedifferentialoperatormodelofequation(4.2.4)andtheshiftoperatormodelofequation(12.5.2),thereisasubtle,butfarreaching,differencebetweentheserepresentations.Toillustrate,considerthefirstordercontinuoustimeequationdy(t)(5.1.1),y(t),y(t),,y(t),u(t)dtAndthediscreteshiftoperatorequation(5.1.2)aqy(t),ay(t),bu(t)2k1k1kExpandingthedifferentialexplicitlyasalimitingoperationin(5.1.1),weobtainy(t,,),y(t)(5.1.3)lim(),y(t),u(t),,0,Ifwenowcompare(12.8.1)totheexpandedformof(5.1.2)(5.1.4)ay(t,,),ay(t),bu(t);211where,,t,tk,1kwethenseethatthefundamentaldifferencebetweencontinuousanddiscretetimeistangiblycapturedbythelimitingoperationin(5.1.3).Beyondthat,however,wenoticethaty(t,,),y(t)(5.1.3)isfundamentallybasedonarelativeandtimescaleddisplacementfrom,theabsolutepositiony(t),whereas(5.1.4)modelsthesamedynamicsbythetwoabsolutepositionsy(t)and.Inlaterchapterswewillseethatthissubtledifferencepreventsy(t,,)thediscretetimeresultsbasedonshiftoperatorsfromhavinganysensiblerelationshiptothecorrespondingcontinuoustimeresultsas??0.Thisfundamentaldifficultyisavoidedbyuseofanalternativeoperator;namelytheDeltaoperator:f((k,1),),f(k,)(f(k,)),(5.1.5),,Where?denotesthesamplingperiod.Forsampledsignals,animportantfeatureofthisoperationistheobservationthat29lim[,{f(k,)}],,(f(t))(5.1.6),,0I.e.Asthesamplingtimegoestozero,theδoperatortendstothedifferentialoperator.Note,however,thatnoapproximationswillbeinvolvedinemployingthedeltaoperatorforfinitesamplingperiodssincewewillderiveexactmodeldescriptionsrelevanttothisoperatoratthegivensamplingrate.Example12.7.ConsiderthePIcontrollerofExample12.4onpage322andlet?denotethesamplingperiod.Dividingbothsidesof(12.4.5)by?leadstothefollowingexactDeltadomainformofthecontroller:c1(5.1.7),u(k,),c,e(k,),e(k,)2,Indeltaform,thegeneraldiscretemodel(12.4.1)canbeexpressedas1nn,m,,,,,y[k],a,y[k],?,ay[k],b,u[k],?bu[k](5.1.8)100n,m(a,b)Notethatthereisasimpleonetoonerelationshipbetweenthecoefficientsin(12.4.1)ii,,and(a,b)in(5.1.8).iiDiscretetimestatespacemodelscanalsobedescribedinthedeltadomain.Theappropriatestatespacemodelformatis(5.1.9),x[k],Ax[k],Bu[k],,(5.1.10)y[k],Cx[k],Du[k],,Wecanreadilyconvertadiscretestatemodel,giveninshiftformtooneindeltaform(andviceversal).Forexample,themodel(12.5.3),(12.5.4)becomes,(AI)B,qx[k]x[k]qq,,(5.1.11)x[k]u[k],,,y[k],Cx[k],Du[k]qqThismodelisasin(5.1.9),(5.1.10)whereA,IBqq(5.1.12)A,;B,;C,C;D,D,,,q,q,,Example12.8.ForthePIcontrollerofexample12.7onthefacingpagewehavec1(5.1.13)A,0,B,,C,1,D,c,,,,2,Thesolutionof(12.8.9),(12.8.10)iseasilyseentobek,lklx[k],(I,A,)x[0],,(I,A,)Bu[k,l,1](5.1.14),,,,0l,k,1kLy[k],C(I,A,)x[0],C,(I,A,)Bu[k,l,1],Du[k](5.1.15),,,,,,,l,0305.2DiscreteDeltaTransformAscanbeseenfrombycomparingtheresultsinTable12.1withthoseinTable4.1,expressionsinLaplaceandZ–transformdonotexhibitanobviousstructuralequivalence.Intuitively,wewouldexpectsuchanequivalencetoexistwhenthediscretesequenceisobtainedbysamplingacontinuoustimesignal.InparticularonewouldexpectthattheLaplaceTransformshouldapproachtheZ–transformasthesamplingfrequencyincreases.Wewillshowthatthisindeedhappensifweusethealternativedeltaoperator.Toshowhowthisarisingfromsamplingacontinuoustimeoccurs,considerthesequence{y[k]},y(k,)signalevery?seconds.y(t)RecallthattheLaplaceTransformisgivenby,st,(5.2.1),[y(t)],ey(t)dt,0,ItisnaturaltoseekadiscreteversionofthisLaplaceTransformbyusingtheRiemannsum,stx,(5.2.2)Y(s),ey(t),t,k,,k,kk0,Forreasonstobemotivatedpresently,itisalsodesirabletoinvoketheisomorphicchangeofarguments,(5.2.3)e,1,,,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論