参数
声明
数据类型
存储区
说明
AREA
Input
BYTE
I、Q、M、D
可以选择以下区域:
16#81:Input
16#82:Output
16#83:位存储区
16#84:DB
16#1:I/O 输入
DBNUMBER
Input
DINT、DB_ANY
I、Q、M、D
如果 AREA = DB,则为数据块数量,否则为“0”
BYTEOFFSET
Input
DINT
I、Q、M、D
待读取的地址
仅使用 16 个最低有效位。
RET_VAL
Output
位字符串
I、Q、M、D
指令的结果
是状态字的第1位。状态字(16 位):
0位—FC反 首先检查的位,位无法在用户程序中用L STW指令
进行描述和计算,由于其未在程序运行时更新
1位—RLO 先前的逻辑运算结果
2位—STA 状态,位无法在用户程序中用L STW指令进行计
算,由于其未在程序运行时更新
3位—OR 或,位无法在用户程序中用L STW指令进行计算,
由于其未在程序运行时更新
4位—OS 存储上溢
5位—OV 溢出
6位—CC0 条件代码
7位—CC1 条件代码
8位—BR 二进制结果
9—15位 未分配
你所使用的DB块中的数据是全局变量,即使你的条件从TRUE变成FALSE,“DB1”.结果1依然会保持住,因为没有被复位,除非你程序中添加:else “DB1”.结果1:=0;
而你在FB中定义的#条件2和#结果2是形式参数,是局部变量,只能在这个FB中使用,当#条件2复位时,#结果2无法保持自己的状态,除非换成全局变量或STATIC类型的变量
PID的例子:
建立工艺对象
1, 选择温度 压力等
2, 调整上下限, 根据输入电压, 电流值确定AD值对应关系 Input_PER 是整数输入, 就是没有经过模拟量标准化的量. Input是经过标准化的模拟量. PWM是PWM
3, 调整AD值和上下限
4, 建立OB30, 循环组织块
-------------------------博途的数据类型-------------------
PID手自动切换