自制一台玩具级的单导联心电图绘制器
An_ye 2021-10-3原创 电子技术
关键词
心电检测热敏打印
ECGPCB

        emmm,前两天学校体检被查出疑似心率不齐,虽然最后并没有查出什么大问题,不过突然有了个idea,打算自制个用来检测心电的玩意儿。

        最初和群友讨论了下,打算做12导联的心电/脑电检测,结果一看芯片价格直接劝退,几个方案中最便宜的都要 200+,家境贫寒搞不起。

        但是,我白嫖到了颗ic:

         深度截图_选择区域_20211002225901.png

        datasheet上有写 : 包含了功耗医疗心电图(ECG)、体育和健身应用通常所需的所有功能。

    虽然和最初要做的12导联差了亿点点,但好歹能用。


[10.2更新]

        完成了硬件部分大体的框图,MCU是性价比极高的ESP32-S2;两颗FLASH,一颗用来存固件,另一颗用来存心电数据;热敏打印机采用了目前最便宜的二手JX-2R-01,某宝上16块包邮。

深度截图_选择区域_20211002234140.png


            其中数据采集部分考虑到后续的升级,会设计成模块化的,方便快速替换以及节约成本。。。


             虽然数据输出已经由热敏打印机完成,但还是把上位机的部分给画了出来(能不能实现就是另一回事了

              WEB端整个由MCU处理,不需要额外的服务器端,毕竟辣么大的FLASH,存点网页还是绰绰有余的;虚拟串口输出是肯定会实现的,之后调试什么的会方便一点


深度截图_选择区域_20211002235236.png

明天开始画采集模块的原理图


[10.3更新]

    模块原理图+PCB终于肝出来了~

    把ads1291支持的所有功能都加上了,包括呼吸阻抗检测的绿波,右腿驱动

     深度截图_选择区域_20211003224401.png

为了缩小PCB面积,阻容封装均采用0402

深度截图_选择区域_20211003231305.png

由于datashit上根本没有提到布线的要求,而且心电信号又十分微弱,扯线的时候把差分等长啥的都弄了。

但根据云抄板(即抄某宝上心电检测模块的图)的结果,好像没有这么复杂(?) ,反正都画了,起码这样会稳一点

    深度截图_选择区域_20211003224343.png

其实有个小问题,m3螺孔离右腿驱动的输入太近了,打过孔换层又怕影响信号。所以后续用m3螺柱固定的时候得加个尼龙垫片,防止螺丝刮破阻焊层导致短路

[修改于 2 个月前 - 2021-10-03 23:24:55]

来自:电子与无线电 / 电子技术
35
6
desert
2个月5天前 修改于 2个月5天前
1楼

催更,代码写好了我也去嫖一颗 sticker

PS:我目前整的都是灯珠,不知道有没有什么其他的东西可以整来玩玩? sticker

PSS:大佬您说的“海外买的电源芯片“应该也是这里整的吧?

引用
评论
2
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
An_ye作者
2个月5天前 修改于 2个月5天前
2楼
引用desert发表于1楼的内容
催更,代码写好了我也去嫖一颗PS:我目前整的都是灯珠,不知道有没有什么其他的东西可以整来玩玩?PSS...

海外的极易被强制退款(有库存硬说没货

这颗我都没把握能不能白嫖到 sticker


ps. 啊这。。。海外的电源芯片我好像只在那个3d打印机项目里面提起过,这也太巧了吧

引用
评论(3)
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
An_ye作者
2个月4天前
3楼

[10.4更新]

重新改了下板子,去jlc白嫖。明天开始画主控板

深度截图_选择区域_20211004115016.png

深度截图_选择区域_20211004115119.png

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
gjgh
2个月4天前
4楼

其实对于这种低频小信号,大线距+屏蔽罩可能更有效果

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
An_ye作者
2个月4天前
5楼
引用gjgh发表于4楼的内容
其实对于这种低频小信号,大线距+屏蔽罩可能更有效果

感谢~ 这版我先看看效果,如果不行再重新改过

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
信仰は儚き人間の為に
2个月2天前
6楼

建议ADS1291部分加上隔离电源和光耦。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
warmonkey
1个月29天前 修改于 1个月29天前
7楼

这么好的前端随便飞线都能做出好效果。不需要铺铜,线随便走过孔,外面套个铁壳就行。

要省钱到极限,直接用运放+RC搭滤波器,洞洞板+烙铁+漆包线2天搞完。运放用TL084之类的,先无源低通400Hz,再有源高通0.01Hz,有源低通120Hz,然后放大500倍。再用arduino的adc采集,用一个数字陷波器去除50Hz,就完工了。

引用
评论(1)
2
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
lzd1996
1个月29天前
8楼

见过某商用电脑心电图机,8通道的,一共用了两片OPA4170、两片OPA2170,其余都是RC滤波和数字滤波,外面套了个铁壳,效果居然还能看得过去

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
An_ye作者
1个月27天前 修改于 1个月27天前
9楼

[10.10更新] 今天导联线和一堆电极片到了 IMG_20211010_XXXXXXXXXg.jpg

emm...感觉这线买的有点亏,而且长度还不够。

线到手后发现接口定义有问题,同时参考了上面评论的建议,改了下板子。

深度截图_选择区域_XXXXXXXXXXXXXXXXXg.png

重新下单板子,还好有家板厂可以每天白嫖~

ps:白嫖的芯片可能需要很久(11月)才能到,接下来会尝试把热敏打印部分搞起来

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
1个月24天前
10楼
引用An_ye发表于9楼的内容
[10.10更新] 今天导联线和一堆电极片到了emm...感觉这线买的有点亏,而且长度还不够。线到手...

楼主是用cadence画的吗

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
An_ye作者
1个月15天前 修改于 1个月15天前
11楼

[10.23更新]

由于楼主现在高三来着,所以会不定期更新~


今天lcsc白嫖的ic终于到了

IMG_20211022_165216.jpg

IMG_20211023_120709.jpg

IMG_20211023_102332.jpg


主控暂时用的是esp8266,感觉其实性能也够用了。

随便用杜邦线连了下,arduino有现成的轮子,随便改两行就能跑起来

深度截图_20211023003557.png

效果其实还看的过去,就是噪声有点离谱,估计是电源的锅,因为lc绿波之类的都没加在模块上

引用
评论
3
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
gjgh
1个月15天前
12楼

用个rc滤波器就可以了,没必要用lc吧。

如果要求真的高,可以考虑用adi或者ti的精密ldo

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
m24h
1个月14天前
13楼
引用An_ye发表于11楼的内容
[10.23更新]由于楼主现在高三来着,所以会不定期更新~今天lcsc白嫖的ic终于到了主控暂时用的...

这心。。。里藏了多少杂念啊!!

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
1个月11天前
14楼
引用An_ye发表于11楼的内容
[10.23更新]由于楼主现在高三来着,所以会不定期更新~今天lcsc白嫖的ic终于到了主控暂时用的...

这电源是直接跟MCU共用的开关电源吗。。。

考虑考虑jlc海外代购这款LDO:ADM7160AUJZ-3.3-R7,货号D442085,刚嫖的,实测可以下单

上个月忘记嫖了,这个月痛定思痛,找了六个号来嫖

引用
评论(3)
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
1个月9天前
15楼
引用gjgh发表于12楼的内容
用个rc滤波器就可以了,没必要用lc吧。如果要求真的高,可以考虑用adi或者ti的精密ldo

如果是电源工频共模噪声,共模线圈+电容LC滤波应该是用的最多的方案。。吧

或者考虑隔离电源供电?

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
An_ye作者
1个月8天前 修改于 1个月8天前
16楼

[10.30]更新

emmm

热敏打印部分期中考前搞不好了

我低估了这玩意的功耗,10w居然没带动


最初的方案其实是全由一颗辣鸡18650供电,一打印就触发esp32掉电检测...


然后割板飞线,改成升压部分由usb 5v输入提供,其余的包括步进电机都由18650供电,结果usb输入过流,一直触发打嗝保护...


这是最初从开源的喵喵机上搞下来的驱动

IMG_20211030_184339.jpg

打印的时候很不稳,5v输入上的led肉眼可见的熄灭

然后尝试改了下代码,强行优化成了这样

IMG_20211030_184502.jpg

但是!这回填充的还是全黑啊!

电源部分彻底翻车,等待换供电方案


PS: 这打印纸是真的便宜,也是真的耐用。调了一个下午的板子和程序,才用完了一卷纸

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
An_ye作者
1个月8天前
17楼
引用BSP发表于10楼的内容
楼主是用cadence画的吗
用的是立创EDA
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
27天23时前
18楼

2G的flash,楼主准备用哪款呢

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
xa87
20天10时前
19楼

关注一下,

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
歪先生
20天2时前
20楼

这么直接淦,中间产生误差的地方太多,我个人认为 楼主应该先把信号采集部分处理好,先用示波器将滤波运放电路部分调好,简单RC滤波加双运放采集微弱信号,滤波参数也需要示波器和频谱分析仪参与,然后在用ESP32或者其他MCU进行后端数据采集输出,数电和模电 要划分参考地,可以考虑电源隔离,也不贵,实在想省成本,最次也得采用单点接地,防止干扰,建议使用四层板绘制;反正嘉立创四层板 也是免费的。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
18天9时前
21楼
引用歪先生发表于20楼的内容
这么直接淦,中间产生误差的地方太多,我个人认为 楼主应该先把信号采集部分处理好,先用示波器将滤波运放...

ads1292已经集成了前放,集成了adc采集量化数字输出。。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
TonyCheng
17天3时前
22楼

巧了,最近学校社团也在做类似的东西,stm32为主控,单导联心电+呼吸检测+输液控制的集成系统😂不过心电用的是ad8232方案,现成模块

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
15天17时前
23楼
引用TonyCheng发表于22楼的内容
巧了,最近学校社团也在做类似的东西,stm32为主控,单导联心电+呼吸检测+输液控制的集成系统😂不...

adi的方案,包括adas1000系列,中文支持比ti的好太多,ti的全英文长篇大论看的头要炸了

而且ti的ecg产品遮遮掩掩,驱动代码没有,数据手册语焉不详,新器件看个手册还要nda,nda又申不到

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
TonyCheng
15天6时前
24楼
引用BSP发表于23楼的内容
adi的方案,包括adas1000系列,中文支持比ti的好太多,ti的全英文长篇大论看的头要炸了而且...

确实,之前用adxl345的时候根本没想到那玩意儿能有中文datasheet😅

还有,stm32最近好像降价了?f103c8t6淘宝售价16~18,我记得之前二十几来着

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
fuwen0202
14天20时前
25楼

一不小心看到了7年前我本科毕设用的方案。。。。ADS1292.。哈哈哈哈哈哈

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
fuwen0202
14天20时前
26楼

如果你想要更简单一些,我推荐使用ad8232,配合adi英文网站上下载的滤波器计算工具来计算放大和滤波,直接adc采样就行。。。


引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
fuwen0202
14天20时前
27楼
引用BSP发表于23楼的内容
adi的方案,包括adas1000系列,中文支持比ti的好太多,ti的全英文长篇大论看的头要炸了而且...

ads1292不需要吧,datasheet上都有寄存器配置,只是极其繁琐而已,如果你需要参考设计,我记得有个配合CC2540的参考设计可以看

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
13天1时前 修改于 13天0时前
28楼
引用fuwen0202发表于27楼的内容
ads1292不需要吧,datasheet上都有寄存器配置,只是极其繁琐而已,如果你需要参考设计,我...

有的,1292的参考设计确实比adi的adas1000更完整一些,但是没有驱动代码例程,得从那块评估板的安装包里面挖,而且数据手册应用手册都是全英文。。通篇读下来还是有点困难 sticker

ti这款芯片还算是开放的比较多的,其他的afe芯片直接需要nda了

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
13天0时前 修改于 12天18时前
29楼
引用fuwen0202发表于26楼的内容
如果你想要更简单一些,我推荐使用ad8232,配合adi英文网站上下载的滤波器计算工具来计算放大和滤...

我看了您之前发的帖子里的实验,ad8232直出的数据是比ads1292的好一些吗,从您的实测数据来看,1292的基线漂移相对严重一些


引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
信仰は儚き人間の為に
13天0时前 修改于 12天23时前
30楼
引用BSP发表于29楼的内容
我看了您之前发的帖子里的实验,ad8232直出的数据是比ads1292的好一些吗,从您的实测数据来看...

基线漂移主要是电极产生的,和芯片没什么关系,加个软件高通就能滤掉了。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
fuwen0202
9天6时前
31楼
引用BSP发表于29楼的内容
我看了您之前发的帖子里的实验,ad8232直出的数据是比ads1292的好一些吗,从您的实测数据来看...

两者的设计思路不同而已。

ads1292是一个afe,甚至可以看做一个adc。直接通过高速高位的adc采集原始数据,得到离散数据后再数字滤波处理,而你直接观测a采集到的结果并没有做数字滤波所以你才会看到基线漂移或者杂波等。

ad8232则可以看做一个纯模拟电路,通过放大器来对信号进行放大和滤波。经过滤波的信号当然比原始信号好啊。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
虎哥
9天6时前 修改于 9天5时前
32楼

最近做过两次动态心电图,一家小医院的提供的设备,在运动时波形完全杂乱,只能在静止不动时出稳定波形;另一家大医院的,基本上各种状态都能得到比较干净的波形。比较两者区别,可能是因为后者所有导联线都是用的同轴电缆。这个同轴线容易破损,靠近电极一侧已经破得不成样了,露出了屏蔽层。

我原本有一个三四百块的单导机子,导联线跟上面回帖中的长得近似(唯插头不同),也是一动波形就乱。

1638076430479.png

我还有一台日本光电的台式心电机,也是得躺在床上做,不能动,动就乱。

所以一定要买好的导联线,带屏蔽的。现在单导的机子非常便宜,自己做的价值不大,要做就做12导联的。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
BSP
9天2时前
33楼
引用fuwen0202发表于31楼的内容
两者的设计思路不同而已。ads1292是一个afe,甚至可以看做一个adc。直接通过高速高位的adc...

我重读了ad8232的手册,找到他自带了可选的单极点双极点或是三极点高通滤波器

也就是说如果将这些滤波器用数字过程实现,能得到一样的效果是吗

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
fuwen0202
8天21时前
34楼
引用BSP发表于33楼的内容
我重读了ad8232的手册,找到他自带了可选的单极点双极点或是三极点高通滤波器也就是说如果将这些滤波...

数字滤波理论上可以做的更好。。

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
kearney
4天22时前
35楼

考古,不知道楼主的进程如何了

引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
所属分类
上级专业
同级专业
%7B%22isDisplay%22%3Atrue%7D
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
插入资源
全部
图片
视频
音频
附件
全部
未使用
已使用
正在上传
空空如也~
上传中..{{f.progress}}%
处理中..
上传失败,点击重试
等待中...
{{f.name}}
空空如也~
(视频){{r.oname}}
{{selectedResourcesId.indexOf(r.rid) + 1}}
处理中..
处理失败
插入表情
我的表情
共享表情
Emoji
上传
注意事项
最大尺寸100px,超过会被压缩。为保证效果,建议上传前自行处理。
建议上传自己DIY的表情,严禁上传侵权内容。
点击重试等待上传{{s.progress}}%处理中...已上传
空空如也~
草稿箱
加载中...
此处只插入正文,如果要使用草稿中的其余内容,请点击继续创作。
{{fromNow(d.toc)}}
{{getDraftInfo(d)}}
标题:{{d.t}}
内容:{{d.c}}
继续创作
删除插入插入
{{forum.displayName}}
{{forum.countThreads}}
篇文章,
{{forum.countPosts}}
条回复
{{forum.description || "暂无简介"}}
ID: {{user.uid}}
学术分隐藏
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

支持的图片格式:jpg, jpeg, png
插入公式
分享回复:{{shareId}}
加载中...
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
加入关注取消关注
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
建议修改
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也