Flying Saw debug

Part1 Encoder extrapolation

Machine introduction

A tube cutting saw, is working for cut tube to length in line.

A measuring wheel measures the position of the tube, when cutlength reached the moving table gearon with the measuring wheel. When the table and measuring wheel synchronized, the saw blade start cut. After cut finished or the moving table reach back position, the table pos back to start position.

This machine is controlled by siemens simotionD motion controller.The program is written by other engineer, after using for several month , user find some problems. I am in charge for on site commissioning.

max line speed : 80m/min

Problem1: cut length out of tolarence when accelaration and deceleration

Appearance:

When acceleration, actual cut length longer than set length.When deceleration, actual cut length shorter than set length. The length different could bigger than 10mm.

Analyze:

If an axis gearing/camming with another axis(or encoder), assume the gearing ratio is 1:1 and every parameter is default value. The slave position will always behind master position, because there is delay in the control loops.

I check the program, and find the encoder has set position filter. As encoder is the master of the carriage, because there is some ocillation is the tube, using position filter is a good solution. The position filter in this project is 20ms + 20ms.

Position filter has a good affect that the speed is smooth, and a bad affect that the filtered position is lagged behind the actual position.

Position delayed  = encoderVelocity x filterTime

Extrapolation

There is several solution to handle the position difference. Extrapolation is an easy and effective method.

Extrapolation position
= positionBeforeExtrapolation + ExtrapolationVelocity x ExtrapolationTime Extrapolation velocity = differential(Extrapolation position)

The graph below is extrapolation signal flow. In the middle of graph, is extrapolation time. Before extrapolation ,there is a position filter in position channel , and a velocity filter in velocity channel. These two filter only effective when extrapolation time bigger than 0.

Extrapolation setting method

Step 1:

In the FlyingSaw Axis interconnections, select "Actual value with extrapolation" of encoder.

Step 2: set extrapolation velocity filter

I prefer "mean value filter" than the "pt1/pt2" filter.

velocity filter time could be 0.1 to 0.2s. This filter is very important, a smooth velocity ensured the extrapolation value is stable.

Step 3:

how long the extropolation time should be? experience should related to the system delay time. So I can write an equation here.

extrapolation time ≈ Positionfiltertime + 2*ipo_time
= 20ms + 20ms + 2ms = 42ms (in this project)

If you are not sure about the filter time, then try a smaller value, like 70% of the calulated value.


Result

After implement extrapolation, the cutting accuracy at acceleration and deceleration is much better, length different less than 2mm.

Motion control encoder extrapolation的更多相关文章

  1. V-rep学习笔记:Reflexxes Motion Library 1

    V-REP中集成了在线运动轨迹生成库Reflexxes Motion Library Type IV,目前Reflexxes公司已经被谷歌收购.(The Reflexxes Motion Librar ...

  2. The Enginer sample Test for GD temperature control (FCT, ATE, NPI,SMT, )

    For me it is a day of grief.................... 1 Communication with customer test methods. notes: T ...

  3. 【论文阅读】Motion Planning through policy search

    想着CSDN还是不适合做论文类的笔记,那里就当做技术/系统笔记区,博客园就专心搞看论文的笔记和一些想法好了,[]以后中框号中间的都算作是自己的内心OS 有时候可能是问题,有时候可能是自问自答,毕竟是笔 ...

  4. 周期同步位置模式(CSP),轮廓位置模式(PPM),位置模式(PM)

    什么是运动控制? 运动控制就是通过机械传动装置对运动部件的位置.速度进行实时的控制管理,使运动部件按照预期的轨迹和规定的运动参数(如速度.加速度参数等)完成相应的动作. 运动控制系统的典型构成 1. ...

  5. (zhuan) Deep Reinforcement Learning Papers

    Deep Reinforcement Learning Papers A list of recent papers regarding deep reinforcement learning. Th ...

  6. VES Hand Book Contents

    3...ABOUT THE VES4...Foreword 6...Chapter 1......Introduction6......Visual Effects and Special Effec ...

  7. Digests from CG articales

    Turtle Talk Prior to the on-set motion capture, the team had the actors perform expressions while be ...

  8. 读书笔记-Autonomous Intelligent Vehicles(一)

    Autonomous intelligent vehicles have to finish the basic procedures: perceiving and modeling environ ...

  9. jquery和css自定义video播放控件

    下面介绍一下通过jquery和css自定义video播放控件. Html5 Video是现在html5最流行的功能之一,得到了大多数最新版本的浏览器支持.包括IE9,也是如此.不同的浏览器提供了不同的 ...

随机推荐

  1. [补档]暑假集训D7总结

    刷题 上午刷了一上午的网络流 (md建图快建吐了),然后就搞了一个网络流的索引= = (实在看不下去那篇大长文了啊喂),然后发现都是水题= =,我还瞎××乱刷 下午--听说我要刷平衡树? Blog 日 ...

  2. 走过夏天,我的H5旅程,一路慢行

    <!DOCTYPE html> <!-- 文档类型声明:让浏览器,按照html5的标准对代码进行解释和执行. 文档类型声明必不可少,而且,必须放在文档最上方. 如果不写文档类型声明, ...

  3. jQuery相关知识总结一

    1day-jquery 1. 1 jQuery 1概念 * JavaScript(ECMA/DOM/BOM)在实际开发中,使用比较麻烦,有浏览器兼容问题. * JavaScript类库(JS库) 的目 ...

  4. win10*64+vs2015+opencv3.0工程模板配置

    参考网上的资料,自己再次整合一下,为新手提供个方便,也为自己备份. 一.下载安装opencv3.0 1.首先下载opencv3.0的包(windows版本的) 2.安装opencv,路径自己选好,自动 ...

  5. Unity3D常用代码集合

    1.基本碰撞检测代码 function OnCollisionEnter(theCollision : Collision){         if(theCollision.gameObject.n ...

  6. JVM笔记——技术点汇总

    目录 · 初步认识 · Java里程碑(关键部分) · 理解虚拟机 · Java虚拟机种类 · Java语言规范 · Java虚拟机规范 · 基本结构 · Java堆(Heap) · Java栈(St ...

  7. [算法题] Search in Rotated Sorted Array

    题目内容 本题来源LeetCode Suppose an array sorted in ascending order is rotated at some pivot unknown to you ...

  8. PHP中单引号、双引号和转义字符

    在PHP语言总,单引号与双引号的作用不尽相同. PHP单引号及双引号均可以修饰字符串类型的数据,如果修饰的字符串中含有变量(例$name):最大的区别是:双引号会替换变量的值,而单引号会把它当做字符串 ...

  9. XSS编码初析

    首先我们应当了解,当我们发送一个请求链接时,服务器与客户端都发生了什么 这里仅涉及到js的编码问题,因此就编码来说,首先我们确定我们发出的请求是采用GET的方式还是采用POST的方式 若采用GET的方 ...

  10. Linux学习总结(十一)—— Linux常用命令:版本信息查看(RedHat、CentOS、Debian、Ubuntu、Fedora、Oracle)

    这篇文章收集了CentOS.Oracle.RedHat等系统查看发行版本.内核版本.位数的方法,欢迎补充. 系统 发行版本 -- 内核版本.位数 RedHat cat /etc/issue cat / ...