dxf2gcodeによるGコードの生成


はじめに

以前CNCフライス盤を自作しましたが,それを動かすにはGコードを用意する必要があります.
初めのうちはWindows上でJw_cadNCVCを使ってみましたが,できればLinux上で作業したかったので,Linux上で動作するソフトを検討した結果QCADとdxf2gcodeを使うことにしました.

QCAD

QCADはLinux用の2次元CADとして有名なソフトです.
日本語でQCADを解説しているページはあまり見つかりませんが,操作はとても分かりやすくて使いやすく,こちらのページのチュートリアルを読めば一通りの操作が分かります.また,こちらで公開されているリファレンスシートも見やすくまとまっています.

dxf2gcode

dxf2gcodeは2次元CADのDXFファイルからGコードを生成するソフトで,Pythonで書かれています.

そのままでは使いにくかったので少し改造して使っています.そのパッチをここに置いておきます.使い方は,まずdxf2gcodeのページから2008-07-27-dxf2gcode_v01_src.zipというファイルをダウンロードして適当なディレクトリに展開し,その展開したディレクトリで"patch < dxf2gcode.patch"としてパッチを当てます.
このパッチを当てると,

という動作をするようになります.
最近dxf2gcodeの新しいバージョンが公開されたようですが,まだ使っていないのでどのような違いがあるのかよく分かりません.

dxf2gcodeの使い方としては,引数にDXFファイルを指定して起動するか,あるいは引数を付けずに起動してからメニューのFile->Read DXFでファイルを読み込み,その後メニューのExport->Write G-Codeを実行するとGコードが生成されます.
画面上に表示されているパラメータで生成されるGコードの設定を行うことができますが,各パラメータの意味は次のようになっているようです:

パラメータ名 意味
Tool diameter エンドミルの直径
Start radius (for tool comp.) ?
Start at X 切削開始位置のX座標
Start at Y 切削開始位置のY座標
Z retraction area 主軸移動時のZ軸の高さ
Z safety margin 加工する材料のZ軸の高さ
Z infeed depth Z軸を1回あたり切り込める最大量(マイナスの数値で指定)
Z mill depth Z軸を削る深さ
G1 feed Z-direction Z軸移動速度
G1 feed XY-direction XY軸移動速度

加工例

実際にプラスチック製のケースを加工するため,QCADで製図しdxf2gcodeでGコードを生成しました.元のDXFファイルを,下の画面の設定によりGコードに変換し,加工した結果が下の写真です.なお,このプラスチック製のケースは適当なバイスで固定できなかったため下の写真のようにネジと鉄のプレートで固定しています.そのままだと加工中に鉄のプレートが邪魔になるので,Gコードの中にM0(一時停止)を埋め込んで加工を中断し,途中で固定位置をずらすようにしています.

DXFファイル DXFファイル  dxf2gcodeの画面  dxf2gcodeの画面

 加工されたプラスチックケース 加工されたプラスチックケース  加工中の様子  加工中の様子


[戻る]
2010-04-05 ページ作成
(2010-02 作成)
T. Nakagawa