1.通讯设置:HMIGXU5512的IP地址设置为设10.10.83.5 BMEP584040的IP地址设10.10.83.50 两者通讯方式为Modbus TCP
2.知识了解:BMEP584040的时钟系统字:
高八位 | 低八位 | |
%SW50 | 秒 | 周 |
%SW51 | 时 | 分 |
%SW52 | 月 | 日 |
%SW53 | 年 | 年 |
%S50设置
设置为 0:通过 PLC 实时时钟提供的日期和时间更新系统字 %SW50至 %SW53
设置为 1:系统字 %SW50至 %SW53 将不再更新,因此可以修改它们。
从1切换到0:将采用在字 %SW50至 %SW53中输入的值更新时钟
3.软件设置:
3.1 Control Expert Classic设置:
在Control Expert Classic把“工具”——“时间”——“时区”修改为(UTC)协调世界时,按默认值设置时间会有八小时偏差:
在Control Expert Classic建变量AA,类型为DT,地址为%MW40
使用RPTC_DT指令,把BMEP584040的时钟送到AA
3.2 Vijeo Designer basic设置:
按照下图建变量:
编辑画面:在“画图“——“数据显示”——“数值显示”拉出数值显示控件,显示格式修改为16进制,“年“关联内部变量nian、“月”关联内部变量yue、“日”关联内部变量ri,“时”关联内部变量shi,“分”关联内部变量“fen”,“秒”关联内部变量“miao”
在“动作”新建脚本,设置触发方式为“周期的”,属性为“每隔1秒重复”:
脚本内容:
//读出秒周%SW50,提取秒
int num1;
num1=miaozhoup.getIntValue();
int H1=0,L1=0;
H1=(num1&0xff00)>>8;
L1=num1&0xff;
miao.write(H1);
//读出时分%SW51,提取时与分
int num2;
num2=shifenp.getIntValue();
int H2=0,L2=0;
H2=(num2&0xff00)>>8;
L2=num2&0xff;
shi.write(H2);
fen.write(L2);
//读出月日%SW52,提取月日
int num3;
num3=yuerip.getIntValue();
int H3=0,L3=0;
H3=(num3&0xff00)>>8;
L3=num3&0xff;
yue.write(H3);
ri.write(L3);
//读出月日%SW52,提取
int num4;
num4=nianp.getIntValue();
nian.write(num4);
使用"对话表格"功能,选“33 设置终端时钟”,地址填%MW40
本例采用modbus TCP通讯,设置“低字优先”,勾选“IEC61131语法”:
4.调试
Control Expert Classic在线监视,在“PLC总线”——双击CPU——打开“动态显示”选项卡,查看或更新BMEP584040的日期和时间
观察触摸屏画面时间显示控件,与 BMEP584040保持一致
是否有帮助?