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