详细介绍
西门子PLC主机模块授权代理商
CPU 在程序循环处理过程中有一段连续的地址区域存储过程信号叫做过程映象区,他处于CPU的系统存储区中。这样CPU 可以访问内部存储区获得I/O 信号而不用直接访问I/O 模块。
过程映象区中的I/O 值不反映当前的I/O 信号,他记录的是循环扫描起始期的I/O 值。当输入模块中的一个信号状态发生改变,过程映象区中该信号的状态直到下次循环开始时才会更新。
通过过程映像区访问时,地址格式是I/Q(输入/输出),小可以访问到位,如I0.0,Q10.0
一般通过过程映像区访问的循环程序运行流程如下:
1. 执行CPU 内部任务
2. 将过程映像区输出区(PIQ)送到模块输出通道
3. 从模块的输入通道到过程映像区输入区(PII)
4. 执行用户程序段
但是过程映象区仅有128 个字节,而对于新型的CPU315-2DP(2AG10),它支持的数字量通
道是16384,既有2048byte,有时候在I/O 量很大的情况下有必要采用直接I/O 访问的方式而不
占用过程映像区,小访问单位是字节。地址格式如下:
注意:直接I/O 访问,小按字节进行,不能单独对位进行操作。
CPU 系统循环扫描周期:
如图1 所示,一般在循环扫描周期中,过程映象区会自动地更新,但在S7-400 和CPU 318 中您可以取消这样的更新方式,进行直接的I/O 访问或者在程序的不同地方调用SFC2模块可用。
西门子PLC主机模块授权代理商本地数据堆栈区L是简介
西门子plc临时变量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(局部数据))。
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(显示),然后选择Pr
产品咨询