用CW32L就能做一个指夹血氧仪,看完开源资料后,我悟了 一个外包项目,悬赏3000。 要求:用指定芯片做一个指夹式血氧仪。
你猜项目成本可以被压缩到多少? 本次的项目作者,是3个大学生。
可别以为大学生经验少! 他们不但将成本压缩到了三位数,同时还保证了质量,做出了产品级指压式血氧仪。
最近,他们将项目进行了开源。 他们是如何实现产品级功能的?是如何进一步压缩成本的? 我们结合他们发布的开源资料,一起看看! 项目功能 采用0.96inch TFT彩屏显示。锂电池供电,可充电。低弱灌注性能,最低可达到0.2%。可保证在信号弱、儿童、失血多、肢体冰凉的低灌注的患者进行准确测量。光强自动调节。可根据病人的手指大小自动调节发射光强,保证信号质量更好,功耗更低,可以使用不同大小的手指、不同皮肤颜色。优秀的环境光抵消功能。可以在室内以及光线较强的临床环境使用。可测量血氧饱和度SpO2、脉率PR、灌注指数PI。可进行屏幕方向翻转。5s快速出测量结果。血氧饱和度和脉率超限报警。无手指自动关机。电池电量报警以及电池电量低自动关机。 那么,想要在压缩成本的基础上,实现这些功能,该如何设计硬件代码?如何选型器件? 在那之前,我们得先理解它的工作原理! 血氧仪工作原理 血液中,血红细胞的含氧血红蛋白(HbO2)和还原血红蛋白(Hb),对红光(660nm)和红外线(900nm)有不同的吸收能力。还原血红蛋白(Hb)吸收的红光较多,红外线较少。含氧血红蛋白(HbO2)吸收的红光较少,红外线较多。 指夹式血氧仪的工作原理就是: 在设备的同一位置,设置红光LED和红外线LED灯,测量血氧饱和度。 当光线从手指的一面穿透到另一面,就能检测两种血红蛋白对不同波长的光吸收的区别,所测出来的数据差被光敏二极管接收后,可产生对应比例的电压。就可以测出实际含氧量下,血氧饱和度最基本的数据和比值。 实际上要做到更高的精度,除了两个波长以外还要增加,甚至高达8个波长。 本项目为两个波长。 硬件设计思路 血氧仪由电源板和主控板组成,两块板子尺寸都不超过10cm*10cm,可以在嘉立创EDA免费打板,这样一来,就省下了PCB电路板的钱。 1.电源板 电源部分的设计,需要实现USB外接供电、电池供电、电池充电等功能。 因此整体架构包括——电源路径管理及电池充电电路、5V供电电路、3.3V供电电路。 电源板就主要围绕这三个部分,讲解设计思路。
1.1 电源路径管理及电池充电电路 电源路径管理电路采用P-MOS作为开关,通过G端电压与S端电压关系,实现USB供电与电池供电的动态切换功能。 电池充电电路采用TC4056A芯片作为主控,依托其可编程充电电流控制、充电状态指示等功能,实现单节锂电池充电功能。 USB接口增加过压、过流保护电路设计,防止插入瞬间尖峰电压对后级电路的冲击。 增加D3二极管的目的是加速P-MOS导通,防止因供电方式切换,导致主控掉电复位等问题。 原理图设计如下。
1.2 直流5V供电电路 直流5V供电电路采用MT3608芯片搭建Sepic电路,确保在电池电压下降时也能稳定提供5V电压。 原理图设计如下。
1.3 直流3.3V供电电路 直流3.3V供电电路采用AMS1117-3.3芯片构建LDO降压电路,稳定提供3.3V电压。 原理图设计如下。
1.4 PCB设计
2.主控板 主控板包括MCU电路、发射电路、接收电路、按键电路、蜂鸣器电路、TFT显示屏电路。 这六部分用于实现血氧仪主要功能。 下面也主要围绕这6个部分,讲解设计思路。 2.1 MCU电路 MCU电路采用CW32L031C8T6作为主控芯片,设计BOOT电路、SWD烧录接口及复位按钮(不焊接),受空间限制,取消外部晶振电路。 原理图设计如下:
2.2 发射电路 发射电路采用“RS2105+RS622”设计方案。由RS2105电子开关芯片构成双路开关电路,用于控制发射时序;由RS622芯片所包含的两路运算放大器搭配N沟道MOS管形成恒流源电路,通过PWM信号控制电流大小,以实现控制发射信号强弱的目的。 采用“660nm红光+900nm红外光”的双波长发射管,内部反向并联连接,通过上述H桥电路控制发射时序和发射功率。 原理图设计如下:
2.3 接收电路 接收电路采用RS622双路运放芯片作为核心。前级与200KΩ电阻及电容构成跨阻放大电路,采集并放大“直流+交流”混合信号;后级通过负反馈200KΩ电阻构成信号放大电路,放大交流信号; 前后级之间通过电容耦合,并与电阻构成高通滤波器,有效滤除直流信号。 原理图设计如下:
2.4 按键电路 独立按键设计,采用1mm超薄按键,通过并联电容构成硬件消抖电路,通过电阻接入MCU的PB03引脚,按键按下为低电平(低电平有效)。 原理图设计如下:
2.5 蜂鸣器电路(当前版本PCB受空间限制已取消) 蜂鸣器电路采用2KHz无源蜂鸣器作为核心件,以N沟道MOS管作为开关,通过输出一定频率的PWM信号驱动蜂鸣器发声。 原理图设计如下:
2.6 TFT显示屏电路 TFT显示屏电路用于驱动0.96寸全彩LCD显示屏。 设计8P抽屉式下接FPC接口,用于连接带软排线接口的显示屏。同时以PNP三极管作为开关,通过MCU输出一定占空比的PWM信号实现屏幕背光控制。 原理图设计如下:
2.7 PCB设计
软件说明 软件部分,虽然需要很多的时间成本,但不怎么需要花钱。 而作为有彩屏“智能交互”功能的“产品”,软件部分尤为重要。 本章说明一下这三个部分:TFT显示屏、FFT算法实现、FFT结果运用。 1. TFT显示屏(2部分) 1.1 LCD初始化 1.2 LCD主要功能函数 2.时序控制 控制时序说明:每次发射(采样)包括四个阶段(IR发射、停止发射、RED发射、停止发射)每阶段3ms,共计12ms;之后为27ms的延迟(停止发射);上述为一个完整发射循环,每个循环为39ms;完整发射(采样)周期包括128次发射循环,共计4.992秒。
代码如下:(在BTIM1定时器中断回调函数中实现) 3.算法设计(3部分) 3.1 FFT算法原理 FFT是一种DFT的高效算法,称为快速傅立叶变换(fast Fourier transform)。 DFT的运算如下:
FFT算法可分为按时间抽取算法和按频率抽取算法。这种方法计算DFT对于X(K)的每个K值,需要进行4N次实数相乘和(4N-2)次相加。对于N个k值,共需N*N乘和N(4N-2)次实数相加。 改进DFT算法,减小它的运算量,利用DFT中的周期性和对称性,使整个DFT的计算变成一系列迭代运算,可大幅度提高运算过程和运算量,这就是FFT的基本思想。 3.2 FFT算法实现 (1)计算三角函数表 (2)FFT函数 3.3 FFT结果运用 (1):直接用某个频率点的值,可以做音频频谱强度显示 第n个频率点的值是数组上的Fft_Real[n]和Fft_Image[n] (2):求某个频率点的模 模值=根号(实部平方+虚部平方),即sqrt((Fft_Real[n]*Fft_Real[n])+(Fft_Image[n]*Fft_Image[n])) (3):清除特定频率的分量,一般用于数字滤波算法 Fft_Real[0]=Fft_Image[0]=0; //去掉直流分量,即将第0项的值清零 Fft_Real[63]=Fft_Image[63]=0; //要去除某个频率的分量,可将该频率对应的数组项的值清零 Fft_Real[0]是直流分量。Fft_Real[1]是最低频率点,也是最小频率分辨率值 说明:分辨率=采样率/采样点数N,波形峰值大小=模值/(N/2), N为采样点数。
很好,搞定了软硬件,再最后盘一下完整的选型+制作+测试过程吧! 相信看过后,在我公布成本价前,你心里也会有一个大概的成本价了! 制作过程 1.设计外观 外观设计参考主流品牌外壳方案。 用3D打印的方式制作外壳,尺寸小,成本也低。
2.核心物料选择 主控采用CW32L031C8T6芯片,单买111个。
血氧红外对管分别采用:660-905nm双波长发射管PD90接收管 其中发射管正接可发射905nm红外光,反接则可发射660nm可见红光。
TFT显示屏适合人机交互,我采用0.96寸彩屏,支持横竖屏两种UI展示。
3.PCB制作与焊接本项目的PCB尺寸在嘉立创免费打样范围内。本次焊接主要通过加热台,因为大量采用了0402及0603贴片封装件。贴片焊接完成后,再通过烙铁手工焊接排针、发射管、接收管、USB接口等直插件。对于LQFP封装的芯片,如果引脚连锡,可以在引脚部位涂一点助焊剂,然后使用小刀口的烙铁沿着引脚自内向外的方向多刮几下,即可顺利去除多余的焊锡。
4.功能测试与参数调试 利用逻辑分析仪对发射管控制信号进行了测试。从图中可以看出:当第0通道为高电平(开关开启)时,第3通道输出PWM波形,然后所有通道关闭;当第1通道为高电平(开关开启)时,第2通道输出PWM波形,然后所有通道关闭,如此持续循环。 上述信号符合设计方案要求。 具体时序控制逻辑详见软件设计部分。
在弱光环境下,通过示波器测量接收管接收到的信号波形如下所示。
进一步放大后,得到如下信号波形,符合预期采样效果。
将上述接收波形,经放大、ADC采样、滤波等处理后,得到一系列采样值。 将这些采样值,通过EXCEL处理并可视化后,得到如下折线图。 在AC信号图上可以清晰看出脉冲信号的波形。
以128个采样数据为一组,经过FFT及相关公式计算,最终可以获得脉搏、PI及SPO2%等计算结果,并在显示屏上显示出来。
全部算下来,项目的总成本仅100。
怎么样,是不是感觉这3位大学生非常优秀?未来可期呢? 据说团队中的两人正在参加电赛,预祝他们此次比赛顺利!
文章的最后,小编想说,希望这样的外包项目活动能多多举办,让刚好想做项目的人,有目标,有作品,还能有奖金回血,一举三得!
作者本人的项目总结 参考资料: [1]基于CW32L系列MCU的指夹式血氧仪 – 嘉立创EDA开源硬件平台 [2]星火计划_外包赛道_每周更新外包项目_奖金2000-8000不等 — 完 — 嘉立创EDA·知乎号 我,看一手优质开源项目
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/56005.html