本發(fā)明涉及空氣盒子檢測(cè)
技術(shù)領(lǐng)域:
,具體地講,是涉及一種基于原始數(shù)據(jù)和定時(shí)器的空氣盒子熱啟動(dòng)溫度測(cè)量校準(zhǔn)方法。
背景技術(shù):
:溫度和濕度一直是居民日常生活非常關(guān)心的問題,溫濕度測(cè)量儀器從傳統(tǒng)的物理溫度計(jì)、濕度計(jì),發(fā)展到目前的高精度溫濕度傳感器。不僅在使用尺寸上得到了極大提升,測(cè)量精度范圍也進(jìn)一步提高。測(cè)量結(jié)果輸出更靈活。同時(shí)用戶對(duì)溫度準(zhǔn)確性的感知能力遠(yuǎn)大于用戶對(duì)智能設(shè)備其他傳感器的感知,所以溫濕度測(cè)量的準(zhǔn)確度直接關(guān)乎用戶的使用體驗(yàn)。正常情況下,智能檢測(cè)設(shè)備SD的制造商所采購的溫濕度傳感器在實(shí)驗(yàn)環(huán)境下,本身的測(cè)量準(zhǔn)確度都很高,而且目前市場(chǎng)上的溫濕度傳感器出廠之前都會(huì)進(jìn)行溫濕度算法校正,保證傳感器的測(cè)量精度。在SD設(shè)備如空氣盒子的實(shí)際使用過程中,由于電子設(shè)備的固有特性,在正常工作運(yùn)行會(huì)持續(xù)發(fā)熱,使SD設(shè)備內(nèi)部溫度上升,一定程度上會(huì)影響傳感器的測(cè)量,不過這種情況一般在校正算法中會(huì)考慮到,因此一般自帶校正算法的SD設(shè)備在長時(shí)間運(yùn)行后的測(cè)量精度能夠得到較好的保證。現(xiàn)有的校正算法大都基于狀態(tài)迭代算法,通過不斷的迭代過程使測(cè)量顯示的結(jié)果保持穩(wěn)定。但是現(xiàn)有的校正算法中依然忽略了一些實(shí)際情況,比如當(dāng)SD設(shè)備斷電后短時(shí)間內(nèi)再次啟動(dòng)時(shí),由于SD設(shè)備斷電后正常的自然冷卻需要一段時(shí)間,SD設(shè)備本身并沒有完全冷卻時(shí),又重新上電啟動(dòng)、使用設(shè)備,就會(huì)造成初期的溫度測(cè)量結(jié)果會(huì)高于環(huán)境真實(shí)溫度,由此出現(xiàn)測(cè)量偏差;在用戶使用體驗(yàn)上,恰恰是在SD設(shè)備剛上電啟動(dòng)時(shí),會(huì)較其他時(shí)候更關(guān)注設(shè)備測(cè)量的準(zhǔn)確度,而前述存在測(cè)量偏差問題將較為嚴(yán)重地影響用戶的實(shí)際體驗(yàn),降低對(duì)產(chǎn)品測(cè)量數(shù)據(jù)的信賴。在SD設(shè)備完全冷卻狀態(tài)時(shí)上電啟動(dòng),我們稱之為冷啟動(dòng),與之對(duì)應(yīng)的,SD設(shè)備未完全冷卻時(shí)上電啟動(dòng),我們稱之為熱啟動(dòng)?,F(xiàn)目前空氣盒子SD的熱啟動(dòng)問題是其溫度測(cè)量的難點(diǎn)?,F(xiàn)目前一種解決方案是利用空氣盒子的存儲(chǔ)器保存測(cè)量數(shù)據(jù),再重新啟動(dòng)時(shí)對(duì)比掉電時(shí)數(shù)據(jù)和啟動(dòng)時(shí)數(shù)據(jù),來獲取對(duì)應(yīng)的溫度校正的迭代次數(shù),從而直接跳過前面的校正迭代運(yùn)算過程,進(jìn)行溫度校正。但是,這種方案需要每分鐘保存數(shù)據(jù)對(duì)存儲(chǔ)器進(jìn)行讀寫操作,而現(xiàn)有設(shè)備所采用的flash存儲(chǔ)器,若長時(shí)間頻繁讀寫數(shù)據(jù),會(huì)嚴(yán)重影響硬件的使用壽命,從產(chǎn)品設(shè)計(jì)角度來講,在解決前述熱啟動(dòng)的溫度測(cè)量問題時(shí)還需要考慮到設(shè)備工作壽命問題。從實(shí)踐中發(fā)現(xiàn),基于現(xiàn)有的溫度校正算法,設(shè)備運(yùn)行時(shí)間越久,迭代次數(shù)越多結(jié)果越穩(wěn)定,如何在這種情況下減少flash存儲(chǔ)器的讀寫次數(shù),從而提高設(shè)備使用壽命,值得思考。技術(shù)實(shí)現(xiàn)要素:針對(duì)上述現(xiàn)有技術(shù)的不足,本發(fā)明提供一種基于原始數(shù)據(jù)和定時(shí)器的空氣盒子熱啟動(dòng)溫度測(cè)量校準(zhǔn)方法。為了實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:一種基于原始數(shù)據(jù)和定時(shí)器的空氣盒子熱啟動(dòng)溫度測(cè)量校準(zhǔn)方法,包括如下步驟:(S1)根據(jù)SD設(shè)備冷啟動(dòng)運(yùn)行的溫度校正算法建立一迭代次數(shù)k與溫度偏差Tempcal的映射關(guān)系表;(S2)在SD設(shè)備的存儲(chǔ)器flash中開辟一塊區(qū)域,用于每間隔一特定時(shí)間T保存一次該SD設(shè)備當(dāng)前顯示的溫度Tempold,并在保存當(dāng)前顯示的溫度時(shí)配置該SD設(shè)備內(nèi)置的RTC定時(shí)器,使該RTC定時(shí)器在SD設(shè)備掉電時(shí)開始工作,其中,所述特定時(shí)間T隨間隔次數(shù)增加而延長;(S3)當(dāng)SD設(shè)備啟動(dòng)時(shí),從所述RTC定時(shí)器讀取該SD設(shè)備的掉電時(shí)間,判斷該掉電時(shí)間是否達(dá)到設(shè)定閾值,若未達(dá)到設(shè)定閾值,表示該SD設(shè)備本次為熱啟動(dòng),執(zhí)行下一步,反之表示該SD設(shè)備本次為冷啟動(dòng);(S4)從SD設(shè)備的存儲(chǔ)器flash中讀取上次掉電時(shí)的溫度Tempold,并讀取啟動(dòng)時(shí)傳感器測(cè)量到的溫度Tempnew,根據(jù)Tempcal=Tempnew-Tempold……(式1),計(jì)算獲得本次啟動(dòng)時(shí)測(cè)量的溫度值與上次SD設(shè)備掉電時(shí)溫度值的溫度偏差Tempcal;(S5)根據(jù)獲得的溫度偏差Tempcal從所述映射關(guān)系表中查找,獲得對(duì)應(yīng)的迭代次數(shù)k,然后將該SD設(shè)備所運(yùn)行的溫度校正算法跳轉(zhuǎn)至第k次迭代時(shí)的校正狀態(tài)進(jìn)行溫度校正;(S6)在SD設(shè)備上顯示校正后的溫度值。具體地,所述SD設(shè)備運(yùn)行過程中,每間隔一特定時(shí)間T采集一次當(dāng)前顯示的溫度Tempold,將之保存于其存儲(chǔ)器flash中,并在每次保存時(shí)配置一次RTC定時(shí)器。并且為了優(yōu)化數(shù)據(jù)儲(chǔ)存量,在每次保存該SD設(shè)備當(dāng)前的溫度Tempold時(shí),覆蓋上一次所保存的內(nèi)容。具體地,當(dāng)判斷該SD設(shè)備本次為冷啟動(dòng)時(shí),按SD設(shè)備運(yùn)行的溫度校正算法校正并顯示溫度值。其中所述溫度校正算法基于迭代算法,為現(xiàn)有技術(shù),本發(fā)明中不再贅述。作為優(yōu)選,所述步驟(S5)中,計(jì)算獲得的溫度偏差Tempcal的值,若不在所述映射關(guān)系表記載的溫度偏差Tempcal范圍內(nèi),則按該映射關(guān)系表記載的溫度偏差Tempcal范圍的對(duì)應(yīng)端點(diǎn)取值,若其在所述映射關(guān)系表記載的溫度偏差Tempcal范圍內(nèi)且不為該映射關(guān)系表內(nèi)的記載值,則將該計(jì)算獲得的溫度偏差Tempcal的值向下取最近值,從而避免有時(shí)無法準(zhǔn)確對(duì)照數(shù)據(jù)的情況。進(jìn)一步地,所述迭代次數(shù)k與溫度偏差Tempcal的映射關(guān)系表為預(yù)設(shè),預(yù)設(shè)的數(shù)據(jù)由該SD設(shè)備的制造商根據(jù)實(shí)驗(yàn)數(shù)據(jù)測(cè)算獲得,并寫入該SD設(shè)備的存儲(chǔ)器中固化。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:(1)本發(fā)明通過大量實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),設(shè)備熱啟動(dòng)時(shí),上電測(cè)量的溫度值和剛掉電時(shí)的溫度值存在一個(gè)差值,根據(jù)這個(gè)差值可以建立一個(gè)與設(shè)備正常校正算法中迭代次數(shù)相關(guān)的映射,通過該映射關(guān)系,使設(shè)備直接從這個(gè)次數(shù)的迭代開始進(jìn)行溫度校正,有效縮短了設(shè)備測(cè)量數(shù)據(jù)并使數(shù)據(jù)趨于穩(wěn)定的時(shí)間(在現(xiàn)有的溫度校正算法中迭代次數(shù)越多結(jié)果越穩(wěn)定),并且使熱啟動(dòng)的測(cè)量準(zhǔn)確性能得到了極大提高,本發(fā)明構(gòu)思新穎,設(shè)計(jì)巧妙,具有廣泛的應(yīng)用前景,適合推廣應(yīng)用。(2)本發(fā)明基于大量的實(shí)驗(yàn)數(shù)據(jù),建立了如何判斷設(shè)備熱啟動(dòng)的方法,同時(shí)根據(jù)設(shè)備剛上電溫度值和掉電時(shí)溫度差值,建立了和冷啟動(dòng)溫度校正算法的迭代次數(shù)的映射關(guān)系;當(dāng)判斷設(shè)備為熱啟動(dòng)時(shí),可以直接跳過前面的迭代運(yùn)算,進(jìn)行溫度校正,使SD設(shè)備在熱啟動(dòng)時(shí)可以短時(shí)間內(nèi)讀數(shù)平穩(wěn)且準(zhǔn)確,可以很好的解決設(shè)備熱啟動(dòng)時(shí),剛上電時(shí)讀數(shù)偏差較大的問題。(3)本發(fā)明巧妙利用電子設(shè)備內(nèi)置的RTC定時(shí)器功能,將時(shí)間數(shù)據(jù)的保存與溫度數(shù)據(jù)分離,減少了存儲(chǔ)量,也減少了對(duì)flash存儲(chǔ)器的擦寫,一定程度上提高了使用壽命;并且根據(jù)現(xiàn)有的溫度校正算法中迭代次數(shù)越多結(jié)果越穩(wěn)定的特定,優(yōu)化了長時(shí)間運(yùn)行后的溫度數(shù)據(jù)保存頻率,進(jìn)一步降低了對(duì)flash存儲(chǔ)器的擦寫操作,提高了壽命,從而在保證數(shù)據(jù)存儲(chǔ)準(zhǔn)確度和設(shè)備使用壽命上作出了比較完美的平衡。(4)本發(fā)明利用制造商已有的大量測(cè)試數(shù)據(jù)直接制得該映射關(guān)系表,固化于存儲(chǔ)器內(nèi),保證測(cè)量穩(wěn)定性,也避免了在運(yùn)行中制表對(duì)存儲(chǔ)器的頻繁讀取導(dǎo)致硬件老化。附圖說明圖1為本發(fā)明的流程示意圖。具體實(shí)施方式下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明,本發(fā)明的實(shí)施方式包括但不限于下列實(shí)施例。實(shí)施例如圖1所示,該基于原始數(shù)據(jù)和定時(shí)器的空氣盒子熱啟動(dòng)溫度測(cè)量校準(zhǔn)方法,包括如下步驟:(S1)根據(jù)SD設(shè)備冷啟動(dòng)運(yùn)行的溫度校正算法建立一迭代次數(shù)k與溫度偏差Tempcal的映射關(guān)系表,如表一所示為一例映射關(guān)系表具體內(nèi)容;(S2)在SD設(shè)備的存儲(chǔ)器flash中開辟一塊區(qū)域,用于每間隔一特定時(shí)間T保存一次該SD設(shè)備當(dāng)前顯示的溫度Tempold,并在保存當(dāng)前顯示的溫度時(shí)配置該SD設(shè)備內(nèi)置的RTC定時(shí)器,使該RTC定時(shí)器在SD設(shè)備掉電時(shí)開始工作,其中,所述特定時(shí)間T隨間隔次數(shù)增加而延長;作為實(shí)際生產(chǎn)設(shè)計(jì)中的一種選擇,該特定時(shí)間T在運(yùn)行前半小時(shí)內(nèi)為一分鐘,之后為4小時(shí),也可以有其他較為平滑的過渡方式,例如前10次間隔為1分鐘,第二個(gè)十次間隔為2分鐘,第三個(gè)十次間隔為5分鐘,之后為1小時(shí)等等;一般來說,該特定時(shí)間T的設(shè)置在SD設(shè)備啟動(dòng)后初期較短,隨設(shè)備運(yùn)行時(shí)間越久越長,另外還可以考慮到迭代次數(shù),次數(shù)越多T越長,在實(shí)際設(shè)置中也可綜合各方面因素;(S3)當(dāng)SD設(shè)備啟動(dòng)時(shí),從所述RTC定時(shí)器讀取該SD設(shè)備的掉電時(shí)間,判斷該掉電時(shí)間是否達(dá)到設(shè)定閾值,若未達(dá)到設(shè)定閾值,表示該SD設(shè)備本次為熱啟動(dòng),執(zhí)行下一步,反之表示該SD設(shè)備本次為冷啟動(dòng),按SD設(shè)備運(yùn)行的溫度校正算法校正并顯示溫度值;對(duì)于該設(shè)定閾值的具體設(shè)置,主要是根據(jù)對(duì)現(xiàn)有空氣盒子SD的大量實(shí)驗(yàn)測(cè)試數(shù)據(jù)和工程經(jīng)驗(yàn)判斷,一般在正常環(huán)境下設(shè)備冷卻一個(gè)小時(shí)即可完全冷卻,因此一般將該設(shè)定閾值設(shè)為1小時(shí),1小時(shí)以內(nèi)再次啟動(dòng)該空氣盒子則認(rèn)定為熱啟動(dòng)過程;(S4)從SD設(shè)備的存儲(chǔ)器flash中讀取上次掉電時(shí)的溫度Tempold,并讀取啟動(dòng)時(shí)傳感器測(cè)量到的溫度Tempnew,根據(jù)Tempcal=Tempnew-Tempold……(式1),計(jì)算獲得本次啟動(dòng)時(shí)測(cè)量的溫度值與上次SD設(shè)備掉電時(shí)溫度值的溫度偏差Tempcal;(S5)根據(jù)獲得的溫度偏差Tempcal從所述映射關(guān)系表中查找,獲得對(duì)應(yīng)的迭代次數(shù)k,然后將該SD設(shè)備所運(yùn)行的溫度校正算法跳轉(zhuǎn)至第k次迭代時(shí)的校正狀態(tài)進(jìn)行溫度校正;優(yōu)選地,計(jì)算獲得的溫度偏差Tempcal的值,若不在所述映射關(guān)系表記載的溫度偏差Tempcal范圍內(nèi),則按該映射關(guān)系表記載的溫度偏差Tempcal范圍的對(duì)應(yīng)端點(diǎn)取值,若其在所述映射關(guān)系表記載的溫度偏差Tempcal范圍內(nèi)且不為該映射關(guān)系表內(nèi)的記載值,則將該計(jì)算獲得的溫度偏差Tempcal的值向下取最近值,從而避免有時(shí)無法準(zhǔn)確對(duì)照數(shù)據(jù)的情況;例如表一,當(dāng)Tempcal<0.8時(shí)按k=1算,Tempcal>6.3時(shí)按k=58算,如Tempcal=4.3不為表內(nèi)記載值,則向下取最近值4.1算;(S6)在SD設(shè)備上顯示校正后的溫度值。具體地,所述SD設(shè)備運(yùn)行過程中,每間隔一特定時(shí)間T采集一次當(dāng)前顯示的溫度Tempold,將之保存于其存儲(chǔ)器flash中,并在每次保存時(shí)配置一次RTC定時(shí)器,該特定時(shí)間T的設(shè)置如前所述,每次配置RTC定時(shí)器是將RTC定時(shí)器計(jì)時(shí)數(shù)據(jù)重置為零。并且為了優(yōu)化數(shù)據(jù)儲(chǔ)存量,在每次保存該SD設(shè)備當(dāng)前的溫度Tempold時(shí),覆蓋上一次所保存的內(nèi)容。kTempcalkTempcalkTempcal10.5124.1235.520.8134.4245.631.2144.5255.741.7154.6275.852.2164.8285.962.5174.933672.8185366.183.2195.1446.293.4205.2586.3103.7215.3113.9225.4表一為一例映射關(guān)系表具體內(nèi)容進(jìn)一步地,所述迭代次數(shù)k與溫度偏差Tempcal的映射關(guān)系表為預(yù)設(shè),預(yù)設(shè)的數(shù)據(jù)由該SD設(shè)備的制造商根據(jù)實(shí)驗(yàn)數(shù)據(jù)測(cè)算獲得,并寫入該SD設(shè)備的存儲(chǔ)器中固化。上述實(shí)施例僅為本發(fā)明的優(yōu)選實(shí)施例,并非對(duì)本發(fā)明保護(hù)范圍的限制,但凡采用本發(fā)明的設(shè)計(jì)原理,以及在此基礎(chǔ)上進(jìn)行非創(chuàng)造性勞動(dòng)而作出的變化,均應(yīng)屬于本發(fā)明的保護(hù)范圍之內(nèi)。當(dāng)前第1頁1 2 3