作者 | 主题 |
---|---|
甫哥 奇侠 经验值:9786 发帖数:1453 精华帖:72 |
楼主 2020-10-10 16:21:04
主题:HMI与LOGO时钟同步 今天做HMI与LOGO之间的时钟同步试验成功。用HMI的时钟对LOGO的内部时钟进行同步。 硬件: 1)HMI:使用的是威纶通MT8102iE,10寸屏; 2)LOGO:12/24RCEo;订货号:6ED1 052-2MD08-0BA0 需要解决的主要问题: 1)HMI与LOGO时钟数据长度不同:HMI为字,LOGO中为字节; 2)年月日时分秒地址的排列顺序相反; HMI中整数形式时钟地址.zip 3)HMI中的【年】采用的是4位数,LOGO中的【年】采用的是2位数。如:HMI的2020年对应LOGO的20年。 4)LOGO中没有【字】转【字节】以及【传送指令】; 方法简述: 1)在HMI中,采用 【资料传输(背景)】中创建的【定时资料传输】,将HMI中的整数格式的实时时钟时间传送至LOGO中。 HMI传至LOGO来的时钟数据保存地址(例如:下面的地址) VW800:秒,低字节VB801,整数 VW802:分,低字节VB803,整数 VW804:时,低字节VB805,整数 VW806:日,低字节VB807,整数 VW808:月,低字节VB809,整数 VW810:年,整数(四位数) VW812:星期,低字节VB813,整数。0=星期天,1=星期一,2=星期二,3=星期三,4=星期四,5=星期五,6=星期六 HMI的时钟传送至LOGO用的 背景资料传输属性配置.zip 注:资料传输属性配置中的【间隔】设置为1.0秒时,刚执行同步后的二者的时钟误差不超过1秒。【间隔】为0.2秒时误差约0.2秒内。 2)LOGO编程 A、将4位数字表示的【年】转换为2位数。方法:用【算数指令】将VW810的数据减去2000,存放至VW814,其中的低字节VB815内的数据就是转换后的2位数【年】的数据;【算数指令】的Aq映射地址为VW814。 注1:2100年至2199年时,算数指令中V2(P2)的值应改为2100;、2200年至2299年时算数指令中V2(P2)的值应改为2200,以此类推。 注2:算数指令的V1(P1)使用参数映射(映射地址VW810)时,必须将其值的设置与HMI中的年【年】数据相同。否则,无法在线监控程序。在线监控链接链接时报程序不一致。 B、用异步脉冲做一个时钟,定时同步时钟用; 注:异步脉冲的周期时间,不影响刚执行同步后的二者的时钟误差。 3)在HMI中,采用6个 窗口 触发式资料传输 将LOGO中的对应字节整数格式的时钟数据传送至LOGO中VB985至VB990中;放置6个触发式资料传输元件的界面(HMI的组态界面)打开时,时钟同步才会有效。 6个【触发式资料传输(窗口)属性配置】的来源地址与目标地址按对应关系设置,触发地址相同。 秒:VB801的数据传至VB990; 分:VB803的数据传至VB989; 时:VB805的数据传至VB988; 日:VB807的数据传至VB987; 月:VB809的数据传至VB986; 年:VB815的数据传至VB985; 4)LOGO程序及参数VM映射: 求助:LOGO时钟地址VB985至VB990的写入有次数限制吗?【已确认:没有限制】 如果没有限制,程序中的异步脉冲时钟部分,可以用【6个 背景资料传输】取代【 窗口 触发式资料传输】,时钟同步间隔时间可以在0.2秒至25.5秒范围设置。建议全部【间隔时间】设为0.2秒至1.0秒。
书山有路勤为径,学海无涯苦作舟;三人行,必有我师;森林之外的树木也能成才
|