主要内容

基于模型的系统工程设计胰岛素输注泵

本例向您展示如何使用基于模型的系统工程工作流程来研究胰岛素输注泵的最佳设计。胰岛素泵是糖尿病患者使用的医疗设备,它模仿人体胰腺,连续输送胰岛素,并随食物摄入量输送不同量的胰岛素。

胰岛素泵可穿戴设备的目的是通过根据需要和食物摄入量注入胰岛素,使佩戴者的血糖水平保持在健康的设定点附近。本例展示了一个提议的胰岛素输注泵系统,该系统具有两个传感器和三个泵变体,代表了可选的设计选择。

首先确定系统需求,然后用代码生成和验证测试创建详细的设计模型。最后,模拟满足不断发展的需求的系统体系结构模型。

胰岛素泵系统结构模型

该图显示了胰岛素泵系统的System Composer™体系结构模型。本例使用Stateflow®块。如果没有Stateflow许可,则可以打开并模拟模型,但只能进行基本更改,例如修改块参数。

systemcomposer.openModel (“InsulinInfusionPumpSystem”);

BGSensor成分测量血糖水平。的控制器组件决定胰岛素率。的成分提供胰岛素的身体使用InfusionSet.的病人接受治疗。的BGMeter校准的BGSensor.最后,(人机界面设备)组件可以是手机上用于患者与系统通信的移动应用程序。的提供信息给PatientDataServer组件,它将分析发送到临床医生监管机构,偿还组件。

胰岛素泵系统结构模型。

系统要求及连接

使用需求工具箱™来分析系统需求,进一步将它们分解为子系统需求,并将派生需求链接到满足它们的体系结构组件。在System Composer中链接、跟踪和管理需求需要需求工具箱许可证。

在需求工具箱中的需求透视图中一起管理需求和架构。选择应用程序>要求经理.要编辑需求,请选择需求>要求编辑器或输入这些命令打开要求编辑器(需求工具箱)

slreq.open (“Infusion_Pump_System”);slreq.open (“Insulin_Pump_Controller_Software_Specification”);slreq.editor

胰岛素泵系统的要求清单,包括控制器软件规范。

此时的需求分解和分析代表了这些关注点:

  • 交付的准确性

  • 缓解过度输注,导致危险的低血糖水平

  • 故障分析以防止负面结果,例如当电池耗尽或设备耗尽药物时

在架构模型上,选择需求图标以查看与组件相关联的需求。例如,下面是与组件。

对泵的不同组件的模型内要求,包括基础速率、给药量、泵、泵故障、泵通信故障、输液器阻塞和胰岛素输送。

相反地,选择一个需求来查看突出显示的实现需求的组件。例如,BGSensor组件实现了感知血糖要求。

BGsensor组件的需求透视图。

优化设计选择的结果分析

结果分析由一项贸易研究组成,其目标是基于计算最大化设计选项的商业价值,这些计算总结了具有权重因素的不同组件属性。许多是直接输入的属性,例如开发组件的非经常性工程(NRE)成本。然而,遵从性评分是一个派生属性,它基于每种组件类型的不同数据。这些属性模拟了系统最终用户的负担。合规性评分包括以下考虑因素:

  • 能源消耗

  • 尺寸和重量

  • 精度

  • 平均故障间隔时间(MTBF)

  • 操作时产生的声级

  • 易用性

导航到建模>配置文件>概要文件编辑器,或输入该命令。

systemcomposer.profile.editor

类中定义的系统编写器配置文件概要文件编辑器,由定义了属性的构造型组成。您可以将构造型应用于模型中的组件,从而为每个组件分配特定的属性值。

在概要编辑器中显示胰岛素泵系统概要,其中耐用组件原型的属性可见,包括单位成本、NRE、尺寸、能耗、符合性评分、供应商、MTBF、精度和公差。

泵和传感器贸易研究包括以下步骤:

  1. 收集所有的变体组合。

  2. 一个接一个地激活变体来表示所有的组合。

  3. 遍历模型以计算遵从性,并使用存储的和计算的参数计算结果。

  4. 收集结果并用相同的单位进行加权。

  5. 提供优化的选项。

一个不同的组件块命名BGSensor包含两个不同的传感器变体,代表来自不同制造商的示例传感器。

传感器组件的两种变体选择:SensorA和SensorB。

变量组件块命名包含本例中称为PeristalticPumpSyringePump,PatchPump

泵组件有三种不同的选择。

要以编程的方式在不同的变体选择组合之间循环,计算合规性,并监视结果以确定最佳设计选择,请运行OutcomeAnalysis.m.有关变体分析的更多信息,请参见功能构造

运行(“OutcomeAnalysis.m”

图中包含一个轴对象。带有title Net outcome, ylabel Normalized units的axes对象包含一个类型为bar的对象。

归一化结果评分为最大SensorA +注射器泵组合。这种设计选择是胰岛素泵的最佳选择。

控制器实现模型

在Simulink®中实现胰岛素输液泵控制器。此实现中的输入端口包括用户输入胰岛素泵读取的用户指标,以及硬件状态,以及有关胰岛素泵的信息。该块命名为ModeControl确定胰岛素泵必须在哪种模式下工作。

控制器实现模型显示输入和模式控制块。

该块命名为ModeControl包含关于如何选择模式的详细信息的状态流图。

三种模式包括:

  • 报警模式,系统被挂起,修复,并在清除后重新启动

  • 胰岛素随食物摄入快速输送

  • 基底在较长一段时间内输送胰岛素,以保持全天葡萄糖水平稳定

模型控制块中的statflow状态图。

选择模式后,该组件行为将决定输出端口的胰岛素速率。

控制器实现模型与报警,丸传递,和基础传递块。

使用测试管理器进行验证和确认

您可以使用基于模型的设计来验证体系结构设计和系统需求。抽象的体系结构模型和详细的Simulink设计模型通过可跟踪的需求链接连接起来。本节要求使用Simulink®Test™许可证。

控制器的需求可追溯性报警处理要求。

控制器实现模型的告警处理要求。

加载和查看测试经理(仿真软件测试)使用命令。

sltest.testmanager.load (“Controller_Tests.mldatx”);sltest.testmanager.view

Alarm_Detection功能测试验证报警处理要求。

Test Manager应用程序在控制器的测试用例集中显示告警处理测试。

单击程序图标的右侧利用打开测试线束。在本例中,块名为控制器对于使用测试装置进行单元测试是隔离的。有关创建测试工具的更多信息,请参见创建或导入测试设备并选择属性(仿真软件测试)

围绕它定义测试的控制器测试线束。

双击Test Sequence块以查看测试序列中的步骤。这些步骤定义了一个场景来验证警报系统的功能。

测试序列块中的逻辑。

要运行此测试,请返回到测试经理(仿真软件测试)

sltest.testmanager.view

右键单击测试Alarm_Detection在测试浏览器中选择运行.在Results and Artifacts部分,查看您的测试结果。测试通过表明系统满足了要求报警处理由测试评估单元中定义的条件验证:

  • 当电池电量不足,阻塞(线路堵塞)或药物(胰岛素)不足时,警报是否会禁用胰岛素输送

  • 问题解决后系统是否重新启动

另请参阅

应用程序

相关的话题

Baidu
map