产品|公司|采购|招标

环保APP正式上线

升级6ES7314-1AG14-0AB0模块功能

参考价 ¥ 1800
订货量 ≥1
  • 公司名称上海朝堂电气技术有限公司
  • 品       牌
  • 型       号
  • 所  在  地上海市
  • 厂商性质经销商
  • 更新时间2021/4/9 14:08:05
  • 访问次数11
产品标签:

西门子模块技术

上海朝堂电气技术有限公司本着“以人为本、科技先导、顾客满意、持续改进”的工作方针,致力于工业自动化控制领域的产品开发、工程配套和系统集成,拥有丰富的自动化产品的应用和实践经验以及雄厚的技术力量,尤其以PLC复杂控制系统、传动技术应用、伺服控制系统、数控备品备件、人机界面及网络/软件应用为公司的技术特长。几年来,上海朝堂电气技术有限公司在与德国 西门子公司自动化与驱动部门的长期紧密合作过程中,建立了良好的相互协作关系,在可编程控制器、交直流传动装置方面的业务逐年成倍增长,为广大用户提供了西门子的新技术及自动控制的优秀解决方案

PLC,触摸屏,变频器,伺服电机,伺服驱动器,电线电缆
西门子S7-300PLC模块6ES7314-1AG13-0AB0 CPU314,96K内存,专业销售 薄利多销 信誉好,口碑好,价格低,货期短,大量现货,服务周到!
以满足客户的需求为宗旨,以诚为本,精益求精升级6ES7314-1AG14-0AB0模块功能
升级6ES7314-1AG14-0AB0模块功能 产品信息

S7-300PLC中的FB和FC的分别?FB带有自己的背景DB而FC没有自己的背景DB,用FC和FB有什么分别呢,他们都能实现控制功能,到底该用FB还是该用FC,什么时候用FB什么时候用FC?

    FB与FC没有太大的差别,FB带有背景数据块,而FC没有。所以FB带上不同的数据块,就可以带上不同的参数值。这样就可以用同一FB和不同的背景数据块,被多个对象调用。

    FC和FB像C中的函数,只不过FB可以生成静态变量,在下次函数调用时数据可以保留,而FC的变量只在调用期内有效,下次调用又重新更换。每次调用FC的I/O区域必须要自己每次手动输入,而FB就不要,省去不少麻烦,如果在上位机控制直接输入DB控制地址就可以。

    举个例子来说,有50台电机需要控制,这些电机除了参数不一样,控制流程上是一样的,每个

    电机需要不同的参数去运行,运行中的过程参数要参与到下一次的控制过程中。

    这个要求,用FC做的话,你需要针对不同的电机分配好DB块,来逐一的确认参数地址,不能混

    淆,保存和调用不能出错,可以想象会有多麻烦。如果用FB来做呢?写好控制过程和定义的参

    数的调用就可以了。针对电机重复调用同一个FB,每次调用一个独立的DB作为背景数据块

    ,完全不必理会背景DB中的数据是怎么存储的。如果功能需要修改,只要修改该FB就行了。

    还有其他的例子,比如PID、比如流量累计等等。

    fc就相当于流水线,加工完就过去了!没有任何纪录。fb+db不但可以加工,还能记录数据的。

    一般有多个设备的时候,我们编写一个fb然后多次调用,自动生成相应的db,这样简化了我们

    的工作。

    FB的变量声明表中有静态变量,并可以进行多级的参数传递,因此在调用FB时需生成背景数据块,

    而FC则没有这些.FB可以替代FC,反之则不行.

    多级的参数传递即所谓的MULTIINSTANCE,你可以把FB,DB做为另外一个FB中的函数来调用,

    如在FB2中可以使用FB1中的参数,而终只生成一个背景数据块。

    Zane:

    FB其实不会占用过多的资源,因为一个程序总是有这些变量的,无论是全局的还是局部变量。

    我现在,大量使用的是FB,FC只用来编一些逻辑,及简单的子程序,或仅仅几个CALL指令调用

    FB。使用FB及局部变量,更有利于程序的模块化,增加程序的可移植性,就象西门子公司提供的FB

    块.

    其实FB和FC根本的区别是:FB支持静态变量,而FC只支持临时变量。

    静态变量:是调用FB返回时,仍然要为FB保留此变量区,因此不会改变这一区域的数据值。临

    时变量却没有这样的特性。

    所以在FC中如果在对临时数据变量处写入确定的数据前,就去读时就可能产生不可预见的结果

    ,而对于静态变量却不会,因为它会保留你上次写入的结果。

    万泉河:

    咱们编制的控制程序,FB极少用到。所说的用FB来替代FC实用的情况,更是少见,有谁曾经把

    FC全部用光啦?恐怕系统都不能负担了。

    提供的标准库中,FB倒是不少的。

    如果你要编制的函数没有用到静态变量,恐怕没有必要使用FB吧?我看高级语言中,虽然静态

    变量使用很容易,但实际用也很少啊。

    侠客:我和zane的观点一样,我工作中也是把相同功能的工作编制成FB,然后在FC里调用,程

    序修改起来方便,举个例子:如果你有10台电机,一般我们都要给他编制启动,停止逻辑,报

    警,复位逻辑。如果我编一个FB把这些逻辑都做好了,为每一个电机分配一个背景数据块的话

    ,我在FC调用这些电机时,我只要把这些电机对应的I/O点添到FB的管脚上就可以了,完全不再

    用考虑他里面的逻辑了,如果你全是用FC编这些逻辑的话,1、你要写10遍,2、如果你用粘贴

    和复制的话,有可能有的I/O点忘记修改或其他一些错误,3、程序的结构性不强,维护起来浪费

    时间。

    所以,FB和FC结合起来用是的。

    建议大家试试FB,当你理解了FB后,你会感到惊喜的

    Zane:关于FB,FC的使用,我也是在具体的应用中一步一步地体会过来的,不过这仅是我个人

    的看法与体会,并没有说一定要这样用,各位可以做不同的尝试。但有一点是肯定的,就是在

    动手写程序之前,事先对整个项目要有一个很好的规划。

    看老外的程序通常都是在FC里直接编程,而国内的多是在FB里编程然后再在FC里调用。这两种

    方法各有什么优缺点呢?

    用FC能实现的任务,就没必要用FB。

    FCFB本质上一样

    调用FB相当于在FC里opndi,并使用ar2来索引变量

    FB的优点是数据块里的变量可按名字使用,仅仅是显示而已,执行效率和fc一样

    补充:

    实际上FC更加灵活,在fc里可以多次调用opndi访问多个背景块,ar2也可以做多种用途

    而fb里的ar2原则上是不能使用了,调用fb还要数据块,麻烦

    补充2:

    FB实际上是编程环境玩的一个魔法而已

    PLC的程序指令上实际是没有FB和FC的区别的

    调用FB或者FC终都是转化为UC或CC的调用指令

    要观察编程环境的这个魔法,只需写一个带参子程序(FB或FC),并在另一个块里调用,全部

    下载后,再更改子程序的参数接口,下载该子程序

同类产品推荐
在找 升级6ES7314-1AG14-0AB0模块功能 产品的人还在看
产品对比
QQ

咨询中心

在线客服QQ交谈

市场一组QQ交谈

市场二组QQ交谈

官方微信
发布询价建议反馈 返回首页
回到顶部

Copyright hbzhan.comAll Rights Reserved

环保在线 - 环保行业“互联网+”服务平台

对比栏