[Plant Simulation]使用TableFile和Method进行仓库仿真(Byref函数)
使用TableFile和Method进行仓库仿真
- Store配合TableFile处理仓库必要信息(Byref函数)
- 初始化
- 寻找空闲货位
- byref函数
- 入库策略
- 出库策略
Store配合TableFile处理仓库必要信息(Byref函数)
- 当有一个入库任务,需要先寻找空闲的货位(也可以按照策略来)
- 当一个零件存储,要用一个清单记录零件名称,所存储的货位位置
- 当有一个出库任务,需要先寻找对应零件的位置(也可以按照策略来)
- 当一个零件出库,还要从仓库清单上清除该零件,以免重复查询
初始化
stock.delete
寻找空闲货位
param byref x,y:integer->booleanvar i:integer
var k:integer
if self.~.fullreturn false
elsefor i:=1 to self.~.XDimfor k:=1 to self.~.YDimif self.~.pe(i,k).emptyx:=iy:=kreturn trueendnextnext
end
寻找空闲货位的函数必须返回两个值,即空闲货位的X,Y,但是一个函数只能返回一个值作为结果,因此可以用如下方法解决:
- 返回X,Y坐标作为一个引用(Byref)- -以上采用该方法
- 返回X,Y坐标作为一个表
- 将坐标存储在store的用户属性中
byref函数
可以使用byref将参数作为引用传递,可以向调用方法返回多个结果,只能输入本地变量
param byref a,b : real -- declares method1
a := a + 1
b := b + 1-- declares method2
var x, y : real
print x, " ", y -- 0 0
method1(x, y)
print x, " ", y -- 1 1
method1(x, x)
print x, " ", y -- 3 1
入库策略
var x:integer
var y:integer
var partName:stringwaituntil warehouse.full=false prio 1
warehouse.getFreePlace(x,y)
partName:=@.name
@.move(warehouse.pe(x,y))
stock.writerow(1,stock.YDim+1,partName,x,y)
出库策略
var x:integer
var y:integer
var part:string
var found:booleanpart:=cycletable[1,cycletable.position]
if cycletable.position>=cycletable.YDimcycletable.position:=1
elsecycletable.position:=cycletable.position+1
endstock.setcursor(1,1)
found:=stock.find(part)
if foundx:=stock["x",stock.cursorY]y:=stock["y",stock.cursorY]stock.cutrow(stock.cursorY)warehouse.pe(x,y).cont.move(station)
elsemessageBox("Can't find this part in the warehouse!", 1, 0)eventController.stop
end
下载链接
[Plant Simulation]使用TableFile和Method进行仓库仿真(Byref函数)相关推荐
- Tecnomatix Plant Simulation热力图生成工具V1.0.1
众所周知,热力图是一定的数据集在展示页面上密度.分布以及变化的体现,通过选择不同的颜色来对应不同的数据区间,将数据量大小转化成颜色差异,图形化表达了业务场景下的数据差异,帮助仿真人员了解真实的数据量分 ...
- Tecnomatix plant simulation HBW立库使用
Tecnomatix Plant Simulation中提供了一个免费的HBW(High Bay Warehouse)高架货物立体仓库,用于模拟我们工厂中的常用的物流仓储设施. 这个库对象一共有三个组 ...
- Plant Simulation常用命令
Plant Simulation 是面向对象的三维离散事件仿真软件,使您能够快速.直观地构建逼真的物流模型. 您还可以使用高级统计工具执行复杂的生产分析.以下介绍该软件的一些常用命令. 1. clea ...
- Plant Simulation中的“开机自启”-autoexec
本人原创,转载说明出处. 公众号:仿真社区Plant Simulation " 全文共595字,预计阅读2分钟." 目录 1.介绍 2.使用方法 3.示例 4.演示 1.介绍 我们 ...
- Plant Simulation使用技巧
** Plant Simulation使用技巧 ** 技巧 扩展启动选项 E:/chm_files/Plant/CHM/id74918.html F1:打开帮助文档 F2:重命名 F3:搜索.可搜索根 ...
- plant simulation 建模案例分析
plant simulation建模案例分析 一.问题背景 二.问题描述与分析 1. 生产流程 2. 主要问题 三.建立概念模型 1. 模型范围 2.模型细节度 四.仿真设计 1.预热期及仿真时间的确 ...
- Tecnomatix plant simulation基础及Simtalk编程入门视频教程
主要内容: 一.Tecnomatix plant simul ...
- Tecnomatix Plant Simulation 14 学习之路(五)
1 方法写入指令 'print numOfLimitedObjects'统计的应该是"具体"工件的数量 例如上图,方法Method执行结果控制台应该显示数量为8 2 更新修改的方法 ...
- Tecnomatix Plant Simulation 2201
Tecnomatix Plant Simulation 2201 做工厂仿真人员的福音!!!!!!!! 主要变化如下: 1.大家最最关注的帮助文档的语言变化: Tecnomatix Plant Sim ...
最新文章
- C++for循环中i++与++i的区别
- OpenGL之矩阵的基本变换和矩阵堆栈
- mysql中的shell脚本命令_shell脚本中mysql命令
- git介绍和常用操作
- 划重点|iOS15正式发布, 全新的通知推送系统,你必须要知道
- 什么样的企业适合建设中台
- java android长连接_基于Java Socket的自定义协议,实现Android与服务器的长连接(一)...
- 一台机器上安装两个tomcat
- android leaks工具,Androidx中ImmLeaksCleaner已经解决了InputMethodManager... - 简书
- android xml图片旋转,如何在Android中进行平滑的图像旋转?
- 上采样层什么意思_佛前上三柱香、磕三个头是什么意思!
- 独家丨我在北工大看王校长吃热狗
- 【四二学堂】代码写诗之--《二十一杯酒》
- 一场对爱情的反思《少有人走的路:心智成熟的旅程》
- 写好软文标题的10个方式
- 飞利浦Georg Jensen联名系列真无线耳机JT60重磅上市
- Wpf大屏软件开发过程中遇到的若干问题
- 使用LM324实现信号放大及电压比较综合报警电路
- Win10彻底删除OneDrive的方法
- 事务统计系统软件 php,PHP数据库事务处理