Arduino CNCシールドを便利にするための小改造

CNCシールドのリミットピンにはノイズ対策がされていません。その為意図しない動作をしてしまう可能性があります。

CNCマシン側で対策するのも可能ですが、CNCシールドを使いまわす可能性を考えるとCNCシールド側で対策をしておいたほうが無駄がないように思えます。

ここではCNCシールド側でのリミットピンのノイズ対策についてご紹介していきます。

目次
スポンサーリンク

CNCシールドの小改造の理由と改造箇所

改造箇所は2か所になります。難易度は決して高くないと思いますがCNCシールドのパターンカットをするのでちょっとした覚悟は必要かもしれません。

ハードウェアリミットのフィルタ回路追加

CNCシールドのハードウェアリミットを使う上で注意する点があります。

それは誤動作です。外来ノイズやチャタリングによって意図しない動作をする可能性があるからです。

特に機械的なスイッチの場合チャタリングを考慮しておかないと後々面倒に悩まされます。デフォルトのリミットピンはArduinoからプルアップされているだけですので、チャタリングの影響は考えておきたいところです。電源やモーターのノイズで誤検出してりまう事もありますしね。

grbl1.1への対応

持っているCNCシールドはリビジョンが3.0です。
こちらに書き込むファームは基本grbl0.8までとなります。
grbl0.9以降は使えなくなるかといえばそうでもなくて、一部のピンが入れ替わっただけなのでそれを踏まえて配線をすれば問題なく使えます。
個人的に最新版のgrblが使いたかったのとフィルタ回路を搭載するのに該当ピンのパターンカットが入るためgrbl1.1に対応させてしまおうと考えたわけです。

CNCシールド小改造の詳細

実装しているフィルター回路については以下を参考にしています。

grblではデフォルトでリミットピンはプルアップされているので、基板の方もそれに合わせて作っています。

そのフィルター回路の回路図です。抵抗とコンデンサの値はhttps://github.com/gnea/grbl/wiki/Wiring-Limit-Switchesページの値を採用していて現状では問題なく動作しています。

フィルター回路を入れるにはパターンの一部をカットして割り込ませる必要があります。

◯の部分のパターンカットをカットして、Arduinoからの信号ラインを一旦切断します。

パターンカット部分を拡大しました。ピンヘッダ側からこの辺りまでのどの地点でカットしても結果は同じですので、適当にカットしてあります。適当と言っても間違って他のパターンまでカットしないようには注意します。

grbl0.9↑対応改造をしないなら1個だけ離れた◯部のパターンはカットしないようにします。

改造後の写真です。このようにCNCシールドの背面に固定します。
赤い配線の上側はVccで下の赤い配線はGNDです。パターンを目で追ってからテスターで最終確認をします。これを間違えるとArduino本体を壊しかねませんので。

あとはそれぞれXリミット、Yリミット、Zリミット、SpindleEnable(SpindlePWM)を配線していきます。

grbl0.9↑対応改造をしないならリミット基板を配線するだけでOKです。
対応改造をする場合はZリミットとSpindleEnableの配線を入れ替えます。

表側の配線状態です。
配線を通すためにCNCシールドにドリル穴を空けてあります。もちろんパターンを傷つけてしまわないように位置決めは慎重にしています。
ここではgrbl0.9↑に対応させているので、ZリミットとSpindleEnableを入れ替えてあります。

緑の配線が元々Zリミットだった線です。UEW3本がリミット系の配線となります。

CNCシールド改造における注意点

この改造はCNCシールドを使いまわす事を意識しています。
フィルタ回路をシールド側に持たせればCNCマシン側に毎回フィルタ回路を付加する必要がなくなります。

CNCマシン1台に対して1台のCNCシールドとして使うならシールド側を改造する必要はないと思います。

まとめ

いかがでしたか。CNCシールドRev.3.0にフィルター回路の追加とgrbl1.1の対応改造のご紹介でした。
grbl1.1改造についてはRev.3.5以上のCNCシールドを入手すれば問題ありません。

フィルター回路はパターンカットしなくても実現できる方法はありますので、あくまでもこんな事をしている人がいるな、程度で見て頂ければと思います。

スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次