これは以前のバージョン、Studio 1.0.2 のマニュアルです。 最新バージョンのマニュアル

ドキュメント 1.0.2 技術マニュアル

Twinwright 独自カーネル

Twinwright 独自カーネルは、Twinwright が自社で開発した CNC コントローラのファームウェアです。Studio では、ツインの機械を動かします。同じコードが、MC-1 のコントローラ基板用にもビルドされます。

Grbl 1.1 シリアルプロトコルで通信するため、G コード送信ソフトがそのまま使えます。設定、アラーム、エラーは、送信ソフトが知っている番号のままです。

機能

  • モーション: 100ブロックにわたる先読み計画、$11 から決まるコーナー速度、真円に沿った円弧。モーションは 1 ms のスライスで進みます。各軸は、最大速度($110–$112)と加速度($120–$122)を守ります。
  • 機械の機能:
    • 原点復帰、ハードリミットとソフトリミット、プロービング、ツールセッター
    • Modbus 経由の主軸インバータ、クーラント
    • $341 の設定に従う工具交換
    • パーキング付きの安全扉
    • オーバーライド、ジョグ、ハンドル(手動パルス発生器)
  • コントローラ上のプログラム: コントローラのファイルシステム上のプログラムは、O ワードのサブルーチンとマクロを使って実行されます(O ワードを参照)。
  • G コード: RS274/NGC と LinuxCNC に対応しています。工具テーブル、工具径補正、パスブレンディング、式、パラメータを含みます(G コードと M コードを参照)。

シリアルプロトコル、リアルタイムコマンド、$ コマンドは、プロトコルにあります。すべての設定は設定に、すべてのアラームはアラームコードに、すべてのエラーはエラーコードにあります。

ほかの Grbl コントローラとの違い

Grbl 向けに作られた送信ソフトは、このコントローラでも使えます。この節では、ほかの Grbl コントローラに慣れている場合に気づく点を挙げます。

コントローラが停止する場面

次の場合、一部の Grbl コントローラは動作を続けますが、Twinwright 独自カーネルは停止するか、アラームを出します。

  • 主軸インバータが自分で停止した場合(トリップ、過負荷、またはインバータ自身の停止キー):送りは 0.2 s 以内に止まり、コントローラは ALARM:14 を出します。
  • 主軸インバータが応答しない場合: まず軸が減速して停止するので、位置は保たれます。そのあと、コントローラは ALARM:19 を出します。
  • 工具交換:
    • 工具交換のときは、主軸は必ず停止します。
    • 確認なしで工具交換が続行される場合、主軸とクーラントは元の状態に戻ります。
  • フィードホールドまたは扉のあとの再開: 主軸が回転数に達してから、工具が動き出します。
  • 機械がパーキングから戻る途中で、扉がもう一度開いた場合: 機械は停止し、もう一度パーキングの高さまで上がります。次のサイクルスタートを待ちます。
  • 送信ソフトとの接続が切れた場合(USB が抜かれた、ポートが閉じられた):ジョブが停止します。これは $1030 で制御され、既定ではオンです。
  • プローブスイッチと原点復帰スイッチ: 配線上のグリッチは、接触として扱われません。
  • プログラム中の UTF-8 テキスト(中国語、「Ø」、「–」)は、テキストとして読まれ、リアルタイムコマンドとして解釈されることはありません。
  • 平面内に弦がない R 形式の円弧、たとえば G91 G2 X0 Z1 R5 は、error:33 を返します。

より多くの G コード

一部の Grbl コントローラは、次のものを拒否するか無視します。Twinwright 独自カーネルは、規格の定義どおりに実行します。

  • 工具テーブル(G43 Hn、G43.2、G10 L1/L10/L11)
  • 工具径補正(G41、G42)
  • パスブレンディング(G64 P)と正確停止(G61.1)
  • O ワードのサブルーチンと制御フロー、# パラメータ、式
  • G52、極座標(@、^)、M99
  • G85、G86、G89 の穴あけとボーリング(一部の Grbl コントローラはこれらを受け付けますが、動きません)
  • CAM のポストプロセッサがよく出力するもの:名前付きの % 行、G49 H0、Fanuc のプログラム番号行(O1000)、Centroid の M25

プログラムにより忠実な動作

  • 円弧 は、真円をたどります。一部の Grbl コントローラは円弧を弦に分割し、円からのずれは最大 4 × $12 になります。
  • 逆時間送りの円弧(G93)は、プログラムされた時間をかけて動きます。一部の Grbl コントローラは、これを数倍の速さで実行します。
  • ドウェル(G4)は、プログラムされた長さどおりに続きます。一部の Grbl コントローラは、50 ms 刻みに丸めます。
  • ステップ送り穴あけ: 穴ごとに、必要な分のステップだけを行います。深さがステップ量のちょうど整数倍のとき、一部の Grbl コントローラは、リトラクト高さからもう 1ステップ分を丸ごと穴あけします。
  • ソフトリミット付近の大きな円弧 で、誤ったアラームは出ません。
  • M72 は、M70 または M73 で保存した工具長補正を元に戻します。保存した値が 0 で、補正モード(G43.1)が同じ場合、一部の Grbl コントローラは元に戻さず、後で設定した値を保持します。そのため M72 の後、同じプログラムでもそのようなコントローラでは工具長補正が異なることがあります。
  • 加速度: すべての軸は、小さな円弧でも $120–$122 を守ります。小さな円弧が非常に多いプログラムは、一部の Grbl コントローラより最大で約 2 % 長くかかることがあります。通常のプログラムは、約 0.1 % 短くなります。

プロトコルの詳細

  • ステータスレポート:
    • フィードホールド中、または扉が開いているときは、FS: の送り速度は 0 です。軸は止まっています。
    • 残りの距離は、軸が止まるまで報告されます。
    • 重大なアラームの間、Bf: はプランナが空であることを示します。
    • $10 でパーサの状態をオンにしている場合、[GC:] は変化ごとに 1回出力されます。
  • 入力チェック:
    • $45x のような不正な設定番号は、error:3 を返します。
    • $1=25.0 のように整数の設定を書くと、25 が保存されます。一部の Grbl コントローラでは、250 が保存されます。
    • M6 と移動を 1行に書くと、error:40 を返します。
    • G65 または G66 を、ほかのコマンドと 1行に書くと、error:21 を返します。
  • アラームと起動:
    • アラームのあとに 100 ms の待ちはありません。
    • 設定の保存領域が空の状態での最初の起動では、error:7 を返しません。
  • テキストと設定:
    • 設定、アラーム、エラーの説明文は、Twinwright 独自のものです。
    • コントローラには独自の設定があります。$1030(送信ソフトとの接続が切れたときに停止する)と、入力シェーピング用の $1000 以降(既定ではオフ)です。
  • $39=0(従来のリアルタイム文字をオフ):?、!、~ は、$ 行とコメントの中ではテキストで、それ以外の場所ではコマンドです。コントローラは、バイトが届くたびにその場で判断します。そのため、扉が開いているときやフィードホールド中でも ? に応答します。一部の Grbl コントローラでは、応答しないことがあります。

非対応

  • G65 P7(Modbus メッセージ)。
  • Fanuc のシステム変数。#4120 などは通常のパラメータとして扱われ、値は 0 です。
  • 主軸エンコーダのないねじ切り(G33、G76、G33.1)。MC-1 にはエンコーダがないため、これらは error:20 を返します。
  • 旋盤の荒削りサイクル(ほかの Grbl コントローラにもありません)。
  • ネットワーク機能、Trinamic ドライバ、ほかのメーカーの主軸インバータ(一部の Grbl コントローラがプラグインとして提供しています)。

送信ソフト

動作を確認した送信ソフトとその設定は、G コード送信ソフトにあります。実機とそのツインを比較するには、実機とシャドーモードを参照してください。