您的位置:首页 > 其它

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

2015-01-12 14:34 204 查看
今天在写一篇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指令,在梯形图中,将相应的图标拖入编辑区即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: