登录
首页 PLC论坛 施耐德电气PLC
回帖 发帖
正文

主题:somachine的功能块,函数与程序的不同处

点击:3607 回复:19

somachine软件中的程序和功能块和函数有什么不同??程序就比较好理解一点,我理解成子程序,但是功能块和函数的区别就找不到了,除了功能块可以引用他的实例和要建立北京
19-10-04 00:09
附件 1.jpg
我觉得你理解的不对..
程序就是程序  PRG
功能块  FB   可以看做"子程序"
你自己定义好的.外部输入变量..输出变量.在内部有一定的计算.逻辑关系..
能够反复调用...比如 somachine里面的那些MC_home_atv  mc_pto 什么的.都属于功能块
相比较的话.和西门子200  200smart里面用的那个库 scaling 是一样的..
              STEP里面是FC144  FC145那个吧.具体数我记不住了..就是比例关系..官方做好的库.直接拿来用就可以了
比如你有一个工程里面有20台水泵...
每台水泵的启停条件都一样.你就可以做一个FB
定义输入.启动.停止.高液位.低液位.手动自动.过载.
定义输出,泵启动. 泵故障
然后在FB里写逻辑关系..
然后你每次都调用这个块,把对应的输入输出写上就可以了
就不用每个泵都写一遍了
至于函数..FUN 就是有一种返回值的功能块看起来.我没太明白这个是干什么用的
但是somachine里面咱们都要选的"添加用于隐含检查的pou"那些都是函数..
19-10-04 19:57
是的,程序和功能块还能接受了解,,但是函数就不知道是干什么用的了,,,还有在建立好的程序里面再右击添加对象会发现还有东西,,还有,动作-属性-转移,,这几个有又是什么?真的不懂施耐德想的是什么,,想西门子那样不就很好接受了吗
19-10-05 17:05
只是你用西门子习惯了可能是..都用用你会发现各有各的好..但是TIA真的甩somachine几条街感觉
各家有各家的特点..somachine是codesys底层架构的..是他们那个什么iec61131-3标准的
用习惯了就好..
至于在pou下面的动作,我觉得这个才是真正意义上的"子程序"
你得在对应的pou里面去调用.别的pou应该是调用不了的..在动作里面声明的变量直接就在自己的pou里面
怎么说呢..方便管理?
关于这个"动作-属性-转移"我觉得是施耐德一如既往的  找的翻译的问题.
19-10-05 18:23

引用 0aguang0 在 2019/10/5 18:23:23 发言【内容省略】

我个人觉得吧,施耐德的思想和他做的软件真的不咋地
19-10-05 23:39
施耐德是个财团,这软件不是他们做的..是codesys的..现在很多大公司的软件都是外包给这家做个性化组合
我感觉他有点像自动化届的安卓..
附件 12.jpg
这真不是施耐德的问题...不过他程序里面的翻译.确实是施耐德的问题...
你要是装的多了..就会发现..somachine v4.3跟它的后续软件Machine Expert V1.1 里面同样的地方的翻译的不一样了.
19-10-06 10:43
你说的那个1.1的软件是不是那个编写TM200的软件,,那个我也有装,而且这个SOMACHINE这个软件用起来不流畅的,应该是说施耐德的编程软件用起来都是这样,,,你这个是什么书???推荐几本好上手的书来看看,我刚接触施耐德
19-10-06 11:09
哈哈,这个sm确实是基于codesys,完全不一样的一套东西,和之前施耐德的Modicon和TE也都不一样。我用惯modicon的软硬件,觉得比较简单直接,TE就有点和西门子比较像,都是欧洲的嘛。
程序,肯定是系统级别的被循环执行或事件调用的完整程序段
功能块,相当于标准或自定义的子程序,每个实例都可以存储自己独立的数据,
函数是另外一种子程序,通过参数来调用,具备返回值,可以理解为相对简单的子程序吧,输入通过调用参数传递,输出通过函数值来返回,sm中是不是可以独立存储数据,我就不清楚了。没仔细研究过。
以前的工控软件,都尽量用工业控制的语言,方便工程师学习,现在软件技术越来越普及,就直接用软件的术语了,所以,理解上要结合软件的知识。
基本的概念,是数据,代码,程序,封装,面向对象的思路。。。
19-10-07 19:30
Machine Expert V1.1这个是最新出的针对somachine的升级版本...加了新plc TM262.去掉了058 078
你说的tm200
是对应之前的somachine basic 也就是Machine Expert basic
不过,somachine basic 是tm221的..somachine basic el 才是tm100 200
不知道新的这个软件Machine Expert basic有没有把这三个系列整合到一起
你要是刚接触somachine的话.推荐你
附件 2.jpg
19-10-07 21:30
功能块在调动的时候是需要实例化的,也就是要给功能块取个名字,在运行时内存中也是有分配空间的,函数是不需要实例化的,运行完后,内存就被释放出来了。
19-10-10 11:47

上一页下一页

工控新闻

更多新闻资讯