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