杰控组态自定义串口通讯的实际经验
一、现场设备
- PCD-D8000温控仪表通讯通信设置:9600,N,8,1;
- 采用Modbus RTU协议。
- 温度测量值变量地址 0X0007
- 温度设定值变量地址 0X0009
二、设备数据表
基本应用设备通讯【4】设备数据表 中, 新建 设备号。
- 输入名称COM5_WD1
- 选择通讯串口COM5
- 点击串口通讯参数按钮,设置串口通讯参数。选择9600,8,无校验,1。选择500ms轮询间隔。
-
增强选项选“D1单元控制读”
三、在“发送数据”中输入
%FILE:com5_set_wd1.txt
- 表示发送的命令从 杰控目录下的com5_set_wd1.txt读取。
-
返回指令读取7个字节。
四、建立全局脚本及策略
五、脚本程序
On Error Resume Next
x=RunSys.GetVarValue(AR,"SET水箱温度设定",-1)*10
RunSys.SetVarValue VA,"%水温",-1,x
If x<=255 Then
s=RunSys.ITXS(x)
t="01 06 00 09 00 "+Left(s,2)
Else
s=RunSys.ITXS(x)
t="01 06 00 09 "+Left(s,2)+" "+Right(s,2)
End If
y=RunSys.GetCRCValue(t,0)
t=t+" "+y
RunSys.SetVTtext "测试代码",-1,t
RunSys.SetVTtext "%测试代码",-1,t
'打开串口
'RunSys.OpenComPort 5,9600,8,1,0,100
'RunSys.SendToComPort 5,7,t
'写字符串到文件 com5_Set_wd1.txt中
bValue=TxtFileObj.OpenFile("C:\FameView\MyFile\com5_Set_wd1.txt")
If bValue=1 Then
TxtFileObj.WriteFile t,0
TxtFileObj.CloseFile
End If
RunSys.SetDevTableByte 1,39,39,2
网友评论