三菱FX3U与台达DT330温控器通讯+输出启停(SL3U-2) 功能:通过昆仑通态触摸屏,三菱FX3U 485BD板,实现对台达DTK温控器 设定温度值,读取实际温度,控制输出启停 器件:三菱FX3U PLC,FX3U 485BD,台达DT330温控器,昆仑通态TPC7022NI触摸屏。 说明:的是程序,带注释,带温控器手册,接线,参数设置都提供。 通讯稳定可靠,实用有效。
搞工控的兄弟们都懂,设备之间通讯这事说大不大,说小能折腾死人。最近刚搞完三菱FX3U和台达DT330温控器的485通讯项目,实测稳定运行两个月没掉过链子,这就把干货掏出来。
硬件接线先整明白
485通讯最怕线接反,台达DT330的RS485端子是A+(485+)、B-(485-),三菱FX3U的485BD板对应SDA接A+,SDB接B-。重点来了——必须并接120Ω终端电阻!特别是通讯距离超过5米时,不然数据包反射能让你怀疑人生。
![接线示意图]
(此处想象有个手绘接线图,A+对A+,B-对B-,终端电阻跨接在两端)
温控器参数设置
DT330的通讯参数藏在菜单里:
- 通讯地址设成1(默认是1,多个设备别重复)
- 波特率19200(实测这个速率最稳)
- 数据位8,停止位1,无校验
- 模式选Modbus RTU(别手滑选成ASC模式)
三菱PLC程序关键点
先上初始化代码:
MOV H0C96 D8120 // 通讯格式:19200/8/N/1 RS D100 K8 D200 K20 // 接收缓存从D200开始,长度20这行配置最关键,D8120的值换算成十六进制0C96对应的是波特率19200+8数据位+无校验+1停止位,搞错这个直接通讯瘫痪。
温度读取程序解剖
读温度用Modbus 03功能码,温控器实际温度存在地址0001H:
MOV K1 D100 // 设备地址 MOV H03 D101 // 功能码 MOV K0 D102 // 起始地址高位 MOV K1 D103 // 起始地址低位 MOV K0 D104 // 寄存器数量高位 MOV K1 D105 // 寄存器数量低位 MOV H740D D106 // CRC校验低位0D MOV H47 D107 // CRC校验高位74这里有个坑——台达的寄存器地址要+1转换。手册写的是地址0001,实际发送时要发0000。CRC计算推荐用三菱自带的CRC指令,手动算容易翻车。
启停控制骚操作
控制输出用05功能码,线圈地址0000H:
MOV K1 D110 // 设备地址 MOV H05 D111 // 功能码 MOV K0 D112 // 线圈地址高位 MOV K0 D113 // 线圈地址低位 MOV HFF00 D114 // 强制ON MOV HCBA8 D115 // CRC校验重点注意:FF00表示ON,0000表示OFF。调试时建议先用调试助手发十六进制命令测试,确认温控器有反应再写PLC程序。
昆仑通态屏配置秘籍
在触摸屏上做数值输入元件时,绑定PLC的D寄存器地址,记得做标度转换。比如温控器温度是16位整数,但实际值可能是10倍标度(比如250表示25.0℃),在屏里直接设置/10显示,比在PLC里做运算省事。
避坑指南
- 通讯超时最少设300ms,实测台达响应速度在50-200ms波动
- 连续读取多个寄存器时,间隔时间加50ms防止总线冲突
- 干扰大的现场建议用屏蔽双绞线,接地线单独接不要和动力线共地
这套方案经过三个现场验证,从注塑机到烘干线都扛得住。最后提醒:温控器参数设置完成后务必断电重启!台达有些参数是要重启才生效的,别傻等着程序自动生效。