怎样为医疗设备选择最合适的系统软件?
扫描二维码
随时随地手机看文章
现代医疗设备步入数字化时代,买进设备要安装操作系统以及一些实用软件,比如多媒体播放器、图像处理工具等等。究竟是需要一款实时操作系统、还是一款通用操作系统,或者是否应依据于你所要求的特性和功能自行选择?
80年代中期发生的Therac - 25事件(注:Therac – 25是Atomic Energy of Canada Limited所生产的一款辐射治疗机器。在1985年6月到1987年1月之间发生的六起已知医疗事故中,由于操作失误和软件缺陷导致剂量设定过量造成了患者死亡或严重辐射灼伤),彼时设备制造商们对因为其医疗设备在设计过程中存在缺陷但被假定其架构无误且具有足够的安全防护性,从而导致病人永久性损伤甚至死亡的事实视若不见。而这些对设计无误的假设最后经证明是致命性的。相比一般的电子产品(例如,一部多媒体播放器),我们必须对设计用于诊断或治疗的医疗设备设定更高的标准,因为即便多媒体播放器可能会节拍不准但这也不会给病人造成伤害。
此外,现代医疗设备变得越来越复杂,并且具有比以往医疗设备更多的功能。我们要如何搭建这些新系统才能满足今后的需求?我们如何才能确保控制这些设备的系统软件不会对病人造成伤害?
医疗行业有种类繁多且尺寸和复杂性各不相同的医疗设备。虽然有些设备仅被用来收集数据,但另一些设备被用于更重要的任务,如手术管理,包括很多由美国食品药品管理局监管的手术。
?
美国FDA医疗器械分类等级
低级:如果设备发生故障或设计存在潜在缺陷不会对病人、操作人员受伤、和/或旁观者造成任何伤害。
中等级:如果对与设备功能有关的软件进行操作会直接影响病人、操作人员和/或旁观者,因此若其发生故障或设计存在潜在缺陷可能会对病人、操作员和/或旁观者造成不算严重的伤害;或者它会间接影响病人、操作人员和/或旁观者(例如,通过护理提供者的活动),在此情况下不准确的或被延迟的信息可能会导致病人、操作人员和/或旁观者受到不算严重的伤害。
重要级:如果对与设备功能有关的软件进行操作会直接影响病人、操作人员和/或旁观者,因此若其发生故障或设计存在潜在缺陷可能造成病人、操作人员和/或旁观者死亡或严重受伤;或者它会间接影响病人、操作人员和/或旁观者(例如,通过供应商的行动),在此情况下不准确或被延迟信息可能会造成病人、操作人员和/或旁观者死亡或重伤。
从FDA的医疗器械分类表可以看出,可能对患者造成危害的医疗设备必须由FDA进行监管。目前的大部分由软件控制的医疗设备分别属于中等级(Moderate)和重要级(Major)这两大类。
医疗嵌入式设备通常由好几类操作系统(OS)进行管理。操作系统简单的“独立运行的”执行循环到更复杂的由公司内部人员管理和维护(希望)的本地拓展操作系统。另一类操作系统是通用操作系统,如Linux或Android。通用操作系统为应用程度的开发提供了一个功能丰富的平台,但它通常因为内容杂而导致占用的容量大。另外还有实时操作系统(RTOS),实时操作系统需要能提供一些特定的要求,如一个确定性的抢占式内核。将这些操作系统的功能加以结合可以为您的应用程序和硬件选定一款理想的操作系统。但有一点是肯定的---没有哪一款操作系统会是万能的。
规范很重要
我们必须首先考虑使用案例。系统如何使用?该设备将主要面向医疗保健机构,还是针对在家疗养的病人,或两者兼而有之?如何生产?如何对该设备进行测试,如何收集数据以供产品开发时使用?是否需要只允许专业技术员访问的特殊服务模式?是否有仅用于测试和生产制造的特殊模式?在无论何时涉及病人资料,确何患者资料安全被放在首位的使用环境下,如何准备一款供医院使用的设备??
该设备是否有通信模式,抑或纯粹是单机设备?考虑电源使用案例也很重要。设备是由墙壁插座供电,还是由电池供电,或两者都行?是否有充电周期?设备在充电时是否可用?
若是考虑设备的生产制造,那设备的预期单位体积为多大?如果单位体积很大,那么材料清单(BOM)成本会是一件敏感的事。如果是一款消费性电子设备,你可能需要考虑价格点敏感度。也许该器件是设备的核心部件,那么这将降低对成本的敏感度。这些考虑因素将直接影响尽量缩减BOM的需求,这反过来可能会导致要把你用于有效地搭建一款完整应用并留有一定余量所需要的内存最小化。使用通用操作系统的医疗系统通常对内存占用不敏感,并且让通用操作系统中的所有中间件都可用的需求相比内存成本占了上风。
是否有任何实时需求需要被识别?对于某些设备,没有实时行动的要求。如果某个中断服务晚100毫秒执行,它可能会导致结果被延迟100毫秒,但不会导致出现故障。然而,如果涉及到激光眼科手术中所用的激光,如果激光不能按时打开和关闭,那么将会导致灾难性的后果。或者,如果激光有眼睛跟踪向导,那么它必须与一个预定义的模式保持步调一致,以改善视力。
是否需要能容错?考虑得最多的可能是系统是否能够承受某个应用程序崩溃以及随之而来的某个应用程序的重新启动和继续运行。尽管你不能忍受激光出错而伤害病人,那么在应用程序某些部分重新启动的时候,让激光脉冲延后几秒钟是可以的。
设备上是否机密的病人资料?如果有,如何按HIPPA对其进行处理?病人资料必须安全且只能让医生和护士读取,但(可能)不能泄露给其它人。当病人病历记录从设备转移时,是否对其进行加密以防止外泄?