现在的位置: 首页 > 综合 > 正文

西门子PLC学习笔记十一-(装入与传送指令)

2016年03月14日 ⁄ 综合 ⁄ 共 1202字 ⁄ 字号 评论关闭

S7-300/400指令有:装入与传送指令、比较指令、算术运算指令、字逻辑运算指令、移位指令、逻辑控制指令、程序控制指令、主控指令等。

1.装入与传送指令(不能用于梯形图编程)

装入传送指令实现了各种数据存储区的数据交换,其凭借累加器来完成。装入指令标识符:L,传送指令标识符:T。

s7-300PLC有2个32位的累加器,当执行装入指令(L)时,首先将累加器1中原有的数据移入累加器2中,累加器2中的原有内容被覆盖,然后将数据装入累加器1中;当执行传送指令(T)时,将累加器1中的数据写入目标存储区中,而累加器1中的数据保持不变。

L指令加载数,累加器值如下图显示:

s7-400PLC有4个32位累加器,当执行装入指令(L)时,首先将累加器3的移入累加器4,累加器2的移入累加器3,累加器1的移入累加器2,然后将数据装入累加器1中;当执行传送指令(T)时,将累加器1中的数据写入目标存储区中,而累加器1中的数据保持不变。

L、T指令使用示例如下图:

L、T指令使用示例如下:

L   IB0   //将IB0字节的数装入累加器1
T   QB0   //将累加器1的数送入QB0字节中

这段代码实现了将IB第0字节的数据实时反应到QB第0字节上,即IB0.0为1,QB0.0也为1,仿真器输出如下:

2. 状态字与累加器1之间的装入与传送指令

L  STW(将状态字装入累加器1):将状态字装入累加器1中,指令的执行与状态位无关,而且对状态字没有任何影响。

T  STW(将累加器1的内容传送到状态字):使用T  STW指令可以将累加器1的位0~8传送到状态字的相应位,指令的执行与状态位无关。

3.LAR1 将操作数的内容装入地址寄存器AR1

4.TAR1 将地址寄存器1的内容传送到操作数

5.TAR2 将地址寄存器2的内容传送到操作数(操作数可以是累加器1、存储双字(MD)、本地数据双字(LD)、数据双字(DBD)、背景数据双字(DID))

6.CAR 交换地址寄存器1和地址寄存器2的内容,使用CAR指令可以 交换地址寄存器AR1和地址寄存器AR2的内容,指令不需要指定操作数。指令的执行与状态位无关,并且对状态字没有任何影响。

7.LC(定时器/计数器装载)指令

使用LC指令可以在累加器1的内容保存到累加器2中之前,将指定定时器字中当前时间值和时基以BCD码(0~999)格式装入到累加器1中,或将指定计数器的当前计数值以BCD码(0~999)格式装入到累加器1中。指令格式为: LC<定时器/计数器>

LC   T3   //将定时器3的当前定时值和时基以BCD码格式装入累加器1低字
LC   C10  //将计数器C10的计数值以BCD码格式装入累加器1低字

注:上述1~7中的指令只有STL形式的,LAD没有相关的指令表示

8.MOVE指令

该指令为功能框形式的传送指令,能够复制字节、字或双字数据对象。应用中IN和OUT端操作数可以是常数、I、Q、M、D、L等类型,但是在宽度上必须匹配。

抱歉!评论已关闭.