Motion control encoder extrapolation
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的更多相关文章
- V-rep学习笔记:Reflexxes Motion Library 1
V-REP中集成了在线运动轨迹生成库Reflexxes Motion Library Type IV,目前Reflexxes公司已经被谷歌收购.(The Reflexxes Motion Librar ...
- 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 ...
- 【论文阅读】Motion Planning through policy search
想着CSDN还是不适合做论文类的笔记,那里就当做技术/系统笔记区,博客园就专心搞看论文的笔记和一些想法好了,[]以后中框号中间的都算作是自己的内心OS 有时候可能是问题,有时候可能是自问自答,毕竟是笔 ...
- 周期同步位置模式(CSP),轮廓位置模式(PPM),位置模式(PM)
什么是运动控制? 运动控制就是通过机械传动装置对运动部件的位置.速度进行实时的控制管理,使运动部件按照预期的轨迹和规定的运动参数(如速度.加速度参数等)完成相应的动作. 运动控制系统的典型构成 1. ...
- (zhuan) Deep Reinforcement Learning Papers
Deep Reinforcement Learning Papers A list of recent papers regarding deep reinforcement learning. Th ...
- VES Hand Book Contents
3...ABOUT THE VES4...Foreword 6...Chapter 1......Introduction6......Visual Effects and Special Effec ...
- Digests from CG articales
Turtle Talk Prior to the on-set motion capture, the team had the actors perform expressions while be ...
- 读书笔记-Autonomous Intelligent Vehicles(一)
Autonomous intelligent vehicles have to finish the basic procedures: perceiving and modeling environ ...
- jquery和css自定义video播放控件
下面介绍一下通过jquery和css自定义video播放控件. Html5 Video是现在html5最流行的功能之一,得到了大多数最新版本的浏览器支持.包括IE9,也是如此.不同的浏览器提供了不同的 ...
随机推荐
- 刚装的系统C盘占空间特别大怎么办?关闭win7的系统还原和调整虚拟内存
刚装的win7系统,C盘占空间特别大,清理垃圾,清理碎片之后还是特别大,检查一下,系统才20G,C盘却占用了40G,其实是没有关闭系统还原,再就是没有调整虚拟内存.win7旗舰版(其他版本也可能这样, ...
- HttpStatus各种状态
JS.ns("JS.HTTPStatus","JS.XMLHttpRequest"); /** * FC 2616 HTTP1.1规范的HTTP Status状 ...
- Alluxio 1.5集群搭建
一.依赖文件安装 1.1 JDK 参见博文:http://www.cnblogs.com/liugh/p/6623530.html 二.文件准备 2.1 文件名称 alluxio-1.5.0-hado ...
- M3
一,使用媒体查询的三种方式 1.直接在CSS中使用: @media 类型:(长选用all/screen)and (条件1)and(条件2){ CSS选择器{ CSS属性:属性值 } } ...
- nodejs 文件读取一行
作者QQ:1095737364 QQ群:123300273 欢迎加入! 废话没有,直接上代码: app.get('/company', function (req, res, nex ...
- fstab设置开机挂载--鸟哥[阅读]
設定開機掛載: 手動處理 mount 不是很人性化,我們總是需要讓系統『自動』在開機時進行掛載的!本小節就是在談這玩意兒! 另外,從 FTP 伺服器捉下來的映像檔能否不用燒錄就可以讀取內容?我們也需要 ...
- ubuntu 创建 PyCharm 桌面快捷方式 (或者叫 启动器 )
优麒麟新出的 17.04 新加了各种软件支持.忍不住体验一把.可是安装完 PyCharm 之后,总是无法创建桌面快捷方式(这种说法貌似是windows的,ubuntu不认,它管这种方式 叫 启动器). ...
- exit()与_exit()的区别(转)
http://blog.csdn.net/lwj103862095/article/details/8640037 从图中可以看出,_exit 函数的作用是:直接使进程停止运行,清除其使用的内存空间, ...
- MT过安全狗增加用户
记一次入侵时发现可以增加用户,但是由于狗的存在,无法赋予管理员权限 此时就进行类似使用注册表的复制超级管理员的操作 使用MT的克隆功能, net user test test /add mt -clo ...
- mysql按某个列执行1-N排名的问题
对所有员工的当前(to_date='9999-01-01')薪水按照salary进行按照1-N的排名,相同salary并列且按照emp_no升序排列CREATE TABLE `salaries` (` ...