畢業設計(論文)_基于AT89C51單片機的能力風暴機器人超聲波測距擴展卡的設計_第1頁
畢業設計(論文)_基于AT89C51單片機的能力風暴機器人超聲波測距擴展卡的設計_第2頁
畢業設計(論文)_基于AT89C51單片機的能力風暴機器人超聲波測距擴展卡的設計_第3頁
畢業設計(論文)_基于AT89C51單片機的能力風暴機器人超聲波測距擴展卡的設計_第4頁
畢業設計(論文)_基于AT89C51單片機的能力風暴機器人超聲波測距擴展卡的設計_第5頁
已閱讀5頁,還剩78頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、目錄 TOC o 1-3 h z u HYPERLINK l _Toc262974116 第1章 緒論 PAGEREF _Toc262974116 h 3 HYPERLINK l _Toc262974117 機器人研究的意義 PAGEREF _Toc262974117 h 3 HYPERLINK l _Toc262974118 機器人足球的開展 PAGEREF _Toc262974118 h 3 HYPERLINK l _Toc262974119 傳感器技術與超聲波應用 PAGEREF _Toc262974119 h 4 HYPERLINK l _Toc262974120 能力風暴機器人概述

2、PAGEREF _Toc262974120 h 4 HYPERLINK l _Toc262974121 開設能力風暴機器人教育的意義 PAGEREF _Toc262974121 h 4 HYPERLINK l _Toc262974122 能力風暴機器人結構 PAGEREF _Toc262974122 h 5 HYPERLINK l _Toc262974123 能力風暴機器人的硬件 PAGEREF _Toc262974123 h 5 HYPERLINK l _Toc262974124 能力風暴機器人的開發能力 PAGEREF _Toc262974124 h 6 HYPERLINK l _Toc2

3、62974125 第2章 超聲波測距擴展卡的設計 PAGEREF _Toc262974125 h 8 HYPERLINK l _Toc262974126 超聲波擴展卡設計思路 PAGEREF _Toc262974126 h 8 HYPERLINK l _Toc262974127 超聲波簡介 PAGEREF _Toc262974127 h 8 HYPERLINK l _Toc262974128 超聲波測距原理 PAGEREF _Toc262974128 h 8 HYPERLINK l _Toc262974129 課題設計的任務和要求 PAGEREF _Toc262974129 h 10 HYPE

4、RLINK l _Toc262974130 方案設計比擬 PAGEREF _Toc262974130 h 10 HYPERLINK l _Toc262974131 第3章 系統硬件結構設計 PAGEREF _Toc262974131 h 13 HYPERLINK l _Toc262974132 系統主要結構 PAGEREF _Toc262974132 h 13 HYPERLINK l _Toc262974133 3.2 51系列單片機功能結構特點 PAGEREF _Toc262974133 h 13 HYPERLINK l _Toc262974134 3.2.1 AT89C51的引腳介紹 PA

5、GEREF _Toc262974134 h 14 HYPERLINK l _Toc262974135 3.2.2 AT89C51的定時計數系統 PAGEREF _Toc262974135 h 15 HYPERLINK l _Toc262974136 3.2.3 AT89C51的中斷系統 PAGEREF _Toc262974136 h 15 HYPERLINK l _Toc262974137 3.3 LM555定時器介紹 PAGEREF _Toc262974137 h 16 HYPERLINK l _Toc262974138 硬件擴展總線ASBUS PAGEREF _Toc262974138 h

6、 21 HYPERLINK l _Toc262974139 第4章 繪制電路板 PAGEREF _Toc262974139 h 22 HYPERLINK l _Toc262974140 4.1 PROTEL介紹及作圖流程 PAGEREF _Toc262974140 h 22 HYPERLINK l _Toc262974141 超聲波測距擴展卡的軟件調試 PAGEREF _Toc262974141 h 23 HYPERLINK l _Toc262974142 4.2.1 VJC簡介 PAGEREF _Toc262974142 h 23 HYPERLINK l _Toc262974143 4.2.

7、2 JC語言 PAGEREF _Toc262974143 h 24 HYPERLINK l _Toc262974144 單片機匯編語言調試 PAGEREF _Toc262974144 h 25 HYPERLINK l _Toc262974145 采用匯編語言的優點 PAGEREF _Toc262974145 h 25 HYPERLINK l _Toc262974146 程序流程圖 PAGEREF _Toc262974146 h 26 HYPERLINK l _Toc262974147 第5章 結論 PAGEREF _Toc262974147 h 28 HYPERLINK l _Toc26297

8、4147 致 謝30 HYPERLINK l _Toc262974147 參考文獻31 HYPERLINK l _Toc262974147 附 錄32緒論機器人研究的意義機器人(Robot)是自動執行工作的機器裝置。它既可以接受人類指揮,又可以運行預先編排的程序,也可以根據以人工智能技術制定的原那么綱領行動。它的任務是協助或取代人類工作的工作,例如生產業、建筑業,或是危險的工作。它可以說是高級整合控制論、機械電子、計算機、材料和仿生學的產物。目前在工業、醫學、農業甚至軍事等領域中均有重要用途。機器人是近年來的研究熱點,其研究水平是一個國際科技實力的重要標志。“能力風暴(Ability Stor

9、ms)機器人由上海廣茂達電子信息開發,呈單片機結構,外形酷似UFO,是專為個人機器人的需求設計的, 它是最優秀的科技類探索性課程及課外活動的教具,它融合了光學、機械、電子、計算機等學科的高科技知識,集輔助教學和娛樂于一身。能力風暴個人機器人的配有5種十幾個傳感器,另外還可以根據需要擴展其他傳感器,對環境的感知能力很強。感知環境的能力是產生智能行為的前提,因此能力風暴能產生許多智能性行為。本課題主要是設計一塊基于能力風暴機器人的超聲波測距模塊,用于解決“能力風暴大學版機器人在比賽過程中識別障礙物的問題。機器人足球的開展足球機器人比賽雖然剛剛開展幾年時間,但是它吸引了越來越多人的關注。因為它以喜聞

10、樂見的方式走進了我們的視野,雖然它的體積很小,但是它的意義非常重大。它是綜合了計算機技術,自動化技術,機電一體化技術,人工智能技術,模式識別技術的一門綜合技術。 足球機器人的核心技術是人工智能技術,它的目地是使機器具有人的智慧。它能使機器具有像人一樣的感知環境,向環境學習的能力。人工智能包括智能控制、機器感知、機器情感、專家系統、人工生命、神經元網絡和遺傳算法等等。傳感器技術與超聲波應用傳感器技術是現代信息技術的主要內容之一。信息技術包括計算機技術、通信技術和傳感器技術,計算機技術相當于人的大腦,通信相當于人的神經,而傳感器就相當于人的感官。比方溫度傳感器、光電傳感器、濕度傳感器、超聲波傳感器

11、、紅外傳感器、壓力傳感器等等,其中,超聲波傳感器在測量方面有著廣泛、普遍的應用。利用單片機控制超聲波檢測往往比擬迅速、方便、計算簡單、易于做到實時控制,并且測量精度較高。超聲波測距系統主要應用于汽車的倒車雷達、機器人自動避障行走、建筑施工工地以及一些工業現場例如:液位、井深、管道長度等場合。因此研究超聲波測距系統的原理有著很大的現實意義。對本課題的研究與設計,還能進一步提高自己的電路設計水平,深入對單片機的理解和應用。能力風暴機器人概述開設能力風暴機器人教育的意義自從20世紀60年代初世界第一臺機器人誕生以后,機器人技術得到了迅速地開展。在21世紀,機器人技術的進步將會對科學與技術的開展產生重

12、要影響。高技術研究開展方案(863方案)是我國關于高技術的中長期研究開展方案,智能機器人是自動化領域的主題之一。863方案開始實施以來,在特種機器人,機器人應用工程,機器人根底技術等方面取得了很大成績,組織和培養了一支數量可觀的研究開發隊伍,建立了一批各具特色的研究開發環境,863方案已成為我國開展智能機器人技術的最重要的陣地。能力風暴機器人AS-U(以下簡稱:AS-U)是上海廣茂達公司生產的專門面向教育的機器人。它融合了現代工業設計、機械、電子、傳感器、計算機和人工智能等諸多領域的先進技術,學生可以通過使用能力風暴個人機器人接觸到多方面的知識和技術。它提供了一個接口平臺,可供用戶進行擴展,實

13、現二次開發,在軟件,機械,電子等方面均有較強的延拓能力。它采用圖形化交互C語言(簡稱VJC)完成AS-U的軟件開發,具有基于流程圖的編程語言和交互式C語言(簡稱JC),便于用戶自由發揮。開展能力風暴機器人研究活動,旨在進一步加強未成年人思想道德教育,提高廣闊青少年的科學素養,開展自身潛能,引導更多的大中小學生關注科技、熱愛科技、走進科技,涌現出更多的未來科學家和未來工程師。在積極推進根底教育和高等教育改革的過程中滲透科學技術教育,努力培養大中小學學生的實踐能力和創新精神。能力風暴機器人結構AS-UII 是面向教育的新一代智能移動機器人。AS-UII結構參見圖AS-UII有一個功能強大的微處理系

14、統和傳感器系統,而且它還能擴展聽覺、視覺、和觸覺,成為真正意義上的智能機器人。 AS-UII的身體結構主要由控制局部、傳感器局部和執行局部三大局部組成。每一局部介紹如下:1控制局部控制局部是AS-UII機器人的核心組成局部,AS-UII的大腦有記憶功能,這主要由主板上的內存來實現,至于“大腦的分析、判斷、決斷功能那么由主板上的眾多芯片共同完成。圖1.1 AS-UII的內部結構圖能力風暴機器人的硬件人對周圍環境的反響過程主要是感覺大腦思考作出反映,機器人的信息處理流程也是如此。能力風暴智能機器人的配有5種十幾個傳感器,另外還可以根據需要擴展其他傳感器,對環境的感知能力很強。感知環境的能力是產生智

15、能行為的前提,因此能力風暴能產生許多智能性行為。能力風暴通過微控制器(microcontroller)來思維。我們采用的是Motorola公司8位單片機中功能最強、集成功能最全的高檔機種。它的可靠性很高,有程序自下載功能。能力風暴連上串口線就可自動下載程序。計算機硬件決定了機器的極限潛能,去開發這種潛能是軟件的工作。能力風暴機器人為用戶提供了交互式圖形化編程C語言VJC,它使開發能力風暴的高層行為充滿了樂趣。有的低層的驅動軟件與硬件相關太緊密或實時要求很高,需要用匯編語言來處理。能力風暴智能機器人的執行器有:二只高性能直流電機;一只喇叭;一只2*16字符的液晶顯示器。能力風暴機器人的系統結構如

16、下圖。圖 能力風暴機器人的系統結構能力風暴計算機硬件的設計謀略是盡量選擇功能齊全、可靠、周邊設備集成度高的微控制器,價格也需控制,能讓中國的學生以可以承受的價格獲得世界上先進的智能機器人計算平臺。Motorola生產的68HC11,以極少的周邊芯片獲得了齊全的功能,8個模擬口,5個輸入捕捉,3個PWM輸出,16位地址,8位數據總線,串口,以及4個通用I/O。同時,充分考慮到軟件開發工具問題。因為沒有優秀方便的軟件開發工具,硬件只能成為專有系統,而無法成為開發平臺。68HC11的自下載功能,使我們擁有了純軟件開發調試的優秀工具JC。JC即可用于開發高層應用軟件,又便于開發低層驅動,還能交互調試。

17、能力風暴機器人的開發能力(1)軟件開發能力標準C語言子集,簡潔的專業程序員語言支持浮點運算、指針、多維數組;先進的多任務操作系統ASOS;便于學習的圖形化交互式語言;眾多的驅動程序和應用程序代碼,在高手的根底上學習編程。(2)能力風暴機器人AS- U它采用圖形化交互C 語言( 簡稱VJC)完成AS- U的軟件開發, 具有基于流程圖的編程語言和交互式C 語言(簡稱JC),便于用戶自由發揮。(3)機械擴展能力1至32個直流電機;1至4個步進電機交流伺服電機;1至32個繼電器、電繼閥、記憶合金;1至32個燈泡、電熱絲、蜂鳴器。擴展實例:滅火風扇,機械手臂,裝飾彩燈等。(4)電子擴展能力至幾百路位模擬

18、輸入;至幾十路輸出捕捉;路數字式輸出。擴展實例:超聲測距卡,紅外測距卡,路伺服電機驅動卡,路輸入輸出。超聲波測距擴展卡的設計超聲波擴展卡設計思路超聲波簡介超聲波是頻率高于20000赫茲的聲波,它方向性好,穿透能力強,易于獲得較集中的聲能,在水中傳播距離遠,可用于測距,測速,清洗,焊接,碎石、殺菌消毒等。在醫學、軍事、工業、農業上有很多的應用。超聲波因其頻率下限大約等于人的聽覺上限而得名。超聲波測距原理超聲波發生器 為了研究和利用超聲波,人們已經設計和制成了許多超聲波發生器。總體上講,超聲波發生器可以分為兩大類:一類是用電氣方式產生超聲波,一類是用機械方式產生超聲波。電氣方式包括壓電型、磁致伸縮

19、型和電動型等;機械方式有加爾統笛、液哨和氣流旋笛等。它們所產生的超聲波的頻率、功率和聲波特性各不相同,因而用途也各不相同。目前較為常用的是壓電式超聲波發生器。 在本次設計中我們采用市場上較為普遍的型號為TR40-16B的超聲波傳感器。TR40-16B是分體式超聲波傳感器,共分為接收和發射兩局部。其中,標有T的是發射局部,標有R的是接收局部。壓電式超聲波發生器原理 壓電式超聲波發生器實際上是利用壓電晶體的諧振來工作的。它有兩個壓電晶片和一個共振板。當它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片將會發生共振,并帶動共振板振動,便產生超聲波。反之,如果兩電極間未外加電壓,當共振

20、板接收到超聲波時,將壓迫壓電晶片作振動,將機械能轉換為電信號,這時它就成為超聲波接收器了。 假設對發送傳感器內諧振頻率為40KHz的壓電陶瓷片(雙晶振子超聲波傳感器)施加40KHz高頻電壓,那么壓電陶瓷片就根據所加高頻電壓極性伸長與縮短,于是發送40KHz頻率的超聲波,其超聲波以疏密形式傳播(疏密程度可由控制電路調制),并傳給波接收器。接收器是利用壓力傳感器所采用的壓電效應的 HYPERLINK :/baike.baidu /view/437790.htm t _blank 原理,即在壓電元件上施加壓力,使壓電元件發生應變,那么產生一面為“+ 極,另一面為“-極的40KHz正弦電壓。因該高頻電

21、壓幅值較小,故必須進行放大。 超聲波傳感器使得駕駛員可以平安地倒車,其原理是利用探測倒車路徑上或附近存在的任何障礙物,并及時發出警告。所設計的檢測系統可以同時提供聲光并茂的聽覺和視覺警告,其警告表示是探測到了在盲區內障礙物的距離和方向。這樣,在狹窄的地方不管是泊車還是開車,借助倒車障礙報警檢測系統,駕駛員 HYPERLINK :/baike.baidu /view/5310.htm t _blank 心理壓力就會減少,并可以游刃有余地采取必要的動作。超聲波測距原理 超聲波發射器向某一方向發射超聲波,在發射時刻的同時開始計時,超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波

22、就立即停止計時。超聲波在空氣中的傳播速度為340m/s,根據計時器記錄的時間t,就可以計算出發射點距障礙物的距離(s),即:s=340t/2 。這就是所謂的時間差測距法。 超聲波測距的原理是利用超聲波在空氣中的傳播速度為,測量聲波在發射后遇到障礙物反射回來的時間,根據發射和接收的時間差計算出發射點到障礙物的實際距離。由此可見,超聲波測距原理與雷達原理是一樣的。 測距的公式表示為:L=CT 式中L為測量的距離長度;C為超聲波在空氣中的傳播速度;T為測量距離傳播的時間差(T為發射到接收時間數值的一半)。 超聲波測距主要應用于倒車提醒、建筑工地、工業現場等的距離測量,雖然目前的測距量程上能到達百米,

23、但測量的精度往往只能到達厘米數量級。 由于超聲波易于定向發射、方向性好、強度易控制、與被測量物體不需要直接接觸的優點,是作為液體高度測量的理想手段。在精密的液位測量中需要到達毫米級的測量精度,但是目前國內的超聲波測距專用集成電路都是只有厘米級的測量精度。通過分析超聲波測距誤差產生的原因,提高測量時間差到微秒級,以及用LM92溫度傳感器進行聲波傳播速度的補償后,我們設計的高精度超聲波測距儀能到達毫米級的測量精度。 超聲波測距誤差分析 根據超聲波測距公式L=CT,可知測距的誤差是由超聲波的傳播速度誤差和測量距離傳播的時間誤差引起的。時間誤差當要求測距誤差小于1mm時,假設超聲波速度C=340m/s

24、 (20室溫),忽略聲速的傳播誤差。測距時間誤差t(0.001/344) 0.000002907s 即2.907ms。 在超聲波的傳播速度是準確的前提下,測量距離的傳播時間差值精度只要在到達微秒級,就能保證測距誤差小于1mm的誤差。使用的12MHz晶體作時鐘基準的89C51單片機定時器能方便的計數到1s的精度,因此系統采用89C51定時器能保證時間誤差在1mm的測量范圍內。由于本方案設計只用到八位數據傳輸,因此測量誤并主要表達在傳送數據上。5米定時計數器的最大值為72E3H,左移一位后的高八位為E5H,轉化成十進制后是229,測量誤差為5m/229=。課題設計的任務和要求(1) 超聲測距卡能發

25、射超聲波并檢測被障礙物反射回來的聲波,測量出兩者的時間差,然后根據聲音在空氣中傳播的速度,計算出障礙物與機器人之間的距離。在機器人比賽中可對周圍環境進行探測,確定對手所在的方位。(2)Protel格式的電路原理圖和印刷電路板圖各一張。(3)自制的無線通訊模塊一塊。(4)利用VJC1.6編程工具調試通過。方案設計比擬方案一:發射電路與接收電路如下圖。超聲波的發射電路由LM555定時器構成40KHz的多諧振蕩器。 LM555第3引腳輸出端經過功率放大后驅動超聲波傳感器TR40-16,使之發射出超聲波信號。電路工作電壓12V。 圖2.1 方案一的超聲波發射電電路超聲波接收電路超聲波接收電路主要由接收

26、換能器、功率放大電路、比擬及控制等環節組成。9當超聲波遇到障礙物返回時,超聲波接收傳感器TR40-16接收由于回波電壓的數量級在毫伏量級,并且在距離較遠的情況下,回波更弱,因而必須將信號放大。 如圖2所示,設計中采用高速精密放大器 LM318。其帶寬為15M,第1級放大50倍,第2級電路接可變電阻,理論放大倍數50倍這樣兩級放大倍數最大可到達2500倍,能充分滿足 因為較遠距離傳播而變得相當微弱的信號得到足夠增益。然后由L M5 6 7(音頻檢測器芯片)來完成信號的濾波、檢波、選頻等功能。圖2.2 方案一的超聲波接收電路該方案優點:接收電路具有濾波功能,能最大幅度地減小干擾的影響,發射電路由5

27、55定時器上的可調電阻可以很方便地調整發射頻率。該方案缺點:該方案使用集成元件較多,體積較大。方案二:發射電路圖2.3 方案二的發射電路發射電路如下圖。單片機信號經與非門后經過三極管放大,直接傳送到超聲波發射傳感器。圖2.4 方案二的超聲波接收電路接收電路如下圖,接收過來的信號經兩級放大后直傳入單片機。優點:發射接收電路簡單,本錢低,制作方便。缺點:發射頻率不能夠調整,在機器人足球比賽當中假設每個機器人的發射頻率相同,那么容易互相干擾,因此測距可靠性要差一些。接收電路沒有濾波過程,容易形成干擾。綜合兩種方案的優缺點,本設計選擇使用第一種方案。系統硬件結構設計系統主要結構在方案一中超聲測距的電路

28、主要組成如下圖超聲波發射器放大電路超聲波接收器LM555音頻選擇器AT89C51ASBUS圖3.1 系統的主要構成 51系列單片機功能結構特點5l系列單片機中典型芯片(AT89C51)采用40引腳雙列直插封裝(DIP)形式,內部由CPU,4kB的ROM,256B的RAM,2個16b的定時/計數器TO和T1,4個8b的I/O端:P0,P1,P2,P3,一個全雙功串行通信口等組成。特別是該系列單片機片內的Flash可編程、可擦除只讀存儲器(EPROM),使其在實際中有著十分廣泛的用途,在便攜式、省電及特殊信息保存的儀器和系統中更為有用。該系列單片機引腳與封裝如下圖。單片機與一般的微型機比擬有如下優

29、點。體積小由于單片機內部包含了計算機的根本功能部件,能滿足很多應用領域對硬件功能的根本要求。因此單片機組成的就用系統結構簡單,小而全。可靠性高單片機內CPU訪問存儲器、I/O接口的信息傳輸線(即總線)大多數在芯片內部,因此不易受外界的干擾:另一方面,由于單片機體積小,在應用環境比擬差的情況下,容易采取對系統進行電磁屏蔽等措施。所以單片機應用系統的可靠性比一般的微機系統高得多。控制功能強單片機面向控制,它的實時控制功能特別強。CPU可以直接對I/O口進行各種操作,運算速度高,時鐘可達16MHz以上。對實時事件的響應和處理速度快。使用方便由于單片機內部功能強,系統擴展方便,因此應用系統的硬件設計非

30、常簡單,又因為市場上提供多種多樣的單片機開發工具,它們具有很強的軟硬件調試功能和輔助設計功能。性價比高由于單片機功能強,價格廉價,其應用系統的印板小,接插件少,安裝調試簡單等一系列原因,使單片機應用系統的性能價格比高于一般的微機系統。圖3.2 AR89C51的引腳示意圖。5l系列單片機提供以下功能:4 KB存儲器;256B RAM;32條I/O線;2個16b定時/計數器;5個2級中斷源;1個雙向的串行口以及時鐘電路。5l系列單片機為許多控制提供了高度靈活和低本錢的解決方法。充分利用他的片內資源,即可在較少外圍電路的情況下構成功能完善的超聲波測距系統。AT89C51的引腳介紹以下只對在本設計當中

31、就用到的引腳作簡要介紹。RST/VPD(9腳)復位信號時鐘電路工作后芯片內部進行初始復位,復位后P0-P3口輸出高電平,初值07H寫入堆棧指針SP,清0程序計數器PC和其他特殊功能存放器。EA/Vpp(31引腳)片外程序存儲器地址選擇信號假設EA接地,那么不使用內部程序存儲器,不管地址大小,取指時總是訪問外部程序存儲器。本超聲波測距擴展卡并不需要外部存儲器,故該引腳直接接高電平。AT89C51的I/O口AT89C51單片機有4個雙向位I/O口P0-P3,P0為三態雙向口,負載能力為8個LSTTL門電路,P1-P3為準雙向口,負載能力為4個LSTTL門電路。P3口作第二功能口使用時實際上際上是系

32、統具有控制功能的控制線。AT89C51的定時計數系統一般單片機內部都設有定時計數器,因為有的測控系統是按時間間隔定時控制的,如定時對物理過程的采樣等。雖然可以通過延時程序實現定時,但這會降低CPU的工作效率。如果能利用一個可編程的實時時鐘獲得延時定時,就可以提高CPU的工作效率。另外,也有一些測控系統是根據外部信號的計數結果來實現控制的。必須對外部隨機事件進行計數。因此,單片機內部一般都設置可編程的定時計數器,以簡化系統設計,提高系統功能。AT89C51內部有兩個定時計數器,分別稱為定時計數器0和定時計數器1簡稱T0、T1,它們都具備定時計數功能,有4種工作方式可以選擇。在超聲波測距擴展卡的設

33、計中我們需要定時計數器的定時功能,定時功能的工作方式是對芯片內的機器周期計數,或者說計數脈沖來自芯片內部,每來一個機器周期,計數器加1,直到計數器滿,再來一個機器周期,定時計數器全部回0,這就是溢出。每個機器周期的時固定(振為12MHz,機器周期為1s,晶振為6MHz,機器周期為2s)。與定時計數器有關的控制存放器共有4個,分別是TCON,TMOD,IE,IP特殊功能存放器。根據TMOD存放器中的M1和M0位的設定,定時計數器可選擇4種不同的工作方式。根據超聲測距的要求我們選擇工作方式1。方式1是16位計數結構,定時器計數器由TH的全部高8位和TL的全部低8位組成。AT89C51的中斷系統計算

34、機工作時由于系統內外某種原因而發生的隨機事件,計算機必須盡可能快終止正在運行的原程序,轉向相應的處理程序為其效勞,待處理完畢,再返回去執行被中止的原程序,這個過程就是中斷。 引起中斷的設備或原因稱為中斷源。一個計算機系統的中斷源會有多個,用來管理這些中斷的邏輯稱為中斷系統。采用中斷的優點有:分時操作;實時處理;故障處理。AT89C51單片機中有5個中斷源,外部有兩個中斷請求輸入,INT0,INT1。內部有3個中斷請求。定時計數器T0,T1和片內串行口。當系統產生中斷請求時,5個中斷源中的請求標志根子別由特殊功能存放器TCON和SCON的相位來鎖存。LM555定時器介紹圖3.3 LM555定時器

35、內部結構圖LM555定時器的電路和外引線排列如下圖。LM555/LM555C 系列是美國國家半導體公司的時基電路。我國和世界各大集成電路生產商均有同類產品可供選用,是使用極為廣泛的一種通用集成電路。LM555/LM555C 系列功能強大、使用靈活、適用范圍寬,可用來產生時間延遲和多種脈沖信號,被廣泛用于各種電子產品中。 555時基電路有雙極型和CMOS型兩種。LM555/LM555C系列屬于雙極型。優點是輸出功率大,驅動電流達200mA。而另一種CMOS型的優點是功耗低、電源電壓低、輸入阻抗高,但輸出功率要小得多,輸出驅動電流只有幾毫安LM555 時基電路內部由分壓器、比擬器、觸發器、輸出管和

36、放電管等組成,是模擬電路和數字電路的混合體。其中6腳為閥值端(TH),是上比擬器的輸入。2腳為觸發端(TR),是下比擬器的輸入。3腳為輸出端(OUT),有0和1兩種狀態,它的狀態由輸入端所加的電平決定。7腳為放電端(DIS),是內部放電管的輸出,它有懸空和接地兩種狀態,也是由輸入端的狀態決定。4腳為復位端(R),叫上低電平(2/3VCC是高電平1,1/3VCC是高電平1,1/3VCC是低電平0。如果在控制端CV加上控制電壓VC,這時上觸發電平就變成VC值,而下觸發電平那么變成1/2VC。可見改變控制端的控制電壓值可以改變上下觸發電平值。是由LM555定時器組成的多諧振蕩器,Ra與Rb和C是外接

37、元件。接通電源Vcc后,它Ra與Rb對電容C充電,當Uc上升略高于2/3Ucc時,電壓輸出為0。這時內部的三極管導通,電容通過Rb與三極管放電,當Uc下降略低于1/3Vcc時,電壓輸出為1。圖3.4 由LM555定時器構成的雙穩態觸發器電路圖圖3.5 超聲波測距發射電路超聲波發射電路如圖3.5所示。超聲波發射過程中三極管需要接+12V電壓,必須接一個升壓元件,在此我人選擇LT1073作為升壓元件對+5V穩壓電源升壓。圖3.6 12V電壓升壓電路超聲波發射電路如下圖。當需要發射超聲波時,由單片機發送高電平信號,送入4腳RESET端,LM555定時計數器開始工作。LM555定時器輸出的功率還不能夠

38、完全驅動TR4016,因此在輸出端接功率放大電路。本設計采用互補對稱功率放大電路。互補對稱功率放大電路主要由兩個三極管組成,型號分別為9012與9013。在LM555輸出端接一個0.1uF的電容起隔直通交的作用。LM567介紹接收電路當中用到了LM567音頻選擇器。LM567音頻選擇器原理如下圖。圖3.7 LM567內部原理圖。LM567 是一片鎖相環電路,采用8腳雙列直插塑封。其5、6腳外接的電阻和電容決定了內部壓控振蕩器的中心頻率f2,f21/1.1RC。其1、2腳通常分別通過一電容器接地,形成輸出濾波網絡和環路單級低通濾波網絡。2腳所接電容決定鎖相環路的捕捉帶寬:電容值越大,環路帶寬越窄

39、。1腳所接電容的容量應至少是2腳電容的2倍。3腳是輸入端,要求輸入信號25mV。8腳是邏輯輸出端,其內部是一個集電極開路的三極管,允許最大灌電流為100mA。LM567的工作電壓為4.759V,工作頻率從直流到500kHz,靜態工作電流約8mA。LM567的內部電路及詳細工作過程非常復雜,這里僅將其根本功能概述如下:當LM567的3腳輸入幅度25mV、頻率在其帶寬內的信號時,8腳由高電平變成低電平,2腳輸出經頻率/電壓變換的調制信號。如果在器件的2腳輸入音頻信號,那么在5腳輸出受2腳輸入調制信號調制的調頻方波信號。在圖4的電路中我們僅利用了LM567接收到相同頻率的載波信號后8腳電壓由高變低這

40、一特性,來形成對控制對象的控制。圖3.8 由LM567組成的頻率測試電路由LM567組成的頻率測試電路如下圖。音頻選擇器所選取的中心頻率計算公式為(1)頻率誤差范圍為(2)圖3.9 超聲波接收電路超聲波接收電路如下圖。超聲波接收過來的信號十分微弱,必須經過放大才能被LM567接收。在放大過程中,為了調試方便,我們在第二級放大中運用了可變電阻,這樣就可以實現放大倍率的手動調整。因為LM567接收的是正弦信號,正弦電壓變化范圍在正負五伏區間,因此我們選擇供電電壓為正負五負的LM258集成運算放大器。由于LM567采用的是正負五伏電壓供電,所以必須加一個將+5V電壓變為-5V電壓。在此我們采用MAX

41、660將+5V穩壓電源變為-5V電壓。原理如圖310所示。圖3.10 負五伏電壓變換電路MAX660共有八個引腳,其中1腳是內部晶振控制端,當晶振外接時該引腳無用。2腳是外接電容正極的接入端,3腳接地,4腳是外接電容負極的接入端5腳是負電壓輸出端,6是低電壓輸入控制端,在源電壓小于3.5V時,接地,在源電壓大于3.5V 時可以接地也可以懸空。7腳提供晶振頻率輸入,內接一個15pF的電容,可以外部再接一個電容以減小晶振頻率,8腳提供源電壓。硬件擴展總線ASBUS能力風暴控制板設計了ASBUS總線見(圖3.7),簡單類似于ISA和PCI總線。采用堆疊式的ASBUS擴展卡可以方便擴展控制板的功能,它

42、分為ASBUSA和ASBUSB兩局部。機器人主板上ASBUSA和ASBUSB插槽用于插各種功能的擴展卡。ASBUSA和ASBUSB引腳圖和各局部功能如所示:圖3.11 ASBUS信號線ASBUSA和ASBUSB分別有14個信號線。各信號線功能如下:PCO-PC7:數據總線/RESET:復位信號/IRQ:外部中斷輸入腳VCC:+5V電源(負載不要超過300MA),可用于擴展卡的電源輸入端。Vmotor:電機電壓,也即電池電壓,可接較大負載。GND:地IS0-IS3:輸入選擇線0-3OS0-0S3:輸出選擇線0-3PA1-PA2:輸入捕捉口,可用來擴展數字或脈沖輸入的傳感器。PA3:輸出比擬口,已

43、被喇叭、DC3,servo使用,PE5-PE7:模擬輸入口,可用來擴展溫度傳感器、力傳感器等模擬量輸入傳感器。繪制電路板PROTEL介紹及作圖流程在EDA ( Electronic Design Automation) 工具中 ,Protel 系列軟件一直是比擬常用的。Protel99SE是應用于Windows9X/2000/NT操作系統下的EDA設計軟件,采用設計庫管理模式,可以進行聯網設計,具有很強的數據交換能力和開放性及3D模擬功能,是一個32位的設計軟件,可以完成電路原理圖設計,印制電路板設計和可編程邏輯器件設計等工作,可以設計32個信號層,16個電源-地層和16個機加工層。Prote

44、l 99 SESecond Edition在原理圖設計和電路仿真方面增加了許多小的功能,而其最主要的改良表達在電路板設計系統方面。Protel99 SE共分5個模塊,分別是原理圖設計、PCB設計包含信號完整性分析、自動布線器、原理圖混合信號仿真、PLD設計。在本次設計中,即使用了Protel99 SE軟件。下面簡述產生PCB的步驟:(1)新建一SCH文件,繪制整個電機控制電路的電路原理圖(2)在擴展卡原理圖中定義元件的封裝(3)產生網絡表(4)新建一PCB文件,繪制出電路板邊框,裝載元件封裝庫并加載網絡表,各元件封裝圖便會出現在該界面上。元件排列雜亂無章,且各元件之間用預拉線連接。(5)手動調

45、整元件的布局,使各元件擺放盡量整齊美觀。(6)進行布線,由于設計并不復雜,元件較少,可使用自動布線。(7)對文字、個別元件、走線做些調整以及敷銅。(8)檢查核對網絡。(9)SCH及PCB出圖以下圖為最終繪制成的PCB圖:圖3.12 超聲波測距單片機電路圖3.13 超聲波測距發射接收電路超聲波測距擴展卡的軟件調試VJC簡介圖形化交互式C語言(簡稱VJC)是用于能力風暴智能機器人系列產品的軟件開發系統,具有基于流程圖的編程語言和交互式C語言(簡稱JC)。VJC為開發智能機器人工程、程序與算法、教學等提供了簡單而又功能強大的平臺,是全球開創性的具有自主知識產權的產品。在 VJC 中,不僅可以用直觀的

46、流程圖編程,也可以用JC語言編寫更高級的機器人程序。VJC操作簡便,有活潑明快的圖案和簡短的文字說明。可以使用形象化的模塊,由頂向下搭建流程圖,搭建流程圖的同時,動態生成無語法錯誤的JC代碼。流程圖搭建完畢,程序就已經編寫完成,可以立即下載到機器人中運行。JC語言JC語言是交互式C語言(簡稱JC)是用于能力風暴智能機器人的專用開發語言。JC由兩局部組成:編譯環境和能力風暴操作系統ASOS。JC實現了標準C語言的一個子集,它包括控制語句(for,while,if else)、局部變量和全局變量、數組、指針、16位和32位整數以及32位浮點數。 JC不直接編譯生成針對特定處理器的機器代碼,而是先編

47、譯生成基于堆棧虛擬機的偽代碼。然后這種偽代碼由能力風暴操作系統解釋執行。JC這種不尋常的編譯方式有以下優點:(1)解釋執行:允許檢查運行錯誤。例如:JC在運行時,數組下標的檢查。(2)代碼更精簡:偽代碼比機器代碼更簡短。(3)多任務:由于偽代碼是完全基于堆棧的,進程狀態完全由它的堆棧和程序計數器所決定。因此只需要裝載新的堆棧指針和程序計數器就可以方便地實現任務切換。任務切換由操作系統處理,而不是編譯器。JC與標準C比照有以下特點:JC語言是建立在ANSIC標準上的。但是它們有些重要的區別。許多區別是因為JC比標準C更“平安。例如,JC在運行時要檢查數組下標,所以數組不能被變為指針,也不可以進行

48、指針運算。另一些區別是由于JC的運行時間更短更高效。用JC代碼編寫超聲波測距數據接收程序由于VJC中沒有適宜的超聲測距的模塊庫,所以我們只能用JC代碼來編程,編制的程序如下:int sonarranging()int a,b;/*a來存放單片機讀取的8位二進制的數值,b用來存距離,*/a=read(0 x4000);/*將讀取的數據送入a中*/b=a*20;/*距離換算,mm為單位*/return b;/*將b的值做為反回值*/void main()int sonardistance;/*聲明距離變量*/distance=sonarranging;/*調用測距子程序*/printf(Dista

49、nce is:%dmmn,distance);/*輸出距離*/將該軟件下載到能力風暴機器人上,并接好超聲波測距卡,運行程序,即可實現超聲波測距功能。單片機匯編語言調試由于計算機的CPU只能認識和識別二進制代碼,所以又稱為機器碼。一種計算機有幾十種甚至上百種指令,假設都是用二進制碼表示,是很困難的,二進制代碼,如果用十六進制書寫,是很方便的,所以通常用十六進制代碼表示指令碼,但是仍解決不了記憶問題和閱讀問題。為了記憶和閱讀方便,制造廠家對指令系統中每一條指令都給出了符號作指令助記符,這就容易記憶,容易理解,清晰可讀。采用匯編語言的優點匯編語言與高級語言相比具有以下優點:(1)占用的內存單元和使用

50、的CPU資源少;(2)程序簡短,執行速度快;(3)可直接調動計算機的全部資源,并可有效地利用計算機的專有特性;(4)能準確地掌握指令的執行時間,適用于實時控制制系統。根據以上匯編語言的特點,決定用匯編語言來編寫單片機程序。程序流程圖軟件分為兩局部,主程序和中斷效勞程序,如下圖。主程序完成初始化工作、超聲波發射和接收順序的控制。中斷子程序主要完成數據的采集與處理。在程序設計過程中,一些問題必須考慮在內。首先是超聲波發出之后有一段盲區,這是因為在超聲波發出之后的一段時間內,超聲波可能直接傳到了超聲波接收傳感器,假設在這段時間內接收超聲波回波信號,會造成測距錯誤,因此必須設計一段延時程序,在發出超聲

51、波之后的一段時間內不能接收超聲波反射信號。在中斷響應過程中,本方案采用了限幅濾過程,增強系統的抗干擾能力。在能力風暴機器人比賽中,多個機器人假設都發射40KHz的超聲波的話,可能會造成互相串擾。如果采用限幅濾波子程序,將誤差較大的測量結果除去,那么會起到良好的抗干擾效果。本方案設計的最大測量距離是5m。定時計數器的最大計數值是72E3H。結果為15位,因此選用定時計數器的工作方式1(16位定時計數器)。由于向ASBUS發送的數據為八位,因此我們需要將所測數據左移1位,將測量結果的高八位放入一個單元中以傳送到ASBUS上。在主程序最后的延時等待程序當中,我們設特殊功能存放器中的F0為標志位為1,

52、假設檢測到F0為1,那么程序一直等待,假設外部有INT0中斷信號,那么進入中斷子程序,在中斷子程序中將F0設為0,在中斷子程序結束后,系統檢測到F0為1,那么跳轉到測距過程開始。程序中設置R7的意義在于檢測是否是第一次執行中斷程序。在中斷程序當中包含濾波過程,濾波原理是將上次測量值存入30H中,最新測量值存入31H單元中,將兩單元中的數值相減,假設差值的絕對值過大,那么認為測量結果出錯,并將上次的測量值(30H單元中的數)作為本次測量值送到P2口。假設是第一次測量,那么30H單元中并無測量值,必須把第一次測量值送入31H單元的同時送入30H當中。結論由于時間和其它客觀上的原因,此次設計沒有做出

53、實物。但是對設計有一個很好的理論根底。設計的最終結果是使超聲波測距儀能夠產生超聲波,實現超聲波的發送與接收,從而實現利用超聲波方法測量物體間的距離。以數字的形式顯示測量距離。超聲波測距的原理是利用超聲波的發射和接收,根據超聲波傳播的時間來計算出傳播距離。實用的測距方法有兩種,一種是在被測距離的兩端,一端發射,另一端接收的直接波方式,適用于身高計;一種是發射波被物體反射回來后接收的反射波方式,適用于測距儀。此次設計采用反射波方式。超聲波測距儀硬件電路的設計主要包括單片機系統、超聲波發射電路和超聲波檢測接收電路三局部。單片機采用AT89C51555定時器所需的電平信號,利用外中斷0口監測超聲波接收

54、電路輸出的返回信號。超聲波發射電路主要由反相器555定時器及由9012、9013組成的功率放大電路子和超聲波發射換能器TR40-16構成,單片機P1.0端口輸出的高電平信號傳到555定時器后,由555定時器產生40KHz的方波信號,信號經由9012用9013組成的互補對稱功率放大路進行功率放大后傳送到超聲波發射傳感器。壓電式超聲波換能器是利用壓電晶體的諧振來工作的。超聲波換能器內部有兩個壓電晶片和一個換能板。當它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片會發生共振,并帶動共振板振動產生超聲波,這時它就是一個超聲波發生器;反之,如果兩電極問未外加電壓,當共振板接收到超聲波時

55、,將壓迫壓電晶片作振動,將機械能轉換為電信號,這時它就成為超聲波接收換能器。超聲波發射換能器與接收換能器在結構上稍有不同,使用時應分清器件上的標志。超聲波檢測接收電路主要是由集成電路LM567音頻選擇器及信號放大電路構成,LM567是一款音頻選擇的專用芯片,常用于振蕩、調制、解調、和遙控編譯電路,如電力線載波通信、對講機音頻譯碼、遙控器等。LM567音頻選擇器可以檢測的頻率為0.01Hz-500KHz,而本方案采用的超聲波為40KHz,故可以利用它制作超聲波檢測接收電路。實驗證明用LM567接收超聲波,具有很好的靈敏度和較強的抗干擾能力。超聲波測距儀的軟件設計主要由超聲波發生、超聲波接收中斷及

56、濾波程序組成。超聲波測距儀主程序利用外中斷0檢測返回超聲波信號,一旦接收到返回超聲波信號(即INT0引腳出現低電平),立即進入中斷程序。進入中斷后就立即關閉計時器T0停止計時,并將測距時間送入工作存放器區等待處理。如果當計時器溢出時還未檢測到超聲波返回信號,那么定時器T0溢出,單片機重新測距。超聲波測距的算法設計原理為超聲波發生器T在某一時刻發出一個超聲波信號,當這個超聲波遇到被測物體后反射回來,就被超聲波接收器R所接收到。這樣只要計算出從發出超聲波信號到接收到返回信號所用的時間,就可算出超聲波發生器與反射物體的距離。在啟動發射電路的同時啟動單片機內部的定時器T0,利用定時器的計數功能記錄超聲

57、波發射的時間和收到反射波的時間。當收到超聲波反射波時,接收電路輸出端產生一個負跳變,在INT0端產生一個中斷請求信號,單片機響應外部中斷請求,執行外部中斷效勞子程序,讀取時間差,計算距離。 在元件及調制方面,由于采用的電路使用了很多集成電路。外圍元件不是很多,所以調試應該不會太難。一般只要電路焊接無誤,稍加調試應該會正常工作。電路中除集成電路外,對各電子元件也無特別要求。根據測量范圍要求不同,可適當調整接收放大電路局部的可變電阻的大小,以獲得適宜的接收靈敏度和抗干擾能力。假設能將超聲波接收電路用金屬殼屏蔽起來,那么可提高抗干擾能力。致 謝首先,我要感謝我的導師王海峰老師在畢業設計中對我給予的悉

58、心指導和嚴格要求,他平日里工作繁多,但在我畢業設計的每個階段,從查閱資料,到設計草案確實定和修改,中期檢查,后期詳細設計,繪制原理圖和電路板等整個過程中都給予了我悉心的指導。如果沒有導師的催促指導,想要完成這個設計是難以想象的。和王老師的每一次見面,都讓我受益匪淺,學到了很多東西少走了許多彎路。除了敬佩王老師的專業水平外,他的治學嚴謹和科學研究的精神也是我永遠學習的典范,并將積極影響我今后的學習和工作。在我畢業論文寫作期間,各位老師給我提供了種種專業知識上的指導和日常生活上的關心,沒有您們這樣的幫助和關心,我不會這么順利的完成畢業設計,借此時機,向您們表示由衷的感謝。這次畢業設計是對大學四年所

59、學知識的一次總結和運用,是非常難得的一次實踐的時機。通過這次畢業設計,我懂得了工程設計的一般步驟,以及一項設計成果的來之不易。我深深感到自己理論知識的匱乏,實踐能力的欠缺。在這次設計中,我實現了自我提升,明確了今后努力的目標和方向接著,我要感謝和我一起做畢業設計的同學。在畢業設計的短短3個月里,你們給我提出很多珍貴的意見,給了我不少幫助還有工作上的支持,在此也真誠的謝謝你們。同時,我還要感謝我的寢室同學和身邊的朋友,正是在這樣一個團結友愛,相互促進的環境中,在和他們的相互幫助和啟發中,才有我今天的小小收獲。在這設計過程中,我們相互鼓勵,相互支持,一起共度難關。在一起學習工作的日子里,我們收獲了

60、知識和快樂,更加深了我們之間的友誼。這一段不平凡的日子,我將終身銘記。還有許許多多給予我學業上鼓勵和幫助的朋友,在此無法一一列舉,在此也一并表示忠心地感謝!參考文獻1上海廣茂達公司.能力風暴個人機器人操作手冊M,2001.2上海廣茂達公司.能力風暴個人機器人配件使用手冊M,2001.3上海廣茂達公司.VJC1.5開發版使用手冊M.4萬福君,潘松峰等.單片微機原理系統設計與應用M.中國科技大學出版社,2001.5清源科技編著.Protel99SE電路原理與PCB設計及仿真M.機械工業出版社,2007.6剛寒冰,齊秋群.M68HCII原理與應用M.北京理工大學出版社,1993.7周荷琴,吳秀清.微

溫馨提示

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

評論

0/150

提交評論