技术文章和通讯

优化汽车生产过程与离散事件模拟

马吕斯Gemeinhardt,戴姆勒公司(Daimler AG)


在新车离开之前他们接受一系列的行尾的生产线检查,包括静态和动态测试。在静态测试,技术人员和自动化测试程序运行电子诊断;在动态测试、技术人员、测试软件、测功器,其他的测试站共同努力,检查发动机和调整暂停或其他组件。

策划和协调工人、机器和车辆参与行尾测试是一项复杂的任务。许多公司没有一个正式的方法来优化过程,而不是依靠主观的建议高级工程师;最佳实践与其他制造厂,可能有不同的要求;甚至在尝试和错误。

生产最大化吞吐量和能力同时最小化人力和浪费,我开发了一个模拟与仿真软件运行平台万博1manbetx®和SimEvents®。模拟被用来援助经营决策,预测的结果提出了制造过程变化,提高戴姆勒生产线的效率(图1)。

图1所示。梅赛德斯-奔驰s级车离开装配线。

图1所示。梅赛德斯-奔驰s级车离开装配线。

行尾的挑战测试优化

几个因素复杂化行尾的优化测试。首先,它是很难估计的处理时间在任何给定的测试站。方差悬浮,例如,意味着一些车辆需要比别人更多的时间暂停调整车站。第二,引进新设备,可以更快地完成测试也可以打破既定的流程。同样,将新技术引入到车辆导致新的任选附件要求新的测试程序。

第三,过程改进选择的复杂性使得它几乎不可能连一个专家预测的变化将如何影响过程的整体性能。增加工人,完成并行测试,处理了汽车,插入缓冲器(队列)在每个测试站之前,允许车辆之间的交叉测试站,推进循环——专家需要了解每一个可能的影响这些选项的组合来找到最好的配置。

收集和管理数据

我知道我的模拟需要考虑大量的数据。经常在模拟研究中,不同软件之间的数据交换,冒着丧失精度和完整性。用MATLAB®和仿真软万博1manbetx件,我使用相同的环境收集、分析和数据的准备和模拟的优化基于这些数据。另外,我可以加快处理通过运行分析与并行计算工具箱™多个计算核心。

每个测试站为每个工具生成一个日志文件。如果三个测试站测试1000辆,3000数据集被记录。一个车辆在一个车站,日志文件包含200000行信息。每个日志文件只包含必要的一小部分信息,包括车辆细节,每一个测试的结果,每个测试需要多长时间才能完成。快速提取这些数据我创建一个基于dos的批处理文件,叫它对于每个日志文件,和分发这些工作在每个可用的核心。

分析现有流程

我开发了仿真之前,我需要了解当前的测试过程。我从每个测试站收集日志文件,分析了MATLAB数值和图形化的数据。我绘制直方图和酒吧图的测试时间和车辆变化,并进行统计分析与这些变量(图2)。我加速的解析和处理日志文件几乎四倍通过使用并行计算工具箱来执行这些任务在四核处理器。

图2。直方图显示测试时间为各种车辆的类型。

图2。直方图显示测试时间为各种车辆的类型。

交互式地探索和分析数据后,我创建了一个接口在MATLAB来简化常见分析任务(图3)。我打包接口和分析功能开发的MATLAB作为一个独立的微软®窗户®应用程序,解析(Site-overlapping勘探过程分析程序)。使用MATLAB编译器创建™,解析支持我的同事们在戴姆勒探索行尾测试数据没有安装MATLAB。解析还提供了以下的数据库建模与仿真。

图3。在MATLAB开发的解析应用程序,处理,分析和探索测试站的数据。

图3。在MATLAB开发的解析应用程序,处理,分析和探索测试站的数据。

行尾测试流程建模

大多数工程师创建模型的离散事件模拟队列连接在一起,服务器,实体和其他块从预定义的库。预定义的元素在大多数仿真环境中使人难以理解其基本功能和对模拟系统的影响。我决定采用一种不同的方法:我开发了一个MATLAB脚本构建SimEvents编程模型。与SimEvents基线建立一个模型元素的优点是,所有功能、逻辑、和战略行为的建模系统从一开始就知道。编程的方法可以优化运行算法,既能调整模型参数,生成新的模型。它还使模型通过定义一个接口,我在MATLAB建立。

这个接口允许工程师定义测试流程通过指定的数量和配置测试站,工人的数量,等等。工程师的选择捕获的数据模型生成SimEvents模型的MATLAB脚本使用站和工人子系统(图4)。

图4。SimEvents行尾测试过程建模。

图4。上图:SimEvents行尾测试过程建模。中间:车站子系统模型。下:一个工人子系统。

在生成模型,其中包含大约1500块,工人和车辆实体与实体组合器在每个车站集合。车站是由多个单一服务器,表示个人站内流程。每个车站的时间是一个基于事件的随机数块计算,使用一个任意的离散分布基础上的日志数据处理。

在车站逻辑行为,以及战略控制的实体,使用MATLAB脚本纳入模型建模作为功能块。模型保存每个车站的统计数据,包括有多少车辆处理,在车站每辆车花了多久,花了多少时间等待站之间,以及从外围流程如交付的车辆、工人流动,暂停时间。我用MATLAB后处理和可视化数据(图5)。

图5。仿真结果的可视化。

图5。仿真结果的可视化。

第一个模型我使用接口和模型生成器创建的简单复制现有的工厂设置与数据库建立在真实世界的原始数据。我跑这个模型的模拟和比较的结果与实际结果工厂验证模型和模型生成脚本。

运行模拟优化过程

一旦我有办法来处理和分析日志数据和以编程方式生成模型,我可以开始运行系统模拟优化行尾测试性能。模拟,优化算法进行结构更改,以反映不同的工厂布局以及参数变化对个人测试站。我提供边界和初始值,然后应用模式搜索算法在全局优化工具箱等因素的优化吞吐量,需要生产设备、人力、和浪费。需要成千上万的实验模型来评估所有可能的变体。我可以达到相同的结果与这个数字的一小部分使用模式搜索算法。

SimEvents模型使我能够调整运行假定场景边界值。我跑模拟,例如,看到车辆的变化是如何影响针对特定测试所需的时间,使我确定大部分的变化影响过程性能。

传统上,汽车制造商努力缩短测试时间,很少意识到行尾布局如何影响整个过程。在戴姆勒,我模拟研究改变了这一点。我行为的模拟和优化SimEvents提供洞察植物结构的变化的影响。现在在设计一个新的制造工厂之前,戴姆勒可以评估等因素提供区和缓冲区的大小,站的数量,使连接和人员将影响工厂测试性能。

2017 - 93085 v00出版