西门子PLC学习笔记十三-(算术运算指令与控制指令)

今天在写一篇PLC的学习笔记,本篇将介绍PLC最基本的运算指令与控制指令,本篇将直接上截图。

1.基本算数运算指令

1)整数运算


2)长整数运算


3)实数运算


STL编程示例(16位整数的算术运算)

L	IW10	//将输入字IW10装入累加器1的低字
L	MW12	//将累加器1低字中的内容装入到累加器2的低字
			//将存储字MW12装入累加器1的低字
+I			//将累加器2低字和累加器1低字相加,结果保存到累加器1的低字中
+68			//将累加器1的低字中的内容加上常数68,结果保存到累加器1的低字
T	DB1.DBW25	//将累加器低字中的内容(结果)传送到DB1的DBW25中
2.扩展运算指令

3.程序控制指令

1)跳转指令

跳转指令即中断原有程序的执行顺序,跳转到目标地址处执行代码。一般目标地址由跳转指令后面的标号指定,即可向前跳也可向后跳,最大跳转距离为-32768到32767字间。

跳转指令分为:无条件跳转指令、多分支跳转指令、条件跳转指令

a)无条件跳转指令

无条件跳转指令,标号JU。其执行时,将直接中断当前程序,跳转到标号后面所指定的目标处。


示例:(当程序执行到跳转指令时将跳转到L1处执行)


b)多分支跳转指令

多分支跳转指令格式如下:

JL <标号>

如果累加器1低字中低字节内容小于JL指令和由JL指令所指定的标号之间的JU指令的数量,JL指令就会跳转到其中一条JU处执行,并由JU指令进一步跳转到目标地址;如果累加器1低字中低字节的内容为0,则直接执行JL指令下面的第一条JU指令;如果累加器1低字中低字节的内容为1,则直接执行JL指令下面的第二条JU指令;如果跳转的目的地的数量太大,则JL指令跳转到目的地列表中最后一个JU指令之后的第一个指令。

示例:

		L	MB0		//将跳转目标地址标号装入累加器1低字的低字节中
		JL	LSTx	//如果累加器1低字的低字节中的内容大于3,则跳转到LSTx
		JU	SEG0	//如果累加器1低字的低字节中的内容等于0,则跳转到SEG0
		JU	SEG1	//如果累加器1低字的低字节中的内容等于1,则跳转到SEG1
		JU	SEG2	//如果累加器1低字的低字节中的内容等于2,则跳转到SEG2
		JU	SEG3	//如果累加器1低字的低字节中的内容等于3,则跳转到SEG3
LSTx:	JU	COMM	//跳出
SEG0:	...			//程序段1
		JU	COMM	//跳出
SEG1:	...			//程序段2
		JU	COMM	//跳出
SEG2:	...			//程序段3
		JU	COMM	//跳出
SEG3:	...			//程序段4
		JU	COMM	//跳出	
COMM:	...			//程序出口	

2)条件跳转指令

(JC使用的最多)


示例:(当I0.0、I0.1都为1时,跳转到L2,否则跳转到L1执行)



4.子程序调用指令


上面是STL指令,在梯形图中,将相应的图标拖入编辑区即可。




  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风水月

从心底相信自己是成功的第一步

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值