1、序言

目前,越来越多的PLC控制采用codesys系统,对于其强大的功能不做详细描述,本文主要介绍如何使用codesys控制伺服电机轴实现圆弧插补和螺旋插补的功能!并通过codesys可视化模块对其进行仿真。

1.1、圆弧插补和螺旋插补

圆弧插补的概念来源于数控机床, 通过控制X轴和Y轴的移动来实现刀具的行走轨迹为圆弧形状,通俗一点就是控制刀具画圆,这需要X轴和Y轴的同步性,X轴和Y轴配合不好就无法达到画出标准的圆弧。

螺旋插补是圆弧插补的升级,相比圆弧插补,螺旋插补多了一个Z轴,X轴与Y轴还是走圆弧插补,Z轴同时移动,三轴配合走出来的轨迹就是螺旋线,螺栓的螺纹就是一种螺旋线。

1.2、codesys平台

codesys是可编程逻辑控制PLC的完整开发环境,在PLC程序员编程时,CODESYS为强大的IEC语言提供了一个简单的方法,系统的编辑器和调试器的功能是建立在高级编程语言的基础上,目前通用版本为V3.5。

2、软件编程

codesys软件的安装和使用这里不做介绍,本文采用codesys softemotion Win V3为设备创建项目,使用CFC编辑器模式,三个虚拟轴(SM_Drive_Virtual),可通过可视化界面对其进行仿真模拟。

2.1 创建三个虚拟轴

在软件界面softmotion Gerneral Axis Pool位置点击右键,添加设备,选择softmotion驱动器,虚拟驱动器,SM_Drive_Virtual即可建立虚轴,依次建立三个,建好以后在对应轴的位置点击右键,选择重构,可以更改轴的名字。

2.2、创建CNC,编写G代码

点开PLC逻辑,在Application处点击右键,添加对象,选择CNC程序,名称默认为CNC,这个名称在下方插补器中会使用到,实现:Din66025,编译模式:SMC_OutQueue;创建好了以后,自动会有CNC设置,在CNC设置里将SMC_SmoothPath添加到活动的功能实例中,可按默认参数使用,如有更高需求参考手册或帮助文件设置。

点开CNC即可编写G代码;G代码的编写不做过多解释,本例以螺旋插补为例,圆弧插补只需要将Z轴的数据删除即可。

写入G代码,下方会有对应的图形轨迹 ,而且,每一行G代码都可以查看对应的轨迹,而且图形左上方可以操作进行旋转,放大,缩小,各轴之间的轨迹关系等,以便程序员查看确认。编写完成后注意保存。

2.3、编写主程序

CFC模式采用模块直接连线模式,创建模块并将对应的模块点位连接即可,变量的创建和定义这里不在叙述。本例需要创建3部分内容,1,伺服使能,2,插补器逆解控制轴位置,3,正解功能块;

伺服使能的作用是伺服控制,没有使能,伺服轴就没法工作;

内容2是实现G代码功能的模块,插补器SMC_Interpolator通过ADR(CNC)指令读取对应的CNC内容,括号内是我们在创建CNC时采用的名字;插补器通过逆解功能块SMC_Trafo_Gantry3(2轴的话选用Gantry2)解码3轴对应的伺服轴数据,再将这些数据发送给轴控制器SMC_ControlAxisByPos,此时就可以实现轴控制。(本例采用模拟仿真,没有添加插补的其他辅助功能,实际应用中需要增加CNC设置中的一些内容,可参考codesys控制手册)

正解功能块主要是将轴实时数据导出,可视化模拟时采用这些变量可以将整个运动轨迹显示出来。

2.4、可视化变量

codesys可以通过可视化模块来仿真轴运行情况,但实际试图移动时的数据只能为整数,本例添加一个ST编辑模式的程序,将变量数据转换为整型(采用ST模式仅是个人喜好,CFC模式也可以实现转换功能)

2.5、创建可视化界面

跟创建CNC类似,在Application处点击右键,添加对象,选择视图(注意不是视图管理器),在Visualization内编辑视图界面,在右侧工具箱找到模块,并添加对应的变量,注意interpolator需要选择正确的模块,否则可能输入变量。interpolator在创建时会提示连接变量,如果需要更改,则在右侧属性 ,引用处更改,旋转轴变量为R轴也在引用处更改,点动开关变量为伺服使能son,切换开关变量为Interpolator0.bExecute(即插补器的启动,可以建立一个变量方便连接),开关可直接找到变量选项更改。图中红色的模拟刀具移动需要设定移动变量,相对移动的参数数据改为X轴与Y轴对应的变量即可。变量连接完成后,可视化界面就创建完成。(红色刀具的位置需要仿真运行后根据实际情况适当调整)。

3、仿真运行

程序和可视化界面创建完毕后即可进行仿真,软件上方菜单栏点击在线,勾选仿真,并点击登录到,跳出的提示选择是,就能进入仿真状态,软件上方菜单栏点击调试,选择启动,仿真就进入运行状态。运行结果视频所示

codesys圆弧插补可视化仿真

4.、综述

codesys还有很多功能有待开发学习,本人也才开始,希望大家多多支持,共同进步!

本例比较简单,没有源程序,应该也能摸索出来。本文源程序和代码文件可以在以下CSDN地址下载。目前设置了付费下载,还望各位见谅,谢谢!!

https://download.csdn.net/download/qq_19979629/72121183

codesys采用G代码实现圆弧插补和螺旋插补的可视化仿真相关推荐

  1. delta机械臂,delta机器人,运动控制器,运动控制卡 本卡采用前瞻运动轨迹规划,运动采用G代码指令编程,具有G5三维空间的圆弧插补,空间直线插补功能

    delta机械臂,delta机器人,运动控制器,运动控制卡 本卡采用前瞻运动轨迹规划,运动采用G代码指令编程,具有G5三维空间的圆弧插补,空间直线插补功能,子程序编程功能,逻辑判断语句功能,示教编程功 ...

  2. matlab 数控插补实验,数控插补原理及G代码编程实验.ppt

    数控插补原理及G代码编程实验 数控插补原理及G代码编程实验 机械工程实验教学中心 数控插补原理及G代码编程实验 ★ 二维插补原理实验 ★ 数控代码编程实验 1 实验目的 ★ 使学生掌握逐点比较法.数字 ...

  3. 基于带约束S型加减速曲线的空间直线插补与空间圆弧插补算法(Matlab)

    写在前面 学习代码都记录在个人github上,欢迎关注~ Matlab机器人工具箱版本9.10 在前面的博文中: 基于抛物线过渡(梯形加减速)的空间直线插补算法与空间圆弧插补算法(Matlab) 基于 ...

  4. 笛卡尔空间直线轨迹规划——S型曲线加减速插补算法(含MATLAB仿真验证代码)

    写这个算法,是因为博主正在做一个机械臂和全向小车的项目,里面涉及需要笛卡尔空间做直线轨迹的规划.通常的算法有梯型加减速,这个算法只是速度连续,加速度并不连续.所以实际冲击较大,无法实现柔性控制.况且网 ...

  5. 机械臂控制软件,上位机软件 此机器人上位软件。 运动采用通用G代码指令编程,具有G5三维的空间圆弧插补,空间直线插补功能

    机械臂控制软件,上位机软件 此机器人上位软件. 运动采用通用G代码指令编程,具有G5三维的空间圆弧插补,空间直线插补功能,子程序编程功能,逻辑判断语句功能,示教编程功能(支持手柄),变量位置编程功能, ...

  6. Codesys的图形导入功能----CAD文件转换G代码的实现及运行

    1.序言 在机械设计,工业制图方面,AutoCAD已经成为最常用的制图软件,CAD图纸也是目前最通用的图纸文件,在数控系统中,CAD文件可以直接导入并转换成G代码,让系统根据G代码运行.那么强大的Co ...

  7. Codesys的文件读取功能---G代码文件读取及运行

    1.序言 前文已经介绍过Codesys软件可以将dxg格式的CAD文件直接读取出来转换成G代码,导入到软件可以使用的CNC程序,通过对该CNC程序的编程,可以实现将CAD图纸转成CNC指令并运行,参考 ...

  8. Codesys的轨迹可视化------G代码文件的图形显示及运行轨迹

    1.序言 Codesys可以通过读取ASCII格式的G代码文件,并通过软件编程实现G代码的运行,参考博客地址:https://blog.csdn.net/qq_19979629/article/det ...

  9. c语言怎么编写数控g指令,数控车床编程--G 代码 M代码命令

    1 G 代码组及含义 [表 6.2-1] G 代码组及解释 ( 带 * 者表示是开机时会初始化的代码.) 2 G 代码解释 定位(G00) 1. 格式 这个指令把刀具从当前位置移动到指令指定的位置 ( ...

  10. 三菱加工中心CNC编程G代码讲解

    注意:在G之后没有接续数值指令中,在运转时将变成G00的动作.(注1)印有"*"记号表示初期状态应选择的指令码或被选择的指令码.印有"※"记号表示初期状态依参数 ...

最新文章

  1. Hibernate学习(二):heibernate核心接口
  2. Python入门学习---第一天
  3. Ruby之旅—Ruby的Hello World
  4. SAP UI5框架渲染的顺序
  5. 操作系统:SFTP相关知识介绍
  6. 微信小程序开发教程(六)配置——app.json、page.json详解
  7. python插值算法实现_图像插值算法Opencv+python实现
  8. HDU 4786 生成树 并查集+极大极小值 黑白边 确定选择白边的数量
  9. Mac工具PullTube如何在下载列表中创建重复项
  10. 我是如何揭穿“娱乐圈”大佬
  11. Qt 编程使用Sapera LT API 实现盖革雪崩焦平面相机数据采集
  12. [Linux] 如何在 Linux 电脑上制作专业的视频教程
  13. 【超分辨率】VDSR论文笔记
  14. imagin.vmem取证
  15. http压力测试工具及使用说明
  16. iOS:创建Siri 功能
  17. GFE2022第43届广州特许连锁加盟展览会
  18. JS的 try catch使用心得
  19. 解除EA(Origin)平台与STEAM平台的关联
  20. c语言的标志数组图的遍历,天津商业大学-计算机科学与技术专业-高职升本-课件5...

热门文章

  1. 修复ie浏览器主页被360篡改
  2. android 请求https请求,Android 实现 HttpClient 请求Https
  3. Proteus的使用总结
  4. Smplayer播放wmv视频文件
  5. 2019上半年系统集成项目管理工程师真题与答案
  6. DayDayUp:计算机技术与软件专业技术资格证书之《系统集成项目管理工程师》课程讲解之十大知识领域之4辅助—项目采购管理
  7. ectouch微信登录提示此次操作失败请返回重试原因
  8. H5打包成app的在线工具
  9. 探码SaaS帮助企业开展数字化营销之路!
  10. 小旭追女神-三国乱世(裸的单点线段树更新)