Baker Hughes用Matlab使用了基于模型的设计®和模拟金宝app®建立新的发展过程。他们开始通过在桌面模拟中测试其现有算法,然后使用建模和自动代码生成来改进算法。
在Simulink工作金宝app,Baker Hughes工程师创建了一个环境模型,捕获了井下冲击和振动的影响,以及包括过滤器,模数转换器和其他电气和机械部件的传感器型号。
然后,团队使用S函数来创建其现有C算法的Simulink块。金宝app它们将这些块与环境和传感器模型结合起来运行系统级模拟。
团队与Baker Hughes的其他专家一起创建了测试用例,以复制钻井场景,并在Simulink中运行模拟以测试这些方案中的现有算法。金宝app
该团队使用模拟结果来调试和改进其现有的C算法,并指导改进硬件设计,包括模拟过滤器。
要进行硬件循环(HIL)测试,该团队使用嵌入式编码器生成来自环境和传感器模型的代码®并将其部署到实时处理器。此设置使该团队能够首次运行其整个系统的测试 - 包括算法,传感器和环境 - 在实验室中。
模拟和HIL结果分析显示了算法改进的机会,该团队通过重新设计和改进Simulink中的原始C算法来实现。金宝app在此阶段,该团队在新设计中为每个功能开发了Simulink单元测试。金宝app在整个开发过程中持续运行这些测试。
它们使用Simuli金宝appnk Check™和Simulink Coverage™来检查符合Mathworks汽车咨询板(MAAB)建模标准,并测量其测试用例的模型覆盖率。
使用嵌入式编码器,他们从Simulink算法模型中生成了系统代码的算法部分,以获得其生产浮点处理器。金宝app这占完整系统的大约一半代码。
该集团与Baker Hughes中的其他工程团队共享其系统模型,使这些团队能够在自己的项目上运行系统级测试。