ArduinoでGRBLをセットアップしてCNCマシンを制御する方法
あなたが考えているか、あなた自身のCNCマシンを作る過程にあるなら、おそらくあなたはGRBLという用語に出会うでしょう。したがって、このチュートリアルでは、GRBLとは何か、インストールする方法、およびArduinoベースのCNCマシンを制御するためにGRBLを使用する方法を学習します。
また、人気のあるオープンソースのGRBLコントローラーソフトウェアであるUniversalG-codeSenderの使用方法についても学びます。
GRBLは、CNCマシンのモーションコントロールを可能にするオープンソースのソフトウェアまたはファームウェアです。 GRBLファームウェアをArduinoに簡単にインストールできるため、低コストで高性能のCNCコントローラーをすぐに入手できます。 GRBLはGコードを入力として使用し、Arduinoを介してモーションコントロールを出力します。
理解を深めるために、次の図をご覧ください。
この図から、CNCマシンの動作原理の「全体像」のどこでGRBLが発生するかがわかります。これは、CNCマシンのステッピングモーターを制御できるように、Arduinoにインストールまたはアップロードする必要があるファームウェアです。言い換えれば、GRBLファームウェアの機能は、Gコードをモーターの動きに変換することです。
これらは、CNCマシンがどのように機能するかを理解するために必要な基本的な電子部品にすぎないことに注意してください。
実際、すべてを接続する必要がある例として、私のDIYCNCフォームカッティングマシンを見てみましょう。
このCNCマシンの構築に必要な主要な電子部品をここで確認して入手できます:
このCNCマシンの主なツールは、発泡スチロールを簡単に溶かしたり切断したりして、必要な形状を作ることができる熱線です。私がどのように機械を作ったか、そしてすべてがどのように機能するかについての詳細は、特定のチュートリアルをチェックすることができます。
それでも、ミルであれレーザーであれ、他のすべてのCNCマシンにも同じ動作原理が適用されるため、この記事全体でこのマシンを例として使用します。
まず、GRBLをArduinoにインストールまたはアップロードできるようにするには、ArduinoIDEが必要です。
次に、github.comからGRBLファームウェアをダウンロードできます。
.ZIPファイルとしてダウンロードし、次の手順に従います。
この時点で、GRBLをマシンに合わせて構成または調整する必要があります。これは、ArduinoIDEのシリアルモニターを介して行うことができます。シリアルモニターを開くと、「Grbl 1.1h [‘$’forhelp]」のようなメッセージが表示されます。このメッセージが表示されない場合は、ボーレートを115200に変更してください。
「$$」と入力すると、コマンドまたは現在の設定のリストが表示され、次のように表示されます。
$ 100 =250.000(x、ステップ/ mm)
これらのコマンドはすべて、CNCマシンに応じて調整できます。たとえば、最初のコマンド$ 100 =250.000(x、step / mm)を使用すると、マシンの1 mmあたりのステップ数を調整したり、X軸を1mm移動させるためにモーターが実行するステップ数を指定したりできます。
ただし、これらの設定はそのままにしておくことをお勧めします。次のセクションで説明するコントローラーソフトウェアを使用して、マシンに応じてそれらを調整する簡単な方法があります。
したがって、GRBLファームウェアをインストールすると、ArduinoはGコードの読み取り方法とそれに応じたCNCマシンの制御方法を理解できるようになります。ただし、GコードをArduinoに送信するには、Arduinoに何をすべきかを指示する何らかのインターフェイスまたはコントローラーソフトウェアが必要です。実際、その目的のためのオープンソースと商用の両方のプログラムがたくさんあります。もちろん、オープンソースに固執するので、例として、UnivarsalG-codeSenderを使用します。
この例では、2.0プラットフォームバージョンを使用します。ダウンロードしたら、zipファイルを解凍し、「bin」フォルダーに移動して、実行可能な「ugsplatfrom」ファイルを開く必要があります。これは実際にはJAVAプログラムであるため、このプログラムを実行できるようにするには、最初にJAVAランタイム環境をインストールする必要があります。
ユニバーサルGコードセンダーを開いたら、最初にマシンを構成するか、前に示したGRBLパラメーターを構成する必要があります。そのために、ArduinoIDEのシリアルモニターから手動でコマンドを入力するよりもはるかに便利なUGSセットアップウィザードを使用します。
ここでの最初のステップは、ボーレート(115200)と、Arduinoが接続されているポートを選択することです。ユニバーサルGコードセンダーをArduinoに接続したら、次のステップでモーターの移動方向を確認できます。
必要に応じて、ウィザードを使用するか、ArduinoCNCシールドのモーターの接続を手動で反転させることで方向を逆にすることができます。
次のステップでは、前述のsteps/mmパラメーターを調整できます。ここでは、セットアップウィザードがパラメータを計算して更新する値を教えてくれるので、調整方法を理解するのがはるかに簡単です。
デフォルト値は250ステップ/mmです。つまり、「x +」移動ボタンをクリックすると、モーターは250ステップを実行します。これで、モーターの物理的なステップ数、選択したステップ分解能、およびトランスミッションタイプに応じて、マシンはある程度の距離を移動します。定規を使用して、機械が行った実際の動きを測定し、その値を「実際の動き」フィールドに入力できます。これに基づいて、ウィザードはsteps/mmパラメータを変更する必要がある値を計算して通知します。
私の場合、私が作ったDIY CNCマシンの場合、マシンは3mm移動しました。これによると、ウィザードはsteps/mmパラメータを83の値に更新することを提案しました。
この値が更新されると、マシンは正しく移動するようになります。ソフトウェアで1 mmは、CNCマシンで1mmを意味します。
UGSコンソールでは、各アクションを実行すると、実行されたコマンドを確認できます。ステップ/mmパラメータを更新することで、UGSプログラムが実際にArduinoに送信したか、GRBLファームウェアに前述のコマンドが送信されたことがわかります。これはデフォルト値でした:$ 100 =250.000(x、step / mm)、そして今度は1mmあたり83ステップの値に更新しました:$ 100=83。
次のステップでは、リミットスイッチを有効にして、正しく機能するかどうかをテストできます。
ノーマルオープン接続かノーマルクローズ接続かに応じて、ここで反転することもできます。
ここで、Z軸リミットスイッチを無効にする必要がある場合があることに注意してください。これは、DIY CNCフォームカッティングマシンの場合で、Z軸リミットスイッチは必要なく、マシンを適切にホームに戻すために無効にする必要がありました。そのためには、Arduinoライブラリフォルダー(またはDocuments \ Arduino \ libraries)にあるconfig.hファイルを編集する必要があります。
ここでは、ホーミングサイクルラインを見つけて、3軸CNCマシンのデフォルト設定をコメント化し、2軸マシンのセットアップのコメントを外す必要があります。変更を有効にするには、ファイルを保存して、grblUploadスケッチをArduinoボードに再アップロードする必要があります。
それでも、次のステップでは、CNCメイシングのホーミングを有効または無効にすることができます。
「ホーミングを試す」ボタンを使用すると、マシンはリミットエンドスイッチに向かって動き始めます。逆の場合は、簡単に方向を逆にすることができます。
最後に、セットアップウィザードの最後のステップで、CNCマシンのソフト制限を有効にできます。
ソフト制限は、マシンが設定された作業領域を超えて移動するのを防ぎます。
そのため、GRBLファームウェアとArduinoのおかげで、DIYCNCマシンを簡単にセットアップして実行できます。もちろん、このチュートリアルでは基本的なことだけを説明しましたが、それで、物事がどのように機能し、最初のCNCマシンを稼働させる方法を理解するのに十分だったと思います。
もちろん、GRBLは本当に有能なCNCコントローラーファームウェアであるため、他にも多くの設定や機能を利用できます。 GRBLのドキュメントでは、そのすべてが詳細に説明されているため、github.comのwikiページでいつでも確認できます。
また、Universal G-code Senderのような他の多くのオープンソースGRBLコントローラープログラムがあり、ここにいくつかあります:GRBLweb(Webブラウザー)、GrblPanel(Windows GUI)、grblControl(Windows / Linux GUI)、Easel(ブラウザーベース)など。それらを調べて、どれが自分に最も適しているかを確認する必要があります。 GRBLとは何ですか?
GRBLのインストール方法
GRBL構成
$ 101 =250.000(y、ステップ/ mm)
$ 102 =3200.000(z、ステップ/ mm)
$ 110 =500.000(x最大レート、 mm / min)
$ 111 =500.000(y max rate、mm / min)
$ 112 =500.000(z max rate、mm / min)
$ 120 =10.000(x accel、mm / sec ^ 2)
$ 121 =10.000(yアクセル、mm/秒^2)
$ 122 =10.000(zアクセル、mm/秒^2)GRBLコントローラー
製造プロセス