witness仿真系统ppt课件

合集下载

WITNESS仿真系统基础培训PPT

WITNESS仿真系统基础培训PPT
❖ making模DD组IIMM元jmj素AidSI细dIAN节STEI设NGTE计ERGER4模型细节设计
DIM midQty AS INTEGER IF NPARTS (ELEMENT) = att.cutQty + 1
FOR ii = 1 TO 4 IF v.cutArray (ii,bineId) > 0 midId = ii GOTO outFor1 ENDIF
11m
6m
6m
6m
行车运输
❖ 切割机4的作业过程分析
切割4
冲压1 B
1 下料生产过程描述
❖ 下料模块中包含的资源有切割机床1、2、3、
4,冲床1和两个分拣工作站,一台行车,其
中冲床和两个分拣站各配备一1 名切工割1 人切割。2 切割3
分拣1 2
分拣2
14m 7m 7m
11m
6m
6m
6m
行车运输
❖ 切割机4的作业过程分析
ELSE
GOTO outFor
ENDIF
NEXT
LABEL outFor
❖ boardIn模组元素细节设计 4模型细节设计
❖ making模组元素细节设计 4模型细节设计
❖ making模组元素细节设计 4模型细节设计
!根据排料组号,对分拣后的工件附上物料种类号 DIM ii AS INTEGER
midQty = 0 FOR jj = midId + 1 TO 4
IF v.cutArray (jj,bineId) > 0 midId = jj GOTO outFor2
ENDIF NEXT LABEL outFor2 ENDIF NEXT ENDIF
❖ tranNet模组元素细节设计 4模型细节设计

第7章 witness简介

第7章 witness简介

7.2.1.4 缓冲区(Buffer) 缓冲区是存放部件的离散元素。例如存放即将循环焊接的电路板,
即将用于旅行的真空包装食品的储藏区,位于加工区的盛放产品部件的 漏斗形容器等等物体都称为缓冲区。
缓冲区是一种被动型元素,既不能像机器元素一样主动获取部件, 也不能主动将自身存放的部件运送给其他元素;它的部件存取依靠系统 中其他元素主动的推或拉。我们可利用缓冲区规则,使用另一个元素把 部件送进缓冲区或者从缓冲区中取出来。部件在缓冲区内还按一定的顺 序整齐排列(例如,先进先出,后进先出)。
7.2.1.5 车辆(Vehicle ) 我们用它来建立的装置模型可以将一个或多个部件从一个地点运载到另一个 地点。(例如,卡车,起重机,铲车)。车辆沿着轨道(track )运动。
7.2.1.6 轨道(Track) 轨道是一种代表车辆运输部件时所遵循的路径的离散元素。它们也定义了车 辆装载、卸载或停靠的地点。 车辆所走的路径是由一系列轨道组成的。每条轨道都是单向的;假如你需要 一条双向的轨道,只需定义两条沿相同线路但方向相反的轨道就可以了。车 辆在“尾部”(rear )进入轨道并向“前部”(front)运动。一旦到达前部, 该车辆可以进行装载、卸载或其它的操作。然后它将移动到下一条路线的尾 部并开始向那条路线的前面运动。
第7讲 WITNESS仿真系统软件
综述
zhaoyuexia@
7.1 witness 综述
Witness 是由英国lanner 公司推出的功能强大的仿真软件系统。 它可以用于离散时间系统的仿真,同时又可以用于连续流体(如液 压、化工、水力)系统的仿真。 目前已被成功运用于国际3000 多家 知名企业的解决方案项目,如Airbus 公司的机场设施布局优化、BAA 公司的机场物流规划、BAE SYSTEMS 电气公司的流程改善、 Exxon 化学公司的供应链物流系统规划、Ford 汽车公司的工厂布局 优化和发动机生产线优化、Trebor Bassett 公司的分销物流系统规划 等。Lanner 公司已经在包括澳大 利亚、巴西、法国、德国、中国、 意大利、日本、韩国、南非、美国、英国等25 个国家和地区设立的代 理,负责软件的推广和技术支持等工作。

Witness软件 生产物流系统建模与仿真PPT课件

Witness软件  生产物流系统建模与仿真PPT课件
第06讲 流水线生产物流系统建模与 仿真
第06讲 流水线生产物流系统建模与仿真
• 提纲
一、Witness建模与仿真的 基本过程
二、流水线生产物流系统概 述
➢流程分析 ➢示例模型分析
三、模型构建
➢定义元素 ➢元素细节设计
四、仿真实验
➢仿真工具栏 ➢实验结果分析
《生产物流系统建模与仿真》-电子工业出版社
元素作用 模拟被加工的零件 模拟称重机器 模拟清洗机器 模拟加工机器 模拟检测机器 模拟输送链1 模拟输送链2 模拟输送链3 统计产成品数量
《生产物流系统建模与仿真》-电子工业出版社
定义元素Define
定义: 零件 定义: 机器
定义: 输送链
定义: 变量
《生产物流系统建模与仿真》-电子工业出版社
定义元素Define:初步界面
三、模型构建
1、定义元素Define 2、元素可视化设计Display 3、元素细节设计Detail 4、模型检验Validation&Verification 5、仿真实验和结果分析
《生产物流系统建模与仿真》-电子工业出版社
定义元素Define
元素名称 Widget Weigh
Wash Produce Inspect
Witness中可以通过以下4种方式定义元素
(1)通过系统布局区(layout window)定义元素 (2)通过元素选择窗口(elements)定义元素 (3)使用工具栏进行元素的定义 (4)通过用户元素窗口(designer elements)元素模板定 义元素
4种方式定义元素操作演示
《生产物流系统建模与仿真》-电子工业出版社
《生产物流系统建模与仿真》-电子工业出版社

课件:第06章 Witness仿真系统

课件:第06章 Witness仿真系统
单件运输小车用铁钩钩起,将它们移动到“BELT1”路线集的尾部,然
后把“SCOOP” 单件运输小车从铁钩上放下,空铁钩则沿着路线集返
回起点。
使用运输网络应注意以下两点:
1、在同一个网络中,只能使用路线集、站点和单
的元素。假如模块使用一个周期时间,我们可生成这个模块的报告。
4.详述模块中的一个处理过程,将它保存到一个模块文件中(*.mdl),这个文
件包含所有关于这个模块的信息、元素和图标等。然后把这个文件载入另一个
Witness 模型中。
5.在一个模块中可以创建另一个模块,这就是阶层模型。
6.可以利用一个特殊的模块结构来建立自己的对话框。
6 轨道(Track)
轨道是一种代表车辆运输部件时所遵循的路径的离散元素。它也
定义了车辆装载,卸载或停靠的地点。
车辆所走的路径是由一系列轨道组成的。每条轨道都是单向的,
假如你需要一条双向的轨道,只需定义两条沿相同线路但方向相反的
轨道就可以了。车辆在“尾部”(rear)进入轨道,并向“前部”(fr
ont)运动。一旦到达前部,该车辆可以进行装载,卸载或其它的操
在Witness 里建立运输系统应按照如下两个步骤:
1. 设计轨道布置图和运载路线。这需要创建所需的轨道和车
辆,并且详细说明车辆在轨道之间移动所需的细节。这一步不需要
考虑部件怎样装上车辆或怎样从上面卸载下来。
2. 详细说明我们所定义的车辆怎样来满足运输的需要。它有两
种方式,可能是被动式的,也可能是主动式的。
这种输送链允许部件的累积。假如该输送链上的部件被阻塞,部件
会不断地滑在一起,直到这个输送链被塞满。
输送链通常把部件从一个地点移到另一个地点。部件从

第二章witness仿真系统

第二章witness仿真系统

2 、菜单栏 • 菜单栏位于屏幕的第二行,它包含: File(文件)、Edit(编辑)、View(显 示)、Model(模型)、Elements(元素)、 Reports(报表)、Run(运行)、Window (窗口)、Help(帮助)九个菜单选项。
3、 工具栏 • Witness 系统提供了不同环境下的八种 常用的工具栏,它们是:Standard、Model、 Element、Views、Run、Reporting、 Assistant、Display Edit。激活其中一个 工具栏,即在屏幕上显示出一行相应的工 具栏,用鼠标将它拖放到合适的位置,就 可以使用这个工具栏提供的相应的工具进 行某些操作。
• 三种元素:
1. 实物元素:代表实际系统中看得见的实体,如原 材料part/fluid、加工设备 machine/processor 、作业员labor、运输工具 conveyer/track/pipe、仓库buffer/tank
• (1)离散型元素 表示所要研究的现实系统中可以看得见的、可以计量个数 的物体,一般用来构建制造系统和服务系统等。主要包括: 零部件或实体(Part or Entitle);机器(Machine); 输送链(Conveyor);缓冲区或仓库(Buffer);车辆 (Vehicle);轨道(Track);劳动者(Labor);路径 (Path);模块(Module) • (2)连续型元素 同离散型元素相对应,这种类型的元素用来表示加工或服 务对象是流体的系统,比如化工、饮料等。主要包括:流 体(Fluid);管道(Pipe);处理器(Processor);容 器(Tank) • (3)运输逻辑型元素 用于构建物料运输系统。主要包括:运输网络 (Network);单件运输小车(Carriers);路线集 (Section);车辆站点(Station)

witness仿真系统

witness仿真系统

示例: ♦ INPUTDLG ("Number of Machine","Please input the number of machine!","2",5,2) 会 弹出下列可编辑的交互窗口,
ቤተ መጻሕፍቲ ባይዱ
4、数据库函数 DBOpen();用来根据ODBC数据源及SQL语句对数据库 进行查询。 DBClose();用来关闭用DBOpen()打开的数据库。 DBAdd();用来向打开的数据库添加记录,并使记录 指针指向当前记录。
title 字符串型,用来产生交互窗口的标题; dialog_text 字符串型,用来产生交互窗口的要进行编 辑的提示信息; field_default 字符串型,在交互窗口要输入的默认值; field_width 整数型,交互窗口要输入的文本的宽度; type_id 整数型;交互窗口要输入的类型,若 type_id =1,则应该输入字符串型;若 type_id =2,则应该输入 整数型;若 type_id =3,则应该输入实数型;
分支结构有单向分支和多向分支语法结构,分别如下: (1) 单向分支,也叫简单分支结构 IF <条件表达式> <命令行序列> ENDIF (2) 多向分支,也叫复杂分支结构 IF <条件表达式1> <命令行序列1> ELSE <命令行序列2> ENDIF
(3)使用分支语句应注意的几点: a IF… … ENDIF 必须配对使用; b〈条件表达式〉可以是各种表达式或函数的组合,其 值必须是逻辑值; c〈命令行序列〉可以由一个或多个命令组成,也可以 是条件控制语句组成的嵌套结构。 示例 IF (water_level >= 0) AND (water_level <= 5) PRINT "The level in the water tank is low" ELSEIF (water_level > 5) AND (water_level <= 10) PRINT "The level in the water tank is normal" ELSE PRINT "The level in the water tank is high" ENDIF

Witness仿真系统基础教程

Witness仿真系统基础教程
使用Witness提供的统计工具对仿真结果进行分析,如直方图、饼图等。
高级建模技术
子模型与模块化
使用子模型和模块化技术,提高模型的复用 性和可维护性。
并发处理
利用Witness的并发处理功能,提高仿真效 率。
复杂逻辑实现
运用高级编程技巧实现复杂的逻辑和控制流 程。
优化算法与应用
线性规划
使用线性规划方法解决资源分配问题,提高 系统效率。
构建实体
在Witness中创建代表实际物体的实体,如 机器、传送带、仓库等。
定义属性
为实体设置相关属性,如处理时间、容量、 故障率等。
连接实体
使用路径和连接器将实体连接起来,形成完 整的系统流程。
数据输入与参数设置
数据输入
通过Excel或其他数据文件导入数据,为模型提供运 行所需的基础数据。
参数设置
02 在菜单栏中选择“运行”->“开始”命令;
03
系统将开始运行仿真,并在输出窗口中显 示运行信息和提示;
04
运行完成后,可以在仿真区域中查看运行 结果和数据。
PART 03
建模与仿真过程
REPORTING
模型构建方法与步骤
确定系统边界
明确要研究的系统范围,包括系统的输入、 输出和主要组成部分。
度和忠诚度。
PART 05
总结与展望
REPORTING
学习成果回顾
掌握了Witness仿真系统的基础知识和操作方法,包括建模、仿真运行、 数据分析等。
了解了Witness仿真系统在各个领域的应用案例,如物流、制造、服务等。
通过实践练习,熟悉了Witness仿真系统的常用功能和工具,提高了解决 实际问题的能力。

Witness仿真课件

Witness仿真课件

劳动者 规则
WITNESS 标准随机分布
WITNESS 提供了如下 14 种标准随机分布函 数: (1)BETA β分布; (2) NORMAL 正态分布; (3)BINOMIAL 二项分布; (4)POISSON 泊松分布; (5)ERLANG 爱尔朗分布; (6)RANDOM 0-1 均匀分布; (7)GAMMA γ分布; (8)TNORMAL 截断正态分布; (9)IUNIFORM 整数均匀分布; (10)TRIANGLE 三角分布; (11)LOGNORML 对数正态分布; (12)UNIFORM 均匀分布; (13)NEGEXP 负指数分布; (14)WEIBULL 威伯分布
WITNESS 建模与仿真过程
定义 系统 元素 2003 优化 归档 报告 显示 系统 元素
详细 定义 运行
witness实例
在实例模型中,小部完每一步操作后小部件通过充当 运输工具和缓存器的传送带(conveyer)传送至下一个操 作单元。小部件在经过最后一道工序“检测”以后,脱离本 模型系统。仿真一周,试求该系统的产出量和各设备的利 用率。
Witness建模元素
图形元素
时间序列图(Timeseries) 饼状图(Pie chart) 直方图(Histogram)
规则
输入 规则 输入规则控制零部件或者流体进入在 系统中的流动过程。
输出 规则
输出规则控制着当前元素中的零部件 ,流体,车辆和单件运输小车输出的 目的地和数量等。 劳动者规则可以让我们详细说明实体 元素为完成任务所需要的劳动者类型 和数量。
Witness 仿真系统
Witness综述 Witness用户界面 Witness建模元素 Witness规则 Witness标注随机分布 Witness建模与仿真过程 Witness实例
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用来将Excel工作表中某些区域的数据读给
Witness的变量或变量数组,若成功,返回1;否
则,返回0。
14
示例: XLReadArray
(“\\XLLinks.xls”,“InputData”,“$D$6:$ D$8”,CycleTime), 其作用是将与模型在同一路径下的工作簿 XLLinks.xls 打开,并将该工作簿的工作表 InputData 中的 D6:D8 三个单元格的数据 读出来,最后赋予 CycleTime(1) 、 CycleTime(2)、 CycleTime(3)。
设计; – 了解负指数分布NEGEXP()的使用;
25
四、组装作业工序建模案例
三种类型的零件A、B、C随机到达系统,分别暂 存于仓库的特定库区,有一装配机器将1个A、2 个B和1个C组装一个成品D,放入专有缓冲区中; 其中:
• 示例
IF (water_level >= 0) AND (water_level <= 5)
PRINT "The level in the water tank is low"
ELSEIF (water_level > 5) AND (water_level <= 10)
PRINT "The level in the water tank is normal"
ENDWHILE
7
使用循环语句时应注意的几点
• WHILE 和ENDWHILE、FOR 和NEXT 必须配 对使用。
• 〈命令行序列〉可以是任何WITNESS 的命令或 语句,也可以是循环语句,即可以嵌套为多重循 环。
8
五、 Witness常用系统函数 1、数字函数 Abs(R) Amax(R1,R2,R3…,Rn) 2、转换函数 Chr(I) Float(I) Str(R or I) Strstr(Sa,Sb) Leftstr(S,N)
这三项作业都需要一名工人参与 ; 假设该生产线上每道工序仅有一台机器,整条生 产线由一名工人维护,零件数量足够多,建立该 系统的WITNESS仿真模型。
24
通过本案例的学习:
– 熟悉建模元素part、machine、 conveyor、labor的一般应用;
– 输入输出Pull、Push规则的使用 – 熟悉machine元素的setup、breakdown
title 字符串型,用来产生交互窗口的标题; dialog_text 字符串型,用来产生交互窗口的要进行编辑
的提示信息; field_default 字符串型,在交互窗口要输入的默认值; field_width 整数型,交互窗口要输入的文本的宽度; type_id 整数型;交互窗口要输入的类型,若 type_id
15
XLWriteArray( WorkbookName, WorksheetName,Range,Array ) 用来将Witness的变量或变量数组的值写入Excel 工作表中,若成功,返回1;否则,返回0。
示例: XLWriteArray
("\\XLLinks.xls","Output","$H$3" ,ProcessTim e) 其作用是将变量ProcessTime的值写入与模型系 统路径相同的工作簿XLLinks.xls的工作表Output中, 单元格由H列和第3行所确定的。
=1,则应该输入字符串型;若 type_id =2,则应该输入 整数型;若 type_id =3,则应该输入实数型;
12
示例: ♦ INPUTDLG ("Number of Machine","Please
input the number of machine!","2",5,2) 会 弹出下列可编辑的交互窗口,
三、Witness随机分布函数
WITNESS 提供了14 种整型或实数型的标准随机分布函数, 它们能返回一系列理论分布的随机样本值。WITNESS 提 供了如下14 种标准随机分布函数:
(1)BETA β分布; (2) NORMAL 正态分布;
(3)BINOMIAL 二项分布;(4)POISSON 泊松分布;
(2) 多向分支,也叫复杂分支结构 IF <条件表达式1> <命令行序列1> ELSE <命令行序列2> ENDIF
3
• (3)使用分支语句应注意的几点:
a IF… … ENDIF 必须配对使用;
b〈条件表达式〉可以是各种表达式或函数的组合,其 值必须是逻辑值;
c〈命令行序列〉可以由一个或多个命令组成,也可以 是条件控制语句组成的嵌套结构。
(5)ERLANG 爱尔朗分布 (6)RANDOM 0-1 均匀分 布;
(7)GAMMA γ分布; (8)TNORMAL 截断正态分 布
(9)IUNIFORM 整数均匀分布 (10)TRIANGLE 三角分 布;
(11)LOGNORML 对数正态分布(12)UNIFORM 均匀
分布;
1
四、witness程序三种基本结构 1、顺序结构 • 顺序结构是在程序执行时,根据程序中语句的书写顺
称重工序,服从均值为为5分钟的负指数分布;清洗工 序,服从均值为为4.5分钟的负指数分布;加工工序, 服从均值为为4分钟的负指数分布; 检测工序,服从 均值为为3分钟的负指数分布。
每道工序的每台机器上每次只能加工一个零件,工 序之间零件依靠输送链运输,零件通过每条输送链的 时间为10分钟。
Widget
16
6、常用元素函数 NQTY(element_name)
返回模型中特定元素的数量。 NPARTS( element_name )
返回模型中特定元素中部件的数量。 7、用户自定义函数
Define… 定义函数可通过在 Witness的布局窗口中单击 鼠标右键,单击“define…” ,弹出如下图所示
序依次执行的命令序列。 2、分支结构 • 分支结构是在程序执行时,根据不同的条件,选择执
行不同的程序语句,用来解决有选择、有转移的诸多 问题。 3、循环结构 • 允许有限次重复执行某一特定的程序。
2
分支结构有单向分支和多向分支语法结构,分别如下: (1) 单向分支,也叫简单分支结构 IF <条件表达式> <命令行序列> ENDIF
L
称重
L1
清洗
L2
加工
L3
检测
23
清洗工序每清洗完10件产品,就需要整理一下 工作台,整理时长服从均值为8分钟的负指数分布;
加工工序的机器每运行50分钟,进行一次预防 性检修,检修时长服从均值为10分钟的负指数分 布;
加工工序会发生随机故障,故障间隔服从均值 100分钟的;
的使用; – 仿真实验及统计数据分析; – WITNESS仿真系统的工作模式;
21
二、在单队列单服务台案例基础上完成如下情况的建模:
1.船舶到达时发现港口中已经有4艘船舶在等待, 则选择离开(case1.1.mod);
统计系统100天流失的船舶数量;
通过控制Buffer元素的Capacity实现
2.船舶等待时间超出30小时,则选择进行服务投诉 (case1.2.mod);
19
举例:一、 单队列单服务台系统建模与仿真
案例case1.0.mod: 某港口只有一个岸桥为到达的船舶提供卸货服务。当船舶
到达港口时,停入泊位等待服务。如果岸桥空闲,则立即对其 进行货物卸载作业;如果岸桥为其他船舶卸载,则船舶在泊位 等待;岸桥为船舶提供服务的规则为FIFO。
假设船舶到达时间间隔服从均值为10小时的负指数分布, 岸桥为每艘船的卸载时间服从[6,14]小时的均匀分布。 建立仿真模型,运行100天=2400小时,统计:
13
4、数据库函数
DBOpen();用来根据ODBC数据源及SQL语句对数 据库进行查询。
DBClose();用来关闭用DBOpen()打开的数据 库。
DBAdd();用来向打开的数据库添加记录,并使记 录指针指向当前记录。
5、Excel函数
XLReadArray(WorkbookName, WorksheetName,Range,Array)
6
(2)“当”型循环
语法结构:
WHILE <条件表达式>
<命令行序列>
ENDWHILE
注:ENDWHILE 可以缩写为END。
语句功能:
当<条件表达式>为真时,一直执行<命令行序列>,直 到<条件表达式>为假时,循环结束。示例:
WHILE NPARTS(STOCK) > 90
PRINT "Warning! The STOCK buffer is nearly full."
按钮;若 default_button=3,则默认第三个按钮;
10
示例: MSGDLG (“Change the path”,2,“Do you
want to change the path?”,“&Yes|&No”,1) 会弹出下列消息框:
11
Inputdlg(title,dialog_text, field_default, field_width,type_id) 用来产生用户可以进行编辑的交互窗口。
ELSE
PRINT "The level in the water tank is high"
ENDIF
4
循环结构 (1)计数型循环
基本语法如下: FOR〈循环变量〉=〈循环变量初值〉 TO〈循环变量终值〉 [STEP〈循环变 量步长〉] 〈 命令行序列〉
NEXT
相关文档
最新文档