西门子S7-200 SMART整数运算指令概述及应用举例

简介: 本篇文章我们来学习西门子S7-200 SMART整数运算指令。S7-200 SMART的整数运算指令主要包括加、减、乘、除运算指令和递增、递减运算指令。

本篇文章我们来学习西门子S7-200 SMART整数运算指令。S7-200 SMART的整数运算指令主要包括加、减、乘、除运算指令和递增、递减运算指令。


640.jpg

加减乘除运算指令


640.jpg

递增、递减运算指令

 

整数的加、减、乘、除运算指令分别实现了将两个十六位整数相加、相减、相乘和相除,从而产生一个十六位的整数运算结果,其中除法指令只得到商,不保留余数。


640.jpg


整数的加减乘除指令

 

双整数的加、减、乘、除指令分别实现了将两个三十二位的双整数相加、相减、相乘和相除,从而产生一个三十二位的双整数结果,其中除法指令只得到商,不保留余数。


640.jpg

双整数的加减乘除指令

 

当两个十六位整数相乘,所得的结果可能溢出十六位整数范围时,可以使用整数相乘得双整数指令,它将两个十六位整数IN1和IN2相乘,从而产生一个三十二位的双整数结果。


640.jpg


整数相乘得双整数指令

 

带余数的整数除法指令,将两个十六位的整数IN1和IN2相除从而产生一个三十二位的结果,其中操作数IN1和IN2是十六位有符号整数,三十二位的结果OUT中,高十六位为余数,低十六位为商。


640.jpg

带余数的整数除法指令

 

字节递增、递减指令将输入字节IN加一或者减一,并将运算结果送到OUT中,其操作数为八位无符号数,需要注意字节递增、递减运算不带符号。


640.jpg

字节递增递减指令

 

字递增、递减指令将输入字IN加一或者减一,并将运算结果送到OUT中,其操作数为十六位有符号整数,需要注意字递增、递减运算带符号。


640.jpg

字递增递减指令

 

双字递增、递减指令将输入双字IN加一或者减一,并将运算结果送到OUT中,其操作数为三十二位有符号双整数,需要注意双字递增、递减运算带符号。



双字递增递减指令

 

下面我们举例来说明整数运算指令在程序中的应用。在实际应用中,经常需要将现场采集的模拟量信号数据值进行转换,得到对应的工程量数值,假设得到的转换公式如下图所示,为了便于演示,将AIW0的地址更改为VW0,需要注意,为了保证精度,运算时应该先进行乘法运算再进行除法运算。


640.jpg


整数运算指令应用举例

 

我们来编写程序。双击电脑桌面上的STEP7-Micro/WIN SMART图标,打开编程软件,首先从指令树的位逻辑中选择一个常开触点,拖放到程序编辑器的程序段1中,输入地址SM0.0,在指令树整数计算选项中拖动整数相减指令到刚刚添加的常开触点后面,在IN1处输入地址VW0,在IN2处输入数值6400,在OUT处输入地址VW2。


640.jpg

添加整数相减指令

 

单击工具栏插入向下垂直线按钮,产生一个程序分支。因为乘法运算的结果可能超出十六位整数的范围,所以需要使用整数相乘得到双整数指令,插入该指令,在IN1处输入地址VW2,在IN2处输入数值100,在OUT处输入地址VD4。


640.jpg

添加整数相乘得到双整数指令

 

再次单击工具栏插入向下垂直线按钮,继续产生程序分支。因为VD4是双整数,所以需要双整数相除指令,插入该指令,在IN1处输入地址VD4,在IN2处输入数值25600,在OUT处输入地址VD8。这样,一个用整数运算指令编写的模拟量运算程序就编写完成了。


640.jpg

添加整数相除指令

 

编译并下载程序到S7-200 SMART PLC。单击菜单中的下载按钮,在打开的通信对话框中选择要访问的CPU并点击确定进行下载,下载完成后关闭对话框。在线查看程序运行情况。单击PLC菜单下的RUN按钮运行项目,单击调试菜单下的程序状态按钮在线观察程序的运行情况,在状态图表中输入地址VW0,格式为有符号整数,再输入VD8。单击状态图表的工具栏图表状态按钮,可以看到VW0和VD8的当前值。


640.jpg


在线查看程序运行情况

 

在VW0的新值列中输入20000,单击状态图表的工具栏写入按钮,则VW2变为相应的值,此时VD8自动计算为相应的数值。


640.jpg


自动计算相应的数值

 

本篇关于西门子S7-200 SMART整数运算指令的应用实例就讲解完了,下篇我会继续讲解S7-200 SMART的有关内容,欢迎关注!

相关文章
|
8月前
|
异构计算
【数字电路】Y图 | 逻辑操作符 | 布尔函数 | Combinational systems
【数字电路】Y图 | 逻辑操作符 | 布尔函数 | Combinational systems
37 0
|
2月前
火山中文编程(PC) -- 变量与常量
火山中文编程(PC) -- 变量与常量
29 1
西门子S7-1200编程实例,移位和循环移位指令如何使用?
西门子S7-1200的移位指令包括左移位指令和右移位指令,循环移位指令包括循环左移位指令和循环右移位指令。
西门子S7-1200编程实例,移位和循环移位指令如何使用?
|
12月前
运算符(较为基础,基础篇)(二)
运算符(较为基础,基础篇)(二)
47 0
|
12月前
运算符(较为基础,基础篇)(一)
运算符(较为基础,基础篇)(一)
48 0
|
C语言 Perl
西门子S7-200 SMART编程实例,整数运算指令如何使用?
本节我们来学习西门子S7-200 SMART整数运算指令,并通过一个实例还讲解整数运算指令如何使用。S7-200 SMART的整数运算指令主要包括加、减、乘、除运算指令和递增、递减运算指令。
西门子S7-200 SMART编程实例,整数运算指令如何使用?
|
C语言 Perl
西门子S7-200 SMART位逻辑指令概述及应用举例
本篇文章我来带领大家学习西门子S7-200 SMART的位逻辑指令。位逻辑指令是PLC编程中最基本、使用最频繁的指令,按不同的功能和用途具有不同的形式,总的来说可以分为下述几大类:标准位逻辑指令、置位/复位指令、立即位逻辑指令、其他位逻辑指令。
西门子S7-200 SMART位逻辑指令概述及应用举例
|
C语言 Perl
西门子S7-200 SMART位逻辑指令、逻辑运算指令如何使用?
位逻辑指令是PLC编程中最基本、使用最频繁的指令,按不同的功能和用途具有不同的形式,总的来说可以分为下述几大类:标准位逻辑指令、置位/复位指令、立即位逻辑指令、其他位逻辑指令。
西门子S7-200 SMART位逻辑指令、逻辑运算指令如何使用?
|
C语言 Perl
西门子S7-200 SMART编程实例,逻辑运算指令如何使用?
本节我们来介绍一下西门子S7-200 SMART逻辑运算指令。
西门子S7-200 SMART编程实例,逻辑运算指令如何使用?
西门子S7-200 SMART逻辑运算指令及应用实例
本篇我们来介绍一下西门子S7-200 SMART逻辑运算指令。S7-200 SMART逻辑运算指令按照操作类型可以分为四种:取反指令、逻辑与指令、逻辑或指令和逻辑异或指令。如下图所示,四列对应四种操作类型:
西门子S7-200 SMART逻辑运算指令及应用实例

热门文章

最新文章