1樓:Chang An
我也不知那個感測器的訊號資料什麼樣的,這裡給你個參考,乙個作業。(開始還以為是心電資料,但差距也太大了吧,所以還吐槽了一下老師的資料採集太挫了,做到最後才發現好像是脈搏的,但也不敢確認)
先看看資料是真麼樣的:
按照取樣率復原的實時波形
這個訊號說是心電訊號,細節都沒有,就倆峰,還平滑的像是濾過一遍一樣。
總體思路:
1.繪出資料波形與頻譜。
2.根據幅值與頻譜特徵,選擇合適的濾波器。
3.濾波(並根據濾波效果調整濾波器引數)
4.心率計數(閾值,這個比較主觀)
其實可以簡單點,直接用乙個合適的的閾值來做,但這樣效果實在沒法保證,比如兩個背景光強度不同的地方,背景光的干擾也會相應的變換,你沒法保證乙個環境的閾值在另乙個環境下同樣有效,除非你用大量的資料找到最佳閾值。
下面是乙個資料處理的操作,姑且看看。Fs=
1000
;%Hz
可以看出其低頻干擾造成的基線漂移,還有工頻干擾
% 陷波濾波器fg=
50;b=
2;fgb=[fg
-b,fg
+b];wg=2
*fgb/Fs
;hn=fir1
(1000,wg
,'stop'
);freqz(hn
);xd
=filter(hn
,1,eggRowData
);figure
;subplot
(211
);tplot(xd
,Fs,'消除工頻干擾'
);% 繪圖函式沒有特別意義
subplot
(212
);pfft(xd
,Fs,'Spectrum'
);% 繪圖函式沒有特別意義
濾波器特性
濾波後波形與幅頻特性
% 高通濾波器
fg = 2;
wg = 2*fg/Fs;
hn = fir1(1000, wg, 'high');
freqz(hn);
xd = filter(hn, 1, xd);
figure;
subplot(211);
tplot(xd, Fs, '消除基線漂移');% 繪圖函式沒有特別意義
subplot(212);
pfft(xd, Fs, 'Spectrum'繪圖函式沒有特別意義
高通濾波特性
濾波後波形與幅頻特性
% 低通濾波器
fg = 20;
wg = 2*fg/Fs;
hn = fir1(1000, wg, 'low');
freqz(hn);
xd = filter(hn, 1, xd);
figure;
subplot(211);
tplot(xd, Fs, '消除肌電干擾');% 繪圖函式沒有特別意義
subplot(212);
pfft(xd, Fs, 'Spectrum'繪圖函式沒有特別意義
低通濾波特性
濾波結果
% 峰值檢測
[pks,locs,w,p] = findpeaks(xd, 1000);
figure;
stem(locs, pks.*w)
title('波峰檢測');
threshold = 0.04;
line([0 60], [threshold threshold], 'LineWidth', 2, 'Color', 'red');
sum(pks.*w > threshold) % 因為大峰小峰的差距比較小,所以用面積比較拉大差距
實際計數的心率即紅線閾值以上的波峰
心率之所以使用峰值檢測是因為這樣不易遺漏,但是也有他的問題。
2樓:御阪初琴
看你的心率感測器是哪種了。
模擬式的就是用ADC採數值,採完比較數值突變量,獲得高低電平。微控制器定時器產生乙個10ms到100ms的迴圈定時,在每個定時週期內讀取高低電平變化,用時間和個數比較得到心率值。
數字式感測器的也可以用這種方法,不過如果用的是諸如STM32之類的,可以直接用定時器的採集模式得到頻率值,用頻率值轉換成心率值,這個方法更準確。
思路就是這個思路,具體實現就看你自己了。
微控制器與物聯網的聯絡,未來微控制器將有怎麼樣的發展趨勢?
IOT說得籠統一點,就是資訊化整合。你說的微控制器是不夠準確的,應該稱作結點,因為除了主控晶元外,必須要有很多其他的外圍器件。IOT最最主要的特點在於 big 結點數和資訊量等都會無比龐大。趨勢 1低功耗是永恆的追求。2微型化大家都知道。3結點將往兩方面發展 複雜的和精簡的。越是智慧型化就越複雜。4...
怎麼學微控制器比較快
我來答一下這個問題,大學玩過51,飛思卡爾K60 Cortex M4 esp8266,畢業設計用的STM32。參加工作後,用過東芝,NXP,賽普拉斯,松翰,最近在用TI。基本上是公司引進了什麼晶元用什麼,專案需要什麼用什麼,哪個成本低用哪個。我來說一下我在工作後是怎麼快速上手一款微控制器吧。首先,微...
微控制器多位元組除法怎麼實現?
三位元組除法,若要擴充套件長度,修改迴圈位移減法次數即可DV31 CLR C MOV A,R3 SUBB A,R7 JC DV30 SETB OV RETDV30 MOV R2,10H 求R3R4R5 R7 R4R5DM23 CLR C MOV A,R5 RLC A MOV R5,A MOV A,R...