跳到内容
3D计量系统,航空航天和国防,应用笔记,定制工程动作系统,六角峰,综合自动化系统,激光扫描头,激光系统,医疗器械制造,运动控制平台,光学和光子,精密制造,科学研究机构,阶段亚博微信vip群和执行器,测试和检查
应用笔记

与AxisStatusfast的定制关系和协调运动

许多应用需要系统参数或辅助运动设备之间的自定义协调关系以及主机械机械的运动。同样,通常需要在虚拟编程坐标帧和真实机制之间的自定义运动转换。Aerotech的AxisStatusFast命令是使用Aerobasic编程语言编程这些关系和转换的理想工​​具。以下示例将显示这是如何完成的。

示例关系开发

作为X和Y轴的限定球面高度之后的垂直Z轴被独立地编程为移动该表面是定制可编程关系的简单示例。此示例来自真实世界的应用程序,并且是对协调运动系统内定制可编程关系的有用性的好介绍。

图1显示了在一个部分半球上沉积的3D打印天线阵列。通过将已知的X、Y和Z轴位置的球面关系编程到运动控制器中,保持刀尖相对于X和Y轴运动的能力大大简化。亚博微信vip群用户可以简单地用航空科技的CADFusion 2D图形运动开发工具在X和Y坐标上编程所需的投影2D轮廓,轮廓将正确地重新投影到所需的半球上,因为Z轴将隐式地遵循所编程的球面关系。使用AXISSTATUSFAST命令和TrajectoryDelayFilter参数可以很容易地编写这种自定义关系。这两个特性为用户提供了广泛的能力来编写系统变量和轴运动之间的自定义协调关系,而且它们使用起来很简单。

图1.局部半球表面上的天线阵列的3D打印。照片由哈佛大学刘易斯教授提供的照片。

对于这个简单的半球例子,首先让我们定义要编程到Z轴轨迹生成的关系。图2描绘了一个半球的侧面投影,在顶点处建立了一个已知的零位置。对于X、Y平面上的任何一点,可以根据半球的名义半径确定Z轴位置。通过X和Y位置命令知道到半球轴的径向距离,可以在腿为R、K和√(Xpos2+Ypos2)的地方画一个三角形。通过毕达哥拉斯定理,我们得到方程1。

k =√(r2-(xpos2 + ypos2))(eq。1)

图2.从图1中打印的半球形伪像的侧投影。在半球的顶点上建立了零位置,并且其半径是名义上已知的。这允许z轴的位置命令被隐式地生成作为x轴和y轴位置命令的函数。

此外,从图2中可以清楚地清楚等式2也是如此。

ZPOS = R-K(EQ。2)

结合两个我们最终以与X和Y位置命令的函数(等式3)的函数被编程到Z轴轨迹中的关系。

ZPOS = R-√(R2-(XPOS2 + YPOS2))(EQ.3)

既然已经建立了z轴和x和y轴之间所需的运动关系,我们可以学会将这种关系编程到z轴轨迹中,然后学习将其与x和y轴的轴同步。

使用AxisStatusFast进行编程

Apendix A中提供了A3200软件套件中可用的采样优势代码。它显示了在与x和y轴轨迹中确定的等式3中建立的关系执行依赖z轴轨迹生成所需的步骤。由于Z轴轨迹依赖于X和Y轨迹,因此必须使用AxadStatusFast命令以在运动更新速率下收集X和Y位置命令。系统配置文件中的“modatePdaterate”参数设置每个轴的轨迹生成频率。通常,伺服阶段的最大运动更新速率为8 kHz。在编码示例中,假设为所有轴假设8kHz MotionUpdaterate设置。

AxisStatusFast命令允许用户以生成它们的速率收集不同的数据项。在这种情况下,我们从x和y轴收集“positionCommandRawunFiltered”数据流。必须使用此原始的未过滤信号,以便在计算的z轴轨迹中内置了不可调和的滤波延迟。这允许使用轨迹延迟与X和Y轴正确地重新同步Z轴。如果使用过滤器的命令信号,则无法在所有轴之间实现同步。

AxisStatusFast命令可以在示例代码的第25行和26行中看到。有氧的“临界”代码块以1 kHz速率执行。在示例代码中,一切都包含在关键的开始和关键结束命令块中。因此,要在1 kHz任务执行中捕获全8 kHz的x和y轨迹信号,每次关键代码执行时都必须捕获8个数据点并填充到数组中。使用AxisStatusFast命令的每次执行捕获的数据点数由命令行中的最后一个参数定义。现在x和y轨迹点处于阵列中,它们可用于计算该循环的8个轨迹点的z轴位置。要查看可以通过AxisStatusFast命令和实现方向收集数据项的完整列表,请访问“DataCollect Item”命令和“AxisStatusFast”命令A3200帮助文件主题。

为了计算Z轴轨迹,建立一个简单的循环结构,以通过每个XY命令位置进行,并根据具有等式3建立的球形关系计算相应的z轴命令。在循环的末尾是PT(位置和位置)时间)命令行,其中z轴在1/8的1/8的指定时间间隔中命令命令z轴的计算位置,对应于循环的八次将在1毫秒长的关键代码部分中运行。这与8 kHz的X和Y轴的轨迹速率匹配。在计算和命令所有八个Z轴位置之后,收集下一个八个x和y轨迹点,并且只要启用关系,重复该过程。

使用在后台任务中运行的示例代码,主动作被命令到另一个任务中的x和y轴。z轴始终遵循等式3中定义的球形表面,无论x和y都被命令到#。解决的最后一个问题是同步。

同步轨迹

用户必须在x和y轴上实现轨迹延迟,以同步所有三个轴的运动。因为z轴留下对被发送到x和y轴的命令进行反应,所以与x和y轴相比,它在其轨迹的执行后固有地滞后。关键代码部分的执行需要1毫秒,并且从机器控制器收集X和Y轨迹有额外的延迟。为了补偿z轴中的延迟,用户必须进入系统配置文件并放入x和y轴的轨迹,可以在轴>运动>过滤器文件夹部分中找到。该参数在x和y轨迹执行中增加了同一幅度的启动延迟,因为z轴由于关系计算而看到的。因此,轴线完全重新同步。

以毫秒为单位的TroajectoryDe​​layFilter的所需值取决于系统布置和正在使用的驱动器。在这种情况下,需要延迟3毫秒的延迟来解释代码执行和与所使用的驱动器硬件相关联的延迟。用户确定正确延迟的最简单方法是在添加TrajectoryDe​​layFilter之前测量相对于数字范围实用程序中的x和y轴的x和y轴中的z轴命令流中的相位延迟。图3示出了捕获的数字范围图,示出了在添加轨迹延迟之前滞后x和y轴的z轴命令流。

使用左右游标线,所需的3毫秒延迟可以很容易地测量出来。图4显示了在X和Y命令流中通过TrajectoryDelayFilter参数实现了3毫秒的延迟之后,相同的运动线。你可以看到所有三个轴上的运动现在都同步到完全相同的轨迹生成周期。

图3. A3200的数字范围实用程序的屏幕截图显示Z轴命令响应上的相位滞后,由于对X和Y轴命令的编程球形关系。

结论

虽然这个Z轴跟踪球面的例子很简单,但这里使用的概念为用户提供了一个非常强大的功能,当涉及到非线性定制运动学规划时。极其复杂的函数关系和运动学转换之间的运动的大量轴,无论是真实的和虚拟的,可以直接编程在aeroasic语言。轨迹依赖于其他轴的运动的轴和非线性自定义运动转换是许多复杂自动化应用中常见的问题。此外,你可以建立不仅仅基于职位的关系。除了位置之外,还可以根据另一个轴的速度命令和/或加速度命令的功能,对从属轴的位置进行编程。AXISSTATUSFAST命令为用户提供了多功能性,可以指定他们能想到的任何真实轴和/或虚拟轴之间的运动学关系,而trackydelayfilter参数允许运动执行保持同步。

图4. A3200的数字范围实用程序的屏幕截图显示x,y和z轴的命令在x和y轨迹中添加了3毫秒的TrajectoryDe​​layFilter参数后同步。

附录A.

样本有氧规则

将您的精确度和自动化挑战转化为过程成功。