西门子编程子程序调用教学,西门子系统编程中子程序怎样调

首页 > 经验 > 作者:YD1662022-11-14 16:07:41

上篇文章中我们学习了西门子S7-200 SMART项目的编译、下载、运行调试及上传,本篇我们来介绍西门子S7-200 SMART的全局变量和局部变量,以及如何在编程软件STEP7-Micro/WIN SMART中编写带参数子程序并调用。我们先来介绍一下什么是全局变量和局部变量。符号表中定义的变量又称为全局变量,在所有的POU中都有效,在变量表中定义的变量称为局部变量,只在创建它的POU内部有效。

西门子编程子程序调用教学,西门子系统编程中子程序怎样调(1)

全局变量和局部变量

局部变量可以用作传递到子程序的参数,增加子程序的通用性和可移植性。在变量表中定义局部变量的符号和数据类型。变量类型分为两种,一种是形式参数,用来在子程序和调用它的程序之间传递数据,另一种是临时变量,只用来在子程序执行时暂存数据。

西门子编程子程序调用教学,西门子系统编程中子程序怎样调(2)

局部变量的符号和数据类型

形式参数IN是调用程序提供的输入参数,OUT是返回到调用程序的输出参数,IN_OUT该参数值由调用程序提供,由子程序修改然后再返回到调用程序,形式参数在调用子程序时被实际参数代替。局部变量的数据都存储在L存储器中,地址自动分配,所有POU共用64个字节的L存储器,一个POU执行完毕后释放,其它POU执行时重复使用。在程序中用符号寻址变量时,全局变量的符号直接显示,局部变量的前面带有#号以示区别。

西门子编程子程序调用教学,西门子系统编程中子程序怎样调(3)

局部变量的表示方法

编写带参数子程序并调用。以温度转换程序为例,将主程序中温度转换程序剪切到子程序中,或者直接在子程序中输入温度转换程序,然后在变量表中定义局部变量,该子程序有两个形式参数,包括一个输入参数和一个输出参数,有两个临时变量,也可以不定义临时变量符号直接使用L存储器绝对地址,将程序段中的全局地址改为局部变量增强其通用性,方便移植。

西门子编程子程序调用教学,西门子系统编程中子程序怎样调(4)

首页 12下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.