MAX30001的ecg通道输出不正常
我用max30001g做了个开发板,它可以正常读写Max30001g的寄存器
我将ECGP接信号发生器正极,ECGN和地一起接信号发生器负端,输出600mV的直流量和都没有输入,最终结果都一样且是0(信号发生器正常)
输入offset 600mv , Amplitude 800mv的正弦波,结果不是0,但是输出很奇怪,结果如下(ECGP接信号发生器正端,ECGN和地一起接信号发生器负端)
寄存器中并没有隔离AFE和ECGN或ECGP
您对信号发生器的连接和设置是错误的。MAX30001的输入信号的差模交流幅度必须在±32.5mV以内,您的信号都到800mV了。还有对输入信号的共模分量有要求(在VMID附近),差模直流幅度也有要求(在±650mV以内),您这些设置都超过或者在范围的边界(一般输入ECGP和ECGN的信号的直流电平都是相同的)。请仔细对照手册检查。
我按照手册上差模直流幅度和交流幅度都进行测试了
我最好奇的点在于无论我给任何正负直流幅度(±650mV内,正负几毫伏到几十毫伏)(信号发生器ok 并且可以直接在ECGP和ECGN之间测得信号发生器的电压),我输出的值一直都是97点几、99点几等等,但是我改变直流的幅度的时候,我的波形会上升或者下降到一定幅度,然后很快恢复到979899点几。也就是说无论支流幅度如何变,我的输出都是固定的
交流测量我用了方波和正选波(信号是10Hz 我采样率是128SPS),无论幅度怎末变,它们也一直在九十几毫伏和负九十几毫伏跳变(信号周期也不对)(如左图)。唯一一次周期对的是输入30Hz方波(当然幅度也不对)(如上图)
我尝试过直接测量自己的心电信号,其结果如测试直流的结果。
什么会造成这样的结果(我曾经考虑过是否是我写程序移位写错了,但我确实没找到错误)
请你告知我,你的信号发生器的地,是和大地连着的,还是floating groud?你的板子的地,又是和大地连着的,还是floating ground?我要确定你这两端的地,是否和地球直接相连。我这里并不是要你直接连上,而只是确认一下。另外拿示波器或者万用表,负极接板子的GND,正极接信号输入,看看直流差分电压?
信号发生器是三线制的插座接入国内220V交流电,地线和大地连接了。
板子的地和ECGN和信号发生器的负极相连,正极接入ECGP,并没有float ground'
测过,直流差分电压是ok的。
你能否确认你的信号发生器是否是floating ground?虽然它有三眼插头连接了地线,但这只能说明信号发生器的外壳接地,本身它的GND输出是否是floating ground,需要看它的说明书。这个其实很重要,涉及到后面的Lead Bias以及VCM等问题。我最近买了一台,虽然是三眼插头,但是它正是floating ground的。
一个最简单的办法,如果你有MAX30001EVSYS的话,把你的信号输入到评估板,在电脑上能看到正常的波形么?我对此持有一定的怀疑。因为你的连接方法,我们基本上测试都不是这么用的。
我假设你的信号发生器确定不是floating ground(我这里只是假设,具体你要详细再三地确认),那么也是信号发生器CH+输出DC 0V,AC大约几个mV的小正弦信号,然后CH-接地,连接到大地。然后对于MAX30001,芯片的GND必须不可以连接到大地,也就是芯片的GND必须是floating ground。那么此时,就要求使用电池对芯片供电,并且芯片不可以通过USB接口和电脑相连(因为电脑的ground是连接到大地的)。与此同时,还要使能芯片的Lead Bias或者Vcm,对正负输入信号通道进行偏置,将输入通道的正负端对芯片的GND的直流电压差偏置到Vmid左右。
谢谢你的答复!我没有那个MAX30001EVSYS这个板子,我曾经用锂电池供电过,它输出依然乱七八糟。
我也测试过不用信号发生器,空接或者短接ECGP和ECGN。也尝试过直接测试心电,但是我的输出依然是乱七八糟的。
我芯片内部lead bias和校准都没有打开,请问有没有成功的寄存器配置 让我借鉴一下。我以前也做过一个ad7768的板子,也是用这个信号发生器测试的。我觉得可以不纠结关于这个信号发生器的问题,我现在还是可以正确读取寄存器,并且INFO寄存器的值是0x521000,我的MAX30001G片子是真的吗?并且如果正确读取寄存器芯片应该没坏吧?
这个问题困扰我一个月了,我内部寄存器配置已经连接 ECG AFE,就很简单的DC信号无论怎末变,我的输出都不变(虽然给AC信号会变化,但是变得又很扯淡)。如何能测试知道我的片子是假的或者是坏的?
抱歉我作为应用工程师判断芯片的真假不属于我的职责范围,我只管产品的正确使用。AD7768和MAX30001不是一个用法,两者不是一个产品。如果能正常读取寄存器,那么芯片的通信正常。虽然你多次强调和信号发生器的连接方法无关,但是实际上我们遇到许多案例,90%正是由于信号发生器的连接和配置不正确导致。因此我还是想排除这个问题。你这里板子的GND是0V,ECGN的输入接地又是0V,这是超出数据手册的规定的。再说要在人体上测试,必须施加lead bias。请你能否试验,信号发生器CH-接地,CH+输出DC 0V,AC 几个mV的信号,板子改成浮动地,使用lead bias,能否出现正常波形?
我按照你的说法进行了尝试,具体参数如下图(有些正弦趋势),问题总结如下:
我尝试DC信号的时候,还是输入一直基本是0(不管是负几百mV到正几百mV)
我将DC信号由正值改到负值的时候,我的输出并没有改变正负号,且输出会变化一下就恢复原来的值(类似波形观察的话,线会上升然后很快回复到原来的值)
以前我尝试10Hz正弦的时候我基本看不出波形,现在输入1Hz的时候,会出现这个正选波的趋势,但是我发现图上显示波形的采样率都是256Hz(但实际左图256Hz采样率,右图128Hz)
当我输入峰峰值是10mVpp的时候,看着还像个正弦波(左图)。但我峰峰值为28mVpp的时候,这个波就变形了(右图),而且整体幅度也在12mV之内。我也用过峰峰值为5mVpp的正选波测试,但基本看不出啥(噪声幅度太大了),而且噪声就跟下面两个图一样在正负6mV之间。
什么会造成折磨大干扰?而且我也开低通滤波器了,256Hz对应40Hz低通滤波器。128对应的那个大约28Hz低通滤波器
低通滤波器不一定够,要50Hz的陷波滤波器。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !