技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > STEP7中用STL编写程序的时候,对SET的用法理解不够,帮忙看看下。

STEP7中用STL编写程序的时候,对SET的用法理解不够,帮忙看看下。

刘玉蓉 发布于2014-11-05 17:34 2368 0 标签:

SET
= DB1.DBX0.1

SET
S DB1.DBX0.1

有什么区别?

自己感觉没什么区别,结果都是DB1.DBX0.1为1,大家点拨下,这2种写法有什么不一样?对结果有什么改变没。

佳答案

首先,就你所说的这两段代码来讲,DB1.DBX0.1都为1,所产生的结果都是一样的,对结果没有区别。但是我想还是着重从两个方面理解一下这一块的知识:
1.SET,作用是将RLO无条件置位1,也就是无条件将RLO=1.
2.再就是对S(置位指令)和=(赋值指令)的区别进行理解。
置位(S):如果前一条指令将RLO置为1,那么S指令将寻址触点或线圈的信号状态置1.
赋值(=):与RLO的状态无关,=指令把逻辑操作结果的值赋给其寻址单元(触点或线圈).

分析两段代码:
SET                                //将RLO置为1
= DB1.DBX0.1              //将逻辑操作结果RLO的值赋DB1.DBX0.1 

SET                                 //将RLO置为1
S DB1.DBX0.1              //因为上一条指令RLO=1所以将
                    //DB1.DBX0.1置为1
如果单单得到DB1.DBX0.1的结果,那么没有区别,都是1;但是真正是如何得到的这个1,和表示的意义的话,还是有区别的。就SET而言很好理解,就是无条件将RLO=1。

以上结论根据《S7-300.400语句表编程参考手册》5.7~5.9节

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签