DForum
event

医疗机器人软件开发最重要的是?

手术机器人的应用攸关人命,因此确保运行安全是最重要关键。MedAcuity Software

任何机器人应用最重要的都是安全性,制造业跟人类工作者共同作业的协作机器人(cobot)或手术室里的手术机器人,发生任何单点错误(single point of failure)都可能让人遭受严重伤害,搭配机器人运行的软件系统其开发与设计须能确保作业安全。

根据The Robot Report报导,国际电工委员会(IEC)发布的IEC 61508基本功能安全国际标准,其中包含具备自动保护功能的「安全相关系统」的使用、设计、部署、维护。IEC 61508-3提供开发「安全相关系统」软件的方法,医疗装置软件开发社群在设计与建置须符合如ISO 14971医疗器材风险管理等国际标准要求的风险管控措施时应善加应用。

开发「安全相关系统」软件首先必须建立软件编码标准,IEC 61508-3建议使用更好的设计模式、模块化程序码、确定性时序模式(deterministic timing pattern),而中断服务常式与锁定机制的运用应减至最少,且死等待循环(dead wait loop)、动态存储器配置与全域资料物件、重入(re-entrance)与递回(recursion)均须避免使用。

危害分析可指出程序码与资料空间可能受到破坏,而软件内建的检测机制也是重要工具,例如开机自我检测(POST),可确认硬件正常运行、检查程序码与资料空间的一致性未遭破坏。

程序码可储存于唯读存储器并用CRC-32保护,以查验程序码空间、侦测与防止不当更改。资料应分散储存于可透过虚拟存储器空间保护的不同存储器区块,并用CRC/checksum定时检查资料,CRC/checksum可在每次读取储存的程序或资料时进行验证,并在每次写入受保护的程序或资料时进行更新。

将控制与监测功能分开由不同处理器或处理程序执行,可防止因程序卡死导致安全受危害,控制功能只需符合最低安全需求即可,监测功则负责处理错误回复作业,并可运用状态机(state machine)、timer-driven事件、watchdog软件等错误侦测与回复机制来避免软件因设计不当而产生的意外错误。

「安全相关系统」的安全顾虑可参考以下技术处理:装置间与程序间的通讯协定用CRC-32侦测是否被破坏,并内建重试与无状态(stateless)协定以排除错误;透过安全作业软件可依定义的缺省值回复一致性或支持原厂重设(factory reset);watchdog软件可确保监测软件正常执行。


  •     按赞加入DIGITIMES智能应用粉丝团
更多关键字报导: 医疗机器人