Flexsim脚本语言培训.ppt
《Flexsim脚本语言培训.ppt》由会员分享,可在线阅读,更多相关《Flexsim脚本语言培训.ppt(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2什么是节点?什么是节点? FlexSim的基础数据结构是一棵层次分明的树 主树(与模型和工程相关的实体和数据) 视图树(与GUI相关的实体和下拉列表) 模型树(与模型相关的实体和数据) 节点是树结构最基本的组成模块 节点包含了实体、GUI和数据的所有信息。23节点的结构节点的结构 节点有名字 节点可以拥有一个数据类型 数值 字符串 实体 如果节点拥有实体数据,使用 查看含有实体信息(数据项和成员函数)的独立的节点列表 如果节点包含子节点,使用 展开并查看子节点34节点符号节点符号 标准文件夹节点 实体节点 实体数据 函数 (C+) 函数(FlexScript)45模型树模型树56什么是函数?
2、什么是函数?functionname(argument1, argument2, etc) 参数可以是: 数值型的值 字符串(“Text”) 引用的一个实体或者节点 函数示例: colorrandom(item)-(查看发生器实体的离开触发器)(查看发生器实体的离开触发器) FlexSim中很多函数都用于读取树中的数据或者将数据保存到树结构中 67函数和函数和“返回返回”语句语句 调用函数就像询问一个问题 用户输入参数,函数的“返回值”就是问题的答案 实体的下拉列表中的属性都是函数 调用的函数不同,返回值的意义也不一样8一般规则一般规则 区分大小写(A不等同于a) 没有特定格式(以“易读的”代
3、码为目标,可以自由使用空格、制表符和回车换行) 文本字符串由引号括起,mytext 被调用的函数后面用圆括号,逗号分隔其参数,moveobject(object1, object2); 函数和命令都以分号结束 根据需要,可以在数学和逻辑表达式中自由地使用圆括号,Ex: (x+3)*2) 大括号用于定义一段逻辑代码 使用双斜线注释掉一行代码,/and type note here 多行注释以/*开始,*/结束 名字定义中不能含有空格或特殊字符,下划线除外 名字中可以含有数字,但是不能以数字开头89逻辑语句逻辑语句 提供的帮助提供的帮助 现存的下拉列表选项是很好的示例 帮助命令, 将鼠标放置到代码
4、中的某个命令上可出现提示。 帮助属性提示910逻辑创建器逻辑创建器 用模块的形式显示建模逻辑 通过组合模块,自定义逻辑和行为 可以切换模块视图和代码视图1011变量类型变量类型 整数型 浮点型 字符串 树节点型whole numbers (1, 2, 3, 14324)real numbers (2.5, 3.14159)text string (“Anthony was here.”)reference to a node in the tree1112定义和设置变量定义和设置变量 int index = 1; double weight = 175.8; string category =
5、 “groceries”; treenode forklift = centerobject(current,1);1213数学运算符数学运算符 x + y x - y x * y x / y sqrt(x) pow(x,y) round(x) frac(x) fmod(x,y) min(x,y) max(x,y)x 加 yx 减 yx 乘以 yx 除以 yx平方根x的y次方 (xy)与x最接近的整数返回x的数值返回x/y的余返回x与y的最小值返回x与y的最大值1314赋值运算符赋值运算符 x = y x += y x -= y x *= y x /= y x + x -设置 x 为 y设置
6、x 等于 x加y设置 x等于 x减y设置x等于 x 乘以 y设置 x等于 x除以 yx加1x减114Remember: = is not the same as = is used to set a value= is a comparison operator15基本的实体引用基本的实体引用 current - 当前实体, 也就是代码所在的实体。 item - 导致事件触发的临时实体。 model() -引用模型树 so() - 对树结构中任意一个节点的临时引用。右键单击节点,将其指定为so().1516基本的实体数据统计基本的实体数据统计 content( object ) getinpu
7、t( object ) getoutput( object ) getstatenum( object ) int inventory = content(current); int produced = getoutput(current);1617实体实体的基本属性的基本属性 xloc( object )yloc( object )zloc( object ) setloc( object, xnum, ynum, znum ) xsize( object )ysize( object )zsize( object ) setsize( object, xnum, ynum, znum )
8、 xrot( object )yrot( object )zrot( object ) setrot( object, xdeg, ydeg, zdeg )1718提示和打印提示和打印 句法 pt( text string ) pf( float value ) pd( discrete value ) pr( ) msg( “window title”, “message text”, button type ) 在输出控制台打印信息 主菜单: 视图 - 输出控制台 示例 pt(“Item In “); pt(getname(current); pt(“ “); pf(time(); pr(
9、);1819处理器的属性处理器的属性 理解处理器实体的可编辑选项可以帮助你更好的掌握FlexSim。 关于每个可编辑项,请回答下面4个问题: 它的应用目的是什么? 什么时候执行? 可以访问哪些变量? 它的返回值是什么?1920访问变量和返回值访问变量和返回值Edit Field编辑区域编辑区域Access Variables访问变量访问变量Returns返回返回Setup Timecurrent, item, portdelay timeProcess Timecurrent, itemdelay timeSend To Portcurrent, itemport numberPull Fro
10、m Portcurrentport numberPull Requirementcurrent, item, porttrue/false (1/0)Request Transport Fromcurrent, item, portnumeric pointerPick Operatorcurrent, itemnumeric pointerOnResetcurrentN/AOnMessagecurrent, msgsendingobject, msgparam1, msgparam2, msgparam3N/AOnEntrycurrent, item, portN/AOnExitcurren
11、t, item, portN/AOnSetupFinishcurrent, itemN/AOnProcessFinishcurrent, itemN/A2021代码练习代码练习 1 目的 学习在代码编辑窗口中编写代码。 对用于定义代码模板窗口的特殊注释进行介绍。 bernoulli命令简介.bernoulli(num probability, num succeed-value, num fail-value, num stream) 描述 做此练习,请不要使用代码模板 (从最基本的编辑选项开始,写自己的代码)! 模型布局,请看下一个幻灯片。 使用发生器的 “创建触发”编辑框, 将70%的临时
12、实体设置为类型1,剩余30%设置为类型2(使用bernoulli命令).2122代码练习代码练习 1,2,3 A1的模型布局的模型布局2223If条件句条件句if (test expression)code blockelsecode block23if (getitemtype(item) = 1)colorred(item);elsecolorblack(item);24代码练习代码练习 2 目的 学习使用代码设置和读取临时实体的类型 临时实体箱的介绍 描述 使用与练习1相同的布局. 当临时实体离开发生器时,设置它们的颜色 在发生器的“离开触发”域段中使用“if ”条件句,将临时实体类型为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Flexsim 脚本语言 培训
限制150内