{}

我们的品牌

欢迎访问施耐德电气网站

欢迎访问我们的网站。
搜索常见问题解答
如何在Vijeo Designer basic写脚本读Control Expert Classic的时钟?
问题描述:
如何在Vijeo Designer basic写脚本读Control Expert Classic的时钟?

所属产品线:
Vijeo Designer Basic

解决方法:

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保持一致





是否有帮助?