Ⅰ 西门子1200plc FC中的接口参数TIMERDB是如何与数据块DB交换数据的
DB1 DB3 是编程的人 自己添加(创建)的。
DB1 DB3 是数据块,需要在它们内部创建自己需要的变量
FC是功能块(函数块)
TIMERDB是FC功能块的参数(形参)
在调用FC时 需要对TIMERDB 赋值(实参),这个赋值来源 就是DB1或DB3里面的变量。
具体还需要你将程序图片发出来才能具体讨论。
Ⅱ [求助-西门子PLC300/400]FC块的初始化程序怎么做
1、对FC块的程序进行一次初始化,没有什么必要,也不需进行初始化。因为:、单独对于FC块的局部变量进行初始化是徒劳的,因为局部变量只有在该FC块中有效,该FC块结束后,这些局部变量又做他用了。、单独对于FC块的全局变量进行初始化也没有什么意义,随着系统的运行与FC块相关的输入(全局)变量在更新,与FC块相关的输出(全局)变量在被重新写入。、总之,编程者在编写调用FC块时,要清楚在调用是所涉及的变量当前是什么状态,这样就可以了。2、有关初始化:在OB100中编写初始化程序,是对于某些全局变量进行赋初值。
Ⅲ 西门子PLC中FB和FC区别
功能(FC)没有固定的存储区的块,其临时变量存储在局域数据堆栈中,功能执行结束后,这些数据就丢失了。用共享数据区来存储那些在功能执行结束后需要保存的数据。调用功能和功能块时用实参(实际参数)代替形参(形式参数)。形参是实参在逻辑块中的名称,功能不需要背景数据块。功能和功能块用IN、OUT和IN_OUT参数做指针,指向调用它的逻辑块提供的实参。功能可以为调用它的块提供数据类型为RETURN的返回值。功能块(FB)功能块是用户编写的有自己的存储区(背景数据块)的块,每次调用功能块时需要提供各种类型的数据给功能块,功能块也要返回变量给调用它的块。这些数据以静态变量(STAT)的形式存放在指定的背景数据块
(DI)
中,临时变量TEMP存储在局域数据堆栈中。调用FB或SFB时,必须指定DI的编号。在编译FB或SFB时自动生成背景数据块中的数据。一个功能块可以有多个背景数据块,用于不同的被控对象。可以在FB的变量声明表中给形参赋初值。如果调用块时没有提供实参,将使用上一次存储在DI中的参数。
Ⅳ 用西门子plc的fc功能反复调用控制行车正反转,除了自锁,其他怎么编
简单的控制程序可以只用OB块编程。
若程序功能较多、控制对象较多,应遵循西门子(也是IEC)的建议采用结构化编程。
应该采用FC、FB,就采用相应的功能;
S7-300/400PLC程序采用结构化程序,把程序分成多个模块,各模块完成相应的功能。结合起来就能实现一个复杂的控制系统。就像高级语言一样,用子程序实现特定的功能,再通过主程序调用各子程序,从而能实现复杂的程序。
在S7-300/400PLC中,写在OB1块里的程序就是主程序,子程序写在功能(FC)、功能块(FB)。各个OB相当于主程序的不同分段,负责调用其他功能块。如果程序简单只需OB就可以实现。
系统功能块(SFB)和系统功能(SFC)也是相当于子程序,只不过SFB和SFC是集成在S7
CPU中的功能块,用户能直接调用不需自已写程序。
SFC与FC不具有储存功能,FB和SFB具有储存功能
。
Ⅳ plc中FC功能块的介绍
FC功能块相当于一个独立的子程序,直接PLC地址编程。OB块调用。
FB则不同,使用临时变量编程,OB调用时需要给各个变量赋值,可在相同的用途处多次调用,赋予不同的初值。
Ⅵ 西门子PLC编程中FB和FC的区别
FC+全局数据块可以实现和FB一样功能,但是编程时如何选择FB和FC呢?
一般用FB实现控制功能,FC调用FB把程序进行分段,这样条理更清晰。
比如电机控制、气缸控制、工位控制写成FB,手动自动写成FC,FC多次调用FB这样程序条理清晰。
看懂的同学点 !
Ⅶ S7 300 PLC编程FB块与FC块怎么用
1、首先打开电脑,鼠标双击桌面三菱编程软件启动图标。
Ⅷ 西门子S7-300 PLC编程 FB和FC的区别
fb是函数块,fc是函数。区别在于,fb有自己的背景数据块,也可是使用全局数据。而fc只可以使用全局数据块。打个比方,fb是个有土豪,fc是个屌丝,奔驰小汽车是背景数据块,公交车是全局数据块,因此,fb去上班可以开奔驰,也可以做公交,而fc只能做公交,单fb和fc又都是人,权利和义务都一样。
Ⅸ 西门子plc编程在什么情况下用OB、FB、FC、SFB、SFC块
在S7-300/400PLC中写在OB1模块里和程序就是主程序,子程序写在功能(FC),功能块(FB)。
FC运行是产生临时变量执行结束后数据就丢失-----不具有储存功能
FB运行时需要调用各种参数,于是就产生了背景数据块DB。例如用FB41来作PID控制,则它的PID控制参数就要存在DB里面。FB具有储存功能
系统功能块(SFB)和系统功能(SFC)也是相当于子程序,只不过SFB和SFC是集成在S7
CPU中的功能块,用户能直接调用不需自已写程序。
SFC与FC不具有储存功能,FB和SFB具有储存功能
。
OB模块相当于子程序,负责调用其他模块。如果程序简单只需要OB就可以实现。
用西门子PLC编程时,可以用到功能块FB和功能FC(FB、FC都是组织块)资料上说FB与FC都可以作为用户编写的子程序,但是我不明白这两个组织块之间到底有什么区别阿?在应用上到底有什么不同之处吗?
FB--功能块,带背景数据块
FC--功能,相当于函数
他们之间的主要区别是:FC使用的是共享数据块,FB使用的是背景数据块
举个例子,如果您要对3个参数相同的电机进行控制,那么只需要使用FB编程外加3个背景数据块就可以了,但是,如果您使用FC,那么您需要不断的修改共享数据块,否则会导致数据丢失。FB确保了3个电机的参数互不干扰。
FB,FC本质都是一样的,都相当于子程序,可以被其他程序调用(也可以调用其他子程序)。他们的最大区别是,FB与DB配合使用,DB中保存着FB使用的数据,即使FB退出后也会一直保留。FC就没有一个永久的数据块来存放数据,只在运行期间会被分配一个临时的数据区。
在实际编程中,是使用FB还是FC,要看实际的需要决定。
FB与FC没有太大的差别,FB带有背景数据块,而FC没有。所以FB带上不同的数据块,就可以带上不同的参数值。这样就可以用同一FB和不同的背景数据块,被多个对象调用。
FC和FB像C中的函数,只不过FB可以生成静态变量,在下次函数调用时数据可以保留,而FC的变量只在调用期内有效,下次调用又重新更换。
这是一般的理解;FB需要背景数据块,而FC是没有的;参数的传递方式不同,FB的输入输出对应着背景数据块地址,而FC的输入输出是没有实际地址对应的,只有的程序调用时,才会和实际的地址产生对应关系。FB参数传递的是数据,FC参数传递的是数据的地址。
参考文献:http://bbs.gongkong.com/proct/plc.htm
Ⅹ 西门子PLC编程FC FB编写两个数学公式的区别
问题1,肯定能用串联编写,而且写起来比较简单,不过看起来有点乱,不太明了。
问题2,能用,FB能完全取代FC。
区别在于,FC必须赋值,也就是FC本身来说是一个纯的功能块,本身没有全局变量。
而FB,可以不赋值,本身就有背景数据块。