博世eBike系统开发基于模型设计的电动自行车控制器
挑战
解决方案
结果
- 设计更新并准备在五分钟内重新测试
- 为满足安全标准而生成的代码
- 关键的市场期限已到
“基于模型的设计的主要商业利益是更短的开发时间和更低的成本。对我来说,最大的优势在于知道我们可以使用生成的代码,这使得在Simulink中在模型级别进行调试成为可能,而不是在代码级别进行调试。”
Daniel Baumgärtner,博世电子自行车系统
在短短三年的时间里,博世电动自行车系统从市场新人成长为电动自行车业务的行业领导者。今天,博世eBike系统的驱动单元被50多个欧洲自行车品牌所使用。
从一开始,博世eBike系统工程师就使用MATLAB的基于模型的设计®和仿真软件®加速其驱动单元控制系统的设计、实施和测试。
博世eBike系统首席工程师Daniel Baumgärtner表示:“我们的团队只有9个月的时间来设计和生产驱动系统的客户样品,再过5个月,该系统就会在欧洲自行车贸易博览会上亮相。”“基于模型的设计有助于我们在截止日期内交付嵌入式eBike驱动系统控制器。”
挑战
自行车制造商每年春天都会推出新车型,而这正是大多数自行车被购买的时候。博世和其他供应商在每次产品推出前的夏季为制造商提供新系统;否则,要经过整整一年的时间才能将系统合并。
博世的工程师们有一年多一点的时间来设计、实施、测试和准备eBike系统,以便在著名的欧洲自行车贸易展上进行演示。
因为他们正在构建一个全新的系统,团队需要一种方法来模拟他们的控制器设计,然后快速将其部署到嵌入式微控制器或原型硬件上,以便在实际的自行车上进行测试。他们希望缩短设计迭代,即工程师将设计部署到硬件上,要么骑自行车,要么使用测试台来评估其性能,优化设计,然后重新部署以进行进一步测试。与此同时,他们需要确保骑手的安全。
解决方案
博世工程师使用基于模型的设计来开发eBike驱动系统,该系统按照公司的功能安全标准完成。
他们将驱动系统控制器分为两个部分:驱动控制器和电机控制器。
在Simulink中建模的驱动控制器使用骑手的节奏、施加在曲柄上的扭矩和自行车的速度等输入,来确定需要多少扭矩才能从电机帮助骑手。
电机控制器,用Simulink和Stateflow建模®,工作在比驱动控制器更高的时钟频率。它向电机发送信号,以响应来自驱动控制器的扭矩命令。
博世工程师在Simulink中为每个组件开发了一个工厂模型。驱动控制器植物模型结合了骑手的质量和踩踏板行为,以及环境因素,如地面坡度。电机控制器工厂模型捕捉了无刷直流电动机驱动系统的特性。
为了验证控制算法,该团队在Simulink中对驱动器和电机控制器进行了单独的闭环仿真。
为了进行实时测试,他们使用Simulink Coder™从驱动器控制模型生成代码,编译它,并将其部署到快速原型硬件上。他们使用嵌入式编码器从电机控制模型生成代码®并将其部署到微控制器上。
使用第二个快速原型机,工程师们建造了一个测试平台,配备了用于踩踏板的执行器和用于收集性能指标的传感器。他们通过在Simulink中建模场景,并使用Simulink Coder为测试硬件生成代码,为这种设置开发了测试套件。
在MATLAB中,该团队分析了模拟和测试结果,创建了扭矩和速度图,以可视化关键性能特征。
博世工程师使用嵌入式编码器从驱动控制和电机控制模型生成微控制器的生产代码。
结果
设计更新并准备在五分钟内重新测试.Baumgärtner表示:“在试用了eBike之后,我们感受了一下系统的表现,然后在Simulink中调整了控制算法和参数,然后为原型硬件重新生成了代码。”“在短短五分钟内,我们就准备好使用更新的控制器进行测试。”
为满足安全标准而生成的代码.“我们用Simulink Coder和Embedded Coder生成的代码没有任何缺陷,”Baumgärtner说。“它是根据我们的功能安全标准内部流程开发的。”
关键的市场期限已到.Baumgärtner说:“我们的驱动系统必须准备好在欧洲自行车贸易博览会上推出,以利用每年一次的市场机会。”“基于模型的设计对于通过代码生成加速设计迭代来实现这一目标至关重要。”