液位系統c語言程序,超聲波自動測量物體液位系統的設計

超聲波自動測量物體液位系統的設計(任務書,畢業論文15000字)

摘要

本系統以STC89C52單片機為核心,通過硬件電路連接和軟件程序的編寫實現通用型超聲波自動測量物體液位系統的設計。其主要原理是由單片機控制超聲波發射電路發射超聲波,超聲波接收電路接收遇到液面后反射回來的超聲波回波,單片機計時所用時間, 將測得時間帶入相應公式,即可求得當前液位;利用按鍵可以手動設置容器深度,也可以在容器為空時自動測量出容器深度,達到通用型液位檢測儀的設計;DS18B20測溫模塊實現當前空氣溫度的測量;最后通過LCD12864液晶不斷更新顯示當液位與溫度。若液位超出預設的最高值,同時LED亮起報警。

硬件部分包括STC89C52單片機,超聲波測距部分, LCD12864液晶顯示部分,DS18B20測溫部分,按鍵部分和LED報警部分。軟件設計分為兩塊,主程序和中斷子程序。主程序完成初始化、超聲波發射和接收,距離計算、時間值的讀取,結果顯示等工作,中斷服務子程序主要完成報警工作。

關鍵詞:超聲波測距;單片機;液位測量;溫度補償;通用型測液位系統

Abstract

This system use STC89C52 microcontroller as the core, through a combination of hardware and written of software program, achieve the design of general type liquid level measurement system. The main principle is controlled by the microcontroller ultrasonic transmitter circuit launch ultrasound and receives the echo reflected surface encountered while recording the time used microcontroller. Take the measured time into the appropriate formula to obtain the current level. We can set the depth of the container by keys. It is also very convenient to automatically measure the depth of containers by pressing a key when the containers are empty. So that, we can achieve a general type liquid level measurement system. The DS18B20 module can test the current temperature, and put the measured temperature into the temperature compensation formula can making the measurement more accurate results. Last updated through the LCD liquid crystal display the current level and the temperature. If the level exceeds the preset maximum value, LED display a warning red light alarm.

STC89C52 microcontroller hardware including, ultrasonic distance measuring module, LCD12864 module, DS18B20 temperature test module, keys module and the LED alarm module. Software design is divided into two parts, the main program and interrupt service routine. Main program to initialize, transmit and receive ultrasound, distance calculation, get the time and the results display most of the major work. Interrupt service routine mainly finish the work of alrm.

Key words: Ultrasonic distance measurement; SCM; liquid level measurement; Temperature Compensation; Universal liquid level measurement system

2bcc362f0038c8d04f8399eba78646e1.png

5edb8957ef609e43030f66dacfe30d3d.png

目錄

第一章 ?緒論1

1.1 課題的意義和背景1

1.2 液位測量系統的現狀1

1.3 國內外液位監測技術的發展方向和發展現狀2

1.4 本章小結3

第二章 ?超聲波測液位系統4

2.1 超聲波與超聲波傳感器4

2.2 超聲波測液位原理4

2.2.1 超聲波測距原理4

2.2.2 超聲波測液位原理5

2.3 總體方案設計6

2.4 本章小結6

第三章 ?硬件系統設計7

3.1 單片機系統7

3.1.1 單片機系統概述7

3.1.2 STC89C52單片機7

3.2 發射電路比較10

3.3 接收電路比較11

3.4 超聲波模塊13

3.4.1 超聲波模塊工作原理與特點13

3.4.2 超聲波模塊內部結構與工作時序14

3.5 LCD12864液晶顯示模塊16

3.6 溫度測量模塊17

3.7 報警模塊18

3.8 按鍵設置模塊19

3.9 系統電路連接19

3.10 本章小結20

第四章 ?軟件系統設計21

4.1 總體設計思想21

4.2 系統主程序22

4.3 溫度補償子程序22

4.4 基于LCD12864的顯示子程序23

4.5 按鍵設置子程序24

4.6 基于DS18B20的測溫子程序26

4.7 報警子程序27

4.8 本章小結27

第五章 ?系統調試分析28

5.1 硬件調試28

5.2 故障問題解決28

5.3 實驗數據29

5.4 誤差分析30

結論31

參考文獻32

致謝33

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/259409.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/259409.shtml
英文地址,請注明出處:http://en.pswp.cn/news/259409.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

android-sdk-windows版本號下載

Android SDK 4.0.3 開發環境配置及執行 近期又裝了一次最新版本號的ADK環境 眼下最新版是Android SDK 4.0.3 本文的插圖和文本盡管是Android2.2的 步驟都是一樣的,假設安裝的過程中遇到什么問題,能夠留言,我會盡快回復! 系統環境的…

string中c_str()、data()、copy(p,n)函數的用法

轉載:http://www.cnblogs.com/qlwy/archive/2012/03/25/2416937.html 標準庫的string類提供了3個成員函數來從一個string得到c類型的字符數組:c_str()、data()、copy(p,n)。 1. c_str():生成一個const char*指針,指向以空字符終止…

POJ2402 Palindrome Numbers 回文數

題目鏈接: http://poj.org/problem?id2402 題目大意就是讓你找到第n個回文數是什么. 第一個思路當然是一個一個地構造回文數直到找到第n個回文數為止(也許大部分人一開始都是這樣的思路). 很明顯找到第n個之前的所有操作都是浪費, 這也是這個方法的最大弱點. 抱著僥幸心理(誰知…

離散卷積的c語言編程實驗,數字信號處理實驗一離散卷積c語言編程.ppt

數字信號處理實驗一離散卷積c語言編程實驗一 離散卷積的C語言編程實驗 DSP實驗室 2005 實驗性質 綜合設計性實驗 實驗目的 1 了解和認識常用的各種信號; 2 掌握卷積的定義和計算方法; 3 掌握在計算機中生成以及繪制信號序列圖的方法。 實驗原理 離散時間…

async-await原理解析

在用async包裹的方法體中,可以使用await關鍵字以同步的方式編寫異步調用的代碼。那么它的內部實現原理是什么樣的呢?我們是否可以自定義await以實現定制性的需求呢?先來看一個簡單的例子: 1 class Test {2 public sta…

emacs-w3m查看html幫助手冊

<?xml version"1.0" encoding"utf-8"?> emacs-w3m查看html幫助手冊emacs-w3m查看html幫助手冊 Table of Contents 1. 使用效果2. 為什么要用emacs-w3m來查看html的幫助手冊&#xff1f;3. 什么是w3m?4. 配置5. 額外資源1 使用效果 使用快捷鍵C-c …

c語言生命游戲代碼大全,c++生命游戲源碼

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓glViewport( 0, 0, width, height );glMatrixMode( GL_PROJECTION );glLoadIdentity( );}//程序入口int main(int argc, char *argv[]){//隨機生成細胞的狀態MapRand();std::cout<//SDL初始化const SDL_VideoInfo* info NULL;i…

初學React,setState后獲取到的thisstate沒變,還是初始state?

問題&#xff1a;(javascript)初學React&#xff0c;setState后獲取到的thisstate沒變&#xff0c;還是初始state&#xff1f;描述: getInitialState(){return {data:[]};},componentDidMount(){var data [ { author: "Pete Hunt", text: "This is one comment…

sizeof(數組名)和sizeof(指針)

轉載&#xff1a;http://blog.csdn.net/kangroger/article/details/20653255 在做這道題時&#xff1a; 32位環境下&#xff0c;int *pnew int[10];請問sizeof(p)的值為&#xff08;&#xff09; A、4 B、10 C、40 D、8 我以為正確答…

工作中的問題

今天寫一專題頁面&#xff0c;寫出的結果在各個瀏覽器下都不同&#xff0c;心情不好。。。 就是紅線的地方老對不齊。。。 在朋友指導下改了下樣式好了 右邊代碼結構 1 <div class"fr Img"> 2 <h3>相關專題</h3> 3 <a href"#"…

數組的sizeof

轉載&#xff1a;http://blog.163.com/chen_xinghuan/blog/static/17220158220112182838196/ 數組的sizeof值等于數組所占用的內存字節數&#xff0c;如&#xff1a;   char a1[] “abc”;   int a2[3];   sizeof( a1 ); // 結果為4&#xff0c;字符 末尾還存在一個…

數據結構行編輯成簇 c語言,索引的數據結構及底層存儲

索引是幫助數據庫高效獲取數據的數據結構索引的數據結構1.hash表a.利用hash存儲的話需要將所有的數據文件添加到內存&#xff0c;比較耗費內存空間b.hash表存儲的是無序數據&#xff0c;范圍查找的時候需要挨個進行遍歷&#xff0c;比較耗費時間。2.二叉樹二叉樹規定左子樹必須…

卓同學的 Swift 面試題

我覺得應該掌握的知識點&#xff0c;沒有實際意義。 class 和 struct 的區別不通過繼承&#xff0c;代碼復用&#xff08;共享&#xff09;的方式有哪些Set 獨有的方法有哪些&#xff1f;實現一個 min 函數&#xff0c;返回兩個元素較小的元素map、filter、reduce 的作用map 與…

使用CImage雙緩沖

一普通顯示&#xff1a;現在的VC顯示圖片非常方便&#xff0c;遠不是VC6.0那個年代的技術可比&#xff0c;而且支持多種格式的如JPG&#xff0c;PNG。 CImage _img; 初始化&#xff1a; _img.Load(L"map.png"); 顯示&#xff1a;OnPaint事件中 CRect rect; this…

匯編語言學習系列 for循環實現

假如匯編語言要實現如下C語言的功能&#xff0c;編譯環境Ubuntu14.04&#xff08;32位&#xff09;。 #include<stdio.h> int fact_for(int n) {int i;int result 1;for(i 2; i < n; i)result * i;return result; }int main(){printf("%d\n", fact_for(3)…

川大錦城c語言期末考試答案,四川大學《計算機組成原理》2018期末考試B卷答案及評分標準.doc...

四川大學期末考試試題(閉卷)答案及評分標準(2017——2018學年第 2 學期) B卷課程號&#xff1a;304036030 課程名稱&#xff1a;計算機組成原理填空題(本大題共15空&#xff0c;每空2分&#xff0c;共30分)在評價計算機性能時用 響應時間 表示計算機完成某任務所需時間;用 吞吐…

2014屆華為校園招聘機試題2

第一題、輸入一個正整數&#xff0c;并編碼為字符串進行輸出 描述: 1、輸入一個正整數&#xff0c;并編碼為字符串進行輸出。 編碼規則為&#xff1a;數字0-9分別編碼為字符a-j 2、輸入肯定是正整數&#xff0c;不用做錯誤較驗 運行時間限制: 無限制 內存限制: 無限制 輸…

圖解phpstorm常用快捷鍵

查詢快捷鍵 CTRLN 查找類 CTRLSHIFTN 全局搜索文件 ,優先文件名匹配的文件 CTRLSHIFTALTN 查找php類名/變量名 ,js方法名/變量名, css 選擇器 CIRLB 找變量的來源&#xff0c;跳到變量申明處 (CTRL 鼠標單擊 也可以) CTRLALTB 找到繼承該接口或者父級 的所有子類, 統計所有子類…

The C Programming Language--可變參數的函數

函數 printf的正確聲明形式為&#xff1a;int printf(char *fmt, ...) void va_start (va list ap, last-required) type va_arg (va list ap, type) void va_end (va list ap) 其中&#xff0c;省略號表示參數表中參數的數量和類型是可變的。 va_list 類型用于聲明一個變量&am…

二分查找法的循環與遞歸實現及時間復雜度分析

轉載&#xff1a;http://baike.baidu.com/link?url3aEK-qcVbYi6ioJOsf-dFmvFQ6WQgzTwnE9JkmlHBc88qk-D00SambfrSl3hVh_UyqyxF8QEUosfq20IQQW5z_ 和http://hi.baidu.com/networkor/item/80d817f8331d8e08a7298834 設數組為整數數組&#xff0c;從小到大排序。二分法強調一定是…