PLC编程软件中局部变量有什么作用

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-05
西门子plc局部变量是用来做什么

使用局部变量有两种原因:

1.您希望建立不引用绝对地址或全局符号的可移动子程序。

2.您希望使用临时变量(说明为TEMP的局部变量)进行计算,以便释放PLC内存。

如果以上说明对您的情形不适用,您无须使用局部变量;您可以在符号表(SIMATIC)或全局变量表(IEC)中定义符号数值,将所有的符号数值定义为全局变量。

举个简单例子:

一个房屋必定有一个房主,而这个房主在房子范围内可以任意使用某个房间,而客人就不能,客人只能在主人允许地方活动。

这个例子中,房主就等同 全局变量:能在程序范围任意使用。
客人就等同 局部变量:只能在某一段程序范围使用。

局部变量L:PLC内部局部变量用英文字母L标记,其作用与全局变量类似,但它是一种共用的、动态变化的存储区域,其内容与含义随着所执行的逻辑块的不同而改变,它用于寄存仅在逻辑块内部使用的中间运算结果。

局部变量L与全局变量V的区别是:全局变量V在PLC程序中是通用的,即某一程序段或程序块的执行结果可以用于其他的程序段与程序块。

而局部变量L的内容却是临时性、不固定的,只有在调用某一逻辑块时,在块的内部才有明确的含义,逻辑块一旦执行完成,其作用随之消失,因此,它随着所执行程序块的不同随时进行更新与改变。

扩展资料:

工作原理:

PLC是采用“顺序扫描,不断循环”的方式进行工作的。即在PLC运行时,CPU根据用户按控制要求编制好并存于用户存储器中的程序,按指令步序号(或地址号)作周期性循环扫描,如无跳转指令,则从第一条指令开始逐条顺序执行用户程序。

直至程序结束,然后重新返回第一条指令,开始下一轮新的扫描,在每次扫描过程中,还要完成对输入信号的采样和对输出状态的刷新等工作。

PLC的一个扫描周期必经输入采样、程序执行和输出刷新三个阶段。

PLC在输入采样阶段:首先以扫描方式按顺序将所有暂存在输入锁存器中的输入端子的通断状态或输入数据读入,并将其写入各对应的输入状态寄存器中,即刷新输入,随即关闭输入端口,进入程序执行阶段。

参考资料来源:百度百科-PLC编程



如果你全局变量V有多的,就不需要用局部变量L。
局部变量是全局变量的小范围应用,一般用于子程序中的临时变量,出了这个子程序,这个局部变量就失去意义,但全局变量就可以。
你这里的TEMP,是不能用在主程序里。

现在的PLC容量都很大,局部变量只有64个字节,但全局变量有5000个,所以不管是主程序还是子程序,也不管是不是中间变量,都可以用全局变量代替

临时变量一般用在子程序中,只在子程序中有效。这样就方便子程序可以直接放到其他型号plc,避免因内部地址冲突需要修改的。

局部变量L:PLC内部局部变量用英文字母L标记,其作用与全局变量类似,但它是一种共用的、动态变化的存储区域,其内容与含义随着所执行的逻辑块的不同而改变,它用于寄存仅在逻辑块内部使用的中间运算结果。
局部变量L与全局变量V的区别是:全局变量V在PLC程序中是通用的,即某一程序段或程序块的执行结果可以用于其他的程序段与程序块;而局部变量L的内容却是临时性、不固定的,只有在调用某一逻辑块时,在块的内部才有明确的含义,逻辑块一旦执行完成,其作用随之消失,因此,它随着所执行程序块的不同随时进行更新与改变。
局部变量L的地址范围在理论上为LO.O~L63.7共64个字节,但实际可以使用的一般为LO.O~L59.7共60个字节。

  • 西门子S7-300编程中,局部变量与实际I/O符号有什么关系?
    答:你的感觉是正确的!局部变量只有在调用该块时给他引入对应的实际参数才行!通常用于一个子程序的多次调用.
  • 西门子s7-200编程中局部变量问题
    答:S7-200有64个字节的局部存储器,其中60个可以用作临时存储器或者给子程序传递参数。提示 如果用梯形图或功能方块图编程,STEP7--Micro/WIN保留这些局部存储器的最后四个字节。局部存储器和变量存储器很相似,但只有一处区别。变量存储器是全局有效的,而局部存储器只在局 部有效。全局是指同一个存储器...
  • 西门子PLC的局部变量跟全局变量的意思?
    答:全局变量在每个程序都可以用(主程序和子程序),局部变量只是在所建立变量的程序中用,其它程序中不行,大概就是这样个意思。
  • 在西门子PLC中,使用局部变量定义变量时有什么方式来判断呢。我老是弄 ...
    答:局部变量里的是临时数据,一般FC里用的比较多,打开FC,在顶端会让你定义IN,IN-OUT,OUT等等,比如你有4个电机,操作都一样,那么你要写一个电机启停的程序,在这个程序里你定义了启动,停止,运行输出,然后对FC用局部变量编程,编好后在OB里调用,要启动第一个电机,调用FC1,在FC1的输入输出把...
  • plc局部变量实际值不可用
    答:你想问的是plc局部变量实际值不可用的原因吧?有区域性限制。局部变量只在该程序块内部使用有效,它并不能作为该块的输入,输出接口实现形参,实参的数据传递,只在块内部起到临时寄存的功能。局部变量声明表分为参数(输入参数IN、输出参数OUT、输入/输出参数IN_OUT)和局部变量。
  • 西门子的plc程序中:为什么要用L0.0呢,为什么不用sm0.0呢? 求高手指点...
    答:需要在局部变量表中自己定义的。局部变量表在每个子程序的上方,有下面四中变量类型:IN 输入参数 OUT 输出参数 IN_OUT 输入/输出参数 TEMP 临时数据 你要看看这个L0.0到底是什么类型,然后在根据调用确定这个L0.0到底有什么作用
  • 西门子300plc中的L0.0、L0.1、L1.0什么意思
    答:L为局部变量区 与输入区I 输出区Q 一样 L区为局部变量区 当函数调用的时候 会将数据分配到局部变量区 L0.0 就是局部变量区的0字节的第一位
  • 施耐德(SoMachine)PLC定义的全局变量用局部变量定义可以吗
    答:局部变量只能用在当前的分程序内。全局的所有程序段,程序块都能调用。如果你只有一个程序段的话可以。建议理解全局与局部的区别。
  • S7-200中局部变量存储器与存储全局变量的变量寄存器的区别?南通哪里有...
    答:主要区别是变量寄存器是全局有效的,而局部变量存储器是局部有效的。南通上元教育有plc培训的,是一家连锁的品牌教育学校,在南大街家乐福那边。
  • 参数和变量的区别是什么
    答:西门子S7系列PLC可以使用的"程序变量"包括程序参数、局部变量(又称临时变量Temporary)、静态变量(Static)3种基本类型,并且有规定的使用范围。参数与变量的区别 1、在调用过程的时候,有时候需要输入参数,此时参数会有值,在过程中可以直接用;2、变量是存在于过程里面,赋值用的,只有赋值完后,才能调用值...