技术论坛

 浅谈解析DXF文件格式的二维图形生成G代码用于数控加工

返回主题列表
作者 主题
菲戈
至圣

经验值:28622
发帖数:5906
精华帖:61
楼主    2019-02-27 09:25:33
主题:浅谈解析DXF文件格式的二维图形生成G代码用于数控加工 精华帖 

       看到标题肯定会有人说这功能现在随便找款制图软件都有的,比如UG NX,Pro/NC,CAD/CAM等等。说的没错但是这些软件对硬件和操作的要求都比较高,而且当我们要把这一功能集成到我们自己开发的上位机软件里面的时候。这时候要嵌入哪些软件就没这么简单了,所以我选择解析DXF文件转换成G代码这样的方式来完成。

        先说说为什么用DXF文件, DXF格式是以带标记数据的形式表示的 AutoCAD图形文件中包含的所有信息。 带标记数据是指文件中的每个数据元素前面都带有一个称为组码的整数。 组码的值指出了后面的数据元素的类型, 还指出了数据元素对于给定对象(或记录)类型的含义。 总之图形文件中所有用户指定的信息都包含在 DXF文件里面,所以只需你的上位软件能读写文本文件就能得到图形信息。不管你是基于高级语言还是组态软件或者触摸屏有文件处理功能理论上都能完成。

基本流程如下:1 CAD或者其他制图软件画好加工路径图形并导出成DXF格式

                        2 上位软件中读取DX文件解析其中,生产相应的G代码加工程序

                        3 控制系统读取G代码文本执行程序

下面自己写了个小Demo,首先我用CAD画了一个封闭的曲线,由三条直线和两段圆弧组成的。然后另存为DXF文件


用记事本直接打开DXF文件,你搜索一下”ENTITIES”,字符下面代码就是我刚刚画的曲线的信息。LINE表示直线,数字10,20后面代表第一个点的X,Y坐标,11,21后面代表直线第二个点的坐标。ARC表示圆弧,10,20表示圆心坐标,50后面表示起始角,51后面表示终止角。


下面我们就可以开始对DXF文件进行解析了,具体解析过后可以参考一下流程图,流程图来自网络凑合着看吧。




顺便上传一个DXF参考手册,里面有对DXF文件的详细说明。

dxf参考手册(中文版).rar

 

dxf参考手册(中文版).rar


数据解析完了就能根据数据生成G代码了,例如遇到LINE用G01指令生产直线插补,遇到ARC 就用G02指令生产圆弧插补。下面是我自己用VB.NET写的小DEMO入读DXF文件画成图形同时生产G代码程序。


以上只能是浅谈或者说提供了一个简单思路,如果真正要用于项目还有很多东西需要完善。现在很多运动控制器都支持G代码编程,或许真会对你有用。



欢迎交流,QQ:2301013064 邮箱:feige6@139.com
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。