CN115601527B - 一种基于g代码的创建试削毛坯方法 - Google Patents
一种基于g代码的创建试削毛坯方法 Download PDFInfo
- Publication number
- CN115601527B CN115601527B CN202211496631.8A CN202211496631A CN115601527B CN 115601527 B CN115601527 B CN 115601527B CN 202211496631 A CN202211496631 A CN 202211496631A CN 115601527 B CN115601527 B CN 115601527B
- Authority
- CN
- China
- Prior art keywords
- code
- statement
- points
- blank
- cutting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/23—Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Numerical Control (AREA)
Abstract
本发明提供了一种基于G代码的创建试削毛坯方法,包括输入G代码;反读G代码,建立语句树;执行语句树,提取有效切削段;建立三维点云;三维重建,生成毛坯。本发明公开的一种基于G代码的创建试削毛坯方法,能够基于G代码创建试削毛坯,不再需要使用者预先使用CAD基于3D模型设计试削毛坯,有效减低了技术难度,同时也减少加工准备时间,提高了生产效率,降低了成本。
Description
技术领域
本发明属于高端信息化制造领域,尤其是涉及一种基于G代码的创建试削毛坯方法。
背景技术
在使用数控技术对产品进行开发生产的过程中,利用计算机仿真技术对产品制造进行预先仿真生产,能够有效降低产品的生产成本。在现有技术条件下,常用的机床仿真软件,一般需要使用者预先利用CAD软件,根据需要生产零件的3D模型,设计出加工毛坯,然后进行仿真试切。但是在有些情况下,使用者没有3D零件模型,只有数控机床生产时的G代码程序,因此就无法使用CAD软件预先设计加工毛坯,而如果没有毛坯模型,就没有办法使用机床仿真反映现实加工环境和加工过程,更不能完成试切的流程,也不能完成对G代码程序的检验。
综上所述,现有技术中存在以下技术问题:
一是在只有数控机床G代码程序时,技术人员无法设计加工毛坯,也就无法进行进一步的试切仿真;二是使用CAD软件,创建3D模型和毛坯模型,对使用者技术要求比较高,而有的数控机床操作人员,不具有熟练使用CAD软件的能力,就没有办法自己创建毛坯模型,进行仿真试削,从而降低数控加工的生产效率。
发明内容
有鉴于此,本发明旨在提出一种基于G代码的创建试削毛坯方法,能够基于G代码创建试削毛坯,不再需要使用者预先使用CAD基于3D模型设计试削毛坯,有效降低了技术难度,同时也减少加工准备时间,提高了生产效率,降低了成本。
为达到上述目的,本发明的技术方案是这样实现的:
一种基于G代码的创建试削毛坯方法,包括:
步骤一:输入 G代码:输入控制机床动作所使用的G代码;
步骤二:反读G代码,建立语句树:以G代码程序段为单位,将G代码逐段翻译成语句树数据结构,语句树中每一个结点,就对应G代码中的一个程序段,利用语句树的父结点与叶子结点之间的父子关系描述出程序段的作用域关系,利用语句树的叶子结点与叶子结点之间的兄弟关系描述出顺序程序段之间的关系,实现语句树结点与G代码程序段一一对应;
步骤三:执行语句树,提取有效切削段:遍历语句树,按照语句类型,执行各个语句,只需要提取出其中的切削段控制指令;
步骤四:建立三维点云:将提取的切削段控制指令,按顺序生成点,提取出三维坐标,直线段提取出起点及终点放入点云数据缓冲区;圆弧段、螺纹段需要先按精度将曲线离散成点,再按顺序放入点云数据缓冲区;
步骤五:三维重建,生成毛坯:先将点云数据缓冲区中的三个相邻点,初始化为一个三角面片,然后构建Mesh面,当所有点都构建成Mesh面后,需要删除重建过程中出现的重叠三角片。最后遍历Mesh当中的每一个点,对相应的点赋值上相应的标志位;标志位包括边界点、孤立点、面里面的点以及其余点,最后对孔洞进行填补,完成三维重建,得到毛坯模型。
相对于现有技术,本发明公开的一种基于G代码的创建试削毛坯方法,具有以下优势:
第一,本发明公开的一种基于G代码的创建试削毛坯方法,直接由控制数控机床动作的G代码建立试削毛坯,不需基于3D零件模型进行毛坯设计,提高了生产效率,应用范围广。
第二,本发明公开的一种基于G代码的创建试削毛坯方法,不需使用CAD软件进行毛坯设计,降低了技术难度,易用性高,方便技术人员进行使用。
第三,本发明公开的一种基于G代码的创建试削毛坯方法,处理流程可靠,创建的试削毛坯质量优异。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
在附图中:
图1为本发明实施例所述的一种基于G代码的创建试削毛坯方法流程示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本发明中的具体含义。
下面将参考附图并结合实施例来详细说明本发明。
在产品开发过程中,利用计算机仿真技术对产品生产进行仿真和评估,是常见的高效生产技术手段,能够有效降低产品的开发生产成本,在正式加工之前,一般要经过刀具轨迹检验和试切,试切的过程也就是对设计程序的检验过程。
G代码是最为广泛使用的数控编程语言,主要用于控制数控机床,使用G代码可以实现快速定位、逆圆插补、顺圆插补、中间点圆弧插补、半径编程以及跳转加工。
常见的数控机床仿真软件,都是需要使用者首先通过CAD软件设计出零件的3D模型,再根据零件模型生成毛坯模型,这个过程是需要能够熟练使用CAD软件的工程师才能够完成,而一般的数控机床使用人员不具备这样的技术能力。与此同时,在很多情况下,工程师或技术工人只能得到需要加工产品的G代码程序,而没有相应的3D模型程序,因此无法通过传统的先设计3D模型、再设计毛坯模型的形式进行实体切削仿真,无法校验G代码程序的正确性,不能顺利完成试切环节。
如图1所示,一种基于G代码的创建试削毛坯方法,包括:
步骤一:输入 G代码:输入控制机床动作所使用的G代码;
步骤二:反读G代码,建立语句树:以G代码程序段为单位,将G代码逐段翻译成语句树数据结构,语句树中每一个结点,就对应G代码中的一个程序段,利用语句树的父结点与叶子结点之间的父子关系描述出程序段的作用域关系,利用语句树的叶子结点与叶子结点之间的兄弟关系描述出顺序程序段之间的关系,实现语句树结点与G代码程序段一一对应;
步骤三:执行语句树,提取有效切削段:遍历语句树,按照语句类型,执行各个语句,只需要提取出其中的切削段控制指令;
G代码程序包括G、M、S、T、F指令,其中G指令为准备功能指令,M指令为辅助功能指令,S为主轴转速控制指令,T为刀具选择指令,F指令为进给速度控制指令。在本实施例中,提取有效切削段指令,即是去除G代码程序中的无效段数据,提取出有效刀位点数据,以此为基础生成三维点云。
切削段控制指令包括:G01直线段、G02/G03圆弧段、钻孔循环、G32螺纹切削、钻孔固定循环以及铣削固定循环。
步骤四:建立三维点云:将提取的切削段控制指令,按顺序生成点,提取出三维坐标,直线段提取出起点及终点放入点云数据缓冲区;圆弧段、螺纹段需要先按精度将曲线离散成点,再按顺序放入点云数据缓冲区;
步骤五:三维重建,生成毛坯:先将点云数据缓冲区中的三个相邻点,初始化为一个三角面片,然后构建Mesh面,当所有点都构建成Mesh面后,需要删除重建过程中出现的重叠三角片,最后遍历Mesh当中的每一个点,对相应的点赋值上相应的标志位;标志位包括边界点、孤立点、面里面的点以及其余点,最后对孔洞进行填补,完成三维重建,得到毛坯模型。
最后可以把基于G代码创建毛坯模型,直接使用在数控仿真软件中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (2)
1.一种基于G代码的创建试削毛坯方法,其特征在于:包括:
步骤一:输入 G代码:输入控制机床动作所使用的G代码;
步骤二:反读G代码,建立语句树:以G代码程序段为单位,将G代码逐段翻译成语句树数据结构,语句树中每一个结点,就对应G代码中的一个程序段,利用语句树的父结点与叶子结点之间的父子关系描述出程序段的作用域关系,利用语句树的叶子结点与叶子结点之间的兄弟关系描述出顺序程序段之间的关系,实现语句树结点与G代码程序段一一对应;
步骤三:执行语句树,提取有效切削段:遍历语句树,按照语句类型,执行各个语句,只需要提取出其中的切削段控制指令;
步骤四:建立三维点云:将提取的切削段控制指令,按顺序生成点,提取出三维坐标,直线段提取出起点及终点放入点云数据缓冲区;圆弧段、螺纹段需要先按精度将曲线离散成点,再按顺序放入点云数据缓冲区;
步骤五:三维重建,生成毛坯:先将点云数据缓冲区中的三个相邻点,初始化为一个三角面片,然后构建Mesh面,当所有点都构建成Mesh面后,需要删除重建过程中出现的重叠三角片,最后遍历Mesh当中的每一个点,对相应的点赋值上相应的标志位;标志位包括边界点、孤立点、面里面的点以及其余点,最后对孔洞进行填补,完成三维重建,得到毛坯模型。
2.根据权利要求1所述的一种基于G代码的创建试削毛坯方法,其特征在于:在步骤三中,切削段控制指令包括:G01直线段、G02/G03圆弧段、钻孔循环、G32螺纹切削、钻孔固定循环以及铣削固定循环。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211496631.8A CN115601527B (zh) | 2022-11-28 | 2022-11-28 | 一种基于g代码的创建试削毛坯方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211496631.8A CN115601527B (zh) | 2022-11-28 | 2022-11-28 | 一种基于g代码的创建试削毛坯方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115601527A CN115601527A (zh) | 2023-01-13 |
CN115601527B true CN115601527B (zh) | 2023-03-10 |
Family
ID=84852236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211496631.8A Active CN115601527B (zh) | 2022-11-28 | 2022-11-28 | 一种基于g代码的创建试削毛坯方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115601527B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101968767A (zh) * | 2010-10-15 | 2011-02-09 | 北京数码大方科技有限公司 | 基于宏程序的代码调试及仿真的方法和装置 |
CN102081378A (zh) * | 2010-11-01 | 2011-06-01 | 北京数码大方科技有限公司 | 基于宏程序的通用代码转换方法及装置 |
CN103135446A (zh) * | 2011-12-05 | 2013-06-05 | 中国科学院沈阳计算技术研究所有限公司 | 一种多轴数控机床刀具运动轨迹验证装置 |
CN103317171A (zh) * | 2012-03-23 | 2013-09-25 | 东方电气集团东方电机有限公司 | 基于铸造毛坯的大型水轮机叶片多轴联动数控加工方法 |
CN108508848A (zh) * | 2018-04-20 | 2018-09-07 | 华中科技大学 | 一种基于插补数据的铣削加工轮廓误差的评估方法 |
CN108645359A (zh) * | 2018-05-31 | 2018-10-12 | 华中科技大学 | 一种回转体壁厚检测方法 |
CN110405259A (zh) * | 2019-08-07 | 2019-11-05 | 合肥学院 | 基于多传感器集成测量的自由曲面类零件加工系统 |
CN111353241A (zh) * | 2020-03-27 | 2020-06-30 | 贵州航天精工制造有限公司 | 一种基于g代码的数学建模方法及应用 |
CN114549521A (zh) * | 2021-12-13 | 2022-05-27 | 大连理工大学 | 基于加工g代码引导的碳管阵蜂窝面形精度计算方法 |
CN115356987A (zh) * | 2022-08-29 | 2022-11-18 | 宜宾普翼汽车科技有限公司 | 汽车模具数控加工毛坯符型匹配方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10928805B2 (en) * | 2018-11-15 | 2021-02-23 | Lawrence Livermore National Security, Llc | Additive manufacturing system and method having toolpath analysis |
-
2022
- 2022-11-28 CN CN202211496631.8A patent/CN115601527B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101968767A (zh) * | 2010-10-15 | 2011-02-09 | 北京数码大方科技有限公司 | 基于宏程序的代码调试及仿真的方法和装置 |
CN102081378A (zh) * | 2010-11-01 | 2011-06-01 | 北京数码大方科技有限公司 | 基于宏程序的通用代码转换方法及装置 |
CN103135446A (zh) * | 2011-12-05 | 2013-06-05 | 中国科学院沈阳计算技术研究所有限公司 | 一种多轴数控机床刀具运动轨迹验证装置 |
CN103317171A (zh) * | 2012-03-23 | 2013-09-25 | 东方电气集团东方电机有限公司 | 基于铸造毛坯的大型水轮机叶片多轴联动数控加工方法 |
CN108508848A (zh) * | 2018-04-20 | 2018-09-07 | 华中科技大学 | 一种基于插补数据的铣削加工轮廓误差的评估方法 |
CN108645359A (zh) * | 2018-05-31 | 2018-10-12 | 华中科技大学 | 一种回转体壁厚检测方法 |
CN110405259A (zh) * | 2019-08-07 | 2019-11-05 | 合肥学院 | 基于多传感器集成测量的自由曲面类零件加工系统 |
CN111353241A (zh) * | 2020-03-27 | 2020-06-30 | 贵州航天精工制造有限公司 | 一种基于g代码的数学建模方法及应用 |
CN114549521A (zh) * | 2021-12-13 | 2022-05-27 | 大连理工大学 | 基于加工g代码引导的碳管阵蜂窝面形精度计算方法 |
CN115356987A (zh) * | 2022-08-29 | 2022-11-18 | 宜宾普翼汽车科技有限公司 | 汽车模具数控加工毛坯符型匹配方法 |
Non-Patent Citations (5)
Title |
---|
"Function representation based slicer for 3D printing";Yanzhi Song et al.;《Computer Aided Geometric Design》;276-293页 * |
"RobMach: G‑Code‑based off‑line programming for robotic machining trajectory generation";Jiabin Pan et al.;《The International Journal of Advanced Manufacturing Technology》;论文全文 * |
"基于G-buffer的NC程序仿真";李薛山;《中国优秀硕士学位论文全文数据库 工程科技I辑》(第01期);论文第3章 * |
"点云直接生成刀具路径及其后置处理";杨磊 等;《机械设计与制造》(第9期);206-208页 * |
"面向五轴3D打印的G代码解释器设计与实现";肖旭 等;《西安工程大学学报》;第34卷(第3期);55-60页 * |
Also Published As
Publication number | Publication date |
---|---|
CN115601527A (zh) | 2023-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6775581B2 (en) | Horizontally-structured CAD/CAM modeling for virtual concurrent product and process design | |
KR100434025B1 (ko) | 스텝-엔씨(step-nc) 용 파트 프로그램을 자동생성하는 방법 | |
US6839606B2 (en) | Horizontally structured manufacturing process modeling for fixtures and tooling | |
CN110096033A (zh) | 一种校对数控程序精准度的方法 | |
US7099804B2 (en) | Automated horizontally structured manufacturing process design modeling | |
CN102054093B (zh) | 使用上下文无关语法的部件设计 | |
US20020133253A1 (en) | Horizontally-structured CAD/CAM modeling for virtual fixture and tooling processes | |
CN103454972A (zh) | 基于ug nx api的刀具五轴数控磨削加工自动编程的方法 | |
CN112270024B (zh) | 基于bim技术的隧道快速建模方法 | |
CN112182718B (zh) | 基于bim与3d技术的构件设计方法、装置及存储介质 | |
CN112651057A (zh) | 铁路钢管混凝土系杆拱桥bim模型自动化创建系统及方法 | |
CN101763072A (zh) | 数控加工代码的转换方法和装置 | |
US6735489B1 (en) | Horizontally structured manufacturing process modeling | |
US7308386B2 (en) | Enhancement to horizontally-structured CAD/CAM modeling | |
US20020133266A1 (en) | Horizontally structured manufacturing process modeling for alternate operations, large parts and charted parts | |
CN105144007B (zh) | 在加工仿真期间执行撤销操作和重做操作的系统和方法 | |
US20020133265A1 (en) | Horizontally structured manufacturing process modeling for concurrent product and process design | |
CN107291045A (zh) | 一种车间编程系统 | |
US20020133267A1 (en) | Enhancement to horizontally structured manufacturing process modeling | |
EP1443435A2 (en) | Horizontally structured CAD/CAM coordinate system for manufacturing design | |
CN107729703B (zh) | 一种基于“Ruby”语言的“Sketch Up”厂房工艺设计方法 | |
CN115601527B (zh) | 一种基于g代码的创建试削毛坯方法 | |
EP1443434A2 (en) | Horizontally structured CAD/CAM coordinate system | |
US20040153186A1 (en) | Horizontally-structured modeling for analysis | |
CN110321596A (zh) | 一种基于有限元分析的机车车辆结构仿真方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |