周游宇 林朝勇



摘? 要:金屬探測器是日常生活中專門用于探測金屬物質的儀器,文章對常規金屬探測器進行研究后設計了一款基于STC89C52RC單片機的智能金屬探測器,將振蕩電路產生的正弦波經脈沖轉換電路送到單片機檢測頻率的變化。當線圈位置出現金屬物質時,由于電磁感應原理,線圈Q值發生改變,原有振蕩頻率會發生變化,單片機檢測到頻率變化后報警,能在安檢、工業生產等領域得到廣泛應用。
關鍵詞:單片機;金屬探測器;電磁感應
中圖分類號:TH89;TP368.1? ? ? ?文獻標識碼:A 文章編號:2096-4706(2020)20-0054-03
Fabrication of Metal Detector Based on STC89C52 Single-Chip Microcomputer
ZHOU Youyu,LIN Chaoyong
(College of Big Data and Information Engineering,Guizhou University,Guiyang? 550025,China)
Abstract:Metal detector is an instrument specially used to detect metal substance in daily life. After studying the conventional metal detector,an intelligent metal detector based on STC89C52RC single-chip microcomputer is designed. The sine wave generated by the oscillation circuit is sent to the single-chip microcomputer to detect the change of frequency through the pulse conversion circuit. When the metal material appears in the coil position,due to the electromagnetic induction principle,the coil Q value changes,and the original oscillation frequency will change. The microcontroller will give an alarm when it detects the frequency change. It can be widely used in security inspection,industrial production and other fields.
Keywords:single-chip microcomputer;metal detector;electromagnetic induction
0? 引? 言
基于貴州大學大數據與信息工程學院進行的便攜式金屬檢測儀實驗課題,本文設計了一款基于STC89C52RC單片機的便攜式智能金屬探測器,筆者為了實現更快和更精準的金屬檢測,以及降低金屬探測器的成本,根據電磁感應原理中金屬能影響振蕩電路中電感Q值的特性進行設計。為解決頻率檢測精準度的問題,將振蕩電路產生的振蕩信號經整形后送至能快速偵測電平變化的單片機中實現振蕩頻率變化檢測。有效地解決了現有金屬探測器存在的成本高、普適性較低、價格高昂等問題。還可通過鍵盤設置檢測靈敏度,同時具有良好的人機交互界面,并具有簡潔易用等特點。通過金屬探測器檢測出危險金屬物質可以避免許多安全隱患,如檢測是否攜帶危險管制刀具等。
1? 系統方案設計
本次設計采用STC89C52RC單片機作為金屬探測器的核心控制處理器件,通過添加晶振電路提供系統工作時鐘,通過復位電路實現復位功能[1]。通過電容三點式振蕩電路產生正弦波,轉換后傳遞到單片機檢測頻率的變化。當遇到金屬時,電容三點式振蕩電路的原振蕩會受到影響,頻率會發生變化,單片機會檢測到這種變化,并在液晶顯示器上顯示和報警,還可以通過鍵盤設置探測金屬物質的靈敏度。本系統主要由單片機最小工作系統、電源電路、振蕩電路、脈沖變換電路、聲光報警電路、鍵盤電路和顯示電路構成。
2? 系統硬件設計
2.1? 單片機最小工作系統
單片機最小工作系統是指利用最少的電子元件構成的可以獨立運行的單片機工作系統。本次設計采用的STC89C52RC型號單片機是由STC公司生產的低功耗、高性能CMOS8位微控制器,具有8 kB系統可編程閃存。在使用靈活性上兼容51單片機,且性能遠遠超過51單片機,具有更快的運行速度以及更加豐富的外設接口電路,同時具有功耗更低的特點[2]。
單片機最小工作系統的硬件結構非常簡單,僅僅需要添加電源電路為整個工作系統提供驅動電壓,以及添加復位電路為整個工作系統中的硬件構成提供一個運行的初始狀態,并防止系統出現意外中斷的情況,方便進行緊急恢復,即當單片機系統受到環境干擾程序跑飛的情況下,就可以按下復位按鈕,這樣單片機內部的程序會自動從頭開始執行,最后添加晶體振蕩電路為整個工作系統提供工作時鐘,晶振也可以采用不同的振蕩頻率,如8 MHz或者11.059 2 MHz,通常情況下,越高頻率的晶振,51單片機的處理速度就越快。單片機最小工作系統硬件原理如圖1所示[3]。
2.2? 電源電路設計
選用LM7805三端穩壓芯片,實際應用中,應在LM7805三端穩壓芯片上安裝足夠大的散熱器,因為穩壓管的穩壓性能會隨著溫度升高而變差,甚至損壞。在本設計中,由于將9 V的電池電壓變壓為設計所需的5 V電壓,這個過程中功率變化不是很大,因此不必添加散熱器。LM7805三端穩壓芯片的管腳功能從正面看,1腳是輸入,2腳接地,3腳輸出,從3腳輸出穩定的5 V電壓[4]。
2.3? 振蕩電路設計
振蕩電路是決定整個金屬探測器性能的關鍵,利用電容三點式振蕩電路產生一個頻率小于300 kHz的穩定振蕩源,目的是使金屬探測器在正常工作時能夠不受廣播頻段的影響。當諧振回路中的電感線圈中存在金屬物質時,線圈電感的Q值將隨之發生改變,當線圈電感增加時,電路的諧振頻率將減小,反之,線圈電感減小時,電路的諧振頻率將增加。
2.4? 脈沖變換電路設計
從諧振回路傳過來的正弦波信號傳送給電壓比較器對其進行整形,以產生規則的方波送入單片機。電壓比較器選用LM393,LM393的反向端接收滑動變阻器上的電壓,同向端接收振蕩電路產生的正弦波,這樣就能把正弦波信號經過電壓比較變成單片機能夠處理的方波信號[5]。
2.5? 聲光報警電路設計
當檢測到金屬時,系統會發出報警提示,報警電路是為了優化人機交互性,提醒使用者已檢測到金屬物質,用單片機控制三極管驅動蜂鳴器報警。因單片機直驅能力不夠,故采用三極管8550起到驅動大電流的作用,當三極管輸入端為低電平時,此時導通,蜂鳴器接收到控制信號,產生自激振蕩,通過內部芯片驅動發出報警聲[6]。
2.6? 鍵盤電路設計
當按下按鍵時,單芯片引腳和GND連接到低電平;當松開按鍵時,線路斷開,電流不能通過,此時單片機默認是高電平,可以通過判斷單片機IO口的高低電平來判斷是否有按鍵按下。
2.7? 顯示電路設計
采用LCD1602液晶顯示模塊來顯示相關信息,最多可同時顯示16×2個字符,即總共可以顯示32個字符。LCD1602液晶顯示器的原理是利用液晶的物理特性通過電壓來控制顯示區域,即可以顯示圖形。用來顯示當前振蕩電路的頻率值,以及人工設定的報警警戒值。液晶模塊的RS、RW、EN引腳與單片機P25~P27管腳相連接,液晶模塊的D0~D7數據接口和單片機的P0口連接[7]。
3? 軟件設計
3.1? 檢測頻率程序設計
頻率的測定是通過定時器T0和計數器T1完成的,即計算T0時間內檢測到的脈沖數T1的個數。為了方便計算,程序中所檢測的頻率都是在1 s內統計的脈沖總數,即1 s內檢測到多少次脈沖就是多少赫茲,因金屬探測器的檢測頻率較低,所以可以適當延長檢測時間,這樣系統更加穩定。
3.2? 聲光報警程序設計
當檢測到金屬物質時,主程序對當前頻率進行判斷,控制聲光報警系統工作。聲光報警系統包括蜂鳴器和LED燈。
3.3? 按鍵檢測程序設計
程序每執行一次都要執行一次按鍵檢測操作以判斷是否有按鍵按下,每200 ms檢測一次是否有按鍵操作,然后改變設置的頻率值,并在LCD1602液晶顯示器上顯示。
3.4? 顯示程序設計
顯示是為了優化人機交互性能和體驗感,能讓人對當前設備狀態有清晰的認識。本設計采用LCD1602液晶顯示器顯示當前頻率和設置的頻率,并且能對當前頻率進行實時顯示。
4? 系統的整體測試
4.1? 程序調試
在本次的程序設計中,使用Keil5編譯環境,用C語言對程序進行編寫,在Keil5中新建項目工程,選擇單片機型號STC89C52RC,編譯后生成單片機可執行的程序文件。下載到單片機后即可進行實際運行觀察[8]。
4.2? 硬件調試
由于本次設計需要進行電路焊接,在完成硬件電路設計之后,需要按照元件清單和PCB布局進行焊接,整機原理圖如圖2所示。
焊接完成后,首先檢查有無虛焊、漏焊等情況,然后再進行硬件調試,主要有以下步驟[9]:
(1)檢查原理圖,確保每個器件對應原理圖上的連線都正確,對芯片的電源連線進行觀察,以防接反燒毀芯片[10];
(2)在實物上運行時,觀察其是否穩定運行,以及是否按預想情況運行。
5? 實物測試結果
5.1? 軟硬聯調
當未檢測到金屬時,調試結果如圖3所示。
從圖3中可以看出,當前頻率為173.3 kHz,設置的頻率為173.4 kHz,由于未檢測到金屬,此時報警電路未工作,不發出報警提示音。
當檢測到金屬時,調試結果如圖4所示。
從圖4中可以看出,當前頻率為173.6 kHz,設置的頻率為173.4 kHz,頻率增大,檢測到金屬,此時報警。
6? 結? 論
本文實現通過檢測振蕩源頻率的變化來進行金屬檢測的功能,同時具有檢測靈敏度設置功能以及良好的人機交互界面。使用STC89C52RC單片機作為控制核心,通過三點式振蕩電路產生振蕩源,利用線圈電感變化影響振蕩頻率,通過中斷檢測頻率變化,按鍵設置檢測靈敏度,使用LCD1602液晶顯示器顯示當前頻率值。本次設計的金屬檢測器還存在一些不完善的地方,如探測距離不夠遠,以及定位不夠精確,后續工作可以提高線圈功率,使用多組線圈,以提高檢測精度以及擴大檢測范圍。
參考文獻:
[1] 李建忠.單片機原理與應用:第2版 [M].西安:西安電子科技大學出版社,2008.
[2] 陳海宴.51單片機原理及應用:基于Keil C與Proteus [M].北京:北京航空航天大學出版社,2010.
[3] 鄭婷,彭龑,楊洋.一種基于單片機的多功能智能臺燈的設計 [J].電子世界,2020(17):93-94+98.
[4] 汪建關,邵春楓,谷高明,等.基于STC89C52單片機的電子密碼鎖設計 [J].現代信息科技,2019,3(22):38-40.
[5] 童詩白,華成英.模擬電子技術基礎:第5版 [M].北京:高等教育出版社,2015.
[6] 陳杰,黃鴻.傳感器與檢測技術:第2版 [M].北京:高等教育出版社,2010.
[7] 譚浩強.C語言程序設計:第3版 [M].北京:清華大學出版社,2014.
[8] 周潤景,張麗娜.基于PROTEUS的電路及單片機系統設計與仿真 [M].北京:北京航空航天大學出版社,2006.
[9] 趙全利.單片機原理及應用教程:第3版 [M].北京:機械工業出版社,2013.
[10] 麻銳敏.基于單片機的電子安全密碼鎖的設計初探 [J].科技風,2018(23):24.
作者簡介:周游宇(1996—),男,漢族,湖南長沙人,碩士在讀,研究方向:嵌入式軟件;林朝勇(1977—),男,漢族,貴州貴陽人,高級工程師,學士學位,研究方向:航空電子產品。