Temoignages d 'utilisateurs

VivaQuant加速了嵌入式动态心电传感设备的开发和验证

挑战

设计并实现了一种从有噪声的心电图信号中提取准确信息的嵌入式系统

解决方案

利用MATLAB开发了一种带内噪声去除算法,并利用定点设计器和MATLAB编码器在ARM Cortex-M系列处理器上实现

结果

  • 发展速度加快300%
  • 功耗和内存消耗最小化
  • 启用严格的测试

“MATLAB、MATLAB编码器和定点设计器使我们的小团队能够开发复杂的实时信号处理算法,并对其进行优化,以降低功耗和内存需求,加速嵌入式代码实现,并执行医疗设备验证所需的严格测试。”

Marina Brockway, VivaQuant
使用VivaQuant的嵌入式带内噪声去除算法处理前后的ECG片段。

每年有超过400万患者因心跳加速或剧烈跳动而头晕、昏厥或不适。他们的医生会给这些病人一个小型的可穿戴设备,在他们进行正常活动的同时,通过心电图持续监测他们的心律长达一个月。与在医院或医生办公室获得的心电图记录相反,这些动态心电图经常被噪声干扰,很难或不可能分析。噪声会导致假阳性和假阴性事件检测,增加分析时间和成本,并可能导致延迟或漏诊心律异常。

在美国国家心肺血液研究所的支持下,VivaQuant的工程金宝app师正在开发一种心律监测设备,该设备将采用多域信号处理™(MDSP)来抑制高达26 dB的带内噪声,而不会扭曲ECG波形。本装置,用MATLAB设计算法®并使用MATLAB Coder™在嵌入式处理器上实现,能够从嘈杂的ecg中准确检测心律失常。VivaQuant创始人兼首席技术官Marina Brockway表示:“多年来,我一直在使用MATLAB开发复杂的信号处理、控制和信息学算法。“有了MATLAB编码器和定点设计器,我可以比我想象的更快地从想法到产品。”

挑战

简单的无限脉冲响应(IIR)滤波器可以降低ECG通带外的噪声,但不能在不失真的情况下去除通带内的噪声。为了实现这一目标,VivaQuant需要开发一种算法,在大型矩阵上执行复杂的计算,然后在一个足够小的设备上实现,以便在不更换电池的情况下舒适地佩戴数周。整个系统,包括微处理器和前端电子设备,需要在消耗不到1毫安电流的情况下实时获取和处理一个两矢量心电图。

VivaQuant试图改进传统的设计方法,即算法由一个团队开发,然后交给一个独立的程序员团队来实现。Brockway说:“当算法开发人员把一个设计扔给另一个团队时,在沟通中经常会丢失很多东西。”“我们需要在不影响性能或质量的情况下,用一个小团队来完成这项工作。”

解决方案

VivaQuant使用MATLAB和MATLAB Coder加速开发。

Brockway和她的同事使用MATLAB和信号处理工具箱™开发了算法的浮点版本,该算法采用了矩阵运算、统计测试、数字滤波器以及信号检测和估计。

他们通过在ECG数据上测试该算法来验证该算法,这些数据包括相同ECG信号的干净版本和有噪声版本。他们在已知的干净心电信号中加入各种噪声,然后应用算法来验证噪声已经被降低,并且原始心电信号特征没有被扭曲。

使用定点设计器™,他们将浮点算法转换为定点算法。他们利用算法代码记录最小和最大变量值,并使用这些信息优化定点数据类型,以在严格的处理器约束下实现精度。

为了保持浮点和定点版本之间的等价性,他们在每个优化步骤之后验证定点实现。该团队开发了一个MATLAB测试平台,可以根据测试数据自动运行定点和浮点版本,并对结果进行统计比较。

该团队通过使用MATLAB Coder为各个算法模块生成C代码来加速测试。他们还创建了可执行的MATLAB文件,以便在测试运行期间调用C代码。

他们为完整的算法生成了C代码,并将其部署到ARM上®皮质®-M系列处理器,并进行了进一步优化和测试。

VivaQuant已经完成了一个原型,展示了在必要的功率限制下在ARM Cortex处理器上实现MDSP算法的可行性,现在正进入正式的开发和测试阶段。

结果

  • 发展速度加快300%。Brockway说:“使用MATLAB和MATLAB Coder,我们在短短6个月内实现了算法,而无需聘请单独的编程团队。”“我估计我们的过程比传统方法效率高三到四倍,使我们能够在实时嵌入式系统中快速部署高度复杂的算法,以改善患者的生活。”

  • 功耗和内存消耗最小化。Brockway说:“我们的目标电池寿命是3周,容量为15cc。”“定点设计器有助于我们优化算法并超越这一目标。该设备的重量不到15克,与目前许多设备不同的是,它戴起来很舒服。”

  • 启用严格的测试。Brockway指出:“对于一个医疗设备来说,质量、可靠性和安全性是至关重要的。“我们用MATLAB构建的测试平台使我们能够在开发的每个阶段进行严格的测试,并自动识别结果中的任何差异。”