西门子S7-1200的变量如何使用?什么是局部变量和全局变量?临时变量和静态变量有什么区别?

简介: 今天给大家讲一下什么是局部变量、全局变量、临时变量、静态变量,这些变量都有什么区别,以及在西门子S7-1200中这些变量如何来使用。

今天给大家讲一下什么是局部变量、全局变量、临时变量、静态变量,这些变量都有什么区别,以及在西门子S7-1200中这些变量如何来使用。


在编写带参数子程序时需要使用局部变量。在PLC变量表和DB块中定义的变量称为全局变量,在全部程序中都有效。在某个块的变量声明表中定义的变量称为局部变量,只在创建它的块中有效。


640.jpg


为了增强通用性,方便移植到别的项目,子程序FC和FB中一般只有局部变量。在局部变量表中,名称列用来定义局部变量的符号名,数据类型列用来定义局部变量的数据类型。




在FC和FB的变量声明表中,形式变量也就是形式参数,用来在子程序块和调用它的程序块之间传递数据。形式参数INPUT是指输入到子程序块的参数,在子程序块中只能读取输入值。OUTPUT是指从子程序块返回的参数,在子程序块中只能写入返回值。INOUT是输入并从子程序块返回的参数,在子程序块中既可以读也可以写,输入值和返回值使用同一个地址。FC中的RETURN返回值只有一个,主要用于FC和调用该FC的其它程序交换数据,反应该FC的执行情况。在TEMP行下定义的变量称为临时变量,用来在该程序块执行时暂时存储数据,当退出该程序块时,这些程序将丢失。请注意,临时变量不能赋予初始值。如果有一些变量在调用结束后仍需要保持原值,则必须将这些变量定义为静态变量,即在STATIC行下定义的变量,静态变量只能用在FB中。


赋值给FB的背景数据块用作静态变量的存储区。因为FB带有存储区,即背景数据块,所以形式变量和静态变量可以赋予初始值。在FB中定义的静态变量不在生成的指令块中显示。


640.jpg


在程序中用符号名访问变量时,全局变量的符号名加引号、局部变量的符号名前带#号以示区分。


640.jpg


调用FC时必须用实际参数代替形式参数。调用FB时必须指定背景数据块,实际参数的值被存储在该FB的背景数据块中。如果在块调用时没有实际参数分配给形式参数,则在程序执行时将采用上一次存储在背景数据块中的参数值。


640.jpg


以上就是今天给大家讲解的内容,我们简单介绍了局部变量、全局变量、临时变量、静态变量,这些变量都有什么区别,以及在西门子S7-1200中这些变量如何来使用。

 

如果大家想要学习更多西门子PLC编程方面的知识,可以持续关注本号,我会在以后的文章中继续为大家分享。

相关实践学习
【AI破次元壁合照】少年白马醉春风,函数计算一键部署AI绘画平台
本次实验基于阿里云函数计算产品能力开发AI绘画平台,可让您实现“破次元壁”与角色合照,为角色换背景效果,用AI绘图技术绘出属于自己的少年江湖。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
相关文章
西门子S7-1200程序状态监视,监视表格的使用方法,如何使用交叉引用列表
本篇我们来学习西门子S7-1200程序状态监视、监视表格、交叉引用的使用方法。
西门子S7-1200程序状态监视,监视表格的使用方法,如何使用交叉引用列表
|
存储 编译器
什么是数据块?西门子S7-200SMART数据块如何使用?
今天我们来学习在西门子S7-200 SMART中如何使用数据块。在讲解数据块的使用之前我们先来看一下什么是数据块:数据块用来对V存储区也叫变量存储区赋初始值;可以对字节、字或双字来分配数据值。
什么是数据块?西门子S7-200SMART数据块如何使用?
|
存储 监控 C语言
西门子S7-1200编程实例,关断延迟定时器指令如何使用?
在西门子S7-1200中有四种类型的定时器:TON接通延迟定时器、TONR保持型接通延迟定时器、TOF关断延迟定时器、TP脉冲定时器。
西门子S7-1200编程实例,关断延迟定时器指令如何使用?
西门子S7-1200的转换指令、取整和截取指令、上取整和下取整指令、标定和标准化指令,各参数的含义是什么?
西门子S7-1200中的转换指令包括转换指令、取整和截取指令、上取整和下取整指令、标定和标准化指令。
西门子S7-1200的转换指令、取整和截取指令、上取整和下取整指令、标定和标准化指令,各参数的含义是什么?
|
人工智能 搜索推荐 小程序
无广告,直达结果的AI搜索引擎
在信息海洋中寻找知识,却常被广告和无关结果困扰?秘塔AI搜索能完美解决这些问题。它无广告、直达结果,全网搜索内容提炼整合,并提供思维导图、相关事件及参考来源,让你高效获取精准答案。快来体验吧![访问地址](https://metaso.cn/)
503 6
无广告,直达结果的AI搜索引擎
|
Linux 虚拟化 Windows
完美解决:重新安装VMware Tools灰色。以及共享文件夹的创建(centos8)
这篇文章提供了解决VMware Tools无法重新安装(显示为灰色)问题的步骤,并介绍了如何在CentOS 8上创建和配置VMware共享文件夹。
完美解决:重新安装VMware Tools灰色。以及共享文件夹的创建(centos8)
|
C语言 Perl
西门子S7-1200编程实例,电动机起保停控制梯形图如何编写?
本篇我们通过一个电动机起保停控制的实例,介绍S7-1200的使用方法,按下瞬时启动按钮I0.6,电动机Q0.0启动,按下瞬时停止按钮I0.7,电动机Q0.0停止。
西门子S7-1200编程实例,电动机起保停控制梯形图如何编写?
西门子S7-1200PLC变量表如何使用?如何声明、选用、显示、定义、更改变量?变量保持性如何设置?
在S7-1200 CPU的编程理念中,特别强调符号寻址的使用,在开始编写程序之前,用户应当为输入、输出、中间变量定义相应的符号名,也就是标签。具体步骤如下:
西门子S7-1200PLC变量表如何使用?如何声明、选用、显示、定义、更改变量?变量保持性如何设置?
西门子S7-200 SMART全局变量和局部变量如何使用,编写带参数子程序并调用
上篇文章中我们学习了西门子S7-200 SMART项目的编译、下载、运行调试及上传,本篇我们来介绍西门子S7-200 SMART的全局变量和局部变量如何使用,以及如何在编程软件STEP7-Micro/WIN SMART中编写带参数子程序并调用。我们先来介绍一下什么是全局变量和局部变量。符号表中定义的变量又称为全局变量,在所有的POU中都有效,在变量表中定义的变量称为局部变量,只在创建它的POU内部有效。
西门子S7-200 SMART全局变量和局部变量如何使用,编写带参数子程序并调用
|
存储 算法 数据可视化
变异位点染色体分布图绘制方法
变异位点染色体分布图绘制方法