• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于C語言的流量檢測系統(tǒng)的設(shè)計(jì)

    2014-12-31 00:00:00崔寧
    電子世界 2014年20期

    【摘要】流量檢測在工業(yè)、農(nóng)業(yè)、化工、醫(yī)療乃至生活中都有涉及,本文基于C語言和單片機(jī)設(shè)計(jì)了一個(gè)能夠精確測量液體流量的檢測系統(tǒng)。重點(diǎn)對整個(gè)系統(tǒng)的軟件部分的設(shè)計(jì)進(jìn)行了詳細(xì)分析和論述。

    【關(guān)鍵詞】流量檢測;C語言;軟件系統(tǒng)

    流量是現(xiàn)代工業(yè)生產(chǎn)過程自動(dòng)化中,重要的過程參數(shù)之一。如何實(shí)現(xiàn)對工業(yè)生產(chǎn)過程中管道內(nèi)的流體進(jìn)行精確測量和控制,是一個(gè)重要的課題。隨著傳感器技術(shù)及信息技術(shù)的發(fā)展,使得對流體流量的檢測成為可能。

    1.總體設(shè)計(jì)方案

    系統(tǒng)主要包括硬件和軟件系統(tǒng)兩部分。硬件系統(tǒng)主要由最小控制系統(tǒng)、流量檢測電路模塊、LCD1602液晶顯示模塊和按鍵電路四部分組成。當(dāng)有流體流過時(shí),流體流量傳感器實(shí)時(shí)采集水流量狀態(tài),并將采集的信息傳給單片機(jī)。

    軟件系統(tǒng)則負(fù)責(zé)對流量傳感器的輸出數(shù)據(jù)的處理,及各類操作的流程控制以及相關(guān)數(shù)據(jù)的處理、換算與顯示。

    2.硬件系統(tǒng)的設(shè)計(jì)

    硬件系統(tǒng)中最小控制系統(tǒng)以及顯示按鍵電路的設(shè)計(jì)都非常成熟,這里主要對流量測量電路的設(shè)計(jì)進(jìn)行分析。

    通常所說的流量是指單位時(shí)間內(nèi)通過管道橫截面的流體的數(shù)量,即瞬時(shí)流量。通過水流量傳感器的數(shù)據(jù)采集,并根據(jù)商家的水流量傳感器的參數(shù)可以得出流量的換算關(guān)系,從而在單片機(jī)中通過軟件完成數(shù)據(jù)的運(yùn)算和轉(zhuǎn)換。

    目前常用的流量傳感器的一般都是渦輪式,其工作原理是:當(dāng)傳感器內(nèi)有流體流過時(shí),傳感器內(nèi)的渦輪葉片就會(huì)受到流體的沖擊,產(chǎn)生正比于流速的轉(zhuǎn)動(dòng),其轉(zhuǎn)動(dòng)會(huì)使得對應(yīng)的磁芯產(chǎn)生周期性的矩形脈沖信號,顯然脈沖的個(gè)數(shù)是正比于流體速度的。通過軟件對脈沖數(shù)量的統(tǒng)計(jì),然后結(jié)合具體型號傳感器對不同流體及流速下的脈沖數(shù)據(jù)修正值,通過軟件上面進(jìn)行對應(yīng)的數(shù)據(jù)處理,就可以實(shí)現(xiàn)精確的測量。

    圖1 總流程圖

    3.軟件系統(tǒng)設(shè)計(jì)

    軟件的設(shè)計(jì)采用了移植性好、編程方便的C語言來實(shí)現(xiàn)。軟件都是在函數(shù)化的設(shè)計(jì)理念下完成的。整個(gè)軟件系統(tǒng)包括流量檢測程序、流量開關(guān)控制程序、顯示程序等。程序的整體設(shè)計(jì)流程圖如圖1所示。

    3.1 主程序的設(shè)計(jì)

    主程序主要通過對各功能子函數(shù)的調(diào)用來實(shí)現(xiàn)整個(gè)系統(tǒng)的協(xié)調(diào)運(yùn)作。主程序的部分代碼如下:

    void main()

    { lcd_init();

    while(1) { liuliang();

    if(kai==0) display1(); " //判斷界面開關(guān)是否按下,按下則顯示第一界面

    else{ display2();}}} //顯示第二頁界面

    其中l(wèi)cd_init()函數(shù)為液晶顯示子程序,其程序設(shè)計(jì)方面已經(jīng)非常成熟,這里不多做說明;liuliang()函數(shù)為水流量的測量函數(shù),后面有進(jìn)行詳細(xì)介紹;整個(gè)程序在while(1)構(gòu)成的死循環(huán)的控制下反復(fù)的進(jìn)行流量的檢測和實(shí)時(shí)顯示。

    3.2 水流量檢測程序的設(shè)計(jì)

    水流量的測量主要依靠對傳感器傳出的脈沖數(shù)的處理來實(shí)現(xiàn),由流量傳感器在一段時(shí)間下產(chǎn)生高電平的個(gè)數(shù)決定,即Q(流量)=F(頻率)/R(商家設(shè)定值),所以只要在軟件設(shè)計(jì)過程中,設(shè)定在一定時(shí)間內(nèi),計(jì)算出相應(yīng)的脈沖的個(gè)數(shù)即可。在本程序中,將AT89S51中的的定時(shí)器T0設(shè)置為計(jì)數(shù)器,T1則用作定時(shí)計(jì)計(jì)時(shí)用,從而對流量進(jìn)行測量。

    (1)流量的讀取程序

    中斷程序運(yùn)行的時(shí)間到,就可以讀取計(jì)數(shù)器中的數(shù)值,將傳感器輸出的脈沖數(shù)值讀出后把計(jì)數(shù)器賦值為0,等待下一次的取出,然后進(jìn)入對讀出數(shù)據(jù)的處理程序。程序流程圖如圖2所示。

    圖2 流量測量流程圖

    核心的程序設(shè)計(jì)代碼如下:

    void liuliang()

    { "while(dgt;=2)

    { d=0; "b=TH0*256+TL0; "http://讀取頻率

    TH0=0x00; TL0=0x00; g=0; } //時(shí)間標(biāo)志位

    loop();} "http://調(diào)用流量計(jì)算程序與數(shù)據(jù)轉(zhuǎn)換程序

    (2)流量數(shù)據(jù)的處理程序

    在預(yù)設(shè)的時(shí)間到了后,取出定時(shí)器的數(shù)值后。為了能夠最大限度的統(tǒng)計(jì)流量,程序當(dāng)中選擇了用1個(gè)整形變量int和一個(gè)long int變量共同來完成對流量數(shù)據(jù)的存儲(chǔ),其中整形變量存儲(chǔ)低3位數(shù)據(jù),長整形變量存儲(chǔ)流體流量的高6位。核心的程序代碼如下:

    void loop ()

    {uint "zong1;

    if(g==0) "http://判斷時(shí)間是否到

    {zong=(b/100.0)+zong; } //得出總流量的后三位

    g=1; //將標(biāo)志為為1

    if(zonggt;=1000) //判斷總流量后三位是否大于1000

    {a++; zong=0; } "http://總流量前六位加1,后三位清零

    zong1=(int)zong ; //總流量后三位轉(zhuǎn)換為整形

    n9=a/100000; " " "http://總流量9位全部分配

    n8=a%100000/10000; n7=a%10000/1000;

    n6=a%1000/100; n5=a%100/10;

    n4=a%10; n3=zong1%1000/100;

    n2=zong1%100/10; n1=zong1%10; }

    4.結(jié)論

    本文基于C語言重點(diǎn)對流量檢測系統(tǒng)的軟件部分進(jìn)行了詳細(xì)的分析和設(shè)計(jì),實(shí)現(xiàn)了對流體流量的自動(dòng)化、精確化測量。

    參考文獻(xiàn)

    [1]張菁.基于單片機(jī)溫度控制系統(tǒng)方案的研究[J].上海交通大學(xué)學(xué)報(bào),2007.

    [2]樓然苗.51系列單片機(jī)設(shè)計(jì)實(shí)例[M].北京:北京航空航天大學(xué)出版社,2003.

    噶尔县| 海丰县| 嵊州市| 博野县| 雅安市| 司法| 镶黄旗| 综艺| 饶平县| 钟山县| 东源县| 福州市| 平顶山市| 三门峡市| 海丰县| 谢通门县| 瑞丽市| 洛宁县| 巴彦淖尔市| 海伦市| 巍山| 乌审旗| 聂拉木县| 巍山| 四子王旗| 崇文区| 宁夏| 德兴市| 营口市| 聂拉木县| 米易县| 高阳县| 泉州市| 炉霍县| 石渠县| 溆浦县| 南靖县| 本溪| 平江县| 民和| 登封市|