如何正确使用S7

您所在的位置:网站首页 plc200怎么变址存数据 如何正确使用S7

如何正确使用S7

2024-06-27 02:28| 来源: 网络整理| 查看: 265

一、导读

1.间接寻址的概念

对S7-200SMART PLC来说,寻址分为直接寻址、间接寻址和立即寻址三种。直接寻址就是直接对数据进行赋值;间接寻址主要用于需要在程序中修改地址的场合,特别是处理数据内容比较多的情况,使用间接寻址编程灵活,节省程序空间。立即寻址是指常数寻址,如读取I0.0、VW0的状态是不确定的,而读取一个常数,如10这样 的一个常量,是能直接找到它的具体值。

1)直接寻址举例: MW10  VW20  VD300 I0.0 Q0.5 VB30  …

2)间接寻址使用指针访问存储器中的数据。(指针指到哪里就是哪里的地址)指针是包含另一个存储单元地址的双字存储单元。

二、使用间接寻址

使用间接寻址的方式存取数据主要分为以下三个步骤来实现:

1.建立指针

使用间接寻址之前,应创建一个指针。指针以双字的形式存储要访问的存储器的地址,只能用V存储器、L存储器或者累加器AC作为指针。建立指针时,用双字传送指令MOV D将需要间接寻址的存储器起始地址送到指针中,如图1所示。指针的输入数应该以“&”符号开头来表明存储区的地址,注意不是其内容将移动到指令的输出操作数中。

图1:建立指针

VD10就是指针(存放需要间接寻址的存储器起始地址VB100)

2.指针偏移

通过加减乘除使指针偏移,比如将VD10加上2,则此时VD100指向VB102;如图2所示。

图2:偏移(引用)指针

VD10的指针+2之后则是VD12,实际指向的就是VB102

3.引用指针

操作数前加“*”号,表示指令中的操作数是一个指针。

将指针指向的地址存储的数据调取出来;通过*VD100提取数据(*是取值符),见上图,就是把VB102的值传送给VB1000

*(取值符)说明

“*+指针”使用在字节的位置,访问的是指针指向地址开始的字节变量;

“*+指针”使用在字的位置,访问的是指针指向地址开始的字变量;

“*+指针”使用在双字的位置,访问的是指针指向地址开始的双字变量(也含有浮点数)

三、间接寻址的应用案例

通过FORNEXT指令完成把1-100依次放入VW100-VW298之中(100个字),示例参考程序如图3所示。

四、结语

通过讲解间接寻址的步骤再结合示例的分享,相信大家已经掌握了其基本的使用。下面为大家分享关于间接寻址几点需要注意的:

(1)间接寻址使用指针访问存储器中的数据。指针还可以作为参数传递至子程序。

(2)0指针是包含另一个存储单元地址的双字存储单元。只能将V区、L区或累加器寄存器(AC1、AC2、AC3)用作指针。

(3)要创建指针,必须使用“MOV_DW”指令,将间接寻址的存储单元地址(&+VBx)移至指针位置。

(4)允许间接寻址访问的存储区:l、Q、V、M、S、Al、AQ、SM、T和C(其中T、C仅限当前值)。

(5)间接寻址访问最小单位为字节,不能访问单个位或访问HC、L或累加器寄存器。

(6)指针使用必定经过建立指针、偏移指针、引用指针三步;

(7)偏移指针时根据访问数据的不同,指针值偏移也有区别。

(8)引用指针时可分别访问字节、字、双字、浮点数。

来源:技成培训网,作者:眭相建,未经授权不得转载!

粉丝福利

微信扫码领西门子全系列PLC电子资料包

微信扫码,免费领



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3