Codesys实现非线性函数关系的轴联动控制
1、序言
在伺服应用中,多轴联动的控制需求已经越来越多,精度要求也越来越高。目前PLC常用的联动控制有直线插补,圆弧插补,实现方法可以用专用的插补指令,G代码等功能。但是直线插补和圆弧插补毕竟功能有限,无法完成所有图形。电子凸轮也能实现联动控制,但实际上电子凸轮的功能只是通过多项式去拟合,并非真正的按函数曲线运行,存在一定的局限性。Codesys使用G代码和电子凸轮功能可以参考以下文章:
codesys采用G代码实现圆弧插补和螺旋插补的可视化仿真
Codesys使用电子凸轮实现追剪功能
Codesys提供了轴位置跟随的控制指令followposition,该指令可以实现从动轴跟随主轴运行,而主从轴之间的相互关系在理论上可以是任意函数,比如正弦,余弦,椭圆,抛物线,指数曲线等,本文主要介绍followposition功能块的应用以及非线性函数曲线的多轴联动控制实现方法,并通过可视化仿真验证结果。
2、指令功能
bExecute的上升沿为启动功能块,功能块执行中可以重新触发上升沿,每次上升沿都会重新载入功能块的输入参数,重新执行功能块。
本功能块用于直接指定轴每个同步周期要运动到的目标位置,不会做速度、加速度等检查,故使用时要注意处理好fSetPosition的值,实现轴运行速度的连续性变化。
功能块执行时,轴处于Synchronized Motion。 如要停止本功能块的执行,可以通过MC_Halt、MC_GearOut、MC_CamOut等功能打断。
3、应用
3.1、正弦函数关系
程序:建立使能,X轴按绝对模式运行,前进和后退,Y轴沿X轴的正弦轨迹运行,如图建立程序:
可视化仿真结果:
codesys跟随指令使用之正弦跟随
3.2、椭圆关系
椭圆关系与正弦关系控制方式不同,正弦函数,每一个X点都能对应唯一的一个Y值,而椭圆关系不行,存在一个X点对应两个Y值的情况,因此我们需要进行转换,用极坐标方程可以实现角度与X轴,Y轴都是一一对应,即X=a*cosα;Y=b*sinα;以此函数关系建立两个followposition指令,Z轴作为角度α的移动轴,α动作,X轴Y轴跟着动作,(使能和停止不再列出)程序如图所示
可视化仿真结果如下:
codesys跟随指令使用之椭圆
4、注意事项
followposition指令在使用时需要注意一些数学上的问题;
a、followposition指令虽然可以实现一些非线性的函数关系,能够完成G代码或电子凸轮无法实现的东西,但其运行时不会检查轴的速度和加速度,如果位置函数关系不连续,则会出现速度跳变的情况,甚至直接从正向运行到反向运行的情况。在实际运行中,此类情况下,伺服电机无法实现,轻则伺服驱动器报警停机,重则可能导致伺服撞击,损坏设备,因此在建立函数关系时需要注意其连续性和可导性;
b、建立函数关系时,需要确保跟随轴与主轴之间的关系,必须是每一个主轴的点都只能对应一个跟随轴的值,如果无法一对一(比如椭圆函数,一个X点对应有两个Y值,渐开线函数一个X点可对应多个Y值),就需要进行数学转换,必要时添加虚轴,做到一个X轴对应一个Y值。
因此在使用此指令时务必当心,且调机时要小心验证,确认无误后方可运行。
本文所设计程序依旧使用V3.5.14.10版本,程序源代码下载地址:
Codesys跟随指令实现非线性函数(正弦、椭圆)的轴联动功能源程序--CSDN文库https://download.csdn.net/download/qq_19979629/76533217
Codesys实现非线性函数关系的轴联动控制相关推荐
- codesys 串口通讯实例_CODESYS线上直播,解读控制器开发那些事儿(二)
大家好,CODESYS已经在叨叨平台直播了6期课程,通过这6期课程我们也为大家分享了满满的干货,带大家了解了CODESYS的产品家族.基础编程和运动控制的入门编程,今天小编就简单带大家回顾一下后三期课 ...
- [电路笔记]非线性电路
目录 非线性电阻 曲线相交法分析非线性电阻电路 非线性电路的方程 小信号分析法 那些元件参数随电压电流变化的元件,称之为非线性元件,含有非线性元件的电路称之为非线性电路. 非线性电阻 非线性电阻不满足 ...
- 通俗易懂:非线性与线性的区别是什么?
文章来源-公众号:有限元仿真分析 非线性是自然界复杂性的典型性质之一,那么你对非线性了解多少呢?以下可见一斑: 什么是非线性 非线性(non-linear),即 变量之间的数学关系,不是直线而是曲线. ...
- PLC也能制作小游戏----Codesys编写推箱子小游戏
1.序言 前文已介绍,Codesys编程软件拥有的各种编译方式,以及强大的可视化功能,完全可以实现类似的小游戏程序编写,让疲惫的工控人员在调机的空闲之余可以休闲下,本文编写另一个小游戏,也是十几年前的 ...
- bp神经网络预测模型优点,bp神经网络相关性分析
BP神经网络的可行性分析 神经网络的是我的毕业论文的一部分4.人工神经网络人的思维有逻辑性和直观性两种不同的基本方式. 逻辑性的思维是指根据逻辑规则进行推理的过程:它先将信息化成概念,并用符号表示,然 ...
- matlab神经网络43个案例PDF,matlab神经网络应用设计
bp神经网络在多输入多输出的情况下,预测的精度为什么这么差? bp神经网络是有一定缺陷的,比如容易陷入局部极小值,还有训练的结果依赖初始随机权值,这就好比你下一个山坡,如果最开始的方向走错了,那么你可 ...
- Learn OpenGL (七):摄像机
1. 摄像机位置 获取摄像机位置很简单.摄像机位置简单来说就是世界空间中一个指向摄像机位置的向量.我们把摄像机位置设置为上一节中的那个相同的位置: glm::vec3 cameraPos = glm: ...
- 协方差矩阵介绍及C++/OpenCV/Eigen的三种实现
函数f(x)关于某分布P(x)的期望(expectation)或者期望值(expected value)是指,当x由P产生,f作用于x时,f(x)的平均值.对于离散型随机变量,这可以通过求和得到: 对 ...
- 用Python进行机器学习(附代码、学习资源)
作者:Tirthajyoti Sarkar 翻译:张逸 校对:冯羽 本文约3090字,建议阅读6分钟. 本文从非线性数据进行建模,带你用简便并且稳健的方法来快速实现使用Python进行机器学习. 使用 ...
最新文章
- 软件体系架构模式之一什么是软件架构模式
- linespace 自动生成线性向量的API
- ●洛谷P3168 [CQOI2015]任务查询系统
- 从另一个角度理解分布式系统与CAP定理
- 海量数据中,寻找最小的k个数。
- 面向对象设计之CRC卡片
- asp 文本转时间_ASP.NET Core界面开发,DevExpress v19.2增强富文本编辑器功能
- php 多选按钮,单选和多选按钮如何给图片加样式
- SAP ABAP开发入门-徐春波-专题视频课程
- Linux USB网卡驱动安装
- UE4蓝图节点不同颜色代表
- anchor-free目标检测
- [转]《牵一只蜗牛去散步》台湾 张文亮
- 天不生Tobler,万古GIS如长夜
- java读取文本文件,并且去除重复字段
- NLP逻辑回归模型(LR)实现分类问题实例详解
- Jmeter断言-所有断言讲解
- 关于Mongodb的全面总结
- ppm理解与代码实现
- 如何利用Google搜索客户
热门文章
- vue发送请求时遇到Uncaught (in promise) TypeError Cannot read properties of undefined(reading ‘randomExtend
- asp.net图书馆资料管理系统设计与实现
- MAC 搭建LAYABOX AS3环境
- C++备忘录023:A glimpse of PSST (Peter's Simple Strong Typing) - EBO and CRTP-Mix-ins
- swiper制作3D效果的轮播图
- Git原理 SSH 公钥 私钥的理解
- Excel(WPS部分功能不适用)技巧:快速制作工资条
- 最好的PDF编辑和阅读软件 Acrobat DC Pro 2022.001 Mac版(内附安装包网盘资源)
- 你老板是不是这样给你洗过脑
- 有道云笔记修改护眼绿背景色-v6.8