基于Labview进行MotionRT7项目的开发

工业控制

1200人已加入

描述

今天,正运动小助手给大家分享一下MotionRT7的安装和使用,以及使用Labview对MotionRT7开发的前期准备。  

01

MotionRT7简介

MotionRT7是深圳市正运动技术推出的跨平台运动控制实时内核,也是国内首家完全自主自研,自主可控的Windows运动控制实时软核。

 

1.MotionRT7具备以下特点 (1)独立软件安装,适合各种Windows电脑;绿色免安装,快速体验;采用硬件绑定的运行许可证授权(未授权也可试用);可以方便配置、启动、连接、模拟运行等。

(2)与MotionRT其它版本功能兼容,一次开发,可快速切换到嵌入式,Linux各种平台。

(3)统一函数库接口,快速的本地LOCAL接口,运动函数调用快至us级别,比普通PCI卡快数十倍。

(4)集成机器视觉,快速搭建各类运动控制+机器视觉的实时应用。

(5)强大多卡功能,最多240轴联动,支持跨卡联动,脉冲与总线联动,振镜与平台联动,轻松实现位置锁存/PSO等高级功能。

2.持续迭代的运动控制实时内核MotionRT

MotionRT是正运动技术持续建设与发展的运动控制实时内核,已不断迭代7代,从MotionRT1到MotionRT7。

ethercat

3.MotionRT7采用模块化软件架构

ethercat

运动控制程序、视觉算法、MotionRT7运动控制引擎,通过高共享内存进行数据交互,大大提升运动控制与机器视觉的交互效率。 用户自定义功能,融合Gmc、Gear/Cam、Frame、Robotics、CNC等算法,打造用户的专用控制系统。 4.统一开放的API函数

统一完善的SDK库,所有的第三方开发环境同用一套API接口,跨平台的产品架构,提高效率,保持兼容性。

5.简单易用的运动控制功能特性

a.点位运动、直线插补、圆弧插补、螺旋插补、连续轨迹加工;

b.电子凸轮、电子齿轮、同步跟随、位置锁存、虚拟轴叠加;

c.S曲线加减速,SS曲线加减速,轨迹运动更柔和;

d.1D/2D/3D高速位置同步输出PS0,充分满足视觉飞拍、高速点胶、激光加工;

e.客户可自定义运动控制算法或者机器人正反解算法;

f.方便与第三方视觉配合。

6.开放的EtherCAT与配置调试工具

ZDevelop具备开放易用的配置,开发,调试,诊断等工具。ZDevelop不仅是个绿色免费的软件,而且具备轴调试,轴状态,示波器等工具。

ethercat

MotionRT7广泛支持EtherCAT总线,支持市面上广泛易用的EtherCAT伺服,EtherCAT步进,EtherCAT IO,EtherCAT阀岛和EtherCAT传感器。

我司后续将持续完善EtherCAT的配置工具,持续努力做最好用的运动控制。

02

MotionRT7的安装和使用

第一步:安装驱动程序

1.打开“设备管理器”,选择“操作”中的“添加过时硬件”,选择“手动选择”。

ethercat

ethercat

2.点击“下一步”。

ethercat

3.点击“从磁盘安装”。

ethercat

4.点击“浏览按钮”选择驱动所在的路径,打开文件夹“driver_signed”,选择“ZMotionRt64.inf”。

ethercat

ethercat

5.一直点击下一步,直到安装完成。

ethercat

注意:驱动更新时,要从设备管理器删除设备,一定要选择把驱动文件也删除。  

第二步:运行控制台程序

1.打开控制台程序所在位置,运行可执行文件“MotionRt710.exe”。

ethercat

2.点击“Start”。

ethercat

第三步:使用ZDevelop软件链接到控制器,进行参数监控

ZDevelop链接控制器,软件版本3.10以上,使用PCI/LOCAL方式进行连接。

ethercat

ethercat

第四步:网口扩展EtherCAT主站协议 1.查看网络连接。

ethercat

2.选择用作EtherCAT的网卡,右键属性,安装协议。

ethercat

ethercat

ethercat

3.点击从磁盘安装,选择驱动器所在的路径,打开文件夹”driver_signed”,选择“MotionRtPacket.inf”。

ethercat

ethercat

ethercat

ethercat

4.安装成功后,确认ZMotionRT64 Packet Protocol Driver前面有选上。

在RT控制台程序选择增加AddEcat,这时能看到对应网卡,选择后,启动RT。

ethercat

自带PC网卡EtherCAT具有一定的实时性,若EtherCAT要提升性能,则需要把网口其它的协议都去掉以提升实时性。 如需进一步提升实时性,请使用正运动专门的EtherCAT运动控制卡XPCIE1032。 更多关于MotionRT7的参数设置以及相关问题,请参照“MotionRT7说明书”。

相关资料请前往正运动技术官网www.zmotion.com.cn或联系正运动相关人员。

03

Labview进行MotionRT7项目的开发

1.创建Labview项目。  

ethercat

2.将zauxdll函数库放在Labview安装路径labview/user.lib文件夹内,zauxdll函数库可联系正运动相关人员获取。

ethercat

ethercat

相关PC函数介绍

 

指令1 ZAux_FastOpen
指令原型 int32  __stdcall  ZAux_FastOpen(int type, char *pconnectstring, uint32 uims ,ZMC_HANDLE * phandle)
指令说明 与控制器建立连接, 可以指定连接的等待时间
输入参数
参数名 描述
type 连接类型
type: 1-COM 2-ETH 4-PCI
pconnectstring 连接字符串:
COM口号/IP地址
uims 连接超时时间 uims;单位ms
输出参数
参数名 描述
phandle 控制器连接句柄
返回值 成功返回值为0,非0详见错误码说明
指令示例 串口连接:
ZMC_HANDLE  phandle;//控制器连接句柄
Char comID[32]= "0";//串口ID
ZAux_FastOpen(1, comID,1000s ,&phandle);
网口连接例子:
ZMC_HANDLE  phandle;//控制器连接句柄
Char EthID[32]= "192.168.0.11";//网口ID
ZAux_FastOpen(1, EthID,1000s ,&phandle);
LOCAL接口连接例子:
ZMC_HANDLE  phandle;//控制器连接句柄
ZAux_FastOpen(ZMC_CONNECTION_LOCAL, "LOCAL1",3000,&g_handle);
指令2 ZAux_OpenEth
指令原型 int32  __stdcall  ZAux_OpenEth(char  *ipaddr, ZMC_HANDLE * phandle)
指令说明 以太网连接控制器。
输入参数
参数名 描述
Ipaddr 连接的IP地址
输出参数
参数名 描述
Phandle 返回的连接句柄
返回值 成功返回值为0,非0详见错误码说明
指令示例 网口连接控制器
详细说明 1.网口采用RJ45标准网线接口,通讯速率为100Mbit/s。
2.控制器出厂的IP地址为192.168.0.11,端口号为502。对端通讯设备需与控制器处于同一网段,才可进行连接。
3.最常用的控制器连接方式。
4.ZMC_HANDLE  类型:Zmotion库中,专门用于控制卡连接数据定义类型;
指令3 ZAux_Direct_GetDpos
指令原型 int32  __stdcall  ZAux_Direct_GetDpos(ZMC_HANDLE handle, int iaxis, float  *pfValue)
指令说明 读取轴当前位置或称控制器发送的需求位置,单位units
输入参数
参数名 描述
handle 连接标识
iaxis 轴号
输出参数
参数名 描述
pfValue 获取当前轴位置。
返回值 成功返回值为0,非0详见错误码说明
指令示例 轴基本运动参数设置获取
详细说明 /
指令4 ZAux_Close
指令原型 int32  __stdcall  ZAux_Close(ZMC_HANDLE  handle)
指令说明 关闭控制器连接。
输入参数
参数名 描述
Handle 连接句柄
输出参数 /
返回值 成功返回值为0,非0详见错误码说明
指令示例 串口连接控制器
详细说明 /
指令5 ZAux_Direct_GetFsLimit
指令原型 int32  __stdcall  ZAux_Direct_GetFsLimit(ZMC_HANDLE  handle, int iaxis, float  *fValue)
指令说明 读取正向软限位值。
输入参数
参数名 描述
handle 连接标识
iaxis 轴号
输出参数
参数名 描述
pfValue 返回的正向限位值
返回值 成功返回值为0,非0详见错误码说明
指令示例 正负软限位设置
详细说明 当FS_LIMIT大于REP_DIST时,参数不起作用,正向软限位被禁止。
取消软限位时,建议不要去修改REP_DIST的值,将FS_LIMIT设置一个较大值即可。FS_LIMIT的值默认为200000000。
软限位无法作为DATUM回零时的限位信号参考。
注:设置限位前需检查有无设置对应的加减速度,以及快减减速度,若无设置,碰到限位无法停止
指令6 ZAux_Direct_GetRsLimit
指令原型 int32  __stdcall  ZAux_Direct_GetRsLimit(ZMC_HANDLE  handle, int iaxis, float  *fValue)
指令说明 读取负向软限位值。
输入参数
参数名 描述
handle 连接标识
iaxis 轴号
输出参数
参数名 描述
pfValue 返回的负向限位值
返回值 成功返回值为0,非0详见错误码说明
指令示例 正负软限位设置
详细说明 当RS_LIMIT 大于REP_DIST时,参数不起作用,负向软限位被禁止。
取消软限位时,建议不要去修改REP_DIST的值,将RS_LIMIT设置一个较大值即可。RS_LIMIT的值默认为-200000000。
软限位无法作为DATUM回零时的限位信号参考。
注:设置限位前需检查有无设置对应的加减速度,以及快减减速度,若无设置,碰到限位无法停止
指令7 ZAux_Direct_Single_MoveAbs
指令原型 int32  __stdcall  ZAux_Direct_Single_MoveAbs(ZMC_HANDLE handle, int  iaxis, float  fdistance)
指令说明 单轴绝对运动。
输入参数
参数名 描述
handle 连接标识
iaxis 轴号
fdistance 绝对距离
输出参数 /
返回值 成功返回值为0,非0详见错误码说明
指令示例 单轴点位运动
详细说明 /

 

3.Labview基于LOCAL接口的单轴点动例程开发。

在Labview前面板设计界面,找到需要用到的控件拖拽到前面板中进行UI界面设计,效果如下。

ethercat

注:使用IP模式连接MotionRT7的时候,要将MotionRT710中的Config配置项Eth num的值设置为一个大于0的数(1-12),输入的IP为本机IP,可以在ZDevelop中直接查看。 4.Labveiw程序框图。

(1)通过IP链接方式的链接按钮事件处理的程序框图进行IP链接。

ethercat

(2)通过LOCAL链接方式的链接按钮事件处理的程序框图进行LOCAL链接方式的链接。

ethercat

(3)负向手动运动程序框图(按下按钮则通过绝对插补指令向负限位运动,松开按钮则停止运动)。

ethercat

(4)正向手动运动程序框图(按下按钮则通过绝对插补指令向正限位运动,松开按钮则停止运动)。

ethercat

编辑:黄飞

 

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

全部0条评论

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

×
20
完善资料,
赚取积分