西门子1200与台达DT330温控器通讯程序(XMZ1200-4) 功能:实现西门子1200 PLC对台达DT330温控器进行485通讯控制,在触摸屏上设定温度,读取温度 器件:西门子1200 1214DC/DC/DC.昆仑通态TPC7022NI,西门子KTP700 Basic PN,台达DT330温控器。 说明:的是带详细注释西门子触摸屏PLC设置和温控器设置,接线说明书。 附送昆仑通态触摸屏程序
一、项目背景与功能概述
在自动化控制领域,不同设备间的稳定通讯至关重要。本次项目旨在实现西门子1200 PLC与台达DT330温控器的485通讯控制,同时借助触摸屏完成温度设定与读取操作。具体功能上,操作人员能在触摸屏上便捷设定目标温度,PLC通过通讯获取台达DT330温控器实时测量的温度数据,并反馈至触摸屏显示。
二、硬件准备
- 西门子1200 1214DC/DC/DC:作为核心控制单元,负责逻辑运算与设备通讯协调。
- 昆仑通态TPC7022NI 与西门子KTP700 Basic PN:两款触摸屏提供人机交互界面,方便操作人员设定参数和查看数据。
- 台达DT330温控器:实现温度精确测量与控制。
三、硬件接线
- 西门子1200与台达DT330温控器485通讯接线
- 在西门子1200侧,找到其485通讯端口,通常为PORT1。将其1号引脚(RS485+)连接到台达DT330温控器485通讯接口的A端。
- 西门子1200的2号引脚(RS485 -)连接到台达DT330温控器485通讯接口的B端。同时,为保证通讯稳定性,建议在485总线上添加120Ω的终端电阻,连接在A和B之间。
- 触摸屏与西门子1200的连接
- 昆仑通态TPC7022NI通过以太网与西门子1200连接,只需将网线一端插入TPC7022NI的网口,另一端插入西门子1200的以太网口。
- 西门子KTP700 Basic PN同样通过以太网与西门子1200相连,接线方式与昆仑通态类似。
四、西门子1200 PLC程序编写
- 初始化部分
OB1
// 定义变量
Static:
Temp_Setpoint : Real; // 触摸屏设定温度变量
Temp_Actual : Real; // 实际测量温度变量
Comm_Error : Bool; // 通讯错误标志位
End_Static
// 初始化485通讯参数
MB_COMM_LOAD_DB(
COMM_PORT := 1, // 使用PORT1口
BAUD := 9600, // 波特率9600
PARITY := 0, // 无校验
DATA_BITS := 8, // 8位数据位
STOP_BITS := 1, // 1位停止位
RTS_ON_DLY := 0,
RTS_OFF_DLY := 0,
RTS_MODE := 0,
DONE =>,
ERROR =>,
STATUS =>
);
这部分代码主要完成变量定义以及485通讯参数初始化,为后续通讯做准备。MBCOMMLOAD_DB指令设置了通讯端口、波特率、校验等关键参数。
- 读取温度数据
OB1
MB_MASTER_DB(
REQ := TRUE, // 触发读取请求
MB_ADDR := 1, // 台达DT330温控器地址设为1
MODE := 3, // 读保持寄存器模式
DATA_ADDR := 256, // 温度数据寄存器地址
DATA_LEN := 2, // 数据长度2个字节
DATA_PTR := P#Temp_Actual, // 数据存储指针指向实际温度变量
DONE =>,
ERROR => Comm_Error,
STATUS =>
);
这里使用MBMASTERDB指令从台达DT330温控器读取温度数据。通过设置MODE为3,表示读保持寄存器模式,DATAADDR**指定温度数据所在寄存器地址,读取的数据存储在Temp Actual变量中。如果通讯出现错误,Comm_Error标志位会置1。
- 写入设定温度
OB1
MB_MASTER_DB(
REQ := Rising_Edge_Setpoint, // 触摸屏设定温度有变化时触发
MB_ADDR := 1,
MODE := 16, // 写多个保持寄存器模式
DATA_ADDR := 256,
DATA_LEN := 2,
DATA_PTR := P#Temp_Setpoint, // 设定温度变量指针
DONE =>,
ERROR => Comm_Error,
STATUS =>
);
当触摸屏设定温度发生变化(通过上升沿检测RisingEdgeSetpoint),MBMASTERDB指令以写多个保持寄存器模式(MODE为16)将设定温度Temp_Setpoint写入台达DT330温控器对应寄存器。
五、西门子触摸屏设置
- 变量关联
在西门子WinCC flexible软件中,打开KTP700 Basic PN的项目。创建两个变量,一个与PLC中的TempSetpoint**关联用于设定温度输入,另一个与Temp Actual关联用于显示实际温度。
- 画面设计
绘制两个输入输出域,分别绑定上述两个变量。设置输入输出域的显示格式为实数,精度根据需求设定。同时添加一些提示文本,如"设定温度""实际温度",使界面更友好。
六、台达DT330温控器设置
- 通讯地址设置
进入台达DT330温控器的设置菜单,找到通讯相关选项,将地址设为1,与PLC程序中设置的地址一致。
- 波特率等参数设置
同样在通讯设置中,设置波特率为9600,无校验,8位数据位,1位停止位,与PLC通讯参数匹配。
七、昆仑通态触摸屏程序附送
昆仑通态触摸屏程序主要通过MCGS软件编写。在MCGS中,首先建立与西门子1200的以太网连接。然后创建变量,分别关联PLC中的TempSetpoint**和Temp Actual。在画面设计上,与西门子触摸屏类似,创建输入框用于设定温度,输出框用于显示实际温度,并添加相应文字说明。昆仑通态触摸屏凭借其丰富的图形界面组件和便捷的开发环境,能快速实现项目所需的人机交互功能。

通过以上详细的硬件接线、PLC程序编写、触摸屏与温控器设置,就能成功实现西门子1200与台达DT330温控器的485通讯控制以及温度的设定与读取功能,在工业自动化控制场景中发挥重要作用。




