首页 理论教育 仿真实验:数学运算指令应用(实训十八)

仿真实验:数学运算指令应用(实训十八)

时间:2023-06-20 理论教育 版权反馈
【摘要】:整数四则运算指令有16位和32位两种,应根据指令的输入、输出数据可能的最大值选用适当的指令。表3-11 浮点数数学运算指令4.浮点数数学运算指令应用的仿真练习浮点数三角函数指令的角度是以弧度为单位的浮点数。图3-81 浮点数运算程序打开PLCSIM,将程序下载到仿真PLC,将仿真PLC切换到RUN-P模式。输入0.0~360.0之间的任意实数,观察MD34中的运算结果是否与计算器计算的相同。

仿真实验:数学运算指令应用(实训十八)

数学运算指令分为整数运算指令和浮点数运算指令。

1.整数数学运算指令

整数数学运算指令见表3-10。

3-10 整数数学运算指令

978-7-111-31641-1-Chapter03-115.jpg

2.整数数学运算的仿真实验

改用整数数学运算指令实现(3-1)式的压力运算:

P=(10000×N)/27648 (kPa) (3-2)

在运算时一定要先乘后除,否则会损失原始数据的精度。整数四则运算指令有16位和32位两种,应根据指令的输入、输出数据可能的最大值选用适当的指令。

假设用于测量压力的AI模块的通道地址为PIW320。模拟量量程时A/D转换后的数字N的值为27648,乘以10000以后乘积可能超过16位整数的允许范围,因此应采用双整数的乘法指令MUL_DI。式(3-2)中的被除数是双整数,因此应采用双整数除法指令DIV_DI。

首先应使用指令I_DI将PIW320中的原始数据(16位整数)转换为双整数(见图3-80),双字乘、除法指令中的常数应使用“L#”开始的32位的双整数常数。

978-7-111-31641-1-Chapter03-116.jpg

图3-80 压力测量值计算程序

图3-80与图3-79中的程序的调试方法相同。

3.浮点数数学运算指令

浮点数(实数)的数据类型为REAL,浮点数数学运算指令见表3-11。浮点数四则运算指令对累加器1和累加器2中的32位IEEE格式的浮点数进行运算,运算结果在累加器1。

3-11 浮点数数学运算指令(www.xing528.com)

978-7-111-31641-1-Chapter03-117.jpg

4.浮点数数学运算指令应用的仿真练习

浮点数三角函数指令的角度是以弧度为单位的浮点数。图3-81的MD30中的角度值是以度为单位的浮点数,使用三角函数指令之前应先将角度值乘以π/180.0(0.01745329),转换为弧度值,然后用SIN指令求角度的正弦值。

978-7-111-31641-1-Chapter03-118.jpg

图3-81 浮点数运算程序

打开PLCSIM,将程序下载到仿真PLC,将仿真PLC切换到RUN-P模式。将30.0输入MD30,观察MD34中的计算结果是否是0.5。输入0.0~360.0之间的任意实数,观察MD34中的运算结果是否与计算器计算的相同。

5.数学运算指令的仿真练习

某温度变送器的量程为-100℃~500℃,输出信号为4~20mA,某模拟量输入模块将0~20mA的电流信号转换为数字0~27648,设转换后得到的数字为N,求以0.1℃为单位的温度值。

单位为0.1℃的温度值-1000~5000对应于数字量5530~27648,由图3-82给出的比例关系可列出下式:

978-7-111-31641-1-Chapter03-119.jpg

978-7-111-31641-1-Chapter03-120.jpg

图3-82模拟量与转换值的关系

经数学运算求出T的计算公式为

978-7-111-31641-1-Chapter03-121.jpg

根据上式编写出温度计算程序,打开PLCSIM,将程序下载到仿真PLC,将仿真PLC切换到RUN-P模式。用PLCSIM设置输入N的值分别为5530和27648,观察输出T是否为-1000和5000。设置N为某个中间值,观察输出T是否与计算器算出的相同。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈