Type:

Axis Command

Syntax:

FLEXLINK(base_dist, excite_dist, link_dist, base_in, base_out, excite_acc, excite_dec, link_axis, options, start_pos)

Description

The FLEXLINK command is used to generate movement of an axis according to a defined profile. The motion is linked to the measured motion of another axis. The profile is made up of 2 parts, the base move and the excitation move both of which are specified in the parameters. The base move is a constant speed movement. The excitation movement uses sinusoidal profile and is applied on top of the base movement.

FLEXLINK命令用于根据定义的轮廓生成一个轴运动,本运动跟另一轴的测量相关。轮廓由“基本位移”与“激波位移”二部分组成,同时二者都可以在参数中配置。“基本位移”是一个恒速运动,“激波位移”采用正弦曲线而且居于“基本位移”的上部。

Parameters:

base_dist:

The distance the axis should move at a constant speed

excite_dist:

The distance the axis should perform the profiled move

link_dist:

The distance the link axis should move while the FLEXLINK profile executes

base_in:

The percentage of the base move time that completes before the excitation move starts

base_out:

The percentage of the base move time that completes after the excitation move completes.

excite_acc:

The percentage of the excitation move time used for acceleration

excite_dec:

The percentage of the excitation move time used for deceleration.

link_axis:

The axis to link to.

link_options:

Bit value options to customize how your FLEXLINK operates

Bit 0

1

link commences exactly when registration event MARK occurs on link axis

Bit 1

2

link commences at an absolute position on link axis (see link_pos for start position)

Bit 2

4

FLEXLINK repeats automatically and bi-directionally when this bit is set.  (This mode can be cleared by setting bit 1 of the REP_OPTION axis parameter)

Bit 5

32

Link is only active during a positive move on the link axis

Bit 8

256

link commences exactly when registration event MARKB occurs on link axis

Bit 9

512

link commences exactly when registration event R_MARK occurs on link axis. (see link_pos for channel number)

link_pos:

link_option bit 1 - the absolute position on the link axis in user UNITS where the FLEXLINK is to start.

link_option bit 9 – the registration channel to start the movement on

base_dist:

轴在恒速移动的距离段(上图黄色区域)

excite_dist:

轴在异形段移动的距离区间(上图灰色部分)

link_dist:

在执行flexlink轮廓时,连接轴将要移动的距离

base_in:

在“激波位移”启动之前,完成的“基本位移”时间百分比   (相当于在同步区域,主轴和从轴)

base_out:

在“激波位移”完成后,须完成的“基本位移”时间百分比(相当于在同步区域,主轴和从轴)

excite_acc:

在“激波位移”执行时,加速度区间占用的时间百分比

excite_dec:

在“激波位移”执行时,减速度区间占用的时间百分比

link_axis:

联接的轴号

link_options:

根据Bit值的选项来定制MOVELINK的运动

Bit 0

1

联接开始,当注册事件(Mark)发生在联接轴上时

Bit 1

2

联接开始,指定联接轴的绝对位置(link_pos起始位置)

Bit 2

4

FLEXLINK自动重复双向运行(REP_OPTION=1关闭此模式)

Bit 5

32

在联接轴的正移动过程中(加计数状态),联接才有效

Bit 8

256

联接开始,当注册事件(MarkB)发生在联接轴上时

Bit 9

512

联接开始,当注册事件(R_Mark)发生在联接轴上时(见link_pos的通道数)

link_pos:

link_option bit 1:联接轴上指定的绝对位置启动FLEXLINK(使用的是用户单位)

link_option bit 9:开始运动的注册通道

The link_dist is in the user units of the link axis and should always be specified as a positive distance.

该link_dist是联接轴的用户单位,总是应该指定一个正的距离值。

The link options for start (bits 1, 2, 8 and 9) may be combined with the link options for repeat (bits 4 and 8) and direction.

启动为link options (bits 1, 2, 8 and 9),也可以结合link options中重复的 (bits 4 and 8)和方向

start_pos cannot be at or within one servo period’s worth of movement of the REP_DIST position.

start_pos不能在一个伺服周期内从REP_DIST位置中取得有意义的运动

Examples:

Example 1:

Suppose you want a smooth curve for 40% of a cycle and to remain stationary for the remainder:

FLEXLINK(0,10000,20000,60,0,50,50,1)

In this example the move length is 10000 and this is linked to 20000 distance on the link axis (1).  The axis is stationary for 60% of the cycle and the move is 50% accel/50% decel.

Example 2:

Suppose you want a 1:1 background link but to advance 500 using a smooth curve between 80% and 95% of a cycle:

FLEXLINK(10000,500,10000,80,5,50,50,1)

In this example the base move length is 10000 and this is linked to 10000 distance on the link axis (1).  The excite distance is 500 and this starts after  80% of the cycle, with 5% at the end also clear of excitation.  The “excite” move is 50% accel/50% decel.

自己总结:

这是一条运动指令,在工业项目中的轮切,飞剪等一些项目的应用。

看上面描述的图片理解:

          黄色区域 = 主轴运动的曲线

          红色的曲线 = 跟随轴的曲线

          BASE IN 是同步区域,BASE OUT 是同步区域

          EXCITE ACC    EXCITE DEC 是可以通过参数来修改加速和减速的曲线

下一期我会针对这条指令的应用,给出一些实例,包括曲线,参数,一直注意的事项。

TRIO-basic指令--FLEXLINK的更多相关文章

  1. 杂项-软件: VBA(Visual Basic for Applications)

    ylbtech-杂项-软件: VBA(Visual Basic for Applications) VBA (Visual Basic宏语言) Visual Basic for Application ...

  2. Nginx模块参考手册:HTTP核心模块

    FROM: http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=17238776&id=2982697 这些模块默认会全部编 ...

  3. nginx 参数详解

    nginx的http web功能     必须使用虚拟机来配置站点:每个虚拟主机使用一个server{}段来配置     非虚拟主机的配置.公共选项,需要定义在server之外,http之内      ...

  4. 我在知乎上关于Laser200/310电脑的文章。

    我是30年前从Laser-310起步的,我来回答这个问题. 主要硬件规格: CPU:Z-80A/4.7MHz主频 16K RAM + 2K Video RAM 16K ROM 磁带输出:波特率300 ...

  5. Nginx HTTP 核心模块

    原文链接:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=17238776&id=2982697aio 语法:aio [ ...

  6. TRIO-basic指令--函数FUNCTION

    TRIO-basic支持函数(强类型)编程,与PLC来相比较的话类似于定义的功能块可以重复调用,和C,C#......等一些高级的编程语言的函数类似.上一次的demo中决定尝试TRIO的函数来做一些例 ...

  7. IL指令详细表

    名称 说明 Add 将两个值相加并将结果推送到计算堆栈上. Add.Ovf 将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上. Add.Ovf.Un 将两个无符号整数值相加,执行溢出检查,并且 ...

  8. IL指令汇总

    名称 说明   名称 说明 Add 将两个值相加并将结果推送到计算堆栈上.   Ldelem.I1 将位于指定数组索引处的 int8 类型的元素作为 int32 加载到计算堆栈的顶部. Add.Ovf ...

  9. [.NET逆向] .net IL 指令速查(net破解必备)

    .net的破解比较特殊,很多人看见IL就头疼,最近在研究的时候发现了这个东东 相信对广大学习net破解的人一定有帮助 .对上指令表一查,跟读原代码没什么区别了, 名称 说明 Add 将两个值相加并将结 ...

随机推荐

  1. 【redis专题(5)】命令语法介绍之sets

    标签(空格分隔): Redis 关于 redis的无序集合有三个特点: 无序性, 确定性(描述准确) , 唯一性: 有点类似于数据容器: 增 SADD key member1 [member2] 作用 ...

  2. MailKit帮助类

    public class EmailHelp { /// <summary> /// Smtp服务器地址 /// </summary> private static reado ...

  3. Word中类似正则匹配的查找替换通配符的使用详解

    一.Word查找栏代码&通配符一览表 序号 清除使用通配符复选框 勾选使用通配符复选框 特殊字符 代码 特殊字符 代码or通配符 1 任意单个字符 ^? 任意单个字符 ? 2 任意数字 ^# ...

  4. [经验总结] 在 windows 命令窗口中运行 python 脚本时提示 ModuleNotFoundError: No module named 'xxx'

    先给出的代码和目录结构 获取CPU代码如下: # -*- coding:utf-8 -*- ''' Created on Sep 10, 2018 @author: ''' import sys im ...

  5. 【Ansible 文档】【译文】模版(Jinja2)

    Templating (Jinja2) 正如在 variables 部分描述的那样, Ansible 使用Jinja2模版来启用动态表达式和访问变量. Ansible 扩展了许多 filtes 和 t ...

  6. NET Framework 各版本官方下载

    https://msdn.microsoft.com/en-us/library/5a4x27ek(v=vs.110).aspx https://www.microsoft.com/zh-CN/dow ...

  7. cenos下安装MySQL最新版(5.7.18)记录。附卸载老版本过程

    首先说明:老版本数据库没有数据,所以无数据备份过程.如果你在升级数据库过程里,需要备份数据,请另外自行处理. 1.下载最新版MySQL.解压待用 wget https://dev.mysql.com/ ...

  8. linked-list-cycle (快慢指针判断是否有环)

    class Solution { public: bool hasCycle(ListNode *head) { if (head == NULL) return NULL; //空表 ListNod ...

  9. D - C Looooops POJ - 2115 欧几里德拓展

    题意:就是看看for(; ;)多久停止. 最让我蛋疼的是1L和1LL的区别!让我足足wa了12发! 1L 是long类型的, 1LL为long long类型的! 思路: 这就是欧几里德扩展的标准式子了 ...

  10. Perfect Pth Powers pku-1730(筛+合数分解)

    题意:x可以表示为bp, 求这个p的最大值,比如 25=52, 64=26,  然后输入x 输出 p 就是一个质因子分解.算法.(表示数据上卡了2个小时.) 合数质因子分解模板. ]; ]; ; ;n ...