本書は、SakiMotionPath プラグイン(以下、SMP)のCAM機能について、使い方と技術的な説明を提供しながら、利用・活用いただくためのマニュアルです。
改良・改善のため、今後の仕様が変更される可能性があります。
すべての機械に対して機能・安全等を確認しているものではありませんので、事前にご利用の皆様の慎重なご確認をお願い致します。
2026.0731
有)咲和惟
福井県鯖江市丸山町1-5-5
メールアドレス web@sakiwai.net
1 概要
1.1 SakiMotionPath ( SMP )とは
Rhinoceros 8 (3D-NURBS曲面モデルに適したCAD)用の、CNC(Gコード)やロボット(スクリプト等)を3D形状から制御軌道を生成して活用するためのプラグインソフトウエアです。
NURBS曲線・NURBS曲面とは、自動車や家電、家具など、プロダクトデザインの意匠・スムーズな(微分やなめらかな接続が可能な)デザインを表現するためのCAD用の3次元の数学モデルです。
多軸のサーボ・コントローラ・CNC等を用いた加工を制御する際、CADのデザイン曲線・曲面から機械制御装置への6DOF(空間内の剛体モデルの移動・回転)+α(加工に必要なコントロール、精度、加速度・速度などの最適化計算)の計算やシミュレーションを提供します。
つまり、曲面形状から機械コントロールへ、重要な数値計算の橋渡しをします。
CAD/CAM/シミュレーターの連携、CAD上の曲線・曲面データから、機械やロボットの機構への制御分解、コントロールコードや、Gコードのポストを含めた機械動作シミュレーションが可能です。
1.1.1 参考:Rhinoceros8について
https://www.rhino3d.com/
Rhinoceros 8 : Copyright © 1993-2026 Robert McNeel & Associates. All Rights Reserved.
Rhinocerosは、アメリカMcNeel社の製品で、NURBSモデルを柔軟に扱える曲線・曲面に強い3次元CADです。またCADの多数のファイルトランスレーター(ファイル入出力機能)を含んでいます。自動車業界、家電、船舶、航空機、から、眼鏡や家具など日用品でつかわれる世界標準のファイルを処理でき、大企業だけでなく、多くの中小企業でも利用されています。
1.2 SMPのおおまかな機能
SMPの各機能については、ライセンスによって個々に有効になります。
1.2.1 曲線・曲面の加工制御・軌道制御(CAM)
- 2.5D/同時3軸の輪郭、穴あけ、ヘリカルザグリ、ポケットなどの加工、(主軸方向固定)
- 同時4軸/5軸・曲線・曲面加工(主軸方向可変)
- 同時6軸 主軸可変+加工方向可変加工(主軸方向+工具接線方向制御)
1.2.2 CAD作業平面CNCワーク座標間の変換機能(CAM)
「作業平面(CAD)とワーク座標(CNC)」の章で説明しています。
1.2.3 CNCシミュレーターで時間アニメーション表示(SIM)
1.2.4 CAD+CAM+SIMの統合、スムーズなワークフロー
1.3 CAM機能と本書の役割
SMPの機能の中で、本書では、SMPの中心・基礎となるCAM Panel(CAM機能を操作するRhino上のGUI)の解説をしています。
SIM Panelの解説は別マニュアルがあります。
2 インストール
2.1 インストールについての注意点
インストールは念のためRhinocerosを終了させた状態でおこなってください。
インストールファイルは、
SakiMotionPath_Install_64bit_<バージョン文字列>.exeです。
管理者アカウントでインストールする必要があります。
2.2 インストール画面
言語選択:日本語 >OKを押します。
「インストール」ボタンをクリックすると、必要なファイルをコピーします。
(3分程度待ちます)
「完了」ボタンを押します。
SMPは、Rhinoceros8のプラグインです。
Rhinoceros8を実行して、CAD内でSMPの機能を利用します。
3 プラグインの起動とSMPのパネルの準備
3.1 プラグイン用のパネルの起動
SmpPanelsとタイプするとSMPの表示パネルが選択できます。Sを押す(Show All Panels)と、CAMPanelとSIMPanelが表示できます。このコマンドはEnterかESCで抜けます。
表示後、パネルはライノセラスのメイン画面に統合することもできます。あるいは、フローティングさせて適当な大きさにリサイズも出来ます。
下記はメイン画面の一画にCAMパネルを統合させたところです。CAMパネルとSIMパネルをタブで切り替えられるようにしています。
なお、インストールすると、デモ用・操作確認用のCAMプロパティ(機械、ツール、パスのデータ)がはいっています。
4 体験操作
4.1 体験操作のための準備
1)CAMパネル(SMP CAM Panel) から、Configボタンを押します。(右画面)
2)プロパティデータ管理で、データをuserからdemo1に変更します。
demo1とすることで、CAMの設定が通常のユーザー操作とは別の設定として動作します。
(demoを設定して終了しても、起動時のプロファイルは常にuserとなります。)
次の3項目にチェックがはいっていることを確認してください。
「CAM生成時に工具とパスのプロパティを画面確認」
「Gコードを機械SIMへ自動転送」
「機械SIMのEnable時に全図形を自動選択」
Okを押すと、CAM Propertyの( )内の表示が demo1と表示されます。
[HINT]
[+]のマークを押すとツリービューが展開されます。
[―]のマークを押すとツリービューが折りたたまれます。
4.2 2.5Dのツールパス(ポケット加工)
ドキュメント\SakiMotionPath\samples に簡単な体験操作のファイルがいくつかあります。この中から、user_manual_demo1.3dmを開きます。
レイヤーで、ポケット加工-2Dを表示状態にし、他のレイヤーを非表示状態にします。
単純な図形が表示されます。
外側(領域)と内側(島)が、直線、円弧、NURBS曲線から出来ています。
[HINT] NURBS曲線などはツールパス生成時に指定された精度でCNCコード等がサポートする経路・曲線等に分解されます。
4.2.1 ツールパスの作成
CAMPanelで加工曲線 生成ボタンを押します。
[HINT]CAMPanelのConfigで「CAM生成時に工具とパスのプロパティを画面確認」にチェックがはいっていると、毎回工具とパスのプロパティを確認・設定ができます。
4.2.2 工具の選択
T1ではじまるツール(D6のフラットエンドミル)を選び、「使用」を押してください。
使用=選択状態のものは、名前の前に*がつきます。
4.2.3 パスの選択
「Pocket25D」をドロップダウンリストから選択して、「使用」をおしてください。
Okボタンを押すと指定された工具とパスで、ツールパスの計算が始まります。
4.2.4 2.5Dパス生成
簡単な図形から、2.5Dのポケットのツールパスが作成されました。
気に入らない場合は[ツールパス全削除]で、パスを削除し、設定を変更して作成しなおすことができます。なお、複数のパス(複合パス)がある場合はパスを選択して削除も可能です。
4.2.5 Gコード出力
[GCode出力]ボタンを押します。
保存先とファイル名を入力して、保存を押します。
[HINT]Gコード編集用のアプリを プロパティのMachinesの登録機械で登録していれば、Gコードファイル保存後にそのアプリでファイルを自動的に開きます。
4.2.6 機械シミュレーション(オプション機能)
SIMパネルが表示されるので、[有効化]ボタンを押します。
[開始]ボタンを押すとシミュレーションが開始します。
オーバーライドでシミュレーションの速度を速める(あるいは、遅くする)ことができます。
また、TimeControlのスライドバーで好きな位置へ早送りやプレイバックができます。
Gコードによる全加工時間は、Gコードを純粋に解析して、工具交換やポストによる移動も含んだ時間がTimeControlの右側に表示されます。
[HINT]機械のモデルや工具は、CAMProperyのMachineの定義でRhinocerosのファイルとして定義されており、[有効化]を押すことで加工用のファイルにインポートされます。
[SIM結合解除]ボタンを押すと、シミュレーターが終了し、機械の表示等が無くなります。
4.3 多軸のツールパス(曲面上の曲線加工)
流れはポケット加工と同様です。
レイヤーで、曲面上加工を表示状態にし、他のレイヤーを非表示状態にします。
ポケット加工を直前におこなっている場合、パスが残っているので、[計算パス消去]で、ポケット加工のパスを削除しておきます。
4.3.1 ツールパスの作成
CAMPanelで加工曲線 生成ボタンを押します。
4.3.2 工具の選択
T2-半月ミルを選び、「使用」を押してください。
4.3.3 パスの選択
サーフェス法線を選択して、「使用」を押してください。
Okボタンを押すと指定された工具とパスで、ツールパスの計算が始まります。
4.3.4 多軸制御パス生成 (PVList)
回転軸を用いた加工の場合、主軸方向が変化します。SMPでは、これを制御・表示するための仕組みとしてPVList (位置ベクトル群)表示としています。
ツールパスとして、3次元の位置(線や円弧など)だけでなく、各位置での主軸方向と進行方向のベクトル表す表示が付加されます。
このPVList表示は、全点で発生させると非常に沢山の線が描画され、PCに対する負荷が高くなります。SMPでは次のように間引いて表示することができますので、GPUのないPC、ノートPC等で操作が重い場合は調整してください。
1)変化がない部分は表示されません。
2)Configで表示する間隔を設定することができます。(間隔を大きくすると表示がまばらになります) PCや描画するものにあわせて調整してください。
4.3.5 コードの出力、シミュレーション
多軸加工のPVツールパスも、ツールパス生成後の流れは2.5Dのポケット加工と全く同じです。
・Gコード出力
・機械シミュレーション(オプション)
となります。
5 SMP CAM全般の設定 (ConfigForm)
本章ではSMPのCAM全般の設定を細かくみていきます。
5.1 設定の保存場所(管理者用情報)
全般の設定値はWindowsレジストリHKCU\SOFTWARE\SAKIWAI\SakiMotionPathに保存されます。なお、CAM設定(CAMプロパティ)データ管理はファイルになっています。
5.2 ユーザー設定画面 (ConfigForm)
CAMパネル上の「Config」ボタンから全般の設定を開くことができます。
OKボタンを押すと即時保存・適用されます。
5.3 設定項目
5.3.1 言語
プラグインの表示言語を選択します。
| 選択 | 説明 |
|---|---|
| 日本語 | 日本語表示 |
| English | 英語表示 |
| Deutsch | ドイツ語表示 |
| (初回起動時) | RhinoのUI言語に自動追従 |
選択を変えると、このダイアログ内の言語表示がリアルタイムでプレビューされ、OKを押すと確定・終了し、他のコントロールの言語表示も変更されます。(英語、ドイツ語のアップデートは海外ユーザーのリリース用なので日本語ほど頻繁ではありません。)
インストーラーでもこれらのインストール言語を設定でき、インストール時の画面の表示に反映されますが、プラグインの画面でいつでも変更する事が出来ます。
5.3.2 最大機械登録数(指定管理者のみ変更可能)
CAMプロパティの機械リストに登録できる機械データの上限数を設定します。
ツールパス生成は機械にも依存するため、機械を複数登録し、途中別のものに変更すると正しく動作しないコードが生成されることがあり、最大数が1になっています。
本項目はライセンスにより決定されますが、通常ユーザーは1から変更できません。
5.3.3 PVListベクトル表示間隔
回転軸を使用する加工(AxisSrfNormal・AxisSrfUV 等)では、ツールパスの位置だけでなく、ツールパス上の主軸の向きも重要です。また、6軸以上の加工では、主軸の向きに加えて接線方向も制御します。
そのため、3軸のツールパスとはことなる表示(点群におけるベクトル群の表示)をします。これがPVList(Point+Vector List)です。生成されるPVListの、Rhinoビューポートへのベクトル描画間隔を設定します。
| 値 | 動作 |
|---|---|
| 0 | 変化のある全ポイントを描画する |
| 正の値(mm) | 直前に描画した点から指定距離以上離れたポイントのみ描画する |
接線方向に不連続な点(キンク)は、この間隔によらず常に描画されます。モデルのスケールや確認しやすさに応じて調整してください。(通常は5mm程度でいいと思います。)
5.3.4 PVListベクトル長
各ポイントに描画する Tangent(接線)/ToolAxis(工具軸)/OutVec(外積ベクトル) の3本のベクトル線の長さ(mm)を設定します。各ベクトルの意味と表示色は次のとおりです。
| ベクトル | 表示色 | 意味 |
|---|---|---|
| Tangent(接線) | 赤 | 工具の進行方向(曲線の接線) |
| ToolAxis(工具軸) | 青 | 工具軸方向(サーフェス法線 = 工具が向く方向)。Zオフセットはこの方向に適用される |
| OutVec(外積) | 緑 | Tangent × ToolAxis の外積方向(工具軸に垂直な外向き) |
既定値は 10.0 mm です。モデルのスケール等に合わせて見やすい長さに調整してください。設定はレジストリに保存され、次回起動時も引き継がれます。
5.3.5 機械SIMのEnable時に全図形を自動選択
チェックONにすると、機械シミュレーションを有効化したとき、ビューポート内の全オブジェクトを自動的に選択状態にします。機械シミュレーションはライセンス・オプションです。
5.3.6 CAM生成時に工具とパスのプロパティを画面確認
チェックONにすると、CAMコマンド(ポケット加工・等高線加工など)を実行するたびにCAMプロパティ画面(工具・パス設定)が開き、内容を確認してから生成できます。設定を毎回見直す場合はON、作業を素早く進めたい場合はOFF(既定)が便利です。
5.3.7 Gコードを機械SIMへ自動転送
チェックONにすると、Gコード生成後、自動的に機械シミュレーターへ転送してシミュレーションを開始します。既定はON です。OFFにした場合、手動でシミュレーターへ転送することができます。
5.3.8 CAM/Gコード付帯情報の出力
チェックONにすると、CAM計算・Gコード生成の詳細な内部情報をRhinoのコマンドラインに出力します。問題調査・確認用の項目です。Gコードに不要な情報、文字が埋め込まれますのでOFF(既定)にして利用してください。
5.4 CAM設定のファイルの書き出し・読み込み(設定外)
「Config」画面には、CAMの設定を任意の名前で書き出したり、別のファイルを読み込んだりするための機能があります。ファイルの詳細は「CAMプロパティ(準備・定義データ)の管理」の章を参考にしてください。
5.4.1 個別の書き出し・読み込み
機械(Machines)・工具(Tools)・パス(Paths)をそれぞれ独立して操作できます。
| ボタン | 操作 | 保存ファイル |
|---|---|---|
| 機械設定を保存 | 現在の機械設定を任意のファイル名で書き出す | *.machines.dat |
| 機械設定を読込 | 指定した *.machines.dat を読み込み、現在の設定を置き換える | *.machines.dat |
| 工具設定を保存 | 現在の工具設定を任意のファイル名で書き出す | *.tools.dat |
| 工具設定を読込 | 指定した *.tools.dat を読み込み、現在の設定を置き換える | *.tools.dat |
| パス設定を保存 | 現在のパス設定を任意のファイル名で書き出す | *.paths.dat |
| パス設定を読込 | 指定した *.paths.dat を読み込み、現在の設定を置き換える | *.paths.dat |
5.4.2 一括の書き出し・読み込み
機械・工具・パスの3つをまとめて1ファイルで管理することもできます。
| ボタン | 操作 | 保存ファイル |
|---|---|---|
| 全設定を保存 | 機械・工具・パスをまとめて1ファイルに書き出す | *.all.dat |
| 全設定を読込 | *.all.dat を読み込み、機械・工具・パスを一括置き換えする | *.all.dat |
5.4.3 プロパティフォルダを開く
「プロパティフォルダを開く」ボタンを押すと、エクスプローラーでドキュメント\SakiMotionPath\property\ フォルダを直接開きます。
注意: 読み込み操作はメモリ上の設定を即時置き換えますが、user.*.dat への書き込みは次回の保存操作(CAMプロパティ画面での確定)時に行われます。
CAMプロパティのファイルについては次章で詳しく説明します。
6 CAMプロパティ(準備・定義データ)の管理
SMPのCAM機能は、ユーザーの機械、ツール、加工方法に応じて、ツールパスを生成しますが、毎回全てを設定するのは大変なので、予め「ユーザー用に登録してあるリスト」から、選択したものを呼び出して、必要部分を変更して、生成の際に使用するようにしています。
「ユーザー用に登録してあるリスト」というのが、ファイルとして、ユーザーのドキュメントフォルダの中にあります。これらのファイルは、ユーザー自身で保守する必要があります。PCの移動の時などにファイルを移動したり、バックアップを取る必要があります。
6.1 CAM用の各種設定ファイル=CAM Property
機械(Machine)・工具(Tool)・パス(Path)の設定は、各々をCAM設定ファイルとして保存、読み出しされます。これらをまとめて、CAM Propertyと表現しています。管理できる数はライセンス形態により上限があるケースがあります。
6.1.1 保存フォルダ
CAM設定ファイルは通常、次のフォルダに保存されます。
ドキュメント\SakiMotionPath\property\
参考:ドキュメントのパス(ドライブ環境やMSアカウントで変わる場合があります)
C:\Users\<ユーザー名>\Documents
このフォルダ内のファイルをユーザーが管理(バックアップ・コピー・移行)してください。
CAMプロパティ画面で設定を変更・保存すると、次のファイルへ保存されます。
ドキュメント\SakiMotionPath\property\user.machines.dat
ドキュメント\SakiMotionPath\property\user.tools.dat
ドキュメント\SakiMotionPath\property\user.paths.dat
6.1.2 ファイルの種類
property フォルダには、userとDefaultのファイルがあります。(demoもありますが省略)
| ファイル名 | 内容 | 役割 |
|---|---|---|
| user.machines.dat | 機械設定 | ユーザーの設定ファイル 通常使用 |
| user.tools.dat | 工具設定 | 同上 |
| user.paths.dat | パス設定 | 同上 |
| Default.machines.dat | 機械設定 | 出荷時の標準テンプレート 変更しない |
| Default.tools.dat | 工具設定 | 同上 |
| Default.paths.dat | パス設定 | 同上 |
- user.*.dat … 本プラグインが起動時に読み込み、設定変更時に保存するファイルです。ユーザーが日常的に使うのはこちらです。消去すると初期状態に戻ってしまいます。
- Default.*.dat … インストール時に配置される標準(出荷時)データです。user.*.dat を新規生成するための雛形です。
6.1.3 起動時の読み込み動作
本プラグインのCAMパネルは起動時に、次のルールでCAM設定を読み込みます。
user.*.dat が存在する場合 … その内容を読み込みます。
user.*.dat が存在しない場合 … 標準テンプレートである Default.*.dat から読み込み、次のメッセージを表示します。
user.machines.datが無いので標準のものを生成します。
user.tools.datが無いので標準のものを生成します。
user.paths.datが無いので標準のものを生成します。(存在しないファイルの分だけ表示されます。)
いずれの場合も、設定を保存すると内容は user.*.dat に書き込まれます。初回起動時は Default.*.dat の内容をもとに user.*.dat が作成されます。
6.1.4 設定の保存
注意: user.*.dat はユーザー操作の必要に応じて自動で上書きされます。定期的にバックアップを取ることをお薦めします。
6.2 CAM プロパティのファイル管理
6.2.1 バックアップ
user.*.dat はユーザー操作のたびに自動上書きされます。設定を整えたら、user.*.dat をコピーして保管するか、Config画面の「保存」ボタンで別名ファイルに書き出してください。
6.2.2 設定のリセット
設定を出荷時状態に戻したい場合は、user.*.dat を削除して本プラグインを再起動してください。Default.*.dat から再生成されます。
6.2.3 別PCへの移行
user.*.dat を移行先の property フォルダにコピーしてください。
6.2.4 Default.*.dat, demo.*.dat
Default.*.dat は削除しないでください。設定の初期化・再生成の雛形として必要です。
Demo(1-3).*.datはデモ用の設定ファイルです。
7 CAMパネルのTreeView
RhinoパネルのCAMパネル(SakiMotionPath)には、CAMに関する設定と、生成したツールパスの結果を一覧するTreeViewが表示されます。
パネルにもTreeViewのノードデータ(CAMの設定、出力)を操作するボタンがあります。
[追加][削除]
[上へ][下へ]
[使用][削除]
7.0.1 TreeViewの構造
TreeViewは2つのルートノードで構成されています。
Property
├── Machines (n) ← 登録済み機械設定の一覧
│ ├── *Machine1 ← 使用機械(先頭に * が付く)
├── Tools (n) ← 登録済み工具設定の一覧
│ ├── *EndMill_5mm ← カレント工具
│ └── Drill_3mm
└── Paths (n) ← 登録済みパス設定の一覧
├── *Path_Pocket ← カレントパス
└── Path_Profile
CAM Output
├── DefaultMachine ← Gコード生成に使用した機械名
├── ToolPaths ← 生成済みツールパスの一覧
│ ├── ToolPath_1
│ │ ├── EndMill_5mm ← 使用工具
│ │ ├── Path_Pocket ← 使用パス設定
│ │ ├── RefPlane ← 加工基準平面
│ │ ├── BasePlane ← A軸割り出し基準平面(設定時のみ)
│ │ ├── ZLayers (n) ← 2.5軸加工の場合
│ │ └── PVLine (n) ← サーフェス法線系加工の場合
│ └── ToolPath_2
└── GCode ← 出力済みGCodeファイルの一覧
└── gcode.txt
Propertyノード: user.machines.dat / user.tools.dat / user.paths.dat に保存されているデータを表示します。カレントに設定されたアイテムは名前の先頭に * が付きます。
CAM Outputノード: CAMコマンドで生成したツールパスと、出力済みGCodeファイルを表示します。生成したツールパスはON/OFFや、加工順番の入れ替え([上へ]、[下へ]ボタン)ができます。
ONのものがGコードとして出力されます。
7.0.2 CAM Panel - TreeViewの操作
7.0.2.1 マウス操作
| 操作 | 対象ノード | 動作 |
|---|---|---|
| ダブルクリック | Machine/Tool/Path | CAMプロパティ画面を開く |
| ダブルクリック | GCodeファイル | 機械設定の「実行ファイル名」に登録されたアプリでファイルを開く。空欄または
.(ドット1文字)のときは拡張子に紐づく Windows
既定アプリで開く |
| 右クリック | GCodeファイル | コンテキストメニューを表示(→ [GCodeファイルのコンテキストメニュー]) |
| クリック(選択) | ToolPath | Rhinoビューポート上でそのツールパスの形状をハイライト表示する |
| ドラッグ&ドロップ | ToolPath | ToolPaths内でToolPathの加工順序を並べ替える |
7.0.2.2 キーボード操作
| キー | 動作 |
|---|---|
| F2 | 選択中のMachine/Tool/Pathノードを編集(ダブルクリック) |
| Enter / Insert | 選択位置に新規データを追加 |
| Delete | 選択中のデータを削除(確認ダイアログあり) |
| Shift + ↑ | 選択中のProperty項目またはToolPathを1つ上に移動 |
| Shift + ↓ | 選択中のProperty項目またはToolPathを1つ下に移動 |
7.0.3 GCodeファイルのコンテキストメニュー
Gコードを出力すると、GCodeノード下にファイルが表示されます。それらを右クリックすると以下のメニューが表示されます。
| メニュー項目 | 動作 |
|---|---|
| 転送 | 機械シミュレーターへGCodeを転送してシミュレーションを開始する |
| 編集 | ダブルクリックと同じ。対応アプリでGCodeファイルを開く |
| フォルダを開く | エクスプローラーでGCodeファイルの保存フォルダを開き、ファイルを選択状態にする |
8 CAMの各種設定 (CAMプロパティ画面)
CAMプロパティ画面は、ツールパスを生成するための機械(Machine)・工具(Tool)・パス(Path)の設定を編集する画面です。CAMパネルのツリー表示でダブルクリックや編集操作で独立したフォームとして表示されます。
8.1 共通操作
画面は機械・工具・パスと分かれていますが共通する部分があります。たとえば「Machine(機械)」のノードをダブルクリックすると、機械に関する設定データが表示されます。Tool(工具)も同様です。たとえば、工具は、タブの下の名前のドロップダウンで別の工具に移動ができます。右上の[全体管理]を押すと、3つのタブが表示され、全てのデータが編集できるモードになります。
8.1.1 名前の重複について
機械(Machine)・工具(Tool)・パス(Path)の各設定は、同じ種類の中で名前を重複させることはできません。
CAMプロパティ画面で新規追加または編集を行い、[書込]のタイミングで名前のチェックがおこなわれ、同じ種類で同じ名前のデータが既に存在する場合は、次のメッセージが表示され、書き込みは行われません。
このときは別の名前に変更して再度書き込んでください。
8.1.2 CAMプロパティ画面モード
CAMプロパティ画面は、開き方によって表示されるタブと操作範囲が異なります。
| モード | 表示タブ | 説明 |
|---|---|---|
| 全体管理 | Machine / Tool / Path | 全タブが管理モードで開く。各データの追加・編集・削除・順序変更が可能 |
| ToolPath作成 | Tool / Path | CAMコマンド実行前の確認・選択用。Tool/Pathを管理モードで開く |
| 参照 | 対象のタブのみ | 特定データを閲覧するだけのモード。リスト変更・管理ボタン不可 |
「全体管理」ボタンを押すと現在のモードから全体管理モードに切り替わりますが、タブが編集中(Edit/Addモード)のときは全体管理ボタンが無効化され、OKボタンも押せなくなります。編集内容の破棄を防ぐためです。
8.1.3 CAMプロパティのデータの保存タイミング
各タブで「書き込み」ボタンを押した瞬間にそれぞれのファイルへ即時保存されます。
OKボタンでも同様に保存されます。
キャンセルは編集内容をフォーム上で破棄します。
8.2 機械設定UI
機械設定UIは、機械リストの管理、各機械パラメータの編集を行えます。動作パラメータ・Gコード出力設定・シミュレーションなどの機械に関する設定ができます。
8.2.1 リスト操作エリア
データを選択したり、編集モードにするなどの操作ボタンです。
| ボタン | 動作 |
|---|---|
| 機械の名前 (コンボボックス) |
ドロップダウンで別のデータを選択することもできます。CAMで使用する機械は名前の先頭に
*がつきます。 機械に関してはライセンスによる台数の上限があります。 |
| 使用 | 選択中の機械をCAM処理の機械に設定して保存する |
| 変更 | 現在選択中の機械をEditモードにして各項目を変更可能にする |
| 複製 | 現在選択中の機械を複製して末尾に追加し、Editモードにする。キャンセル時は追加した複製を削除して元の選択に戻る |
| 削除 | 選択中の機械をリストから削除する(最後の1件は削除不可)。確認ダイアログあり |
| 書込 | 編集内容を検証して保存し、Browseモードに戻る。名前重複や機械台数上限超過の場合はエラーメッセージを表示して保存しない |
| 中止 | 編集内容を破棄してBrowseモードに戻る |
8.2.2 基本設定・開始終了コード タブ
| 項目 | 説明 |
|---|---|
| コードタイプ | Gコードの種別文字列(例: GCODE)。現在は表示・保存のみで動作には影響しない |
| 円弧補間精度(mm) | 曲線を円弧に変換するときの許容誤差 |
| 機械軸 | XYZ / XYZA / XYZB / XYZAC / BF6Ax から選択 |
| 開始コード | Gコード先頭 |
| 終了コード | Gコード末尾 |
8.2.3 機械コード出力 タブ
機械コード出力に関する設定をおこないます。
| 項目 | 説明 |
|---|---|
| 「;」を改行コードに変換 | Gコード出力時に、コードにはいっている「;」を改行にします。 |
| 出力文字コード | 下記参照 |
| Gコード保存 ファイル名 |
Gコードを保存するファイル名。「指定」ボタンでダイアログから選択可。空白の場合は毎回保存ダイアログを表示します。 |
| 実行ファイル名 | Gコード生成後に起動するアプリのパス(メモ帳など)[指定]ボタンで選択可。 空=Gコード生成後は何も起動しない。 .(ドット1文字)=保存したGコードの拡張子に紐づく
Windows
既定アプリで開く。それ以外=そのアプリに保存先パスを引数として渡して起動 |
8.2.3.1 出力文字コードと対応CNC
| 選択 | 保存時 エンコーディング |
文字フィルタ | 参考: 主なCNC |
|---|---|---|---|
| CLASSIC | ASCII | 小文字を大文字化し、大文字英数字と - . ( ) % # のみ出力 | FANUC |
| SJIS | Shift-JIS | なし(そのまま保存) | MELDAS |
| UTF-8 | UTF-8 BOM無 |
なし(そのまま保存) | LinuxCNC |
8.2.4 回転軸タブ
| 項目 | 説明 |
|---|---|
| リトラクト・検出(Deg) | 回転軸がこの角度以上変化するとき、工具を退避してから回転し、次点で再アプローチ |
| リトラクト・復帰Z加算 | 退避後の復帰アプローチ時に加算するZ量 |
| 先端点速度制御(ToolTipControl) | 先端点の速度を制御 指定F値を移動点の3次元の空間移動速度に換算しN軸の合成速度をGコードでオーバーライド (移動軸から回転軸を除く分を増速します) |
| 先端点速度制御・ 最大出力速度 |
先端点の速度を制御するとき、増速の最大値をクランプ ただし、ツールの速度のほうが速い場合はクランプしません。先端点速度制御を設定しても速度が変わらない場合は、最大出力速度が低すぎないか確認。 |
| 最初のC軸の任意位置を逆修正(FixFirstAnyC、XYZAC専用) | 最初のC軸位置が任意(Any)のとき、先読みして逆側から修正 |
| 再帰分割 — 最大回転角SubDivideParams.MaxRotDeg | 軸ベクトルの変化がこの角度を超える区間を再帰分割(中間点をリニア補間) |
| 再帰分割 — 最大分割深さSubDivideParams.MaxDepth | 再帰分割の最大深さ |
8.2.5 シミュレーション タブ
別途、シミュレーションのマニュアルがあります。(参考)
| 項目 | 説明 |
|---|---|
| G00速度 | 機械シミュレーション時のG00(高速移動)速度(mm/min) |
| 初期軸位置 | シミュレーション開始時の各軸位置(カンマ区切り。例: 200,150,200) |
| ATC位置 | 工具交換動作時の移動先位置(カンマ区切り) |
| ATCコード | 工具交換Gコードパターン 空の場合は標準のM6/M06 T形式 例: `M6 T<TOOL_NO>` / `M98 P9<TOOL_NO_3>`)。 `M98 P9001` のような形にも対応。(3桁) |
| APCコード | パレット交換Gコードパターン。空の場合はAPCなし |
| 可動範囲 +/- | 機械の各軸ソフトリミット(カンマ区切り)。シミュレーションのみ使用 |
| 不明コード許容 | 未知のGコードをエラーにせず Duration=0 として処理する |
| 機械モデルファイル | シミュレーション用3Dモデル(.3dm)。machinesフォルダ相対パスで保存 |
| 工具モデルファイル | 工具形状が機械モデルと別ファイルの場合に指定する |
| シミュレーション 初期モーダル |
シミュレーション開始前の初期モーダル状態コード(例: G90; G17;) |
| 工具長補正テーブル | H番号(H1〜H99)に対応する工具長補正値を設定します。テーブル上のセルをクリックして直接編集できます。ExcelなどからコピーしたデータをCtrl+Vでペーストすることもできます |
| ワーク座標系テーブル | 各ワーク座標系(G54〜G59等)のオフセットコードとX/Y/Z/A/B/C/U/V/W軸の原点オフセット値を設定します。Offset Codeに G54、G55 などのCNCコマンド文字列を入力します。パス設定の「ワーク座標系(G54System)」との対応付けに使用されます。Ctrl+Vでスプレッドシートからのペーストが可能です。 |
| シミュレーション パラメータテーブル |
機械のシミュレーションパラメータを名前と値のペアで最大100件登録できます。例えばATC/APCの動作量などを設定します。Ctrl+Vペースト可能です。 機械動作にあわせてシミュレーションソフトウエアを拡張する事が出来ます。(オプション・デジタルツイン機能) |
8.3 工具設定UI
工具設定UIは、工具リストの管理、各工具パラメータの編集を行えます。
8.3.1 リスト操作エリア
「機械設定UI」の「リスト操作エリア」と同様です(Machine → Tool に読み替えてください)。
- 少なくとも1件の工具が常に登録されている必要があります。1件の場合は削除できません。
8.3.2 設定項目
| 項目 | 説明 |
|---|---|
| 工具名 | 一意な名前 |
| 工具の形状 | 中心(半月ドリルなど) /ストレート、フラット(底面、側面)/ ボール / バフ、砥石(6Ax) |
| 工具直径 | 工具外径。径補正計算に使用する |
| 工具加工位置 | 工具先端のZ方向のオフセット |
| 回転数(通常rpm) | スピンドル回転数。<TOOL_S> タグ |
| 工具加工速度(XY)(mm/min) | XY方向の切削送り速度。通常の切削移動(G01)に使用 |
| 工具加工速度(Z)(mm/min) | Z方向の切削送り速度。直線フィード降下(APZ)に使用 |
| Zアプローチ速度(mm/min) | Z方向アプローチ時の送り速度 |
| XYアプローチ速度( mm/min) | XY方向アプローチ時の送り速度 |
| 工具番号(ToolNo) | Tコード番号。<TOOL_T> タグ |
| 径補正番号(FixD) | Dコード番号。<TOOL_D> タグ |
| 長補正番号(FixH) | Hコード番号。<TOOL_H> タグ |
| 開始コード(StartCode) | 工具使用開始時のGコード 例:M06T<TOOL_T>; M03 S<TOOL_S> |
| 停止コード(StopCode) | 工具停止時のGコード例: M05 |
| 連続同一ツール時 開始/停止コード省略(OmitCodeOnSameTool) | ONのとき、同じ名前のツールが連続する場合に前の停止コードと次の開始コードをスキップ |
8.3.3 連続同一ツール時 開始/停止コード省略の詳細
8.3.3.1 概要
複数のツールパスをまとめてGコード出力するとき、同じ工具を連続して使用する場合に工具交換コード(Tool.StartCode / Tool.StopCode)の出力を省略できます。スピンドルを停止・再起動する必要のない場面(同一工具による連続パス)で、無駄な工具交換コードを除去するために使用します。
8.3.3.2 判定ロジック
Gコード出力時、各ツールパスについて以下の2つを独立して判定します。
| 対象コード | 省略条件 |
|---|---|
| 開始コード(StartCode)省略 | 直前のツールパスの工具名 == 自分の工具名 かつ 自分の OmitCodeOnSameTool が ON |
| 停止コード(StopCode)省略 | 直後のツールパスの工具名 == 自分の工具名 かつ 自分の OmitCodeOnSameTool が ON |
- 工具名の比較は文字列の完全一致で行われます。
- 省略するかどうかは自身の OmitCodeOnSameTool フラグが基準です(隣接するツールパスのフラグは参照しません)。
8.3.3.3 省略の具体例
以下の4ツールパスを順番に出力する場合
ToolPath 1: 工具 EndMill_5mm
ToolPath 2: 工具 EndMill_5mm ← TP1 と同じ工具名
ToolPath 3: 工具 Drill_3mm ← 別の工具
ToolPath 4: 工具 EndMill_5mm ← TP3 とは違う工具名
| TP | 工具名 | 前の工具 | 次の工具 | StartCode | StopCode |
|---|---|---|---|---|---|
| 1 | EndMill_5mm | (なし) | EndMill_5mm | 出力 | 省略 ← 次が同名 |
| 2 | EndMill_5mm | EndMill_5mm | Drill_3mm | 省略 ← 前が同名 | 出力 |
| 3 | Drill_3mm | EndMill_5mm | EndMill_5mm | 出力 | 出力 |
| 4 | EndMill_5mm | Drill_3mm | (なし) | 出力 | 出力 |
TP1の停止コードとTP2の開始コードが省略され、同一工具の連続パスがシームレスに接続されます。TP3(別工具)をはさむ場合、TP2の停止コードとTP4の開始コードは省略されません。
8.3.3.4 出力Gコードのイメージ
(Machine.StartCode)
; --- TP1: EndMill_5mm ---
T1 M06 ← TP1 StartCode(出力)
M03 S3000
(加工本体 TP1)
← TP1 StopCode は省略(TP2が同名工具のため)
; --- TP2: EndMill_5mm ---
← TP2 StartCode は省略(TP1が同名工具のため)
(加工本体 TP2)
M05 ← TP2 StopCode(出力)(TP3は別工具のため)
; --- TP3: Drill_3mm ---
T2 M06 ← TP3 StartCode(出力)
M03 S1500
(加工本体 TP3)
M05 ← TP3 StopCode(出力)
; --- TP4: EndMill_5mm ---
T1 M06 ← TP4 StartCode(出力)(TP3は別工具のため)
M03 S3000
(加工本体 TP4)
M05 ← TP4 StopCode(出力)
(Machine.EndCode)
8.4 パス設定UI
パス設定UIは、パス設定のリストの管理、パスの種別やパラメータの編集を行えます。
8.4.1 リスト操作エリア
「機械設定UI」の「リスト操作エリア」と同様です(Machine → Path に読み替えてください)。
- 少なくとも1件のパスが常に登録されている必要があります。最後の1件は削除できません。
8.4.2 CNC座標系/CAD平面エリア
「作業平面(CAD)とワーク座標(CNC)」の章を参照してください。
8.4.3 加工種類(Method)とその概要
加工方法は大まかに、回転する事ができない(工具軸固定)、できる(工具軸可変)、で2種類に分けられます。また、加工方法により、使わないパラメータがあったり、パラメータの使用方法が異なる場合もありますので、最初に加工方法を決定して、パラメータを入力していきます。
8.4.3.1 工具軸 固定(Z方向)加工
| 設定値 | 名称 | 概要 | 詳細 |
|---|---|---|---|
| DirectMultiCurves | 曲線中心加工 | 選択した曲線の中心線をそのままツールパスとする。オフセットなし | |
| OffsetDir | サイド加工 | 曲線を工具半径分オフセットしてサイド切削する。アップカット/ダウンカット選択可 | |
| OffsetDirWithArc | サイド加工 +導入円弧 |
サイド加工に加え、コーナー部に導入/退出円弧を付加する | |
| ポケット加工 | 閉曲線の内側をポケット加工する。降下方式(直線フィード/ランプ)選択可 | ||
| PointDrill | 点ドリル | 点オブジェクトを中心にドリル加工。ペック/ヘリカル降下選択可 |
オプション
| 項目 | 説明 |
|---|---|
| ヘリカルステップ 周回数 |
ドリル時:1Zレイヤのステップをらせんで降下する回数 |
| アップカット | 工具の切削方向。OFF=ダウンカット、ON=アップカット |
| アプローチランプ 角度 |
ランプ加工時のZ降下角度(度)。元曲線のXY軌跡に沿ってこの角度で降下する。0以下/90以上は直線フィード降下と同じ |
8.4.3.2 工具軸可変 回転軸を使う加工
| 設定値 | 名称 | 概要 | 詳細 |
|---|---|---|---|
| AxisSrfNormal | 曲面法線加工 | 指定曲線の各点でサーフェス法線を工具軸とする。曲面研磨・傾斜面加工向き | |
| AxisSrfUV | サーフェスUV加工 | サーフェスのUVエッジに沿って加工し、そのエッジ垂直のUV方向を工具軸とする | |
| AxisRefProject | 投影参照法線加工 | 参照サーフェスのUV方向を工具軸として、別途指定した任意の曲線を加工する | |
| AxisXYNormal | XY補間法線加工 | ユーザーが配置したサーフェス曲線に対して、法線ベクトル線分をXY座標で補間し、工具軸とする |
オプション
| 項目 | 説明 |
|---|---|
| PVList逆順戻り | 主軸方向可変加工(AxisSrfNormal 等)で開曲線を多段切削する場合、Zレイヤー間の戻り経路を逆順PVLineで生成する。複数曲線の場合は自動コネクタで接続するため無効 |
| 主軸ベクトル 矯正限界 |
主軸方向可変加工(AxisSrfNormal 等)で機械が動作可能な方向に主軸方向を強制的に矯正する際の限界角度。超過するとエラーになる。 |
8.4.4 R方向タブ
工具半径Rに追加するXYの拡大を設定します。開始→終了まで段階的に拡大しながら複数軌道を生成します。点ドリル加工の場合は、点を中心とした円を描きながら下降するヘリカル加工で使用します。(ザグリ穴などで利用します)
なお、閉曲線の内側の場合はオフセットできなくなった時点で終了します。
オフセット加工、2.5Dのドリル加工で使用します。ポケット加工・荒加工では、開始・終了の代わりに「XY-Pocketギャップ設定」(下記)を使います(ステップは共通)。
| 項目 | 説明 |
|---|---|
| 開始 ROffsetStart |
最初の外側への軌道オフセット量 点ドリルは中心点からの距離ですが、点ドリル以外では、エッジから工具半径が考慮されます。 |
| ステップ ROffsetStep |
(正の値)軌道拡大時の増分 (負の値)工具直径に対する割合(%)を設定 -30 を設定すると 工具直径の30%をオフセットしていきます。 (ゼロ)工具半径の40%が設定 |
| 終了 ROffsetEnd |
最後の軌道オフセット量 |
8.4.4.1 XY-Pocketギャップ設定(ポケット・荒加工)
ポケット加工・荒加工では、Rオフセットの開始・終了がサイド加工や点ドリルと意味を共有していて分かりにくかったため、専用の項目に分けています。加工方法を「ポケット」「荒加工」に切り替えると、画面の表示ラベルも自動的にこちらへ切り替わります。
| 項目 | 説明 |
|---|---|
| 外側曲線ギャップ PocketOuterGap |
外側曲線(壁 または
材料輪郭)からの最終ギャップ(工具半径への加算値)。マイナス値で外側へ拡張。 「外側曲線の扱い」が材料輪郭(Stock)の場合は、外形を工具半径ぶん外側へ広げた位置が基準になります(最外周の工具中心が外形線上、刃は外形の外へはみ出す)。 |
| 内側曲線ギャップ PocketInnerGap |
内側曲線(島)からの最終ギャップ(工具半径への加算値) |
8.4.5 Z方向タブ
Z方向の設定は工具軸 固定の場合はZ座標そのものですが、工具軸可変の場合は加工点での工具軸方向となります。
工具軸可変の場合は特に、干渉やリミット等を充分確認する必要があります。
| 項目 | 説明 |
|---|---|
| パス外側高速移動Z ZOuterRapid |
ツールパス間の移動時の退避Z座標 |
| パス内側高速移動Z ZInnerRapid |
ツールパス内のステップ間退避Z座標 |
| Zアプローチ ZApr |
各Zステップ開始位置より上方からアプローチする距離 |
| Z開始 ZStart |
加工開始Zオフセット(通常 ≥ 0、ワーク面より上) |
| Zステップ ZStep |
1ステップのZ降下量(0 のとき ZEnd まで1回で降下) |
| Z終了 ZEnd |
加工終了Zオフセット(通常 ≤ 0、目標深さ) |
**制約1**: `ZOuterRapid > ZInnerRapid > ZStart + ZStep + ZApr`
**制約2**: `ZOuterRapid > ZInnerRapid > ZEnd`
入力のチェック
上記の制約に合わない設定は、次の2か所でチェックされます。
1. パス設定(Cam_UI_Path)でデータを書き込む際、制約に合わないと
「Z座標の高さ設定エラー:(理由)」を表示して書き込みを中止します。
2. Gコード出力時、出力対象のいずれかのツールパスが制約に合わないと
「Z座標の高さ設定エラー:(理由)」をダイアログ表示し、出力をエラーとしてキャンセルします。
8.4.6 Z設定パラメータの動作
8.4.6.1 Z座標の基準
Z関連パラメータは何も指定しない場合( WorldXY )はワールドZ座標と一致します。(CADオフセット平面・割出加工平面)を指定する場合は、加工平面に対するローカルZ座標 として扱われます。
ZStart / ZStep / ZEnd は 「加工形状の元のZ位置」に加算されるオフセット値 です。
パス内のZ座標{ZInnerRapid} / パス間のZ座標ZOuterRapid は ローカル座標系での絶対Z位置 です。
8.4.6.2 Z座標の高さ関係
設定について、以下の高さ関係を満たす必要があります。
(Z+)
│ ZOuterRapid ───────────── ツールパス間の移動高さ
│ │ ZInnerRapid ──────────── Zステップ間の退避高さ
│
│ AprZ(最初のステップ) ──────── ZStart + ZStep + ZApr
│ AprZ(2段目以降) ────────── 前の切削Z + ZApr *段ごとに下がる
│
│ ZStart ──────────────── 1段目切削Z(加工形状の元Z + ZStart)
│ ZStart - ZStep ──────────── 2段目切削Z
│ ︙
│ ZEnd ───────────────── 最終切削Z
│
(Z-)
制約: ZOuterRapid > ZInnerRapid > AprZ(1段目) = ZStart + ZStep + ZApr
8.4.6.3 Zレイヤーの動作シーケンス
1つのZレイヤー(1切削深さ)における工具の動きを以下に示します。
ZInnerRapid ──○ ○──
↓ RPZ(G00) RPZ(G00) ↑
AprZ ○ ○
↓ APZ(G01) APZ(G01) ↑
切削Z ────○━━━━(XY)━━━━━○
パス始点 パス終点
8.4.6.4 ツールパス全体の動作シーケンス
複数のZステップを含む1ツールパス全体の流れを示します(ZStepCount=3の例)。
ZOuterRapid ──○ ○──---
↓R1 ↑R3
ZInnerRapid ○ ○─R2─>○ ○─R2─>○ ○
↓ ↑ ↓ ↑ ↓ ↑
AprZ ○ ○ ↓ ↑ ↓ ↑
切削Z1 ○━○ AprZ ○ ○ ↓ ↑
切削Z2 ○━○ AprZ ○ ○
切削Z3 ○━○
| ステップ | 動作 | 説明 |
|---|---|---|
| R1 | G00 ZOuterRapid→ZInnerRapid | 最初の加工点XYで上方から降下 |
| 各Z | RPZ→APZ→CUT→APZ→RPZ | Zレイヤを繰り返し |
| R2 | G00 水平移動(ZInnerRapid高さ) | 前レイヤー終点→次レイヤー始点が離れている場合のみ挿入 |
| R3 | G00 ZInnerRapid→ZOuterRapid | 最後の加工点XYで上方へ退避する |
8.4.6.5 アプローチZ(AprZ)の計算式
AprZ(APZの上端・RPZの下端)は切削Zとパス設定から以下のように決まります。
ZStart > ZEnd(通常の下向き切削)のとき:
AprZ = (切削Zレイヤー位置) + Zステップ + Zアプローチ加算
| ステップ | 切削Z | AprZ | 意味 |
|---|---|---|---|
| 1段目 | ZStart | ZStart + ZStep + ZApr | ワーク面の1ステップ分上+ZApr |
| 2段目 | ZStart − ZStep | ZStart + ZApr | ワーク面直上+ZApr |
| 3段目 | ZStart − 2×ZStep | ZStart − ZStep + ZApr | 1段目切削Z直上+ZApr |
| n段目 | ZStart − (n−1)×ZStep | ZStart − (n−2)×ZStep + ZApr | … |
ステップが深くなるにつれ AprZの位置 も低くなりますが、アプローチ送り距離は常に ZStep + ZApr で一定です。
8.4.6.6 各パラメータの設定指針
| パラメータ | 典型的な設定指針 |
|---|---|
| ZOuterRapid | クランプや治具など加工物周辺の最大突出物よりも十分高く設定する。ツールパス間のXY移動はこの高さで行われる |
| ZInnerRapid | ZStart + ZStep + ZApr よりも高く設定する必要がある。加工内でのZステップ間退避に使われるため、ZOuterRapid より低く |
| ZApr | APZ(アプローチ送り)の上端余裕。工具が切削面に当たらない程度の余裕を持たせる(目安:3〜15mm) |
| ZStart | 加工を開始するZオフセット。形状面の少し上(正値)から切り込みを始めたい場合はその量を設定する。0の場合は形状面がそのまま最初の切削Z |
| ZStep | 1段あたりの切り込み量。0を設定すると ZEnd まで1回で降下する(荒加工非対応の場合など) |
| ZEnd | 最終切削Zオフセット。目標深さを指定する(通常は0以下の負値) |
設定の例:
ワーク面(Z=0)から5mm深さを1mmずつ切り込む場合:
Zオフセット開始 = 1.0 <ワーク面より1mm上から最初の切削
Zステップ = 1.0 <1mmずつ掘り下げ
Zオフセット終了 = -5.0 <5mm深さで終了
Zアプローチ加算 = 2.0 <アプローチは切削Zより ZStep+ZApr = 3mm 上から
パス内のZ座標 = 30.0 <ZStart + ZStep + ZApr = 4mm より高く設定
パス間のZ座標 = 100.0 <次のパス種別に移動する事を考慮し、素材や治具を考えた安全高さ
8.4.6.7 ZStartCode / ZEndCode との対応(オプション)
Path.ZStartCode と Path.ZEndCode はそれぞれ各Zレイヤー(RPZ進入の直前・RPZ退避の直後)に挿入されます。「ポストプロセス」の章の「出力順序」も参照してください。
ZStartCode ← ここに出力(RPZ進入の直前)
RPZ(G00) → APZ(G01) → CUT(G01) → APZ(G01) → RPZ(G00)
ZEndCode ← ここに出力(RPZ退避の直後)
8.4.7 パス全体タブ
各コードフィールドの詳細は「ポストプロセス」の章を参照してください。
| 画面項目 | 対応するコード | 出力タイミング |
|---|---|---|
| 開始コード | Path.StartCode | ツールパス毎・Zレイヤー全体の前(連続同一パス省略あり) |
| 終了コード | Path.EndCode | ツールパス毎・Zレイヤー全体の後(連続同一パス省略あり) |
| Z開始コード | Path.ZStartCode | (オプション)Zレイヤー毎の前 |
| Z終了コード | Path.ZEndCode | (オプション)Zレイヤー毎の後 |
| 図形開始コード | Path.PathStartCode | (オプション)最終図形開始時 |
| 図形終了コード | Path.PathEndCode | (オプション)最終図形終了 |
8.4.7.1 連続同一パス時 開始/終了コード省略(OmitCodeOnSamePath)
ONのとき、同じ名前のパス設定が連続する場合に開始コードと終了コードをスキップします。工具設定の「連続同一ツール時
開始/停止コード省略(OmitCodeOnSameTool)」と同じ仕組みを
Path.StartCode / Path.EndCode
に適用したものです。
| 対象コード | 省略条件 |
|---|---|
| 開始コード(StartCode)省略 | 直前のツールパスのパス名 == 自分のパス名 かつ 自分の OmitCodeOnSamePath が ON |
| 終了コード(EndCode)省略 | 直後のツールパスのパス名 == 自分のパス名 かつ 自分の OmitCodeOnSamePath が ON |
パス名の比較は文字列の完全一致です。省略するかどうかは自身の OmitCodeOnSamePath が基準です(隣接するツールパスの設定は参照しません)。同じパス設定を連続使用する複数ツールパスで、ワーク座標系の再確認や安全退避移動などを重複して出力したくない場合に使います。
| 画面項目 | 説明 |
|---|---|
| ツールパス精度 (mm) |
曲線をポリラインに変換するときの許容誤差 |
| 高速移動速度 (mm/min) |
G00 代わりに G01 で高速移動する場合の速度。0 の場合は G00 を使用。PVList 逆順戻り時の速度にも使用される |
| 径補正 位置A 係数 (%) |
G41/G42(工具径補正)を立ち上げるときの「位置A」までの距離を、導入半径に対する割合で指定します。 位置A = 加工開始位置 + 補正方向(進行方向の垂直) × (係数 ÷ 100 × 導入半径) 工具が補正をかけながら始点に進入する際の助走距離に相当します。主軸可変時の円弧導入・円弧退避でも使います(後述)。 |
9 主軸方向固定(3軸機)加工のピックアップ解説
主軸固定の3軸加工で役に立つ設定を解説します。
9.1 曲線中心加工
曲線に工具の中心が来るように加工します。
半月ドリルなどで、文字を入れるのに便利です。
このコマンドは他のコマンドと異なり、方向を変更しないので、1度に複数の曲線が指定できます。
そのため、方向を指定したい場合、あらかじめ進行方向はRhinocerosのDirコマンドで調整しておきます。
1つの直線に対し、Z方向に徐々に降りていく指定(Zステップ)は可能ですが、R方向の指定は出来ません。
9.1.1 曲面上の加工と注意事項
曲線は3D曲線(NURBS)でもかまいませんが、平面でない部分は直線に分解されます。
曲線が作業平面Zに並行な平面曲線(NURBS)の場合、(適切なところに)円弧分解を使います。
曲面上の立体曲線は平面の曲線をProjectコマンドで作ることができます
(user_manual_demo1.3dmにデータ有)
9.2 曲線工具径オフセット加工
3軸での溝入れなどに便利な加工です。主軸方向が固定されて溝加工をおこないます。
加工点・加工方向ベクトルに対し工具半径を勘案したオフセットを行います。
・平面曲線だけでなく、3D曲線に対しても工具の側面の指定した位置で曲線に追従します。
なお、主軸を可変にしたい場合は、サーフェス法線加工、法線指定加工などを指定します。
左部は平面NURBS曲線、右は曲面上の立体曲線(user_manual_demo1.3dmにデータ有)
9.2.1 サイド加工の特徴的設定
| 設定項目 | 説明 |
|---|---|
| Rオフセット開始(ROffsetStart) | 最初の軌道の工具半径への追加オフセット量。0=工具半径のみ |
| Rオフセットステップ(ROffsetStep) | オフセット増分(正値)。複数軌道を段階的に生成する場合に使用。0=拡大なし |
| Rオフセット終了(ROffsetEnd) | 最終軌道のオフセット量 |
| アップカット/G41**** ダウンカット/G42は 画面で指定 |
画面で加工線のどちら側にオフセットするかを指定します。 |
9.2.2 Z方向、R方向からの設定例
厚板などの切り出しの外形加工は、Z方向からの追い込み、R方向からの追い込みが可能です。
両方指定した場合はRオフセットを最大でZ方向掘り下げ加工➡Zの最終点でR方向の縮小加工の順になります。
下図はZ方向➡R方向で仕上げています。左部は平面NURBS曲線、右は曲面上の立体曲線
9.3 ポケット加工
ポケット加工は領域内を加工します。Z方向下に複数回掘り下げていく事が出来ます。
(user_manual_demo1.3dmにデータ有)
ポケット加工に特徴的なオプションがあります。
9.3.1 可能なら底面接続
ポケット加工では、ポケットの領域に沿って、何重にも周回曲線が形成されます。チェックすると上昇せずに可能な場合に曲線を底面で移動接続するものです。チェックを外すとZ方向に一旦上昇して再度アプローチします。
9.3.2 アップカット(壁)
チェックをすると壁に向けてアップカットで加工します。(チェックを外すとダウンカットです)
9.3.3 アプローチオプション(ランプ角度指定)
工具の降下方式を選択できます。一部のエンドミルでは垂直降下ができない、あるいは、垂直降下だと工具の負荷が高い、折れやすいなどのケースがあります。この場合、ランプ降下が有効です。
0を指定するとランプ加工をおこなわず直線的に降下します。
9.3.4 アプローチの下降方式の速度の設定
| 設定 | 種別 | 役割 |
|---|---|---|
| 工具加工速度(Z)(FeedZ) | 工具 | 直線フィード降下(APZ)の速度。0 のとき Feed にフォールバック |
| 工具加工速度(XY)(Feed) | 工具 | 切削速度 兼 ランプ降下速度 |
9.3.5 直線フィード降下の場合
既定の動作です。各Zレイヤーの加工開始点(切削Z)の真上から、工具加工速度(Z)(ToolData.FeedZ)でG01降下します。
加工開始点 + ZApr
↓ G01(工具加工速度(Z))
加工開始点(切削Z)
FeedZ が 0 の場合は 工具加工速度(XY)(Feed)にフォールバックします。
9.3.6 ランプ加工の場合
ランプ加工を選択すると、CmdPocket が各Zレイヤーの加工曲線の前に降下経路(ランプカーブ)を自動生成します。必要な水平長(ランプ長)は角度と降下量を基準に計算しています。
降下量 ZDrop = ZStep + ZApr
ランプ長 L = ZDrop / tan(ApprRampDeg)
ランプの形状は加工曲線が閉曲線か開曲線かで異なります。
元曲線の円弧区間は円弧ヘリカル補間(G02/G03 + Z降下)、直線区間は3D直線(G01 + Z降下)として出力されます。ランプ中は、XYは輪郭形状を追従し、工具・素材への衝撃を少なくし、工具加工速度(XY)(Feed)を使用します。
(ノート)ApprRampDeg が 0以下 または 90以上 のときは、ランプを付けず「直線フィード降下」と同じ動作になります。
ランプの向きは加工曲線が閉曲線か開曲線かで異なります。
9.3.6.1 閉曲線 ― 輪郭ヘリカルランプ
閉じたポケット輪郭の **シーム手前の長さ L を、加工と同じ進行方向にたどりながら降下**し、シーム(=加工開始点)で切削Zに着地します。ランプ角度と曲線長さによっては、複数回周回しながら下がる動きとなることがあります。
シームの手前 L の位置(アプローチ高さ = 切削Z + ZStep + ZApr)
↓ 輪郭をたどりながら ApprRampDeg の角度でZを降下
シーム(切削Z)
→ 通常の切削(輪郭 at 切削Z)
9.3.6.2 開曲線 ― 逆ランプ
開いたパスの場合、先頭部分を 逆向きにトレースしながら降下します。
ランプ角度と曲線長さによっては、複数回往復しながら下がる動きとなることがあります。
曲線先頭から L の位置(アプローチ高さ)
↓ 逆方向に走りながら ApprRampDeg の角度でZを降下
曲線先頭(切削Z)
→ 通常の切削(順方向)
長さ不足時: L が曲線長を超える場合は、前後にジグザグ往復 しながら降下長を稼ぎ、最終的に曲線先頭(切削Z)に着地します。
9.4 ポイントドリル加工(2.5D)
加工方法(Method)に 「点ドリル(PointDrill)」 を選んだパスで使用する機能です。Rhinoビューポート上で Point(点)オブジェクト を選択してCAMコマンドを実行すると、その点を中心としてドリル加工のツールパスを生成します。
ドリルの工具径は、図形的には考慮しません。現時点では、ヘリカル降下をおこなうためのR方向設定はヘリカルの半径です。将来的には計算する予定です。CNCによってはヘリカル加工オプションが必要となります。
9.4.1 パス設定画面の項目
パス設定(「Path」タブ)に表示される以下の項目がドリル加工に関係します。
9.4.1.1 Z方向の共通設定
| 画面項目 | 設定名 | 説明 |
|---|---|---|
| Zオフセット開始 | ZStart | 加工開始の Z オフセット(通常 ≥ 0、ワーク面より上) |
| Zステップ | ZStep | 1ステップあたりの Z 降下量(0 のとき ZEnd まで1回で降下) |
| Zオフセット最終 | ZEnd | 加工終了の Z オフセット(通常 ≤ 0、目標深さ) |
| Zアプローチ加算 | ZApr | 各ステップ開始位置より上方からアプローチする距離 |
| パス間のZ座標 | ZOuterRapid | パスとパスの間の高速移動Z(退避高さ) |
| パス内のZ座標 | ZInnerRapid | ドリル加工中のステップ間退避Z |
ZStart・ZEnd の方向:ZStart > ZEnd となるようにしてください。座標値はワーク座標系のZ、加工形状の座標値に加算されます。
9.4.1.2 ヘリカルドリル固有の設定
| 画面項目 | 設定名 | 説明 |
|---|---|---|
| ヘリカルステップ周回数 | HelicalRetract Turns |
1ステップ(ZStep深さ)を何周のらせんで降下するか。ピッチ = ZStep ÷ 本値 |
| アップカット(壁) | EdgeUpcut | 円軌道の回転方向。OFF=ダウンカット(G02/時計回り)、ON=アップカット(G03/反時計回り) |
9.4.1.3 XY-R方向(ヘリカルドリルの軌道半径)
ヘリカル加工では、工具が点の周囲を円軌道で螺旋降下します。軌道半径は「開始 → 最終」まで「ステップ」ずつ拡大しながら複数周を回ることができます。
| 画面項目 | 設定名 | 説明 |
|---|---|---|
| 開始(Start) | ROffsetStart | 最初の軌道半径(工具半径への加算値)。0 = 工具中心から開始 |
| ステップ(Step) | ROffsetStep | 軌道を拡大するときの半径増分(正の値) |
| 最終(End) | ROffsetEnd | 最後の軌道半径(工具半径への加算値)。目標穴径 − 工具径 の半分が目安 |
- ROffsetEnd > 0 かつ「ドリルをR方向ヘリカル」がONのとき、ヘリカルモードが有効になります。
- ROffsetStart = 0、ROffsetStep = 0、ROffsetEnd = 目標値 の場合、半径拡大なしで1軌道のみのヘリカル降下になります。
- ROffsetStart ≥ 工具半径 の場合はエラーになります(穴の中心に削り残しが生じるため)。
9.4.2 ヘリカル加工の動作
1 軌道半径につき、以下のシーケンスを繰り返します。
[1] G00 → ZInnerRapid まで高速移動(進入)
[2] G00 → ヘリカル開始点(ZStart)まで降下
[3] G02/G03 × nQuarters ← ヘリカル降下(四半円ごとにZ降下)
[4] G00 → ZInnerRapid まで高速退避
→ ZStep ごとに [1]〜[4] を繰り返す(ペック同様に切りくず排出)
[5] 底面フルサークル: G02/G03 × 4 回(90°ずつ、Z一定)で底面仕上げ
[6] G00 → ZInnerRapid まで退避
軌道半径を ROffsetStart → ROffsetEnd まで ROffsetStep ずつ拡大しながら、上記シーケンスを全軌道分繰り返します。
9.4.2.1 ピッチの計算
| 用語 | 計算式 |
|---|---|
| 1ステップあたりのZ降下 | ZStep(または最終ステップ分の端数) |
| 1周あたりのZ降下(ピッチ) | ZStep ÷ HelicalRetractTurns |
| 1ステップで生成される四半円数 | ceil(ZStep / pitch × 4) 個 |
9.4.3 ヘリカルGコード出力仕様
9.4.3.1 ヘリカル降下部(G02/G03)
各四半円(90°)ごとに1行出力されます。Z 値は前の四半円の終端から線形に降下します。
G17 G02 X... Y... Z-2.500 I... J... F1000 ; 四半円 1/4(Z降下)
G02 X... Y... Z-5.000 I... J... ; 四半円 2/4(Z降下)
G02 X... Y... Z-7.500 I... J... ; 四半円 3/4(Z降下)
G02 X... Y... Z-10.000 I... J... ; 四半円 4/4(ZEnd到達)
- 平面: G17(XY平面)固定
- 回転方向: EdgeUpcut=OFF → G02(時計回り)、EdgeUpcut=ON → G03(反時計回り)
- 中心オフセット: I, J(点の中心からの相対距離)
- Z変化: 各行で異なる Z 値を出力(ヘリカル補間)
9.4.3.2 底面フルサークル部(G02/G03)
最終深さ到達後、Z 一定で 4 行の四半円(360°)を出力します。
G02 X... Y... Z-10.000 I... J... F1000 ; 底面 1/4
G02 X... Y... Z-10.000 I... J... ; 底面 2/4
G02 X... Y... Z-10.000 I... J... ; 底面 3/4
G02 X... Y... Z-10.000 I... J... ; 底面 4/4
9.4.3.3 ペック降下(ヘリカルOFF)
「ドリルをR方向ヘリカル」がOFFの場合、Z方向の直線移動(G00/G01)のみを出力します。円弧コードは出力されません。
10 主軸方向可変(4軸以上)加工のピックアップ解説
パス設定UIの全体の解説がありますが、主軸方向可変の加工で役に立つ設定を解説します。
作成されたツールパスは、主軸方向が分かるよう、PVListとして画面に表示されます。
10.1 主軸方向可変でのZ方向、Z層の切削
Z層の設定と考え方は、主軸固定での加工と似ていますが、主軸方向が可変になることで、主軸方向=法線方向=Zの方向、が加工方法・場所によって変化します。Zレイヤー(Z方向の繰り返し切削)は、回転系加工(AxisSrfNormal / AxisSrfUV / AxisRefProject / AxisXYNormal)に対して、パス設定の ZStart / ZStep / ZEnd / ZApr を使い、法線方向に複数深さで繰り返す多段切削をおこないます。
| Z開始(ZStart) | 主軸方向オフセットの開始値 |
|---|---|
| Zステップ(ZStep) | 主軸方向の1ステップ降下量 |
| Z終了(ZEnd) | 主軸方向オフセットの終了値 |
| Zアプローチ(ZApr) | 切削開始位置への主軸アプローチ/退避距離 |
つまり、PVList系では Z の変化はCADのZ 軸方向ではなく、各点の工具軸方向(ToolAxis)へのオフセット加工の繰り返しとして適用されます。
各 PV3 の加工点 = 元の点 + ZAtStep(iZ) × ToolAxis
これにより、曲面表面から加工のZ主軸方向に指定距離を上下した位置で繰り返し加工をします。
10.1.1 複数曲線の場合 ― 曲線間コネクタ
複数の曲線を1回のコマンド実行で選択した場合、全曲線が1つのツールパスにまとめられます。
同一Zレイヤー内の曲線間には、自動的にコネクタ経路が挿入されます。
前の曲線の終点から ZInnerRapid × Nv_last 離れた退避点
→ RapidFeed(G01)または G00 で移動
次の曲線の先点から ZInnerRapid × Nv_first 離れたアプローチ点
→ 次の曲線の切削へ
| パラメータ | 役割 |
|---|---|
| ZInnerRapid | 退避・アプローチ点の法線方向リフト量 |
| 高速移動速度(RapidFeed) | コネクタ移動速度(0=G00) |
10.1.2 開曲線の逆順戻り(単一曲線のみ)
「PVList逆順戻り(IsPVLineReverseReturn)」をONにすると、開曲線の単一曲線パスで
Zレイヤー間に逆順経路を自動生成します。
逆順戻り経路は、Zレイヤーの深さに関わらず常に元の曲線を
ToolAxis 方向に ZInnerRapid
だけシフトした固定位置を通ります。(注:将来、独立した変数を設定を検討しています)
どのZレイヤーでも逆戻りパスは同じ経路を通るため、Zレイヤーが深くなっても戻り経路の空間位置は変わりません。
注意: この機能は単一曲線のみ有効です。
| パラメータ | 役割 |
|---|---|
| ZInnerRapid | 逆順戻り時の ToolAxis 方向追加リフト量 |
| 高速移動速度(RapidFeed) | 逆順戻りの速度(0=G00) |
10.1.3 Rhino ビューポートへの表示
Zレイヤー展開されたPVLineはRhinoビューポート上に描画されます。
| 経路の種別 | 描画レイヤー |
|---|---|
| 前方切削 PVLine(各Zレイヤー) | SMP_TP_CALC(通常色) |
| 逆順戻り / 曲線間コネクタ | SMP_TP_CALC_RET(別色) |
10.1.4 設定例
曲面を 2mm 上から 0mm まで 1mm ずつ 3段で加工する場合:
ZStart = 2.0 (最初のレイヤー: 表面から 2mm 上)
ZStep = 1.0 (1mm ずつ降下)
ZEnd = 0.0 (最終レイヤー: 表面)
ZApr = 0.5 (各レイヤーのアプローチ距離: 0.5mm)
ZInnerRapid = 1.0 (曲線間/逆順戻りのリフト量: 1mm)
IsPVLineReverseReturn = ON (単一曲線で逆順戻りを使用)
RapidFeed = 3000 (逆順戻り/コネクタの速度)
生成されるZレイヤー(単一開曲線の場合):
ZStartCode
Layer0(ToolAxis×2.0 の切削)
ZEndCode
逆順戻り(ToolAxis×1.0 の固定位置を逆走)
ZStartCode
Layer1(ToolAxis×1.0 の切削)
ZEndCode
逆順戻り(ToolAxis×1.0 の固定位置を逆走)
ZStartCode
Layer2(ToolAxis×0.0 の切削、表面)
ZEndCode
10.1.5 パラメータの加工方法間差異
加工方法によって意味が異なるものをまとめます。
| パラメータ | 工具軸固定 | 工具軸可変(PVList方式) |
|---|---|---|
| ZStart / ZStep / ZEnd |
加工形状の元Z位置に加算するオフセット値(加工座標系Z軸方向) | 各 PV3 点の法線方向(ToolAxis)への平行移動量 |
| ZApr | APZ(垂直送り)の移動距離。AprZ = 切削Z + ZStep + ZApr | 各Zレイヤー始点/終点から ToolAxis 方向にアプローチ/退避する距離 |
| ZInnerRapid | Zステップ間退避の絶対Z位置(局所座標系) | 曲線間コネクタ経由時の ToolAxis 方向追加リフト量(相対量) |
| RapidFeed | G00 の代わりに G01 で高速移動する場合の速度(0=G00使用) | 逆順戻り経路・曲線間コネクタの移動速度(0=G00) |
| ZStartCode / ZEndCode (Option) |
各Zレイヤー(各切削深さ)の前後 | 各Zレイヤーグループの先頭/末尾曲線の前後(曲線間には挿入されない) |
10.2 工具軸可変時の工具退避動作
工具軸可変の加工でGコードを出力するとき、パスの先頭と末尾に自動でリトラクト(工具退避)動作を挿入する仕組みがあります。
10.2.1 リトラクトの概要
| タイミング | 動作 |
|---|---|
| パス先頭(アプローチ) | Z=ZOuterRapid の安全高さから切削点の直上まで高速移動→切削点へ送り |
| パス末尾(退避) | 最後の切削点から Z=ZOuterRapid へ高速移動 |
| パス途中 | 回転不連続(特異点)検出時に Z=ZOuterRapid へ一時退避し再アプローチ |
複数のPVLineが連続する場合(逆順戻り経路・曲線間コネクタ含む)、同一Zレイヤー内のPVLine 間では退避を挿入せず直接移動します。Zレイヤーの境界(コネクタなしの層切り替え)では退避が挿入されます。
10.2.2 リトラクト高さ
退避先のZ座標はパス設定の 「パス外側高速移動Z」(ZOuterRapid) で指定します。
| 設定場所 | 項目名 | 説明 |
|---|---|---|
| Path設定 | ZOuterRapid | リトラクト先の絶対Z座標(安全高さ)。ポストコードキーワード <PATH_ZM0> でも参照可能 |
ZOuterRapid はリトラクト高さとして使用されます。ZStartCode/ZEndCode で独自の退避コードを記述する場合は、<PATH_ZM0> キーワードで同じ値を参照できます。
10.2.3 アプローチオフセット
切削点の直上で一時停止してから送りに切り替えるための、Z方向の追加距離を機械設定で指定します。
| 設定場所 | 項目名 | 説明 |
|---|---|---|
| Machine設定 > リトラクト |
アプローチ追加量 (ApproachZAddToRecover) | 切削点の Z 座標に加算して「直上停止点」を決める距離 (mm)。既定 20 mm |
アプローチ時の動作は次のとおりです。
[1] Z=ZOuterRapid へ G00(安全高さへ移動)
[2] Z = 切削点Z + ApproachZAddToRecover へ G00(切削点直上へ高速移動)
[3] 切削点Z へ G01(送り速度で切り込み)
10.2.4 自動リトラクト検出
回転軸の大きな不連続を検出したとき、パス途中に自動でリトラクトを挿入します。
| 設定場所 | 項目名 | 説明 |
|---|---|---|
| Machine設定 > リトラクト |
検出角度 (DetectDeg) |
この角度(度)を超えるC軸不連続があった場合にリトラクトを挿入。既定 10° |
10.3 主軸可変時の円弧導入・円弧退避
主軸可変時は、既定では先頭PV点から切削姿勢に入り、末尾PV点でそのまま抜けます。なので、導入や退避を考慮したPV点にすることができます。ただ、計算可能な円弧として、工具を切削パスへ滑らかに導入・退避を付加することもできます。
10.3.1 設定
円弧導入/退避 半径(mm)と 角度(度)に入力します。
半径=0 または 角度=0 のとき円弧を付けません。既定は両方0=リードなし。
10.3.2 円弧の基準となる工具側ベクトル
円弧リードはPVList の各点(PV点)の、Tangent と ToolSide が張る平面(=加工面に接する平面)の中に生成します。
円弧の向き(バルジ方向)
円弧は端点で切削パスにG1接線連続接続します。導入円弧は先頭PV点で Tangent 方向にちょうど滑り込み、退避円弧は末尾PV点から Tangent 方向へ滑り出します。
10.3.3 円弧外端から中心へ向かう直線(位置A)
円弧導入/退避の外端から、円弧の接線に垂直に、円の中心へ向かってまっすぐ伸びる直線(位置A)を追加できます。2.5Dサイド加工の径補正「位置A」と同じ考え方で、円弧の外端に90°の角を作って外側へ助走/抜けを付けます。
- 設定: パス設定の 径補正 位置A
係数(%) を流用します。直線の長さ = 係数 ÷ 100 ×
円弧導入/退避 半径。
- 係数=100 のとき位置Aは円弧の中心に一致します。例: 係数=100・半径=5mm なら 5mm の直線(外端→中心)。係数=0 のときは直線を付けません(円弧のみ)。
- 向きは円弧の接線に垂直(=半径方向)で、円の中心側(工具側ベクトル ToolSide の向き)です。接線に沿った滑らかな接続ではありません。
- 円弧が無い(半径0 または 角度0)ときは直線も付きません。
- 主軸可変時は工具径補正(G41/G42)は行いません。この直線は純粋に形状として付く進入/退避で、円弧外端の工具軸・工具位置をそのまま引き継ぎます。
10.3.4 円弧のサンプリング精度
円弧は指定した変換精度の位置トレランス・角度トレランス・最大セグメント長のうち最も細かい指標に従って円弧サンプリングされし、PV列に展開されます。各トレランスが0のときは Rhino ドキュメントの既定許容差(位置=絶対許容差、角度=角度許容差)にフォールバックします。詳細はコード隣接の「ツールパスの精度仕様書.md」を参照。
10.4 サーフェス法線加工(AxisSrfNormal)
曲面に対して、垂直に工具をコントロールする3D曲線加工をおこなうときに利用します。
AxisSrfNormal(曲線サーフェス法線軸)は、選択したサーフェス(またはポリサーフェス)の法線方向に工具軸を向けながら、指定した曲線をなぞる4軸以上ツールパスを生成します。
工具先端は曲線に沿って移動し、各点での工具軸方向はサーフェス上の最近接点の法線から決まります。
RhinocerosのProjectもしくは、Pullコマンドで、2Dの曲線を3D曲面上に投影ができます。
コマンドでは、その曲線と曲面を指定することになります。
10.4.1 主軸ベクトル矯正限界オプション
4軸機などでは、機械が工具軸を向ける動作ができない場合があります。
この時、生成時にエラーとする方法と、工具軸をある範囲であれば法線での計算を可能な方向に修正して、動作・加工できるツールパスを生成することが可能です。「主軸ベクトル矯正限界」パラメータを使用します。
10.4.2 PVList逆順上戻りオプション
戻る時に、PVList逆順上戻りを指定すると、加工のために通った線の上を逆に通って戻ってから、次の加工曲線に移動します。Z方向を上昇してもリトラクトの回転で干渉するなど、特別な場合にのみ使用します。
10.4.3 Gコード出力順序(AxisSrfNormal)
AxisSrfNormal のGコード出力は以下の順序で行われます(「ポストプロセス」の章を参照)。
[機械開始コード]
[工具開始コード]
[ワーク座標系コード(G54System)]
[パス開始コード(StartCode)]
[Z開始コード(ZStartCode)] ← Zレイヤー0の先頭(第1曲線の前)
← 第1曲線 Layer0 の4/5軸Gコード
← [曲線間コネクタ(G00/RapidFeed)] ← 複数曲線の場合のみ
← 第2曲線 Layer0 の4/5軸Gコード
← …
[Z終了コード(ZEndCode)] ← Zレイヤー0の末尾(最終曲線の後)
[Z開始コード(ZStartCode)] ← Zレイヤー1の先頭
← 第1曲線 Layer1 …
[Z終了コード(ZEndCode)]
← ZStart → ZEnd まで ZStep 刻みで繰り返す
[パス終了コード(EndCode)]
[工具停止コード]
[機械終了コード]
複数曲線選択時の動作: 選択した全曲線が
1つのツールパス(NamedToolPathData)
にまとめられます。Zレイヤーは曲線優先ではなくレイヤー優先(全曲線の
Layer0 → 全曲線の Layer1 → …)の順で出力されます。
曲線間には自動コネクタが挿入され、前の曲線終端から次の曲線先端への高速移動(G00/RapidFeed)が生成されます。
10.4.4 BF6Axバフ機専用機能
10.4.4.1 方向メソッドの選択
機械設定のMachineAxisが BF6Ax のときのみ、バフ工具の接触方向を次の4種類から選択します。それ以外の機械構成(XYZ、XYZA、XYZB、XYZACなど)ではこの選択は表示されず、CurveTangentが自動適用されます。
| 選択肢 | 説明 |
|---|---|
| CurveTangent(既定) | 各点での曲線接線方向にバフを向ける。 付加する回転角を追加入力。 |
| KeepFirstTangent | 最初の点の接線方向を維持。方向ベクトルを追加入力 |
| KeepDirection | 指定した固定方向を維持。方向ベクトルを追加入力 |
| DriftRotation | 始点から終点にかけて方向を徐々に回転。 方向ベクトルとドリフト回転角を追加入力 |
10.4.4.2 BF6Axバフ機専用 追加入力
方向メソッドに応じて、以下の追加入力が求められます。
CurveTangent
| プロンプト | 説明 | 既定値 |
|---|---|---|
| 付加する回転角を度で指定 | 曲線接線方向からさらに回転させる角度(度)。0 で接線方向そのまま | 0° |
KeepFirstTangent / KeepDirection / DriftRotation
| プロンプト | 説明 |
|---|---|
| Specify vector by picking two points or entering x,y,z | バフが向く基準方向ベクトル。ビューポート上で2点クリックするか、0,0,1 のようにx,y,z形式で入力 |
DriftRotation の場合さらに追加されます。
| プロンプト | 説明 | 既定値 |
|---|---|---|
| バフ・ドリフト回転角度を度で指定 | 始点から終点にかけてバフ方向を回転させる総角度 | 90° |
BF6Axバフ機専用 すべてのメソッドで共通
| プロンプト | 説明 | 既定値 |
|---|---|---|
| バフ・開始R接触角を度で指定 | 経路の始点でのバフのR方向接触角(度) | 0° |
| バフ・終了R接触角を度で指定 | 経路の終点でのバフのR方向接触角(度)。開始と異なる値にすると、始点→終点で線形補間して変化させる | 0° |
10.5 サーフェスUV加工(AxisSrfUV)
10.5.1 概要
AxisSrfUV(サーフェスUV加工)は、非トリムサーフェス(矩形4辺サーフェス) のUVエッジに沿って工具を移動させ、そのエッジに垂直なUV方向を工具軸とするツールパスを生成します。
工具の加工経路はサーフェスの境界エッジ(4辺のいずれか) です。工具軸はそのエッジと直交するUV方向(U方向またはV方向)に設定されます。
NURBS面によって自由な位置と自由な方向を定義できます。
AxisSrfUVも、AxisSrfNormal同様、4軸機に関しては方向を(一定範囲であれば)機構にあわせて矯正する機能があります。(主軸ベクトル矯正限界オプション)
もし工具軸がUVに沿っていない、と思われる場合は、設定している機械の機構をご確認下さい。
10.5.2 動作の流れ
- パス設定で加工方法に「サーフェスUV加工(AxisSrfUV)」を使用します。
- Rhinoコマンド SmpCreatePath を実行します。プラグインが自動的に SmpAxisSrfUV を呼び出します。
- ビューポートで図形の指定操作を行います。
- 生成されたPVListがCAMデータに追加されます。
10.5.3 対話操作(ビューポート)
10.5.3.1 ① サーフェスの選択
法線となるサーフェス、ポリサーフェスを選択
工具軸方向と加工経路の基準となるサーフェスを選択します。非トリムサーフェス(4辺の矩形サーフェス) である必要があります。トリムされたサーフェスや複雑なポリサーフェスでは正しく動作しません。
10.5.3.2 ② エッジの選択
加工するエッジを選択してください
サーフェスの4つの境界エッジのいずれかを選択します。選択したエッジが工具の加工経路になります。エッジの種類によって工具軸方向が以下のように決まります。
| 選択したエッジ | 工具軸方向 |
|---|---|
| V0エッジ(V方向最小端のU方向辺) | V方向(V0→V1) |
| V1エッジ(V方向最大端のU方向辺) | V方向(V1→V0、反転) |
| U0エッジ(U方向最小端のV方向辺) | U方向(U0→U1) |
| U1エッジ(U方向最大端のV方向辺) | U方向(U1→U0、反転) |
10.6 サーフェス投影参照法線加工(AxisRefProject)
AxisRefProject(サーフェス投影参照法線加工)は、参照サーフェスのUV方向を工具軸として、サーフェスとは別に指定した任意の加工曲線を軸加工するコマンドです。
AxisSrfUV との違いは、加工経路がサーフェスのエッジに縛られない点です。
| AxisSrfUV | AxisRefProject | |
|---|---|---|
| 加工経路 | 参照サーフェスの境界エッジ | 別途指定した任意の2D/3D曲線 |
| 工具軸 | エッジに垂直なUV方向 | 加工点から参照エッジへの最近傍点のUV方向 |
加工点ごとの工具軸方向は「加工曲線上の点から最近傍の参照エッジ上の点を求め、その点でのサーフェスUV方向」から計算されます。サーフェス形状のUV方向を工具軸として利用しつつ、加工経路はフリーに設計したい場合に有効です。
10.6.1 動作の流れ
- パス設定で加工方法に「投影参照法線加工(AxisRefProject)」を選択し、保存します。
- Rhinoコマンド SmpCreatePath を実行します。プラグインが自動的に SmpAxisRefProject を呼び出します。
- ビューポートで図形の指定を行います。
- 生成されたPVListがCAMデータに追加されます。
10.6.2 対話操作(ビューポート)
10.6.2.1 ① 参照サーフェスの選択
法線となるサーフェス、ポリサーフェスを選択
工具軸方向の基準となるサーフェスを選択します。AxisSrfUV と同様に非トリムサーフェスが推奨されます。
10.6.2.2 ② 参照エッジの選択
法線を指定する側のエッジを選択してください
参照サーフェスの4つの境界エッジのいずれかを選択します。このエッジが「工具軸の参照源」になります(選択したエッジに垂直なUV方向が工具軸となる)。
10.6.2.3 ③ 加工曲線の選択
加工曲線(2D/3D)を選択
実際の工具経路となる曲線を選択します。参照サーフェス上にある必要はなく、空間内の任意の2D/3D曲線を指定できます。
10.7 XY座標補間・法線加工(AxisXYNormal)
10.7.1 概要
AxisXYNormal(XY座標補間法線加工)は、Rhino上に配置した法線ベクトル線分の方向をXまたはY座標に基づいて補間し、工具軸とする加工です。
サーフェス法線やUVでは表現に手間がかかる4軸加工機の工具軸の変化を、FrontビューもしくはRightビューから簡単に指定ができます。
例えば「左のこの辺では工具をA軸で5°傾け、ここから15°傾けたい」という場合、Rightビューでその2方向を表す直線を配置するだけで、中間位置の工具軸を自動補間します。
4軸加工機のA軸であればRightビュー、B軸であれば、Frontビューで指定が出来るように配置します。
10.7.2 XY指示による工具軸の補間の仕組み
| 項目 | 動作 |
|---|---|
| 補間基準軸 | 法線ベクトル起点のX/Y方向の広がりが大きい方を自動選択 |
| 補間方法 | 基準軸値でソート後、各加工点でリニア補間 |
| 範囲外の点 | 最端ベクトルの方向を維持(外挿なし) |
| 法線ベクトルの向き | Z成分が負の場合は自動反転(常にZ上方を向くよう調整) |
10.7.3 準備:法線ベクトル線分の作成
法線ベクトルはRhinoの直線(Line)オブジェクトで表現します。
- Rhinoの Line コマンドなどで直線を作成します。
- 直線の始点が「この法線が有効なXY位置」、方向が「工具軸方向」になります。
- 2本以上の直線を用意します(多いほど補間精度が上がります)。
- 関連する直線をグループ化しておくと、選択時にまとめて選択できます(GroupSelect対応)。
10.7.4 対話操作(ビューポート)
10.7.4.1 加工曲線の選択
加工曲線を選択(複数可)
加工経路となる曲線を1本以上選択します。複数選択した場合、曲線ごとに1つのPVLineが生成されます。
10.7.4.2 法線ベクトル線分の選択
法線ベクトル(直線)を選択(2本以上またはグループ)
工具軸方向を表す直線を2本以上選択します。グループ化されている場合はグループ全体をまとめて選択できます。直線でない曲線が混在している場合は無視されます(コマンドラインにスキップ数が表示されます)。
注意: 有効な直線が2本未満の場合はエラーになります。
10.8 面法線ドリル加工(AxisPointDrill)
10.8.1 概要
AxisPointDrill(XY面法線ドリル加工)は、Rhinocerosで描画された「複数の点」に対して、面(曲面、傾斜面など)に垂直に工具軸をあわせてドリル加工するものです。
複数の点は指定した工具で1つのツールパスとして、一括加工されます。
別の工具番号を指定したい場合は別のツールパスとして別の工具を指定して生成します。
なお、点は面上に配置してください(Projectコマンドなどで簡単に配置できます)。
もし面上に無い場合は、点は、もっとも近い「面上の点」に修正されて計算されます。
曲面上の多数の穴(例えばスワロフスキーの埋め込み用の穴)に利用できます。
10.8.2 パス設定画面の項目
パス設定(「Path」タブ)に表示される以下の項目が面法線ドリル加工に関係します。
10.8.2.1 主軸ベクトル矯正限界オプション
4軸機などでは、機械が工具軸を向ける動作ができない場合があります。
この時、生成時にエラーとする方法と、工具軸をある範囲であれば法線での計算を可能な方向に修正して、動作・加工できるツールパスを生成することが可能です。「主軸ベクトル矯正限界」パラメータを使用します。
10.8.2.2 Z方向の共通設定
| 画面項目 | 設定名 | 説明 |
|---|---|---|
| Zオフセット開始 | ZStart | 加工開始の Z オフセット(通常 ≥ 0、ワーク面より上) |
| Zステップ | ZStep | 1ステップあたりの Z 降下量(0 のとき ZEnd まで1回で降下) |
| Zオフセット最終 | ZEnd | 加工終了の Z オフセット(通常 ≤ 0、目標深さ) |
| Zアプローチ加算 | ZApr | 各ステップ開始位置より上方からアプローチする距離 |
| パス間のZ座標 | ZOuterRapid | パスとパスの間の高速移動Z(退避高さ) |
| パス内のZ座標 | ZInnerRapid | ドリル加工中のステップ間退避Z |
11 作業平面(CAD)とワーク座標(CNC)
11.1 CNCのワーク座標系とは
CNCの機能で機械上のワークを基準とする座標で指示をおこなえるようにするものです。一般的なNCフライスやNCマシニングセンタでは加工原点を現場で好きな場所・セットした位置にするために利用されます。CNCはG54等のワーク座標系の指令をおこなうと、対応する軸(XYZABC)の値(オフセット値)を命令後の指令に加えます。
11.1.1 SMPでのワーク座標系の指定方法
加工パス毎にCNCワーク座標を指定できます。
加工パスの設定画面の中の、[加工種類]タブの中のCNC座標/CAD平面で設定します。
ワーク座標のみ指定した場合、
ポストで<PATH_G54>で指定した位置に加工のワーク座標系が入ります。
CAD側で作業者が自由にワーク座標系を設定する使い方です。
後で説明する「CADオフセット平面」や「割り出し加工平面」を指定しなければ、CADのワールド座標がそのままCNCでの座標指令値としてデータを作成します。
G54を設定した場合、G54はCNC側で自由に設定・調整できます。
加工の原点がどこにでも設定ができるということは、現場での設定のちょっとしたミス(符号、桁など)によっては加工範囲を超えたり、工具が機械と干渉する可能性があります。いきなり動作させずに原点や位置を確認する必要があります。
11.1.2 SMPでのワーク座標系のシミュレーション
SMPのシミュレーションにおいては、ワールド座標は機械を3Dモデルで定義する「標準姿勢」であり、そこからのワールド座標を元にアニメーションされます。また、たとえば、Gコードでワーク座標G59を指定し、シミュレーションでワーク座標を標準姿勢からのずれとしてOFS(x,y,z,a,b,c,u,v,w)を定義すると、指令座標にOFS(x,y,z, ...w)を加えた位置で加工をおこなう動作をします。
また、「標準姿勢」は、原点からSTF(x,y,z...w)移動した位置と仮定して今後の説明をおこないます。
シミュレーションをおこなう機械と、実機械のパラメータを一致させておくと、XYの動作範囲や、Zの高さ等を検証することができます。詳しくはSMP SIMマニュアルを参照してください。
11.2 Rhinoの作業平面を用いた設定
作業平面を使うと、CAD上の通常の座標(ワールド座標系)と異なるXYZを作図に都合がいいように自由に設定ができます。原点を移動したり、軸を回転することができます。
この作業平面をオフセット平面とすることで、ワーク座標系に設定すべき数値を出力することができます(Pofs機能)。また、この作業平面を割り出し加工の法線として指定することで、割り出し加工がおこなえます(Pidx機能)。
11.2.1 CADオフセット平面(Pofs)
作業平面をCNCの「ワーク座標系」に一致するようにSMPで指定することができます。
Rhinocerosの「名前付き作業平面」機能を利用します。
11.2.1.1 SMPでオフセット平面の対応付け
SMPでは、機械の構成にあわせてRhinocerosの名前付き「作業平面」上の座標がCNCのワーク座標系と一致するように、利用可能な全サーボ軸を使いオフセットマッピングの計算を試みます。
なお、作業平面に回転がともなわないものは常に計算可能(リミットを超えない限りは)ですが、回転が含まれると機構によっては一致させることができません。
たとえば、3軸の加工機を例にとると、G57を、ワールドに平行なT(30,20,10)を原点とする名前付き作業平面にすることができます。Gコード出力は名前付き作業平面上のXYZとして出力されます。
このとき、SMPでは、Gコードの冒頭に、コメントとして、CNC側で、G57にT(標準姿勢からPへのCNC軸オフセットベクトル)+STF(原点から標準姿勢へのCNC軸オフセットベクトル)を設定する、という対応付けが出力されます。これはオフセットG57としてCNCに設定が可能です。
加工中に回転しなければCNC側でワーク座標はCAMの指定から移動・調整させてかまいません。
加工中に回転するものは移動しないでください。
ただし、XYZA軸におけるX軸など、機構的な条件があえば移動できる軸はあります。
なお、CADオフセット平面が指定されない場合(空欄)は、ワールド座標系(全オフセット0、標準姿勢)を意味します。
11.3 割り出し加工平面(Pidx)
「主軸方向が固定されている」場合、名前付き作業平面を使い、割り出し加工平面を設定することができます。
CADオフセット平面と似ている部分があります。
CADオフセット平面は、ワーク座標系を構成する際、原点、方向をふくめて完全に一致をする必要があります。主軸が変化する加工にも利用できます。
一方で、割り出し加工平面は法線をツールに向ければ、座標は変わっても構わない場合に利用します。そのため、加工中はXYZのみで加工するケースでしか使えません。
(主軸が変化する加工を選択すると入力できなくなります。)
Pofsを指定した場合、そのオフセット平面(=シフトした座標系)でPidxが指定する平面の法線を主軸に向ける姿勢を割り出します。
Pofsを指定しなければ同様な姿勢をワールド座標系(標準姿勢)から割り出します。
11.4 加工パス種別・加工中に主軸方向が変化するかどうか
SMPのパスの指定では、加工パス種類が選べますが、下記のように、回転するかどうか(=主軸方向が固定か可変か)で、画面上の並びが左右に分かれています。
主軸方向Z固定(左側)は、回転軸を持たない機械や、回転軸を固定して(割り出しをして)加工を行います。
生成したツールパスはRhinocerosのラインやカーブになります。
主軸方向可変(右側)は、通常、同時4軸(あるいはそれ以上)の高速補間が可能で、長いGコードが実行できるCNCが必要です。
生成したツールパスの表示は主軸の変化がわかるようPVList表示になります。
基本姿勢(G54)での加工となります。ただ、機械上での調整のためにG55等を指定して出力も可能です。
また、これらは混在させて1つのGコードにすることもできます。
混在時の座標系はユーザーの入力に従いますので、機械の設定などを勘案して検証をおこなってください。
11.5 SMPの用語とCAM、CNC設定
SMPでのCAD-CNC間の「座標システム」は次の 3 つの種類をもち、変換が可能です。
| # | 座標系 | 座標が表現するもの | 利用範囲 |
| 1 | CAD上のワールド座標 WorldXY |
Rhino
図面上の標準的な座標。3dmに保存される図形は常にこの座標 SMPでは、機械の基準となるワーク座標系G54になることを想定している。 |
G54での加工 座標系を指定しない加工 多軸加工機では軸位置中心を基本回転の原点にあわせた基本姿勢(G54) |
| 2 | CADの名前付き作業平面 ローカル座標 ワーク計算座標 |
Rhinoの図形(ワールド)を剛体行列演算(原点移動・平行移動・回転)をした別の座標(ローカル座標)。 「名前」をつけて設定 パスを設定する画面で名前で選択が可能 ツールパス生成の計算に用いられる。 |
|
| 3 | CNC ワーク座標 G54-G59, G54Pxxなど |
機械側のワーク座標系の指定 ポストで指定をする。<PATH_G54> |
CNC側でG54のワーク座標オフセットテーブルに、ワーク座標を登録する。G54-G59は大抵のCNCに共通。拡張はメーカや機種によってコードと座標数が違なる。 |
<PATH_G54>をポストで設定しておくことで・Gコードの任意の位置で出力が可能です。
回転軸を持つ加工機の場合、G54はあらかじめCNCで標準姿勢に設定しておく必要があります。
また、汎用の3軸機の場合、加工範囲の中心や基準がG54の原点とするなどするとCADの作図作業と一致し、また、加工限界(リミット)も分かりやすくなります。
11.6 座標変換の流れ
ワールド座標 |
作業平面(ローカル座標) |
③ 機械・CNCの座標系 |
| `人:CADで図形作成 |
ワールド座標,または、名前付き作業平面を作成・指定して作図
|
|注意点:ワーク基準面(CADの名前付き作業平面)は、機械で加工できるものを選択する必要があります。| |SMP:パスの指定
Pofs基準面指定がない場合 =ワールド座標で処理、
回転加工はG54を仮定|SMP:パスの指定
Pofs基準面指定がある場合 =作図図形を基準面座標に変換 {WorldToLocal(Pofs)}
工具径のオフセットや領域に関する加工は基準面からみて平面となる必要がある。
|例) CNC座標に”G55”を指定し、Pofsが設定されている場合
G54からG55へのオフセット量をWorldXYとPofsを元に計算
→座標系情報を出力(CNCの設定と一致する必要あり)| |計算後のツールパスの図形生成・描画、CAD内への保存|必要時にワールド座標に変換{LocalToWorld(POfs)}|
| | `` |
|G55-G54間の変換オフセット量を計算して表示・出力。
` |
作図中のヒント
側面、斜め面などは、「作業平面を使って作図」することがあります、Rhino上は全てワールドとして記録されます。)作図に利用した作業平面には、名前を付けておくと良いでしょう。
名前を付け忘れたら、Rhinoの機能で、加工したい平面に作業平面を設定する、こともできます。
ワールドTopはG54を仮定するので、G54は設定しなくて良いです。
11.7 CAM-CNC間の座標系の対応づけ
11.7.1 パス設定画面の3つの座標
パス設定には、
・CNC加工座標系
・CADオフセット平面
・割出加工平面
の3種類があります。
11.7.2 CNC加工座標系(入力)
座標出力を、CNCの「どのワーク座標」として対応するか、をCNC加工座標系(=ワーク座標系)で指定します。これはタグ<PATH_G54>としてポストプロセッサがGコード出力時に置換します。未入力の場合はG54が自動的に指定されます。
11.7.3 CADオフセット平面(平面名選択)
CADオフセット平面はGコード出力の際、この作業平面で座標を出力します。ワールド座標(G54を仮定)とは異なる、別の座標系への座標変換をおこないます。
このCADオフセット平面を指定しない場合は、ワールド座標系(*WORLD*)となります。
このCADオフセット平面は、機械が動作できる方向に設定する必要があります。また、加工座標は機械の動作範囲にある必要があります。(オプションのシミュレーション機能で各パラメータを入力することでシミュレーション時にチェックすることは可能です。)
11.7.4 割出加工平面(平面名選択)
加工前に{A軸~C軸などの}回転軸だけ設定するようにすることで、加工面を事前に割り出した加工を行うケースでは、割出加工面を名前付き平面から指定します。
割出加工面を指定すると、SMPは図形を割出加工面のXYZで処理をおこない、ワールドに戻します。ので加工中は主軸方向が固定のXYZ加工となります。
割出加工平面を用いることで CNC加工座標系1つを複数の割り出し加工で共用できます。
割出加工平面を指定しない場合はCADオフセット平面を使い平面図形処理がおこなわれます。
(回転軸の事前割り出しは全て0になります)
なお、主軸方向が可変となる加工では、割出加工面は設定できません。
11.7.5 ワーク座標系(CNCWorkSystem)の出力ポスト
機械のどこに加工基準を置くかは、CNCのワーク座標系(G54座標系)を使い指示します。これは、Pathで設定します。
標準的な出力位置:パス開始コード `Path.StartCode` の直後、最初の Z レイヤー処理に入る前に1 回指定しますが、<PATH_G54>を指定することで、この座標系を出力します。
11.7.5.1 CNCワーク座標系の整合性の検証について
現時点では未実装となっているため、ユーザーでワーク座標と名前付き作業平面の組を同じGコードの中では維持してください。
(将来機能)出力前に [CamOutput.cs](../../SMP.Libs/CamOutput.cs) `CheckRefPlaneConsistency` が全ツールパスを走査し、平面の 1 対 1 対応を検証します。
12 作成ツールパスの管理・順序変更・統合出力
12.1 作成したツールパスの全削除
[ツールパス全消去]ボタンを押します。
確認メッセージで[はい]を選択すると削除されます。
12.2 作成したツールパスの個別削除
削除したいツールパスを選択し、
[削除]を押します。
確認メッセージで[はい]を選択すると削除されます。
12.3 作成したツールパスの順序入れ替え
順序を入れ替えたいツールパスを選択して、
[上へ][下へ]ボタンで順序を変更できます。
順序を変えると、ツールパス間の接続線と、マーカーの順序も追従して入れ替わります。
12.4 作成したツールパスの有効化・無効化
作成したツールパスはツリービューのチェックボックスで個別に有効化・無効化が可能です。
作成時はどれも有効化されています。
チェックをOFFにして無効化すると、Rhinoceros内のビューでは、マーカー以外(ツールパス)は非表示になり、マーカーにはXがつきます。
無効化したツールパスはGコード出力には含まれません。
有効化・無効化は一時的なものなので、再度チェックすると再表示されます。
13 ポストプロセス (ポストプロセッサ)
機械の構成にあわせて、特徴的な場所に機械動作のコードを埋め込むことができます。
GコードではGコードを生成する処理で、各種処理時の前後に任意のGコード文字列を挿入します。
機械(Machine)・工具(Tool)・パス(Path)の各設定画面で、それらの設定がGコードに適用される場所に設定できます。
なお、ポストプロセスはツールパス統合の最後に反映されます。
ツールパス間の接続部のRhinoceros中の描画は、直接的にG00でツールパス最後から次のツールパス先頭へ動いた場合であり、ポストプロセッサで軸動作や工具交換がある場合は描画に反映されません。ただし、この場合でも、DXオプションのシミュレーションではポストプロセッサでの移動、ツール交換動作が適切に機械の設定をすることで反映されます。
13.1 出力順序
1ツールパスの出力は以下の順序で行われます。複数のツールパスがある場合、2~7を繰り返します。
[1] Machine.StartCode ← Gコード先頭に1回のみ
[2] Tool.StartCode ← ツールパス毎(※1)
[3] Path.StartCode ← ツールパス毎(※2)
Zレイヤー繰り返し(ZStart → ZEnd を ZStep 刻み):
[4] Path.ZStartCode ← Zレイヤー毎
[4a] 加工Gコード本体
[5] Path.ZEndCode ← Zレイヤー毎
[6] Path.EndCode ← ツールパス毎(※2)
[7] Tool.StopCode ← ツールパス毎(※1)
[8] Machine.EndCode ← Gコード末尾に1回のみ
※1 連続同一工具省略: ツール設定の「連続同一ツール時 開始/停止コード省略」がONで、かつ、同じ名前のツールが連続するとき前のTool.StopCode と次のTool.StartCode をスキップします。
※2 連続同一パス省略: パス設定の「連続同一パス時 開始/終了コード省略」がONで、かつ、同じ名前のパス設定が連続するとき、前の Path.EndCode と次の Path.StartCode をスキップします。
13.2 各コードの説明
13.2.1 Machine(機械設定)
| 設定項目 | 説明 | 出力タイミング |
|---|---|---|
| 開始コード StartCode |
Gコード全体の先頭ブロック。モーダルの初期化(G21/G90など)や機械原点復帰など。 | Gコード先頭に 1回 |
| 終了コード EndCode |
Gコード全体の末尾ブロック。主軸停止・プログラム終了(M30など)。 | Gコード末尾に 1回 |
13.2.2 Tool(工具設定)
| 設定項目 | 説明 | 出力タイミング |
|---|---|---|
| 開始コード StartCode |
工具の使用開始時に出力。主軸回転開始(M03)・工具交換(Tコード/M06)など。 | ツールパス毎 連続同一工具省略あり |
| 停止コード StopCode |
工具の使用終了時に出力。主軸停止(M05)など。 | ツールパス毎 連続同一工具省略あり |
13.2.3 Path(パス設定)
| 設定項目 | 説明 | 出力タイミング |
|---|---|---|
| パス開始コード(StartCode) | 1ツールパス全体の開始時に出力。ワーク座標系選択(G54など)の再確認や安全退避移動など。 | ツールパス毎 連続同一パス省略あり |
| パス終了コード(EndCode) | 1ツールパス全体の終了時に出力。 | ツールパス毎 連続同一パス省略あり |
| Z開始コード(ZStartCode) | 各Zレイヤー切り込みの開始直前に出力。冷却剤ON(M08)など。 | Zレイヤー毎 |
| Z終了コード(ZEndCode) | 各Zレイヤー切り込みの終了直後に出力。冷却剤OFF(M09)など。 | Zレイヤー毎 |
| パス開始コード(PathStartCode) | 設定項目はありますが、現バージョンのGコード出力では未使用です。 | — |
| パス終了コード(PathEndCode) | 設定項目はありますが、現バージョンのGコード出力では未使用です。 | — |
13.2.4 置換タグ
各コードのテキスト内に以下のタグを記述すると、Gコード出力時に対応する値に置換されます。工具のコードにパスのタグを記入したり、パスのコードに工具のタグを記入することも出来ます。
コード出力は順番がありますが、タグは適切に記憶や先読みして処理されます。
13.2.4.1 工具(Tool)関連
| タグ | 置換内容 | 使用可能なコード |
|---|---|---|
| <TOOL_T> | 工具番号(ToolNo, Tコード) | Tool.StartCode / StopCode / Path.StartCode / EndCode / ZStartCode / ZEndCode |
| <TOOL_D> | 工具径補正番号(FixD, Dコード) | 同上 |
| <TOOL_H> | 工具長補正番号(FixH, Hコード) | 同上 |
| <TOOL_S> | スピンドル回転数(rpm, 整数) | 同上 |
| <TOOL_NAME> | 工具名 | 同上 |
13.2.4.2 パス(Path)関連
| キーワード | 置換内容 | 使用可能なコード |
|---|---|---|
| <PATH_G54> | ワーク座標系コード(例: G54) | Tool.StartCode / StopCode / Path.StartCode / EndCode / ZStartCode / ZEndCode |
| <PATH_ZM0> | パス外側高速移動Z座標(ZOuterRapid, mm 小数3桁) | 同上 |
| <PATH_ZM1> | パス内側高速移動Z座標(ZInnerRapid, mm 小数3桁) | 同上 |
| <PATH_NAME> | パス名 | 同上 |
13.2.4.3 機械(Machine)関連
| キーワード | 置換内容 | 使用可能なコード |
|---|---|---|
| <MACHINE_NAME> | 機械名 | 全コード |
注意: Machine.StartCode と Machine.EndCode は工具・パス情報が存在しないタイミングで出力されるため、工具・パス関連キーワード(<TOOL_*> / <PATH_*>)を記述しても空文字に置換されます。これらには <MACHINE_NAME> のみ使用してください。
13.2.4.4 置換の例
; Tool.StartCode の記述例
T<TOOL_T> M06
G43 H<TOOL_H>
M03 S<TOOL_S>
→ 出力例(ToolNo=1, FixH=1, Spin=3000 の場合):
T1 M06
G43 H1
M03 S3000
13.2.5 セミコロン(;)の改行変換
機械設定の「; を改行コードに変換」をONにすると、Gコード出力後に全コード内の ; を改行(\n)に変換してからファイルに保存します。
これにより、1行に複数コマンドをセミコロン区切りで記述し、出力時に自動的に行分割することができます。
この変換はGコード全体に一括適用されます。
セミコロンの後に日本語などGコードとして無効な文字を含む場合は、コメントとして ( ) で自動的に括られます。出力して1つになったGコードを読んで、どこで設定されたものが出力されているのか分かりますので、設定の検証に便利です。
設定: "G21; ミリ単位"
変換後:
G21
(ミリ単位)
14 SMPシステムのバージョン確認
14.1 バージョン確認コマンド
コマンドラインから、SmpVersion とタイプしてください。
Versionとして A.B.C.Dの4つの形式でバージョン表示されます。
また、Componentsの SMP.Libs, SMP.FormsのバージョンもSMPシステムのライブラリで、同じようにA.B.C.D形式になっています。
14.2 バージョン文字列
プラグイン、ライブラリが、A.B.C.Dの4つの形式でバージョン表示されています。
A.B =(バージョン)仕様管理
C= (ビルド番号)ビルド自動採番
D= (リビジョン) 時間経過
A,Bについては、当社がVisualStudioプロジェクトのVersionPrefixで設定しています。
C,Dについては、VisualStudioがビルド時に自動更新します。
14.3 インストーラーとの対応付け
インストール用のプログラム(インストーラ)のファイル名は、
SakiMotionPath_Install_64bit_A.B.C.D.exe
A,B,C,DはSakiMotionPathプラグインのバージョンです。
15 ライセンス・購入について
15.1 お試しライセンス
お試しライセンスは無料です。何も登録しない場合は4週間、XYZ機とXYZA機が利用できます。
特別に当面のバージョンでは、サービスコード LD5514を入れると延長することができます。
15.2 購入
購入については、現在WEBサイトを準備中です。
〇ライセンスの種類により各機能が提供されます。
〇サブスクリプションが基本となりますが、買い切り、オフラインは個別契約で可能です。
詳しくはライセンス購入ガイドをご覧ください
16 今後の予定
下記の機能の実装に取り組む予定です。一部の機能はOSSやAIを利用して実装しています。利用にあたり、ライセンスに従って提供しています。実装予定している項目は必ずしもお約束するものではありませんが、フィードバックやご要望が多いもの、リソース等を考慮し、段階的に対応をしていきます。
16.1 細かな機能
下記の細かな機能については期間契約のライセンス範囲内で、無償のアップデートとして提供します。
〇機械シミュレーターの改善〇機械定義(多様なATC、APC、他)〇各種管理・分析・レポート機能
特別な要望・専用加工などのコマンド開発〇サーフェス・ザグリ・ドリル加工(4/5軸)
〇 レンズ曲面上へのスワロフスキー等の埋め込み穴、垂直多数穴、エッジ加工
16.2 大きな機能
下記の大きな機能についてはご提供方法、時期、いずれも未定となっています。
ポケット用のHSM(High Speed Milling)
Rhinoに依存しないシミュレーション・機械コード最適化機能
17 専用化
機械の専用化にあたり、SMPの活用にご興味・ご相談などございましたらご連絡下さい。
CNCのエンジニアリング、ソフトウエア(機械の操作、3D-CADのカスタマイズ、CAMの専用化)を担当可能です。
17.1 実績
汎用機械設備では、FANUC様、安川シーメンス様、シーメンス様、スギノマシン様の機械との協業実績。(海外の会社様とも英語でしたら協力・共同研究等可能です)
17.2 AIの組込、データ分析
AIの機械用途(画像認識、機械プログラミング、機械知能)
・日本ディープラーニング協会(JDLA)G検定資格取得
・Google AI Essentials Certificate取得
・日本データサイエンティスト協会個人会員
17.3 CNC+AI、ロボット技術
CNC: AIやロボットの組み込みが可能(EtherCAT仕様・最大9軸)
SMP:6DOF(空間完全6自由度=同時6軸・XYZ移動3軸+回転3軸)
5軸加工機、複数主軸、レーザ測長機、自動工具交換機、自動ワークパレット交換機、カメラ画像AIを搭載した機械へのリアルタイム制御プログラムを簡単に組み込み
17.4 めがねバフ研磨 (6軸CNC・6DOF加工)
回転3軸を45度に配置、
機械干渉を極小に独自設計
ロボットと比べ
・省電力・コンパクト、
・高剛性、粉塵飛散防止






































































