利用RTSI总线实现运动控制和数据采集之间同步

时间:2023-03-20作者:佚名

1 引言

  许多测试系统要求在连续运动的同时能实时进行数据采集。如果测试过程不连续,或者测试位置在前而采集在后,二者之间不能同步,将不可避免地产生误差。为了提高测量精度,运动控制和数据采集必须实现同步。目前,美国NI公司提供的PCI总线E系列数据采集卡和运动控制卡都嵌入了RTSI(Real- Time System Integration)总线,它可以满足需要精确同步和实时数据采集处理的测试系统的要求。本文主要介绍如何利用RTSI总线编程实现运动控制和数据采集之间的同步。

2 RTSI总线

  RISI总线是实时系统集成总线,它是一种专用高速数字总线,专门提供NI产品(包括图像采集和数据采集产品)之间的高速互连。RTSI总线包括7根触发线,用于创建NI的测量、图像采集和运动控制设备以及接口板卡之间灵活的同步关系。通过软件设置可将其他触发信号路由到RTSI总线上,也可以将 RTSI总线信号路由到其分触发信号线上作为触发时钟,实现l路信号驱动多个设备,达到同步的目的。通过RTSI总线,可用1个公共的触发或定时事件实现几个功能事件同步。RTSI总线的典型应用包括触发图像采集、基于运动事件的数据采集测量、捕获基于外部事件到运动控制器的当前运动位置等。

  对于PCI总线E系列数据采集卡,有15种信号与RTSI总线相连,包括时基信号、数据采集时钟、D/A输出时钟、板上通用计数器信号、外部PFI(可编程输入)信号等,如图1所示。

利用RTSI总线实现运动控制和数据采集之间同步

3 运动控制与数据采集的同步

  测试系统中采取的同步方式一般有二种:一种是运动控制卡控制电机运动到某个指定位置,数据采集卡能实时采集该位置上的数据,这种方式称为中断;另一种同步方式是如果电机运动到某个位置时数据采集卡采集到满足某种条件的信号,则需要记录电机当前的运动位置,这种方式称为捕获。本文主要讨论中断同步方式。

  3.1 中断方式

  中断分为绝对位置中断、相对位置中断及周期性位置中断。绝对位置中断是指当电机运动到某绝对位置时运动控制卡将产生外部中断信号;相对位置中断是指当电机的运动位置相对于允许电机产生中断时的位置之差满足设定的条件时产生中断信号;求模位置中断是指每相对于某个设定的位置都将产生1个中断信号。因此可以根据测试系统的不同需要决定采取什么样的中断方式。

  3.2 同步的原理

  当运动控制卡控制电机运动到某个位置时,编码器上返回的位置信号一旦符合设定的位置条件,将发出1个中断信号。该信号可作为数据采集卡采集信号的触发条件,使采集卡能实时采集所需数据。运动控制卡和数据采集卡可以通过RTSI总线实现二者之间的同步。运动控制卡产生的中断信号通过内部电路传送到 RTSI输出引脚,目前RTSI输出引脚主要有7个(RTSIO-RTSl6)。RPSI输出引脚可通过外部电缆与数据采集卡的RTSI引脚相连。采集卡的RTSI引脚也可以通过内部电路与其控制信号(见图1)相连,从而实现二者之间的同步。

  当运动控制卡控制电机运动到某个指定位置时将产生中断信号,该中断输出信号可连接到运动控制卡的RTSI引脚,运动控制卡的RTSI引脚与数据采集卡的RTSI引脚相连。而在采集卡内,RTSI引脚信号作为系统的扫描时钟,与采样时钟信号相连,因此运动控制卡每产生1个中断信号,数据采集卡便进行1次通道扫描,读取各个传感器上采集的数据。该数据将存放在设置的缓冲区中。而一旦缓冲区中的数据已满,则通过多线程的方式显示到屏幕上。这样就实现了运动控制和数据采集之间的同步。

4 编程实现

  运动控制与数据采集的同步控制流程如图2所示。

利用RTSI总线实现运动控制和数据采集之间同步

  笔者采用LabWindows/CVI软件对RTSl总线、数据采集和运动控制进行编程,其函数库由NI-DAQ和NI-Motion提供。其中 NI-Motion函数库可以将运动控制与所有应用软件相结合,并可通过数字触发输入或NI运动控制卡上的断点输出,使运动与测量硬件同步运行。RTSI 总线则将这些触发与中断信号连接到其他卡上,此总线功能由软件设定。通过“Measurement&Automation Explorer” (MAX)设备管理工具,可以配置各设备的硬件属性,为每个设备分配1个设备编号,在编程时作为查找设备的标识。下面是编程所需要的主要函数。

  (1)连接中断信号和RTSI总线信号函数

  flex_select_signal(boardID,destination,source),其中boardlD为MAX分配的数据采集卡的 ID号;destination目的信号,为RTSI某引脚,如NIMC_RT-SI[0..7];source源信号,为某一中断信号的名称,如 NIMC_BREAKPOINT[1..4]。

  (2)设置运动参数和中断信号模式函数

  设置运动速度函数 flex_load_velocity(boardlD,axisOrVectorSpace,velocity,inputVector),其中ax- isOrVectorSpace为选择轴编号或空间坐标;in-putVector参数对脱离主机运行的程序有用,一般设成OXFF。

  设置加速度/减速度函数 flex_load_acceleration(boardID,axisOrVectorSpace,accelerationType,accel- eration,inputVector),其中accelerationType为选择加载的方式,即加速度、减速度还是同时加载。

  设置S-Curve时间函数flex_load_velocity(boar- dID,axisOrVectorSpace,sCurveTime,inputVector),其中sCurveTime为从0加速到恒定速度或从恒定速度减速到0时的时间,单位为采样时间的整数倍。范围为l~32 767。

  设置运动模式函数flex_set_op_mode(boardID,axisOrVectorSpace,operationMode)。

  设置运动的目标位置flex_load_target_pos(boardID,axis,targetPosition,inputVector)。

  设置产生中断的方式函数flex_config- ure_breakpoint(boardID,axisOrEncoder,enableMode,actionOnBreakpoint,operation),其中actionOnBreak-point为中断时电平的高低,operation为选择单点中断方式或缓冲中断方式,由运动控制卡的信号决定。

  (3)设置中断信号产生位置和打开中断函数

  设置中断信号产生位置函数 flix_load_pos_bp(boardID,axisOrEncoder,breakpointPosition.inputVector),其中breakpointPosition为中断位置(即采样点)的起始位置,下一次产生中断的位置为上一次产生中断的位置加上采样间距。打开中断函数 flex_enable_breakpoint()。

  (4)启动电机运动函数

  启动电机运动函数flex_start(boardID,ax-isOrVectorSpace,axisOrVSMap),其中axisOrVSMap为可选择单轴运动或多轴同时运动。

  (5)检查各种状态函数

  检查运动状态,读取运动是否结束函数flex_check_move_complete_status()。检测中断状态函数flex_read_axis_status_rtn0()。从通信状态寄存器中读取通信状态函数flex_read_csr_rtn()。

5 结束语

  利用RTSI可为各种测控系统应用提供基于硬件的高速同步能力,本文讨论的这种基于RTSI的运动控制和数据采集之间的同步方法采用Lab-Windows/CVI编程实现,可应用到在运动过程中实时采集数据的测控系统中,能获得很好的测量精度。

相关阅读

变频器风扇卡死过热报警,长期忽视的设备通病!90%设备烧毁都栽在这里

做电气运维的师傅都懂:变频器故障五花八门,但最隐蔽、最容易被忽视、最容易酿成大修事故的,绝对是风扇卡死过热故障。 很多现场师傅看到变频器报OH过热、OL过载、温度过高报警,...
2026-05-25
变频器风扇卡死过热报警,长期忽视的设备通病!90%设备烧毁都栽在这里

Step7 OB组织块介绍和使用技巧

每种类型的OB块的分析及其使用方法: 1、自由循环组织块OB1 S7 CPU启动完成后,操作系统循环执行OB1,OB1执行完成后,操作系统再次启动OB1。在OB1中可以调用FB、SFB、FC、SFC等用户程序使其...
2023-03-21

模组串口电路常见电平匹配方法

模组UART、IO、IIC、SPI等外围接口电(píng)域通常为1.8V、2.8V、3V,主流单片机系统的电(píng)域通常为3.3V和5V,当模组与单片机系统进行数据交互时,由于通信双方电(píng)不匹配,可能导致...
2023-06-07
模组串口电路常见电平匹配方法

开关电源保护电路的研究

开关电源保护电路的研究 1引言 评价开关电源的质量指标应该是以安全性、可靠性为第一原则[1、2、3]。在电气技术指标满足正常使用要求的条件下,为使电源在恶劣环境及突发故障情...
2024-03-18
开关电源保护电路的研究

家里电路出现故障,如何能找到靠谱的专业电工?

如果家里电路出现故障,有这种途径可以找到比较靠谱的专业电工,希望能帮到你! 1. 问朋友、邻居或家人或者物业:向身边的人打听他们是否有过类似问题,并询问他们曾经雇佣过哪...
2024-03-27
家里电路出现故障,如何能找到靠谱的专业电工?

热销商品

国标TRVV高柔性拖链电缆2—48芯0.3 0.5 1 1.5 2.5平方耐弯折软线

国标TRVV高柔性拖链电缆,专为满足严苛工况下的动态传输需求而设计。该电缆具有2至48芯多种配置,适用于0.3、0.5、1.5、2.5平方等多种截面积选择,灵活满足不同设备的...
¥ 1.24

公牛开关插座面板全屋定制全屋配齐家装报价单官方正品付款链接Q9

公牛开关插座面板,为您的全屋定制家装提供一站式解决方案。我们提供全屋配齐的家装报价单,确保您的家装项目完美无缺。所有产品均为官方正品,品质保证,让您用得放心。...
¥ 1

定做定制各类密封条三元乙丙橡胶硅胶PVC防火阻燃EVA氯丁石墨丁晴

本公司专业定做各类定制密封条,涵盖三元乙丙橡胶(EPDM)、硅胶、PVC、EVA、氯丁橡胶、丁腈橡胶及石墨复合等多种材质,满足不同行业对密封、防水、隔音、隔热及防火阻燃...
¥ 1

直销配电箱暗插销铰链门轴CL225插销带螺丝固定铁皮柜弹簧铁铰链

CL225插销式暗铰链专为配电箱、铁皮柜等金属柜体设计,采用优质冷轧钢板经冲压成型,表面镀锌处理,防腐耐用。其内置弹簧结构,确保柜门开合顺畅、自动复位,提升使用便捷...
¥ 0.06

浇铸抛光螺纹钢扭矩扳手 镀锌双头延长杆扳手多功能工具 开口扳手

这款多功能工具集浇铸抛光螺纹钢扭矩扳手、镀锌双头延长杆扳手与开口扳手于一体,采用优质合金钢精密浇铸并经抛光处理,表面镀锌防锈,耐用性强。其双头设计适配多种规...
¥ 0.6

网站栏目