我设法将TSD200
光电容积描记传感器从BIOPAC
连接到Arduino Uno
,并读取0到1023之间的值。
我正在尝试使用传感器发送的串行数据来确定特定时间间隔内的心跳次数(例如30秒)。我尝试将实际值与之前的值进行比较,但这项措施绝对不可靠,因为即使没有将手指放在传感器上,数据也会振荡。
int val = 0;
int prev;
void setup()
{
Serial.begin(9600);
}
void loop()
{
prev = val;
val = analogRead(A0);
if(val != prev)
{
Serial.println("Heartbeat");
}
delay(1);
}
我不知道从错误的角度看这个。我非常感谢任何帮助...
答案 0 :(得分:2)
心跳不是尖峰(您试图检测到)。典型的体积描记图是正弦波。您需要找到峰值/谷值/过零点(或多或少容易但容易出错)或傅立叶变换样本并获得主导频率(建议但参与其中)。
还建议使用偏置增益电路,如用户3386109所述。
答案 1 :(得分:0)