《智能鼠原理與制作(進階篇)》高職全套教學(xué)課件_第1頁
《智能鼠原理與制作(進階篇)》高職全套教學(xué)課件_第2頁
《智能鼠原理與制作(進階篇)》高職全套教學(xué)課件_第3頁
《智能鼠原理與制作(進階篇)》高職全套教學(xué)課件_第4頁
《智能鼠原理與制作(進階篇)》高職全套教學(xué)課件_第5頁
已閱讀5頁,還剩110頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

項目一了解智能鼠的發(fā)展1第1篇初級篇項目1了解智能鼠的發(fā)展第1篇初級篇項目2了解智能鼠硬件第1篇初級篇項目3學(xué)習(xí)智能鼠開發(fā)環(huán)境第1篇初級篇項目4掌握智能鼠的基本操作第2篇綜合篇項目1掌握智能鼠功能任務(wù)第2篇綜合篇項目2了解智能鼠創(chuàng)新競賽第3篇競技篇項目1學(xué)習(xí)智能鼠算法第3篇競技篇項目2掌握智能鼠路徑優(yōu)化算法第3篇競技篇項目3嘗試智能鼠走迷宮競賽全套可編輯PPT課件學(xué)習(xí)目標(biāo)(1)了解智能鼠的國際和國內(nèi)發(fā)展歷史。(2)了解智能鼠走迷宮競賽平臺——競賽迷宮、計分系統(tǒng)。近年來隨著科技的迅猛發(fā)展,智能鼠的傳感器、控制器、執(zhí)行器甚至是動力源都經(jīng)歷了多次技術(shù)性的革新。由于可選方案多樣化及世界各地文化差異的影響,使得智能鼠競賽平臺、競賽形式和競賽標(biāo)準(zhǔn)也都有所差異。因此,為了適應(yīng)在全世界范圍推廣,智能鼠逐漸形成了一定的標(biāo)準(zhǔn)和規(guī)范。2任務(wù)一了解智能鼠起源任務(wù)二認識智能鼠迷宮3任務(wù)一了解智能鼠起源一、智能鼠的起源1938年,美國密歇根州的數(shù)學(xué)家香農(nóng)(ClaudeElwoodShannon)完成了《繼電器和開關(guān)電路的分析》論文。由于布爾代數(shù)只有0和1,恰好與二進制數(shù)對應(yīng),香農(nóng)將它運用于以脈沖方式處理信息的繼電器開關(guān),從理論到技術(shù)徹底改變了數(shù)字電路的設(shè)計方向,因此,這篇論文在現(xiàn)代數(shù)字電腦史上具有劃時代的意義。1948年,香農(nóng)又發(fā)表了一篇至今還在閃爍光芒的論文《通信的數(shù)學(xué)基礎(chǔ)》,從而給自己贏得了“信息論之父”的桂冠。1956年,他參與發(fā)起了達特默斯人工智能會議,成為這一新學(xué)科的開山鼻祖之一。他不僅率先把人工智能運用于計算機下棋方面,而且發(fā)明了一個能自動穿越迷宮的“智能鼠”,以此證明計算機可以通過學(xué)習(xí)提高智能。二、智能鼠競賽的發(fā)展歷程4任務(wù)一了解智能鼠起源三、智能鼠走迷宮在中國發(fā)展1.“走出去”2.“請進來”3.“推出去”美國APEC世界Micromouse競賽全日本Micromouse國際公開賽葡萄牙Micromouse國際競賽印度Micromouse國際競賽等美國APEC世界Micromouse競賽組委會主席新加坡義安理工Micromouse教父黃明吉教授英國伯明翰城市大學(xué)PeterHarrison教授日本Micromouse組委會秘書長中川友紀(jì)子女士2016年以來,在教育部指導(dǎo)下,天津市先后啟動泰國、印度、印尼、巴基斯坦、柬埔寨、埃及等國家魯班工坊5任務(wù)二認識智能鼠迷宮目前,國際和國內(nèi)比賽都使用同樣規(guī)格的比賽場地,即一個由16×16個格子組成的方形迷宮。迷宮的“墻壁”是可以插拔的,這樣就可以形成各種各樣的迷宮。TQD-MicromouseMaze16×16迷宮場地規(guī)范(1)迷宮由16×16個﹑18cm×18cm大小的正方形單元所組成。(2)迷宮的隔墻高5cm,厚1.2cm,因此兩個隔墻所構(gòu)成的通道的實際距離為16.8cm,隔墻將整個迷宮封閉。(3)迷宮隔墻的側(cè)面為白色,頂部為紅色。迷宮的地面為木質(zhì),顏色為啞光黑。隔墻側(cè)面和頂部的涂料能夠反射紅外線,地板能夠吸收紅外線。(4)迷宮的起始單元可選設(shè)在迷宮四個角落之中的任何一個。起始單元必須三面有隔墻,只留一個出口。迷宮的終點設(shè)在迷宮中央,由四個正方形單元構(gòu)成。(5)在每個單元的四角可以插上一個小立柱,其截面為正方形。如圖1-1-9所示。小立柱所處的位置稱為“格點”。除了終點區(qū)域的格點外,每個格點至少要與一面隔墻相接觸。(6)迷宮制作的尺寸精度誤差應(yīng)不大于5%,或小于2cm。迷宮地板的接縫不能大于0.5mm,接合點的坡度變化不超過4°。隔墻和立柱之間的空隙不大于1mm。(7)起點和終點設(shè)計遵照IEEEAPEC智能鼠競賽規(guī)則標(biāo)準(zhǔn),即終點必須位于起點方向的右側(cè)。一、IEEE國際標(biāo)準(zhǔn)16×16智能鼠迷宮場地6任務(wù)二認識智能鼠迷宮二、IEEE專用測試場地TQD-MicromouseMazeIEEE測試專用場地是針對學(xué)生對于智能鼠學(xué)習(xí)時間短、能力水平較低的實際情況,致力于提高學(xué)生的工程實訓(xùn)創(chuàng)新水平,提供的輔助學(xué)生進行紅外傳感器調(diào)試的場地,如圖1-1-10所示。學(xué)生只需較少的步驟,即可完成紅外傳感器的調(diào)試,徹底解決以前靠目測、靠感覺調(diào)試的狀況,讓初學(xué)者在智能鼠軟硬件功能調(diào)試方面,如魚得水、應(yīng)用自如。三、全自動電子計分系統(tǒng)TQD-MicromouseTimerV2.0系統(tǒng)包含起點對射模塊、終點對射模塊、智能鼠計分系統(tǒng)模塊、標(biāo)準(zhǔn)計分軟件等。起點對射模塊和終點對射模塊采用迷你USB充電方式,通過內(nèi)置的一組激光對射傳感器檢測智能鼠經(jīng)過。智能鼠計分系統(tǒng)模塊用于接收起點對射模塊和終點對射模塊通過Zigbee技術(shù)發(fā)過來的數(shù)據(jù),經(jīng)過計算機中的計分軟件處理,以一種直觀的方式展現(xiàn)智能鼠在迷宮中的運行情況。上位機軟件也可以單獨使用,可通過鼠標(biāo)輸入起點事件和終點事件。計分系統(tǒng)整體的計時精度可達0.001s。7思考與總結(jié)(1)IEEE國際標(biāo)準(zhǔn)智能鼠場地有哪些類型?(2)IEEE國際標(biāo)準(zhǔn)智能鼠場地套件都包括哪些?(3)目前智能鼠走迷宮競賽已經(jīng)在全世界范圍內(nèi)蓬勃發(fā)展,請歸納總結(jié)這項賽事的特點。(4)全自動計分系統(tǒng)的使用,大大提高了競賽成績計算的準(zhǔn)確度,請簡要說明其工作原理。8本項目到此結(jié)束THANKYOU9

項目二了解智能鼠硬件10學(xué)習(xí)目標(biāo)(1)認識智能鼠的基本硬件結(jié)構(gòu)及各部件功能。(2)學(xué)習(xí)智能鼠中央處理器的運用。本書以TQD-Micromouse-JD智能鼠實訓(xùn)系統(tǒng)為教學(xué)載體,如圖1-2-1所示。該智能鼠配備2200mAh,7.4V的可充電鋰電池;支持電池的電壓監(jiān)測,避免電量不足帶來的麻煩;預(yù)留了六個GPIO口,一個串口,一個SPI接口作為用戶二次開發(fā)使用。11任務(wù)一認識智能鼠基本結(jié)構(gòu)任務(wù)二認識智能鼠核心控制板12任務(wù)一認識智能鼠基本結(jié)構(gòu)一、TQD-Micromouse-JD智能鼠電路組成TQD-Micromouse-JD智能鼠的電路組成框圖如圖1-2-3所示,主要由核心控制模塊、輸入模塊和輸出模塊構(gòu)成,其中核心控制模塊主要包括核心板電路、電源電路和控制電路,此外由核心板電路擴展出部分外圍電路構(gòu)成輸入/輸出模塊,在智能鼠運行過程中發(fā)揮信號傳送和接收的功能,主要包括鍵盤顯示電路、JTAG接口電路、按鍵電路、紅外檢測電路、電動機驅(qū)動電路。二、TQD-Micromouse-JD智能鼠的電路功能13任務(wù)二認識智能鼠核心控制板一、了解TQD-Micromouse-JD智能鼠的中央處理器智能鼠核心板是整個智能鼠控制的核心,相當(dāng)于智能鼠的CPU,TQD-Micromouse-JD智能鼠采用一片QFP-48N封裝的LM3S615和極少的外圍器件構(gòu)成。二、核心控制板供電LM3S615微控制器需要3.3V供電14思考與總結(jié)(1)智能鼠各個模塊之間是如何進行數(shù)據(jù)傳輸?shù)模浚?)智能鼠各部分有無相似電子元器件可以替代?(3)TQD-MicroMouse-JD智能鼠由傳感器、控制器和執(zhí)行器三部分組成。紅外線傳感器檢測周圍障礙物距離,并由數(shù)碼管直觀的顯示出來;控制器依據(jù)這些紅外數(shù)據(jù)控制步進電動機進行動作,從而實現(xiàn)避障。15本項目到此結(jié)束THANKYOU16

項目三學(xué)習(xí)智能鼠開發(fā)環(huán)境17學(xué)習(xí)目標(biāo)(1)學(xué)習(xí)IAREWARM安裝及程序下載。(2)學(xué)習(xí)控制智能鼠的運行。TQD-MicroMouse-JD智能鼠采用國際通用的C編譯器IAREmbeddedWorkbench作為軟件開發(fā)環(huán)境,支持眾多型號的微處理器。18任務(wù)一認識IAREWARM開發(fā)環(huán)境任務(wù)二學(xué)習(xí)智能鼠程序下載19任務(wù)一認識IAREWARM開發(fā)環(huán)境IAREmbeddedWorkbenchforARM(下面簡稱IAREWARM)是一個針對ARM處理器的集成開發(fā)環(huán)境,如圖1-3-1所示,它包含項目管理器、編輯器、C/C++編譯器和ARM匯編器、連接器XLINK和支持RTOS的調(diào)試工具C-SPY。在EWARM環(huán)境下可以使用C/C++和匯編語言方便地開發(fā)嵌入式應(yīng)用程序。比較其他的ARM開發(fā)環(huán)境,IAREWARM具有入門容易、使用方便和代碼緊湊等特點。JLINK是專門用于對Luminary系列單片機程序的調(diào)試與下載。該調(diào)試器結(jié)合IAREWARM集成開發(fā)環(huán)境,可支持所有LM3S系列MU的程序的下載與調(diào)試。一、在EWARM中新建一個新項目1.建立一個項目文件目錄2.新建工作區(qū)3.生成新項目4.保存工作區(qū)5.添加新建文件6.添加對應(yīng)文件二、編譯、連接處理寫好程序后,下載之前一定要進行編譯操作,排除錯誤。20任務(wù)二學(xué)習(xí)智能鼠程序下載一、硬件連接在學(xué)習(xí)了智能鼠的硬件結(jié)構(gòu)和IAREWARM集成開發(fā)環(huán)境后,完成TQD-Micromouse-JD智能鼠與JLINK調(diào)試器、JLINK與IARWARM的連接,連接方式如下圖所示,同時給TQD-Micromouse-JD智能鼠供電。二、基礎(chǔ)demo程序的編譯下載基礎(chǔ)demo程序的編譯下載步驟如下:1.安裝程序假設(shè)已經(jīng)安裝好IAREWARM集成開發(fā)環(huán)境、JLINK驅(qū)動和流明諾瑞驅(qū)動庫,可以直接調(diào)入程序進行下載調(diào)試。2.建立項目文件目錄在桌面新建一個項目文件夾DEMO。3.新建工作區(qū)啟動IAREWARM集成開發(fā)環(huán)境,選擇主菜單的File→New→Workspace命令,打開一個空白工作區(qū)窗口21任務(wù)二學(xué)習(xí)智能鼠程序下載4.生成新項目選擇主菜單Project→CreateNewProject命令,彈出CreateNewProject對話框。EWARM提供集中應(yīng)用程序和庫程序的項目模板。如果選擇Emptyproject,表示使用默認的項目選件設(shè)置,為一個空工程。在這里選擇Emptyproject,在Toolchain欄中選擇ARM,單擊OK按鈕,彈出“另存為”對話框,在“另存為”對話框中瀏覽和選擇新建的DEMO目錄,輸入信息文件名為demo,然后保存。這時在屏幕左邊的Workspace窗口中將顯示新建的項目名和輸出代碼模式,現(xiàn)在DEMO目錄下已生成一個demo.ewp文件,該文件中將包含與demo項目設(shè)置有關(guān)的信息,如編譯、連接(build)的選件等。22任務(wù)二學(xué)習(xí)智能鼠程序下載5.保存工作區(qū)選擇主菜單File→SaveWorkspace命令,保存工作區(qū)。瀏覽并選擇D:\DEMO目錄。然后將工作區(qū)取名為demo,單擊“保存”按鈕退出,如圖1-3-9所示。這時在DEMO目錄下又生成一個demo.eww文件。同時在D:\DEMO目錄下還生成一個settings子目錄,這個目錄下存放保存窗口設(shè)置和斷點設(shè)置等與當(dāng)前操作有關(guān)信息的其他文件。6.添加新建文件(1)建立文件組:右擊Demo-Debug,然后選擇Add→AddGroup...命令,如圖1-3-10所示。分別新建三個文件組:startup文件組、src文件組和lib文件組。(2)添加對應(yīng)文件。向文件組添加對應(yīng)文件。①在lib組添加driverlib.r79文件。右擊lib,選擇Add→AddFiles...命令,在彈出的對話框中選擇目錄:“C:\ProgramFiles\IARSystems\EmbeddedWorkbench4.0Kickstart\arm\lib\Luminary”,選擇需要添加的庫文件driverlib.r79,23任務(wù)二學(xué)習(xí)智能鼠程序下載②在startup文件組添加startup.c文件。將“C:\ProgramFiles(x86)\IARSystems\EmbeddedWorkbench4.0Kickstart\arm\examples\Luminary\LM3Sxxx\ewarm”下的startup.c文件復(fù)制到工程目錄DEMO下面。然后右擊startup,按照上述的方法,選擇Add→AddFile…命令,在彈出的對話框中選擇目錄“桌面:\DEMO”,添加startup.c文件。③在src組中添加drive_7189.c文件、maze.c文件和Mouse_Drive.c文件。復(fù)制“D:\基礎(chǔ)完整demo例程\MicromouseDemo\src”文件夾至桌面新建demo文件夾中,按照上述添加文件方法,選擇Add→AddFile…命令,在彈出的對話框中選擇目錄“桌面:\DEMO”,添加drive_7189.c文件、maze.c文件和Mouse_Drive.c文件。7.編譯和運行應(yīng)用程序在項目選項設(shè)置已經(jīng)完成的基礎(chǔ)上,編譯和運行應(yīng)用程序。1)編譯、連接處理選擇主菜單Project→Make命令,或選中工作區(qū)中的項目名Demo-Debug,右擊,在彈出快捷菜單中選擇Make命令。如果想重新編譯所有的文件,選擇主菜單Project→RebuildAll命令,或選中工作區(qū)中的項目名Demo-Debug,右擊,在彈出快捷菜單中選擇RebuildAll命令。2)查看MAP文件雙擊Workspace中的demo.map文件名,編輯器窗口中將顯示該MAP文件。從MAP文件中可以了解以下內(nèi)容:(1)文件頭中顯示連接器版本、輸出文件名以及連接命令使用的選件。(2)CROSSREFERENCE部分顯示程序入口地址。(3)RUNTIMEMODEL部分顯示使用的運行時模塊的屬性。24任務(wù)二學(xué)習(xí)智能鼠程序下載(4)MODULEMAP部分顯示所有被鏈接的文件。每個文件中,作為應(yīng)用程序一部分加載的有關(guān)模塊的信息,包括各段和每個段中生命的全局符號都列出來。(5)SEGMENTSINADDRESSORDER部分顯示總的代碼和數(shù)據(jù)字節(jié)數(shù)。如果編譯、連接沒有任何錯誤,則生成demo.d79應(yīng)用程序代碼,并可以用于在IARC-SPY中調(diào)試。3)加載應(yīng)用程序?qū)LINKUSBJTAG調(diào)試器的調(diào)試口一端接至TQD-Micromouse-JD智能鼠,另一端連接至操作計算機USB端,安裝成功后,選擇主菜單Project→Debug命令或單擊工具條上的Debugger按鈕或者按【Ctrl+D】組合鍵,C-SPY將開始裝載demo.d79。屏幕上將顯示計算機通過LMLINK加載的過程。屏幕上除了已經(jīng)原先已經(jīng)打開的窗口外,將顯示一組C-SPY專用窗口。如DebugLog和Disassembly窗口。三、運行智能鼠走迷宮(1)待程序下載完成后,拔出JLINKUSBJTAG調(diào)試器與TQD-Micromouse-JD智能鼠連接的USB端口,將智能鼠放置于迷宮起點。(2)清除迷宮內(nèi)的一切障礙物,以保證智能鼠的順利行走。(3)打開智能鼠開關(guān),待指示燈點亮,顯示盤正常顯示后,智能鼠開始走迷宮,觀察智能鼠運行狀態(tài)。25思考與總結(jié)(1)常見的C語言開發(fā)軟件還有哪些?(2)IAREmbeddedWorkbench提供強大的配置功能,在下載程序的時候需要根據(jù)實際情況選擇下載器型號以及下載方式。26本項目到此結(jié)束THANKYOU27

項目四掌握智能鼠的基本操作28學(xué)習(xí)目標(biāo)(1)學(xué)習(xí)智能鼠人機交互系統(tǒng)的基礎(chǔ)應(yīng)用。(2)學(xué)習(xí)智能鼠的紅外檢測調(diào)試。(3)掌握智能鼠電動機驅(qū)動的運用。智能鼠的基本功能是從起點運行到終點。在有限寬度、大量轉(zhuǎn)彎的迷宮當(dāng)中快速而準(zhǔn)確的行走,離不開高精度的傳感器檢測以及電動機運行控制。不同的環(huán)境,光照強度不同,地面摩擦也有一定的差異,所以必須使用人機交互的手段,調(diào)試智能鼠的紅外檢測和電動機轉(zhuǎn)動控制。29任務(wù)一與智能鼠人機交互任務(wù)二紅外檢測的實現(xiàn)任務(wù)三智能鼠的運動控制30任務(wù)一與智能鼠人機交互隨著人類認知領(lǐng)域的不斷擴大和深入、認知層次的不斷發(fā)展和提高,人類的發(fā)展空間不斷擴大,許多工作具有不可預(yù)測性,因此人機交互系統(tǒng)的開發(fā)和應(yīng)用具有很大的迫切性。嵌入式微型機器人的“人機交互”指的是Human-Robot,即人與機器人之間的交互,人機交互系統(tǒng)的設(shè)計應(yīng)符合以下原則:用戶控制原則、易用性原則、直觀性原則、簡潔性原則和可視性原則。一個好的機器人人機交互系統(tǒng)應(yīng)使人腦的決策更快地傳給機器人,同時也應(yīng)該更快地把系統(tǒng)信息反饋回來,以便使用者做出決策。在TQD-Micromouse-JD智能鼠的設(shè)計中,人機交互系統(tǒng)主要指的是調(diào)試用顯示器的電路設(shè)計,其性能的優(yōu)良直接影響智能鼠的運行速度和運行狀態(tài),從而影響智能鼠走迷宮競賽的成績。31任務(wù)一與智能鼠人機交互一、TQD-Micromouse-JD智能鼠的顯示系統(tǒng)智能鼠的顯示系統(tǒng)(智能鼠的LED顯示電路)主要指的是輸出電路中的鍵盤顯示電路。7289EXBOARD模塊是一個鍵盤控制以及數(shù)碼管驅(qū)動PACK板,控制芯片為ZLG7289,ZLG7289提供了SPI接口和鍵盤中斷信號,方便與處理器連接,可驅(qū)動8位共陰極數(shù)碼管或64只獨立LED和64個按鍵。在本模塊上有8個8段共陰極數(shù)碼管及12個按鍵32任務(wù)一與智能鼠人機交互二、顯示系統(tǒng)控制芯片ZLG7289ZLG7289是數(shù)碼管顯示驅(qū)動及鍵盤掃描管理芯片,可直接驅(qū)動8位共陰極數(shù)碼管(或64只獨立LED),同時還可以掃描管理多達64只按鍵。ZLG7289內(nèi)部含有顯示譯碼器,可直接接受BCD碼或十六進制碼,并同時具有兩種譯碼方式。此外,還具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。ZLG7289采用SPI串行總線與微控制器接口,僅占用少數(shù)幾根I/O口線。利用片選信號,多片ZLG7289還可以并接在一起使用,能夠方便地實現(xiàn)多于8位的顯示或多于64個按鍵的應(yīng)用。ZLG7289可廣泛地應(yīng)用于儀器儀表、工業(yè)控制器、條形顯示器、控制面板等領(lǐng)域。引腳序號引腳名稱功能描述1RTCC接電源2VCC電源,+2.7~6V3NC懸空4GND接地5NC懸空6CSSPI總線片選信號,低電平有效7CLKSPI總線時鐘輸入信號,上升沿有效8DIOSPI總線數(shù)據(jù)信號,雙向9KEY鍵盤中斷請求信號,低電平(下降沿)有效10~16SG~SA數(shù)碼管g段/鍵盤行信號0~數(shù)碼管a段/鍵盤行信號617DP數(shù)碼管dp段/鍵盤行信號718~25DIG0~DIG7數(shù)碼管字選信號0/鍵盤列信號0~數(shù)碼管字選信號7/鍵盤列信號726OSC2晶振輸出信號27OSC1晶振輸入信號28RST復(fù)位信號,低電平有效33任務(wù)一與智能鼠人機交互三、LED顯示系統(tǒng)在TQD-Micromouse-JD智能鼠中的應(yīng)用1.數(shù)碼管顯示指定編號1)任務(wù)目的學(xué)會7289EXBOARD模塊的使用,利用提供的7289軟件包顯示數(shù)據(jù)。2)任務(wù)內(nèi)容編程并實現(xiàn),8個數(shù)碼管全部顯示1。3)應(yīng)用原理“智能鼠”的8個數(shù)碼顯示管就像它的嘴巴,通過顯示傳遞信息。顯示鍵盤芯片ZLG7289針對TQD-Micromouse-JD的程序軟件包由“ZLG7289.h”和“ZLG7289.c”兩個文件組成。頭文件“ZLG7289.h”包括ZLG7289的I/O接口定義和用戶指令集聲明,C語言文件“ZLG7289.c”是這些指令的具體實現(xiàn)。將每個數(shù)碼管顯示數(shù)據(jù)看作是一次操作,那么8個數(shù)碼管就可以看作是8次顯示不同數(shù)據(jù)的重復(fù)操作。數(shù)碼管顯示數(shù)據(jù)的核心函數(shù)是Download_7289,可以根據(jù)需要,自主設(shè)定顯示的數(shù)據(jù),具體使用方法請參考核心函數(shù)。核心函數(shù)Download_7289函數(shù)原型:voidDownload_7289(ucharmode,charnumber,chardp,chardata)函數(shù)功能:向ZLG7289下載要顯示的數(shù)據(jù)輸入?yún)?shù):mode=0:下載數(shù)據(jù)且按方式0譯碼mode=1:下載數(shù)據(jù)且按方式1譯碼mode=2:下載數(shù)據(jù)但不譯碼number:數(shù)碼管編號(橫坐標(biāo)),取值范圍0~7dp=0:小數(shù)點熄滅dp=1:小數(shù)點點亮data:要顯示的數(shù)據(jù)輸出參數(shù):無返回值參數(shù):無voidDownload_7289(ucharmode,charnumber,chardp,chardata){ucharmodeDat[3]={0x80,0xC8,0x90};uchartemp_mode;uchartemp_data;if(mode>2){mode=2;}temp_mode=modeDat[mode];number&=0x07;temp_mode|=number;temp_data=data&0x7F;if(dp==1){temp_data|=0x80;}CmdDat_7289(temp_mode,temp_data);}34任務(wù)一與智能鼠人機交互4)任務(wù)流程整體思路簡化為系統(tǒng)初始化和數(shù)碼管顯示數(shù)據(jù)兩部分5)具體步驟步驟1:打開IAREWARM集成開發(fā)環(huán)境,新建項目工程。步驟2:按照軟件使用方法,將對應(yīng)章節(jié)目錄文件夾下的頭文件加入到工程當(dāng)中。步驟3:將程序下載到“智能鼠”中。步驟4:待下載完成后,斷開智能鼠和計算機的連接,打開電源,運行程序,觀察數(shù)碼管的顯示。6)應(yīng)用程序程序清單main.c#include"drive_7289.h"#include"hw_memmap.h"#include"hw_ints.h"#include"interrupt.h"#include"sysctl.h"/*************************************************************************************Functionname:main**Descriptions:主函數(shù)**inputparameters:無**outputparameters:無**Returnedvalue:無***********************************************************************************/main(void){SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_OSC_MAIN|SYSCTL_XTAL_6MHZ);/*使能PLL,設(shè)定系統(tǒng)時鐘頻率為50MHz*/Init_7289();/*初始化ZLG7289*//*顯示數(shù)據(jù)*/Download_7289(0,0,0,1);///8個數(shù)碼管全部顯示1Download_7289(0,1,0,1); Download_7289(0,2,0,1);Download_7289(0,3,0,1); Download_7289(0,4,0,1); Download_7289(0,5,0,1); Download_7289(0,6,0,1); Download_7289(0,7,0,1); while(1);}35任務(wù)一與智能鼠人機交互

2.數(shù)碼管顯示不同數(shù)據(jù)1)任務(wù)目的學(xué)會7289EXBOARD模塊中數(shù)碼管分段顯示函數(shù)、延時函數(shù)的運用。2)任務(wù)內(nèi)容(1)數(shù)碼管分段顯示,點亮和熄滅。(2)利用延時函數(shù),變換數(shù)碼管點亮的分段編號,并調(diào)節(jié)變換頻率。3)應(yīng)用原理智能鼠共有8個數(shù)碼管,可以表示的信息比較有限。但是每個數(shù)碼管又可以看作是8個獨立的LED小燈組成(包括小數(shù)點)的,不同的分段顯示,可以表示不同的信息;多達64個可選LED,可以表示的信息也就大大增多了。實驗對象從數(shù)碼管變換為獨立的LED,同樣是控制目標(biāo)分段點亮或熄滅。為了直觀地展示出觀察效果,可以使用延時函數(shù)來控制分段的點亮和熄滅的時間,例如點亮第32分段一段時間,然后熄滅一段時間。核心函數(shù)1:SegOn_7289/SegOff_7289SegOn_7289(cSeg)/*段點亮指令*//*8個數(shù)碼管被看成64個獨立LED*//*cSeg:0~63*/SegOff_7289(cSeg)/*段關(guān)閉指令*//*8個數(shù)碼管被看成64個獨立LED*//*cSeg:0~63*/核心函數(shù)2:延時函數(shù)delay_ms/*********************************************************************Functionname:voiddelay_ms(u16time)*Descriptions:延時函數(shù)********************************************************************/voiddelay_ms(unsignedinttime){unsignedinti=0;while(time--){i=5000;//時間長短可以自己定義while(i--);}}36任務(wù)一與智能鼠人機交互4)任務(wù)流程整體思路簡化為系統(tǒng)初始化和數(shù)碼管顯示不同數(shù)據(jù)兩部分5)具體步驟步驟1:打開IAREWARM集成開發(fā)環(huán)境,新建項目工程。步驟2:按照軟件使用方法,將對應(yīng)章節(jié)目錄文件夾下的頭文件加入到工程當(dāng)中。步驟3:將程序下載到“智能鼠”中。步驟4:待下載完成后,斷開智能鼠和計算機的連接,打開電源,運行程序,觀察數(shù)碼管的顯示。6)應(yīng)用程序程序清單main.c

main(void){SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_OSC_MAIN|SYSCTL_XTAL_6MHZ);/*使能PLL,設(shè)定系統(tǒng)時鐘頻率為50MHz*/Init_7289();/*初始化ZLG7289*/while(1){

SegOn_7289(32);/*點亮第32段*/delay_ms(1000);SegOff_7289(32);/*關(guān)閉第32段*/delay_ms(1000);}}用戶可以自行嘗試其他分段的亮滅,以及多個分段的組合顯示。37任務(wù)一與智能鼠人機交互四、按鍵系統(tǒng)在TQD-Micromouse-JD智能鼠中的應(yīng)用1.TQD-Micromouse-JD智能鼠按鍵系統(tǒng)介紹TQD-Micromouse-JD智能鼠的按鍵系統(tǒng)與數(shù)碼管的LED顯示系統(tǒng)相結(jié)合,共包含12個獨立按鍵。在當(dāng)前TQD-Micromouse-JD智能鼠設(shè)計開發(fā)過程中,尚未啟用按鍵在智能鼠走迷宮中的功能,按鍵系統(tǒng)的配置可為后期的二次開發(fā)做準(zhǔn)備。2.TQD-Micromouse-JD智能鼠按鍵參考實驗1)任務(wù)目的了解TQD-Micromouse-JD智能鼠按鍵(中斷函數(shù))的基本原理、操作方法和應(yīng)用范圍。2)任務(wù)內(nèi)容按下按鍵后,智能鼠顯示系統(tǒng)中數(shù)碼管顯示按鍵值。3)應(yīng)用原理程序運行是從主函數(shù)運行的。那么什么是中斷函數(shù)呢?舉個例子:為了完成學(xué)業(yè),學(xué)生放學(xué)后寫作業(yè)是必須每天都要進行的,就可以看作是主函數(shù);而如果有人敲門,就可以看作按鍵系統(tǒng)中斷函數(shù)。根據(jù)敲門人員的身份不同就有不同的結(jié)果,也就是中斷函數(shù)需要執(zhí)行的內(nèi)容(核心函數(shù)1和核心函數(shù)2)??爝f員:需要簽收包裹。電力公司:繳納電費。居委會:填寫小區(qū)改造建議表等等。38任務(wù)一與智能鼠人機交互核心函數(shù)1:Key_7289/**************************************************Functionname:Key_7289**Descriptions:執(zhí)行ZLG7289鍵盤命令。**inputparameters:無**outputparameters:無**Returnedvalue:返回讀到的按鍵值:0~63。如果返回0xff,則表示沒有鍵按下************************************************/charKeyDrive_7289(void){charkey;GPIOPinWrite(GPIO_PORTA_BASE,CS_7289,0x00);delayus(25);SPIWrite_7289(0x15);delayus(15);key=SPIRead_7289();GPIOPinWrite(GPIO_PORTA_BASE,CS_7289,0xff);delayus(5);returnkey;}核心函數(shù)2:GPIO_Port_A_ISR/**********************************************************************************Functionname:GPIO_Port_A_ISR**Descriptions:端口A中斷服務(wù)函數(shù)**inputparameters:無**outputparameters:無**Returnedvalue:無************************************************************************************/voidGPIO_Port_A_ISR(void){ucharstatus;ucharkey;status=GPIOPinIntStatus(GPIO_PORTA_BASE,true);/*讀PA口中斷狀態(tài)*/if(status&KEY_7289)/*判斷是否為按鍵中斷*/{GPIOPinIntClear(GPIO_PORTA_BASE,KEY_7289);/*清中斷*/key=KeyDrive_7289();/*讀按鍵值*//*若按鍵有效,則讓8個數(shù)碼管一起顯示*/if(key!=0xff){Download_7289(1,0,0,key);Download_7289(1,1,0,key);Download_7289(1,2,0,key);Download_7289(1,3,0,key);Download_7289(1,4,0,key);Download_7289(1,5,0,key);Download_7289(1,6,0,key);Download_7289(1,7,0,key);}}}4)任務(wù)流程首先需要確定是什么人敲門,也就是哪一個按鍵被按下;然后根據(jù)按鍵的不同,來執(zhí)行相應(yīng)的內(nèi)容39任務(wù)一與智能鼠人機交互5)具體步驟步驟1:打開IAREWARM集成開發(fā)環(huán)境,新建項目工程。步驟2:按照軟件使用方法,將對應(yīng)章節(jié)目錄文件夾下的頭文件加入到工程當(dāng)中。步驟3:將程序下載到“智能鼠”中。步驟4:待下載完成后,斷開智能鼠和計算機的連接,打開電源,運行程序,觀察數(shù)碼管的顯示。步驟5:依次按下智能鼠面板上的按鍵,觀察數(shù)碼管顯示有何變化。6)應(yīng)用程序程序清單main.cmain(void){SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_OSC_MAIN|SYSCTL_XTAL_6MHZ);/*使能PLL,設(shè)定系統(tǒng)時鐘頻率為50MHz*/Init_7289();/*初始化ZLG7289*/GPIODirModeSet(GPIO_PORTA_BASE,KEY_7289,GPIO_DIR_MODE_IN);/*設(shè)置KEY端口為輸入*/GPIOIntTypeSet(GPIO_PORTA_BASE,KEY_7289,GPIO_FALLING_EDGE);/*配置引腳下降沿觸發(fā)中斷*/GPIOPinIntEnable(GPIO_PORTA_BASE,KEY_7289);/*使能引腳輸入中斷*/IntEnable(INT_GPIOA);/*使能GPIOPA口中斷*//*顯示數(shù)據(jù)*/Download_7289(0,0,0,0);Download_7289(0,1,0,1);Download_7289(0,2,0,2);Download_7289(0,3,0,3);Download_7289(0,4,0,4);Download_7289(0,5,0,5);Download_7289(0,6,0,6);Download_7289(0,7,0,7);while(1);/*等待按鍵中斷*/}40任務(wù)二紅外檢測的實現(xiàn)一、機器人傳感器的作用機器人傳感器在控制中起了非常重要的作用,是感知系統(tǒng)中必不可少的部件。根據(jù)傳感器的作用,移動機器人中所采用的傳感器可以分為內(nèi)部傳感器和外部傳感器,內(nèi)部傳感器主要測量機器人內(nèi)部系統(tǒng),比如溫度、電動機速度、電動機載荷、電池電壓等;外部傳感器主要測量外界環(huán)境,比如距離測量、聲音、光線等。根據(jù)傳感器的運行方式,移動機器人中所采用的傳感器分為被動式傳感器和主動式傳感器。被動式傳感器本身不發(fā)出能量,比如CCD、CMOS攝像頭傳感器;主動式傳感器會發(fā)出探測信號,比如超聲波、紅外光、激光,但是此類傳感器的反射信號會受到很多因素的影響,從而影響準(zhǔn)確的信號獲得,同時,信號還很容易受到干擾。二、TQD-Micromouse-JD智能鼠紅外檢測電路智能鼠紅外檢測電路用于迷宮擋板的檢測,分為左方、左前方、前方、右前方、右方五個方向,五個方向的傳感器電路原理相同RF2為紅外發(fā)射頭,W2為限流可調(diào)電阻,用來調(diào)節(jié)發(fā)射紅外線的強度。41任務(wù)二紅外檢測的實現(xiàn)三、紅外傳感器IRM8601S工作原理為了便于理解紅外接收頭的工作原理,首先介紹一下調(diào)制的概念,調(diào)制是用攜帶信息的輸入信號來控制另一信號的某參數(shù),使之按照輸入信號的規(guī)律而變化的過程,輸入信號稱為調(diào)制信號,被控制的信號稱為載波(或載頻)信號,輸出信號為調(diào)制波,如圖1-4-8所示。調(diào)制波又根據(jù)調(diào)制信號所控制的載波信號參數(shù)類型分為調(diào)幅波、調(diào)頻波和調(diào)相波。IRM8601S調(diào)制信號為周期1200μs的方波,內(nèi)部的帶通濾波器的中心頻率為38kHz,所以驅(qū)動發(fā)射紅外線的載波信號為38kHz時傳感器最靈敏,IRM8601S檢測到信號時,輸出有效電平(低電平),有效電平維持時間TWL的范圍為400μs<TWL<800μs,42任務(wù)二紅外檢測的實現(xiàn)四、紅外傳感器供電電路TQD-Micromouse-JD智能鼠使用的紅外線傳感器的工作電壓為5V,在一般情況下可以把電池的輸出電壓經(jīng)過LDO穩(wěn)壓到5V。但若電池電壓較低或瞬間被拉低時,系統(tǒng)就不能為傳感器提供穩(wěn)定的電源,這將嚴(yán)重影響傳感器的靈敏度。經(jīng)過以上考慮,決定把系統(tǒng)中已經(jīng)較為穩(wěn)定的3.3V電壓升到5V,升壓芯片采用Exar公司的低靜態(tài)電流、高效率的升壓芯片SP6641A,五、紅外傳感器在TQD-Micromouse-JD智能鼠中的應(yīng)用1.TQD-Micromouse-JD智能鼠檢測墻壁1)任務(wù)目的了解紅外傳感器在智能鼠中的作用,掌握紅外檢測電路在智能鼠走迷宮中檢測墻壁的基本原理。2)任務(wù)內(nèi)容利用紅外傳感器檢測迷宮的擋板墻壁。若檢測到擋板墻壁,對應(yīng)數(shù)碼管分段點亮;若檢測不到,則數(shù)碼管保持熄滅狀態(tài)。3)應(yīng)用原理紅外發(fā)射頭可以發(fā)出紅外線,所有的物體都可以不同強弱的反射紅外線。若距離合適,在經(jīng)過擋板反射后可以被接收頭接收。同樣可以使用中斷函數(shù),來讀取紅外傳感器是否檢測到擋板墻壁。核心函數(shù)如下:43任務(wù)二紅外檢測的實現(xiàn)核心函數(shù)SysTick_ISR/******************************************************************************Functionname:SysTick_ISR**Descriptions:系統(tǒng)定時器中斷服務(wù)函數(shù)*****************************************************************************/voidSysTick_ISR(void){staticucharstate=0;ucharcheck;switch(state){case0:IRFreqConfig(35000,2);IRFreqConfig(35000,1);/*紅外傳感器發(fā)射紅外線*/break;case1:check=GPIOPinRead(GPIO_PORTB_BASE,0x3e);/*讀取傳感器狀態(tài)*/PWMGenDisable(PWM_BASE,PWM_GEN_2);/*禁止PWM發(fā)生器2*/PWMGenDisable(PWM_BASE,PWM_GEN_1);/*禁止PWM發(fā)生器1*/if(check&RIGHT)SegOff_7289(32);elseSegOn_7289(32);if(check&LEFT)SegOff_7289(0);elseSegOn_7289(0);if(check&RIGHTFRONT)SegOff_7289(24);elseSegOn_7289(24);if(check&LEFTFRONT)SegOff_7289(8);elseSegOn_7289(8);if(check&FRONT)SegOff_7289(16);elseSegOn_7289(16);break;default:break;}state=(state+1)%2;/*循環(huán)檢測*/}4)任務(wù)流程首先驅(qū)動PWM發(fā)生器模塊發(fā)出紅外線,然后通過是否接收到反射回來的紅外線,來判斷是否檢測到擋板墻壁,并由數(shù)碼管顯示結(jié)果44任務(wù)二紅外檢測的實現(xiàn)5)具體步驟步驟1:打開IAREWARM集成開發(fā)環(huán)境,新建項目工程。步驟2:按照軟件使用方法,將對應(yīng)章節(jié)目錄文件夾下的頭文件加入到工程當(dāng)中。步驟3:將程序下載到“智能鼠”中。步驟4:待下載完成后,斷開智能鼠和計算機的連接,打開電源,運行程序,嘗試用物體遮擋紅外傳感器,觀察對應(yīng)數(shù)碼管的顯示。6)應(yīng)用程序程序清單main(void){SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_OSC_MAIN|SYSCTL_XTAL_6MHZ);/*使能PLL,設(shè)定系統(tǒng)時鐘頻率為50MHz*/IRInit();/*傳感器初始化*/SysTimerInit();/*系統(tǒng)時鐘初始化*/Init_7289();/*顯示模塊初始化*/while(1);/*等待系統(tǒng)中斷*/}2.紅外傳感器測距TQD-Micromouse-JD智能鼠上共有五組紅外線傳感器,每組紅外線傳感器由紅外線發(fā)射頭和紅外線接收頭組成。TQD-Micromouse-JD智能鼠上的紅外接收頭是一體化紅外線接收頭。1)任務(wù)目的(1)掌握一體化紅外接收頭的工作特性。(2)學(xué)會如何產(chǎn)生紅外線的調(diào)制信號。(3)學(xué)會如何使用一體化紅外接收頭傳感器測距。2)任務(wù)內(nèi)容(1)利用五組傳感器檢測一定范圍內(nèi)的障礙物,即可以判斷一定距離的范圍內(nèi)是否存在障礙物。(2)左右兩側(cè)的紅外傳感器加入一項功能,能夠粗略判斷障礙物的遠近距離。既可以指示出沒有障礙物、檢測到障礙物和障礙物靠得太近三種狀態(tài)。45任務(wù)二紅外檢測的實現(xiàn)3)應(yīng)用原理TQD-Micromouse-JD智能鼠共有兩組紅外PWM發(fā)生器模塊,分別為驅(qū)動兩個45°紅外發(fā)射的1號發(fā)生器模塊,以及驅(qū)動正左、正前、正右三個紅外發(fā)射的2號發(fā)生器模塊。核心函數(shù)1.IRFreqConfig/************************************************************************************Functionname:IRFreqConfig**Descriptions:設(shè)置PWM頻率**inputparameters:freq:紅外線載波頻率**number:選擇需要設(shè)置的PWM模塊**outputparameters:無**Returnedvalue:無**********************************************************************************/voidIRFreqConfig(uintfreq,charnumber){freq=SysCtlClockGet()/freq;switch(number){

case1:PWMGenPeriodSet(PWM_BASE,PWM_GEN_1,freq);/*設(shè)置PWM發(fā)生器1的周期*/PWMPulseWidthSet(PWM_BASE,PWM_OUT_2,freq/2);/*設(shè)置PWM2輸出的脈沖寬度*/PWMGenEnable(PWM_BASE,PWM_GEN_1);/*使能PWM發(fā)生器1*/break;

case2:PWMGenPeriodSet(PWM_BASE,PWM_GEN_2,freq);/*設(shè)置PWM發(fā)生器2的周期*/PWMPulseWidthSet(PWM_BASE,PWM_OUT_4,freq/2);/*設(shè)置PWM4輸出的脈沖寬度*/PWMGenEnable(PWM_BASE,PWM_GEN_2);/*使能PWM發(fā)生器2*/break;default:break;}}核心函數(shù)2:SysTick_ISR函數(shù)原型:SysTick_ISR()函數(shù)功能:系統(tǒng)定時器中斷服務(wù)函數(shù)輸入?yún)?shù):無輸出參數(shù):無返回值:

無關(guān)鍵變量:state有0,1,2,3四個狀態(tài)。SysTick_ISR函數(shù)每毫秒會進一次SysTick中斷state=0:第一次進函數(shù),配置紅外發(fā)射頻率為35000state=1:第二次進函數(shù),進行紅外接收,測量近距離的情況state=2:第三次進函數(shù),配置紅外發(fā)射頻率為38000state=3:第四次進函數(shù),進行紅外接收,測量遠距離的情況voidSysTick_ISR(void){staticucharstate=0;ucharcheck;switch(state){case0:IRFreqConfig(35000,2);/*探測左右兩側(cè)近距*/IRFreqConfig(35000,1);/*驅(qū)動斜角上的傳感器檢測*/break;case1:check=GPIOPinRead(GPIO_PORTB_BASE,0x3e);/*讀取傳感器狀態(tài)*/PWMGenDisable(PWM_BASE,PWM_GEN_2);/*禁止PWM發(fā)生器2*/PWMGenDisable(PWM_BASE,PWM_GEN_1);/*禁止PWM發(fā)生器1*/if(check&RIGHT)SegOff_7289(38);elseSegOn_7289(38);if(check&LEFT)SegOff_7289(6);elseSegOn_7289(6);if(check&RIGHTFRONT)SegOff_7289(24);elseSegOn_7289(24);if(check&LEFTFRONT)SegOff_7289(8);elseSegOn_7289(8);break;case2:IRFreqConfig(38000,2);/*驅(qū)動檢測左前右三個方向遠距*/break;case3:check=GPIOPinRead(GPIO_PORTB_BASE,0x2a);/*讀取傳感器狀態(tài)*/PWMGenDisable(PWM_BASE,PWM_GEN_2);/*禁止PWM發(fā)生器2*/if(check&RIGHT)SegOff_7289(32);elseSegOn_7289(32);if(check&LEFT)SegOff_7289(0);elseSegOn_7289(0);if(check&FRONT)SegOff_7289(16);elseSegOn_7289(16);break;default:break;}state=(state+1)%4;/*循環(huán)檢測*/}46任務(wù)二紅外檢測的實現(xiàn)4)任務(wù)流程相比較檢測墻壁實驗,本實驗增加了一個測量遠距離墻壁信息的檢測。根據(jù)傳感器特性可知,紅外發(fā)射頻率越接近38kHz,檢測距離越遠。所以,在上一個實驗基礎(chǔ)之上,增加一次2號PWM發(fā)生器模塊的驅(qū)動,并使用較大的頻率,5)具體步驟步驟1:打開IAREWARM集成開發(fā)環(huán)境,新建項目工程。步驟2:按照軟件使用方法,將對應(yīng)章節(jié)目錄文件夾下的頭文件加入到工程中。步驟3:將程序下載到“智能鼠”中。步驟4:待下載完成后,斷開智能鼠和計算機的連接,打開電源,運行程序,用擋板檢測紅外傳感器的測量情況。6)應(yīng)用程序主函數(shù):mainmain(void){SysCtlClockSet(SYSCTL_SYSDIV_4|SYSCTL_USE_PLL|SYSCTL_OSC_MAIN|SYSCTL_XTAL_6MHZ);/*使能PLL,設(shè)定系統(tǒng)時鐘頻率為50MHz*/

IRInit();/*傳感器初始化*/SysTimerInit();/*系統(tǒng)時鐘初始化*/Init_7289();/*顯示模塊初始化*/while(1);/*等待中斷*/}47任務(wù)二紅外檢測的實現(xiàn)六、智能鼠傳感器調(diào)節(jié)的方法1.任務(wù)目的智能鼠是通過五組紅外傳感器來檢測四周障礙物距離信息的,這些距離信息有的較遠,有的較近。本任務(wù)通過紅外傳感器發(fā)射強度的調(diào)試方法,使之能夠得到正確的障礙物距離信息。2.主要步驟步驟1:連接好電路,W1與RF1組成紅外線發(fā)射電路,控制紅外線發(fā)射的端口連接到微控制器,在五組紅外傳感器里,RF1,RF3,RF5共同連接到PE0端口;RF2,RF4共同連接到PB0端口。紅外接收頭U1~U5的輸出信號分別連接到微控制器的PB1~PB5端口。步驟2:程序下載。打開“2.紅外傳感器測距”demo程序,編譯下載程序。步驟3:上電復(fù)位,數(shù)碼管顯示數(shù)據(jù)。智能鼠的五組紅外傳感器在使用時需要通過調(diào)節(jié)W1~W5五個可調(diào)電阻來調(diào)整傳感器的探測距離,也就是調(diào)節(jié)機器人的視覺距離。第一至五個數(shù)碼管分別用來指示U1~U5五組傳感器的狀態(tài),用手分別遮擋這五組傳感器,就能觀測到對應(yīng)數(shù)碼管的點亮或者熄滅;第六個數(shù)碼管空閑;第七、八個數(shù)碼管顯示的是電池電壓48任務(wù)二紅外檢測的實現(xiàn)步驟4:調(diào)節(jié)U1和U5的靈敏度。(1)左側(cè)90°紅外傳感器調(diào)節(jié)。通過調(diào)節(jié)W1設(shè)置U1傳感器靈敏度。智能鼠貼緊右側(cè)擋板,調(diào)節(jié)W1,使第一個數(shù)碼管能穩(wěn)定的點亮第一個段,第二個段剛好點不亮或處于微弱的閃爍狀態(tài),(2)右側(cè)90°紅外傳感器調(diào)節(jié)。通過調(diào)節(jié)W5設(shè)置U5傳感器靈敏度。方法同上,智能鼠貼緊左側(cè)擋板,使第五個數(shù)碼管能穩(wěn)定的點亮第一個段,第二個段剛好不亮或處于微弱的閃爍狀態(tài),步驟5:調(diào)節(jié)U2和U4的靈敏度。(1)左側(cè)45°紅外傳感器調(diào)節(jié):將智能鼠車體放在通道正中間,調(diào)節(jié)W2,直到LED顯示模塊的左側(cè)第二個數(shù)碼管處于由滅到亮的閃爍狀態(tài),此時的傳感器為最佳狀態(tài),(2)右側(cè)45°紅外傳感器調(diào)節(jié):將智能鼠車體放在通道正中間,調(diào)節(jié)W4,直到LED顯示模塊的左側(cè)第四個數(shù)碼管處于由滅到亮的閃爍狀態(tài),此時的傳感器為最佳狀態(tài),49任務(wù)二紅外檢測的實現(xiàn)步驟6:調(diào)節(jié)U3的靈敏度。正前方紅外傳感器調(diào)節(jié):將智能鼠車體置于迷宮格正中位置,調(diào)節(jié)W3,直到LED顯示模塊的左側(cè)第三個數(shù)碼管處于由滅到亮的閃爍狀態(tài),此時的傳感器為最佳狀態(tài),50任務(wù)三智能鼠的運動控制一、機器人執(zhí)行機構(gòu)的作用機器人一般由執(zhí)行機構(gòu)、驅(qū)動裝置、檢測裝置和控制系統(tǒng)等組成。執(zhí)行機構(gòu)即機器人本體,可分為直角坐標(biāo)式、圓柱坐標(biāo)式、極坐標(biāo)式和關(guān)節(jié)坐標(biāo)式等類型。驅(qū)動裝置是驅(qū)使執(zhí)行機構(gòu)運動的機構(gòu),按照控制系統(tǒng)發(fā)出的指令信號,借助于動力元件使機器人進行動作。輸入的是電信號,輸出的是線、角位移量,機器人使用的驅(qū)動裝置主要是電力驅(qū)動裝置,如步進電動機、伺服電動機等,此外也有采用液壓、氣動等驅(qū)動裝置。檢測裝置的作用是實時檢測機器人的運動及工作情況,根據(jù)需要反饋給控制系統(tǒng),與設(shè)定信息進行比較后,對執(zhí)行機構(gòu)進行調(diào)整,以保證機器人的動作符合預(yù)定的要求。控制系統(tǒng)有兩種,一種是集中式控制,即機器人的全部控制由一臺微型計算機完成;另一種是分散式控制,即采用多臺微機來分擔(dān)機器人的控制。二、認識智能鼠的電動機驅(qū)動模塊1.TQD-Micromouse-JD智能鼠電動機驅(qū)動電路TQD-Micromouse-JD智能鼠電動機驅(qū)動電路如下圖所示。其中BA6845FS是步進電動機驅(qū)動芯片,每個芯片包含兩個H橋電路,它的最大驅(qū)動電流為1A,且在輸入邏輯的控制下輸出有三種模式:正向、反向和停止。51任務(wù)三智能鼠的運動控制IN11/21IN12/22OUT11/21OUT12/22模式LHHL正向HHLH反向LL開路開路停止HL開路開路停止三、智能鼠跑起來1.任務(wù)目的學(xué)習(xí)TQD-Micromouse-JD智能鼠的電動機驅(qū)動模塊的使用。2.任務(wù)內(nèi)容編程并實現(xiàn)智能鼠電動機的驅(qū)動,使智能鼠按照一定的速度運行。3.應(yīng)用原理經(jīng)過學(xué)習(xí)電動機驅(qū)動,大家已經(jīng)知道電動機有多種參數(shù)需要考慮:(1)電動機狀態(tài):啟動還是停止?(2)運行方向:向前還是向后?(3)速度:快還是慢?(4)需要轉(zhuǎn)動的步數(shù).(5)已經(jīng)轉(zhuǎn)動的步數(shù)。因此可以建立一個函數(shù)結(jié)構(gòu)體來存儲這些參數(shù)。52任務(wù)三智能鼠的運動控制結(jié)構(gòu)體和其他類型基礎(chǔ)數(shù)據(jù)類型一樣(例如int類型,char類型),只不過結(jié)構(gòu)體可以根據(jù)需要進行自定義。結(jié)構(gòu)體在函數(shù)中的作用是封裝。封裝的好處就是可以再次利用。讓使用者不必關(guān)心具體是什么,只要根據(jù)定義使用就可以了。核心定義:電動機驅(qū)動/********************************************************************************結(jié)構(gòu)體定義*********************************************************************************/typedefstructmotor{charstate;/*電動機運行狀態(tài)*/chardir;/*電動機運行方向*/uintstep_need;/*電動機需要轉(zhuǎn)動的步數(shù)*/uintstep_done;/*電動機已轉(zhuǎn)動的步數(shù)*/uintspeed;/*電動機轉(zhuǎn)動速度*/}MOTOR;/***********************************************************************************常量宏定義:電動機狀態(tài)************************************************************************************/#defineSTOP0/*電動機停止*/#defineRUN1/*電動機運行*//***********************************************************************************常量宏定義:電動機運行方向************************************************

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論