<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設計應用 > 一種用于溫濕度批量自動(dòng)校準系統的設計與實(shí)現

一種用于溫濕度批量自動(dòng)校準系統的設計與實(shí)現

作者:蘭芳芳,呂峰(安徽安光環(huán)境科技有限公司,合肥 230088) 時(shí)間:2023-05-27 來(lái)源:電子產(chǎn)品世界 收藏
編者按:設計了一種基于FPGA的多UART擴展系統,用來(lái)批量采集溫濕度傳感器的數據,簡(jiǎn)單介紹FPGA擴展UART的方法。上位機控制程序對接收到的批量溫濕度數據進(jìn)行自動(dòng)分選、存儲,并實(shí)現批量自動(dòng)線(xiàn)性校準。溫濕度校準前后的測量數據表明,設備數據的一致性得到很大提升。此設計已成功應用于生產(chǎn)校準系統中,方便快捷。此設計方法和思想可以推廣到其他需要批量數據采集,批量數據自動(dòng)處理的場(chǎng)合。


本文引用地址:http://dyxdggzs.com/article/202305/447052.htm

0 引言

在顆粒物檢測系統中,溫濕度參數的一致性,不僅影響顆粒物檢測設備間的一致性,還影響顆粒物測量的準確性[1]。因此在設備出廠(chǎng)前需要對各溫濕度傳感器進(jìn)行一致性校準。以前溫濕度的校準采用單點(diǎn)校準,設備長(cháng)期運行,溫濕度又會(huì )跑偏,因此本系統采用多點(diǎn)校準。而溫濕度的線(xiàn)性校準需要對多個(gè)溫度點(diǎn)和濕度點(diǎn)進(jìn)行測量。如果一次只能同時(shí)測量幾個(gè)溫濕度傳感器數據,再手動(dòng)擬合,效率低下,需要投入大量的人工,不能滿(mǎn)足生產(chǎn)的大量需求。為提高溫濕度傳感器的校準效率,需要同時(shí)對多個(gè)傳感器進(jìn)行校準,這就需要多個(gè)串口。

目前一般的單片機最多只有3~4 個(gè)UART,不能滿(mǎn)足同時(shí)校準的要求。雖然串口的擴展可以通過(guò)分時(shí)復用、軟件編程、使用專(zhuān)用芯片等方法解決,但這些方法都會(huì )增加處理器的占用時(shí)間或者增加外圍電路的復雜程度。針對上述問(wèn)題,本文設計了一種基于 的多串口擴展系統,滿(mǎn)足校準系統多串口擴展的需求,無(wú)需額外的硬件串口擴展[2]。該校準系統還可以實(shí)現數據自動(dòng)處理,自動(dòng),輸出校準系數,免去手動(dòng)擬合的麻煩。在提升溫濕度校準的效率的同時(shí),也提高了設備之間數據的一致性。

1685192415777738.png

1 系統設計

溫濕度批量系統的基礎是 的多串口擴展[3]。圖1 為設計的總體框圖。使用 內部的UART IP 核進(jìn)行16 路UART 擴展,其中15 路UART接口分別與15 路溫濕度傳感器進(jìn)行通信,15 路通信數據通過(guò)緩沖寄存器存儲后,由處理器仲裁,經(jīng)另一路UART 上傳至PC 機。PC 機程序通過(guò)不同幀頭識別不同通道的溫濕度傳感器數據,并分別存儲,實(shí)現溫濕度的批量。

1.1 FPGA的多

本設計選擇的FPGA 型號為Altera 公司的CycloneII 系列EP4CE6E22C8 芯片。使用FPGA 內部的UARTIP 核擴展16 路串口[4],為與溫濕度傳感器接口相匹配,串行端口采用RS3485 對UART 進(jìn)行電平轉換。

使用UART IP 核擴展串口,方便快捷,可以調用同一個(gè)IP 核生成模塊使不同擴展串口設置相同的波特率、數據位、停止位等,也可以調用不同IP 核生成模塊對不同串口設置不同的波特率、數據位等。本設計中使用UART IP 擴展生成16 路串口,其中15 路串口設置相同,波特率9 600,8 位數據位,1 位停止位,無(wú)奇偶校驗,它們分別接收對應的溫濕度傳感器數據。另一路串口波特率設置115 200,與PC 機相連,傳輸采集到的溫濕度數據。

使用Quartus II 對整個(gè)系統進(jìn)行綜合仿真,圖2 為FPGA 綜合后的資源消耗情況,邏輯單元消耗占整個(gè)資源的33%,還有大量的資源沒(méi)有使用。根據FPGA 可編程器件的特性,只要選用芯片的資源足夠,可以根據需求擴展更多的UART 接口[5]。

1.2 數據的仲裁傳輸

FPGA 串口與PC 機的數據交互采用輪詢(xún)的方式。FPGA 的15 個(gè)串口采集到的數據存儲在緩沖寄存器中,每個(gè)UART 通道在數據接收完成時(shí),會(huì )產(chǎn)生1 個(gè)接收完成標志信號fl ag。數據仲裁模塊由兩個(gè)3-8 譯碼器組成,串口每次接收到PC 機的數據命令時(shí),會(huì )輪詢(xún)每個(gè)UART 通道的接收完成標志。如果標志為1,代表此通道有數據需要發(fā)送,設置串口發(fā)送模塊的發(fā)送開(kāi)始標志位,發(fā)送對應通道寄存器的數據,待數據發(fā)送完成,把此通道標志位置0。采用輪詢(xún)的方式,不會(huì )遺漏每個(gè)uart 通道的數據。

2 自動(dòng)校準的實(shí)現

2.1 PC機自動(dòng)校準界面

批量自動(dòng)校準在PC 機上實(shí)現,上位機的數據采集處理程序用C# 編寫(xiě)[6]。如圖3 所示,“主界面”顯示各通道的實(shí)時(shí)傳輸數據;“設置”界面可以設置串口的波特率等參數,同時(shí)該軟件也支持TCP 傳輸,設置界面同樣可以設置IP、端口號等?!靶省苯缑婵梢猿跏蓟瘍炔繀?、保存、查詢(xún)、校準KB 參數等。

image.png

圖2 FPGA資源消耗情況

把各通道的溫濕度傳感器一起放入溫濕度控制倉內,使用溫濕度控制倉從低到高依次設置5 組溫度和5組濕度,待每次溫濕度控制倉示值穩定后,通過(guò)PC 機發(fā)送命令給FPGA 擴展口16 把各通道數據輪詢(xún)傳送至PC 機。每組數據測量10 次,程序中對每組數據使用中值濾波取平均值[7]。待所有數據測量結束,分別點(diǎn)擊溫度校準和濕度校準,程序自動(dòng)完成每組數據的平均和線(xiàn)性校準。程序界面可以選擇單個(gè)通道的自動(dòng)校準,也可以選擇所有通道同時(shí)完成自動(dòng)校準。

2.2 校準數據處理

PC 上位機通過(guò)FPGA 擴展的第16 個(gè)UART,接收所有通道采集的傳感器數據,程序通過(guò)幀頭判斷數據對應的通道。對于每一個(gè)控制倉設置點(diǎn),程序自動(dòng)讀取10 組數據,并把對應通道的數據分別存儲。然后使用中值濾波算法自動(dòng)計算得到每個(gè)通道10 組數據的平均值另外外存。依次把所有控制倉設置點(diǎn)的數據測量結束,就會(huì )得到5 組溫度值和5 組濕度值的平均值,分別點(diǎn)擊溫度校準和濕度校準,程序會(huì )自動(dòng)調用函數完成15 個(gè)通道的溫度和濕度校準,點(diǎn)擊“KB 查詢(xún)”可以看到當前的校準系數。如圖4 所示為傳感器出廠(chǎng)校準得到的校準系數,這與之前對每組數據手動(dòng)求平均,再線(xiàn)性擬合,效率得到大幅提升。

1685192700557490.png

圖3 自動(dòng)校準界面

1685192736109317.png

圖4 校準系數查詢(xún)

3 數據測試與分析

在顆粒物測量設備中,溫濕度傳感器用于環(huán)境溫濕度和采樣氣體溫濕度的測量。在線(xiàn)顆粒物設備的濃度與標準的手工設備相比,會(huì )受到不同地區、不同季節氣候的影響,因此設備顆粒物的濃度需要使用環(huán)境溫度濕度對其進(jìn)行修正[8]。同時(shí)溫濕度不一致也會(huì )直接影響各設備的加熱策略,所以溫濕度的校準直接影響設備之間顆粒物濃度的一致性。圖5 和圖6 為兩臺設備分別選取26 d 的運行數據,溫濕度沒(méi)有校準和校準后的數據擬合效果,根據“環(huán)境空氣顆粒物(PM10 和PM2.5)連續自動(dòng)監測系統技術(shù)要求及檢測方法”[9],從擬合系數系數看,K 值從1.02 降到了1,兩臺數據的一致性有很大提高。而溫濕度對顆粒物濃度修正的影響有專(zhuān)門(mén)的課題來(lái)研究,在此不做詳細的分析。

image.png

圖5 溫濕度未校準的擬合系數

image.png

圖6 溫濕度校準后的擬合系數

4 結束語(yǔ)

基于FPGA設計的多批量自動(dòng)校準系統,不僅實(shí)現了多通道溫濕度數據的批量采集,又實(shí)現了批量數據的自動(dòng)處理,自動(dòng)線(xiàn)性擬合校準,該設計已經(jīng)成功應用于設備生產(chǎn)的出廠(chǎng)校準中,且性能穩定。此校準系統的設計方法和設計思想并不局限于溫濕度的批量校準,也可以推廣到其他需要批量數據采集,批量數據自動(dòng)處理的場(chǎng)合,來(lái)提高工作效率。

參考文獻:

[1] 靳燕,王曉東.基于β射線(xiàn)和光散射法的顆粒物測量系統[J].山西電子技術(shù),2022,27(4):27-35.

[2] 顏世威,馮沖,施展,等.基于FPGA的多串口傳輸電路設計及驗證[J].電子測試,2019,19(4):16-18.

[3] 殷安龍,張持健,陳林,等.基于FPGA的多串口通信設計與實(shí)現[J].電子設計工程,2016,24(17):45-47.

[4] 吳朝暉,曲立國.UART波特率檢測電路的FPGA設計算法與實(shí)現[J].現代電子技術(shù),2022,45(20):41-44.

[5] 蘇長(cháng)青,賀楠,李大琦,等.FPGA在應用編程技術(shù)的一種低成本實(shí)現[J].電子世界,2021,3(48):114-116.

[6] DANIEL S,CAL S.C#圖解教程[M].北京:人民郵電出版社,2019:102-153.

[7] 安春蓮,楊古月,楊延菊,等.基于中值濾波預處理的強沖擊噪聲背景測向方法[J].電子學(xué)報,2021,49(6):1159-1166.

[8] 景寬,劉保獻,王焱,等.溫濕度對PM2.5質(zhì)量濃度監測的影響[J].中國環(huán)境監測,2018,34(4):124-132.HJ653-2019.

[9] 環(huán)境空氣顆粒物(PM10和PM2.5)連續自動(dòng)監測系統技術(shù)要求及檢測方法[S].

(本文來(lái)源于《電子產(chǎn)品世界》雜志2023年5月期)



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>