本次课程主要描述如何使用ZCadToMoreV2.0导图软件导出G代码,以及G代码的运行效果演示。
所需软件有两个:(均可从正运动官网www.zmotion.com.cn下载)
1.ZDevelop V3.10.06 最新版本控制器编程软件
2.ZCadToMoreV2.0导图软件
这次示例教导如何使用ZCadToMoreV2.0导图软件,导出G代码文件,再使用ZDevelop编写G代码的解析函数,在ZDevelop中加载导图软件导出的G代码到控制器,扫描G代码之后调用编写好的G代码的解析函数运行,执行加工过程,运行过程中支持使用示波器采集运动轨迹。
1.ZCadToMoreV2.0导图软件主界面如下图:导入一张运动轨迹图片,即可解析成需要的G代码,再导出G代码文件即可。
2.ZDevelop软件的示波器采集上方G代码运动结果。
(1)准备好需要用的软件和图形文件,在ZDevelop中编写好G代码解析函数。
(2)将图形导入ZCadToMoreV2.0软件,根据自己的需求设置好参数。
(3)根据自己的需求图形导出Bas或NC文件。
(4)使用ZDevelop加载导入的Bas或NC文件数据运行。
(5)使用示波器采集运动路径。
ZCadToMoreV2.0导图软件是正运动的一套强大图形转Basic代码及NC代码生成加工软件。
主要功能包括矢量文件的导入、图形的优化与显示、Basic代码及NC代码的显示、编辑、导出、原点位置的设置、自定义图形的动作、加工轨迹的规划、模拟加工及下载到控制器中加工等。
→支持的导入文件格式有:DXF、PLT、AI。
→导出的文件格式为:Bas或.NC。
ZCadToMoreV2.0文件导出步骤:
1.打开ZCadToMoreV2.0软件
2.首先在菜单栏控制器中连接控制器,连接控制器后才能进行导图工作,这步尤为重要!
3.菜单栏文件中导入需要的图形,这里仅支持后缀为:“.dxf”、 “.ai”、“ .plt”的文件格式,导入图形后展示区会出现所需要的图形,右边的代码区域会出现Bas代码。
4.在菜单栏设置中点击工艺参数。
●全局
全局中可以查看并修改轴空移的运动参数,根据自己的需求来修改所需要的运动参数
●工艺参数-轴
是否需要Z轴,需要为True,不需要为False,根据自己的需求来开启。
●工艺参数-运动
查看和修改加工时的精度,速度,运动方式和呈现效果。
●工艺参数-动作
可以在加工前添加动作,加工后添加动作。
●其他
可以选择代码语言,basic或者G代码。
5.代码转换
工艺参数窗口选择“其他”–“显示的语言”切换语言
(1)Basic文件的导出
首先选择菜单设置中工艺参数里面的其中选项修改为Basic点击确定,可以看得到代码展示区的代码为basic形式,在菜单栏“文件”导出代码到需要的位置即可。
(2)NC文件的导出
首先选择菜单设置中工艺参数里面的其中选项修改为NC点击确定,可以看得到代码展示区的代码为NC形式,在菜单栏“文件”导出代码到需要的位置即可。
6.代码导出
修改成自己需要的代码形式后,菜单栏“文件”选择导出代码,导出到自己需要的地方。
ZDevelop编程软件的Zbasic语言支持G代码形式的SUB过程,支持标准格式的G代码。可根据实际加工需求来自定义G代码功能,形成GSUB形式来解析CNC文件。支持UG、MasterCam、ArtCAM等多种CAD/CAM软件生成的NC加工代码,可应用于雕铣机、精雕机、钻攻中心和加工中心等机床加工场合。
在正运动控制器上,ZBasic支持G代码形式的SUB过程,将需要用到G代码,在GSUB函数里使用运动指令编写G代码的控制过程。G代码执行时,将运动参数传入GSUB,GSUB执行控制轴按要求动作。(每个G代码和M代码用户可以使用GSUB函数编写其动作)
1.自定义GSUB语法
2.读取G代码传入参数
3.判断G代码参数是否传入2.读取G代码传入参数
4.G代码示例
G01 X100 Y100 Z100 U100 '调用G01直线插补
END '主程序结束
GLOBAL GSUB G01(X,Y,Z,U) '定义GSUB过程G01
PRINT GSUB_PARA(X),GSUB_PARA(Y),GSUB_PARA(Z),GSUB_PARA(U)
IF coor_rel THEN '相对位置
MOVE(GSUB_PARA(X),GSUB_PARA(Y),GSUB_PARA(Z),GSUB_PARA(U))
ELSE '绝对位置
LOCAL xdis, ydis, zdis, udis
IF GSUB_IFPARA(X) THEN '判断是否有参数传入GSUB
xdis = GSUB_PARA(X)
ELSE
xdis = ENDMOVE_BUFFER(0)
ENDIF
IF GSUB_IFPARA(Y) THEN
ydis = GSUB_PARA(Y)
ELSE
ydis = ENDMOVE_BUFFER(1)
ENDIF
IF GSUB_IFPARA(Z) then
zdis = GSUB_PARA(Z)
ELSE
zdis = ENDMOVE_BUFFER(2)
ENDIF
IF GSUB_IFPARA(U) then
udis = GSUB_PARA(U)
ELSE
udis = ENDMOVE_BUFFER(3)
ENDIF
MOVEABS(xdis,ydis,zdis,udis) '绝对位置
ENDIF
END SUB
1.如下图案例项目中有三个文件,分别是:
main.bas:主程序,用于参数初始化,控制G代码加工动作。
GSUB.bas:自定义GSUB函数,解析G代码。
G代码.bas:ZCadToMoreV2.0导图软件导出的G代码。
按照导图软件的示范步骤,保存了2份文件,一份是“.bas”的,另一份是“.nc”的。
“.bas”文件是采用basic代码的形式,可以直接下载到控制器运行,“.nc”的文件ZDevelop软件不支持直接加载,需要将里面的G代码复制出来,G代码再调用GSUB完成加工。
如下图G代码解析函数GSUB一定要提前规划好,这是G代码能运行的前提条件。
2.效果演示示范
根据上面的操作将G代码文件数据导入到ZDevelop中,main主函数入下图所示:主程序采用RUN指令以任务1启动G代码文件任务。
(1)菜单栏控制器选择连接控制器或者仿真器,将程序下载到“Ram”或者“Rom”。
(2)菜单栏视图中选择示波器,打开示波器界面后点击设置,通道数为2,勾选连续采集,点击确定,选好数据源与刻度,勾选XY模式,设置完成点击启动按钮,需要采集数据的时候点下手动触发,示波器开始采样。
(3)程序运行完成后,示波器采集结果如下:
本次,正运动技术G代码在运动控制器上的应用,就分享到这里。
更多精彩内容请关注“正运动小助手”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师:400-089-8936。
本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。