G代码简介

ZMC系列运动控制器作为一个多轴运动控制器,部分控制器支持标准的计算机数控(Computerized Numerical Control,检称CNC)功能,实现简易的数控机床控制,同时也可应用于其它一些通过G代码进行定位及路径规划的场合。

G代码(G-code)是最为广泛使用的计算机数控编程语言,主要在计算机辅助制造中用于控制自动机床。G代码指令是数控机床加工的核心,功能代码由字母G和一个两位数整数表示(例如G01、G02)。

G代码有多样性的特点,每个公司的数控机床都有各自定义的G代码和M代码含义,其核心的运动指令虽格式略有区别,但控制原理基本类似。

ZBasic支持G代码形式的SUB过程,支持标准格式的G代码。可根据实际加工需求来自定义G代码功能,形成GSUB形式来解析CNC文件。

支持UG、MasterCam、ArtCAM等多种CAD/CAM软件生成的NC加工代码,可应用于雕铣机、精雕机、钻攻中心和加工中心等机床加工场合。

一、材料准备

1.硬件

A.ZMC406控制器一台。

B.电脑一台。

C.带屏蔽层网线一根。

D.24V直流电源一个。

E.伺服驱动器+电机若干。

F.接线端子与连接线若干。

2.软件

A.ZDevelop V3.10版本控制器编程软件。

B.ZmotionCAD V1.0导图工具。

均从正运动官网www.zmotion.com.cn下载压缩包,解压后直接运行应用程序,无需安装。

二、硬件接线

运动控制器接线:

举例使用运动控制器ZMC406,脉冲轴和总线轴均支持。

A.主电源:

将控制器主电源接线端子上的E+24V端子接入24V直流电源正极,将EGND端子接入24V直流电源负极。

B.以太网EtherNET端口接线:

使用一根网线将控制器的EtherNET端口与电脑的以太网口相连。

C.驱动器与控制器接线:

将脉冲型驱动器按要求接入到脉冲轴接口上,EtherCAT总线驱动器接到总线接口。

三、G代码指令

在正运动控制器上,ZBasic支持G代码形式的SUB过程,将需要用到的G代码,在GSUB函数里使用运动指令编写G代码的控制过程。

G代码执行时,将运动参数传入GSUB,GSUB执行控制轴按要求动作。每一个G代码和M代码由用户使用GSUB函数编写其动作。

常见G的代码举例:

1.自定义GSUB语法

GSUB label([char1] [,char2]…) '编写G代码功能

END SUB

语法参数:

label:过程名称,不能与现有的关键词冲突

char1:过程调用时传入的字母参数,自动作为LOCAL局部变量

char2:过程调用时传入的字母参数,自动作为LOCAL局部变量

2.读取G代码传入参数

GSUB_PARA(char)

char:GSUB定义时传入的字母参数

3.判断G代码参数是否传入

GSUB_IFPARA(char)

char:GSUB定义时传入的字母参数

返回值:-1-传入,0-未传入

4.G代码示例
G01 X100 Y100 Z100 U100      '调用G01直线插补END                          '主程序结束GLOBAL GSUB G01(X,Y,Z,U)     '定义GSUB过程G01PRINT  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, udisIF GSUB_IFPARA(X) THEN      '判断是否有参数传入GSUBxdis = GSUB_PARA(X)ELSExdis = ENDMOVE_BUFFER(0)ENDIFIF GSUB_IFPARA(Y) THENydis = GSUB_PARA(Y)ELSEydis = ENDMOVE_BUFFER(1)ENDIFIF GSUB_IFPARA(Z) thenzdis = GSUB_PARA(Z)ELSEzdis = ENDMOVE_BUFFER(2)ENDIFIF GSUB_IFPARA(U) thenudis = GSUB_PARA(U)ELSEudis = ENDMOVE_BUFFER(3)ENDIFMOVEABS(xdis,ydis,zdis,udis)   '绝对位置ENDIFEND SUB

四、生成G代码

CAD导图软件是正运动自主研发的一款根据图形导出加工代码的软件,在正运动官方网站下载CAD导图软件,打开软件后,导入图形(支持的文件格式:.dxf、.plt、.ai)。

或打开文件(导图软件生成的.zmo文件),文件加载后,软件自动生成加工数据,若不满意自动加工数据,可自定义设置后再刷新数据,重新生成加工轨迹数据。

数据达到要求后可直接发送数据到控制器运行,或保存数据到磁盘,应用在其他场景。

CAD导图软件根据上方图形生成的G代码文件如下图所示:

五、G代码应用案例

1.项目架构

本项目应用于6轴G代码加工,主要展示G01直线插补功能,程序主要由四大部分组成。

A.主程序:

编写项目的功能,进行参数定义,轴参数初始化,执行启动,停止,急停等过程。

B.G代码解析程序:

使用GSUB编写G00,G01等G代码的控制器过程,等待被G代码调用时执行。

C.三次文件加载:

搜索U盘或FLASH里的三次文件(.z3p)加载到控制器,启动加工时调用三次文件内的G代码执行。

D.HMI组态界面:

人机交互,在界面上选择盘符里的三次文件,手动控制加工的启停,展示加工过程与控制器的状态等信息。

2.项目配置

本项目支持6个轴加工,分三个任务。主要用到TABLE寄存器临时存储G代码要显示在触摸屏上的数据,支持连接到仿真器控制器上运行。

A.任务0:

上电自动运行的主任务,用于程序初始化,控制启停等。

B.任务1:

HMI组态界面任务。

C.任务3:

回零任务和G代码加工任务,上电先执行回零,待回零完成才能加工。

◆不同的功能同一个任务号运行的时候,注意不要同时运行,否则会导致任务重复开启,控制器报错。

3.ZDevelop软件操作演示视频

运动控制器的自定义G代码编程应用

本次,正运动技术运动控制器的自定义G代码编程应用,就分享到这里。

更多精彩内容请关注“正运动小助手”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师。

本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。

运动控制器的自定义G代码编程应用相关推荐

  1. 3d打印c语言与g代码混合编程,[转载]三轴运动控制器、串口运动控制器、支持G代码、3D打印机、雕刻、源代码开放、...

    串口运动控制器,支持G代码.M代码 3D打印机.雕刻机.激光雕刻.木工雕刻.微型CNC.开源GRBL运动控制平台 电源电压:DC12V-24V CPU:Atmega328P 串口:RS232电平,通信 ...

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

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

  3. fanuc机器人编程手册_是谁需要G代码编程机器人?

    用G代码编程机器人是一个5,6年前就碰到过的一个概念.当时就有点困惑,不过没有细究为何提出这样的想法.这个问题一直搁置很久也没有想起来主动去了解,去和同行去交流.今天在翻阅西门子自动化产品手册时,看到 ...

  4. 编程 ul 不能一行显示 跳到下行_史上最全的数控G代码编程详解

    一.G代码功能简述 G00------快速定位 G01------直线插补 G02------顺时针方向圆弧插补 G03------逆时针方向圆弧插补 G04------定时暂停 G05------通 ...

  5. 数控G代码编程详解大全

    一.G代码功能简述 G00------快速定位 G01------直线插补 G02------顺时针方向圆弧插补 G03------逆时针方向圆弧插补 G04------定时暂停 G05------通 ...

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

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

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

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

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

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

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

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

  10. centos代码切换图形_沙迪克慢走丝代码大全,G代码、T代码、M代码(值得收藏)...

    机床面板 SOURCE: ON/OFF:数字控制机械开关 POWER : ON/OFF:机械部分电源开关 AWT : Ⅰ(CUT)/Ⅱ(THREAD):剪线/自动穿线 TENSLON:ON/OFF:导 ...

最新文章

  1. 参加Java培训需要注意什么
  2. 入门经典综述!深度人脸识别算法串讲
  3. 北风设计模式课程---单一职责原则
  4. 每日软件进度报告—12月6日
  5. mysql数据库入门第二张试卷_2016计算机二级《MySQL数据库》练习题与答案
  6. javabirdge php_PHP-Java-Bridge使用笔记
  7. 高品味男人:分寸与克制
  8. 【旧文章搬运】PsVoid中IrpCreateFile函数在Win7下蓝屏BUG分析及解决
  9. matlab产生pn序列,[求助]PN序列的产生
  10. UKEY开发 用户登录流程
  11. 人用药品注册技术规定国际协调会议(ICH)
  12. 沉默,并不代表我们无话可说
  13. 计算机冯诺依曼原理及应用,冯·诺依曼计算机工作原理的核心是( )和“程序控制...
  14. HTML期末设计——代码篇
  15. mysql存小程序获取到的带有表情的昵称_拉取用户信息,带表情的昵称,存储到数据库是???要怎么处理...
  16. 性能测试报告,实例讲解
  17. 聊聊iOS中的网络加密
  18. 如何创建自定义DevExpress报表控件,看完你就懂了
  19. Linux启动过程详解
  20. 最新最全论文合集——USENIX Security 历年最佳论文汇总

热门文章

  1. Linux下载神器XDM
  2. HikariCP配置手册
  3. SpringBoot和Hprose集成开发
  4. 计算机电缆 国家标准,电线电缆常用国家标准
  5. 笔记-软考高项-错题笔记汇总4
  6. JAVA音乐网站(JAVA毕业设计)
  7. Win7-64位系统安装vs2003
  8. js点击下载图片、下载文件
  9. java mina 服务端_mina 框架java服务端的搭建和通信。
  10. List of Algorithms