一种工业机器人实验数据的采集方法及其采集装置与流程

文档序号:18819942发布日期:2019-10-09 00:35阅读:541来源:国知局
一种工业机器人实验数据的采集方法及其采集装置与流程

本方法涉及工业机器人实验测试技术领域,更具体地说,涉及一种工业机器人实验数据的采集方法及其采集装置。



背景技术:

目前,随着机器人运动学和动力学控制算法技术的不断深入发展,国内主要厂商的工业机器人整体控制精度性能效果有了明显提升。当然,算法设计的复杂度也在增加,需要经历反复不断的设计验证修正,再设计完善的过程。工业机器人控制系统的性能评判的核心指标主要涉及:重复定位精度、轨迹定位精度、运行效率、振动等,为了评定这些性能指标,需要基于多种类传感器搭建的实验验证平台,通过采集机器人运动反映到各个传感器之上的数据进行分析,得出相应的评定结论。机器人实验验证环节是在整个工业机器人控制系统开发周期中非常重要的一个过程,实验验证周期甚至比机器人控制系统软件设计的周期还要长。因此,建立一套高效完善的性能评定实验环境,能够快速有效地找出设计过程中存在影响性能的因素。

现有工业机器人控制性能评定系统主要借助的传感器有:激光跟踪仪、六维加速度仪、高精度角度编码器、力传感器和振动检测仪等。工业机器人根据传感器设备测定方位需求,按照特定轨迹运行,由传感器设备独立采集相关数据,并结合设备分析软件进行数据分析,从而得出测试结果。用户根据测试结果,再自行推断出算法可能存在的问题出处,尝试修改再重复进行相关步骤。某些传感器及其配套数据分析软件每一次实验前都需要重新进行设定,造成实验测试效率不高。另外,某些传感器设备配套的数据分析软件价格较高,间接增加了实验测试的成本。

由于机器人控制系统中运动学和动力学算法周期为毫秒级,且经过传感器设备数据软件采集的传感器原始数据有些经过优化,因此,仅通过软件的结果很难快速与算法问题点对应定位,一定程度上增加了技术人员识别分析的难度。

方法内容

本方法的第一个目的在于克服现有技术中的缺点与不足,提供一种工业机器人实验数据的采集方法,该采集方法周期性有效完整地采集记录实验测试过程中算法数据和周期对应的各传感器原始数据,有助于技术人员进行针对性数据分析以及降低对各个传感器数据采集分析软件的依赖,不仅可大幅降低实验测试成本,而且能够有效提高实验测试过程的效率。

本发明的第二个目的在于提供一种工业机器人实验数据的采集装置。

为了达到上述目的,本方法通过下述技术方案予以实现:一种工业机器人实验数据的采集方法,其特征在于:包括以下步骤:

第一步,采用非实时事务线程通过通信协议抽象层函数接口对慢速传感器设备集进行数据采集,以得到慢速传感数据变量;采用ethercat总线实时事务线程周期性地对在总线协议挂载的总线传感器设备集进行数据采集,以得到总线传感器设备集的数据和算法数据;

第二步,以ethercat总线实时事务线程的采集周期为实验采样周期,计算出实验采样周期对应的时间戳,从所述慢速传感器设备集数据变量读取实验采样周期对应的慢速传感器设备集设备的采样数据,以及读取实验采样周期对应的总线传感器设备集的采用数据和算法的采样数据,并将全部采样数据赋值给采样数据项结构体对象变量;

第三步,ethercat总线实时事务线程将所述采样数据项结构体对象变量通过写入记录fifo指针写入指向的采样数据容器,并更新所述采样数据容器内的计数成员;

第四步,设置有采样数据容器的采样数据容器结构体以采样数据项结构体对象变量作为数据记录行单位,并以所述采样数据项结构体对象变量内的数据成员作为数据记录列单位,实现实验测试过程中算法数据和周期对应的各传感器原始数据的采集记录。

在第一步中,所述非实时事务线程周期性轮询读取记录fifo指针指向采样数据容器内的计数成员:如果所述采样数据容器内采样数据满时,则利用字符格式化转换模块将采样数据数值转换成对应的字符串,并写入记录文件,以保证采样数据容器有足够的缓存给采样数据项结构体对象变量通过写入记录fifo指针写入,避免对所述ethercat总线实时事务线程实时周期性的影响;同时,完成所述读取记录fifo指针的重定向切换。

采用非实时事务线程通过通信协议抽象层函数接口对慢速传感器设备集进行数据采集,以及通过非实时事务线程周期性轮询读取记录fifo指针指向采样数据容器内的计数成员,包括以下步骤:

步骤一,非实时事务线程进入开始状态,执行初始化通信协议抽象层和检查采样数据容器就绪步骤,建立数据采样运行环境;

步骤二,对慢速传感器设备集的数据采集进行判断循环:如果没有符合数据采集条件,则继续执行对慢速传感器设备集的数据采集进行判断循环;否则执行步骤三;

步骤三,发送慢速传感器设备集采集请求,准备获取慢速传感器设备集的原始数据,并进入是否应答的判断:如果没有慢速传感器设备集应答,则返回步骤二;否则对数据帧接收与校验,并进行步骤四;

步骤四,对数据采集进行有效判断:如果无效,则返回步骤二;否则,执行写入慢速传感数据变量,并将慢速传感数据变量暂存,完成慢速传感器设备集的数据采集;

步骤五,对采样数据容器是否已满进行判断:如果采样数据容器未满,则返回步骤二,继续下一周期的数据采样操作;如果采样数据容器已满,则对采样数据进行字符格式化转换,并写入记录文件进行保存,进行步骤六;

步骤六,对读取记录fifo指针指向的采样数据容器进行判断并切换:如果读取记录fifo指针指向的采样数据容器是采样数据容器1,则执行读取记录fifo指针向采样数据容器2的操作,完成读取记录fifo指针的重定向操作;如果读取记录fifo指针指向采样数据容器是采样数据容器2,则执行读取记录fifo指针指向采样数据容器1的操作,完成读取记录fifo指针的重定向操作;

步骤七,对非实时事务线程是否进入线程结束进行判断:如果线程没有结束,则返回步骤二,继续下一周期的数据采样操作;如果线程结束,则进行步骤八;

步骤八,对采样数据容器是否有采样数据进行判断:如果采样数据容器内有采样数据,则将采样数据进行字符格式化转换,写入记录文件进行保存,并进入结束状态,完成线程终止退出操作;否则,直接完成线程终止退出操作。

在第三步中,当采样数据项结构体对象变量通过写入记录fifo指针写入指向的采样数据容器时,对采样数据容器是否已满状态进行判断,并完成写入记录fifo指针的重定向切换。

通过ethercat总线实时事务线程得到总线传感器设备集的数据和算法数据,并将全部采样数据赋值给采样数据项结构体对象变量,以及第三步对采样数据容器是否已满状态进行判断包括以下步骤:

s1:ethercat总线实时事务线程进入开始状态,执行初始化总线协议挂载的总线传感器设备集,检查采样数据容器就绪步骤;

s2:对数据采集进行判断循环:如果没有符合数据采集条件,则继续执行对数据采集进行判断循环;否则执行s3;

s3:读取总线协议挂载的总线传感器设备集的采集数据和读取慢速传感数据变量,获取该采样周期总线上所有设备的原始采样数据,并将全部采样数据赋值给采样数据项结构体对象变量,完成一个采样周期的采样数据组织;

s4:采样数据项结构体对象变量通过写入记录fifo指针写入指向的采样数据容器,完成采样数据的缓存写入;

s5:对采样数据容器当前状态进行判断:如果采样数据容器未满,则返回s2,继续下一周期的数据采样操作;如果采样数据容器已满,则进行s6;

s6:对写入记录fifo指针指向的采样数据容器进行判断并切换:如果写入记录fifo指针指向采样容器是采样数据容器1,则执行写入记录fifo指针指向采样数据容器2的操作,完成写入记录fifo指针的重定向操作;如果写入记录fifo指针指向采样容器是采样数据容器2,则执行写入记录fifo指针指向采样数据容器1的操作,完成写入记录fifo指针的重定向操作;

s7:对ethercat实时事务线程是否进入线程结束进行判断:如果线程没有结束,则返回s2,继续下一周期的数据采样操作;如果线程结束,则完成线程终止退出操作。

一种工业机器人实验数据的采集装置,其特征在于:包括:

非实时事务线程,用于通过通信协议抽象层函数接口对慢速传感器设备集进行数据采集,以得到慢速传感数据变量;

ethercat总线实时事务线程,用于周期性地对在总线协议挂载的总线传感器设备集进行数据采集,以得到总线传感器设备集的数据和算法数据;

以及数据采集器;所述数据采集器定义一种采样数据项结构体,并以所述采样数据项结构体的数据类型为基础定义了一种采样数据容器结构体,并以所述采样数据容器结构体的类型定义了采样数据容器1和采样数据容器2的对象实体;所述数据采集器还定义写入记录fifo指针和读取记录fifo指针;

所述ethercat总线实时事务线程将慢速传感数据变量、总线传感器设备集的数据和算法数据赋值给采样数据项结构体对象变量,并通过写入记录fifo指针写入指向的采样数据容器1或采样数据容器2;

采样数据容器结构体以采样数据项结构体对象变量作为数据记录行单位,并以所述采样数据项结构体对象变量内的数据成员作为数据记录列单位,实现实验测试过程中算法数据和周期对应的各传感器原始数据的采集记录。

所述采样数据项结构体的类型包含了一个采样周期内需要记录的数据内容成员,所述数据内容成员包括:时间戳、算法数据输出、伺服系统、i/o设备和传感器原始数据。

所述采样数据容器结构体的类型除了采样数据项结构体的类型作为数据成员外,还包含一个容量占用计数成员,用于指示采样数据容器1或采样数据容器2当前已被占用的数量;

采样数据容器结构体的类型定义了采样数据容器1和采样数据容器2的对象实体作为数存储基础;所述定义写入记录fifo指针和读取记录fifo指针在所述采样数据容器1和采样数据容器2之间实现采样数据存储切换;

还包括能够将采样数据数值转化为字符串数据的字符格式化转换模块。

所述非实时事务线程通过通信协议抽象层函数接口与慢速传感器设备集建立数据采集连接通道,对慢速传感器设备集应答数据解析,写入慢速传感数据变量;

所述通信协议抽象层函数接口支持兼容慢速传感器设备集中基于tcp/ip、modbus和rs232类型数据通信传输的传感器设备。

所述ethercat总线实时事务线程周期性地从总线协议上获取所挂载的总线传感器设备集对应的原始采样数据;所述总线传感器设备集包括:典型伺服设备、i/o设备,以及通过总线耦合器扩展的快速传感器设备。

本发明能将机器人控制软件算法数据与实验测试所搭载传感器设备原始数据周期性同步采集对应,有助于技术人员快速实现针对性数据分析,尽快找出影响算法性能的关键因素,提高算法完善的效率;另一方面,通过对传感器设备原始数据的采集,减少对传感器设备厂商数据分析软件的依赖。因此,用户通过采集实验测试过程中的各方面原始数据并快速分析,能够有效提高实验测试过程效率和降低实验测试成本。

与现有技术相比,本方法具有如下优点与有益效果:

1、本发明工业机器人实验数据的采集方法周期性有效完整地采集记录实验测试过程中算法数据和周期对应的各传感器原始数据,有助于技术人员进行针对性数据分析以及降低对各个传感器数据采集分析软件的依赖,不仅可大幅降低实验测试成本,而且能够有效提高实验测试过程的效率。

2、本发明通过对采样数据项结构体动态增减数据成员可以灵活增减对应传感器的数据采集内容项。利用写入记录fifo指针和读取记录fifo指针在采样数据容器1和采样数据容器2之间无缝交替指向切换,实现采样数据能够完整连续快速写入和读取。

3、字符格式化转换模块能够将采样数据数值高效地转化为字符串数据,利于快速写入记录文件。

附图说明

图1是本发明工业机器人实验数据采集方法的原理图;

图2是本发明工业机器人实验数据采集方法的非实时事务线程流程图;

图3是本发明工业机器人实验数据采集方法的ethercat总线实时事务线程流程图。

具体实施方式

下面结合附图与具体实施方式对本方法作进一步详细的描述。

实施例

如图1至图3所示,一种工业机器人实验数据的采集装置,其特征在于:包括:

非实时事务线程120,用于通过通信协议抽象层函数接口121对慢速传感器设备集122进行数据采集,以得到慢速传感数据变量123;

ethercat总线实时事务线程130,用于周期性地对在总线协议挂载的总线传感器设备集131进行数据采集,以得到总线传感器设备集131的数据和算法数据;

以及数据采集器110,该数据采集器110定义一种采样数据项结构体111,并以采样数据项结构体111的数据类型为基础定义了一种采样数据容器结构体112,并以采样数据容器结构体112的类型定义了采样数据容器1113和采样数据容器2114的对象实体,数据采集器110还定义写入记录fifo指针115和读取记录fifo指针116。

其中,ethercat总线实时事务线程130将慢速传感数据变量123、总线传感器设备集131的数据和算法数据赋值给采样数据项结构体对象变量132,并通过写入记录fifo指针115写入指向的采样数据容器1113或采样数据容器2114。本发明的采样数据容器结构体112以采样数据项结构体对象变量132作为数据记录行单位,并以采样数据项结构体对象变量132内的数据成员作为数据记录列单位,实现实验测试过程中算法数据和周期对应的各传感器原始数据的采集记录。

本发明的采样数据项结构体111的类型包含了一个采样周期内需要记录的数据内容成员,该数据内容成员包括:时间戳、算法数据输出、伺服系统、i/o设备和传感器原始数据。而采样数据容器结构体112的类型除了采样数据项结构体111的类型作为数据成员外,还包含一个容量占用计数成员,用于指示采样数据容器1113或采样数据容器2114当前已被占用的数量。采样数据容器结构体112的类型定义了采样数据容器1113和采样数据容器2114的对象实体作为数存储基础,定义写入记录fifo指针115和读取记录fifo指针116在采样数据容器1113和采样数据容器2114之间实现采样数据存储切换。本发明还包括能够将采样数据数值转化为字符串数据的字符格式化转换模块124,字符格式化转换模块124将转化后的字符串数据写入记录文件125。

本发明非实时事务线程120通过通信协议抽象层函数接口121与慢速传感器设备集122建立数据采集连接通道,对慢速传感器设备集122应答数据解析,写入慢速传感数据变量123。通信协议抽象层函数接口121支持兼容慢速传感器设备集122中基于tcp/ip、modbus和rs232类型数据通信传输的传感器设备。

本发明ethercat总线实时事务线程130周期性地从总线协议上获取所挂载的总线传感器设备集131对应的原始采样数据,该总线传感器设备集131包括:典型伺服设备、i/o设备,以及通过总线耦合器扩展的快速传感器设备。

本发明一种工业机器人实验数据的采集方法包括以下步骤:

第一步,采用非实时事务线程120通过通信协议抽象层函数接口121对慢速传感器设备集122进行数据采集,以得到慢速传感数据变量123;采用ethercat总线实时事务线程130周期性地对在总线协议挂载的总线传感器设备集131进行数据采集,以得到总线传感器设备集131的数据和算法数据;

第二步,以ethercat总线实时事务线程130的采集周期为实验采样周期,计算出实验采样周期对应的时间戳,从慢速传感器设备集数据变量123读取实验采样周期对应的慢速传感器设备集设备122的采样数据,以及读取实验采样周期对应的总线传感器设备集131的采用数据和算法的采样数据,并将全部采样数据赋值给采样数据项结构体对象变量132;

第三步,ethercat总线实时事务线程130将采样数据项结构体对象变量132通过写入记录fifo指针115写入指向的采样数据容器,并更新采样数据容器内的计数成员;

第四步,设置有采样数据容器的采样数据容器结构体112以采样数据项结构体对象变量132作为数据记录行单位,并以所述采样数据项结构体对象变量132内的数据成员作为数据记录列单位,实现实验测试过程中算法数据和周期对应的各传感器原始数据的采集记录。

在第一步中,非实时事务线程120周期性轮询读取记录fifo指针116指向采样数据容器内的计数成员:如果所述采样数据容器内采样数据满时,则利用字符格式化转换模块124将采样数据数值转换成对应的字符串,并写入记录文件125,以保证采样数据容器有足够的缓存给采样数据项结构体对象变量132通过写入记录fifo指针115写入,避免对ethercat总线实时事务线程130实时周期性的影响;同时,完成读取记录fifo指针116的重定向切换。

采用非实时事务线程120通过通信协议抽象层函数接口121对慢速传感器设备集122进行数据采集,以及通过非实时事务线程120周期性轮询读取记录fifo指针116指向采样数据容器内的计数成员,包括以下步骤:

步骤一,非实时事务线程120进入开始状态,执行初始化通信协议抽象层和检查采样数据容器就绪步骤,建立数据采样运行环境;

步骤二,对慢速传感器设备集122的数据采集进行判断循环:如果没有符合数据采集条件,则继续执行对慢速传感器设备集122的数据采集进行判断循环;否则执行步骤三;

步骤三,发送慢速传感器设备集122采集请求,准备获取慢速传感器设备集122的原始数据,并进入是否应答的判断:如果没有慢速传感器设备集122应答,则返回步骤二;否则对数据帧接收与校验,并进行步骤四;

步骤四,对数据采集进行有效判断:如果无效,则返回步骤二;否则,执行写入慢速传感数据变量123,并将慢速传感数据变量123暂存,完成慢速传感器设备集122的数据采集;

步骤五,对采样数据容器是否已满进行判断:如果采样数据容器未满,则返回步骤二,继续下一周期的数据采样操作;如果采样数据容器已满,则对采样数据进行字符格式化转换,并写入记录文件进行保存,进行步骤六;

步骤六,对读取记录fifo指针116指向的采样数据容器进行判断并切换:如果读取记录fifo指针116指向的采样数据容器是采样数据容器1113,则执行读取记录fifo指针向采样数据容器2114的操作,完成读取记录fifo指针116的重定向操作;如果读取记录fifo指针116指向采样数据容器是采样数据容器2114,则执行读取记录fifo指针116指向采样数据容器1113的操作,完成读取记录fifo指针116的重定向操作;

步骤七,对非实时事务线程120是否进入线程结束进行判断:如果线程没有结束,则返回步骤二,继续下一周期的数据采样操作;如果线程结束,则进行步骤八;

步骤八,对采样数据容器是否有采样数据进行判断:如果采样数据容器内有采样数据,则将采样数据进行字符格式化转换,写入记录文件进行保存,并进入结束状态,完成线程终止退出操作;否则,直接完成线程终止退出操作。

本发明在第三步中,当采样数据项结构体对象变量132通过写入记录fifo指针115写入指向的采样数据容器时,对采样数据容器是否已满状态进行判断,并完成写入记录fifo指针115的重定向切换。

本发明通过ethercat总线实时事务线程130得到总线传感器设备集131的数据和算法数据,并将全部采样数据赋值给采样数据项结构体对象变量132,以及第三步对采样数据容器是否已满状态进行判断包括以下步骤:

s1:ethercat总线实时事务线程130进入开始状态,执行初始化总线协议挂载的总线传感器设备集131,检查采样数据容器就绪步骤;

s2:对数据采集进行判断循环:如果没有符合数据采集条件,则继续执行对数据采集进行判断循环;否则执行s3;

s3:读取总线协议挂载的总线传感器设备集131的采集数据和读取慢速传感数据变量123,获取该采样周期总线上所有设备的原始采样数据,并将全部采样数据赋值给采样数据项结构体对象变量132,完成一个采样周期的采样数据组织;

s4:采样数据项结构体对象变量132通过写入记录fifo指针115写入指向的采样数据容器,完成采样数据的缓存写入;

s5:对采样数据容器当前状态进行判断:如果采样数据容器未满,则返回s2,继续下一周期的数据采样操作;如果采样数据容器已满,则进行s6;

s6:对写入记录fifo指针115指向的采样数据容器进行判断并切换:如果写入记录fifo指针115指向采样容器是采样数据容器1113,则执行写入记录fifo指针115指向采样数据容器2114的操作,完成写入记录fifo指针115的重定向操作;如果写入记录fifo指针115指向采样容器是采样数据容器2114,则执行写入记录fifo指针115指向采样数据容器1113的操作,完成写入记录fifo指针115的重定向操作;

s7:对ethercat实时事务线程130是否进入线程结束进行判断:如果线程没有结束,则返回s2,继续下一周期的数据采样操作;如果线程结束,则完成线程终止退出操作。

上述实施例为本方法较佳的实施方式,但本方法的实施方式并不受上述实施例的限制,其他的任何未背离本方法的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本方法的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1