实际OPCServer使用(450M,中文,破解时间限制):KEPServer V6,百度网盘,密码: ykj2
本文为Java实现OPC通信的一部分
线形变化型
RAMP(Rate, Low Limit, High Limit, Increment)
Rate:变化率,单位毫秒
Low Limit:下限值
High Limit:上限值
Increment:变化量
举例:
RAMP(120, 35, 100, 4)
从35 增长到100,每120毫秒增长4。
RAMP(300, 150.75, 200.50, -0.25)
从200.50降低到150.75,每300毫秒减少0.25。
随机变化型
RANDOM(Rate, Low Limit, High Limit)
Rate:变化率,单位毫秒
Low Limit:下限值
High Limit:上限值
举例:
RANDOM(30, -20, 75)
在-20和75之间随机变化,每30毫秒变化一次。
三角函数型
SINE(Rate, Low Limit, High Limit, Frequency, Phase)
Rate:变化率/变化周期,单位毫秒
Low Limit:下限值
High Limit:上限值
Frequency:三角函数频率
Phase:三角函数偏移量
注意:频率(Frequency)的最大有效值是5Hz,有效范围是从0.001到5赫兹。偏移量(Phase)取值范围在0.0至360.0之间。为了得到一个更好的正弦输出,变化率(Rate)应该至少比期望频率快一倍。比如频率(Frequency)为5赫兹的正弦曲线,其周期是200毫秒,那么变化周期(Rate)的值最大只能设为100毫秒。在这类函数中,变化周期的取值范围是10-1000毫秒。
举例:
SINE(10, -40, 40, 2, 0)
以2赫兹的频率在-40和40 之间进行正弦变化,偏移量为0
用户自定义型
USER(Rate, User Value1, User Value2, User Value3,…User ValueN)
Rate:变化率,单位毫秒
User Value1….ValueN:用户自定义的值,可以有多个
举例:
USER(250, Hello, World, This, Is, A, Test)
以250毫秒的频率循环显示Hello、World、This、Is、A、Test中的一个单词。
USER(50, 1,1,0,1,0,1,0,0,1,1,1,0,0,0)
以50毫秒的频率循环显示后面的1、0。
需要注意的是上面几种函数创建的Tag都是只读(ReadOnly)类型的,是不能写入的。
创建自己需要的标签
有了上面的函数我们可以根据自己的需要创建不同类型的标签。
RANDOM(200, 10.0, 40.0)模拟室内温度
RANDOM(200, 30.0, 90.0)模拟室内湿度
USER(1000, 1,1,0,1,0,1,0,0)模拟开关比变化量
RAMP(5000, 0, 1000, 1)模拟人员进入数量
网友评论