PR

ゼロから自作するCNCの全手順ロードマップ|Arduino・GRBL・CNCjsでレーザー刻印機を作る【全10回】

ハードウェア制御 / 電子工作

自作CNC開発記 総集編

スポンサーリンク

ゼロから自作するCNCの全手順ロードマップ|Arduino・GRBL・CNCjsでレーザー刻印機を作る【全10回】

こんにちは。ニンジンです🥕

完成した自作CNCマシン。アルミフレーム筐体に1064nm赤外線レーザーモジュールを搭載
完成した自作CNCマシン

市販のCNCを買うのも便利ですが、構造や制御の仕組みを理解して自分の目的に合ったマシンを手に入れるため、ゼロからのCNC自作に挑戦しました。この記事は、構想・パーツ選定・制御ソフトの設定・レーザー刻印テストまでの全工程を、全10回のロードマップとしてまとめた総集編です。

手元のXYテーブルを仮筐体に使って制御系を固める「要素設計フェーズ(第1〜6回)」と、本番アルミフレーム筐体で加工機に仕上げる「実機調整フェーズ(第7〜10回)」の2部構成で、各回の内容と、実際にぶつかったエラーへの対処を確認できます。

この記事で分かること

  • 自作CNCを組むために必要なパーツ構成(Arduino UNO・CNCシールド・A4988・ステッピングモーター・リミットスイッチ)
  • ファームウェア GRBL の書き込みと、PC制御ソフト CNCjs の導入の流れ
  • ホーミング失敗(ALARM:8)・Z軸リミット常時ON(Pn:Z)・Check Door エラーなど、実際にハマったトラブルと解決策
  • 1064nm赤外線レーザーモジュールで金属に直接刻印するまでの手順
  • 各回(第1回〜第10回)の要点と、どの順で読めばいいか

スポンサーリンク

自作CNCプロジェクトの全体ロードマップ

本シリーズは大きく2つのフェーズに分かれています。いきなり本番筐体を作って失敗するリスクを避けるため、まず手元のXYテーブルを仮筐体として流用し、制御系・ファームウェア・センサー類の動作を徹底的に検証しました。その知見をもとに本番アルミフレームを設計・製作しています。

第1〜6回

🔧 要素設計フェーズ(仮筐体期間)

自作XYテーブルをCNC化し、制御基板・ファームウェア・リミットスイッチ・ステッピングモーターを個別に検証したフェーズです。

  • Arduino + CNCシールドの基本セットアップ
  • GRBLの書き込みとCNCjsの導入
  • リミットスイッチ配線とホーミング設定
  • ステッピングモーター精度検証とキャリブレーション
  • ピン割り当て・バージョン差によるトラブル解決
第7〜10回

🏭 実機調整フェーズ(本筐体期間)

仮筐体で得た知見をもとに設計した本番アルミフレーム筐体で、実機を調整・拡張するフェーズです。

  • アルミフレーム組み立てと各軸の調整
  • CNCjsのエラーを文字コード問題から解決
  • 1064nm赤外線レーザーによる金属刻印
  • 特注板金+リニアガイドで剛性アップ・加工速度10倍化
  • 全設計データ(部品リスト・2D/3D図面)の公開

スポンサーリンク

【フェーズ1】仮筐体での要素設計編(第1回〜第6回)

まずはXYテーブルを流用し、Arduinoとステッピングモーターを組み合わせた制御の基本と、ホーミングなどの必須機能を構築していくプロセスです。

1回

XYテーブルのCNC化とモーター制御の基本

自作CNCの玄関口となる部品選定と駆動テスト。CNC制御で「なぜRaspberry PiではなくArduinoを選ぶのか」というリアルタイム処理の波形比較や、A4988ドライバの破損を防ぐ電解コンデンサの必要性など、電気的な基礎を解説します。

XYテーブルをCNC化!ArduinoとA4988を使ったステッピングモーター制御の基本【自作CNC第1回】
2回

リミットスイッチの実装とホーミングの仕組み

工作機械に「機械原点(0, 0)」という物理的な基準を与えるリミットスイッチの実装回。GRBLがなぜリミットスイッチに「2回」触れて原点を特定するのかというホーミングの仕様や、ノイズによる誤検出を防ぐ「プルアップ配線」の回路構成に触れています。

自作CNCのリミットスイッチ配線とホーミング設定|プルアップ回路・チャタリング対策【自作CNC第2回】
3回

GRBL書き込みとCNCjsでのPC制御環境の構築

ArduinoをCNCの脳に変えるファームウェア「GRBL」の書き込み手順と、PCからミリ単位で操作するブラウザベースソフト「CNCjs」の導入方法。後半では、安価なモーターで直面した「移動距離の不規則なバラつき(0.7mmの誤差)」という精度の壁を論理的に考察します。

ArduinoへGRBLを書き込む手順とCNCjsの使い方|XYテーブルをPC制御【自作CNC第3回】
4回

モーター交換と精度出しのキャリブレーション

前回の精度不足を解消するため、信頼性の高いオリエンタルモーター製「PKP244D08A2」へ換装。実測値に基づくGRBLパラメータ($100)の補正計算式、CNCjs接続時に座標が0にならない場合の対処、送り速度(F値)が頭打ちになる設定の罠($110)の解除手順を紹介します。

GRBLの$100キャリブレーションと$110速度制限の解除|CNCjsでステップ数を実測補正【自作CNC第4回】
5回

2軸同期走行とCNCシールドのピン配置の罠

X軸・Y軸を同時に連携させて四角形や円弧を描く「2軸同期走行テスト」。その過程で直面した、リミットスイッチが常時ON(Pn:Z)になる異常事態の原因を究明。GRBLのバージョンアップ(v0.8→v0.9以降)に伴う、D11とD12のピン配置反転の歴史と基板の罠を解説します。

CNCシールドでリミットが常時ON(Pn:Z)になる原因|GRBLのD11・D12ピン反転の罠【自作CNC第5回】
6回

GRBLの4ステップホーミング攻略とレーザーPWM検証

Z軸ユニットがまだ無いプロトタイプ環境で、ホーミング時の「ALARM:8(失敗)」を回避する手動操作手順を公開。GRBLの「4ステップ動作」を解明し、後半ではD11ピンからのPWM信号によるレーザー出力制御をLEDの調光で視覚的に検証します。これで要素設計フェーズが完了です。

GRBLホーミング失敗「ALARM:8」の原因と対策|4ステップ動作(ON-OFF-ON-OFF)とプルオフ設定【自作CNC第6回】

スポンサーリンク

【フェーズ2】本筐体での実機調整編(第7回〜第10回)

要素設計での知見をすべて注ぎ込み、独自に設計した本番用のアルミフレーム筐体を稼働させ、加工機としてブラッシュアップしていくプロセスです。

7回

アルミ筐体完成とGコードの「文字コード(UTF-8)」の罠

稼働領域 X350mm × Y340mm の本番用アルミフレーム筐体が完成し、ペンプロッターとして動作確認。そこで連発した「Check Door」エラーを追跡し、ハードのノイズではなくGコード内の日本語コメント(「径」などの漢字)がUTF-8の文字コード(0x84)を介してGRBLのリアルタイムコマンドを誤作動させていたという真犯人を突き止めました。

GRBLで「Check Door」が誤発生する原因と対策|Gコードの日本語コメント(UTF-8)の罠【自作CNC第7回】
8回

1064nm赤外線レーザーモジュールの搭載と金属刻印テスト

メイン加工工具として、LASER TREE製「2W 1064nm 赤外線レーザーモジュール」を導入。金属やプラスチックへの直接刻印を目的とした波長選定の理由や、レーザーモード($32)などのパラメータ設定、LightBurnを使ったアルミ板への素材マトリックステストの様子をお届けします。

自作CNCに1064nm赤外線レーザーで金属刻印|GRBL設定変更($32=1)とLightBurn素材テスト【自作CNC第8回】
9回

自作CNCのレーザー加工を10倍高速化!アルミフレーム剛性強化と速度検証

高速加工時の「端部のにじみ・ブレ」の原因がアルミフレームのしなりにあると突き止め、特注板金とスガツネ製リニアガイドレールで剛性強化。ArduinoとA4988の限界を分析しつつ、実用速度を約10倍の6,000mm/min(推奨常用3,000mm/min)まで引き上げた検証プロセスを解説します。

自作CNCのレーザー加工を10倍高速化する方法|アルミフレーム剛性強化と速度検証【自作CNC第9回】
10回

【設計データ配布】全部品リストと2D/3D図面一式

本自作CNCで使用したすべての部品構成表(パーツリスト)、剛性確保のために設計した板金の2D・3D図面データ、PDF形式の結線図、組み立ての全容がわかる「3D-PDF組立図」を一式にまとめたデータ配布ページです。「自分でも同じスペックのCNCを組み立ててみたい」という方向けの完全パックです。

【設計データ配布】自作CNCレーザー刻印機の全部品リストと2D/3D図面一式【自作CNC第10回・完結編】

スポンサーリンク

主要コンポーネント一覧

本シリーズで使用した主なコンポーネントです。

カテゴリコンポーネント備考リンク
マイコンArduino UNOGRBLファームウェアを書き込んで使用Amazon
制御基板CNCシールド v33軸同時制御に対応Amazon
モータードライバーA4988マイクロステッピング対応。焼損を防ぐVref調整は こちらの記事で解説Amazon
ステッピングモーターPKP244D08A2精度向上のため途中でスペックアップ(オリエンタルモーター製)公式
リミットスイッチD2JW-01K1A1X / Y / Z軸それぞれに配置楽天
制御ソフトCNCjsWebブラウザベースのグラフィカル操作UI公式サイト
CAMソフトLightBurnレーザー加工のパス生成・テスト用公式サイト
レーザー1064nm 赤外線レーザー金属への直接刻印が可能(LASER TREE製 2W)公式
筐体(仮)自作XYテーブル第1〜6回の要素検証に流用製作記事
筐体(本番)アルミフレーム(自設計)第7回以降。板金+リニアガイドで剛性強化—

※一部のリンクはアフィリエイトプログラムを利用しています。


スポンサーリンク

よくある質問(FAQ)

Q自作CNCにArduinoとGRBLを使うメリットは何ですか?

AArduinoは安価で入手しやすく、GRBLはCNC専用のオープンソースファームウェアです。組み合わせることで数千円からCNCコントローラーを構築でき、CNCjsなどのGUIソフトで直感的に操作できます。設定値もシリアルコマンドで変更できるためDIYに最適な構成です。

QGRBLのALARM:8エラーとはどういうエラーですか?

Aホーミング動作中にリミットスイッチが正しく反応しない場合に発生するエラーです。配線ミス・GRBLのバージョン差によるピン割り当ての違い・ホーミング方向の設定ミスが主な原因です。第6回で動作原理を4ステップで解説しています。

QCNCjsで「Check Door」エラーが突然出るのはなぜ?

AGコードファイルにBOM付きUTF-8や日本語コメントが混入し、GRBLが認識できない文字列を受け取ることで発生するケースがあります。第7回でファイルの文字コード確認と対処法を解説しています。

QZ軸リミットが常時ON(Pn:Z)になってしまいます。

AGRBLのバージョンによってCNCシールドのD11とD12のピン割り当てが逆転する問題が知られています。GRBLのバージョンに合わせて配線を変更するか、バージョンを合わせることで解決します。第5回で詳しく説明しています。

Q自作CNCで金属にレーザー刻印できますか?

A1064nm赤外線レーザーを使用すれば金属への直接刻印が可能です。GRBLのレーザーモード($32=1)を有効にしたうえで、LightBurnでパワーと速度のテストを行い素材ごとに最適条件を見つけることが重要です。第8回で具体的な手順を紹介しています。

Q設計データや部品リストは公開されていますか?

Aはい。第10回で、自作CNCの全部品リスト・2D図面・3D図面・結線図・3D-PDF組立図の配布情報を掲載しています。


スポンサーリンク

おわりに

寄せ集めのXYテーブルからスタートしたDIY CNCプロジェクトですが、一歩ずつエラーを潰していくことで、アルミフレームをベースとした本格的なレーザー刻印機として形にできました。

工作機械の自作は、ハードウェアの知識(配線やノイズ対策)とソフトウェアの仕様(GRBLや文字コード)の両面からアプローチする必要があり大変ですが、思い通りに金属へ刻印できた瞬間の達成感は格別です。

今後も検証結果や設計データの更新など、コンテンツを随時追加していきます。にんじんでした🥕


ニンジン🥕アイコン

Follow me on X

本ブログの中の人「ニンジン🥕」はXやってます。新着記事はいち早くポストでお知らせしているので、見逃したくない方は @ninjin_py_vba をフォローしてみてください🥕

@ninjin_py_vba をフォロー

この記事が役に立ったら、シェアしてもらえると嬉しいです🥕

Xでポスト はてブ LINE Pocket

PROJECT LOG — SERIES INDEX
スポンサーリンク

シリーズ記事一覧

電子工作・自動化ツールの製作記録をシリーズごとにまとめています。気になるテーマからお読みください。


スポンサーリンク

新着記事

まとめハブ
ハードウェア制御 / 電子工作
スポンサーリンク

コメント