EtherCAT超高速实时运动控制卡XPCIE1032H上位机C#开发(五):通过RTSys进行调试与诊断

电子说

1.2w人已加入

描述

XPCIE1032H功能简介

XPCIE1032H是一款基于PCI Express的EtherCAT总线运动控制卡,可选6-64轴运动控制,支持多路高速数字输入输出,可轻松实现多轴同步控制和高速数据传输。XPCIE1032H集成了强大的运动控制功能,结合MotionRT7运动控制实时软核,解决了高速高精应用中,PC Windows开发的非实时痛点,指令交互速度比传统的PCI/PCIe快10倍。

运动控制器

XPCIE1032H支持PWM,PSO功能,板载16进16出通用IO口,其中输出口全部为高速输出口,可配置为4路PWM输出口或者16路高速PSO硬件比较输出口。输入口含有8路高速输入口,可配置为4路高速色标锁存或两路编码器输入。

XPCIE1032H搭配MotionRT7实时内核,使用本地LOCAL接口连接,通过高速的核内交互,可以做到更快速的指令交互,单条指令与多条指令一次性交互时间可以达到3-5us左右。

运动控制器

RTSys开发软件简介

RTSys是正运动推出的集成运动控制+机器视觉功能的开发软件,支持RTBasic、RTPlc梯形图、RTHmi、RTVision机器视觉等二次开发,并可混合编程、实时仿真、在线跟踪以及诊断与调试,快速实现智能装备的视觉定位、测量、识别、检测和复杂的运动控制等系统的开发。

RTSys软件开发界面如下图所示。用户可通过串口或网口连接PC与控制器,使用RTSys软件编写的程序可以直接下载到正运动控制器里脱机运行,也可以在PC平台仿真运行。

运动控制器RTSys开发界面

RTSys软件支持四种编程方式:RtBasic、RtPLC梯形图、HMI组态以及C语言编程。

RTSys软件支持在线仿真调试,自带仿真器ZMC Simulator和组态程序仿真工具xplc screen。

➜XPCIE1032H与MotionRT7实时内核的配合具有以下优势:

运动控制器

1.支持多种上位机语言开发,所有系列产品均可调用同一套API函数库;

2.借助核内交互,可以快速调用运动指令,响应时间快至微秒级,比传统PCI/PCIe快10倍;

3.解决传统PCI/PCIe运动控制卡在Windows环境下控制系统的非实时性问题;

4.支持一维/二维/三维PSO(高速硬件位置比较输出),适用于视觉飞拍、精密点胶和激光能量控制等应用;

5.提供高速输入接口,便于实现位置锁存;

6.支持EtherCAT总线和脉冲输出混合联动、混合插补。

运动控制器

➜使用XPCIE1032H和MotionRT7进行项目开发时,通常需要进行以下步骤:

1.安装驱动程序,识别XPCIE1032H;

2.打开并执行文件“MotionRT710.exe”,配置参数和运行运动控制实时内核;

3.使用ZDevelop软件连接到控制器,进行参数监控。连接时请使用PCI/LOCAL方式,并确保ZDevelop软件版本在3.10以上;

4.完成控制程序开发,通过LOCAL链接方式连接到运动控制卡,实现实时运动控制。

运动控制器

➜与传统PCI/PCIe卡和PLC的测试数据结果对比:

平均值 C++ LOCAL C# LOCAL 传统PCI/PCIe卡接口交互 PLC网口通讯交互
1w次单条读取交互周期 4.70us 5.3us 64us 500us-10ms
10w次单条读取交互周期 3.90us 5.7us 65us 500us-10ms
1w次多条读取交互周期 6.20us 8.85us 472us 500us-10ms
10w次多条读取交互周期 5.50us 8.37us 471us 500us-10ms

我们可以从测试对比结果看出,XPCIE1032H运动控制卡配合实时运动控制内核MotionRT7,在LOCAL链接(核内交互)的方式下,指令交互的效率是非常稳定,当测试数量从1w增加到10w时,单条指令交互时间与多条指令交互时间波动不大,非常适用于高速高精的应用。

XPCIE1032H控制卡安装

关闭计算机电源。

打开计算机机箱,选择一条空闲的XPCIE卡槽,用螺丝刀卸下相应的挡板条。

将运动控制卡插入该槽,拧紧挡板条上的固定螺丝。

XPCIE1032H驱动安装与建立连接参考往期文章EtherCAT超高速实时运动控制卡XPCIE1032H上位机C#开发(一):驱动安装与建立连接。

一、C#语言进行运动控制开发

具体C#新建项目以及程序开发流程具体可参考“运动控制卡应用开发教程之C#”。本文主要以官方提供的C#例程为大家进行讲解。

1、进入光盘资料选择“PC函数库2.1.1”。

运动控制器

2、点击“Windows平台”。

运动控制器

3、点击“库文件与例程”。

运动控制器

4、根据需要选择对应的函数库和例程(64位为例),这里选择64位。

运动控制器

5、解压后选择“C#”例程。

运动控制器

6、打开单轴运动项目文件夹(以单轴运动工程为例)。

运动控制器

7、打开项目后,编译程序,可看到该例程控制台程序界面如图。

运动控制器

在该界面有一个LOCAL连接BUTTON按钮,关联的方法为ZAUX_FastOpen方法,MotionRT7选择用此方式进行连接。

连接上板卡之后,在该界面可先进行对应的轴参数设置,设置完之后轴选择,最后选择运动方式,点击运动即可。

二、相关PC函数介绍

相关PC函数介绍详情可参考“ZMotion PC函数库编程手册 V2.1.1”。

运动控制器运动控制器运动控制器运动控制器运动控制器运动控制器运动控制器

三、RTSys调试与诊断

1、控制器连接

上位机开发的同时,要在RTSys上进行运动监控,首先要连接控制器。打开RTSys软件,点击菜单栏的控制器选项,选择连接。

运动控制器

在弹出连接界面,选择Local,点击连接。

运动控制器

2、轴参数界面

连接成功之后,在界面右侧,会出现一个轴参数界面,这个界面可以实时监控轴的各个参数变化值。

通过上述C#单轴例程进行参数设置之后,RTSys中轴参数会实时同步数据。

此时通过上述C#上位机控制轴运动,在该界面可对轴运行进行实时监控,通过DPOS监控是否有脉冲发出以及MPOS参数监控轴是否有实际动作,是否有位置反馈等。

通过ZAux_Direct_SetSpeed指令在上位机设置轴速度之后,实际轴速度变化不大;这个时候,我们可以在轴参数界面找到SPEED值,看是否和上位机设置的值一样,进而排查上位机速度值是否写进去。

运动控制器运动控制器

3、手动运动界面

通过RTSys软件进行手动运动调试:

点击RTSys菜单栏的工具按钮,选择手动运动,弹出手动运动界面,功能具体如下图。

运动控制器

4、IO操作界面

点击RTSys菜单栏工具按钮,打开“输入口”和“输出口"界面进行IO口的监控与调试。点击IO选择可手动选择想要监控的IO编号范围。

运动控制器

上位机使用ZAux_Direct_GetIn指令读取输入口的状态,通过ZAux_Direct_GetOp指令读取输出口状态以及ZAux_Direct_SetOp指令设置输出口状态。

通过上位机指令设置对应的IO口之后,这时候要确认上位机是否操作成功,打开IO操作界面的输入口和输出口即可对其进行监控与设置。

4、寄存器界面

点击RTSys菜单栏的工具,打开寄存器界面,点击该界面的寄存器类型下拉框,可监控或设置MODBUS、VR、TABLE等寄存器的值。

该界面的“起始编号”指监控对应寄存器的起始编号。“个数”表示监控的对应寄存器从起始编号开始,监控的寄存器个数。

运动控制器

上位机使用ZAux_Direct_MoveTable缓冲修改table寄存器的值,ZAux_Direct_SetVrf指令修改VR寄存器的值,以及ZAux_Modbus_Set0x指令修改modbus位寄存器的值以及其他寄存器的读写操作。上位机设置完对应寄存器之后,便可打开寄存器界面判断相关寄存器的值是否写成功。

5、示波器界面

点击RTSys菜单栏的工具,打开示波器界面,可对运动过程中的一些参数进行波形的抓取。

示波器的操作方法:在RTSys编写好程序后,成功连接到控制器/仿真器后,打开示波器,设置好所需采集的数据源及对应编号,点击“启动”,再将程序下载至RAM/ROM(上位机编程直接编译运行上位机代码),即可采样

按以上操作程序里需加入“TRIGGER”指令自动触发示波器采样。否则,需在点击“启动”后,点击“手动触发”再下载程序至RAM/ROM才可成功采样。

运动控制器

示波器界面功能说明:

(1)设置:打开示波器设置窗口,设置示波器相关参数。

(2)启动:启动示波器(但不触发示波器采样)。

(3)停止:停止示波器采样。

(4)YT模式:有三种模式可切换,包括YT模式、XY模式、XYZ模式。切换成XY模式即XY平面显示两个轴的插补合成轨迹。XYZ模式即XYZ三维平面显示合成轨迹。

(5)<<:按下隐藏通道名称和峰值,只显示通道编号。

(6)连续采集:不开启连续采集时,到达采集深度后便停止采集,开启了连续采集之后示波器会持续采样。

(7)跟随:开启跟随后横轴自动移动到实时采样处,跟随波形显示。

(8)显示游标:用于标定测量示波器图形数据或者是坐标距离。在YT模式中使用该工具可测量两点之间所用时间,在XY模式中则测量坐标间距。X1和X2游标线与波形相交的交点横坐标即为通道(x)显示的数据,Y1和Y2游标线与波形相交的交点纵坐标即为通道(Y)显示的数据。

(9)手动触发:手动触发示波器采样按钮(自动触发使用trigger指令)。

(10)显示:选择当前通道曲线是否显示。

(11)编号:选择需要采集的数据源编号,如轴号、数字量IO编号、TABLE编号、VR编号、MODBUS编号等。

(12)数据源:选择采集的数据类型,下拉菜单选择,多种类型参数可选。

(13)偏移:波形纵轴偏移量设置。

(14)垂至刻度:纵轴一格的刻度。

(15)水平刻度:横轴一格的刻度。

注:若要设置示波器参数,如轴编号、数据源以及启动示波器设置窗口,要先停止示波器再设置。

6、控制器状态

点击RTSys菜单栏的控制器选项,点击控制器状态,打开控制器状态显示窗口。该状态包括基本信息、Zcan节点信息、槽位0节点信息、控制器通讯配置等内容。

(1)基本信息:包括控制器型号、支持最大任务数、IP地址、软硬件版本号等控制器基本信息。

(2)Zcan节点:在该界面可显示控制器的本地资源,包括轴数、数字量个数以及模拟量个数,还可显示通过CAN接口扩展的板卡信息。

(3)槽位0节点:显示通过EtherCat口所接的设备的节点号、设备ID、拨码号等信息。

(4)控制器通讯配置:显示CAN信息与RS232、RS485、RS422串口配置信息。

运动控制器

使用上述上位机单轴运动例程抓取轴0指令位置(DPOS)以及轴实际反馈速度(MSPEED)曲线时,先打开示波器界面,设置好抓取的轴号,以及选择需要抓取的参数,设置完成之后,选择YT模式,点击启动,点击手动触发,最后运行上位机程序,抓取波形图如下所示。

运动控制器

本次,正运动技术EtherCAT超高速实时运动控制卡XPCIE1032H上位机C#开发(五):通过RTSys进行调试与诊断,就分享到这里。更多精彩内容请关注“正运动小助手”公众号。

本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分