借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

这篇具有很好参考价值的文章主要介绍了借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1、测试条件

2、测试结论

3、PLC的发送程序

4、PLC连接配置

5、PLC-Recorder侧的通讯设置

6、PLC-Recorder的通道配置

7、PLC-Recorder的变量配置

8、正常通讯情况的界面

9、记录数据的情况

10、再说时间戳

11、小结


高速数据采集要保证速度,也要保证时刻的准确性。在windows系统里,时间稳定性是个很难的问题。如果PLC发送的数据里带有时间信息,则可以由PLC来保证采样周期的稳定性。

从V2.12版本开始,PLC-Recorder软件可以处理发送电文里的时间戳,有网友用0.24ms的速度外发,软件也能够稳定接收并精确确定数据的时刻。

1、测试条件

下面用S7-1200实现带有时间戳的高速数据采集,测试条件如下:

  • 西门子 S7-1200 1214C,无其他通讯,通讯负载比例:50%。PLC IP地址:192.168.0.1
  • 通过循环中断OB30执行循环发送。OB1里无程序。
  • 通讯协议:UDP(只有该协议,在高速模式下才支持时间戳)
  • 编程软件和系统:TIA V16
  • 微型工控机(Intel® Celeron J1900 2.0GHz四核低功耗处理器) 4核 4G内存,SSD硬盘,无风扇,WIN10系统,无其他大型软件。

2、测试结论

  • 如果PLC通讯负载较低,则很难保证4ms的周期发送,因此,这里设置成50%。
  • 如果用低于4ms的周期外发,实际周期只能做到4ms。相比来说,S7-1500可以做到2ms的实际周期。这也说明S7-1500的运算能力强于S7-1200。

3、PLC的发送程序

在2ms的循环中断程序里进行发送,通过计数比较或者其他方法获得4ms的周期脉冲,触发发送指令。在通讯结束后进行计数,产生时间戳,并允许下一次发送。

由于S7-1200不支持长整型,因此,时间戳的产生方法与S7-1500也不相同。

借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

 借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

 以下是发送的电文结构(仅发送前200字节):

借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

4、PLC连接配置

以下是UDP类型的设置示例:

指定了接收端IP地址和端口号 192.168.0.100:5010

借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

5、PLC-Recorder侧的通讯设置

请用帕姆齐设备类型,目前,仅该类型支持时间戳功能。需要配置来源的IP地址及本机收听的端口号。并将本计算机的IP地址设置成192.168.0.100。

借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

6、PLC-Recorder的通道配置

此处虽然配置了采集周期,但在高速模式下不再使用该周期,以收到信息的时刻为准。另外,此处配置了两个虚拟通道,用于高速采集后的解码,获取整型变量的位。

借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

7、PLC-Recorder的变量配置

从最后一个变量的起始地址和变量长度可以确定该通道的通讯电文的长度。对于TCP类型的连接,电文长度需要通过最后变量进行确定(下例子看出电文长度为200字节)。对于UDP类型的通讯,UDP是按照完整报文进行传输的,可以自动获取长度信息,因此,不需要关注最后变量。

变量配置时,不需要定义所有的变量,仅需要定义自己关注的变量即可。

起始地址为0的变量就是PLC里定义的时间戳。
借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

8、正常通讯情况的界面

左下角的Hi标志表明目前正处于高速状态。

借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

9、记录数据的情况

这是用离线分析软件Ana打开的历史数据文件。从左侧的统计数据可以看出,平均采集周期是4ms。从右侧的波形和标尺可以看出,点距非常均匀。

借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

 下面一张图是网友的历史波形,实际采集周期基本是0.24ms借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

10、再说时间戳

时间戳是Uint32类型的数据,在西门子PLC里被称为UDint,需要从0到4_294_967_295之间递增,并自然翻转(自动归零)。时间戳的单位必须是微秒,因此,是70分钟翻转一次。

在S7-1500能计算获得纳秒的时间差值,需要除1000,将单位转换成微秒。

在S7-1200里只能获得毫秒的时间差值,需要乘1000,将单位转换成微秒。

时间戳是个时间差值,PLC-Recorder在开始记录时,会将首个时间戳与计算机的当前时间进行比较(对时),后续就用相对时间进行计算,并自动处理翻转的问题。因此,PLC不需要保证绝对时钟的准确性,只要相对稳定即可。

11、小结

采集的速度越快,需要的技术越复杂,代价也越大。PLC-Recorder的主动采集模式,基本只需要在PLC-Recorder里配置变量,不需要在PLC做什么复杂工作,这种方式很便捷,但是速度也有限(最快20ms)。高速模式,就需要在PLC里配置通讯,组织数据,然后调用通讯语句,才能够实现,因此,对于PLC工程师的要求也是有一些了。

高速模式采用标准以太网通讯协议,这也是大部分PLC都具备的能力,因此,可以被广泛使用来进行快速数据采集。文章来源地址https://www.toymoban.com/news/detail-469720.html

到了这里,关于借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C#与西门子PLC通讯——手搓S7通讯协议

    本文将尝试从源码角度,使用Tcp/Ip的方式直接与西门子PLC进行交互通讯。 往期博客参考 C#与西门子PLC通讯——新手快速入门 C#与西门子PLC通讯——熟手快速入门 建议先看一下这两篇,了解预设背景。 知其然,知其所以然。 这篇文章,我们就尝试重复造一个轮子。通过对通讯

    2024年02月04日
    浏览(36)
  • C# 读取西门子S7系列PLC教程及源码

    若要创建驱动程序的实例,需要使用此构造函数: CPU:这指定您要连接到的  CPU 。支持的 CPU 包括: ip :指定 CPU 或外部以太网卡的 IP 地址 机架:它包含PLC的 机架 ,您可以在Step7的硬件配置中找到 插槽 :这是CPU的插槽,您可以在Step7的硬件配置中找到 例: 此代码为 IP 地

    2024年02月08日
    浏览(43)
  • C#通过S7.NET库与西门子PLC数据交互

    拉了换一个简单的界面 我新建了一个DB数据块【DB1】,右键【DB1】,点击【属性】项,【优化的块访问】默认是勾选,要想显示数据块中地址偏移量,需要把【优化的块访问】勾选取消 1、右键项目名,选择图中【管理NuGet程序包】 2、在搜索框输入【S7netplus】,我安装的是第

    2024年02月12日
    浏览(34)
  • 两个西门子S7-1200PLC之间的TCP以太网通讯

    两个西门子S7-1200PLC之间的TCP以太网通讯 西门子S7_1200两个CPU之间的以太网通讯程序,一个做主站一个做从站,可实现两个CPU之间的数据发送和读取,外加两个西门子KTP1200 12寸的触摸屏, 两个西门子S7-1200 PLC之间的TCP以太网通讯 随着工业自动化的发展,越来越多的设备之间需

    2024年02月02日
    浏览(37)
  • 【西门子PLC S7-200smart与汇川变频器通过通讯控制】

    一,变频器通讯设置部分 先查看汇川变频器的使用说明书,将FD组“通讯参数设置”设置好对应波特率,数据格式,本机地址,通讯协议 FD-00 波特率设置   0:300bps 1:600bps 2:1200bps 3:2400bpd 4:4800bps 5:9600bps9:115200bps FD-01 数据格式    1:偶校验  2:奇校验  3:无校验 FD-02 本机地

    2024年02月04日
    浏览(63)
  • 西门子PLC S7-1200程序实例 西门子1200与安川机器人TCP/IP通讯,包含机器人GSD文件

    西门子PLC S7-1200程序实例,博图版本V15,仅供电气编程者学习借鉴, 1,西门子1200与安川机器人TCP/IP通讯,包含机器人GSD文件; 2,西门子1200控制6轴伺服电机,四台台脉冲控制台达B2伺服,两台PN通讯控制西门子V90伺服电机; 3,两台西门子1200开放式通讯交互数据联动; 4,与

    2024年02月11日
    浏览(48)
  • PLC实验—西门子S7 1200读取旋转编码器数据并计算电机转速

    注意PTO控制步进电机实验博途软件需要V14版本,不然没有PTO功能块 软件的下载请点击下方百度网盘的链接 链接:https://pan.baidu.com/s/11mQFVnaQxrUy4W9nGIk8Jw 提取码:6lva 详细的操作指导视频已经放到了B站上 Simens S7-1200读取增量式编码器数据 Simens S7-1200根据编码器数据计算电机转速

    2024年02月05日
    浏览(48)
  • 西门子PLC S7-200SMART Modbus TCP通讯的步骤和要点

    Modbus TCP是一个非常传统,应用广泛的通讯协议,很多智能设备都支持该协议。西门子S7-200SMART及1200、1500系列都免费支持(300和400还是要高昂收费),并且做成了标准库,使用起来非常方便,下面简单介绍一下客户端的配置步骤,服务器的配置更加简单,可以自行摸索: 1、引

    2023年04月09日
    浏览(39)
  • 使用IOT-Tree Server连接西门子PLC S7-300/1200/1500

    IOT-Tree Server是个开源物联网软件,可以作为组态软件成为自动化系统的上位软件。她提供了接入、数据组织管理、控制逻辑和人机交互多个方面的功能。从版本0.99开始,IOT-Tree Server新增了西门子以太网驱动,能够通过以太网的方式直接访问S7-300/1200/1500. S7-200 smart好像也支持

    2024年02月03日
    浏览(48)
  • 基于西门子PLC s7-1200 实现物料的上料,搅拌,排出的自动化过程。

      摘要:工业中有多种物料(本文为三种)需要上料,搅拌,排料的过程,通过分析流程,利用PLC实现过程的自动化。用博图软件进行编程,最后将自己的成果展示给大家。 一、工艺流程   当按下启动按钮时,物料一从出料口进入搅拌罐,接着当物料一到达最低液面,传感

    2024年02月02日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包