2020年电赛的仪器仪表及信号处理类赛题的猜想

  [复制链接]

7

主题

16

帖子

121

积分

慕课讲师

积分
121
查看: 11512回复: 8 发表于 2020-9-1 10:52:22   只看该作者
咋没人关于电赛题目的预测分析呀,我这里从指导教师角度发表几点私下见解(主要针对信号链和仪表类赛题):

1、预计针对人体生理特征检测会大概率出现赛题
    根据8月27日发布的2020年电赛器件清单列表(https://www.nuedc-training.com.cn/index/news/details/new_id/201),今年列表中明确型号的芯片有两款芯片:LMT70和ADS1292,并且测试仪器中有 心电信号模拟器、温度计、体温表等。从这些芯片和测试仪器出现强烈支持会有人体生理特征检测的赛题,而且此类赛题很大可能会呼应 今年发生的疫情情况下,如何做好提前发现、重症监护等话题。
    从细化分析这两款芯片和相关仪器,存在一些疑问:LMT70是一颗支持精度到达0.1°C的温度传感器,而仪器中的温度计精度仅1°C,体温表的精度一般也达不到0.1°C。

2、仪表列表中存在 手持式激光测距仪,那么高精度测距赛题也会继续出现,这类赛题在某一年的电赛模拟信号处理邀请赛中是出现过,估计难点是在近距离和远距离均保持高精度的要求。

从同学们的准备工作看,因为生理特征检测的强烈暗示,我们可以从该类题目去分析:
1、TI关于ADS1292有较多参考设计,包括EVM板、应用参考设计,其中除了EVM板之外,大多数参考设计是不提供实物销售的,同学们可以查阅这些参考设计(包括硬件资料、软件代码),因为今年公布的器件清单到正式比赛的时间间隔较长,从现在开始自己动手开展软硬件的准备工作,大致能够赶上正式比赛的时间,这个改革站在指导老师的角度,是非常欢迎的,有利于真正促使同学们去开展工程实践,哪怕不修改参考设计,去打个板,也是用赛事带动本科教学的一点尝试。
2、针对上述提及的参考设计,我这里简单罗列一下:
    a、ADS1292 EVM板(https://www.ti.com/tool/ADS1192ECG-FE
        从名字看,即针对ADS1292作为验证使用的系统,应该把所有ADS可能应用场景尽可能在这个板子上可以兼容,从网页的图片看,也是相对复杂的。系统中采用ADS1292芯片+MSP430F5529单片机构成整体系统,比较特殊的地方是集成了一颗8GB的NAND FLASH,猜测是作为心电信号的保存使用
        但该EVM除了销售链接($99)和用户指南文档之外,没有如TI其他芯片的EVM一样开放PCB、软件等资源下载,原理图可以在用户指南的后半部分找到,软件可能从用户指南提及的”ECG Recorder Firmware“等上位机软件中去直接下载,但因为我没有购买实物,所以没有进一步深入去研究
    b、MPBSM,多参数生理特征监测参考设计(https://www.ti.com/tool/TIDM-BIOSIGNMONITOR)是完成四个人体重要生理特征中的三个参数(心电图ECG、皮肤电反应GSR、皮肤温度)监测的参考设计。该设计是采用MSP430FR5889作为系统主处理器、采用RF430CL331作为NFC处理器与手机通信、采用ADS1292作为心电信号检测、采用运放LMP2231搭建了一路皮肤反应电平检测、采用TMP112(0.5°C精度)作为皮肤温度检测。参考设计提供硬件原始文件(原理图、PCB图)、固件代码(可以完全编译)、上位机Android程序代码,但不提供实物销售,同学们可以自行制作PCB板以及研读关于ADS1292的驱动代码作为学习参考    c、TIDA-00096,无线心电监测参考设计(https://www.ti.com/tool/TIDA-00096)是采用ADS1293 + 蓝牙芯片CC2541作为基于蓝牙的心电监测参考设计,系统采用一个ADS1293搭建的心电最简设计电路,其外部电路仅是从串口上拉拉进来模拟输入信号,没有太多的共模抑制处理电路、没有TVS保护电路,适合简单使用的系统,如果考虑精度性能等因素,该参考设计可能存在一定的风险。该参考设计也提供硬件原始文件(原理图、PCB图),固件代码(提供的蓝牙上位机软件,安装后有不少hex和代码,没有完全验证,猜测应该代码是全的)
    d、TIDA-01614,多参数病人监护系统参考设计(https://www.ti.com/tool/TIDA-01614),该参考设计是实现三路心电信号、三路温度监测、血氧监测的电路,其中采用MSP432P401作为系统主处理器、采用ADS1292作为心电监测电路、采用AFE4403作为血氧监测、采用三路TMP117(0.1°C精度)作为温度监测,监测结果通过隔离UART口输出数值。跟(b)很相似,提供所有原代码和硬件设计原始资料,但没有实物可以销售,同学们可以自行打板制作。简单看了一下,代码也比较清晰,适合准备参赛人员现在开始阅读并理解相关实现逻辑。

  上述参考设计中,如果考虑器件列表中的ADS1292和LMT70联合使用,那么参考设计(d)最接近最终应用,唯一差异是参考设计采用数字温度传感器,而LMT70是模拟温度传感器。因此,需要根据TMP117提示的内置16bit ADC,考虑构建LMT70+ADS1113 构建一路精度为0.1°C的数字温度检测系统取代TMP117,也可以考虑 三颗LMT70 + 一颗ADS1115取代原来的三路TMP117。接口都保持与TMP117一致的I2C接口。

  上述所有参考设计仅是将心电、温度数据忠实检测出来,并向UART或者上位机上传。根据电赛可能意图,预计需要实现不同心电波形的自动识别,同学们在底层数据处理需要看看是否需要进行数字滤波来提高信号质量,应用层数据处理需要针对不同心电数据进行模式识别,以及根据心电数据、温度数据做各种预警识别和处理。由于赛制时间有限,各种算法调整需要短期内能够调整参数,建议同学们在赛前打通MATLAB与arm处理器或者MSP430单片机的代码通路,这样算法调测模拟可以在MATLAB上实现,以加速电赛器件的调测,同时也隔离算法人员与系统实现人员的代码,做到更好的交叉合作,同时避免合作代码的混乱。

  算法准备的同学,可以多看看CNKI上的心电相关论文、以及数字滤波相关的程序代码,以利于实际题目拿到后,手边有较好的工具、参考代码可以使用。硬件的同学,可以根据对器件列表的理解,现在开始寻找(淘宝或者立创的硬件广场)和自行制作打板相关的模块:ADS1292模块、LMT70+ADC的模块、单片机/MCU功能模块、显示模块。系统实现的同学,深入阅读参考设计提供的原始代码,个人觉得(d)的代码已经完全足够,而且如果题意中没有低功耗要求,采用MSP432P401可以让各种代码的融合做的更好(因为性能余量较大,以利于代码封装)。如果有功耗指标要求,建议采用铁氧体的MSP430系统,如参考设计(b)中的MSP430FR5889。并且做好完整框架代码,要么采用RTOS来隔离不同代码,要么采用基于时间片轮询的单片机代码框架,这样不同来源的代码可以快速集成,而保持互相不干扰。

  说了这么多,上述都是猜测和自己的指导思想,估计我也要部署我们自己的学生开始硬件模块的制作、软件代码理解等工作。硬件模块预计在立创开源广场做一些开源项目来共同推动电赛准备工作,软件代码以学习参考设计代码为主,未来有时间也可以开展一些软件的开源项目来做一些,这样可以为未来的电赛培训打一个基础。

7

主题

16

帖子

121

积分

慕课讲师

积分
121
发表于 2020-9-2 21:28:20   只看该作者
TIDA-01614的设计非常奇怪,很多过孔打在焊盘之上,这样可制造性存在问题。如果仅是AFE4403这么处理可以理解,因此其Pich值非常小,且过孔孔径非常小。但还有不少电阻电容也是在焊盘上打过孔,这有点怀疑该设计是否真的做过生产。

7

主题

16

帖子

121

积分

慕课讲师

积分
121
发表于 2020-9-22 21:53:51   只看该作者
本帖最后由 junying 于 2020-9-22 22:07 编辑

因TIDA-01614参考设计既有基于ADS1292的心电信号检测,也有基于TMP117的0.1°C精度温度检测,猜测与器件列表中ADS1292、LMT70(0.1°C)非常接近,我们重点跟进该参考设计开展相应工作,也因为原始设计中有血氧检测的冗余部分,同时因为其原始PCB在制作工艺方面要求过高,可能导致生产成本居高不下,所以我们重新设计了必要模块,近期已经模块生产完成并焊接完毕。设计思路:
    (一)ADS1292的独立模块:
ADS1292MOD.jpg
        (1)该模块预留SPI接口,可以与MSP432P401 LaunchPad配合,实现等同于TIDA-01614在心电部分的设计;
        (2)保留原有设计的DB-9接口,接口管脚与原有参考设计相同;
        (3)增加耳机接口,可以兼容大多数常见两个导联的心电信号接插件;
    (二)0.1°C温度检测模块:
LMT70x1MOD.jpg
        (1)为了兼容TIDA-01614中的TMP117的数字温度传感器,本模块采用了LMT70模拟温度传感器 + ADS1113 16bit ADC芯片,这样接口保持与TMP117相同的I2C接口,未来仅只需确认和修改I2C地址即可;
        (2)为了尽可能提高检测准确度和稳定性,模块上的电源采用了PSRR高达74dB的LDO芯片,将外部+5V转化为3.3V的供电电压,尽可能抑制电源噪声,从而大大提高了模块上的电源性能,且模块上LMT70供电采用了Π性滤波,与ADS1113供电进行隔离,在保持成本优势基础上,确保性能;
        (3)LMT70严格按照参考设计的Layout规范,保持热传导性能;
        (4)LMT70芯片非常小,焊接还是有点挑战的;
        (5)因模块集成ADS1113,与LauchPad之间仅是数字通信,不会因为传输线导致的测量误差,LMT70前端模块可以掰开使用,适用于特别小的温度检测环境;
    (三)4路0.1°C温度检测模块:
LMT70x4MOD.jpg
        (1)考虑到TIDA-01614采用了三路TMP117作为温度检测,我们单独设计了四路LMT70的传感器模块 + 4 Channel 16bit ADC芯片 ADS1115芯片,这样一路I2C接口可以采样四路LMT70的温度采样,可以节省大量的成本;
        (2)同样采用集成PSRR高达74dB的LDO芯片,抑制电源噪声,并用Π型滤波隔离数字电源和模拟电源,提高整体性能;
        (3)遵守LMT70的热传导要求进行Layout;
硬件设计如上,已经完成相应工作,接下来要深入学习参考设计的软件代码。
ALLMod.jpg

7

主题

16

帖子

121

积分

慕课讲师

积分
121
发表于 2020-10-3 17:33:20   只看该作者
junying 发表于 2020-9-22 21:53
因TIDA-01614参考设计既有基于ADS1292的心电信号检测,也有基于TMP117的0.1°C精度温度检测,猜测与器件列 ...

LMT70 + ADS1113 的测试代码上传了,请查看:https://gitee.com/NEagle/nuedc-m ... r/LMT70_ADS1113_MOD
快速回复 返回顶部 返回列表