任务 1.1 - 构建 3D 模型
2026-02-28
新闻来源:网淘巴
围观:908
''
购买adidas上京东官方旗舰店。
在本教程任务中,你将学习在构建 3D 模型时,如何在 FlexSim 用户界面中导航的基础知识。你将获得 3D 模型界面中最重要的元素的实际操作经验,如下图所示:
步骤 1:向 3D 模型添加对象
构建 3D 模型的第一步是搭建你要仿真的业务系统的基本布局。你正在建模的客户服务中心有一个或多个客户服务代表的服务台。到达的客户通常会在窗口附近排队,直到有员工可以为他们服务。在这个仿真模型中,你还将模拟那些如果等待时间过长就会提前离开的客户。
要模拟所有这些不同的元素,你需要向 3D 模型中添加对象。对象是 3D 仿真模型的基本构建块。不同类型的对象在仿真模型中有不同的用途和功能。一些最常见的对象包括:
- 流动项目 (Flow items):移动(或“流动”)通过仿真模型的对象,通常从一个站点(通常是固定资源)移动到下游的另一个站点。在此仿真模型中,流动项目将代表客户服务中心的客户。
- 固定资源 (Fixed resources):在 3D 模型中保持静止并与流动项目交互的对象。每个固定资源执行特定的功能。此仿真模型将使用多种与客户交互的固定资源。
- 任务执行器 (Task executers):可以在 3D 模型中移动并执行任务(如运输流动项目、操作机器等)的对象。现在,你不会在你的仿真模型中使用任何任务执行器。你将在教程的后面部分添加任务执行器。
请参阅3D 对象类型以获取更详尽的解释。
在本步骤中,你将首先向你的仿真模型中添加一些固定资源:
表格
| 对象 (Object) | 说明 (Explanation) |
|---|---|
| Source (源) | 源创建流动项目。你将使用源来创建客户,这代表他们到达客户服务中心。 |
| Queue (队列) | 队列存储流动项目,直到它们可以被发送到另一个对象。队列将代表客户服务中心的等待队列。 |
| Processor (处理器) | 处理器处理流动项目,通常模拟为时间延迟。处理器将代表帮助客户的员工。 |
| Sink (汇聚) | 汇聚从仿真模型中移除流动项目。你将使用汇聚来代表离开客户服务中心的客户。在这个模型中,你实际上将使用两个汇聚:一个代表满意的客户,一个代表不满意的客户(提前离开的客户)。 |
构建你的 3D 模型布局:
- 启动一个新的仿真模型。找到位于 FlexSim 中央窗格的 3D 模型区域。同时找到位于 FlexSim 左侧窗格的库 (Library)。
-
将以下对象从库中拖入 3D 模型:
- 1 个 Source (源)
- 1 个 Queue (队列)
- 1 个 Processor (处理器)
- 2 个 Sinks (汇聚)
-
- 如果需要,移动对象,使它们的位置大致如下图所示。
- 点击 Source (源) 以选中它。请注意右窗格会更改为显示该对象的属性。在 Properties (属性) 标题下,你会看到一个显示对象名称的字段。你可以在这里编辑和输入对象名称。继续将名称从 Source1 更改为 Customers Arrive (客户到达)。
-

- 重复上一步,将所有对象重命名为如下:
表格
| 对象 (Object) | 新名称 (New Name) |
|---|---|
| Queue (队列) | Waiting Line (等待队列) |
| Processor (处理器) | Service Desk (服务台) |
| Sink (汇聚) (靠近处理器的那个) | Happy Customers (满意客户) |
| Sink (汇聚) (靠近队列的那个) | Unhappy Customers (不满意客户) |
当你完成后,你的 3D 模型应该看起来类似于下图:
步骤 2:连接 3D 对象
在本步骤中,你将连接 3D 对象,以便客户按适当的顺序从一个对象移动到下一个对象。换句话说,你将创建帮助项目从一个固定资源流向另一个固定资源的逻辑。在 FlexSim 中有几种不同的方法可以做到这一点(请参阅连接 3D 流以获取更多信息)。在本步骤中,你将学习如何使用端口连接 (Port Connections),因为这是最简单、最直接的方法。
在 FlexSim 中,端口 (Port) 是对象上流动项目可以从一个对象传输到另一个对象的点。端口连接是两个不同对象上端口之间的连接。端口创建对象之间的关系,使它们能够相互通信并交换流动项目。请参阅关于端口的关键概念以获取更多信息。
在本模型中,你将创建从 Customers Arrive (客户到达) 源到 Waiting Line (等待队列) 的输入/输出端口连接,以及从 Service Desk (服务台) 到 Happy Customers (满意客户) 汇聚的连接。你暂时将其他对象断开连接,因为你将在教程的后面部分使用不同的工具连接这些流。
创建这些对象之间的端口连接:
- 点击工具栏上的 Connect Objects (连接对象) 按钮 (图标为链条) 以打开菜单。选择 Connect Objects (连接对象) 进入连接模式。
- 当你处于连接模式时,你的鼠标指针将变为一个带有链条符号的加号:
- 一旦进入连接模式,你就可以将两个对象连接在一起。点击 Customers Arrive (客户到达) 源对象。(当你移动鼠标时,你会发现对象和光标之间会出现一条黄线。)
- 点击 Waiting Line (等待队列) 对象以创建两个对象之间的端口连接。
- 连接这两个对象后,你仍将处于连接模式。如果你想将另一个对象连接到队列,你可以保持在连接模式。但由于你已完成队列的连接,只需按 Esc 键退出连接模式。
- 你将再次开启连接模式,但这次你将使用一个快捷键。按住键盘上的 A 键,然后点击 Service Desk (服务台) 处理器,再点击 Happy Customers (满意客户) 汇聚以创建另一个连接。
- 松开 A 键以退出连接模式。
当你完成后,你的 3D 模型应该看起来类似于下图:
步骤 3:首次运行模型
在本步骤中,你将尝试在此时运行模型,以查看运行模型时会发生什么。现在你只需首次运行模型,但本教程的后续步骤将更深入地解释为什么以及如何运行模型。
- 按下模拟控制栏(位于主工具栏下方)上的 Reset (重置) 按钮。(按下重置会清除仿真模型并将其返回到初始值。)
- 按下 Run (运行) 按钮开始仿真,按下 Stop (停止) 按钮停止仿真。
此时,你将看到源(客户到达)创建流动项目(此时看起来像盒子)并将它们放入等待队列中。由于你尚未创建移动这些流动项目的逻辑,它们将简单地堆叠在队列内部,直到你停止仿真。
步骤 4:创建列表以跟踪客户
在上一步中,你学习了如何使用端口连接来连接对象流。在本步骤中,你将学习如何使用一种称为全局列表 (Global Lists) 的工具在固定资源之间创建更复杂的流。
在本模型中,流动项目将代表客户。当客户进入等待队列时,他们将被添加到一个等待客户列表中,该列表将跟踪客户等待了多长时间。服务台将首先帮助等待时间最长的客户。但是,等待时间超过 200 秒的客户会感到沮丧,并通过“不满意客户”汇聚离开。为了实现此功能,你将使用一个全局列表,该列表可以使用复杂的条件集来筛选和优先处理流动项目。(请参阅关于列表的关键概念以获取更多信息。)
在本步骤中,你将设置一个流动项目列表并将其命名为 WaitingCustomers (等待客户)。你将使用 Toolbox (工具箱) 来创建此列表,这是你可以访问 FlexSim 中几乎所有工具的地方。(请参阅使用工具箱以获取更多信息。)
当你创建列表时,首先需要设置其字段 (Fields)。字段决定了列表将跟踪哪些信息。默认情况下,项目列表带有四个默认字段,每个字段都有预编程的逻辑。这些字段仅是你可能想要在流动项目列表上拥有的字段类型的建议。你可以根据需要删除这些字段或添加其他预编程或自定义字段。
其中一个默认字段是 age (年龄) 字段,它跟踪自该流动项目由源创建以来经过的时间。虽然此字段可能适用于此列表的逻辑需求,但添加一个 ageInQueue (队列中年龄) 字段可能更准确。ageInQueue 字段跟踪项目在列表上停留的时间长度。换句话说,它将跟踪自客户加入等待队列以来经过的时间长度。你将在本步骤中添加此字段。
创建全局列表:
- 查看左侧窗格中库所在的位置。在此窗格的顶部附近,你会看到一个名为 Toolbox (工具箱) 的选项卡。点击此选项卡以打开工具箱。
- 在工具箱中,点击 Add (添加) 按钮以打开菜单。指向 Global List (全局列表),然后选择 Item List (项目列表)。新列表的属性窗口将自动打开。
- 在顶部的框中,将列表的名称更改为 WaitingCustomers (等待客户)。
- 打开 Fields (字段) 选项卡,点击 Add (添加) 按钮以打开菜单。选择 ageInQueue (队列中年龄)。新字段将显示在字段列表的底部。
- 点击 Delete (删除) 按钮以删除所有其他字段,因为它们是不必要的。
- 现在你将更改 ageInQueue 字段的名称以使其更具描述性。点击 Expression Field (表达式字段) 框,删除当前文本,并将其名称更改为 WaitTime (等待时间)。
- 在 Back Orders (回订单) 选项卡中,勾选 Reevaluate All Values On Push (在推送时重新评估所有值) 复选框。
- 按下 OK (确定) 按钮以保存更改。
你的新“等待客户”列表现在应该出现在工具箱的“全局列表”组下。
步骤 5:编辑模型的逻辑
在本步骤中,你将编辑 3D 对象的属性以创建仿真模型的基本逻辑。以下是对你将编辑的对象以及进行这些更改的原因的解释:
表格
| 对象 (Object) | 说明 (Explanation) |
|---|---|
| Customers Arrive (客户到达) (源) |
大多数 3D 模型都以创建将在 3D 模型中移动并与对象交互的流动项目的源对象开始。在此模型中,流动项目将代表来到客户服务中心的客户。 源将确定客户到达的频率。对于此模型,你将更改客户的到达率,以便客户大约每分钟到达一次。你将使用一种称为 指数 (Exponential) 分布的统计分布,在平均约为 60 秒的时间范围内随机计算到达率。 默认情况下,源创建看起来像盒子的流动项目。由于此模型中的流动项目代表客户,你将更改流动项目类别,使其看起来像一个人。 |
| Waiting Line (等待队列) (队列) |
你将设置此对象,以便客户(流动项目)一进入等待队列就添加到 WaitingCustomers (等待客户) 列表中。 你还将更改队列,以便客户形成一条线,而不是堆叠在队列内部。 |
| Service Desk (服务台) (处理器) |
此对象代表员工帮助客户所需的时间。因此,你将设置此对象,以便当它准备好帮助另一个客户时,从 WaitingCustomers (等待客户) 列表中提取第一位客户。 你还将设置员工帮助客户所需的时间。你将使用 log normal 2 (对数正态 2) 统计分布,以便帮助客户大约需要 92 秒。 |
| Unhappy Customers (不满意客户) (汇聚) | 汇聚从模型中移除流动项目。你将设置此汇聚,以便它在 WaitingCustomers (等待客户) 列表中搜索任何等待时间超过 200 秒的客户。它将提取符合此标准的任何客户并将其从模型中移除,代表客户感到沮丧并离开。 |
| Happy Customers (满意客户) (汇聚) | 你将使用此对象的默认设置,因此你不会对其进行任何更改。 |
向你的 3D 对象添加此逻辑:
-
点击 Customers Arrive (客户到达) 源以在右侧打开其属性。
- 在 Source (源) 部分,点击 FlowItem Class (流动项目类) 菜单并选择 Man (人)。
- 勾选 Arrival at time 0 (在时间 0 到达) 框,以便模型开始运行时立即有客户到达。
- 请注意,Inter-Arrivaltime (间隔时间) 已设置为使用指数统计分布,客户随机到达,平均约为 10 秒。点击 Edit Properties (编辑属性) 按钮以打开分布选择器并编辑此分布的属性。在 Scale (比例) 框中,将数字更改为 60。
-

- 这个分布是什么意思?
- 请注意,在此分布中,客户最频繁的到达率是 50 秒或更短,但有些人可能需要稍长或甚至长得多的时间到达。
-
点击 Waiting Line (等待队列) 以在右侧打开其属性。
- 在 Queue (队列) 部分,点击 Item Placement (项目放置) 菜单并选择 Horizontal Line (水平线)。
- 在 Output (输出) 部分,点击 Send to Port (发送到端口) 框旁边的箭头以打开菜单。指向 Use List (使用列表),然后选择 Push to Item List (推送到项目列表)。将出现一个框来选择适当的项目列表。确认已选择 WaitingCustomers 列表。
-

-
点击 Service Desk (服务台) 处理器以在右侧打开其属性。
- 在 Processor (处理器) 部分,清除 Animate Items (动画项目) 复选框。
- 点击 Process Time (处理时间) 框旁边的箭头以打开菜单。指向 Statistical Distribution (统计分布),然后选择 Log Normal 2 (对数正态 2) 以打开分布选择器。
-
在分布选择器中,设置以下参数:
- Location (位置): 90
- Scale (比例): 3.1
- Shape (形状): 0.5
-

- 这个分布是什么意思?
- 请注意,在图表中,大多数客户完成订单大约需要 91.5 到 93.5 秒,但有些人可能需要多一点或少一点。
- 在 Input (输入) 部分,勾选 Pull (提取) 复选框。
- 点击 Strategy (策略) 框旁边的箭头以打开菜单。指向 Use List (使用列表),然后选择 Pull from Item List (从项目列表提取)。
- 确认已选择 WaitingCustomers 列表。在 Query (查询) 框旁边,点击 Add (添加) 按钮以打开菜单。指向 ORDER BY (排序依据) 并选择 WaitTime (等待时间)。
- 编辑查询,将 ASC (升序) 更改为 DESC (降序),因为你想提取等待时间最长的客户。
-
点击 Unhappy Customers (不满意客户) 汇聚以在右侧打开其属性。
- 在 Input (输入) 部分,勾选 Pull (提取) 复选框。
- 点击 Strategy (策略) 框旁边的箭头以打开菜单。指向 Use List (使用列表),然后选择 Pull from Item List (从项目列表提取)。
- 确认已选择 WaitingCustomers 列表。在 Query (查询) 框旁边,点击 Add (添加) 按钮以打开菜单。指向 WHERE (在哪里) 并选择 WaitTime (等待时间)。
- 编辑查询,将其更改为 > 200。
- 现在你已完成编辑 3D 对象属性,请考虑保存你的模型。
步骤 6:运行和测试仿真模型
在本步骤中,你将再次运行你的仿真模型。运行仿真模型是仿真模型构建过程中的重要步骤。在模型构建的早期阶段,它帮助你测试和排查模型故障,以确保你正确构建了模型。请参阅运行仿真模型以获取更多信息。
要运行模型,请按下模拟控制栏上的 Reset (重置) 按钮。按下 Run (运行) 按钮开始仿真,按下 Stop (停止) 按钮停止仿真。

当你首次运行模型时,服务台中会立即出现一名客户。逐渐地,更多的客户会出现并在等待队列队列中形成一条线:
如果您的仿真模型没有表现出类似的行为,或者如果您收到错误消息,请仔细检查您是否正确执行了所有上一步骤。
此外,目前的 3D 视觉效果可能看起来有点奇怪和不自然。请注意,在早期的模型构建阶段,你更关注于构建基本模型并确保其正常工作,而不是使其看起来逼真。在未来的教程任务中,你将学习如何改进 3D 模型的视觉效果,使其看起来更自然。
当你在教程的下一步中工作时,以比默认速度更快的速度运行仿真模型可能会有所帮助。以全速运行仿真模型以从模型中获取代表性数据也可能有所帮助。由于客户服务中心的典型一天持续 12 小时,你将设置仿真运行 43,200 秒(相当于 12 小时)。
更改仿真运行的速度和停止时间:
- 点击模拟控制栏上 Run Time (运行时间) 框旁边的箭头以打开菜单。
- 勾选第一个 Stop Times (停止时间) 复选框,并在下方的框中输入 43200。
- 点击模拟控制栏上 Run Speed (运行速度) 框旁边的箭头。
- 在 Custom (自定义) 框中,输入 1000 并点击 Set (设置) 按钮。
- 再次尝试运行模型,以查看这如何影响仿真运行
上一篇:Flexsim基础教程
下一篇:爆款返场!29.9/10斤植护大桶装香氛洗衣液


微信扫一扫,打赏作者吧~