用户故事

Ponsse通过基于模型的设计将收割机控制软件的开发时间至少缩短一年

挑战

缩短新型木材收割机的开发时间

解决方案

利用基于模型的设计对控制系统进行建模和仿真,建立实时原型进行硬件测试,生成产品C代码

结果

  • 开发时间减少一年或一年以上
  • 消除编码错误
  • 实现80%的模型重用

“从我们的Simulink模型生成无错误代码的能力使我们的控制工程师能够专注于算法设计,软件工程师能万博1manbetx够专注于固件层编程。结果是更快的开发、更好的质量和更低的成本。”

朱哈·因伯格,庞塞

庞塞的蝎子木材采集器。


Ponsse蝎子是一个八轮木材收割机设计工作在崎岖的森林地形。这台机器独特的框架由三个部分组成,由旋转幅度高达12%的关节连接。这个框架使机舱在中心部分保持水平,而轮式前和后部分调整在地形的变化。液压调平控制保持中心部分稳定,即使在不平整的地面上。

利用MATLAB进行基于模型的设计,开发了收割机控制软件®和Sim万博1manbetxulink®,Ponsse工程师将开发时间缩短了一半,并提高了代码质量。

“基于模型设计的快速原型设计加快了我们的设计过程,缩短了开发时间,降低了开发成本,”Ponsse技术和研发总监Juha Inberg说。“我们从Simulink模型生成的嵌入式代码非常可靠,并且没有我们过去手工编写C代码时遇到的编程错误。”万博1manbetx

挑战

由于蝎子的框架结构与Ponsse的其他收割机型号完全不同,因此该项目需要新的机械、电气和控制系统。由于有如此多的新开发和如此多的未知因素,工程团队希望在实施之前运行大量的模拟来验证设计选择。此外,他们希望创建一个实时原型,并在将其部署到生产ECU之前通过多次迭代对其进行优化。

在之前的项目中,Ponsse控制工程师在MATLAB中开发和调试算法,软件工程师将算法手工翻译成c。随着控制算法的复杂性从一个项目到另一个项目的增加,这种方法变得难以维持。将人为错误引入C代码的风险增加了,而且从算法的初始设计到在硬件上进行验证之间有一段很长的时间间隔。Ponsse想要缩短这个间隔,最小化编码错误,并减少总体开发时间。

解决方案

Ponsse工程师采用基于模型的设计,利用MATLAB和Simulink完成了蝎子式水准测量系统。他们通过MathWor万博1manbetxks工程师为期九天的现场培训,熟练掌握了这些工具。课程包括MATLAB、Simulink和Stateflow®用于系统级设计,以及关于模型体系结构的高级主题,包括验证和确认。

在Simulink中,万博1manbetx工程师开发了一个控制模型,可以处理来自加速度计和陀螺仪的输入,并驱动液压阀来保持Scorpion的中心框架水平。为了去除传感器信号中的噪声,该团队使用了信号处理工具箱™和控制系统工具箱™设计的滤波器。

他们用Stateflow中创建的状态机来模拟蝎子的各种操作模式。

在通过开环仿真验证了控制模型的功能后,工程师构建了一个原型控制器,使用Simulink Coder™和Simulink Real-Time™从他们的模型生成一个实时应用程序,并将其部署到Speedgoat目标计算机硬件上。万博1manbetx

该团队使用这个实时原型在实际的Scorpion硬件上进行测试。根据结果,他们在重新测试更新后的原型之前,对控制模型进行了微小的修改。

然后,他们从模型中为蝎子的ECU(一个手臂)生成C代码®皮质®处理器)与嵌入式编码器®.

他们将生成的代码与ECU的固件和其他低级接口代码集成,并首先在第三方模拟器上进行测试,然后在实际的蝎子收割机上进行测试。

自从成功完成Scorpion项目以来,Ponsse工程师使用基于模型的设计为Ponsse产品线中的其他收割机开发嵌入式控制器,重用Scorpion控制设计中的过滤器和模型组件。

结果

  • 开发时间减少一年或一年以上。Inberg说:“基于模型的设计使我们能够在一年内完成Scorpion控制器的初步开发。“如果采用传统的开发流程,我们至少需要两年时间才能完成这个项目。”
  • 消除了编码错误。“在我们用Embedded Coder生成的代码中没有编程错误,”Inberg说。“因此,我们可以将所有调试工作集中在模型上。”
  • 实现了80%的模型重用。Inberg报告说:“在我们的第一个基于模型的设计项目之后,我们开始为另一台机器设计调平控制器。”。“我们能够重用Scorpion项目中约80%的设计,这为我们节省了大量时间。”