关于模型的设计开发符合IEC 62304标准的牙钻电机控制器的性能分析

描述

无传感器直流无刷 (BLDC) 电机适合在牙钻中使用。它们比有刷电机运转磨损小,更可靠,更安静,更易于维护和消毒。与带传感器的 BLDC 电机相比,无传感器 BLDC 电机更便宜且比较紧凑。但是,无传感器控制需要复杂的算法,需要更多的工程工作来进行开发。

ITK Engineering 使用基于模型的设计,开发和实现符合医疗设备软件 IEC 62304 标准的生产型 BLDC 电机控制器,从而节省了时间和精力。

配备 ITK Engineering 的无传感器、无刷电机控制功能的牙钻。

挑战

牙钻电机的转速高达 40,000 转/分钟。此类电机的矢量控制算法需要宽转速范围内转子位置的准确信息。在无传感器电机中,必须利用转子磁铁的电磁感应引起的定子电流变化推算出转子位置。ITK 工程师需要设计并优化一个转子位置估计算法及对牙钻电机复杂的级联控制,使之符合医疗设备软件的 IEC 62304 标准。

在项目开始时,没有原型电机可以使用。为保证在客户的项目最后期限前完工,ITK 必须与电机硬件同时并行开发控制器软件。ITK 工程师需要创建一个精确的电机模型,并开发一个操作此模型的控制器。在有了电机之后,他们需要在嵌入式处理器上快速实现并测试他们的控制软件。

解决方案

ITK 工程师使用基于模型的设计,对无传感器 BLDC 电机控制器进行了设计、优化、实现和测试。

工程师使用现有电机的数据表和客户提供的信息,在Simulink中建立 BLDC 电机模型,包括电气和机械组件。

他们在Simulink中开发了控制器模型,并使用Stateflow对启动、关机和错误模式以及用户可选择的操作模式建模。

该团队运行对象模型和初始控制器模型的闭环仿真,后者依赖对象模型提供的转子位置信号。

为开发转子位置估计算法,该团队使用Symbolic Math Toolbox求解代数方程式,然后优化估计算法,直至其结果能匹配来自对象模型的实际转子位置信号。

使用Fixed-Point Designer的自动定标和数据类型覆写功能,工程师们将他们的浮点控制器设计转换为定点。他们重新运行了仿真,验证定点模型。

“使用 Simulink 的基于模型的设计,即使在没有可供测试的电机硬件之前,我们也能设计控制器并进行优化,在我们有了电机之后,便能为控制器生成产品代码。如果通过手工编写代码,我们不可能按时完成这个项目。” 

——ITK 医疗控制系统高级工程师 Michael Schwarz

该团队开发了 MATLAB 脚本,用来执行个别模型组件的批量单元测试。他们使用 Simulink Coverage 为这些测试产生了模型覆盖范围报告。

该团队使用 Embedded Coder 从他们的控制器模型生成了超过 5000 行的 C 代码。他们使用 Keil 编译器为 ARM Cortex-M3 处理器编译代码。

工程师在原型板和电机上测试控制器,对模型进行微调并多次重新生成代码,从而优化性能。

ITK 向客户交付了控制器和对象的 Simulink 模型,以及生成的生产代码。目前牙钻中的控制器和无传感器 BLDC 电机已批量生产。

结果

开发时间减半。“我们大约用了四个月的时间完成控制器开发。”Schwarz 说,“如果没有基于模型的设计,可能需要至少花费两倍的时间,因为我们不得不等待硬件,手工编写代码,测试更多的原型。”

在早期发现了硬件问题。“我们的对象模型准确反映了电机工作方式,让我们在开发早期阶段就能验证我们的控制器和硬件。”ITK 的系统工程师 Alexander Reiss 说,“我们很快就找到了第一个硬件原型上错误的根源:硬件上测量的结果与我们经过验证的 Simulink 模型产生的结果不符。”

赢得合同,树立了客户信心。“我们的客户希望立即开始工作。基于模型的设计帮助我们取得合同,因为它能让我们在具备硬件之前开始开发工作。”Reiss 说,“基于模型的设计还增强了客户对我们工作的信心;现在他们使用我们分享的Simulink模型和仿真做出自己的改进。”

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分