謝宇情 儲倩倩
【摘 要】基于單片機的超聲波液位儀是以單片機及電容等元件構成的最小系統為核心,以時差法超聲波測距原理為理論依據,利用超聲波作為測量信號對封閉式或敞開式罐體中的液面高度進行自動檢測和數據處理,減少了測量過程中的人工干預,方便了操作人員對液位的實時監控,并通過與手機之間進行通信、保存有關數據,從而更好地對罐體的液位情況進行管理和監控。
【關鍵詞】單片機;超聲波;藍牙;液晶顯示
中圖分類號: TN925;TP368.33 文獻標識碼: A 文章編號: 2095-2457(2018)08-0100-002
Design of Intelligent Liquid Level Meter Based on Bluetooth Transmission
XIE Yu-qing CHU Qian-qian
(School of Electronic and Communication Engineering,Anhui Xinhua University,Hefei 230088,China)
【Abstract】Ultrasonic liquid level instrument based on single-chip microcomputer is based on the minimum system composed of single-chip microcomputer and capacitor and so on. It is based on the principle of time-difference ultrasonic distance measurement and uses ultrasonic as the measurement signal for closed or open tanks. The automatic detection and data processing of the liquid surface height reduces the manual intervention in the measurement process, which facilitates the operator's real-time monitoring of the liquid level, and communicates with the mobile phone and saves the relevant data, thereby improving the tank body. The level of the situation is managed and monitored.
【Key words】Microcontroller;Ultrasound;Bluetooth;LCD display
0 引言
在工業生產過程中,常常需要對封閉式或敞開式容器中的液體等被測介質的高度進行連續的測量,或是對被測介質是否達到某一位置的高度進行檢測,能夠進行該項檢測工作的儀器儀表被稱作液位儀。特別是在高溫、強腐蝕、強粘附和粉塵大的惡劣環境下的液位檢測,非接觸式的液位儀是非常適合的選擇,從而摒棄過去的直尺式或浮球式的測量。而隨著單片機和微機技術的不斷發展,單片機技術已廣泛應用于現代工業的各個行業。
因此,為了減少人工測量所帶來的危險性和數據測量的不準確性,設計了一款以STC89C52單片機為控制核心的液位測量系統,不僅可以實現手動測量水位和控制抽放水操作,還可以通過藍牙通信裝置與手機保持通信,實現遠程測量和控制,從而達到智能、安全、準確和操作簡單的目的。
1 硬件電路的設計
本設計中所涉及的功能芯片主要有STC89C52、LCD1602、藍牙模塊HC05和超聲波發射/接收模塊HC-SR04等,可以自動測量水位的液位儀,也可手動或通過手機藍牙實現遠程抽放水能。本設計主要擁有三個功能,分別是實時監測、按鍵控制水位和遠程控制水位。主要是利用STC89C52單片機進行系統控制,通過對超聲波模塊控制讀取超聲波模塊的安裝位置和水面的距離,將這段距離實時顯示到1602液晶屏上。可以通過按鍵產生的信號控制繼電器,由繼電器控制水泵,進而通過觀察液晶屏顯示的水位控制水位的高度。使用手機作為上位機,連接液位儀上的藍牙模塊進行遠程控制,實現遠程測量液面數據和抽放水。
STC89C52單片機是一款功耗低、性能高的8位微控制器,其片內含有8KB可反復檫寫的Flash ROM[1]。雖使用經典的51內核,但又通過很多改進使其具備傳統51單片機所不具備的功能,因此為眾多嵌入式控制應用系統提高有效、靈活的解決方案。單片機最小系統是指能讓單片機正常工作的最基本電路組成,主要包括電源電路、時鐘電路和復位電路三個部分[2]。 LCD1602是一種專門用來顯示字母、數字和符號的點陣型工業字符型液晶顯示屏,可以同時顯示32個字符(16*2行)。該液晶模塊內部的CGROM存儲了160個不同的點陣字符圖形,包括阿拉伯數字、英文字母的大小寫、常用的符號和日文假名等,每個字符都有固定的代碼,可以通過相應的指令進行的字庫顯示操作。即先通過指令初始化,再通過相應的指令對顯示屏進行讀、寫數據操作,最后通過寫數據指令向顯示屏寫入要顯示的數據,并通過顯示指令在具體坐標處進行顯示[3]。在本系統中主要用來顯示液面距離超聲波探測頭的距離,從而方便計算出液面高度。
藍牙模塊HC05是一種集成藍牙功能的PCBA板,主要用于短距離無線通訊。此模塊采用遵循藍牙V4.0標準的無線信號收發芯片,內含數字無線處理器、數控振蕩器,射頻收發開關切換和內置嵌入式處理器等[4]。接收信號時,收發開關置為收狀態,射頻信號從天線接收后,經過藍牙收發器直接傳輸到基帶信號處理器。信號發過程是信號收的逆過程,此外,還包括時鐘和電源管理模塊以及多個通用I/O口,供不同的外設使用。主機接口提供雙工的通用串口,可以方便地和PC機的RS232通信,也可以和DSP的緩沖串口通信。本系統中可通過發送相關控制命令,實現在手機屏幕上顯示液面高度,并實現抽水和放水的功能。
HC-SR04超聲波發射/接收模塊性能穩定,測度距離精確,模塊高精度,盲區小[5][6]。模塊使用方法簡單,一個控制口發一個10US以上的高電平即可在接收口等待高電平輸出,一有輸出就可開定時器計時,當其變為低電平時就可以讀定時器的值,獲得此次測距的時間,從而計算出距離。
2 軟件的設計與實現
Keil uVision4是眾多單片機應用開發軟件中最優秀的軟件之一,它支持眾多不同公司的MCS51架構的芯片,集編輯,編譯,仿真等于一體。它可以進行匯編語言或C語言編程,以便把寫好的程序編譯為機器碼,才能把HEX可執行文件寫入單片機內。根據本系統設計的要求,程序設計主要包括主程序、LCD液晶顯示子程序、超聲波測量子程序、藍牙信號傳輸控制子程序,以及進水和放水繼電器控制子程序等。
3 電路仿真與實現
通過實物電路的焊接和程序燒錄之后,本系統基本設計效果如圖3所示。其中圖a是液晶屏顯示模塊的顯示效果,第一行顯示的是歡迎詞,第二行顯示的是實際測量距離;圖b是通過藍牙傳輸的信息利用手機顯示的效果,發送“1”號命令顯示測量的距離,發送“2”號命令實現進水操作,發送“3”號命令實現放水操作。
4 結束語
本設計完成了智能液位儀,實現一定距離內利用手機APP控制,近距離由儀器本身控制的目的,并且有實時讀取液位高度,中近距離實時查看液位高度的功能。本系統可以用于路面灑水車、消防車水罐及樓房二次供水等需要實時監測液面高度,且時常需要增加或降低水位的場合。當然本設計也有不足之處,比如無法實現超遠距離控制,以及讀取數據沒有存儲不能事后進行數據分析等缺點,將在未來對此更多研究,設計出更加智能的液位儀。
【參考文獻】
[1]陳忠平.基于Proteus的AVR單片機C語言程序設計與仿真[M].北京:電子工業出版社,2011.1,103-115.
[2]彭偉.單片機C語言程序設計實訓100例-基于8051+Proteus仿真(第2版)[M].北京:電子工業出版社, 2012.10,136-148.
[3]沈慶陽.漢字顯示應用技術,上海:電子工業出版社,2002.3,128-139.
[4]何莉君,王超塵,鄒衛軍.基于超聲波外測液位儀系統的研究與設計[J].工業控制計算機,2016(3),72-73.
[5]樓然苗,李光飛.MCS-51系列單片機設計實例,北京:北京航天航空大學出版社,2001.3,75-83.
[6]田文成.超聲波測距系統的研究與實現[D].南京:南京郵電大學,2017.