本發(fā)明屬于傳感器的技術(shù)領(lǐng)域,特別涉及一種壓力傳感器的抗干擾方法。
背景技術(shù):
隨著電子產(chǎn)品的日益普及,電子信號(hào)干擾無處不在,特別是智能硬件興起后,越來越多的硬件設(shè)備需要和手機(jī)來配合使用,因而受到干擾的機(jī)會(huì)也更大。對(duì)于一些有高精度測(cè)量功能的壓力傳感器等來說,射頻信號(hào)干擾嚴(yán)重影響其測(cè)量精度,因此需要進(jìn)行抗射頻信號(hào)干擾的設(shè)計(jì)。傳統(tǒng)的抗干擾設(shè)計(jì)一般是針對(duì)廣譜的射頻干擾,應(yīng)對(duì)措施包括硬件和軟件兩大塊,硬件上例如增加RC低通濾波器,將高頻干擾信號(hào)濾除;軟件上,也采用增加低通濾波器、陷波濾波器、中值濾波、剔除最大最小值等方法。以上手段可以對(duì)高頻的射頻干擾起到較好的抑制效果。但以上手段,若采用硬件辦法,則容易增加成本。采用軟件方法,則可能導(dǎo)致測(cè)量數(shù)據(jù)的刷新速度下降,將有效信號(hào)與干擾信號(hào)混淆濾除,造成秤重滯后等現(xiàn)象。目前一般的壓力信號(hào)處理流程基本都是采集到傳感器信號(hào)后進(jìn)行濾波后輸出顯示,但這種方法如果濾波系數(shù)大的話,容易將有效的壓力變化數(shù)據(jù)濾除。造成有效數(shù)據(jù)反應(yīng)滯后現(xiàn)象,特別是在有射頻干擾的同時(shí)有壓力變化過程中、如果濾波系數(shù)小得話,容易將干擾信號(hào)放過,造成嚴(yán)重的射頻干擾。
專利申請(qǐng)201410240293.0提供了一種流體微壓力傳感器及其制備與檢測(cè)方法,傳感器從上到下主要包括上薄板、中薄板和基底;其中,中薄板、上薄板以及上支柱形成上空腔,中薄板的上表面或上薄板的下表面設(shè)置有上絕緣層;中薄板、基底以及下支柱形成下空腔,中薄板的下表面或基底的上表面設(shè)置有下絕緣層。上薄板用作傳感器壓力敏感元件,中薄板用作傳感器的諧振元件,上薄板、中薄板和基底同時(shí)用作傳感器的上、中和下電極。壓力測(cè)量時(shí),壓力引起的上薄板變形導(dǎo)致中薄板所受靜電力發(fā)生改變,進(jìn)而引起中薄板諧振頻率發(fā)生變化,通過該諧振頻率和壓力變化之間的關(guān)系即可實(shí)現(xiàn)壓力測(cè)量。該專利 申請(qǐng)雖然能夠進(jìn)行壓力傳感器的壓力變化控制,但是其是通過硬件改進(jìn)來實(shí)現(xiàn)的,大大增加了成本和制作的復(fù)雜度。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明目的在于提供一種快速判斷壓力傳感器壓力突變的方法,該方法可以有效區(qū)分來自外界射頻干擾信號(hào)和有效壓力變化信號(hào),從而選擇不同的濾波方法或?yàn)V波系數(shù)以達(dá)到快速響應(yīng)有效信號(hào)而有效濾除干擾信號(hào),且不增加硬件成本,不影響測(cè)量有效數(shù)據(jù)的響應(yīng)速度。
為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案為:
一種快速判斷壓力傳感器壓力突變的方法,其特征在于該方法主要是對(duì)壓力傳感器采樣數(shù)據(jù)進(jìn)行判斷,若信號(hào)變化為有效的壓力變化數(shù)據(jù),則進(jìn)入壓力變化數(shù)據(jù)處理,保證系統(tǒng)對(duì)有效壓力數(shù)據(jù)的快速響應(yīng);若信號(hào)變化不是有效的壓力變化數(shù)據(jù),則進(jìn)入濾波數(shù)據(jù)處理,以高效的濾除無效信號(hào)干擾,保證系統(tǒng)的抗干擾能力。
進(jìn)一步,所述方法,其具體的實(shí)現(xiàn)步驟為:
101、傳感器采集壓力數(shù)據(jù);
102、判斷是否單邊存在壓力連續(xù)變化;如果是,則進(jìn)行下一步,如果否,則進(jìn)入105步驟;
103、將壓力變化數(shù)據(jù)進(jìn)行處理,濾波系數(shù)進(jìn)行放大,以濾除干擾信號(hào);
104、根據(jù)壓力變化數(shù)據(jù)進(jìn)行濾波,濾波后轉(zhuǎn)入106步驟;
105、正常濾波;
106、數(shù)據(jù)輸出。
更進(jìn)一步,當(dāng)單邊上升下降判斷壓力連續(xù)單邊變化時(shí),該方法中主要對(duì)于新數(shù)據(jù)是否為有效壓力變化數(shù)據(jù)進(jìn)行判斷。若為有效數(shù)據(jù)則進(jìn)行壓力變化數(shù)據(jù)處理,若不是則進(jìn)入正常濾波程序處理。具體的方法如下:
步驟S101:讀入新的一筆測(cè)量數(shù)據(jù),并進(jìn)行滑動(dòng)濾波,不影響采樣速度;
步驟S102:比較本次滑動(dòng)濾波值與上次滑動(dòng)濾波值的差值是否大于有效噪聲。如果大于有效噪聲,則說明有數(shù)據(jù)變化,則進(jìn)入步驟S104;如果小于有效噪聲,則說明是傳感器正常熱噪聲,并沒有數(shù)據(jù)變化,則進(jìn)入步驟S103;噪聲 是指測(cè)量的數(shù)據(jù)序列的最大噪聲值,一般認(rèn)為是有效噪聲值RMS噪聲的6.6倍,實(shí)際使用時(shí)有效噪聲可以取一個(gè)比6.6倍RMS噪聲更大一點(diǎn)的值;總之有效噪聲是一個(gè)預(yù)設(shè)根據(jù)測(cè)量數(shù)據(jù)序列自身屬性有關(guān)的噪聲閾值。該值設(shè)得過大時(shí),整個(gè)方法的抗外界干擾的效果會(huì)下降;但如果該值設(shè)得太小,則有可能丟失有用的數(shù)據(jù);
步驟S103:數(shù)據(jù)穩(wěn)定,沒有變化,熱噪聲數(shù)據(jù)計(jì)數(shù)器加1;結(jié)束,等待下次采樣值;
步驟S104:判斷熱噪聲數(shù)據(jù)計(jì)數(shù)器是否大于穩(wěn)定數(shù)指定值,如大于穩(wěn)定數(shù)指定值,則判斷為噪聲,進(jìn)入步驟S105;如小于穩(wěn)定數(shù)指定值,則進(jìn)入步驟S106;
步驟S105:上升和下降計(jì)數(shù)器清零,結(jié)束,等待下次采樣值;
步驟S106:判斷目前是數(shù)據(jù)是上升趨勢(shì),還是下降趨勢(shì),如是上升趨勢(shì),則進(jìn)入步驟S112,否則進(jìn)入步驟S107;
步驟S107:判斷本次滑動(dòng)濾波值與上次滑動(dòng)濾波值大??;如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則進(jìn)入步驟S108,如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則進(jìn)入步驟S109;
步驟S108:清零下降次數(shù)計(jì)數(shù)器,將標(biāo)志置為數(shù)據(jù)上升趨勢(shì),結(jié)束,等待下次采樣值;
步驟S109:將下降次數(shù)計(jì)數(shù)器加1,熱噪聲數(shù)據(jù)計(jì)數(shù)器清0,進(jìn)入步驟S110;
步驟S110:判斷下降次數(shù)計(jì)數(shù)器是否大于預(yù)設(shè)值,如果大于預(yù)設(shè)值,則進(jìn)入步驟S111,如果小于預(yù)設(shè)值,則結(jié)束,等待下次采樣值;
步驟S111:連續(xù)單邊下降預(yù)設(shè)數(shù)量,將本次滑動(dòng)濾波值輸出,進(jìn)入壓力降低程序;
步驟S112:判斷本次滑動(dòng)濾波值與上次滑動(dòng)濾波值大小,如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則進(jìn)入步驟S113,如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則進(jìn)入步驟S114;
步驟S113:清零上升次數(shù)計(jì)數(shù)器,將標(biāo)志置為數(shù)據(jù)下降趨勢(shì),熱噪聲數(shù)據(jù)計(jì)數(shù)器清0,結(jié)束,等待下次采樣值;
步驟S114:將上升次數(shù)計(jì)數(shù)器加1,熱噪聲數(shù)據(jù)計(jì)數(shù)器清0,進(jìn)入步驟S115;
步驟S115:判斷上升次數(shù)計(jì)數(shù)器是否大于預(yù)設(shè)值,如果大于預(yù)設(shè)值,則進(jìn)入步驟S116,如果小于預(yù)設(shè)值,則結(jié)束,等待下次采樣值;
步驟S116:連續(xù)單邊上升預(yù)設(shè)數(shù)量,說明正在壓力增加過程,將本次滑動(dòng)濾波值輸出,進(jìn)入壓力增加程序。
更進(jìn)一步,當(dāng)阻尼震蕩判斷壓力增加時(shí),該方法主要對(duì)于新數(shù)據(jù)是否為有效壓力增加數(shù)據(jù)進(jìn)行判斷。若為有效數(shù)據(jù)則進(jìn)行壓力增加數(shù)據(jù)處理,若不是則進(jìn)入正常濾波程序處理。具體的方法如下:
步驟S201:讀入新的一筆測(cè)量數(shù)據(jù),并進(jìn)行滑動(dòng)濾波,進(jìn)入步驟S202;
步驟S202:將峰谷波計(jì)數(shù)器加1,并判斷是否大于預(yù)設(shè)的峰谷周期數(shù);峰谷周期數(shù)是指在設(shè)定的時(shí)間內(nèi)有無發(fā)生峰谷拐點(diǎn),如果峰谷拐點(diǎn)超時(shí),則步入步驟S203,則進(jìn)入步驟S204繼續(xù)判斷;
步驟S203:峰谷拐點(diǎn)超時(shí),置測(cè)峰標(biāo)志,清零峰谷值數(shù)量,清零峰谷波計(jì)數(shù)器,退出,等待下次采樣值;
步驟S204:將最近2次滑動(dòng)濾波值的平均值減去上2次滑動(dòng)濾波值得平均值求的差值。如采集了2組數(shù)據(jù),第一次采集的數(shù)據(jù)為D1,第一次采集的數(shù)據(jù)為D2,第三次采集的數(shù)據(jù)為D3,第四次采集的數(shù)據(jù)為D4,那么差值就是(D4+D3)/2-(D2+D1)/2;
步驟S205:將S204求到的差值與設(shè)置的閾值進(jìn)行比較,如果小于閾值。則退出,等待下次采用數(shù)據(jù);如大于閾值,說明有大數(shù)據(jù)進(jìn)來,則進(jìn)入步驟S206繼續(xù)判斷;
步驟S206:判斷測(cè)峰標(biāo)志,如果為1,則進(jìn)入步驟S212,進(jìn)行峰值判斷,否則,進(jìn)入步驟S207,進(jìn)行谷值判斷;
步驟S207:進(jìn)入谷值判斷,判斷上次是上升狀態(tài)還是下降狀態(tài),如果是上升狀態(tài),則進(jìn)入步驟S210,等待下降狀態(tài),否則,進(jìn)入步驟S208找出谷值;
步驟S208:當(dāng)前是下降趨勢(shì),找出谷值拐點(diǎn),如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則說明變成上升趨勢(shì),谷值出現(xiàn),進(jìn)入步驟S209,否則說明繼續(xù)下降趨勢(shì),進(jìn)入步驟S217;
步驟S209:谷值出現(xiàn),置測(cè)峰標(biāo)志,置上升狀態(tài)標(biāo)志(上升狀態(tài)標(biāo)志為1),清零峰谷波計(jì)數(shù)器,峰谷值數(shù)量加1;上次滑動(dòng)濾波值為本次谷值,計(jì)算上次 峰值與本次谷值之間的峰谷差值,并保存,進(jìn)入步驟S217;
步驟S210:當(dāng)前是上升趨勢(shì),如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則進(jìn)入步驟S217,否則,則進(jìn)入步驟S211;
步驟S211:進(jìn)入了下降趨勢(shì),清空上升狀態(tài)標(biāo)志,進(jìn)入步驟S217,等待谷值;
步驟S212:進(jìn)入峰值判斷,判斷上次是上升狀態(tài)還是下降狀態(tài)(上升狀態(tài)標(biāo)志為1),如果是下降狀態(tài),則進(jìn)入步驟S215,等待上升狀態(tài),否則,進(jìn)入步驟S213找出峰值;
步驟S213:當(dāng)前是上升趨勢(shì),找出峰值拐點(diǎn);如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則說明變成下降趨勢(shì),峰值出現(xiàn),進(jìn)入步驟S214,否則說明繼續(xù)上趨勢(shì),進(jìn)入步驟S217;
步驟S214:峰值出現(xiàn),清測(cè)峰標(biāo)志(開始測(cè)谷),清上升狀態(tài)標(biāo)志,清峰谷波計(jì)數(shù)器,峰谷值數(shù)量加1,上次滑動(dòng)濾波值為本次峰值,并保存,進(jìn)入步驟S217;
步驟S215:當(dāng)前是下降趨勢(shì),如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則說明還是下降趨勢(shì),進(jìn)入步驟S217,否則,說明變成上升趨勢(shì),則進(jìn)入步驟S216;
步驟S216:進(jìn)入了上升趨勢(shì),置上升狀態(tài)標(biāo)志,進(jìn)入步驟S217,等待峰值;
步驟S217:峰谷值數(shù)量有沒有到達(dá)6次,沒有6次則退出,等待下次采樣值。如果達(dá)到6次,則進(jìn)入步驟S218進(jìn)行判斷是否有效阻尼震蕩上稱;
步驟S218:置測(cè)峰標(biāo)志,清峰谷值數(shù)量,準(zhǔn)備測(cè)量下組波形;
步驟S219:判斷第一個(gè)峰谷值差值是否比第二個(gè)峰谷值差值大(最早保存的峰谷值差值為第一個(gè),最近保持的峰谷值差值為第三個(gè)),如果比第二個(gè)大,進(jìn)入步驟S220繼續(xù)判斷,否則,說明波形異常,進(jìn)入步驟S223處理;
步驟S220:判斷第二個(gè)峰谷值差值是否比第三個(gè)峰谷值差值大(最早保存的峰谷值差值為第一個(gè),最近保持的峰谷值差值為第三個(gè)),如果比第三個(gè)大,說明波形正常,進(jìn)入步驟S221處理,否則說明波形異常,進(jìn)入步驟S223處理;
步驟S221:連續(xù)3個(gè)峰谷值均為衰減狀態(tài),則可以認(rèn)定為阻尼震蕩壓力增加,判斷有無阻尼震蕩壓力增加標(biāo)志,如有,則進(jìn)入壓力增加程序,否則進(jìn)入 步驟S222;
步驟S222:置阻尼震蕩壓力增加標(biāo)志,進(jìn)入壓力增加程序;
步驟S223:連續(xù)3個(gè)峰谷值不為衰減狀態(tài),將峰谷值數(shù)量等于4,丟掉最近保存的峰谷值差值,將第二個(gè)峰谷值差值保存為第一個(gè),第三個(gè)峰谷值差值保存為第二個(gè),退出,等待下次采樣值。
所述步驟S219、220中,所述峰谷值差值是取三個(gè)時(shí)間點(diǎn)的峰谷值差值,最早保存時(shí)間點(diǎn)的峰谷值差值為第一個(gè),中間保持時(shí)間點(diǎn)的峰谷值差值為第二個(gè),最近保持時(shí)間點(diǎn)的峰谷值差值為第三個(gè)。
本發(fā)明所述的快速判斷壓力傳感器壓力突變的方法,能夠快速判斷壓力傳感器的信號(hào)變化是正常的壓力變化過程還是無效數(shù)據(jù)干擾,可以很快分辨出壓力信號(hào)變化與干擾信號(hào),可以有選擇性的進(jìn)行濾波操作,使系統(tǒng)能夠加強(qiáng)抗干擾的能力同時(shí)又能對(duì)有效壓力數(shù)據(jù)有很快的響應(yīng)速度,且不增加成本。
附圖說明
圖1是壓力增加時(shí)的單邊上升曲線。
圖2是壓力增加時(shí)的阻尼震蕩方式曲線。
圖3是壓力下降時(shí)的單邊上升曲線。
圖4是手機(jī)射頻的干擾波形。
圖5是本發(fā)明所實(shí)施快速判斷壓力突變的流程圖。
圖6是本發(fā)明所實(shí)施單邊上下降時(shí)判斷壓力突變的流程圖。
圖7是本發(fā)明所實(shí)施阻尼上升時(shí)判斷壓力突變的流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
通常情況下,根據(jù)實(shí)驗(yàn)看到根據(jù)增加壓力的時(shí)間不同和增加的壓力值大小的不同,傳感器輸出的數(shù)據(jù)波形會(huì)有2種,一種是比較平滑的單邊上升曲線(如圖1所示),一種是以阻尼震蕩方式的曲線(如圖2所示)。壓力降低時(shí)都是 比較平滑的單邊下降曲線(如圖3所示)。那么以手機(jī)射頻干擾為例,其干擾波形如圖4所示。
從圖中可以看出,目前使用的軟件濾波方式要么會(huì)將干擾信號(hào)輸出,造成壓力值采集不穩(wěn)定,要么會(huì)將增加或減小壓力過程中的有效壓力信號(hào)當(dāng)成干擾信號(hào)濾除,直到壓力信號(hào)穩(wěn)定才會(huì)輸出正常壓力值,這樣就照成壓力有效數(shù)據(jù)的反應(yīng)滯后。
所以要從傳感器輸出數(shù)據(jù)中分離出連續(xù)上升或阻尼震蕩曲線認(rèn)為是有效壓力增加數(shù)據(jù),連續(xù)下降曲線為有效壓力減少數(shù)據(jù),以便快速響應(yīng),這正是本發(fā)明產(chǎn)生的原因。
參見圖5,所示的快速壓力傳感器壓力突變的方法主要是對(duì)壓力傳感器采樣數(shù)據(jù)進(jìn)行判斷,若信號(hào)變化為有效的壓力變化數(shù)據(jù),則進(jìn)入壓力變化數(shù)據(jù)處理保證系統(tǒng)對(duì)有效壓力數(shù)據(jù)的快速響應(yīng)。若信號(hào)變化不是有效的壓力變化數(shù)據(jù),則進(jìn)入濾波數(shù)據(jù)處理,以高效的濾除無效信號(hào)干擾。保證系統(tǒng)的抗干擾能力。其具體的實(shí)現(xiàn)步驟為:
101、首先,傳感器采集壓力數(shù)據(jù)。
102、判斷是否單邊存在壓力連續(xù)變化;如果是,則進(jìn)行下一步,如果否,則進(jìn)入105步驟。
103、將壓力變化數(shù)據(jù)進(jìn)行處理,濾波系數(shù)進(jìn)行放大,以濾除干擾信號(hào)。
104、根據(jù)壓力變化數(shù)據(jù)進(jìn)行濾波,濾波后轉(zhuǎn)入106步驟。
105、正常濾波。
106、數(shù)據(jù)輸出。
參見圖6所示,為單邊上升下降判斷壓力連續(xù)單邊變化的控制流程圖,該方式中主要對(duì)于新數(shù)據(jù)是否為有效壓力變化數(shù)據(jù)進(jìn)行判斷。若為有效數(shù)據(jù)則進(jìn)行壓力變化數(shù)據(jù)處理,若不是則進(jìn)入正常濾波程序處理。具體的方法如下:
步驟S101:讀入新的一筆測(cè)量數(shù)據(jù),并進(jìn)行滑動(dòng)濾波,不影響采樣速度。
步驟S102:比較本次滑動(dòng)濾波值與上次滑動(dòng)濾波值的差值是否大于有效噪聲。如果大于有效噪聲,則說明有數(shù)據(jù)變化,則進(jìn)入步驟S104。如果小于有效噪聲,則說明是傳感器正常熱噪聲,并沒有數(shù)據(jù)變化,則進(jìn)入步驟S103;噪聲是指測(cè)量的數(shù)據(jù)序列的最大噪聲值,一般認(rèn)為是有效噪聲值RMS噪聲的6.6倍, 實(shí)際使用時(shí)有效噪聲可以取一個(gè)比6.6倍RMS噪聲更大一點(diǎn)的值??傊行г肼暿且粋€(gè)預(yù)設(shè)根據(jù)測(cè)量數(shù)據(jù)序列自身屬性有關(guān)的噪聲閾值。該值設(shè)得過大時(shí),整個(gè)方法的抗外界干擾的效果會(huì)下降;但如果該值設(shè)得太小,則有可能丟失有用的數(shù)據(jù)。
步驟S103:數(shù)據(jù)穩(wěn)定,沒有變化,熱噪聲數(shù)據(jù)計(jì)數(shù)器加1;結(jié)束,等待下次采樣值。
步驟S104:判斷熱噪聲數(shù)據(jù)計(jì)數(shù)器是否大于指定值。如大于穩(wěn)定數(shù)指定值,則進(jìn)入步驟S105;如小于穩(wěn)定數(shù)指定值,則進(jìn)入步驟S106。
步驟S105:清上升下降計(jì)數(shù)器。結(jié)束,等待下次采樣值。
步驟S106:判斷目前是數(shù)據(jù)是上升趨勢(shì),還是下降趨勢(shì)。如是上升趨勢(shì),則進(jìn)入步驟S112。否則進(jìn)入步驟S107。
步驟S107:判斷本次滑動(dòng)濾波值與上次滑動(dòng)濾波值大小。如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則進(jìn)入步驟S108。如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則進(jìn)入步驟S109。
步驟S108:清下降次數(shù)計(jì)數(shù)器,將標(biāo)志置為數(shù)據(jù)上升趨勢(shì)。結(jié)束,等待下次采樣值。
步驟S109:將下降次數(shù)計(jì)數(shù)器加1。熱噪聲數(shù)據(jù)計(jì)數(shù)器清0。進(jìn)入步驟S110
步驟S110:判斷下降次數(shù)計(jì)數(shù)器是否大于預(yù)設(shè)值。如果大于預(yù)設(shè)值,則進(jìn)入步驟S111。如果小于預(yù)設(shè)值,則結(jié)束,等待下次采樣值。
步驟S111:連續(xù)單邊下降預(yù)設(shè)數(shù)量。將本次滑動(dòng)濾波值輸出,進(jìn)入壓力降低程序。
步驟S112:判斷本次滑動(dòng)濾波值與上次滑動(dòng)濾波值大小。如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則進(jìn)入步驟S113。如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則進(jìn)入步驟S114。
步驟S113:清上升次數(shù)計(jì)數(shù)器,將標(biāo)志置為數(shù)據(jù)下降趨勢(shì)。熱噪聲數(shù)據(jù)計(jì)數(shù)器清0。結(jié)束,等待下次采樣值。
步驟S114:將上升次數(shù)計(jì)數(shù)器加1,熱噪聲數(shù)據(jù)計(jì)數(shù)器清0,進(jìn)入步驟S115。
步驟S115:判斷上升次數(shù)計(jì)數(shù)器是否大于預(yù)設(shè)值,如果大于預(yù)設(shè)值,則進(jìn) 入步驟S116。如果小于預(yù)設(shè)值,則結(jié)束,等待下次采樣值。
步驟S116:連續(xù)單邊上升預(yù)設(shè)數(shù)量,說明正在壓力增加過程,將本次滑動(dòng)濾波值輸出,進(jìn)入壓力增加程序。
參見圖7所示,為阻尼震蕩判斷壓力增加時(shí)的控制方法,該方法主要對(duì)于新數(shù)據(jù)是否為有效壓力增加數(shù)據(jù)進(jìn)行判斷。若為有效數(shù)據(jù)則進(jìn)行壓力增加數(shù)據(jù)處理,若不是則進(jìn)入正常濾波程序處理。具體的方法如下:
步驟S201:讀入新的一筆測(cè)量數(shù)據(jù),并進(jìn)行滑動(dòng)濾波,不影響采樣速度;進(jìn)入步驟S202。
步驟S202:將峰谷波計(jì)數(shù)器加1,并判斷是否大于預(yù)設(shè)的峰谷周期數(shù);峰谷周期數(shù)是指在設(shè)定的時(shí)間內(nèi)有無發(fā)生峰谷拐點(diǎn),如果峰谷拐點(diǎn)超時(shí),則步入步驟S203。則進(jìn)入步驟S204繼續(xù)判斷。
步驟S203:峰谷拐點(diǎn)超時(shí),置測(cè)峰標(biāo)志,清峰谷值數(shù)量,清峰谷波計(jì)數(shù)器。退出,等待下次采樣值。
步驟S204:將最近2次滑動(dòng)濾波值的平均值減去上2次滑動(dòng)濾波值得平均值求的差值。如采集了2組數(shù)據(jù),第一次采集的數(shù)據(jù)為D1,第一次采集的數(shù)據(jù)為D2,第三次采集的數(shù)據(jù)為D3,第四次采集的數(shù)據(jù)為D4.那么就是(D4+D3)/2-(D2+D1)/2。
步驟S205:將S204求到的差值與設(shè)置的閾值進(jìn)行比較,如果小于閾值。則退出,等待下次采用數(shù)據(jù)。如大于閾值,說明有大數(shù)據(jù)進(jìn)來,則進(jìn)入步驟S206繼續(xù)判斷。
步驟S206:判斷測(cè)峰標(biāo)志,如果為1,則進(jìn)入步驟S212,進(jìn)行峰值判斷。否則,進(jìn)入步驟S207,進(jìn)行谷值判斷。
步驟S207:進(jìn)入谷值判斷,判斷上次是上升狀態(tài)還是下降狀態(tài)(上升狀態(tài)標(biāo)志為1,則為上升狀態(tài)),如果是上升狀態(tài),則進(jìn)入步驟S210,等待下降狀態(tài)。否則,進(jìn)入步驟S208找出谷值。
步驟S208:當(dāng)前是下降趨勢(shì),找出谷值拐點(diǎn)。如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則說明變成上升趨勢(shì),谷值出現(xiàn),進(jìn)入步驟S209,否則說明繼續(xù)下降趨勢(shì)。進(jìn)入步驟S217。
步驟S209:谷值出現(xiàn)。置測(cè)峰標(biāo)志,置上升狀態(tài)標(biāo)志,清峰谷波計(jì)數(shù)器, 峰谷值數(shù)量加1。上次滑動(dòng)濾波值為本次谷值。計(jì)算上次峰值與本次谷值之間的峰谷差值,并保存。進(jìn)入步驟S217。
步驟S210:當(dāng)前是上升趨勢(shì),如果本次滑動(dòng)濾波值大于上次滑動(dòng)濾波值,則進(jìn)入步驟S217。否則,則進(jìn)入步驟S211。
步驟S211:進(jìn)入了下降趨勢(shì),清上升狀態(tài)標(biāo)志,進(jìn)入步驟S217,等待谷值。
步驟S212:進(jìn)入峰值判斷,判斷上次是上升狀態(tài)還是下降狀態(tài)(上升狀態(tài)標(biāo)志為1,則為上升狀態(tài)),如果是下降狀態(tài),則進(jìn)入步驟S215,等待上升狀態(tài)。否則,進(jìn)入步驟S213找出峰值。
步驟S213:當(dāng)前是上升趨勢(shì),找出峰值拐點(diǎn)。如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則說明變成下降趨勢(shì),峰值出現(xiàn),進(jìn)入步驟S214,否則說明繼續(xù)上趨勢(shì)。進(jìn)入步驟S217。
步驟S214:峰值出現(xiàn)。清測(cè)峰標(biāo)志(開始測(cè)谷),清上升狀態(tài)標(biāo)志,清峰谷波計(jì)數(shù)器,峰谷值數(shù)量加1。上次滑動(dòng)濾波值為本次峰值,并保存。進(jìn)入步驟S217。
步驟S215:當(dāng)前是下降趨勢(shì),如果本次滑動(dòng)濾波值小于上次滑動(dòng)濾波值,則說明還是下降趨勢(shì),進(jìn)入步驟S217。否則,說明變成上升趨勢(shì),則進(jìn)入步驟S216。
步驟S216:進(jìn)入了上升趨勢(shì),置上升狀態(tài)標(biāo)志,進(jìn)入步驟S217,等待峰值。
步驟S217:峰谷值數(shù)量有沒有到達(dá)6次,沒有6次則退出,等待下次采樣值。如果達(dá)到6次,則進(jìn)入步驟S218進(jìn)行判斷是否有效阻尼震蕩上稱。
步驟S218:置測(cè)峰標(biāo)志,清峰谷值數(shù)量。準(zhǔn)備測(cè)量下組波形。
步驟S219:判斷第一個(gè)峰谷值差值是否比第二個(gè)峰谷值差值大(取三個(gè)時(shí)間點(diǎn)的峰谷值差值,最早保存時(shí)間點(diǎn)的峰谷值差值為第一個(gè),中間保持時(shí)間點(diǎn)的峰谷值差值為第二個(gè),最近保持時(shí)間點(diǎn)的峰谷值差值為第三個(gè))。如果比第二個(gè)大,進(jìn)入步驟S220繼續(xù)判斷,否則,說明波形異常,進(jìn)入步驟S223處理。
步驟S220:判斷第二個(gè)峰谷值差值是否比第三個(gè)峰谷值差值大(取三個(gè)時(shí)間點(diǎn)的峰谷值差值,最早保存時(shí)間點(diǎn)的峰谷值差值為第一個(gè),中間保持時(shí)間點(diǎn)的峰谷值差值為第二個(gè),最近保持時(shí)間點(diǎn)的峰谷值差值為第三個(gè))。如果比第三個(gè)大,說明波形正常,進(jìn)入步驟S221處理,否則說明波形異常,進(jìn)入步驟S223處理。
步驟S221:連續(xù)3個(gè)峰谷值均為衰減狀態(tài),則可以認(rèn)定為阻尼震蕩壓力增加。判斷有阻尼震蕩壓力增加標(biāo)志,如有,則進(jìn)入壓力增加程序,否則進(jìn)入步驟S222。
步驟S222:置阻尼震蕩壓力增加標(biāo)志,進(jìn)入壓力增加程序。
步驟S223:連續(xù)3個(gè)峰谷值不為衰減狀態(tài),將峰谷值數(shù)量等于4,丟掉最近保存的峰谷值差值,將第二個(gè)峰谷值差值保存為第一個(gè),第三個(gè)峰谷值差值保存為第二個(gè),退出,等待下次采樣值。
總之,本發(fā)明所述的快速判斷壓力傳感器壓力突變的方法,能夠快速判斷壓力傳感器的信號(hào)變化是正常的壓力變化過程還是無效數(shù)據(jù)干擾,可以很快分辨出壓力信號(hào)變化與干擾信號(hào),可以有選擇性的進(jìn)行濾波操作,使系統(tǒng)能夠加強(qiáng)抗干擾的能力同時(shí)又能對(duì)有效壓力數(shù)據(jù)有很快的響應(yīng)速度,且不增加成本。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。