逻辑输入和输出组态信息定义

上传人:ji****n 文档编号:47423531 上传时间:2018-07-02 格式:PDF 页数:15 大小:271.87KB
返回 下载 相关 举报
逻辑输入和输出组态信息定义_第1页
第1页 / 共15页
逻辑输入和输出组态信息定义_第2页
第2页 / 共15页
逻辑输入和输出组态信息定义_第3页
第3页 / 共15页
逻辑输入和输出组态信息定义_第4页
第4页 / 共15页
逻辑输入和输出组态信息定义_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《逻辑输入和输出组态信息定义》由会员分享,可在线阅读,更多相关《逻辑输入和输出组态信息定义(15页珍藏版)》请在金锄头文库上搜索。

1、TAC、DUT 系列温控模块逻辑输入和输出组态信息定义 该说明适用于 DUT4000 系列 CONM2.6 版本和 DUT6000 系列 CONM4.3 版 本,两者的差别是:TAC3000 系列有 4 路 DI 输入 IN0IN3,模块内有 5 位 DIP 开关用于设置模块地址, 通讯协议由波特率字节选择。 DUT4000 有一位 DI 输入, 读取数据位在 D3 中,其余位为 0,模块的通讯协议由模块内 4 位 DIP 选择。 DUT4000 系列输出为直接光耦输出,ON 时为+24V。DUT6000 系列的输出为集 电极开路(OC)输出,ON 时为 0V。 TAC3000 功能上 DUT

2、6000 基本相同。 CONMV46 与 CONMV43 的差别是改进了串行通讯,发送时 2 位停止位, 接收时一个停止位。可以适应不同停止位通讯要求。 CONMV47 与 CONMV46 相比,由 IN0 的引脚电平控制温度控制,如果设 置成外启动控温,则 IN0 为 ON 时开始控温,OFF 时停止控温。CONMV46 为 ON 一次启动控温,不能停止。 CONMV49 改动:1、取消写控制参数重新启动。2、写 30H 为“1”时重新 启动。3、通道控制选择字节写入“0”时关闭通道控温。 V51 改动:DI 读命令刷新口线。 (2005-1-6) 由 DISEL1 的高字节控制串口无条件输

3、出,为 0,请求输出; 非 0,无条件输出。 V52 改动:DeviceID=“CCITAC3000CONM”。 (2005-1-7) 将 3 号功能读取测量数据和开关状态。 2 号功能可以连续读取开关量输入和输出。 改进了模块工作方式控制 DISEL 的改动死机现象。 V54 改动: (1)参数自整定功能。 (2)MODBUS 协议地址连续与不连续选 择(2005-2-19) 。 (3)写入上下限报警的最后通道的模块控制参 数,程序自启动。 V60 改动:从 V54 版本上改动 EEPROM 写入时冲堆栈 BUG。 (2005-4-17) V61 改动:开关量输入逻辑验证。 (2005-5-

4、24) V62改动: 将DO0DO7及STB开关量输出可以作为开关量输入。 (2005-5-25) 改动每次上电过渡状态。 (2005-5-26) V63 改动:控温参数整定后不用重新启动,置成 PID 控温方式。 V64 改动:将 S 热电偶温度传感器重新线性化,改进 S 热电偶测温精度。把 线性化程序升级为 WIN 程序。 (2005 年 8 月 3 日) V65 修改:单个逻辑输出错误,将 ACC.5 的输入改成输出,将 ACC.7 改成 输入取反和不取反。 (2005-8-21) 控制参数定义控制参数定义 对 9 个输出量 DO 选择,除用调功输出完成控制功能外,还可以选择 AI 上下

5、限和 4 位开 关量输入及 DO0DO7STB 之间的逻辑操作后输出。最多可以选择 6 个不同输入运算。 每个开关量输出由以下结构体定义相应的控制参数。 struct int CtrlSel /控制选择变量,低字节有效,高字节为 0 int SampleT /采样时间 Ts,以 80mS 为单位,低字节有效,高字节为 0 int Set_Val /设置控制温度值,整型数,乘以 10 的温度值 int SeriesD0 /PID 比例系数 P,整型数 int SeriesD1 /PID 积分时间 Ti,以 80mS 为单位 int SeriesD2 /PID 微分时间 Td,以 80mS 为单位

6、 int CtrlArea /起控范围,以度为单位 Out9 控制变量选择 CtrlSel 定义如下: CtrlSel D7 D6 D5 D4 D3 D0 0 控制算法 输入的 AI 号 表表 1 控制算法选择控制算法选择: D6 D5 D4控制算法 表达式 0 0 0 不控制 0 0 1 PID 控制 U=P*Ei+(Ts/Ti)*SUM(Ei)+(Td/Ts)*(Ei-E(i-1) (起控范围内) 0 1 0 模糊控制 控制表查找索引 Index=P*Ei+Ti*(Ei-E(i-1) 范围:-7+7 0 1 1 增量 PID Ui=U(i-1)+ P*(Ei-Ei-1)+ Ei*Ts/ T

7、i+ (Ei-2Ei-1+Ei-2)*Td/Ts 1 0 0 报警输出 1/cycle-恒温,1/3 cycle-加热, 2/3 cycle-预警,cycle-1/cycle-报警 1 1 1 参数整定 整定 PID 控制参数 D3D0 用来选择 8 路模拟输入(AI)通道。 在 CtrlSel 变量的高字节定义启动顺序,如果是 0,则上电后就启动运行,当 0 的都加 热完成进入恒温状态后启动后面的设置。 变量 SampleT 的高字节定义运行相位,该值是开始运行的第一个周期值,后面的周期 是由 SampleT 的低字节定义。 当写入 CtrlSel 和 SampleT 两个参数后,程序重新初

8、始化。其他参数写入不初始化。 V49 版本取消了写控制参数初始化程序。 V54 版本将初始化功能加上了。 V62 版本有初始化功能。 参数整定方法: 例如 SV=200 从冷态开始 PV=25: 1。由于 SV-PV0 所以 使控温继电器吸合,开始加热,温度逐渐升高。 2。当上升到 SV=PV0 时,使控温继电器吸合,开始加热,但同样的原因温度还会 继续下降一会然后才会逐渐升高。 4。反复如上的步骤几个循环,目的是为找到稳定的振荡波形。一般情况下,第一个 波峰由于从冷态开始上冲太大不予采信,第一个波谷也同样误差较大被排除。 5。可以从第二个波峰开始记录第一个最高温度,同时为记录时间清零时间计数

9、器。 6。从第二个波谷开始记录第一个最低温度,同时读取时间计数器以得到这个振荡波 形的周期值(注意是 T/2)。 7。有了波峰温度,波谷温度,振荡周期就可以计算出 PID 数值了。 8。I 和 D 最简单,IT(振荡波形的周期),而 D=I/4。这两个数据在我所有的两种样机 中都是相同的。 Tcount=Tmax-Tmin,最大值点到最小值点的时间 P=7.643*SamTime/(Ymax-Ymin) Ti=Tcount*SamTime/P Td=0.25*Tcount*SamTime*P 参数整定由于整定完成重新初始化,所以不支持多通道参数同时整定。 整定温度为设置温度(0.1为单位)减去

10、起控范围(以为单位) 。 如果选择开关量输入及 AI 上下限作为输入对每一位输出进行逻辑组态,则定义如下: CtrlSel D7 D6 D5 D4 D3 D2D1D01 1 上 限 下 限 取 反 与 或下 与上 与D7=1 开关量输出选择(D7=0 控制参数选择) D6=1 8 路模拟输入上限和下限报警全部参与逻辑输出 (由一个字节逻辑选择字和屏蔽字组合决定输出逻辑) D5=1 AI 上限报警参与运算 D4=1 AI 下限报警参与运算 D3=1 输出取反 D3=0 输出不变 D2=0 上限、下限之间“或”运算 D2=1 上限、下限之间“与”运算 D1=0 各 AI 下限报警之间“或”运算 D

11、1=1 各 AI 下限报警之间“与”运算 D0=0 各 AI 上限报警之间“或”运算 D0=1 各 AI 上限报警之间“与”运算 当 D6=1 时(输入各通道全部参与运算) ,SampleT 的低字节为屏蔽字节的低字节为屏蔽字节。 当 D6=0 时,CtrlSel 中的 D3D0 为参与运算的输入字节数(最多 6 个逻辑) D7 D6 D5 D4 D3 D0 1 0 NC NC 输入的字节数NC 为没有使用。 在 CtrlSel 后,每个变量的低字节格式如下: D7 D6 D5 D4 D3D2D1D0输 入 取 反 与/ 或 输 出 取 反 选择输入 D4D0 选择输入: 07: AI 上限

12、815:AI 下限 1619:DI0DI3 2028:DO0DO7,STB D5 输出取反 0: 输出值直接参与运算 1: 输出值取反参与运算 D6 逻辑 0: 与前面进行或逻辑运算 1: 与前面进行与逻辑运算 D7 输入取反 0: 输入值不取反 1: 输入值取反 参与运算逻辑数最多为 6 级,由前向后运算,第一个逻辑字的 D6=0(逻辑或,用累加 方式运算,初始值为 0) 。 运行控制位(30H 和外输入温度控制选择)不影响逻辑运行。 外请求控温时(由 DISEL11FAH 寄存器选择) ,由外输入 IN0 的状态决定控温运行 和不控温运行,为 ON 时控温,OFF 时不控温。 在写入 DI

13、SEL1DISEL3 时和参数整定完成时重新启动模块(位地址 32H 置位控制模块 重新启动)。 写入控制参数和逻辑参数时,模块控制参数重新初始化,无需重新加电。 控制参数设置控制参数设置 控制参数,由 MODBUS 协议设置。控制参数只能写入一个寄存器或 7 个寄存器。其他 次数寄存器的写入不支持。 设置命令设置命令: AA1001XX00070ENNNNNNNNNNNNNNNNNNNNNNNNNNNNCCCC 其中:AA 为模块地址 10 为功能号 01XX 为起始寄存器号: 0102 写开关量输出 D0 的控制参数。 0114 写开关量输出 D1 的控制参数。 0126 写开关量输出 D

14、2 的控制参数。 0138 写开关量输出 D3 的控制参数。 014A 写开关量输出 D4 的控制参数。 015C 写开关量输出 D5 的控制参数。 016E 写开关量输出 D6 的控制参数。 0180 写开关量输出 D7 的控制参数。 0192 写开关量输出 STB 的控制参数。 0007 写入的寄存器数为 7 个 0E 写入的字节数是 14 字节 NN 为每个字节的十六进制值 CCCC 为 CRC-16 校验 设置命令响应设置命令响应: AA1012XX0007CCCC 其中:AA 为模块地址 10 为功能号 12XX 为起始寄存器号 0007 寄存器个数 CCCC CRC-16 校验 读

15、取控制参数命令:读取控制参数命令: AA0301XXLLLLCCCC 其中:AA 为模块地址 03 为功能号 01XX 为起始寄存器号: 0102 读开关量输出 D0 的控制参数。 0114 读开关量输出 D1 的控制参数。 0126 读开关量输出 D2 的控制参数。 0138 读开关量输出 D3 的控制参数。 014A 读开关量输出 D4 的控制参数。 015C 读开关量输出 D5 的控制参数。 016E 读开关量输出 D6 的控制参数。 0180 读开关量输出 D7 的控制参数。 0192 读开关量输出 STB 的控制参数。 LLLL 读取的寄存器数 CCCC 为 CRC-16 校验 读取

16、控制参数命令响应读取控制参数命令响应: AA03LLNN NNCCCC 其中:AA 为模块地址 03 为功能号 LL 读取数据字节数 NN 为数据 CCCC 为 CRC-16 校验 上下限设置上下限设置 DUT4000 系列控制模块有 8 个 AI 和 1 路 DI, 每个 AI 可以单独设置上限和下限报警值, DI 的上限报警低字节非 0 时,请求输出才有效。上下限定义由以下结构体定义: Struct int AIUpLmt /上限报警值 int AIDownLmt /下限报警值 int AIOut /保留字 AlarmValue9 其中: 结构体数组 AIUpLmt 和 AIDownLmt 分别定义 AI07 上下限报警值, AIOut 定义相对 报警值,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号