アブソリュート指令とインクレメンタル指令の違いと使い方

アブソリュート指令とインクレメンタル指令の違いを理解していますか?医療機器の制御にも深く関わるこの2つの指令方式、正しく使い分けないとどんなリスクが生まれるのでしょうか?

アブソリュート指令とインクレメンタル指令の違いと基本

「インクレメンタル指令ならどこでもコピペして使い回せる」と思っていたら、医療機器が誤動作して治療位置がずれることがあります。


この記事の3ポイント要約
📌
アブソリュート指令(G90)とは

あらかじめ決めた原点(ワーク座標)を基準に、移動先の絶対座標を指令する方式。現在位置がどこでも、指定した座標に必ず到達できる。

📌
インクレメンタル指令(G91)とは

「今いる場所」から相対的な移動量を指令する方式。1か所でもミスがあると、それ以降の全座標がずれてしまうリスクがある。

📌
医療機器における重要性

放射線治療装置やリニアックのコリメータ制御には、電源ON時に原点復帰が不要なアブソリュート方式のエンコーダが採用されており、患者安全に直結する。


アブソリュート指令の基本概念と仕組み

アブソリュート指令(G90)とは、あらかじめ設定したワーク座標の原点(プログラム原点)を絶対的なゼロ点として、そこから移動先の座標を直接指定する方法です。英語の「absolute(絶対的な)」が示す通り、どこに工具や装置があっても「原点から見てここ」という1点の位置を指令します。


たとえば東京駅を原点とし、「北へ5km、東へ2km」という指示を出すのがアブソリュート指令です。出発地点がどこであれ、常に東京駅基準で同じ目的地に向かえます。これが絶対値指令と呼ばれる理由です。


GコードではG90と表記し、NCプログラムの中でG90を一度宣言すると、以降のブロックにも継続して効果が及ぶ「モーダル指令」として動作します。座標値の指令ミスがあった場合も、その1点の座標値だけを修正すれば済みます。これは非常に大きなメリットです。


アブソリュート指令が主流として使われる理由も、ここにあります。


項目 アブソリュート指令(G90) インクレメンタル指令(G91)
基準点 ワーク座標原点(固定) 現在の工具位置(移動のたびに変わる)
別名 絶対値指令 増分値指令・相対座標指令
Gコード G90 G91
ミス発生時 その座標のみ修正でOK 以降の全座標がずれる
プログラム長 長くなりやすい 短くなりやすい


医療従事者がNCプログラムや医療機器の制御仕様を理解する際、この表が基本の比較軸になります。アブソリュート指令が原則です。


インクレメンタル指令の特徴と「累積誤差」の怖さ

インクレメンタル指令(G91)は、「今いる場所から、どれだけ動くか」を数値で指定する方式です。「現在地から北へ2km」という案内を繰り返すイメージで、前の動作の終点が次の動作の起点になります。増分値指令、または相対座標指令とも呼ばれます。


メリットは明快です。同じ動作を繰り返す場面で、座標ブロックをそのままコピー&ペーストして使い回せます。たとえば「5mm間隔で10か所に穴を開ける」といった均等繰り返し加工では、G91でX5.0を10回繰り返すだけで済みます。プログラムが短くなり、一見シンプルです。


しかし、ここに重大な落とし穴があります。


インクレメンタル指令は、1か所でも座標を間違えると、それ以降の全座標位置がずれてしまいます。アブソリュート指令ならミスは1点だけで止まりますが、インクレメンタル指令ではミスが「連鎖」する構造になっています。また、Z軸の移動指令を見るだけでは、工具が材料に食い込んでいる状態かどうかが視覚的にわからないという問題もあります。これは非常に危険な特性です。


  • 繰り返し動作に強い:同じ移動量をコピペで使い回せる。サブプログラムとしてまとめやすい。
  • プログラムが短い:均等な繰り返し加工では記述量が大幅に減る。
  • ⚠️ ミスが連鎖する:1か所の座標ミスがその後の全動作をずらす。修正も全体に及ぶ。
  • ⚠️ 現在位置の把握が難しい:コードを読むだけでは工具が今どこにいるか直感的にわかりにくい。


プログラムのメンテナンス性を考えると、インクレメンタルだけで書かれたプログラムは後から読み解くのが非常に難解になります。結局1から書き直すことになった、という現場の声も少なくありません。使い捨ての短いプログラムなら便利ですが、長期使用するプログラムには不向きです。


アブソリュート指令とインクレメンタル指令の使い分け方

「どちらを使うべきか?」は、現場でよく出る疑問です。


結論から言えば、主プログラムはアブソリュート指令で書き、特定の繰り返し動作にのみインクレメンタル指令を使うのが一般的な考え方です。これが原則です。


アブソリュート指令が向いているケースは次の通りです。NCプログラムを長く使い回す場合、複数人でプログラムを管理・修正する場合、設計変更でツールパスを修正する可能性がある場合、座標の視認性や安全確認を重視する場合、これらはすべてアブソリュート指令が有利な状況です。インクレメンタルに比べてNCプログラムの行数は長くなりますが、可読性と安全性のトレードオフとして、ほとんどの現場でアブソリュートが選ばれます。


一方、インクレメンタル指令が便利なケースもあります。


  • 🔄 均等ピッチの繰り返し加工:例えば「5mm間隔で10か所の穴あけ」など、等間隔な繰り返し動作。
  • 🔄 使い捨ての単発プログラム:1回限りで再利用しない短いプログラム。
  • 🔄 サブプログラムの中:メインプログラムはアブソリュート、繰り返し部分だけをG91で書く混在使用。


HILLTOPなどの5軸加工を行うメーカーでは、CAD/CAMで生成されるNCプログラムのほぼ全てがアブソリュート指令で出力されるように設定されています。プログラマーとオペレーターが完全に分業している環境では、「他人が書いたプログラムを読んで素早く把握できるか」が重要だからです。これは使えそうです。


参考として、NCプログラミングにおける座標と指令の基礎は、職業訓練用フリーソフト「CAM13」を使った教材でも詳しく解説されています。


穴吹カレッジ「NCプログラミング基礎」テキスト(アブソリュート・インクレメンタル指令の解説あり)


医療機器におけるアブソリュート指令とインクレメンタル指令の実際

「NCプログラムの話だから医療現場には関係ない」と考えていませんか?実はそうではありません。


医療機器の多くには、軸の位置を検出・制御する「エンコーダ」が内蔵されており、そのエンコーダにもアブソリュート方式とインクレメンタル方式があります。この2種類の違いは、患者の安全に直接関わる問題です。


放射線治療装置(リニアック)のコリメータ(照射野を絞る絞り装置)は、照射角度を0.01度単位で制御する必要があります。この角度検出に使用されるのが、HEIDENHAINのECN 400シリーズのようなアブソリュートエンコーダです。アブソリュートエンコーダは電源を切っても位置情報を保持するため、電源再投入後に原点復帰の動作が不要です。一方、インクレメンタル方式では電源ON・OFFのたびに原点復帰が必要で、その手順を怠ると位置がずれたまま治療を開始するリスクがあります。


医療用電動ベッドには、HEIDENHAINのROQ 400シリーズのアブソリュートエンコーダが採用されています。患者が乗ったまま電源が一時的に遮断されても、ベッドの傾斜角が正確に把握されているため、急な動作で患者が転落するリスクを抑えられます。これが条件です。


  • 🏥 放射線治療装置(リニアック):照射角度検出にアブソリュートエンコーダ(ECN 400など)を使用。原点復帰不要で治療を中断なく継続できる。
  • 🏥 CT・MRI装置:大口径回転ガントリの角度情報検出にインダクティブ角度エンコーダを使用。高精度な画像診断を支えている。
  • 🏥 医療用電動ベッド:アブソリュートエンコーダで傾斜角を常時把握。停電後も位置データが保持される。
  • 🏥 人工透析装置・人工呼吸器:ステッピングモータやBLDCモータの稼働状況監視にインクレメンタル型エンコーダも使用。ただし定期的な原点確認が必要。


医療機器メーカーがアブソリュート方式を採用する最大の理由は「停電・再起動後の安全性」です。インクレメンタル型は相対位置しか知らないため、電源が落ちると現在位置を失います。医療現場では停電やシステム再起動は避けられない状況もあり、「電源を入れ直したら必ず原点復帰してから使う」という運用が確実に守られる保証はないのが実態です。


参考:HEIDENHAINのECN 400シリーズは、放射線治療装置の放射線放射角度の検出に実績のあるアブソリュートエンコーダです。


HEIDENHAIN(ハイデンハイン)「医療技術向けエンコーダ」公式ページ:放射線治療・CT・医療用ベッドへの採用事例あり


インクレメンタル指令を安全に運用するための独自視点:「原点の陳腐化」問題

NCプログラムやエンコーダの話で「インクレメンタルは使いにくい」という論調は多くありますが、ここで見落とされがちな問題を掘り下げます。それが「原点の陳腐化」という問題です。


インクレメンタル方式では、運用のたびに「今どこにいるか」が起点になります。そのため、長期運用の中で原点そのものがズレていく現象が起きることがあります。具体的には、インクレメンタルエンコーダを使った機器が、定期的な原点確認なしに長期稼働し続けた場合、累積したカウントエラーやノイズにより、実際の物理的な位置とシステムが認識している位置の間に乖離が生じます。


医療機器においてこれが問題になるのは、たとえば「患者ごとに毎回正確に位置合わせをしているはずなのに、数か月後に測定してみると1mm以上のズレが蓄積していた」というケースです。1mmというのは、骨のX線では看過できない誤差になりえます。これは意外ですね。


医療機器の点検・保守を担当する臨床工学技士や放射線技師にとって、この「累積ズレのリスク」を理解した上で定期的な原点確認の手順をルーティンに組み込むことは、患者安全管理の観点から非常に重要です。インクレメンタル方式のエンコーダを使用した機器では、電源ON時の原点復帰手順が定められているケースがほとんどです。その手順が確実に実施されているか、定期的な確認が必要です。


  • ⚠️ 電源ON時の原点復帰を必ず実施:インクレメンタル型エンコーダを搭載した機器では、取扱説明書の原点復帰手順に従う。省略はNG。
  • ⚠️ 定期的な位置精度確認:月次・四半期ごとに絶対位置の精度を確認するQA(品質保証)項目として組み込む。
  • アブソリュート型への切替検討:更新時期を迎えた機器では、アブソリュート方式エンコーダへの置き換えを検討する価値がある。


HEIDENHAINのアブソリュートリニアエンコーダ「LIC 2000」のような製品は、電源投入後の原点復帰が不要で、絶対位置を常に保持します。医療機器の更新・導入検討時には、こうした仕様の違いをエンジニアと確認しておくと安心です。


参考:モノタロウ「NCプログラム(インクレメンタルとアブソリュート)」では、芝浦工業大学の澤教授による解説が掲載されており、NCプログラミングの基礎として信頼性の高い情報源です。


モノタロウ「マシニングセンタ基礎講座:NCプログラム(インクレメンタルとアブソリュート)」