- 4
- 0
- 约3.13千字
- 约 4页
- 2022-03-09 发布于四川
- 举报
AS 中使用对时功能
一、使用系统自带SNTP 对时功能 (只支持SG4 的CPU ):
1) AS 2.7:
PP320 Client 端:
在Software 界面中, CPU 上右键选择“Properties (属性)”,弹出系统软件属性 (System Software Properties )
配置页:
点击“Time Synchronisation (时间同步)”标签,在 “Active SNTP client ”前打勾,然后选择“IP Address”,在
右侧输入目标PCC 的IP 地址,然后在下方可配置同步的时间间隔 (最短时间间隔为1 分钟)。
PCC Server 端:
在PCC 端,同样打开时间同步标签页,在“Active SNTP server ”前打上勾即可。
2) AS 3.0:
PP320 Client 端:
同样选择CPU 的属性,弹出属性配置页。
选择“Active SNTP client ”,这时可以设置4 个目标PCC 的IP 地址,可按需要填,一般填第一个即可。对时间隔
同样最小1 分钟。
PCC Server 端:
只需在时间同步页面中选择Active SNTP server 即可。
注意:
1)非SG4 的CPU 没有时间同步功能,没有“Time Synchronisation ”配置页,需要编写程序来实现时间同步功能;
2)并没有测试过PP320 启动时立即开始SNTP 同步,所以如果PP320 不是马上同步,启动的第一次对时也可以
通过编程来完成。
二、使用GetTime 和SetTime 来实现时间同步 (使用ST 编程):
程序中使用DTStructureGetTime 和DTStructureSetTime 函数。
PP320 Client 端:
设置变量:
变量名 类型 说明
timeSynAskSend BOOL 是否请求数据
dtTimeGet DTStructure 时间数据
timeSynAnswerGet BOOL 是否接收到数据
DTStructureSetTime_1 DTStructureSetTime 系统时间设置函数
(*Initial Program*)
timeSynAskSend := 1;
i := 0 ;
(* Cyclic Program*)
IF timeSynAnswerGet THEN
DTStructureSetTime_1.enable:=1;
DTStructureSetTime_1.pDTStructure:=ADR(dtTimeGet);
DTStructureSetTime_1();
timeSynAnswerGet := 0;
timeSynAskSend := 0;
END_IF
i := i + 1;
IF i = 60 THEN
timeSynAskSend := 1; (*本程序执行60 次,执行一次同步,按实际情况自行调整*)
ENF_IF
PCC Serve 端:
设置变量:
变量名 类型 说明
timeSynAskGet BOOL
原创力文档

文档评论(0)