LabVIEW运动控制(一):EtherCAT运动控制器的SCARA机械手应用

电子说

1.3w人已加入

描述

ZMC408CE 高性能总线型运动控制器

ZMC408CE是正运动推出的一款多轴高性能EtherCAT总线运动控制器,具有EtherCAT、EtherNET、RS232、CAN和U盘等通讯接口,ZMC系列运动控制器可应用于各种需要脱机或联机运行的场合。

机械手

ZMC408CE支持PLC、Basic、HMI组态三种编程方式。PC上位机API编程支持C#、C++、LabVIEW、Matlab、Qt、Linux、VB.Net、Python等接口。

机械手

ZMC408CE硬件功能特性:

1.支持8轴运动控制(脉冲+EtherCAT总线),EtherCAT同步周期可快至125us;

2.24路通用输入、16路通用输出,模拟量AD/DA各两路;

3.8路10MHz高速差分脉冲输出,总线轴、脉冲轴可混合插补;

4.高性能处理器,提升运算速度、响应时间和扫描周期等;

5.一维/二维/三维、多通道视觉飞拍,高速高精;

6.位置同步输出PSO,连续轨迹加工中对精密点胶胶量控制和激光能量控制等;

7.多轴同步控制,多坐标系独立控制等;

8.直线插补、任意空间圆弧插补、螺旋插补、样条插补等;

9.应用灵活,可PC上位机开发,也可脱机独立运行;

ZMC408CE视频介绍可点击→“高性能EtherCAT总线运动控制器,带你玩转“8通道独立PSO”应用场景”查看。

更多关于ZMC408CE的详情介绍,点击“推荐|8通道PSO的高性能EtherCAT总线运动控制器”查看。

PCIE464M PCIe EtherCAT总线运动控制卡

PCIE464M是一款基于PCIe的PCI Express的EtherCAT总线运动控制卡,具有多项实时和高精度运动控制控制功能。

机械手

PCIE464M运动控制卡上自带16进16出,第三方图像处理工控机或PC无需额外配置IO数据采集卡和PLC,即可实现IPC形态的机器视觉运动控制一体机,简化硬件架构,节省成本,软硬件一体化。

机械手

PCIE464M硬件功能特性:

1.可选6-64轴运动控制,支持EtherCAT总线/脉冲/步进伺服驱动器;

2.联动轴数最高可达16轴,运动周期最小为100μs;

3.标配16进16出,其中4路高速锁存输入、4路高速PWM和12路高速硬件比较输出PSO;

4.支持PWM输出、1D/2D/3D PSO硬件位置比较输出、视觉飞拍、连续轨迹插补等;

5.支持30+机械手模型正逆解模型算法,比如SCARA、Delta、UVW、4轴/5轴 RTCP...;

6.支持掉电存储和掉电中断,多重加密,提供程序更安全机制;

7.8路单端脉冲轴、4路单端编码器轴;

8.具有一维、二维螺距补偿控制,实现更高的加工精度;

PCIE464M视频介绍可点击→“超高速PCle EtherCAT控制卡PCIE464M,即刻提升高速高精智能装备生产力!”查看。

更多关于PCIE464M的详情介绍,点击“PCIE464M-高速高精,超高速PCIe EthrtCAT实时运动控制卡”查看。

ECI2A18B 高性价比10轴运动控制卡

ECI2A18B是正运动推出的一款高性价比10轴脉冲型、模块化的网络型运动控制卡,采用优化的网络通讯协议可以实现实时的运动控制,同时支持多种通信协议,方便与其他工业控制设备连接和集成。安装配置相对便捷,适合于模块化和灵活性要求较高的控制系统。

机械手

ECI2A18B控制卡最大可扩展至12脉冲轴,支持8路高速输入和4路高速输出,集成丰富的运动控制功能,包含多轴点位运动、电子凸轮,直线插补,圆弧插补,连续插补运动等,满足多样化的工业应用需求。

机械手

ECI2A18B硬件功能特性:

1.支持6路差分脉冲轴+4路单端脉冲轴运动控制;

2.支持1路专用的手轮输入接口;

3.差分脉冲轴最大输出脉冲频率10MHz;

4.标配24+12进16+6出,其中支持4路高速锁存,4路高速PWM,2路高速硬件比较输出PSO(可选支持HW2功能);

5.可支持RTSys+其他高级上位机编程语言的混合编程支持;

6.支持RTBasic多任务编程;

机械手

ECI2A18B视频介绍可点击→“【加量不加价】高性价比十轴脉冲运动控制卡ECI2A18B 让您的设备在自动化行业内卷中脱颖而出!”查看。

更多关于ECI2A18B的详情介绍,点击“【加量不加价】正运动网络型运动控制卡ECI2618B/ECI2A18B”查看。

▶▶▶ LabVIEW进行运动控制开发

1.找到厂家提供的光盘资料里面的LabVIEW的VI库文件,路径如下。

1)进入厂商提供的光盘资料找到“04PC函数”文件夹,并点击进入。

机械手

2)选择“01 PC函数库V2.1”文件夹。

机械手

3)选择“Windows平台”文件夹。

机械手

4)选择“LabVIEW文件夹”,里面有32位和64位的动态库和例程。

机械手机械手

2.将厂商提供的LabVIEW的VI库文件复制到LabVIEW安装路径下LabVIEW/user.lib的文件夹内。

1)找到解压的VI库文件夹(zaudll是32位的VI库,64的VI库是newZauxDll64)。

机械手机械手

2)选中LabVIEW右击打开文件所在位置(这里以LabVIEW2013-32位为演示)。

机械手

3)将整个VI库文件夹直接复制放到user.lib该目录,然后关闭LabVIEW软件重新启动。

机械手

3.重新启动LabVIEW后,选择新建VI,然后右键点击VI程序框图空白处,选择用户库来找到添加的VI库,或者直接搜索VI,最后将需要的函数直接拖到面板上。

机械手

机械手

▶▶▶例程相关函数说明

PC函数手册可在光盘资料查看,具体路径如下。

机械手机械手机械手机械手机械手机械手机械手机械手机械手机械手机械手

▶▶▶ SCARA机械手说明

01SCARA机械手算法与原理

SCARA(Selective Compliance Assembly Robot Arm,中文译名:选择顺应性装配机器手臂)是一种圆柱坐标型的特殊类型的工业机器人。

SCARA机器人具有3个旋转自由度和一个移动自由度,可以实现水平和垂直运动。可以被制造成各种大小,最常见的工作半径在100毫米至1000毫米之间,此类的SCARA机器人的净载重量在1千克至200千克之间。

SCARA系统在x,y方向上具有顺从性,而在Z轴方向具有良好的刚度。其结构简单、体积小、质量轻、动作迅速、刚性好及定位精度高。故SCARA系统大量用于装配印刷电路板、电子零部件、集成电路板此外,塑料、汽车、电子产品、药品和食品等工业领域也有广泛的应用。

机械手

(1)空间中的自由度:

以标准SCARA为例,末端的工作点可以在xy方向移动(2 轴),可以绕z旋转(3 轴),可以z方向上下(4 轴),最多有4个自由度。

(2)关节坐标系:

包含机械手所有关节,各关节之间相互独立,坐标单位为角度,一般简写作J。操作其中一个关节时不影响其他关节坐标。J1:0° J2:0° J3:0° J4:0°

(3)世界坐标系:

世界坐标系是被固定在空间上的标准直角坐标系,其位置根据机械手类型确定。虚拟轴操作时就是根据世界坐标系运动,此时各关节会自动解算需要旋转的角度。

(4)关节轴:

关节轴是指实际机械结构中的旋转关节,在程序中一般显示旋转角度(某些结构也是平移轴)。由于电机与旋转关节会存在减速比,所以设置UNITS时要按照实际关节旋转一圈来设置,同时TABLE中填写结构参数时也要按照旋转关节中心计算,而不是按照电机轴中心计算。

(5)虚拟轴:

虚拟轴不是实际存在的,抽象为世界坐标系的6个自由度,依次为X、Y、Z、RX、RY、RZ。可以理解为直角坐标系的三个直线轴和三个旋转轴,用来确定机械手末端工作点的加工轨迹与坐标。

(6)正解运动:

通过操作关节坐标,再根据机械结构参数可以计算出末端位置在直角坐标系的空间位置,这个过程称为正解运动,此时操作的是实际关节轴,虚拟轴自动计算坐标。

(7)控制器使用CONNREFRAME指令建立正解模式:

此指令作用在虚拟轴上,此时只能操作关节轴,关节轴也可以做各种运动,但实际运动的轨迹不是直线圆弧,正解模式一般用于手动调整关节位置或上电点位回零。

(8)逆解运动:

给定一个直角坐标系中的空间位置,反推出各关节轴坐标,这个过程称为逆解运动,此时操作的是虚拟轴,实际关节轴自动解算坐标并运动。控制器使用CONNFRAME指令建立逆解模式,此指令作用在关节轴上,此时只能操作虚拟轴,对虚拟轴发送运动指令,可以在笛卡尔坐标系中做直线,圆弧,空间圆弧等运动,关节轴在CONNFRAME的作用下会自动运动到逆解后的位置。

02 机械手指令算法

1.CONNFRAME--建立逆解连接

描述:

将当前关节坐标系的目标位置与虚拟坐标系的位置关联;关节坐标系的运动最大速度受SPEED参数的限制;当关节轴告警等出错时,此运动会被CANCEL。

语法:

CONNFRAME(frame,tablenum,viraxis0,viraxis1)

frame:

坐标系类型,1-scara

tablenum:

存储转换参数的TABLE位置,frame=1时,以此存放:第一个关节轴长度,第二个关节轴长度,第一个关节轴一圈脉冲数,第二个关节轴一圈脉冲数。

viraxis0:

虚拟坐标系第一个轴

viraxis1:

虚拟坐标系第二个轴

2.CONNREFRAME--建立正解连接

描述:

将虚拟轴的坐标与关节轴的坐标关联,关节轴运动后,虚拟轴自动走到相应的位置。

语法:

CONNREFRAME(frame,tablenum,viraxis0,viraxis1)

frame:

 坐标系类型, 1- scara

tablenum: 

存储转换参数的TABLE位置,frame=1时,以此存放:第一个关节轴长度,第二个关节轴长度,第一个关节轴一圈脉冲数,第二个关节轴一圈脉冲数。

axis0:

关节坐标系第一个轴

axis1:

关节坐标系第二个轴

FRAME描述:

Frame=1,SCARA,如下图,旋转轴为关节轴,末端对应位置为虚拟的位置。

机械手

在TABLE中设置好机械结构相关参数。建立机械手连接时,需要将机械结构参数按照如下次序依次填写到TABLE数组中。

机械手

▶▶▶ 例程说明

1.SCARA机械手例程界面如下。

机械手

2.例程简易流程图。

机械手

3.要想通过上位机操控控制器,就必须先链接控制器,上位机连接控制器的接口有四种,分别是网口连接、串口连接、PCI和LOCAL连接。

例如通过LOCAL链接方式的链接按钮的事件响应函数来链接控制器。

机械手

LOCAL连接用的是ZAux_FastOpen接口。

机械手

4.链接控制器后,通过判断条件来进行启动超时事件。例如通过超时获取轴坐标、机械手状态。

机械手

A.超时获取关节轴坐标。

机械手

B.超时获取关联的虚拟轴坐标。

机械手

当机械手状态为逆解时,关节轴的MTYPE(当前运动的指令类型)会变为33(机械手逆解运动),机械手状态为正解时,虚拟轴的MTYPE(当前运动的指令类型)会变为34(机械手正解运动),可以通过判断关节轴和虚拟轴的MTYPE的值就可以判断机械手的状态。

C.获取关节轴的当前运动的指令类型。

机械手

D.获取关联的虚拟轴当前运动的指令类型。

机械手

E.通过判断关节轴和虚拟轴的MTYPE的值就可以判断机械手的状态。

机械手机械手机械手

5.写入机械手参数。

机械手机械手

在SCARA参数界面设置完机械手参数后,然后点击手动界面就会显示手动界面、把机械手参数分别写入不同的数组、改变参数写入的布尔值,而超时事件会因为参数写入布尔值的改变,把之前写入不同的数组的机械手参数写入控制器当中。

A.把机械手参数分别写入不同的数组。

机械手

B.改变参数写入的布尔值。

机械手

C.超时事件因为参数写入布尔值的改变,把之前写入不同的数组的机械手参数写入控制器当中。

机械手

6.手动操作。

机械手

(1)机械手上锁/解锁

机械手上锁/解锁其实就是打开/关闭关节轴的使能,机械手在逆解状态不能关闭关节轴的使能。

机械手机械手

(2)示教待机位与运动至待机位。

示教待机位就是把当前的关节轴位置坐标写入示教位置数组里,因为机械手所有关节轴轴一起运动可能会造成碰撞,所以得让关节轴按顺序运动到示教位置,要实现关节轴按顺序运动到示教位置,就要等待前一个顺序的关节轴运动完成,再让下一个关节轴运动,这就有个等待关节轴运动完成的过程,如果这个过程放在事件里面,就会造成阻塞,界面就会卡住,所以为了解决这个问题,处理关节轴顺序运动就放在了超时事件里面,运动至待机位按钮事件只是负责改变一个布尔值和一个变量值,超时事件就用这布尔值作为关节轴顺序运动至待机位是否开启的判断条件,用这变量值确保关节轴顺序至待机位的步骤从头到尾只执行一次。

A.按下示教待机位按键。

机械手

B.按下运动至待机位。

机械手

C.超时事件中的回到待机位。

机械手

机械手机械手机械手机械手机械手

(3)手动速度比例增加/减小

手动速度比例最大为200%,最小为5%,当手动速度比例小5%,手动速度比例就会变为寸动距离或角度,寸动距离或角度最小是0.01。

手动速度比例的增加/减小是分区间的:

200%-100%:每次增加/减小50%;

100%-25%:每次增加/减小25%;

25%-5%:每次增加/减小5%;

当手动速度比例小5%:手动速度比例就会变为寸动距离或角度;

1-0.01:每次乘以/除以10。

机械手机械手机械手机械手

(4)关节轴/虚拟轴手动按键。

要实现手动按住按钮,轴就运动,松开按钮,轴就停止,就要首先把按钮动作设置为保持转换直到释放,然后在按钮值改变事件中添加用按钮布尔值作判断。

布尔值为真时,根据机械手状态,判断要不要进行机械手正/逆解,然后根据手动速度比例是否大于5,来判断使用单轴持续运动接口,还是使用单轴相对运动接口;

布尔值为假时,会根据手动速度比例是否大于5,判断是否使用单轴停止接口。下面以按键负向1为例子说明:

A.把按钮动作设置为保持转换直到释放。

机械手

B.根据机械手状态,判断要不要进行机械手正/逆解。

机械手

C.根据手动速度比例是否大于5,来判断使用单轴持续运动接口,还是使用单轴相对运动接口。

机械手机械手

D.按键松开时,会根据手动速度比例是否大于5,判断是否使用单轴停止接口。

操作演示视频可点击→“视频教程:LabVIEW运动控制(一):EtherCAT运动控制器的SCARA机械手应用”查看。

本次,正运动技术LabVIEW运动控制(一):EtherCAT运动控制器的SCARA机械手应用,就分享到这里。

更多精彩内容请关注“正运动小助手”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师:400-089-8936。

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

审核编辑 黄宇

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

全部0条评论

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

×
20
完善资料,
赚取积分