逢 甲 自動控制工程學系專題製作 專 題 論 文€¦ ·...
TRANSCRIPT
-
逢 甲 大 學 自動控制工程學系專題製作
專 題 論 文
超音波動態測距 Dynamic Distance Detection of Ultrasonic
指導教授:洪三山
學 生:林詩閔、陳柏勳、陳柏宏
中華民國九十四年三月一十六日
-
i
感謝
由於大學四年期間所學有限,加上從未涉獵過關於超音波相關的知識,對我
來說,算是一大挑戰。循序漸進下,尋找並研讀相關資料,漸漸的對超音波有了
進一步的認識與了解,並釐定了往後的研究方向。
過程中碰到了不少挫折,尤其在硬體電路的設計上,花了相當多的時間去解
決。在此,特別感謝專題指導教授 洪三山老師,感謝您平時悉心的指導,讓我
在研習中獲得更多的實務經驗與專業知識。在日常生活中也學習到不少待人處世
的道理,您的諄諄教誨我將會謹記在心,誠心的感謝您。
時光飛逝,大學四年生活很快就告一段落了,不管是專業科目領域的學習,
或是日常生活中的經驗都讓我成長許多。感謝系上所有的老師與助教平日的照顧
與指導,感謝實驗室的學長光強、振達,還有平日一起打拼的同學冠亨、永祥、
清宏、哲煒、哲維、博州、鉅強、鴻巖,在此謹致由衷的感謝你們。
-
ii
中文摘要
本文主要的目的,設計適當的軟硬體來偵測超音波在空氣中飛行時間差,
在已知音速的情況下,經過 8951 內部程式的處理可計算出慢速物體移動的距
離,進而顯示在 LCD 上。
此專題硬體部分主要由發射電路、接收電路兩大部分所構成,而發射電路主
要是由電源驅動無穩態多諧振盪電路和除頻電路並送出電壓透過 NE555 振盪出
連續方波。接收電路包含主動式帶通濾波器、放大電路、比較電路。本文將對各
電路設計跟及實作提供解說並分享實驗心得。
-
iii
Abstract
The main purpose of this paper is that be well to detect and examine
the flight time difference of the air of ultrasonic wave by suitable
software and hardware. In case of already knowing the values of velocity
of sound , By inside procedure of 8951,the distance of the object with
moving slowly can be calculated and then shown on LCD.
This hardware of this designed subject included shooting and
receiving circuit. The shooting circuit would be driven by power. Through
the astable multivibrator sends the voltage to the circuit of NE555 and
oscillate the square wave. The receiving circuit includes active band pass
filter, enlarging circuit and comparing circuit. This paper will offer
the suitable explanation for every designed circuit and experiments. We
will also share our thoughts we learned.
-
iv
目錄
感謝………………………………………………………………………………… i
中文摘要………………………………………………………………………… ii
Abstract………………………………………………………………………… iii
目錄………………………………………………………………………………… iv
圖目錄…………………………………………………………………………… vi
表目錄…………………………………………………………………………… vii
第一章 序論………………………………………………………………………… 1
1.1 前言………………………………………………………………………… 1
1.2 實驗動機…………………………………………………………………… 1
第二章 超音波之理論探討………………………………………………………… 2
2.1 超音波槪論………………………………………………………………… 2
2.2 超音波之性質……………………………………………………………… 2
2.3 超音波之論述……………………………………………………………… 4
2.4 超音波感測器……………………………………………………………… 5
2.4.1 電磁感應型振盪器…………………………………………………… 6
2.4.2 磁伸縮振盪器………………………………………………………… 6
2.4.3 壓電振盪器…………………………………………………………… 6
2.5 超音波感測之配置………………………………………………………… 7
2.5.1 單一發射型…………………………………………………………… 7
2.5.2 對射型………………………………………………………………… 7
2.5.3 同端分離反射型……………………………………………………… 7
2.5.4 整型反接型…………………………………………………………… 7
第三章 硬體系統架構與性質…………………………………………………… 9
3.1 整體結構說明……………………………………………………………… 9
-
v
3.2 動作方塊圖………………………………………………………………… 9
3.3 電源電路…………………………………………………………………… 9
3.3.1 操作原理……………………………………………………………… 9
3.3.2 實驗心得……………………………………………………………… 10
3.4 8951 震盪連續方波………………………………………………………… 10
3.5 NE555 振盪電路…………………………………………………………… 11
3.6 主動式帶通濾波器………………………………………………………… 12
3.6.1 基本原理……………………………………………………………… 12
3.6.2 二階帶通濾波之探討………………………………………………… 12
3.6.3 實驗心得……………………………………………………………… 15
3.7 整流比較電路……………………………………………………………… 16
第四章 軟體之設計……………………………………………………………… 18
4.1 8951 單晶片功能與規劃…………………………………………………… 18
4.2 軟體流程說明……………………………………………………………… 22
4.3 軟體設計理念……………………………………………………………… 23
第五章 結論……………………………………………………………………… 24
參考文獻…………………………………………………………………………… 25
附錄 1主動式帶通濾波器之高頻分析推導……………………………………… 26
附錄 2 Data Sheet………………………………………………………………… 30
附錄 3 軟體程式…………………………………………………………………… 38
-
vi
圖目錄
圖 2.1 人耳可以感受到的頻率範圍與震動強度關係…………………………… 2
圖 2.2 超音波感測器之構造……………………………………………………… 5
圖 3.1 硬體系統方塊流程圖……………………………………………………… 9
圖 3.2 電源電路示意圖…………………………………………………………… 10
圖3.3 NE555振盪電路…………………………………………………………… 11
圖 3.4 從示波器觀察555振盪電路之波形………………………………………11
圖 3.5 BPF 的特性曲線………………………………………………………… 12
圖 3.6 主動式帶通濾波電路與放大電路示意圖……………………………… 16
圖 3.7 比較電路示意圖…………………………………………………………… 17
圖 3.8 從示波器觀察比較電路之示意圖……………………………………… 17
圖 3.9 超音波動態測距實體圖………………………………………………… 17
圖4.1 8951單晶片與LCD模組接腳圖……………………………………………18
圖 4.2 方塊流程圖………………………………………………………………… 22
-
vii
表目錄
表 2.1 超音波在不同介質中前進的速度………………………………………… 3
表 2.2 為基本的壓電效應與壓電逆效應之說明圖……………………………… 4
表 2.3 超音波感測器之檢出方式………………………………………………… 8
表 4.1 8951 接腳功能簡介……………………………………………………… 19
-
1
第一章 序論
1.1 前言:
在講求效率的工作環境上,產業界一直朝著自動化的目標邁進,因此,自動
量測系統扮演著舉足輕重的角色。其中需要用到距離量測的地方甚多,加上超音
波在非破壞性檢測與測距方面運用非常廣泛,因此選用超音波動態測距作為此次
專題題目。
空氣中音波傳送速度與粒子成分、壓力、溫度有關。在攝氏 0度,大氣壓力 1
atm 時,波速為 331.4 m/s,溫度升高時,氣體力子間動能增大,故粒子間的碰撞
距離縮短,於平地 1 atm 下,波速公式為 20 x √T,T 為絕對溫度,或是 331 + 0.6t,
t 為攝氏溫度。由於波動是由中心向四周擴散,遠處傳回來的回音也同樣擴散,對
點發射源而言,距離越遠,所測的振幅與距離平方成反比。若能量取回波傳回之
時間,乘以當時空氣的速度再除以 2,利用此方法,即求得要量測之距離 。
1.2 實驗動機:
在現今社會中們看到了多超音波的應用,舉凡超音波洗衣機、洗碗機、倒車
雷達、魚群探測器…等。超音波(Ultra sonic)是近年來曝光率相當高的名詞,
目前市面上可見的超音波科技產品包羅萬象,舉家電產業(例如洗衣機、冷氣機、
眼鏡清洗機)、金屬製品(金屬熔接)、電子業(IC 製造)與生物、醫療領域(超音
波檢驗、超音波碎石)都能見到這項技術的應用。且其研究領域內涵卻仍然不斷地
在創新與發展中。超音波在現今生活中,佔著一席之地。因此,身為一個 21 世紀
的現代人絕對有必要對超音波有進一步的認識與了解。在此,我們先試圖去瞭解
超音波的特性,進而製作超音波測距器,且對其發射與接收電路提出可用之線路
設計。
-
2
第二章 超音波之理論探討
2.1 超音波概論:
超音波是一種人類聽不到的聲波,而一般人耳可聽見的聲音頻率範圍是從
20Hz~20kHz左右,當音波超過2OkHz時,即稱其為超音波(ultrasonicwave),也就
是超過人類耳朵所能聽見的音波。超音波感測器能檢知聲音能量中較高頻域的信
號,其範圍約在20kHz到數MHz左右。不過超音波通常是指超過20kHz以上的響應。
而這類超音波的感測器都是採用壓電效應的壓電陶瓷元件居多。
圖 2.1 人耳可以感受到的頻率範圍與震動強度關係
2.2 超音波之性質:
超音波藉著不同介質前進,不同介質有不同的前進速度,表2.2為超音波在各
種不同介質中前進的速度,在此為了配合本研究需要,特別要注意的是空氣中的
-
3
速度為0.331x5
10 cm/sec,而超音波的前進速度(C)與波長(λ)和頻率(f)間的關
係可以下式表示:
C = f.λ (2.1)
若以本研究所使用的超音波發射頻率4OkHz為例,利用(2.1)式可求出在空氣
中的波長(λ)為0.85 cm,理想上,超音波發射出去後,會一面擴大,一面直線前
進,只要介質沒有吸收超音波的性質,超音波的強度不論傳到任何地方都不會變
多,不過實際上音波的強度隨著距離的增加而逐漸減弱,其原因有二:一是隨著
距離的增加波面會擴大而造成擴散損失,另一方面,是超音波會被傳播介質吸收
及散射而造成波動能量的損失,一般稱為吸收損失,亦稱衰減。超音波的頻率越
大時,在介質中的衰減情形也越大。可由式(2.1)之公式得知。表2.2超音波在各
種不同介質中前進的速度。
表2.1 超音波在不同介質中前進的速度
媒質 波前進的速度
( )sec/105 cm 密度
( )3/ cmg 音響阻抗
( )Ω
鋁
銅
6.22
5.81
2.65
7.8
1.7
4.76
鎂
銅
4.33
4.62
1.74
8.93
0.926
4.11
鉛
水銀
2.13
1.46
11.4
13.6
2.73
1.93
聚乙烯
水
2.67
1.43
1.1
1.0
0.924
0.143
空氣 0.331 0.0012 0.000042
-
4
2.3 超音波之論述:
超音波大部份的頻率在40kHz左右,這隨著用途和元件的差異而有所不同。它
大部份被用來偵測物體的運動速度,短距離的量測與判定物體之有無等,屬於一
種非接觸型的感測元件。超音波感測器分成發射器和接收器,兩者同樣具有「壓
電效應」對超音波發射器而言稱為「電壓效應」,因為在超音波感測器裡的振動
子,有使用如喇叭般的可動線圈轉換器,例如像電容型麥克風之轉換器,或使用
磁性失真振動子。不過現在大多使用壓電陶瓷振動子,超音波的振動子都具有壓
電效應,當振動子受到外界壓力,如音壓…等,而產生歪變時,則於振動子的兩
側將產生極性不同的電荷,而將電氣信號轉換成壓力的信號去壓縮周圍空氣;而
這些受壓縮的空氣將會壓縮接收器上的壓電材料,並產生「壓電效應」,進而將
壓力信號轉換成電的信號。反之,如果有電壓施加於振動子其上的話,將會有順
應電壓和頻率的機械性的歪變進而產生,及晶體或陶瓷產生變形,而引起振動。
也就是壓電逆效應。
表2.2 為基本的壓電效應與壓電逆效應之說明圖
壓電效應 壓電逆效應
說明圖
特 性 壓電振盪元件的分極方向,由力
與元件端子的出力極性來決定。
壓電振盪元件的分極方向和輸入電
壓的極性有關,而振盪元件的伸縮方
向由外加電壓決定。
用 途 1. 壓電振盪元件。
2. 超音波偵測器。
1. 壓電振盪用。
2. 高頻用振盪元件。
3. 超音波發生器。
-
5
2.4 超音波感測器:
在超音波的系統中,感測器必須具備著產生與接收的兩種功能,而我們常使
用的超音波感測器有兩大類,分別是壓電式和磁伸縮式(magnetostrictive)。其
中壓電式的體積較小,但是效率較高,而磁伸縮式則較為堅固,因此可運用在較
高功率方面。當與超音波的設備相連接時,感測器的功能就是超音波及接收其反
射量,因此,因為連接的方式不同,超音波感測器可為一個發射器或是接收器,
或者是兼具兩種功能。圖 2.3 所示為一般超音波感測器之構造,此振動子稱為雙
壓電振動子(bimorph),此振動子是將兩片壓電陶瓷貼合,分別以極性相反隻電壓
施加其上,則一方將伸展,一方將壓縮。而且,極性反過的話,伸展與收縮兩方
也會同樣反轉過來。而僅有一片壓電元件者稱為單壓電振動子(unimorhp)。
圖2.2 超音波感測器之構造
超音波發射器與接收器其產生與輸出大致可以區分為電磁感應現象、壓電現
象、磁振現象等之應用,都是電能和伸縮(彈性)能之轉換。依其內部架構可分為
下列幾種類型:
-
6
2.4.1 電磁感應型振盪器:
此類的結構類似動圈式喇叭,係利用磁場的方式來達到超音波的發射與接
收。在頻率高時,變換效率就會降低,且其頻率選擇性差,很容易取捨雜音等效
點,但並不受共振頻率所影響;雖然在共振頻率附近之驅動簡單,但近年來已少用
此型振盪器。
2.4.2 磁伸縮振盪器:
鐵酸鹽振盪器,是利用Si、Co、Ca、Cu、Ni、Fe等金屬氧化物的混合粉末,
加熱並加高壓壓縮成型,再將線圈纏繞在材料上,當電流流過線圈時,由於材料
本身受磁場變化而產生共振形成超音波,而共振的方向與磁場垂直。由於鐵酸鹽
為非導體,因此,對高頻電流所產生的磁場,形成渦電流的情形會降低,因而使
得能量轉換的效率大為提高,所以常被使用在工業用途中(如洗淨機、工具機中)
其輸出的能量在6W/cm 2 左右,頻率範圍在28kHz~100kHz左右。
2.4.3 壓電振盪器:
係以水晶或石英晶體、酒石酸鉀鈉鹽(rochellesalt)的晶體,以及鈦酸鋇、
鈦酸鉛等壓電效應元件做出超音波發射和接收器。在液體內或金屬內,MHz之超音
波是使用水晶振盪器。當然,低頻之超音波的發射、接收也是可行的。Rochelle salt
之結晶體並非最近才發現,在聲頻範圍之晶體麥克風、耳機早就使用此晶體,其
感度是良好的。壓電型在音質、耐濕性、耐久性方面是很不好的,因此,超音波
感測器並不使用此型。目前在超音波感測器上用得最多的是石英晶體型振盪器。
以二枚石英晶體貼合在一起,一面伸張,另一面壓縮,使之彎曲做為振盪器,即
所謂的雙壓晶片振盪器。此雙壓晶片振盪器之輸出電壓大、構造簡單、體形小,
且其機械強度夠,溫度特性及濕度特性良好,價位低。其中小型的超音波感測器
用得最多。此型超音波感測器,目前有多家廠商在生產,其共振頻率(中心頻率)
有23~25kHz及40~45kHz兩種標準。
-
7
2.5 超音波感測之配置:
2.5.1 單一發射型:
使用超音波感測器產生 20kHz 以上之某一固定音頻,可應用於塑膠熔接機、
清洗機、水氧機等大功率震動設備;或美容臉部用的超音波儀器及胸部、腹部等
內臟檢查儀器。
2.5.2 對射型:
將超音波發射器和接收器分別放置於不同的地方,若有物體置於兩者之間
時,超音波將被擋住,則接收器將無法收到發射器的信號,便能知道有無物體侵
入。所以對射型可應用於偵測發射及接收端有無物體來確保此一區間安全防護,
也可用於量測此間的距離。
2.5.3 同端分離反射型:
將超音波發射器和接收器放置同一端,超音波發射出去至遇到物體反射回
來,則接收器便能接收到信號。在靜態時可以測量與物體之間距離,在動態時則
可以隨時測量此物體的遠近,所以此方式與接下來介紹的另一種方式可以運用在
倒車雷達或者偵測與旁邊移動的物體距離以側安全,本專題選用此配置方式來量
測動態距離。
2.5.4 整型反接型:
發射和接收為同一包裝之超音波感測元件,與同端分離反射型原理相同,差
別在於單顆﹙包含發射接收端﹚與雙顆﹙發射接收端分開﹚,應用上也大同小異,
只是更為精簡。
-
8
表 2.3 超音波感測器之檢出方式
類型 配置方式 用途 特徵
對射型 1.遙控。
2.物體的檢知。
1.感測器要使用寬頻
帶型。
2.要有發送接收電
路。
3.近距離無法測量。
同端分離
反射型
(獨立式)
1.物體的檢知。
2.距離之量測。
1.檢知感度可以自由
設定,易於設計。
2.需要兩個設置場
所。
整型反
接型(兼
具性)
1.物體的檢知。
2.距離之量測。
1.要有對策來處理T
到R之直接繞射問
題。
2.可以使用T與R的
專用感測器。
3.近距離(以 10cm 以
下)之情形居多。
-
9
第三章 硬體系統架構與性質
3.1 整體結構說明:
硬體部分主要是由 8951 震盪出連續方波、NE555 震盪電路構成發射電路,利
用主動式帶通濾波器、放大電路、整流比較電路構成接收電路。軟體部分主要是
由 8951 震盪出連續方波作負緣觸發啟動 8951,並做計數的動作,之後藉由整流電
路送進脈波停止計數的功能
3.2 動作方塊圖:
圖 3.1 硬體系統方塊流程圖
3.3 電源電路:
3.3.1 操作原理:
此專題採用的電壓值是正負 5 伏特跟正負 12 伏特,市電經由 PT-16 變壓器之
LCD 顯示器
主動式帶
通濾波器
555
振盪電路
超音波
發射器
8951 震盪連
續方波 開關
控制單元
(8951)
整流比較
電路
超音波
接收器
-
10
12V-0V-12V,以降低電壓。再以橋式整流器作出全波整流,後面再接上電容進行
濾波,最後再經由 7812 穩壓 IC 之電壓產生正負 12 伏特之電壓。而正負 12 伏特
主要是供給 OP 作為正負 Vcc,而正負 5 伏特主要是供給於 74LS93 跟 7805 作為
驅動電壓。此專題所使用的變壓器採用的是 PT-16,電流為 1 安培。
3.3.2 實驗心得:
1. 使用電容越大,產生的漣波脈動比較小,所供電的品質也比較好。
2. 供電品質的好壞直接影響系統的穩定性,若系統有雜訊,有可能是漣波太大產
生的結果。
圖 3.2 電源電路示意圖
3.4 使用 8951 震盪連續方波
一開始使用無穩態多諧震盪,由於基本型的無穩態振盪電路在電壓上升時,
會造成圓角,甚至會影響到後來發射電路無法振盪出 40.6kHz 的頻率,即使在電
容跟電阻作了些許的修正,但在示波器上仍可看出上升邊緣的圓角。因此,使用
8951 來震盪出一連續完整方波,duty cycle 為 3.07%,上緣時間為 2ms,負緣時間
為 65ms,使另一顆 8951 作負緣觸發,同時方波也送入 NE555 進行振盪。
-
11
3.5 NE555 震盪電路:
因為選用的超音波發射接收器為 40.6kHz,因此,調整 R1,R2兩顆精密可變
電阻的大小,以利振盪出所符合的頻率,另外,為了提升發射的功率,我們使用
了 NPN 的 BJT 來作共集極放大,產生放大電流提供推動超音波的發射器的功率。
設計電路時,我們使用 R1 = 220Ω跟 R2 = 500Ω使 NE555 震盪出 40.6kHz 的頻
率並將振盪頻率送進超音波發射器。
圖 3.3 NE555 振盪電路
圖 3.4 從示波器觀察 555 振盪電路之波形
-
12
3.6 主動式帶通濾波器:
3.6.1 基本原理:
音波藉由空氣傳送,超音波接收器所接收到的回傳訊號通常非常微弱,通常
量測到訊號大小,從示波器觀測到的電壓值大概只有幾十毫伏,如果直接經由放
大電路來放大,訊號放大時會一併將雜訊放大。為了避免不必要的雜訊干擾,在
經由放大電路前,必須先透過濾波電路留下原先我們所期望之振盪電路之頻率。
此專題採用的是主動式帶通濾波器,此類型之濾波器為放大元件及適當的調諧元
件所構成的電路裝置, 一般為電阻及電容之組合, 目的是用以通過某一段頻率而
使其餘頻率產生衰減的情形。另外主動式濾波器有下列兩項特性:
1.主動濾波器的dc增益可調整。
2.主動濾波器輸出阻抗小到可以忽略,故OP的作用像是驅動輸出端的電壓源。
另外主動式濾波器也有放大的功能,實驗過程中,為了求得更高的放大倍率,
通常我們會主動式帶通濾波器後面再加一級放大電路作為調整。
3.6.2 二階帶通濾波之探討:
帶通濾波器有如圖3.5的特性曲線:
圖 3.5 BPF 的特性曲線
-
13
12 ff − ......帶通頻寬
BWf
Q pp ≡ ......特性常數
( )( )22
p
pp
p SQ
S
SBPFSH
ωω
ω
+⎟⎟⎠
⎞⎜⎜⎝
⎛+
= ........................................ ( )1
212 fff
P×= ......幾何平均關係
公式推導:
(一)V1:KCL 定理
i 1 +i 2 +i 3 +i 4 =0......[2]
( )01 VV − SC 4 +3
1
RV +
1
1
RVV i− + 021 =SCV
→1
041213
411
RV
VSCVSCRR
SC i=−⎟⎟⎠
⎞⎜⎜⎝
⎛+++ ............................(2)
(二)A:KCL 定理
065 =+ ii
05
021 =+ R
VSCV
25
01 SCR
VV −=⇒ ..................................................... (3)
(3)帶入(2)
( ) 3310425
031231314 RVRRVSCSCR
VRRSCRRRRSC i=−+++−⇒
( ) iVSCRRVRRRCCSVRRSCRRRRSC 2530531422031431314 =−+++⇒
31314531422
2530
)( RRSRRCRRRCCSSCRR
VV
i +++−
=⇒
42531
425422
41
/)11(]/)[(
)1(
CCRRR
CCRCCSS
CRS
++++
−= .................... )4(
-
14
比較(1)(4)得知
41
1CRP
=ω ,其中的“-"號代表反向
( )( )
425
42
242531425
312
//1
11
CCRCC
Q
CCRRRCCRRR
p
p
+=
=⎟⎟⎠
⎞⎜⎜⎝
⎛+
=
ω
ω.............................. ( )5
當 Pff = 的時候,帶通濾波器,電壓增益的大小 G:
( )⎟⎟⎠
⎞⎜⎜⎝
⎛+
==
2
41
5
425
42
41
1
1
CCR
R
CCRCC
CRG ....................................... ( )6
從 Pω ,2
Pω ,P
P
Qω
的式子中,能夠解到 1R , 3R , 5R 的值,分別為:
p
p
GCQ
Rω4
1 = , ( ) ppp
CGQ
QR
ω423 2 −
= , p
p
CQ
Rω4
5
2=
若 CCC == 42 ,則1
5
2RCR
G = ,即 GRR 15 2= ,則
GCfQ
Rp
p
π21= , ( )GQCf
QR
pp
p
−= 23 22π
, Cf
QR
p
p
π=5
由 3R 的公式中,必須 0)2(2 >−GQP ,所以 GQP >
22
2GQP > ,圖 3.5 主動式帶通濾波之條件。.............................. ( )7
因 G 的公式並沒有用到 3R ,當只有改變 3R 時,有下列之影響:
(1)得到新的中心頻率 PNf 。
(2)當 PNff = 時,G並沒有改變。
(3)BW 頻寬也沒有改變,則 PQ 勢必會改變。
-
15
也就是說當所設計的主動式帶通濾波器中心頻率 Pf 不正確的時候,可以調整
3R 的大小,已得到正確的 Pf
2
33 ⎟⎟⎠
⎞⎜⎜⎝
⎛=
PN
PN f
fRR ,中心頻率調整的依據.................................. ( )8
3.6.3 實驗心得:
1.此部份在接收電路中扮演著重要的地位,設計目的主要是希望能有效的濾除雜
訊,期望能得到精確的中心頻率訊號及其放大增益值。因為超音波屬於 40.6kHz
的高頻聲波,如果使用一般的 741 當 OP 的話,輸出可能會造成失真。所以在此
使用 LF356 當作 OP 並以 R、C構成的 Feedback Loop 組成。
2.BPF 中的電容器不要使用太大,由上述之公式得知,若電容值太大, R1、R3、
R5 值勢必相對縮小,而在挑選電阻的過程中,如果使用接近的電阻值,將會造成
誤差而影響到中心頻率的大小及增益值。
3. 頻寬不要設太小,此專題之頻寬設為 4kHz,由於系統參數會因為溫度及元件老
化而改變原有參數值,較大的頻寬可處理改變後的中心頻率,但是頻寬值亦不
宜太大,避免將雜訊也一併放大。
-
16
圖3.6 主動式帶通濾波電路示意圖
3.7 整流比較電路:
我們使用 LM339 這個 IC 來當此電路的比較器,如圖所示,這顆 IC 內部有 4
個比較器,當我們從 IN1(+)輸入一個波形,IN1(-)接地,不管波型為何,只要在
電壓輸出部分大於 0V,則該部份波型通過比較器輸出為上升的方波,且輸出之電
壓之最大值為尚未通過比較器之前任一波型之最高電壓。反之,波形小於等於 0V
時,則該部分為方波之下降波,最後在 OUT1 輸出一個方波。
學生一開始認為只要LM339接上電源與接地,及IN1(+)輸入訊號,IN1(-)接地
就可以做比較電路的方法,可是實驗都達不到預期的結果;後來發現到,原來輸出
端(OUT1)還要接上外部電源才可,最後終於達到所期望的數據。
-
17
圖 3.7 比較電路示意圖
圖 3.8 從示波器觀察比較電路之示意圖
圖 3.9 超音波動態測距實體圖
-
18
第四章 軟體之設計
4.1 8951 單晶片功能與規劃:
8951 單晶片特徵如下:
1.為控制應用所設計的 8 位元 CPU。
2.具有布林代數的運算指令。
3.有 32 條(4 個 Port)雙向且每條都可以被單獨定址的 I/O 。
4.內部有 128Byte 可供儲存資料記憶體 RAM (8052 : 256 Bytes)。
5.內部有兩個 16 位元 Timer/Counter (8052 有 3 個)。
6.有全多工傳輸信號 UART (串列埠) 。
7.5 個中斷源,有兩層優先權順序之中斷結構。
8.內部有 4K 位元組的程式記憶體。
9.內部有時脈振盪器線路。
10.程式記憶體可擴充至 64K 位元組。
11.資料記憶體可擴充至 64K 位元組。
圖 4.1 89C51 單晶片與 LCD 模組接腳圖
-
19
表 4.1 8951 接腳功能簡介
腳位 接腳名稱 功能簡介
40 VDD 正電源輸入腳,接+5V
20 VSS 系統接地
39~32 P0.0~P0.7
Port0:埠 0是一個開汲極(Open Drain)雙向
I/O 埠。在存取外部記憶體時,埠 0具有資料
匯流排(Data Bus)及低八位元位址線(A0~A7)
的多重功能。埠 0在當成一般 I/O 使用時必須
加上外部提升電路。
1~8 P1.0~P1.7 Port1:埠 1是具有內部提升電路的雙向 I/O 埠
21~28 P2.0~P2.7
Port2:埠2是具有內部提升電路的雙向I/O埠。
在存取外部記憶體時,埠 2是當作高八位元的
位址線(A8~A15)
10~17 P3.0~P3.7
Port3:埠2是具有內部提升電路的雙向I/O埠。
此外,埠 3的每支接腳都還有另一項的特殊功
能,如下:
腳位 接腳名稱 接腳功能
10 P3.0 RXD:串列輸入
11 P3.1 RXD:串列輸出
12 P3.2 /INT0:外部中斷輸入
13 P3.3 /INT1:外部中斷輸入
14 P3.4 T0:計時器 0外部輸入
15 P3.5 T1:計時器 1外部輸入
-
20
16 P3.6 /WR:外部資料記憶體寫入
激發信號
17 P3.7 /RD:外部資料記憶體讀取
激發信號
9 RST
重置信號輸入端。在震盪器工作時
將此腳保持在"Hi"兩個機械週期,可將 CPU 重
置
29 /PSEN
程式激發致能,可輸出外部程式記憶體的讀取
信號。每個機械週期動作兩次,再讀取內部程
式記憶體時,/PSEN 不動作,在存取外部資料
記憶體時,/PSEN 會跳過兩個脈波才動作
31 /EA
外部存取致能。當/EA 腳為"Lo"時,CPU 讀取外
部程式記憶體。當/EA 腳為"Hi"時,讀取內部
的程式記憶體
18
19
XTAL1
XTAL2
反相震盪放大器的輸出端
反相震盪放大器的輸入端
PORT 0 ( P0.0 - P0.7 )
(1)為 8 位元開汲極(OPEN DRAIN)雙向 I/O 埠。
(2)外部擴充記憶體時,當做資料匯流排(D0-D7)。
(3)外部擴充記憶體時,當做位址匯流排(A0-A7)。
(4)可做一般 I/O 使用內部無提升電阻,當作輸入輸出時應在外部接提升電阻。
(5)當做為開汲極輸出時可推動 8 個 LS TTL 負載。
(6)當埠 0 全部被寫入為 l 時成為浮接狀態,有如高阻抗輸出端。
-
21
(7)對外部記憶體存取期間埠 0 為多工使用,同時做為位址或資料匯流排。
(8)在做程式驗證時,埠 0 送出燒錄內部記憶體的程式碼,但需外加提升電阻。
PORT 1 ( P1.0 - P1.7 )
(1)為 8 位元具內部提升的雙向 I/O 埠,其輸出緩衝閘可推動 4 個 LS TTL 負載。
(2)當埠 l 全部被寫入為 1 時,輸入電位會被內部提升至高電位,此時可做為輸
入端使用。
(3)埠 1 當輸入端時,由於內部提升之故,當接腳被外部電路拉至低電位時將有
電流流出。
(4)8052 中,P1.0 可當為定時器 2 的外部輸入 T2;P1.1 當為定時器 2 在" 捕
取 "模式下的輸入端 T2EX。
PORT 2 ( P2.0 - P2.7 )
(1)埠 2 為 8 位元具內部提升的雙向 I/O 埠,其輸出緩衝閘可推動 4個 LS TTL
負載。
(2)當使用 16 位元位址對外部記憶體存取時,輸出高位元組的位址。
(3)當 8751H 進行燒錄及驗證或 8051H 在進行程式驗證時,埠 2 用於接收高位
元組位址及控制位元 P2.7。
-
22
4.2 軟體流程說明:
一開始使用 8951,振盪出連續方波。利用負緣觸發啟動 8951,並開始做計數
的工作。另一方面,當超音波接收端收到回傳的訊號時,經過濾波、放大及比較
電路後,得到另一連續的方波訊號,利用相同的原理,因為負緣觸發而中斷計數,
透過 8951 內部程式計算出所量測之距離,再經過十進位的換算顯示在 LCD 上,如
圖 4.2。
否(溢位中斷)
是
圖 4.2 方塊流程圖
利用89C51振盪出連續方波
負緣觸發 89C51
TIMER0 開始計時
接收端收到訊號?
中斷計時
取出計時值=△T
利用內部程式計算距離
顯示在 LCD
-
23
4.3 軟體設計理念:
因為超音波發射接受器屬於同端分離反射型,所以經由 8951 所計算出的距離
必須除以 2才是正確的量測數據。由於實驗目標是動態測距,所以基本上是利用
靜態的原理,配合 8951 所振盪出的連續方波做為更新的方法。此外,在 8951 振
盪連續方波時就得考慮實驗目標所要求得之的最大距離。一開始由 8951 內部的
Timer 開始計時,直到接收端收到訊號,中斷 8951。在求時間差的過程中,我們
先量測超音波發射端和牆壁最短距離與最長距離之反應時間,在實際量測時所量
到的時間先減掉最短距離之反應時間,之後在做計算以求得更精準的數據;超過
最長距離之反應時間則讓 8951 判定錯誤直接中斷。
-
24
第五章 結論
本次專題朝向動態測距的方向努力,且希望將量測距離範圍增加,並能更加
準確。而在製作此專題的過程中,最讓我們感到興趣的在於,能夠整合目前的資
源並加以運用。從超音波的發射電路,接收電路,到目前的程式設計中,所運用
的知識和能力,大部分都是從大一至大三所奠定下的基礎和一些基本的理論。如
無穩態多諧振盪、除頻電路、555 振盪電路、主動式帶通濾波電路、放大電路和比
較電路,更是廣泛的運用到 OP 的特性,以 OP 的基本理論作為基礎並做延伸的應
用。其它像二極體、BJT、和 8951 單晶片微處理機的內容,也能夠藉由此次專題
實做的機會,更加了解其基本理論與使用方法。感覺就像是把大一至大三所學習
到的知識,加以複習整合一次。
然而也因此感受到理論基礎一定要扎實,在未來的實作方面才能更為順暢。
在製作硬體方面,或許在理論上是一回事,但是實際做起來有可能並不是你預期
的結果;另外,像是目前的進度,在作硬體與軟體介面做接合並顯示其數據的過
程時,也碰到了許多的困難。除此之外,還得藉由查閱各類元件的規格表,熟悉
元件的功能與操作範圍,這樣一來,才能在發生問題時,尋找問題的所在並加以
修正與改良。
-
25
參考文獻
[1] 盧明智,黃敏祥,OP Amp 應用+實驗模擬,全華科技股份有限公司,2003
[2] 蔡朝洋,電子學實驗(修定版),全華科技股份有限公司,2002
[3] 沈鴻哲,金明浩,林啓元,數位邏輯實做與系統設計,全華科技股份有限公
司,2000
[4] 蔡朝洋,單晶片微電腦8051/8951原理與應用,全華科技股份有限公司,2002
[5] 鄭振東,感測器電路設計手冊,全華科技股份有限公司,1988
[6] 孫清華,感測器應用電路的設計與製作,全華科技股份有限公司,1992
[7] 盧明智、盧鵬任,感測器應用與線路分析,全華科技,1996
[8] 鄭薇芬,改良式超音波頭控搖桿系統之研製,逢甲大學自動控制工程學系碩
士論文,2004
[9] 吳明貴,超音波三維頭控人機介面系統之研製,逢甲大學自動控制工程學系
碩士論文,2003
[10] 陳賢能,蔡政郁,小距離超音波動態測距,逢甲大學自動控制工程學系學士
論文,2000
[11] 蔡瑞崇,陳威均,林麗亞,超音波測距應用於模型車安全距離保持之設計,
逢甲大學自動控制工程學系學士論文,2000
[12] 鄧錦城,8051 單晶片實做寶典,益眾資訊,2000
-
26
附錄1
主動式帶通濾波器之高頻分析推導
由電路圖可得:
10
0
3
00
0
;i sCAV
ViR
VAV
x ⎟⎟⎠
⎞⎜⎜⎝
⎛+=
−−
=
經由上式可得到輸出電壓和所設節點電壓的關係,如式(A-1)所示:
⎟⎟⎠
⎞⎜⎜⎝
⎛ ++−=
⎟⎟⎠
⎞⎜⎜⎝
⎛ +−=+
031
310
30
000
0
11
1
1
ARsCRsCA
VV
RAA
VVAsCVsC
x
x
(A-1)
透過所設的節點電壓,依據克希荷夫電流定律可得式(A-2):
011
2
0
1
0
0
21
=−
++
++−
sC
VV
sC
AV
V
RV
RVV x
xxix
(A-2)
-
27
將(A-2)式整理之後可得式(A-3):
( ) ( )
( ) ix
xxxix
xxxix
VRVRRsCA
RRsCVRRRRsCRRsC
VRRsCVRRsCAV
RRsCVRRsCVRVRVR
VVRRsCAV
VRRsCVRVVR
202120
21121212211
02122120
0211211122
02120
021112
0
0
=⎟⎟⎠
⎞⎜⎜⎝
⎛−++++
=−++++−
=−+⎟⎟⎠
⎞⎜⎜⎝
⎛+++−
(A-3)
將(A-1)式帶入(A-3)式經整理化簡後可得到主動式帶通濾波電路的轉移函函
數(A0≠∞)如(A-4)式所示:
( ) ( )iVRVRRsCA
RRsCARsC
RsCRRARRARC
RRRCsCARRCAR
RRRsCARR20212
0
211
031
3121021
031
321210212
03
3211021 −=+−+++
++
++
(A-4)
經整理可得式(A-5):
( ) ( )iVRARsC
RRRCCsARsC
RRRCsARsC
RsCRRARRARsC
RRRCCsARRsCARsC
RRRCsARRsC2
031
321212
031
3212
12
031
3121021
031
321212
0212
031
3212
12
0211 −=+−+++
++
++
(A-5)
經由整理並令A0微A(s)可得(A-6)式:
( )( )
( )
( )( ) ( ) ( ) ( ) ( )sARRRR
RRC
RRC
sACsACssARCCs
sARRsCRRsV
sV
i
21
21
1
31
2
3121321
2
321
21
0
1
1+
+⎟⎟⎠
⎞⎜⎜⎝
⎛+++++
−×=
(A-6)
-
28
其中, ( )
b
sA
sA
ω+
=1
0 :A0為直流增益、ωb為3dB頻率,將之代入式(A-6)可得式(A-7):
( )( )
( )( ) BRRCRRCARRRCCRRRCCsRRCCs
sARRsCsVsV
bbi +++++−
=32131103212132121
23121
33210
ωω
(A-7)
其中
( ) ( ) bbbbb ARRsRRCRRCARRCARRCB ωωωωω 02132131102120211 +++++=
若考慮開迴路增益為無限大(A0=∞)且與頻率無關時,轉移函數則如式(A-8)
所示:
( )( ) ( ) ( )21212211321213
3210
RRRRCRRCsRRRCCsRRsC
sVsV
i ++++−
=
( )( )
⎟⎟⎠
⎞⎜⎜⎝
⎛ ++⎟⎟
⎠
⎞⎜⎜⎝
⎛++
−=
32121
21
3132
2
220
11RRRCC
RRRCRC
ss
RCs
sVsV
i
(A-8)
在此設定C1=C2=C,並將(A-8)式與主動式二階帶通濾波器之轉移函數標準式如
式(A-9)比較:
( )2
002
0
ωωω
++=
sQ
s
SsG
(A-9)
然吾人所需之帶通濾波器應為如(A-10)式所示:
(A-10)
( ) Ks
Qs
SsG
20
02
0
ωωω
++=
(A-10)
-
29
其中,|G(jω0)|≣G=Q×K,經整理化簡及比較之後,可得到電路上所有電阻的
公式:
QRR
QGQ
RR
GQR
R 030
20
1 2;2
; =
⎟⎟⎠
⎞⎜⎜⎝
⎛−
==
其中:
( )BWf
QCfC
RR
RjGG 0
00
1
30 ;2
11;2
=====πω
ω
-
30
附錄 2
Data Sheet
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
附錄3
軟體程式
ORG 0000H
AJMP MAINSET ;跳至 MAINSET
ORG 0003H ;中斷計時
CLR TR0
CLR EX0
SETB 04H
RETI
ORG 000BH ;溢位中斷
CLR EX0
CLR TR0
SETB 05H
RETI
COM_1:
CLR C ;清除溢位,把計時值代入運算
MOV A,TL0
SUBB A,#D6H
MOV 30H,A
CLR A
MOV A,TH0
SUBB A,#01H
MOV 31H,A
CLR A
ACALL HEX2BCD
-
39
ACALL COM_2 ;都普勒
ACALL CNTDSP
ACALL LABLE1
ACALL DELAY1
CLR EX0
AJMP MAINSET
DELAY1: ;延遲
MOV R4,#10
DELAY2:
MOV R6,#125
DLL:
MOV R7,#100
MOV R5,#100
DJNZ R7,$
DJNZ R5,$
DJNZ R6,DLL
DJNZ R4,DELAY2
RET
HEX2BCD:
MOV R0,#30H
MOV R1,#40H
MOV R3,#16 ;16 位元之二進制(hex)數
CLR A
MOV R2,#3 ;3 位元組之十進制(bcd)數
LOOP1:
MOV @R1,A ;清除 bcd
-
40
INC R1
DJNZ R2,LOOP1
NEXTXD:
MOV R0,#30H
MOV R2,#2 ;2 位元組之二進制(hex)數
LOOP2:
MOV A,@R0
RLC A ;n
-
41
MOV 53H,#00
MOV 54H,#00
MOV 55H,#00
MOV 56H,#00
MOV 57H,#00
ACALL MATH_1
ACALL MATH_2
ACALL MATH_3
ACALL ADDALL
RET
MATH_1: ;個位數
MOV R0,#00
MOV R0,#50H
MOV R6,#16
ACALL ADDM1
ACALL ADDM1_1
RET
ADDM1:
MOV A,40H
ADD A,40H
DA A
MOV @R0,A
INC R0
MOV A,#00
ADDC A,@R0
DA A
-
42
MOV @R0,A
CLR C
RET
ADDM1_1:
MOV R0,#50H
MOV A,40H
ADD A,@R0
DA A
MOV @R0,A
INC R0
MOV A,#00
ADDC A,@R0
DA A
MOV @R0,A
CLR C
DJNZ R6,ADDM1_1
RET
MATH_2: ;百位數
MOV R0,#00
MOV R0,#52H
MOV R6,#16
ACALL ADDM2
ACALL ADDM2_1
RET
ADDM2:
MOV A,41H
-
43
ADD A,41H
DA A
MOV @R0,A
INC R0
MOV A,#00
ADDC A,@R0
DA A
MOV @R0,A
CLR C
RET
ADDM2_1:
MOV R0,#52H
MOV A,41H
ADD A,@R0
DA A
MOV @R0,A
INC R0
MOV A,#00
ADDC A,@R0
DA A
MOV @R0,A
CLR C
DJNZ R6,ADDM2_1
RET
MATH_3: ;萬位數
MOV R0,#00
-
44
MOV R0,#54H
MOV R6,#16
ACALL ADDM3
ACALL ADDM3_1
RET
ADDM3:
MOV A,42H
ADD A,42H
DA A
MOV @R0,A
INC R0
MOV A,#00
ADDC A,@R0
DA A
MOV @R0,A
CLR C
RET
ADDM3_1:
MOV R0,#54H
MOV A,42H
ADD A,@R0
DA A
MOV @R0,A
INC R0
MOV A,#00
ADDC A,@R0
-
45
DA A
MOV @R0,A
CLR C
DJNZ R6,ADDM3_1
RET
ADDALL: MOV 45H,50H
MOV A,51H
ADD A,52H
DA A
MOV 46H,A
MOV A,53H
ADD A,54H
DA A
MOV 47H,A
MOV 48H,55H
RET
MAINSET:
ACALL INIT ;設定 LCD 模組
ACALL LINE1 ;在 LCD 的第一行顯示
MOV DPTR,#TAB1
ACALL DISPLAY
ACALL LINE2 ;在 LCD 的第二行顯示
MOV DPTR,#TAB2
ACALL DISPLAY
JB 11H,MAIN011
AJMP MAIN
-
46
MAIN011:
ACALL DELAY1
AJMP MAIN01
INIT: ;設定 LCD 模組的初始狀態
ACALL DELAY
MOV A,#38H
ACALL WRINS
MOV A,#38H
ACALL WRINS
MOV A,#38H
ACALL WRINS
MOV A,#38H
ACALL WRINS
MOV A,#08H
ACALL WRINS
MOV A,#01H
ACALL WRINS
MOV A,#06H
ACALL WRINS
MOV A,#0CH
ACALL WRINS
RET
DISPLAY: ;將字串的字元碼送至 LCD 顯示
MOV R7,#00H
NEXT:
MOV A,R7
-
47
MOVC A,@A+DPTR
CJNE A,#10H,DSP
RET
DSP:
ACALL WRDATA
INC R7
AJMP NEXT
LINE1: ;設定 LCD 起始位置第一行第 1個字
MOV A,#10000000B
ACALL WRINS
RET
LINE2: ;設定 LCD 起始位置第二行第 1個字
MOV A,#11000000B
ACALL WRINS
RET
WRINS: ;把指令碼送入 LCD 模組
MOV P3,#00011111B
NOP
SETB P3.5
MOV P1,A
NOP
CLR P3.5
ACALL DLY1
RET
WRDATA: ;把資料送入 LCD 模組
MOV P3,#10011111B
-
48
NOP
SETB P3.5
MOV P1,A
NOP
CLR P3.5
ACALL DLY2
RET
DELAY: ;延遲
MOV R6,#100
DL:
MOV R7,#200
DJNZ R7,$
DJNZ R6,DL
RET
DLY1: ;延遲
MOV R6,#20
DL1:
MOV R7,#200
DJNZ R7,$
DJNZ R6,DL1
RET
DLY2: ;延遲
MOV R6,#80
DJNZ R6,$
RET
LABLE1: ;再第二行第 15 個字起顯示 mm
-
49
ACALL L0208
MOV A,#2EH
ACALL WRDATA
ACALL L0215
MOV A,#'m'
ACALL WRDATA
MOV A,#'m'
ACALL WRDATA
RET
CNTDSP: ;顯示各計數器的內容
ACALL ASCII_1
ACALL L0209
MOV R0,#31H
ACALL DSPX1
ACALL ASCII_2
ACALL L0202
MOV R0,#35H
ACALL DSPX2
RET
ASCII_1: ;計數器從 45H 開始
MOV R0,#45H
MOV R1,#30H
MOV R2,#01 ;計數器共 1 BYTE
L1P1:
MOV A,@R0
-
50
PUSH ACC
ANL A,#00001111B
ADD A,#30H
MOV @R1,A
POP ACC
SWAP A
ANL A,#00001111B
ADD A,#30H
INC R1
MOV @R1,A
INC R0
INC R1
DJNZ R2,L1P1
RET
DSPX1:
MOV R1,#02
L1P4:
MOV A,@R0
ACALL WRDATA
DEC R0
DJNZ R1,L1P4
RET
ASCII_2: ;計數器從 46H 開始
MOV R0,#46H
MOV R1,#30H
MOV R2,#03 ;計數器共 3 BYTE
-
51
L2P1:
MOV A,@R0
PUSH ACC
ANL A,#00001111B
ADD A,#30H
MOV @R1,A
POP ACC
SWAP A
ANL A,#00001111B
ADD A,#30H
INC R1
MOV @R1,A
INC R0
INC R1
DJNZ R2,L2P1
RET
DSPX2:
MOV R1,#06
L2P4:
MOV A,@R0
ACALL WRDATA
DEC R0
DJNZ R1,L2P4
RET
L0202: ;顯示起始位置第二行第 2個字
MOV A,#11000001B
-
52
ACALL WRINS
RET
L0208: ;顯示起始位置第二行第 8個字
MOV A,#11000111B
ACALL WRINS
RET
L0209: ;顯示起始位置第二行第 9個字
MOV A,#11001000B
ACALL WRINS
RET
L0215: ;顯示起始位置第二行第 15 個字
MOV A,#11001110B
ACALL WRINS
RET
TAB1: ;欲顯示字元
DB 'The Distance is '
DB 10H
TAB2:
DB ' mm'
DB 10H
MAIN: ;前置動作,設定計時/計數器 0模式 1
SETB EA
SETB ET0
MOV TMOD,#00000001B
MAIN01: ;P3.4 為開始,P3.2 為停止
CLR 11H
-
53
SETB P3.2
SETB P3.4
MOV TH0,#00H
MOV TL0,#00H
ACALL DLY_1
KKCITY:
JNB P3.4,KKCITY ;開始計時否?
SETB TR0
CLR IE0
SETB EX0
SETB IT0
LOOP4:
JNB 04H,LOOP5
CLR 04H
SETB 11H
AJMP COM_1
LOOP5:
JNB 05H,LOOP4
CLR 05H
SETB 11H
LOOOP3:
AJMP MAIN01
DLY_1: ;延遲
MOV R3,#5
DLY_2:
MOV R4,#10
-
54
DJNZ R4,$
DJNZ R3,DLY_2
RET
DEL_1:
MOV R6,#1
DEL_2:
MOV R7,#13
DJNZ R7,$
DJNZ R6,DEL_2
RET
END