12. 模型编辑

如前所述,用户可以通过使用鼠标,在屏幕布局区域选择建模元素可视化内容(图形、文字、图标等),来选取相应的模型元素以进行模型的编辑工作。还可以直接在模型结构树上,通过点击模型元素节点,来直接选中它们进行模型编辑工作。需要注意的是,两者对模型元素的选取是有一定区别的:通过布局视图中的可视化内容选取,其选取的模型元素是位于模型结构树上的“叶子”节点元素,而通过点选模型结构树节点旁边的复选框,可以选择模型结构树上的任一部分(包括“叶子”节点,也包括“分支树”节点,还包括那些没有可视化内容的模型元素节点)来进行模型的编辑工作。鼠标右键单击模型结构树,弹出如下图所示的“模型编辑”菜单:

下面分别介绍每一菜单项的功能及使用。

  • 创建模型元素

首先鼠标左键单击模型结构树上的任一个“模组”节点,该被选中的“模组”节点,即为要创建出的模型元素的父节点。然后单击鼠标右键,弹出“模型编辑”菜单,选择“创建模型元素”按钮,系统弹出创建模型元素对话框,按对话框提示选择和要定义元素类型、名称等。详见前面“自定义模型元素”一节中“定义元素”的内容。

  • 设置父节点

在“快速入门”一节中介绍了通过使用“设计模版”快速建立流程模型的方法。在拖拽“设计模版”上“模版”元素到模型布局区域之前,需要事先指定,由该元素模版创建的模型实例的父节点,以便确定该实例模型元素在模型结构树上的位置。鼠标右键单击模型结构树上的任一模组节点,并在弹出“模型编辑”菜单中选择“设置父节点”菜单,即可完成将模型结构树上选中的模组节点,作为新的父节点。

【提示1】

当父节点没有变化时,通过拖拽设计模版上元素建立生成的模型实例元素均在同一个父节点目录下。

  • 图形编辑

当要给已经建立的模型元素定义和编辑其可视化内容时,使用此功能。首先鼠标左键单击模型结构树上的任一个“叶子”节点,然后单击鼠标右键,弹出“图形编辑”菜单,系统即进入图形编辑模式,用户,可为选中的模型元素绘制、编辑其可视化内容。详见前面“图形绘制”、“图形编辑”一节内容。

  • 图形显示

鼠标右键单击模型结构树上的任一个节点,弹出“模型编辑”菜单,将鼠标移至“显示控制”菜单项,系统随即弹出“图形显示”菜单的子菜单,用户通过点击其子菜单来操作和控制模型布局区域内的显示内容。“图形显示”的各项子菜单功能及操作,详见“布局区域交互”一节中对“图形显示”描述的内容。

  • 元素引用信息

该菜单项功能就是用来查看某一模型元素,在模型结构中与其他元素之间的关联关系。建立仿真模型的运行逻辑时,就是使用计算机程序代码通过调用系统提供的流程规则函数、内部函数、用户自定义函数等内容,建立模型元素的“流程逻辑”、“行为逻辑”,从而使得仿真模型在仿真运行阶段,按照我们事先定义的逻辑运行。这些逻辑定义,事实上就是建立模型元素之间的一种关联关系。

在模型编辑过程中,如果要删除某一个模型元素,首先就要清除掉这一元素,与其他模型元素之间的这种关联关系,才能删掉它。当需要了解某一模型元素的这种关联关系时,使用此功能。首先鼠标左键单击模型结构树上的任一个想要访问的模型节点,然后单击鼠标右键,弹出“模型编辑”菜单,然后点击选择“元素引用信息”子菜单,系统随机在模型布局区域窗口,以表格的形式展示出该元素,在定义模型运行逻辑过程中,被其他模型元素引用的情况。下图,以仿真【案列1】模型为例,选择“Buffer1”节点,查看它的被引用情况,如下图所示:

图中表明元素“Buffer1”在模型中被“Part1”元素(见表中“Where Used”列的内容)在它的“Push”规则(见表中“How Used”列中的内容)代码定义中被引用;同时还在模型中被“Machine1”元素在它的“Pull”规则代码定义中被引用。

【提示1】

要清除这些引用关系,就要在描述这些规则(“流程逻辑”、“行为逻辑”)的代码段中,删掉有关该模型元素的代码。

  •  元素克隆

通常,我们把生产流程上那些运行逻辑相同(输入输出逻辑、动作响应逻辑也相同),在空间上又堆放、排列在一起的设备,称之为“成组设备”或成套设备。在本系统中,是通过对事先定义好的模型元素进行“克隆”复制来定义生成这样的成组设备。使用此功能,首先鼠标左键单击模型结构树上的任一个“Machine”类型或者“Buffer”类型的“叶子”节点元素,然后单击鼠标右键,系统弹出“模型编辑”菜单,继续将鼠标移至“元素克隆”,点击选择其子菜单项“克隆group”,如下图所示:

系统随机弹出对话框提示:“请输入克隆复制节点的数量”,示例中输入“2”。由于示例的“Machine”元素包含有可视化图形内容,接着系统进一步弹出对话框提示:“请在图形区中指定复制图形的位置”,鼠标点击“确定后”,将鼠标移至屏幕模型布局区域,在被克隆元素附近点击鼠标作为复制图形的出发点,随后在屏幕图形区滑动鼠标,随着鼠标的滑动,被克隆复制元素的可视化图形一同跟随移动,直至合适位置,再次点击鼠标确定复制图形的终点位置,完成一次元素的克隆复制,系统会自动重复提示执行上述过程,直至按克隆元素的数量要求,全部完成元素的克隆复制,形成一个使用该元素运行逻辑的设备组。示例结果如下图所示:

【提示1】

如果要修改成组设备的数量,首先在模型结构树上找到该成组设备元素节点,然后单击鼠标右键,系统弹出“模型编辑”菜单,继续将鼠标移至“元素克隆”,点击选择其子菜单项“改变数量”,系统弹出“改变数量”对话框,输入相应的数量,按系统提示操作即可。

【提示2】

对成组设备元素的模型编辑操作如“显示”、“移动”、“删除”等是按“组”的方式一起进行的,比如在图形区鼠标只要选中成组设备元素的任一个元素,则所有的成组元素一同高亮显示,对其中任一个元素实施“移动”、“删除”等操作,则所有的该成组元素都实施相同的处理。

【提示3】

对成组设备元素的“图形编辑”操作,系统则是按选中的个体单独实施的。BHTC Simulation给模型元素提供两种方式进入“图形编辑”状态。一是在屏幕上的模型布局区域,直接鼠标点击选择想要编辑的成组设备元素中的某一个,然后单击鼠标右键,系统弹出“模型编辑”快捷菜单,选择上面的“图形编辑”即可进入图形编辑状态,此时只有被鼠标选中的成组元素会高亮显示;另一种方式是用户使用鼠标右键单击模型结构树上成组元素节点,从弹出的“模型编辑”菜单中,选择“图形编辑”菜单,这时系统会提示“输入要编辑的克隆节点序号”,输入后,只有这一序号的成组元素才会被高亮显示。在进入“图形编辑”状态后,用户的所有“图形绘制”和“图形编辑”的操作内容都是针对这个被选中的成组元素个体,而不适用于成组元素中的其它个体元素。

  • 节点本地复制

该菜单项的功能与“布局区域交互”一节中的描述“节点本地复制”菜单功能类似。通过使用此功能,可以将我们选中的模型元素复制出来,不同的是,通过勾选模型结构树节点旁边的复选框的方式,我们不仅可以选择模型结构树上“叶子”节点元素,作为复制的对象,还可以选择处于“父节点”位置上的节点元素,这样就选定了模型结构树上的一个分支树作为我们复制的对象,通过“节点本地复制”操作,把这颗分支树完整的复制下来。

如下所示,使用此功能,首先鼠标左键单击“勾选”模型结构树上的“shop1”父节点旁边的复选框,由此选定该分支树,然后单击鼠标右键,系统弹出“模型编辑”菜单,继续将鼠标移至“节点本地复制”菜单,点击选择后,系统进一步弹出对话框提示:“请在图形区中指定复制图形的位置”,鼠标点击“确定后”,将鼠标移至屏幕模型布局区域,在被复制对象元素附近点击鼠标作为复制图形的出发点,随后在屏幕图形区滑动鼠标,随着鼠标的滑动,被复制元素的可视化图形一同跟随移动,直至合适位置,再次点击鼠标确定复制图形的终点位置,完成节点的“节点本地复制”操作,新复制出来的分支树节点“shop2”与被复制对象“shop1”节点属于同一“Model”父节点下的子节点。示例结果如下图所示:

  • 节点剪切到

通过使用该菜单,用户可以改变模型结构树上模型元素节点的位置,即打断其与现在父节点的连接关系,选择结构树上其他节点作为自己新的父节点。使用此菜单功能,首先鼠标左键单击“勾选”模型结构树上准备要改变其位置的节点旁边的复选框,可以勾选多个模型节点,然后鼠标右键单击新的父节点,系统弹出“模型编辑”菜单,继续将鼠标移至“节点剪切到”菜单,点击选择后,系统随即将勾选的模型节点,移动至新的父节点下。如下示例所示:

剪切操作后,得到新的模型结构树如下:

  • 节点复制到

通过使用该菜单,用户可以对模型结构树上的模型节点,进行复制操作,并且将复制出来的新的模型节点,粘贴到用户所选择的新的父节点下面。使用此菜单功能,首先鼠标左键单击“勾选”模型结构树上准备要复制的节点旁边的复选框,可以勾选多个模型节点,然后鼠标右键单击新的父节点,系统弹出“模型编辑”菜单,继续将鼠标移至“节点复制到”菜单,点击选择后,系统随即将勾选的模型节点,复制出新的模型节点并粘贴到新的父节点下面,同时如果被复制的对象节点包含有可视化内容,系统随即提示用户:“请在图形区中指定复制图形的位置”,鼠标点击“确定后”,将鼠标移至屏幕模型布局区域,在被复制对象元素附近点击鼠标作为复制图形的出发点,随后在屏幕图形区滑动鼠标,随着鼠标的滑动,被复制元素的可视化图形一同跟随移动,直至合适位置,再次点击鼠标确定复制图形的终点位置,完成节点的“节点复制到”操作,如下示例所示,选择模型结构树上“shop1”节点下的“Buffer1”、“Machine1”两个节点,然后选择“shop2”节点为新的父节点:

实施“节点复制到”操作后,模型结构树与模型布局变化如下:

  • 节点移动

通过使用该菜单,用户可以将模型结构树上的模型节点的可视化内容,从原来的位置移动到新的指定位置。使用此菜单功能,首先鼠标左键单击“勾选”模型结构树上准备要移动的节点旁边的复选框,可以勾选多个模型节点,单击鼠标右键选择“节点移动”菜单项,然后将鼠标移至屏幕模型布局区域,在被移动对象元素附近点击鼠标作为移动图形的出发点,随后在屏幕图形区滑动鼠标,随着鼠标的滑动,被移动元素的可视化图形一同跟随移动,直至合适位置,再次点击鼠标确定移动图形的终点位置,完成节点的“节点移动”操作。

  • 节点删除

通过使用该菜单,用户可以将模型结构树上的模型节点,及其可视化内容一并删除掉。使用此菜单功能,首先鼠标左键单击“勾选”模型结构树上准备要删除的节点旁边的复选框,可以勾选多个模型节点,单击鼠标右键从下拉菜单中选择“节点删除”菜单项,点击选择后即可删除之前选择的模型节点及其可视化内容。

  • 清除选择

通过使用该菜单,用户可以一次性清除对模型结构树上所有模型节点的复选框的“勾选”操作,使用此菜单功能,将鼠标置于模型结构树上任一节点位置,单击鼠标右键弹出“模型编辑”菜单,选中“清除选择”菜单项即可。

  • 重命名

通过使用该菜单,用户可以给模型结构树上的模型节点重新进行命名。使用此菜单功能,首先将鼠标右键单击选中模型结构树上准备要更名的模型节点,系统弹出“模型编辑”菜单,继续将鼠标移至“重命名”菜单,点击选择后,系统弹出命名提示对话框,输入新的名字,点击“确定”即可。

【提示1】

对节点进行“重命名”操作不必点击旁边的复选框“勾选”,系统会在鼠标右键单击该更名节点同时选中它,进行重命名操作。

  • 统计元素

通过使用该菜单,用户可以查看模型元素的运行状态信息,根据这些元素的统计状态信息,来评估所仿真的生产流程系统的各项性能指标。使用此菜单功能,首先将鼠标右键单击选中模型结构树上准备要查看的模型元素节点,系统弹出“模型编辑”菜单,继续将鼠标移至“统计元素”菜单,点击选择后,系统在屏幕右侧的模型布局区域,以表格的形式展示出该元素的统计信息。

【提示1】

查看模型元素的运行状态信息,必须在仿真模型运行一段时间以后,方可进行查看。

  • 多选统计

为从全局角度来观察和分析流程系统的性能,本系统提供“多选统计”菜单,通过使用该菜单,用户可以一次性选择模型结构树上多个元素,然后按照元素的类型,分类成组的查看属于同一类型模型元素的运行状态信息,由此可方便的对同类型的设备的运行性能进行对比分析,发现瓶颈问题。使用此菜单功能,首先将鼠标左键单击模型结构树的复选框,“勾选”模型结构树上准备要查看的模型元素节点,重复这一选择过程,建立起“多选统计”元素的集合,然后在模型结构树上任意位置单击鼠标右键弹出“模型编辑”菜单,继续将鼠标移至“多统计”菜单,系统继续弹出元素类型的下拉菜单,点击选择想要统计的元素类型后,系统在屏幕右侧的模型布局区域,以表格的形式汇总展示出,多选元素集合中该类型元素的统计信息,以下参考示例中,在统计元素类型的下拉菜单中,选择“统计机器”:

即统计选择集合中所有“Machine”类型元素的运行状态信息,如下所示:

【提示1】

查看模型元素的运行状态信息,必须在仿真模型运行一段时间以后,方可进行查看。

【提示2】

当模型结构树上的“父节点”被勾选后,则其下所有的“子节点”也被“勾选”,反之亦然,通过对父节点进行“勾选”操作,可提高“多选统计”的交互效率。

  • 保存模组

在进行大型工程系统建模时,可以遵循由局部到整体的层次化建模策略,或者由多个建模工程师共同协作完成一个系统模型时,可以先分别建立局部系统模型,最后再将局部的系统模型组装成完整的系统模型。本系统通过使用“模组”元素来实现这一过程,即将局部系统模型定义为一个模组,该局部系统所有的流程元素,都置于到该模组节点之下。使用“保存模组”菜单功能,用户可以将该模组的所有信息保存为一个独立的文件,文件格式为*.BHmdl,以方便日后对模型的后期维护以及多人分工协作、模型重用等。在下图的示例中,使用“shop1”模组和“shop2”模组建立了工厂两个车间的模型,使用此菜单保存模组模型文件,首先将鼠标右键单击选中模型结构树上准备要保存的模组节点,如本例中的“shop1”的节点,系统弹出“模型编辑”菜单,继续将鼠标移至“保存模组”菜单,点击选择后,系统弹出保存文件对话框,按照提示输入模组文件名及保存目录即可完成对模组文件的保存。

  • 导入模组

通过使用该菜单,用户可以将以前存储的模组文件描述的局部系统模型,导入到当前的模型结构中,以组装出更大规模的模型。以下示例:打开BHTC Simulation系统,新建一个工厂“Factory”模组。首先将鼠标右键单击选择“Factory节点作为导入模组的“父节点”,系统弹出“模型编辑”菜单,如下图所示:

继续将鼠标移至“导入模组”菜单,点击选择后,系统弹出打开文件对话框,浏览文件,打开之前保存的“shop1.BHmdl”模组文件,因为“shop1”的模型中含有可视化内容,因此系统进一步提示“请指定模组图元的屏幕显示位置”,鼠标点击“确定后”,将鼠标移至屏幕模型布局区域,任一点位置点击鼠标作为复制图形的出发点,随后在屏幕图形区滑动鼠标,随着鼠标的滑动,被复制元素的可视化图形一同跟随移动,直至合适位置,再次点击鼠标确定复制图形的终点位置,完成节点的“节点复制到”操作,如下示例所示:

重复上述过程,将“shop2.BHmdl”模组文件也导入到“Factory”节点下,从而完成工厂全局模型的组装。如下图所示: