首页> 中国专利> 基于PCIe的轨迹侦测比较的运动控制卡、系统及方法

基于PCIe的轨迹侦测比较的运动控制卡、系统及方法

摘要

本发明公开了基于PCIe的轨迹侦测比较的运动控制卡、系统及方法,包括FPGA、光耦隔离电路、PCIE接口和电源,光耦隔离电路将数据信号输入FPGA中,PCIE接口连接FPGA,电源连接FPGA;方法包括FPGA直接采集运动板卡运动过程中实际输出信号,存储于开辟在FPGA内部的FIFO中;FPGA通过PCIE接口将所采集的实际输出信号上传至主机内存;确定误差;对比并修正,通过多次修改运算并检验,逐次逼近的过程;通过对运动板卡的实际输出进行采样,对采样数据进行处理,获得实际输出的速度拟合曲线,将该拟合曲线同用户要求的速度模式进行量化分析,方便的检查出是否存在“跳变”现象,提醒用户修正算法上的漏洞。

著录项

  • 公开/公告号CN104298174A

    专利类型发明专利

  • 公开/公告日2015-01-21

    原文格式PDF

  • 申请/专利权人 成都乐创自动化技术股份有限公司;

    申请/专利号CN201410502309.0

  • 发明设计人 邹爽;

    申请日2014-09-26

  • 分类号G05B19/414(20060101);

  • 代理机构成都君合集专利代理事务所(普通合伙);

  • 代理人代平

  • 地址 610000 四川省成都市高新区科园南二路一号大一孵化园8栋B座

  • 入库时间 2023-12-17 04:02:12

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-02-01

    授权

    授权

  • 2015-02-18

    实质审查的生效 IPC(主分类):G05B19/414 申请日:20140926

    实质审查的生效

  • 2015-01-21

    公开

    公开

说明书

技术领域

本发明涉及自动控制技术领域,具体的说,是基于PCIe的轨迹侦测比较的运动控制卡及方法。

背景技术

目前控制系统中对于运动轨迹经处理器处理后输出“加工数据”直接对工件进行加工,由于实际工况中所处理的轨迹多样,加工轨迹可能会因为不可知的因素出现跳变,影响加工效果,造成废品。

另外目前市面上中高端通用控制卡基本架构为DSP+FPGA方式实现,DSP负责加工图案的解析和速度规划,FPGA负责将DSP的运动数据转化为实际脉冲输出。由于对数字信号的处理误差和各线路板的差异,会造成实际输出的脉冲波频率与用户设定的理想曲线误差太大,也即用户设定加工速度有出入,尤其是在变速运动中,由于数据预处理计算误差,会导致在运动过程中加速度及速度拐点出现跳变,反应到最终驱动会在运动过程中产生冲击,影响加工效果。

目前常采用加工轨迹侦测系统在实际对工件加工前收集“加工数据”,判断是否出现跳变,避免直接在工件上试加工造成浪费,但现有技术所使用的加工轨迹侦测系统是采用专门的设置设备从控制卡中读取相关数据,需要专门的外部检验设备,通过示波器进行检验,需要凭借人眼分辨运行曲线的优劣,准确性不高。

发明内容

本发明的目的在于提供基于PCIe的轨迹侦测比较的运动控制卡、系统及方法,通过对运动板卡的实际输出进行采样,对采样数据进行处理,获得实际输出的速度拟合曲线,将该拟合曲线同用户要求的速度模式进行量化分析,可以方便的检查出是否存在“跳变”现象,提醒用户修正算法上的漏洞或其他问题。

本发明通过下述技术方案实现:基于PCIe的轨迹侦测比较的运动控制卡,包括FPGA、光耦隔离电路、PCIE接口和电源,所述光耦隔离电路将待测试的运动板卡的数据信号采用光耦合隔离输入的方式输入FPGA中,所述PCIE接口连接FPGA,所述电源连接FPGA。

进一步的,为更好的实现本发明,还包括指示灯,所述指示灯连接FPGA。

进一步的,为更好的实现本发明,所述FPGA内设置有输入滤波电路、脉冲采集电路、数据存储器、数据交互电路、RAM,所述光耦隔离电路连接输入滤波电路,所述输入滤波电路连接脉冲采集电路,所述脉冲采集电路分别连接数据存储器和数据交互电路,所述RAM分别连接数据存储器和数据交互电路,所述数据交互电路连接PCIE接口。

进一步的,为更好的实现本发明,所述FPGA的主芯片采用XC6SLX45T。

基于PCIe的轨迹侦测系统,包括基于PCIe的轨迹侦测比较的运动控制卡、主机、运动板卡和原始数据来源,所述主机通过PCIE接口连接数据交互电路,所述运动板卡分别连接主机,所述运动板卡通过光耦隔离电路将待测试的输出脉冲输入到FPGA中,所述主机内加载有数据采集系统、数据转换系统、数据仿真系统和数据分析系统,所述原始数据来源将原始数据加载到主机内。

基于PCIe的轨迹侦测比较的方法,包括以下步骤:

步骤A、FPGA直接采集运动板卡运动过程中实际输出信号,存储于开辟在FPGA内部的FIFO中;

步骤B、FPGA通过PCIE接口上的PCIE总线将步骤A所采集的实际输出信号上传至主机内存;

步骤C、在主机内的数据转换系统中,将存储在主机内存中的数据转换为采集样本的速度-时间值表,并且由原始数据来源所提供的原始数据实际计算出完备运行的速度-时间值表,采集样本的速度-时间值表同完备运行的速度-时间值表在主机中的数据采集系统、数据转换系统、数据仿真系统、数据分析系统内进行对比确定误差;

步骤D、确定误差后重新调整运动板卡的速度,并重复步骤A、步骤B、步骤C,进行采样对比并修正,通过多次修改运算并检验,逐次逼近的过程,最终达到所采样本数据与原始数据相同,极力降低误差,保证运动板卡完美运行。

进一步的,为更好的实现本发明所述方法,包括以下步骤:

1)、FPGA直接采集运动板卡运动过程中实际输出脉冲的脉宽和周期参数,存储于开辟在FPGA内部的FIFO中;

2)、FPGA通过PCIE接口上的PCIE总线将运动过程中采集的脉宽和周期数据上传至主机内存;

3)、在主机内的数据转换系统中,将存储在主机内存中的数据转换为采集样本的速度-时间值表,并且由原始数据来源所提供的原始数据实际计算出完备运行的速度-时间值表,采集样本的速度-时间值表同完备运行的速度-时间值表在主机中的数据采集系统、数据转换系统、数据仿真系统、数据分析系统内进行对比确定误差;

4)、确定误差后重新调整运动板卡的速度,并重复步骤1)、步骤2)、步骤3),进行采样对比并修正,通过多次修改运算并检验,逐次逼近的过程,最终达到所采样本数据与原始数据相同,极力降低误差,保证运动板卡完美运行。

进一步的,为更好的实现本发明所述方法,所述步骤3)的实现具体分如下两种方式:

3.1)、对采集样本的速度-时间值表和完备运行的速度-时间值表两组数据在时间轴相同点上描点,绘制出两条运动曲线;

3.2)、通过对比同一时刻运动点的原始数据的速度值与采集样本的速度值大小,当超过设定范围后指示出出现“误差”之处,具体方法如下:设置测试数据与基准数据的误差阀值,在时间轴上,当某点误差超过此阀值时,标出此运动点的位置及速度信息。

进一步的,为更好的实现本发明所述方法,所述步骤C的实现具体分如下两种方式:

C.1)、对采集样本的速度-时间值表和完备运行的速度-时间值表两组数据在时间轴相同点上描点,绘制出两条运动曲线;

C.2)、通过对比同一时刻运动点的原始数据中的速度值与采集样本的速度值大小,当超过设定范围后指示出出现“误差”之处,具体方法如下:设置测试数据与基准数据的误差阀值,在时间轴上,当某点误差超过此阀值时,标出此运动点的位置及速度信息。

本发明与现有技术相比,具有以下优点及有益效果:

(1)本发明通过对运动板卡的实际输出进行采样,对采样数据进行处理,获得实际输出的速度拟合曲线,将该拟合曲线同用户要求的速度模式进行量化分析,可以方便的检查出是否存在“跳变”现象,提醒用户修正算法上的漏洞或其他问题。

(2)本发明所述基于PCIe的轨迹侦测比较的运动控制卡,采用FPGA进行采集数据缓存处理,由于FPGA的高速、高可靠性与PCIe通信,提高本发明所述基于PCIe的轨迹侦测比较的运动控制卡的速度和可靠性。

(3)本发明所述配置电路,进一步增大FPGA芯片的资源数,从而提高数据处理量。

(4)本发明采用PCIE通信能提供更高的传输数据和质量。

(5)本发明所述基于PCIe的轨迹侦测系统,完成对采样数据的处理,获得实际输出的速度拟合曲线,将该拟合曲线同用户要求的速度模式进行量化分析;对多组预处理信号和实际采集信号的轨迹拟合、分析。

(6)本发明所述基于PCIe的轨迹侦测比较的方法,采用仿真处理技术、自动采集、转换、分析技术,对多组预处理信号和实际采集信号的轨迹拟合、分析,达到直观准确判断的目的,并自动提醒用户修正算法上的漏洞或其他问题。

附图说明

图1本发明所述基于PCIe的轨迹侦测比较的运动控制卡的电路图。

图2为本发明所述基于PCIe的轨迹侦测系统的电路图。

图3为圆弧状的轨迹比较图。

图4为直线状的轨迹比较图。

图5为采样误差分析示图。

具体实施方式

本申请人自认为技术领域内技术员结合现有公知技术,并根据本申请文件所公开的内容即可实现本发明。

下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。

实施例1:

基于PCIe的轨迹侦测比较的运动控制卡,如图1、图2所示,包括FPGA、光耦隔离电路、PCIE接口和电源,所述光耦隔离电路将待测试的运动板卡的数据信号采用光耦合隔离输入的方式输入FPGA中,所述PCIE接口连接FPGA,所述电源连接FPGA。

待测试的运动板卡在进行工作过程中,形成实际输出信号(轴脉冲输入以及轴方向输入),实际输出信号通过光电隔离电路进行耦合输入到FPGA中,在FPGA中完成滤波、数据采集、数据存储,RAM满时产生中断通知PC,PC机通过PCIe协议读取RAM里的数据,后经PCIE接口通过PCIE数据通信协议将PCIe数据信号传输出去以备后期处理。

实施例2:

本实施例是在实施例1的基础上进一步优化,结合图1、图2所示,包括FPGA、光耦隔离电路、PCIE接口和电源,所述光耦隔离电路将待测试的运动板卡的数据信号采用光耦合隔离输入的方式输入FPGA中,所述PCIE接口连接FPGA,所述电源连接FPGA,还包括连接在FPGA上的指示灯,指示灯优选采用LED灯。

待测试的运动板卡在进行工作过程中,形成实际输出信号(轴脉冲输入所代表的轴脉冲数据,轴方向输入的轴方向数据),实际输出信号通过光电隔离电路进行耦合输入到FPGA中,在FPGA中进行采样和数据存储,后经PCIE接口通过PCIE数据通信协议将PCIe数据信号传输出去以备后期处理,LED灯用于状态指示,至少设置两个红绿双色灯,用于指示一些常见通信状态,一个为电源指示灯,正常电压时为绿灯,过压或欠压时为红灯,一个为PCIe工作指示灯,PCIe正常通信时为绿灯,有异常为红灯。

实施例3:

本实施例是在上述实施例的基础上进一步优化,结合图1、图2所示,包括FPGA、光耦隔离电路、PCIE接口和电源,所述光耦隔离电路将待测试的运动板卡的数据信号采用光耦合隔离输入的方式输入FPGA中,所述PCIE接口连接FPGA,所述电源连接FPGA,所述FPGA的主芯片采用XC6SLX45T。

待测试的运动板卡在进行工作过程中,形成实际输出信号(轴脉冲输入所代表的轴脉冲数据,轴方向输入的轴方向数据),实际输出信号通过光电隔离电路进行耦合输入到FPGA中,在FPGA中完成滤波、数据采集、数据存储,RAM满时产生中断通知PC,PC机通过PCIe协议读取RAM里的数据,后经PCIE接口通过PCIE数据通信协议将PCIe数据信号传输出去以备后期处理,所述FPGA的主芯片采用xilinx公司的 XC6SLX45T,其具有4万多个逻辑单元,包含27万个6输入查找表、54万个触发器。

实施例4:

本实施例是在上述任一实施例的基础上进一步优化,所述FPGA内设置有输入滤波电路、脉冲采集电路、数据存储器、数据交互电路、RAM,所述光耦隔离电路连接输入滤波电路,所述输入滤波电路连接脉冲采集电路,所述脉冲采集电路分别连接数据存储器和数据交互电路,所述RAM分别连接数据存储器和数据交互电路,所述数据交互电路连接PCIE接口。

在使用时,FPGA采集的实际输出信号为脉冲的高电平时间值和整个脉冲周期值,为32bit数据,在FPGA内部进行滤波、数据采集、数据存储等操作,一个脉冲结束后将此两个数据存储至内部RAM中,RAM存满后通知主机通过PCIe进行读取,主机将此数据转化为速度值进行分析。

实施例5:

基于PCIe的轨迹侦测系统,包括基于PCIe的轨迹侦测比较的运动控制卡、主机、运动板卡和原始数据来源,所述主机通过PCIE接口连接数据交互电路,所述运动板卡分别连接主机,所述运动板卡通过光耦隔离电路将待测试的输出脉冲输入到FPGA中,所述主机内加载有数据采集系统、数据转换系统、数据仿真系统和数据分析系统,所述原始数据来源将原始数据加载到主机内。

运动板卡在工作过程中所发出的实际输出信号(轴脉冲输入所代表的轴脉冲数据,轴方向输入的轴方向数据),所采集的信号以脉宽和周期数据为主,经FPGA-PCIE板卡(基于PCIe的轨迹侦测比较的运动控制卡)采集处理后,通过PCIE接口利用PCIE数据通信协议将PCIe数据信号传输到主机内,在主机中,主机的数据采集系统通过PCIe从FPGA的RAM中读取数据到PC内存;数据转换系统将读取到的脉宽数据和高电平数据转化为速度频率;数据仿真系统即由采集数据数据绘制出实际运动曲线和由原始完备数据绘制出完备运动曲线;数据分析系统将两条曲线按照一定的误差标准进行对比和标注;原始数据主要为加工文件解析数据、速度前瞻处理数据、DSP写入FPGA的数据等,通过原始数据来源加载于主机内,所述各类数据在主机内通过软件系统完成描点,画出其轨迹图形,而所采集的实际输出信号类数据也将完成描点,画出其轨迹图形,两者进行对比后即可分析各组数据偏差,以方便的检查出是否存在“跳变”现象,提醒用户修正算法上的漏洞或其他问题;用户针对某段速度某个速度拐点进行调整之后可再次下载至运动板卡中重新运动,再次分析,直到与设定值逼近;其中主机可选用设备上使用的上位机,也可以是外部用于轨迹侦测比较的其他PC机,PC机可以包括PC、手提电脑。

实施例6:

基于PCIe的轨迹侦测比较的方法,包括以下步骤:

步骤A、FPGA直接采集运动板卡运动过程中实际输出信号,存储于开辟在FPGA内部的FIFO中;

步骤B、FPGA通过PCIE接口上的PCIE总线将步骤A所采集的实际输出信号上传至主机内存;

步骤C、在主机内的数据转换系统中,将存储在主机内存中的数据转换为采集样本的速度-时间值表,并且由原始数据来源所提供的原始数据实际计算出完备运行的速度-时间值表,采集样本的速度-时间值表同完备运行的速度-时间值表在主机中利用加载在主机内的数据采集系统、数据转换系统、数据仿真系统、数据分析系统中的轨迹分析轨迹进行对比确定误差(即样本速度和完备运行速度所形成的速度曲线对应点的速度差值);

步骤D、确定误差后重新调整运动板卡的速度,并重复步骤A、步骤B、步骤C,进行采样对比并修正,通过多次修改运算并检验,逐次逼近的过程,最终达到所采样本数据与原始数据相同,极力降低误差,保证运动板卡完美运行。

采样频率与采样精度:

如图5所示,当基于PCIe的轨迹侦测比较的运动控制卡的最高频率为2MHz,采样信号按照控制器脉冲频率极限2MHz为目标,在该频率下误差暂定位为10%,以40M频率F1去采2M频率F2,A点上升沿采到为低电平,但之后马上实际变成高电平,但此高电平只有到C点才被真正记录,对此会使采样到的高电平比实际值少一个40M的周期时间,同样在B点不会计数高电平,会使高电平计数值比实际值再少一个40M周期,极端情况下的误差即为这两个时钟周期,即2 * 1/40M = 0.05us。

采样后数据存储与分次采样:

采样后的数据用TL来表示高电平或者低电平持续的采样周期计数值;

设采样频率为40MHz,则在2MHz脉冲频率下,以40M的频率去采样2M的脉冲,每个40M时钟上升沿处,判断2M为高电平则计数值加1,这样,当2M脉冲的占空比为50%时,即高电平为250ns,低电平250ns,而40M周期为25ns,这样在1个2M的高电平时间内总共需计数250/25=10次,10为此TL值,计算公式为TL=采样频率/(被采样频率*2);

若脉冲频率降低到100K,则TL=40M/200K = 200;

若脉冲频率降低到1Hz,则TL=40M/2 = 20,000,000;

即用一个32位数据存储器保存此时间值;

当采集完一个2M脉宽后记一次数同时存储数据,此数据为两个32bit,一个为高电平持续时间值,一个位总周期值,故数据量为2*4/(1/待测频率) = 8*待测频率(MB/s)=2*4Byte/ (1/2M)= 16MB/s; 

若实际加工平均脉冲频率为200K,则平均数据传输率为200*2*4=1.6MB/s;1分钟的数据量为:1.6MB/s*60s=96MB;数据传输速率为 8 * 200K = 1.6MB/s;

在实际应用中,1分钟的数据量可以满足我们分析轨迹和速度的需要,而对于超过1分钟的加工文件,我们分段进行采样分析;

即若加工文件为2分钟,第一次存储采样第1分钟的运行数据;第二次采样第二分钟的运行数据;FPGA的采样时间和运动开始时间和运动板卡的DSP设置同步;

FPGA开辟10KB的数据量,按照1.6MB/s的平均值,共存储6.25ms的数据,当前控制卡硬件条件下,软件两次读取的周期低于1ms。若按峰值2MHz的脉冲频率计算数据量,16MB/s,共存储0.625ms的数据,软件读取周期低于500us;软件将读取的数据转存到内存中,按1分钟数据量96MB,目前的主机为其开辟预留的内存为128M,可存储下1分钟的数据量;脉冲频率达到400K,可以保存至少30s的数据。

实施例7:

本实施例是在上述实施例的基础上进一步优化,包括以下步骤:

1)、FPGA直接采集运动板卡运动过程中实际输出脉冲的脉宽和周期参数,存储于开辟在FPGA内部的FIFO中;

2)、FPGA通过PCIE接口上的PCIE总线将运动过程中采集的脉宽和周期数据上传至主机内存;

3)、在主机内的数据转换系统中,将存储在主机内存中的数据转换为采集样本的速度-时间值表,并且由原始数据来源所提供的原始数据实际计算出完备运行的速度-时间值表,采集样本的速度-时间值表同完备运行的速度-时间值表在主机中利用加载在主机内的数据采集系统、数据转换系统、数据仿真系统、数据分析系统中的轨迹分析轨迹进行对比确定误差;

4)、确定误差后重新调整运动板卡的速度,并重复步骤1)、步骤2)、步骤3),进行采样对比并修正,通过多次修改运算并检验,逐次逼近的过程,相同的时间值处运动的实际速度与完备速度曲线对应点的速度误差在一个标准范围内(+/-10%,可根据需要调整),最终达到所采样本数据与原始数据相同,极力降低误差,保证运动板卡完美运行。

实施例8:

本实施例是在上述实施例的基础上进一步优化,所述步骤3)的实现具体分如下两种方式:

3.1)、对采集样本的速度-时间值表和完备运行的速度-时间值表两组数据在时间轴相同点上描点,绘制出两条运动曲线,达到直观判断出现误差之处;

3.2)、通过对比同一时刻运动点的原始数据的速度值与采集样本的速度值大小,当超过速度差设定范围(采集后拟合的速度与完备速度曲线对应时间点上的速度差)后指示出出现“误差”之处,具体方法如下:设置测试数据与基准数据的误差阀值,在时间轴上,当某点误差超过此阀值时,标出此运动点(对应时间点上的运动速度)的位置及速度信息。

如图3为圆弧状的轨迹比较图、图4为直线状的轨迹比较图所示,对比轨迹(原始数据轨迹)与急转轨迹(采样数据轨迹)之间的差值,即采样数据与原始数据之间的误差阀值ΔS,当ΔS大于设定值(设定值为完备值的10%,可根据需要调整)即标示出,表示此处运动数据误差过大,以待调整。

实施例9:

本实施例是在实施例6的基础上进一步优化,所述步骤C的实现具体分如下两种方式:

C.1)、对采集样本的速度-时间值表和完备运行的速度-时间值表两组数据在时间轴相同点上描点,绘制出两条运动曲线,达到直观判断出现误差之处;

C.2)、通过对比同一时刻运动点的原始数据的速度值与采集样本的速度值大小,当超过速度差设定范围(采集后拟合的速度与完备速度曲线对应时间点上的速度差)后指示出出现“误差”之处,具体方法如下:设置测试数据与基准数据的误差阀值,在时间轴上,当某点误差超过此阀值时,标出此运动点(对应时间点上的运动速度)的位置及速度信息。

如图3、圆弧状的轨迹比较图、图4为直线状的轨迹比较图所示,对比轨迹(原始数据轨迹)与急转轨迹(采样数据轨迹)之间的差值,即采样数据与原始数据之间的误差阀值ΔS,当ΔS大于设定值(设定值为完备值的10%,可根据需要调整)即标示出,表示此处运动数据误差过大,以待调整。

本发明通过对运动板卡的实际输出进行采样,对采样数据进行处理,获得实际输出的速度拟合曲线,将该拟合曲线同用户要求的速度模式进行量化分析,可以方便的检查出是否存在“跳变”现象,提醒用户修正算法上的漏洞或其他问题。

以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。 

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号