如何计算幂、指数、根、多项式、对数、线性值,如何将三角函数转换为度数计算?
说明:
以下提供了一些示例程序,涵盖以下计算功能:
- 幂、指数、平方根、多项式、对数函数计算
- 三角函数转换为度数计算
- 线性值计算
- 将不同的数学函数功能块映射到控制器
1. 幂、指数、根、多项式、对数的计算功能
在 STEP 7 中,只能使用以 e (e = 2.7182818...) 为底数的幂(EXP 指令)。也可以结合自然指数和自然对数(LN 指令)来计算任意数的幂(例如,10 的 X 次方或 2 的 X 次方)。唯一的限制是底数不能为 0。LN 指令中输入 0 没有定义,使用 0 为底数会导致不正确的计算结果。EXP 和 LN 指令的数学公式定义如下:
图 01
图 01 为通用求幂的公式,使用 STEP 7 编写的代码如下:
图 02
注意:
幂的值和输入的值必须为 32 位浮点数,并且符合 "ANSI/IEEE 标准 754-1985, IEEE 二进制浮点算术标准"。
2. 三角函数转换为度数
在 STEP 7 中使用三角函数正弦、余弦和正切时,必须使用弧度(0 到 2π)定义角度值。角度值必须为浮点数,并存储在累加器 1 中。计算结果再次存储在累加器 1 中。
角度值通常为度数(0 到 360 度)。在 STEP 7 中,必须转换为弧度值。两者为比例关系,180 度对应于 π (3.141593...)。
- 弧度 = 角度 π / 180
- 角度 = 弧度 π / 180
1. FC1:角度值从度数转换为弧度值。
- 输入参数:"度数" 数据类型为:REAL
- 输出参数:"弧度值" 数据类型为:REAL
2. FC2:角度值从弧度值转换为度数。
- 输入参数:"弧度值" 数据类型为:REAL
- 输出参数:"度数" 数据类型为:REAL
函数 FC1 和 FC2 在 OB1 中调用。如果开始位 I1.0 出现上升沿,则调用 FC1;如果开始位 I1.1 出现上升沿,则调用 FC2。
3. 计算线性值
通过坐标的两个点 (x0, y0) 和 (x1, y1) 可以确定线性特征。在横坐标上定义 X 参数的值,函数计算 Y 坐标值。输出参数 Y 为整数类型,取值范围为 -27648 到 +27648。
图 03
点 P 的坐标值通过以下公式计算:
- y = ((y1-y0) / (x1-x0)) (x-x0) + y0
图 04