1.前言
本人于很久之前用ADS1293做过人体生物电采集系统,其中的一个方案就是使用树莓派的SPI进行数据的采集和处理。总的来说,这个方案是失败且成功的,现在我把方案的分析分享出来,大家可以多多讨论,共同学习。
2.分析和分享
之前的博客中分享过相关知识,大家可以去看看。ADS1293的测量使用原理。
在清楚测量原理的基础上,仔细阅读手册,则可以知道使用ADS1293需要进行使用SPI接口对其配置。最终,才能读取出相对应的数据。
理论上来说,只要有SPI接口的设备都可以实现ADS1293的采集,而树莓派有很好的网络功能,并且具有多个SPI接口,所以就有了基于树莓派SPI的人体生物电采集的方案。
这个方案中,我使用的是Python语言控制SPI接口的方式,代码方面github上就有相关的分享。python and ads1293.使用别人分享的前提,需要自己多花时间对于芯片的数据手册多多研习。
3.结论
最后,根据我的实际的效果,Python语言控制SPI接口的方式对于生理信号进行测量的方案是失败的。失败的方面主要取绝于几个方面:
(1)Python语言控制SPI接口的方式很低效。我设置SPI的ODR为2560时,树莓派对于数据的响应已经跟不上了,时常会有数据的遗漏。
(2)树莓派的应用场景对于需要电磁屏蔽的场景优化欠佳。对于生理信号采集等微弱信号的采集和处理,树莓派本身会有很大的包括工频干扰和大量的热噪声。使得采集的信号需要有较强的鲁棒性,若信号本身微弱,则会被噪声淹没,使得无法使用。
4.展望
生物电信号等微弱信号的采集和处理更适用于FPGA或者MCU等方案来实现。FPGA或者MCU等方案,由于编程语言更“原始”,可以使信号更好的被采集,并且这些器件本身的稳定性更好可以带来更少的输入噪声。