動作確認
確認内容
項目 | 内容 |
---|---|
インストール方法 | ファームウェアを制御基板へインストールする方法(ソースコードからコンパイル?、インストーラー?) ※公式配布コンパイル済み制御基板専用ファームウェアを直接書き込みは記載しない。 |
マシン定義方法 | 軸名や各種スイッチと基板入出力との関連付け方法。ソースコードに記述?設定ファイル? |
マクロ追加方法 | スイッチ等に対応したマクロ(一連の処理)を追加する方法 |
カスタムGコード追加方法 | マクロであったりカスタムの機能を追加する方法 |
Kinematics追加・変更方法 | 軸の動作方法(運動学)の変更方法。CoreXYやロボットアームなど |
追加機能 | サーボ対応、バックラッシュ補正、エンコーダー対応、ディスプレイ対応など元々のgrblになかった機能 |
検証環境
制御基板:Makerbase MKS DLC32
使われているマイコン:ESP32
ステッピングモータドライバー:A4988
余談ですが、Makerbaseの基板を始めとした中華基板系はオープンソースとなっていなかったり、オープンソースのコミュニティに寄与していなかったり支援していないこともあるためか、ファームウェア開発側からはあまり歓迎されていない雰囲気があるように思います。(ファームウェアに関係ないトラブルも多いという点もあるかもですが)
なので、この手の中華基板を使ってトラブル等ある場合は基本的には自分で調べて自己解決が必要になります。まぁ安いのでその辺はトレードオフですね。
grbl-esp32
項目 | 内容 |
---|---|
インストール方法 | ・ソースコードからコンパイルして書き込み |
マシン定義方法 | ・ソースコードMachine.hにて定義 |
マクロ追加方法 | ・ソースコードにてマクロが有効化されている場合、パラメータ設定にてコマンド、ファイルを指定可能 ・Gコードの範囲外の処理の場合はソースコード内にて記述が必要 wiki説明 |
カスタムGコード追加方法 | ソースコードのGcode.cppを編集すれば可能だが、簡単に追加できるようなフックはない |
Kinematics追加・変更方法 | ・ソースコードのcustom_code_template.cppをベースに処理を記述 |
追加機能 | サーボ、プッシュ通知、WEBUI、SDカード |
関連記事:
FluidNC
項目 | 内容 |
---|---|
インストール方法 | ・公式配布バイナリを書き込み ・ソースコードからコンパイルして書き込み ・Webインストーラーを使って書き込み |
マシン定義方法 | ・config.yamlを作成して制御基板にアップロード |
マクロ追加方法 | ・macroピンを定義することで有効化し、内容はconfigにて記載(Gコード、特殊コマンドのみ) wiki説明 |
カスタムGコード追加方法 | ソースコードのGcode.cppを編集すれば可能だが、簡単に追加できるようなフックはない |
Kinematics追加・変更方法 | ・定義済みのKinematicsはconfigファイルにて指定 ・定義されていないものはソースコードにて追加(KinematicsSystemクラス) wiki説明 |
追加機能 | 複数種類モーター対応、ローカルファイルシステム、WEBUI、SDカード、ミニOLED対応 |
関連記事:
grblHAL
WebBuilderを使わない場合環境構築はその他に比べてめんどくさめ
項目 | 内容 |
---|---|
インストール方法 | ・Web Builderにてファイルを作成して書き込み(試験的) ・ソースコードからコンパイルして書き込み wiki説明 |
マシン定義方法 | ・ソースコードにて変更 例:xPRO v5用 |
マクロ追加方法 | ・ |
カスタムGコード追加方法 | ・Mコード追加のテンプレート有り。ソースコード変更してコンパイル。 |
Kinematics追加・変更方法 | ・corexyなど定義済みのものはconfig.hにて有効化 ・未定義のものはKINEMATICS_APIを有効化して追加 |
追加機能 |
μCNC
項目 | 内容 |
---|---|
インストール方法 | ・ソースコードからコンパイルして書き込み |
マシン定義方法 | µCNC config builder にて設定したファイルを使いコンパイル |
カスタムGコード追加方法 | |
Kinematics追加・変更方法 | |
追加機能 |
総評
あとから書く
軸やピンの設定、定義はFluidNCを除いてソースコードを変更してコンパイルするのが基本。
このため、ABC軸を振りたい場合や、軸とドライバーの順番変更などの少し設定変更の場合、FluidNC以外はハードル高い。多少プログラミングが分かることが前提となる。
逆に言えば、制御基板の使い方が完全に決まっており変わることがない場合はどのファームウェアを使っても問題はなさそう。