08-24-2020 11:50 AM
I want to create some simple heart rate monitor in LabView.
I have sensor which gives me heart workflow (upper graph) . On second graph (lower graph) is amount of hills (0 - valley, 1 - hill) and that hills are heart beats (that is voltage waveform). From this I want to get amount of those hills, then mulitply this number by 6 and I'll get heart rate per minute.
Measuring card I use: NI USB-6009.
I attach VI file and waveform graphs.
Any idea how to do that?
08-24-2020 12:05 PM
Try the peak detector vi included in labview. You can set up threshold and width. I use it for similar detection and it works very well. Sometimes I pre filter the waveform to set the signal to 0 below a certain amplitude. This can help to remove detection of the lower peaks that you don't want. They are still peaks after all.
08-24-2020 12:35 PM
So I can pass as input data with 0 and 1s (that square waveform) and peak detector should find all peaks in that data? And set threshold higher than 0 to find it? Do I have to set width? I can't set constant range to searching peaks because waveform varies in time. I can just find approximate amplitude above which I can find those peaks. Unfortunately I don't have acces to PC with LabView now (I use it at the university) to try this so I'm just collecting ideas how to solve this, sorry for so many queries.
08-24-2020 02:38 PM
Use your analog waveform and send it to the 'Extract Single Tone Information.vi' It is found under the signal processing-> Wfm Measuments pallet.
How many cycles are you going to use to determine BPM? If not all then determine what data length to give the subvi. Give it 1,2,10 seconds of data?
Your VI doesn't have any data we can use. The indicators are empty.
To give us some sample data when you get a waveform into an indicator
Norm