西门子smartline系列触摸屏使用的是软时钟,每次上电后,其内部时间都是从2004-1-1开始,(而且无法手动输入)它需要通过读取plc时间,才能更正触摸屏的系统时间。 使用S7-1200 CPU时钟同步西门子smartline触摸屏 (注:要有大连德嘉s7-1200触屏适配器或德嘉多功能交换机的硬件支持) S7-1200 CPU日期时间数据结构与smartline日期时间数据结构及转换方法,见下图
步骤如下: A、 S7-1200的编程软件Portal中,定义DB1
注:【仅符号访问】的选项不要打对号“v” 在0偏移地址处定义一个变量year,数据类型byte 在1偏移地址处定义一个变量month,数据类型byte 在2偏移地址处定义一个变量day ,数据类型byte 在3偏移地址处定义一个变量hour,数据类型byte 在4偏移地址处定义一个变量minute,数据类型byte 在5偏移地址处定义一个变量second,数据类型byte 在6偏移地址处定义一个变量m1,数据类型byte (注:milliseconds的第一个字节) 在7偏移地址处定义一个变量m2,数据类型byte (注:milliseconds的第二个字节) 在8偏移地址处定义一个变量space0,数据类型byte 在9偏移地址处定义一个变量space1,数据类型byte 在10偏移地址处定义一个变量space2,数据类型byte 在11偏移地址处定义一个变量space3,数据类型byte 在12偏移地址处定义一个变量date_time,数据类型DTL (注:用于存储s7-1200的系统时间) 上边0到11偏移地址存放的是smartline 触摸屏的时间格式 见下图:
B、S7-1200的编程软件Portal的程序块中main[ OB1]中调用RD_SYS_T(注:获取系统时间,并存储到DB1.DBX12中,也就是date_time)见下图
从程序段6到13 是将存储在 DB1.date_time(DB1.DBX12)中的 S7-1200系统日期时间变换排列成smartline触摸屏的所需时间格式
从程序段6到13 是将存储在 DB1.date_time(DB1.DBX12)中的 S7-1200系统日期时间变换排列成smartline触摸屏的所需时间格式
|