西门子plc临时变量L的用法总结

作者:老电工时间:2020-04-22 13:24:48

西门子plc中,对于临时变量L的用法,需要注意的事项有哪些,L是局部变量仅在子程序中有效,L是局部存储器,作为暂时存储器或给子程序传递参数。

西门子plc临时变量L的用法

1、本地数据堆栈区L是局部变量,L变量仅在调用它的子程序中有效。

不同子程序中的L变量可用同名。比如:FC1中有L0.1,FC2中也有L0.1这个变量,而2者间没任何关系、也不会相互冲突。

2、不需要做初始化。

3、局部变量解释

L 是局部存储器,作为暂时存储器或给子程序传递参数,L也可以L*.*(如L2.5 是BOOL 量,是第二个字节的第五位),LB,LW,LD来存取,但仅仅在它被创建的块中有效,它也可以在符号表中定义,但只能在各个POU自己的符号表中定义。

4、全局变量和局部变量在符号寻址编程时,全局变量直接显示符号名,而局部变量在符号前会加上#,采用局部变量编程的优势:程序可以功能化移植(减少重复编程量),大程序方便协同作战(把任务分成各个功能块),这是SIEMENS plc的优越性之处。

5、使用注意事项

在使用时注意,一定要先赋值,后使用局部变量又称临时本地数据区(L堆栈),位于CPU的工作存储区用于存储程序块(OB、FB、FC)被调用时的临时数据,访问临时数据比访问数据块中的数据更快。

“L是局部变量,只能在局部使用,不能在全局使用。”只是在这个程序块中可以使用的,使用结束后就会自动复位,它不能被其他的程序使用。

临时变量的使用原则:先赋值,再使用。

在S7-300CPU中,每一个优先级的局部数据区的大小是固定的。

一般在组织块中调用程序块(FB、FC等),操作系统分配给每一个执行级(组织块OB,一般在OB块执行并调用其它FB、FC)的局部数据区的最大数量为256B(字节),组织块OB自己占去20B或22B,还剩下最多234B可分配给FC或FB。如果块中定义的局部数据的数量大于256字节,该块将不能下载到CPU中。

在下载过程中提示错误信息:The?block?could?not?be?copied(该块不能被复制)。如果单击错误信息框中的Detail(详细)按钮,将弹出帮助信息:Incorrect?local?data?length(不正确的局部数据长度)。

在SIMATIC管理器中依次展开你的项目到Blocks(块),右击选中某个块,选择菜单Object?Properties(目标属性)选项。在块的属性对话框中,可以看到块所需要的局部数据字节数(Length长度:Local?Data(局部数据))。

在SIMATIC管理器中选中你的项目的Block(块(文件夹,执行菜单命令Options(选项)/Reference?Data(参考数据)/Display(显示),然后选择Program?Structure(程序结构),即可在参考表中查看局部数据的占用情况。

以上就是西门子plc临时变量L的相关用法,希望对大家有所帮助。

本站仅提供信息发布平台,文章仅代表作者个人观点。

猜你喜欢

首页 > plc > 西门子plc