台达温控器接入 ThingsCloud
台达温控器接入 ThingsCloud
本例中,我们将分享如何将台达温控器 DTC 系列通过 DTU 接入 ThingsCloud,并实现以下目标:
- 采集当前温度和状态信息
- 可远程修改设备配置参数
- 搭建可视化看板
- 生成 App 设备面板
- 创建告警策略
关于温控器
包括台达温控器在内的大多数温控器,都支持多种热电阻或热电偶温度传感器,当温控器采集到当前环境温度后,它会将这个温度值(PV)与预设的目标温度(SV)进行比较。如果当前温度高于或低于目标温度,温控器会通过特定的输出方式,触发相应的加热或制冷设备来调整温度。当温度达到预设目标范围时,温控器会停止加热或制冷设备的工作,以节省能源和防止温度过度波动。
具体而言,温控器的工作原理可以细分为以下几个关键步骤:
温度采集:温控器使用输入传感器(如PT100热电阻或热电偶)持续监测当前的环境温度。不同传感器有不同的测温精度和响应时间。
目标温度设定:用户可以手动设定所需的目标温度,或通过自动控制系统设定不同时间段的目标温度。
温度比较与控制输出:温控器将当前温度与目标温度进行比较,依据偏差启动加热或制冷设备。如果当前温度低于设定值,温控器输出触发加热器开启;如果高于设定值,则触发冷却系统。
反馈调节:为了支持更高级的反馈调节,温控器通常支持PID(比例-积分-微分)控制算法,同时支持模拟量输出或脉冲信号输出,通过连续调节输出信号,减少温度波动,达到更稳定的控制效果。
本例中的 DTC1000R 温控器中,采用继电器输出,为了方便演示,我们用继电器输出控制两个指示灯。
通过 DTU 透传接入 ThingsCloud
台达温控器支持 RS485/Modbus RTU,可使用支持 RS485 的 DTU 快速连接到 ThingsCloud。ThingsCloud 是开放的物联网平台,几乎支持任何厂商的 DTU 接入,并内置了完善的 Modbus 协议支持。
如果您还不了解 DTU 和 Modbus 设备接入和数据通讯的基本操作,请务必先学习以下教程:
添加属性定义
首先,在温控器设备类型中,找到 功能定义,添加属性定义。
我们根据台达温控器的 RS485 Modbus 通讯手册,可以看到所有支持的寄存器信息,本例中我们实现了一些常用的寄存器数据采集和控制。
添加好的属性定义如下:
其中的控制方式,我们采用枚举数据类型,在控制台或 App 上控制时方便直接选择,如下图:
输出控制选择,也采用枚举数据类型,如下图:
配置 Modbus 寄存器
接下来,在温控器设备类型的 Modbus 配置中,设置以上属性对应的 Modbus 寄存器参数。记得确保设备类型的接入协议设置为 Modbus RTU 透传。
我们参考台达温控器 DTC 系列手册的 Modbus 寄存器表,如下图:
设备类型的 Modbus 寄存器设置如下:
记得开启 属性智能转换,并设置正确的自定义数据流标识符,自定义数据流用于云平台和 DTU 之间收发 Modbus RTU 报文,通常默认创建的自定义数据流标识符为 stream
,请您根据实际情况为准。
通过任务查询数据
在使用透传 DTU 接入时,Modbus 设备的数据需要从云平台下发查询指令。
我们来创建几个自定义数据下发的任务,选择 Modbus RTU 查询,如下图:
其中读取温度的任务,Modbus RTU 请求参数设置如下:
其它几个任务,只要对照寄存器手册,就可以举一反三。
保存任务后,我们可以手动点击单次运行任务,也可以在任务的定时选项中,设置定时时间间隔,例如 5 分钟,这样便可以每 5 分钟获得最新的数据。
查看数据
通过云平台的智能 Modbus 解析,在设备概要页面的属性中,我们可以实时看到设备最新上报的属性数据,如下图:
如果数据无法显示,可以在设备调试日志中排查故障,正常的设备消息日志如下图:
快速下发控制
在设备概要页面的属性面板中,我们可以对支持下发的属性,快速修改属性值完成下发,ThingsCloud 会自动转换为 Modbus RTU 指令通过 DTU 发送给温控器。
修改温控器的目标温度,如下图:
修改温控器的控制方式,如下图:
修改输出控制选择,如下图:
搭建可视化看板
利用 ThingsCloud 可视化看板,我们可以在3分钟内自行搭建一个设备数据和控制看板,如下图:
搭建过程非常容易,看板提供了几十种可视化组件,您可以选择设备属性作为数据源,并设置自定义的样式。
编辑 App 设备界面
接下来就是必不可少的 App 设备面板,方便我们随时随地在手机上查看设备最新状态,调整设备配置参数。
这个设备面板我们开启了分页功能,在顶部显示分页导航栏。我们一共使用到三个分页,首页用来展示当前温度和继电器输出状态,并且可以快速修改目标温度下发到设备。如下图:
在第二页中,展示了温度的历史趋势图表,以及继电器的变化时间历史,如下图:
在第三页中,放置了一些高级配置功能,包括温控器的控制模式,以及PID算法的参数。如下图:
完成编辑后点击保存,在 ThingsX App 上便可以实时生效。
告警通知
接着我们来为温控器设置云平台的告警规则和通知方式。
虽然温控器在本地实现了输出调节温度的功能,但是如果温度调节效果不佳,或者由于现场制热和制冷设备故障导致温度无法调节,怎么办呢?
我们可以利用 ThingsCloud 告警通知功能,设置一个温度上限,一旦温控器采集的温度超过预设的安全上限,平台就会触发告警规则,推送告警通知到指定的用户手机,例如短信、公众号通知、电话等。接收到超温告警,相关人员可以及时采取应对措施,如手动调整制冷设备或调整控制策略。
同时,平台还可以记录历史温度数据和告警日志,便于后续的分析和排查。
在 ThingsCloud 中创建告警规则非常容易,如下图:
在告警通知选项中,开启对用户的多种通知方式,如下图:
规则创建后,当温控器采集的温度超过上限时,触发了告警,如下图:
还可以看到告警历史消息,告警历史消息帮助用户发现设备潜在的风险和趋势。持续或频繁的告警可能意味着设备老化或环境条件变化,用户可以根据告警频率和内容进行预防性维护,避免设备损坏或重大故障发生。
另外,您还可以使用动态阈值功能,比如将温控器的目标温度设置为上限,如下图:
扩展篇:设置 PID 参数
为温控器使用 PID 控制方式时,需要不断迭代测试最佳的参数,通过 ThingsCloud 快速修改参数,大大节省设备调试时间。
这里介绍 PID 参数设置的一些基本概念。
Ti(积分时间常数)和Td(微分时间常数)是PID控制算法中的两个关键参数,它们与比例系数Kp一起构成了PID控制器的核心。
积分时间常数Ti:这个参数与误差累积的时间有关。在PID控制中,积分作用是为了消除系统的稳态误差,确保输出最终能够达到设定值。Ti的值越大,积分作用越弱,系统消除误差的速度越慢,但可以减少因积分作用引起的超调和振荡。反之,Ti的值越小,积分作用越强,可以更快地消除误差,但可能会导致系统稳定性下降。
微分时间常数Td:这个参数与系统偏差变化的速率有关。微分作用可以预测系统的未来行为,有助于减少系统的超调和振荡,加快系统的响应速度。Td的值越大,微分作用越弱,对快速变化的误差响应越慢。Td的值越小,微分作用越强,可以更快地响应误差的变化,但可能会放大噪声,导致系统对噪声敏感。
选择合适的Ti和Td数值通常需要根据系统的动态特性和控制要求进行调整。这个过程称为PID参数整定,可以通过经验试凑法、临界比例法、衰减曲线法等方法进行。整定过程通常包括以下步骤:
- 确定比例系数Kp:首先调整Kp,直到系统响应显示出适当的灵敏度,但不至于产生持续振荡。
- 调整积分时间Ti:在Kp设定好之后,逐步减小Ti的值,观察系统对误差的消除能力,直到系统显示出适当的稳定性和无误差能力。
- 调整微分时间Td:最后调整Td,以改善系统的动态响应,减少超调和振荡。Td的调整需要谨慎,以避免因过度放大噪声而影响系统性能。
在台达温控器的PID设置中,PB(Proportional Band,比例带)与Kp(比例增益)相关联,但两者的含义稍有不同。PB 是指比例带,表示偏差值占设定值的百分比范围。在这个范围内,控制器的输出是线性变化的;而 Kp 是比例增益,它直接表示输出响应对偏差变化的敏感度。
两者的关系为:Kp = 100 / PB。
因此,PB 越小,Kp 就越大,控制器对温度偏差的响应就越敏感;反之,PB 越大,Kp 就越小,响应会相对平缓。
整定PID参数是一个迭代的过程,可能需要多次调整和测试才能找到最佳的参数组合。在实际应用中,可能还需要考虑系统的非线性特性、死区、饱和等因素。
更多功能
了解 ThingsCloud 更多功能,请浏览: