设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3957|回复: 11

Flexsim系统仿真软件入门学习方法推荐,供参考

  [复制链接]
发表于 2012-10-19 15:21:49 | 显示全部楼层 |阅读模式
我学习Flexsim已经有比较长的时间了,简单说说我认为应该怎么样学习Flexsim。

       第一步,准备。Flexsim是一个离散事件仿真软件,在学习它之前肯定是需要一些必备知识的,比如仿真相关的知识,这其中自然也包括仿真所需的数学方面的知识。另外这个软件是基于Visual C++.net 2003开发的,所以最好能对面向对象有一定概念,特别是能够掌握简单的C++编程,当模型复杂到需要深入使用Flexsim的时候,编程方面的知识就会派上用场了。不过如果C++,甚至是编程基础都很薄弱的话,还是可以通过学习相关的材料,迅速达到一定水平的,这个后面会提


        第二步,入门。版上的很多朋友可能处在这个阶段前后。这部分的学习材料是最丰富的,也是比较好找到的。我知道的包括:软件联机帮助中自带的Tutorial,一套入门的教学录像(有软件操作和讲解),台湾的一本设施规划的教材(后面几章是讲Flexsim的),一份英文的初级培训讲义(PowerPoint文档)和一份中文的初级培训讲义(也是PowerPoint文档)。我知道的就是这些了,其中很多可以在这个网站下载到,其他版友如果知道还有其它的学习材料请补充。这其中,我认为软件自带的教程是基础,软件本身的帮助就是开发人员写的,自然是最权威的了。包括在后面的学习中,联机帮助永远是最重要的学习材料。教学录像有的地方讲的比较细,相比简明扼要的教程要多些内容,而且由于是通过录像展示了操作的过程,生动、形象,入门时很有用。台湾的教材主要是结合设施规划方面,Flexsim讲得似乎不是很深,我没有仔细看过,有仔细学过的版友可以说说。我觉得中、英文两个讲义的内容大致相当,英文版的多了一些例子,其中有些涉及到了编程,这个不属于我说的入门阶段,放在后面再说。讲义可以作为参考文档,不过讲义的缺点是比较概要,都是提纲挈领的,没有详细的讲解。我所说的入门阶段是指熟悉软件的各项操作,能够搭建简单的模型,设定参数等,而不需要自己写代码,编程。这个阶段参考上面所说的这些材料,几天应该就可以达到一定的程度。
  
     第三步,深入。除了有些人只是简单学习一下之外,很多人应该是需要用这个作为工具解决一些相关的问题。在这种情况下,往往模型的复杂程度会超出入门的程度,这就需要深入学习了。其中的一大部分就是在Flexsim中编程。在联机帮助中介绍了Flexsim编程的基础知识,Writing Logic in Flexsim和Basic Modeling Functions这两部分介绍了在Flexsim中编程的一些基本规则,逻辑表达和常用函数。我前面提到的编程基础比较弱的人也可以通过先学习这两部分,逐步掌握Flexsim编程。另外前面提到在中、英文两份讲义中也有相关的内容,特别是英文讲义中后面的那些例子都是很好的学习对象。首先,自然要熟悉规则;其次,就要在实践中不断学习了。在学习的过程中,代码例子自然是非常重要的,除了讲义中带的例子之外,在联机帮助中有一个专门的部分:Sample Models中包含了大量的例子。Sample Models里的模型都不大,但是很实用,每个sample就是某个功能的展示或某种逻辑的实现。Sample Models里提到的例子都可以在Flexsim安装目录下的Samples子目录中找到。如果这部分内容确实都掌握了,你的水平可以提高一大截。今后在Flexsim编程方面的学习就主要靠参考Flexsim自带的源代码了。Flexsim代码的开放性是它的一个特点,不论是自带的模型还是程序本身,绝大部分的代码都是公开的,所以我们可以通过模仿实现自己需要的逻辑。比如参考它的选项中的逻辑代码,能够找到的一些模型中的建模思路和编程方法,还有软件程序本身的很多代码也都能看到。另外编程时一定离不开Command Summary,这里有Flexsim所有已经定义好的函数的说明,绝大多数人的编程还是会在Flexsim里完成,并不需要在Visual C++.net环境中编程,所以这个帮助非常有用。比如,你需要在货架上实现一定的逻辑,那就可以查查Rack那部分有什么函数是可以实现这个逻辑的。感觉Flexsim虽然是基于C++开发的,但是它还是和其他软件一样,都是用软件自带的函数写代码来实现逻辑,通常不会需要在外部环境中写纯粹的C++代码。所以编程的关键就在于熟练掌握软件提供的和自己相关的那些函数,每个人情况不同,一般几十个吧。

        第四步,全面。上一步主要说的是高级使用中的编程部分。诚然很多功能的使用到达一定复杂程度后都可能需要用到编程,对软件的全面了解还是非常有用和必要的。举个我自己的例子:为了让叉车每次卸货完毕后回到特定的地点,我自己写了代码实现,后来才发现原来有相应的选项,根本不用自己编程实现。所以对软件的全面了解在某种意义上比学编程还要重要,从中我们可以更容易的知道,Flexim都能做什么,哪些可能不能做,哪些需求可以通过已有的功能直接实现,不能直接实现的需要通过什么途径实现等等。全面熟悉软件我觉得至少包括下面两个部分:1、通读用户手册,不需要逐字逐句地学习,但是能够从头到尾“过”一两遍,至少能够了解都有什么功能,都能够做什么,至于具体怎么做可以用到的时候再回来仔细学习;2、知道软件界面上的各个菜单、按钮、选项是做什么用的,其实用户手册里也有专门的部分讲这个,不过我是习惯拿到一个软件就看看都有什么菜单。比如说建模窗口的Edit Selected Objects里有个选项就可以实现复制对象,Combiner这种对象就可以实现装配工作台的效果,这些在入门里就不一定有,因为入门只会提到最常见的,有些我们需要的东西在入门里是没有提到的。总之,这个阶段我认为比第三个阶段更重要,即便你不想编程,跳过第三阶段,也不能错过这个阶段,否则你就只能停留在入门的阶段了。只进行第四步,而跳过了第三步,至少也知道能做什么和大致上是通过什么来实现的,只不过当遇上一定需要用编程来解决的问题时就不成了 。

       学了这么长时间,我觉得Flexsim还是很强大的,也有很多东西可以学,我们也只能是用到什么学什么。上面是我认为比较好的学习方法给大家参考,其实和大多数软件的学习方法都是相通的。另外再次提醒大家用户手册的重要性,有时遇到问题,一查手册就会恍然大明白了,特别是有些专门标出的文字以前也都看漏了,其实是很重要的。希望大家有好的学习方法或学习材料也拿出来分享。
发表于 2012-10-19 19:43:35 | 显示全部楼层
赞一个,值得学习!
发表于 2012-11-4 23:00:58 | 显示全部楼层
我们目前还是初级学习者啊
发表于 2013-3-14 15:50:42 | 显示全部楼层
谢谢!像在里边编程可以获得什么功能呢?有哪些特定情况需要呢。
发表于 2013-5-21 13:38:26 | 显示全部楼层
顶顶顶。。。。
发表于 2013-6-22 12:09:20 | 显示全部楼层
求flexsim视频教程
发表于 2013-8-24 14:08:10 | 显示全部楼层
谢谢分享!
 楼主| 发表于 2013-11-21 17:15:09 | 显示全部楼层
无极 发表于 2013-6-22 12:09
求flexsim视频教程

可以去我们公司的flexsim仿真软件网盘地址:http://pan.baidu.com/share/home? ... c2c#category/type=0,上面有很多期,我们远程视频培训的录像,也涉及很多flexsim的培训教材。请关注,谢谢!
 楼主| 发表于 2013-11-21 17:17:39 | 显示全部楼层
Crubal 发表于 2013-3-14 15:50
谢谢!像在里边编程可以获得什么功能呢?有哪些特定情况需要呢。

可以去我们公司的flexsim仿真软件网盘地址:http://pan.baidu.com/share/home? ... c2c#category/type=0,上面有很多期,我们远程视频培训的录像,也涉及很多flexsim需要编程的培训教材。请关注,谢谢!
发表于 2014-5-6 11:38:01 | 显示全部楼层
谢谢了,学习中,
 楼主| 发表于 2014-5-8 17:24:00 | 显示全部楼层
kingway 发表于 2013-8-24 14:08
谢谢分享!

可以去我们公司的flexsim仿真软件网盘地址:http://pan.baidu.com/share/home? ... c2c#category/type=0,上面有很多期,我们远程视频培训的录像,也涉及很多flexsim的培训教材。请关注,谢谢!
发表于 2015-8-21 15:55:49 | 显示全部楼层
值得学习!谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2024-11-27 13:18 , Processed in 0.019375 second(s), 17 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表