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. python 计时累积超过24小时时继续往上累加

    最近在做一个工具,要求在工具上面加上程序运行的时间,所以做了个计时器 在网上找了很多发现都是24小时制的,超过24小时后就会回0 然后自己根据24小时制修改了一个不停累加时间的 若是想超过24小时后以 ...

  2. C# 连接Oracle时报错的问题

    “/”应用程序中的服务器错误. 试图加载格式不正确的程序. (异常来自 HRESULT:0x8007000B) 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该 ...

  3. February 9th, 2018 Week 6th Friday

    Every one of us want to ameliorate our own condition. You can only cure retail but you can prevent w ...

  4. Ulua对象管理方式

    不管是C++中还是在C#中,在都绕不开一个问题:类对象怎么在Lua中使用的问题,还好Lua提供了Userdata以及ligh Userdata结构类型,通过扩展可以处理这方面的问题.现在的很多框架也大 ...

  5. 17秋 软件工程 团队第五次作业 Alpha Scrum10

    17秋 软件工程 团队第五次作业 Alpha Scrum10 今日完成的任务 世强:Android客户端成员列表完善.APP前端子部门和活动中心界面与数据交互: 港晨:Web前端主页的接口对接: 树民 ...

  6. 5、爬虫系列之scrapy框架

    一 scrapy框架简介 1 介绍 (1) 什么是Scrapy? Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍.所谓的框架就是一个已经被集成了各种功能(高性能 ...

  7. centos7下安装docker(3.3创建镜像--修改dockerfile)

    1.我们在制作dockerfile的时候可能有些命令无法执行,导致镜像无法创建成功,这时我们可以修改dockerfile,从而达到我们的目的 查看Dockerfile内容 创建新的镜像,失败 Dock ...

  8. Redis String类型的API使用

    package com.daxin.jedis_datastructure; import org.junit.After; import org.junit.Before; import org.j ...

  9. 1346:【例4-7】亲戚(relation)

    并查集的模板题: #include<iostream> #include<cstdio> using namespace std; ; int fa[maxn]; int fi ...

  10. Street Numbers POJ - 1320(佩尔方程式)

    题意:就是从n到1再从1到n的各个数字之和为sum1, 然后从n到m,再从m到n的各个数字之和为sum2,求,(n,m)的前10组解. 思路: 直接建模,利用等差数列的求和公式计算一个公式(2n+1) ...