admin 发表于 2022-8-30 14:45:16

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



1、序言

在机械设计,工业制图方面,AutoCAD已经成为最常用的制图软件,CAD图纸也是目前最通用的图纸文件,在数控系统中,CAD文件可以直接导入并转换成G代码,让系统根据G代码运行。那么强大的Codesys有没有办法能够实现呢,答案当然是肯定的。

2、创建CAD文件

本文使用AutoCAD2010创建一个简单的CAD图纸,例如在图纸上画一个直径200的圆和一个200*120的长方形,并确定各自的坐标,圆心坐标(150,120),半径100,四边形4顶点坐标分别为(300,150),(500,150),(500,30),(300,150),如图所示。








画完后,图形保存成DXF格式,完成后关闭CAD软件。

3、Codesys软件编程

本文使用可视化仿真模拟,创建设备采用CODESYS SoftMotion Win V3 x64,编译模式采用CFC

3.1、创建CNC

图形导入模式的CNC建议使用SMC_CNC_REF模式,同时在程序里添加预处理功能,G代码中用到了G51启动圆滑路径功能,必须增加SMC_SmoothPath功能块才会生效。 如用到了G41/G42刀具补偿功能需增加SMC_ToolCorr功能块,CNC模式与预处理功能块如图所示,功能块说明这里不做描述




3.2、导入图形文件双击刚刚创建的CNC程序,菜单栏上方会多出一个CNC选项,点击CNC,选择从DXF文件中导入,选择刚刚保存的CAD文件“导入图形.dxf”,可以看到图形预览,选择导入,提示是否替换,选择是,就可以将CAD图纸转换成G代码,如图所示







为确保转换是否准确,我们可以通过G代码和codesys软件预览的图形轨迹进行验证,图中,圆行走的起点坐标在(250,120),G03表示逆时针圆弧插补,I-100,J0表示起点坐标与圆心的位置偏差,通过计算可得圆心坐标为(150,120),T360表示圆弧角度为360°,即1圈,再看长方形,起点坐标(300,150),X行走至500,即第二个点为(500,150),Y行走至30,即第三个点为(500,30),X行走至300,即第4个点为(300,30),最后Y行走至150回到起点,与CAD所画的图形完全一致,验证无误。

3.3、编写程序

程序功能主要分4块,1,伺服使能,2,解码及路劲预处理,3,插补器,4,位置数据转化(供可视化使用),创建两轴命名为X轴和Y轴,变量自行定义,

需要注意的是:图形导入生成的G代码默认是没有速度加速度等参数的,如需正常运行,需要给定正确的速度以及加速度。因此在CNC程序中,G代码的第一行加入F100 E300;

程序如图所示







3.4、可视化界面

本文创建一个简易的仿真界面,模拟运行轨迹,两个控制按钮,分别操作启动解码和启动程序,画好一个圆(宽度和高度都为200,表示直径200,顶点坐标为(650,80),对应圆心坐标为(750,180))和一个长方形(顶点坐标(900,150),宽度200即长方形的长,高度120即长方形的宽),一个移动的红点(原点坐标为(600,300)),根据G代码运行时轴的变化移动,采用相对移动,移动数据值为X轴,Y轴的实际位置,

注意:可视化界面中,Y轴的数值为越往下,数值越大,与G代码图形的方向刚好相反,因此在Y轴的实际位置数值转换是乘上了-1,这样,位置变化就能匹配上了,画面及变量连接如图:



4、可视化仿真结果仿真运行结果如下https://www.bilibili.com/video/av935822330Codesy图形导入CAD图纸转换G代码的模拟仿真
通过验证结果可以看到,G代码的运行结果与CAD图纸运行一致,说明Codesys软件可以通过图纸导入功能实现G代码转换并按要求轨迹运行加工。
本文程序源代码可以通过以下地址下载,软件版本依旧是Codesys V3.5.14.10
https://download.csdn.net/download/qq_19979629/77139507
页: [1]
查看完整版本: Codesys的图形导入功能----CAD文件转换G代码的实现及运行