基于渦輪流量傳感器的硅油流量計(jì)的硬件與軟件設(shè)計(jì)
點(diǎn)擊次數(shù):1835 發(fā)布時(shí)間:2021-01-19 15:06:07
硅油流量計(jì)量屬于計(jì)量科學(xué)技術(shù)的一個(gè)分支,也是其中一個(gè)不可或缺的組成部分,因?yàn)樗c國(guó)民經(jīng)濟(jì)、國(guó)防建設(shè)以及科學(xué)研究密切聯(lián)系。在工業(yè)中,硅油流量計(jì)量的作用至關(guān)重要,因?yàn)闇?zhǔn)確的硅油流量計(jì)量與工業(yè)產(chǎn)品質(zhì)量和生產(chǎn)效率密切相關(guān)。本設(shè)計(jì)主要是基于渦輪流量傳感器的硅油流量計(jì)設(shè)計(jì),可實(shí)時(shí)顯示的瞬時(shí)流量和累積流量,通過對(duì)EEPROM中參數(shù)的設(shè)置可調(diào)整系統(tǒng)測(cè)量時(shí)的環(huán)境參數(shù),以適應(yīng)各種不同條件下的流量測(cè)量。
1 硅油流量計(jì)總體設(shè)計(jì)
本文所設(shè)計(jì)的硅油流量計(jì)主要由ARM微處理器,串口通信模塊,數(shù)據(jù)存儲(chǔ)模塊,液晶顯示屏模塊以及按鍵模塊組成??傮w框架如圖1所示。系統(tǒng)初始上電,等待用戶按鍵選擇,讀寫EEPROM中的儀表系數(shù),密度,線性修正參數(shù)等具體參數(shù),接收傳感器所傳入的脈沖并對(duì)其計(jì)數(shù),內(nèi)部進(jìn)行數(shù)據(jù)處理計(jì)算出脈沖的頻率,按照傳感器提供的硅油流量計(jì)算公式和參數(shù)計(jì)算出瞬時(shí)流量和累計(jì)流量并顯示于LCD12864液晶顯示屏上。
2 硅油流量計(jì)硬件設(shè)計(jì)
2.1 微處理器*小系統(tǒng)
本設(shè)計(jì)中采用的微處理器為NXP公司的M3系列LPC1766,它具有三級(jí)流線和哈佛結(jié)構(gòu),功耗低,性能高,并且包含了眾多外設(shè)。此外,M3內(nèi)核還為L(zhǎng)PC1766提供了一個(gè)能夠降低中斷延時(shí)和實(shí)現(xiàn)高效處理中斷的嵌套向量中斷處理器。
2.2 串口通信模塊
單片機(jī)串口為TTL電平標(biāo)準(zhǔn),即+5V和0V分別代表邏輯“1”和“0”。由于TTL和RS232高低電平的邏輯和范圍不同,故這兩種標(biāo)準(zhǔn)串口之間的連接*先應(yīng)進(jìn)行電平轉(zhuǎn)換。本設(shè)計(jì)中采用sp3232芯片轉(zhuǎn)換LPC1766串口的TTL電平與上位機(jī)串口相連,進(jìn)行RS232通信。TTL到RS232電平轉(zhuǎn)換電路。注意,RS232電平較高,接通瞬間可能會(huì)產(chǎn)生非常高的瞬時(shí)電涌,這個(gè)電涌電流可能會(huì)擊毀SP3232,所以在使用這個(gè)芯片時(shí)應(yīng)拔插之前進(jìn)行斷電操作,避免熱拔插。
2.3 數(shù)據(jù)存儲(chǔ)模塊
EEPROM主要是用來存儲(chǔ)一些與測(cè)量相關(guān)的參數(shù)和測(cè)量的數(shù)據(jù)。所選的是串行EEPROM存儲(chǔ)芯片93C66,大小512B,可配置成8位或者16位結(jié)構(gòu),它通過SPI總線和LPC1766相連,對(duì)流量測(cè)量參數(shù)進(jìn)行保存。當(dāng)系統(tǒng)開始運(yùn)行時(shí),通過按鍵向存儲(chǔ)芯片寫入相關(guān)的參數(shù),從而保證流量測(cè)量結(jié)果的正確。這些參數(shù)與實(shí)際運(yùn)行環(huán)境是相關(guān),通過重新寫入相應(yīng)參數(shù)以適應(yīng)新的運(yùn)行環(huán)境。
2.4? LCD液晶顯示模塊
本設(shè)計(jì)的顯示模塊選擇的是LCD12864,用于實(shí)時(shí)顯示硅油流量計(jì)所測(cè)量的瞬時(shí)流量和累計(jì)流量。LCD12864是由128*64個(gè)液晶顯示點(diǎn)組成的一個(gè)128列*64行的陣列,自帶中文字庫,既可以顯示字母也可以顯示漢字及圖形。
3 硅油流量計(jì)軟件設(shè)計(jì)
3.1 軟件設(shè)計(jì)總流程
軟件的總體設(shè)計(jì)主要包括這幾個(gè)方面:系統(tǒng)初始化程序,LCD顯示程序,流量測(cè)量數(shù)據(jù)處理,數(shù)據(jù)存儲(chǔ)程序以及基于modbus協(xié)議的RS232串口通信程序。這里*先介紹軟件設(shè)計(jì)的總體流程圖,如圖2所示。
系統(tǒng)初始化程序主要用于微處理器各GPIO功能引腳的選擇、系統(tǒng)時(shí)鐘配置、中斷初始化及優(yōu)先級(jí)配置以及LCD液晶屏初始化。微處理器LPC1766在modbus主從通信協(xié)議中處于從機(jī)地位,為了實(shí)現(xiàn)標(biāo)準(zhǔn)的modbus協(xié)議,采用了移植freemodbus源代碼的方式。因此串口通信程序所做的只是根據(jù)LPC1766的芯片手冊(cè)對(duì)串口通信方式進(jìn)行設(shè)置和開啟串口中斷。按鍵程序主要作用是為了實(shí)現(xiàn)人機(jī)交互功能,本設(shè)計(jì)主要用了四個(gè)按鍵,分別用于參數(shù)設(shè)置時(shí)的確認(rèn),返回,增大和減小功能。
3.2 流量測(cè)量程序
渦輪式流量傳感器輸出脈沖信號(hào)的頻率與其流量大小相關(guān),并在一般情況下,有f=Kqv
式中,K為傳感器的儀表系數(shù),并在其測(cè)量范圍內(nèi),對(duì)qv而言,K相當(dāng)于一個(gè)常數(shù),通常由流量?jī)x表廠商經(jīng)過多次實(shí)驗(yàn)測(cè)得并由提供給用戶直接使用。qv為通過傳感器流體的體積流量。由此可以看出,對(duì)于流量的測(cè)量只須要測(cè)量傳感器輸出的脈沖數(shù)。脈沖信號(hào)的采集采用兩個(gè)定時(shí)器,一個(gè)用作計(jì)數(shù)模式用于對(duì)脈沖計(jì)數(shù),另一個(gè)用作重復(fù)定時(shí)器,得到單位時(shí)間內(nèi)的脈沖數(shù)。單位時(shí)間內(nèi)的脈沖數(shù)乘以儀表系數(shù)再乘以相應(yīng)的補(bǔ)償系數(shù),便得到了瞬時(shí)流量。*后,將瞬時(shí)流量累加到累積流量中,并在顯示屏上顯示出來。此程序流程圖如圖3所示。
3.3 液晶屏顯示程序
該程序主要用于實(shí)時(shí)更新流量信息,微處理器與上位機(jī)通過RS232接口以modbus協(xié)議進(jìn)行通信。*后,該設(shè)計(jì)液晶屏上所顯示的流量信息與上位機(jī)軟件所顯示的數(shù)據(jù)如圖4所示。
4 總結(jié)
硅油流量計(jì)量在**生活的各種方面都有著廣泛應(yīng)用,從工業(yè)農(nóng)業(yè)產(chǎn)品生產(chǎn)到國(guó)防經(jīng)濟(jì)和基礎(chǔ)設(shè)施建設(shè)、從科學(xué)技術(shù)的理論研究到環(huán)境保護(hù),從資源節(jié)約到與人民生活中用到的生活資源的計(jì)量,都有著硅油流量計(jì)量的參與。本設(shè)計(jì)通過實(shí)現(xiàn)對(duì)流量的檢測(cè),可使人們進(jìn)一步提高的利用效率,從而達(dá)到節(jié)約用的目的。
1 硅油流量計(jì)總體設(shè)計(jì)
本文所設(shè)計(jì)的硅油流量計(jì)主要由ARM微處理器,串口通信模塊,數(shù)據(jù)存儲(chǔ)模塊,液晶顯示屏模塊以及按鍵模塊組成??傮w框架如圖1所示。系統(tǒng)初始上電,等待用戶按鍵選擇,讀寫EEPROM中的儀表系數(shù),密度,線性修正參數(shù)等具體參數(shù),接收傳感器所傳入的脈沖并對(duì)其計(jì)數(shù),內(nèi)部進(jìn)行數(shù)據(jù)處理計(jì)算出脈沖的頻率,按照傳感器提供的硅油流量計(jì)算公式和參數(shù)計(jì)算出瞬時(shí)流量和累計(jì)流量并顯示于LCD12864液晶顯示屏上。
2 硅油流量計(jì)硬件設(shè)計(jì)
2.1 微處理器*小系統(tǒng)
本設(shè)計(jì)中采用的微處理器為NXP公司的M3系列LPC1766,它具有三級(jí)流線和哈佛結(jié)構(gòu),功耗低,性能高,并且包含了眾多外設(shè)。此外,M3內(nèi)核還為L(zhǎng)PC1766提供了一個(gè)能夠降低中斷延時(shí)和實(shí)現(xiàn)高效處理中斷的嵌套向量中斷處理器。
2.2 串口通信模塊
單片機(jī)串口為TTL電平標(biāo)準(zhǔn),即+5V和0V分別代表邏輯“1”和“0”。由于TTL和RS232高低電平的邏輯和范圍不同,故這兩種標(biāo)準(zhǔn)串口之間的連接*先應(yīng)進(jìn)行電平轉(zhuǎn)換。本設(shè)計(jì)中采用sp3232芯片轉(zhuǎn)換LPC1766串口的TTL電平與上位機(jī)串口相連,進(jìn)行RS232通信。TTL到RS232電平轉(zhuǎn)換電路。注意,RS232電平較高,接通瞬間可能會(huì)產(chǎn)生非常高的瞬時(shí)電涌,這個(gè)電涌電流可能會(huì)擊毀SP3232,所以在使用這個(gè)芯片時(shí)應(yīng)拔插之前進(jìn)行斷電操作,避免熱拔插。
2.3 數(shù)據(jù)存儲(chǔ)模塊
EEPROM主要是用來存儲(chǔ)一些與測(cè)量相關(guān)的參數(shù)和測(cè)量的數(shù)據(jù)。所選的是串行EEPROM存儲(chǔ)芯片93C66,大小512B,可配置成8位或者16位結(jié)構(gòu),它通過SPI總線和LPC1766相連,對(duì)流量測(cè)量參數(shù)進(jìn)行保存。當(dāng)系統(tǒng)開始運(yùn)行時(shí),通過按鍵向存儲(chǔ)芯片寫入相關(guān)的參數(shù),從而保證流量測(cè)量結(jié)果的正確。這些參數(shù)與實(shí)際運(yùn)行環(huán)境是相關(guān),通過重新寫入相應(yīng)參數(shù)以適應(yīng)新的運(yùn)行環(huán)境。
2.4? LCD液晶顯示模塊
本設(shè)計(jì)的顯示模塊選擇的是LCD12864,用于實(shí)時(shí)顯示硅油流量計(jì)所測(cè)量的瞬時(shí)流量和累計(jì)流量。LCD12864是由128*64個(gè)液晶顯示點(diǎn)組成的一個(gè)128列*64行的陣列,自帶中文字庫,既可以顯示字母也可以顯示漢字及圖形。
3 硅油流量計(jì)軟件設(shè)計(jì)
3.1 軟件設(shè)計(jì)總流程
軟件的總體設(shè)計(jì)主要包括這幾個(gè)方面:系統(tǒng)初始化程序,LCD顯示程序,流量測(cè)量數(shù)據(jù)處理,數(shù)據(jù)存儲(chǔ)程序以及基于modbus協(xié)議的RS232串口通信程序。這里*先介紹軟件設(shè)計(jì)的總體流程圖,如圖2所示。
系統(tǒng)初始化程序主要用于微處理器各GPIO功能引腳的選擇、系統(tǒng)時(shí)鐘配置、中斷初始化及優(yōu)先級(jí)配置以及LCD液晶屏初始化。微處理器LPC1766在modbus主從通信協(xié)議中處于從機(jī)地位,為了實(shí)現(xiàn)標(biāo)準(zhǔn)的modbus協(xié)議,采用了移植freemodbus源代碼的方式。因此串口通信程序所做的只是根據(jù)LPC1766的芯片手冊(cè)對(duì)串口通信方式進(jìn)行設(shè)置和開啟串口中斷。按鍵程序主要作用是為了實(shí)現(xiàn)人機(jī)交互功能,本設(shè)計(jì)主要用了四個(gè)按鍵,分別用于參數(shù)設(shè)置時(shí)的確認(rèn),返回,增大和減小功能。
3.2 流量測(cè)量程序
渦輪式流量傳感器輸出脈沖信號(hào)的頻率與其流量大小相關(guān),并在一般情況下,有f=Kqv
式中,K為傳感器的儀表系數(shù),并在其測(cè)量范圍內(nèi),對(duì)qv而言,K相當(dāng)于一個(gè)常數(shù),通常由流量?jī)x表廠商經(jīng)過多次實(shí)驗(yàn)測(cè)得并由提供給用戶直接使用。qv為通過傳感器流體的體積流量。由此可以看出,對(duì)于流量的測(cè)量只須要測(cè)量傳感器輸出的脈沖數(shù)。脈沖信號(hào)的采集采用兩個(gè)定時(shí)器,一個(gè)用作計(jì)數(shù)模式用于對(duì)脈沖計(jì)數(shù),另一個(gè)用作重復(fù)定時(shí)器,得到單位時(shí)間內(nèi)的脈沖數(shù)。單位時(shí)間內(nèi)的脈沖數(shù)乘以儀表系數(shù)再乘以相應(yīng)的補(bǔ)償系數(shù),便得到了瞬時(shí)流量。*后,將瞬時(shí)流量累加到累積流量中,并在顯示屏上顯示出來。此程序流程圖如圖3所示。
3.3 液晶屏顯示程序
該程序主要用于實(shí)時(shí)更新流量信息,微處理器與上位機(jī)通過RS232接口以modbus協(xié)議進(jìn)行通信。*后,該設(shè)計(jì)液晶屏上所顯示的流量信息與上位機(jī)軟件所顯示的數(shù)據(jù)如圖4所示。
4 總結(jié)
硅油流量計(jì)量在**生活的各種方面都有著廣泛應(yīng)用,從工業(yè)農(nóng)業(yè)產(chǎn)品生產(chǎn)到國(guó)防經(jīng)濟(jì)和基礎(chǔ)設(shè)施建設(shè)、從科學(xué)技術(shù)的理論研究到環(huán)境保護(hù),從資源節(jié)約到與人民生活中用到的生活資源的計(jì)量,都有著硅油流量計(jì)量的參與。本設(shè)計(jì)通過實(shí)現(xiàn)對(duì)流量的檢測(cè),可使人們進(jìn)一步提高的利用效率,從而達(dá)到節(jié)約用的目的。