レーザー加工機の冷却水~不凍液投入~

先日水冷システムを変更したレーザー加工機ですが、冷却液には水道水をそのまま使っていました。今は5月なので凍結の心配はありませんが、その前にカビやコケが生えると嫌なので、ちゃんとした冷却液に入れ替えます。

冷却液には何を入れようかとネットで調べると、自動車用でよく使われているエチレングリコールというのは毒性があるそうなので漏れた時が嫌で使いたくありません。グリセリン系というのもあり無害でそのまま下水に流せるそうですが粘性が高いとの事。

このあたり素人で良くわかりませんが、プロピレングリコール系というのが毒性が低いとの事なのでこれを買ってみました。カビやコケの防止効果があるかどうかはわかりませんが・・・。

water2_1

プロピレングリコール系冷却液”コガブラインPG40”。Amazonで¥923-

早速リザーバータンク(として使うペットボトル)に入れてみました。かき氷のイチゴシロップみたいでおいしそう。

water2_2

約2リットル投入。

で、接続してみます。

water2_3

全体がピンク色。

電動ポンプをONにしといて灯油ポンプでプライミングしてやると循環し始めます。
しかし水道水の時と比べて流量が明らかに減っています。やはりこれも粘度が高いのでしょうか?水流センサーも反応しません。

水流センサーの出力を見ると6.89Hzです。センサーは10Hz以上を流量有りと判定する様にプログラムしているのでこれでは反応せず、このままではコントローラーがレーザー発射を止めてしまいます。

Water2_3

水流センサーの出力

レーザー管にどれくらいの水を流す必要があるのか分かりませんが、今までフルパワーで動かしても特に水が温まる感じも無かったので、とりあえずこの流量でもいいんじゃないかと(ええかげんやなー)、センサー閾値の方を4Hzに落としました。

と、一旦これで良しとしたのですが、やはりちょっと不安なので冷却液に精製水を混ぜて濃度を下げる事にします。冷却液を500ml抜いて代りに精製水500mlを入れました。冷却液そのままだと凍結温度が-25℃ですが、さすがにそこまで冷える事は無いので多少薄くなっても大丈夫でしょう。

Water2_5

精製水500ml。
ドラグコスモスで¥98-で購入。割安な気がしましたが元は水ですもんね。

これで若干ですが流量が増えています。センサー出力も9Hzにアップ。

Water2_6

不凍液を薄めた後の水流センサー出力。約9Hzにアップ。

なおこの水流センサー(YF-S201)は以下の式で周波数が決まる仕様になっています。
 Frequency (Hz) = 7.5 * Flow rate (L/min)
という事は9Hzだと、9÷7.5=1.2L/minとなります。適正値が判りませんが少ない気もするので
温度に注意しながら使ってみます。

Water2_7

何だか、派手な色が入り混じっています。

インターホンの先にワイヤレスチャイムを取付ける。

わが家の玄関にはビデオタイプのインターホンが付いており、来客があるとリビングの親機でチャイムが鳴ります。

InterPhone1

PanasonicテレビドアホンVL-SV36KL

しかし工作部屋に籠って作業をしているとリビングでチャイムが鳴っても気づかない時があります。
これがAliexpressから待ち望んだ品の到着だったりすると、とっても悔しい思いをします。また巷で話題になっている再配送の増加にも繋がるので何とかしなければなりません。

そこでインターホンの取説を見ていると、親機に「A接点出力」なる端子がある事に気づきました。これはチャイムが鳴る時に30秒間ONになる接点との事で、恐らくリレーやスイッチでいう「A接点」と同じ意味だと思います。
試しにマルチメータで抵抗値を計りながら玄関ボタンを押してみると確かにその様な動作をしており、ここから何らかの方法で工作部屋まで伝えれば問題が解決しそうです。

InterPhone2

マニュアル抜粋1

InterPhone3

マニュアル抜粋2。「最小適用負荷:DC5V/1m」というのが少し気になりますが・・・。

 

そしてわが家のガラクタ箱にこんなのがあります。以前実家で使っていたワイヤレスの玄関チャイム。リフォームして不要になったのをもらっておきました。右側の小さい方が送信機、左の大きい方が受信機で、送信機の緑のボタンを押すと受信機のチャイムが鳴ります。

InterPhone4

ELPA ワイヤレスチャイム EWS-10

この緑ボタンの代りに先程の「A接点出力」を接続すれば工作部屋まで来客を知らせる事が出来る筈です。

という事で早速送信機を開けてみます。

InterPhone5

ボタン電池CR2032が入っていました。

更に開けていくと基板が出てきました。バネみたいなのはヘリカルホイップアンテナだと思われます。また各所にシリコーンのパッキンが入っているのは玄関に取付ける為の防水対策でしょう。

InterPhone6

基板登場

緑ボタンを外すとタクトスイッチが出てきました。ここにインターホン親機のA接点を接続すれば良いはず。

InterPhone6

目的地のタクトスイッチ登場

こんな感じでリード線を接続。ケースに穴をあけて引き出しました。

InterPhone7

タクトスイッチと並列にリード線を接続。

緑ボタンを載せます。リードにパッキンが当たるのでパッキンの一部を切り取りました。今後は室内で使うので防水性が落ちるのは問題ありません。

InterPhone8

再びボタンを取付けた図

ケースを組み立てなおして・・・
InterPhone9

テレビドアホン親機に接続します。

InterPhone10

赤/黒のリード線が「A接点出力」端子への接続です。

完成!

InterPhone11

ワイヤレスチャイムの送信機は両面テープで貼り付けました。

これでバッチリ。玄関でボタンを押すとリビングと共に工作部屋でもチャイムが鳴るようになりました。

取説に「最小適用負荷:DC5V/1mA」と書かれているのに対し送信機のタクトスイッチには3Vしか加わっていないのが少し気になっていましたが特に問題なく動作しています。

 

レーザー加工機の冷却水

最近、時々レーザー冷却用のポンプが止まります。
一旦回り始めたら途中で止まる事は無いのですが、何日か使用しなかった後、電源を入れても回り出さない時があるのです。その場合、ねじを外してインペラを手で回すとゴリゴリ感が取れて復活します。そろそろ限界かもしれません。

suirei1

今までのポンプ。
洗濯機の風呂水取り用です。

冷却水はこういうタンクに入れてあり、レーザーを使用する時はポンプを放り込んで回しています。因みにこのタンクは熊本地震の時、給水用としても活躍した物です。

Suirei2

水タンク

レーザーの使用が終わると毎回水を抜いています。自重で大体の水をタンクに戻した後、コーキング容器で作った水鉄砲を使ってパイプに残った水を吸い出しています。

Suirei3

パイプ内の水を吸出す為の水鉄砲

この水を抜く作業が結構面倒なのです。そこでこの機会に水冷システムを見直そうと思います。イメージしているのはぽんさんのレーザー加工機で、ポリタンクはやめて加工機に一体化した循環経路とし、トータルの水量を減らす代りにラジエターで冷却しようと思います。

で、ラジエターを購入。

ラジエター

たぶんPC水冷化用です。購入時は送料無料で¥1896-でした。

そしてポンプ。

ポンプ。

なに用か分かりません。
購入時は¥416-でした。

まずはこれらの動作確認です。水をこぼしても被害が少ない様、風呂場の脱衣所で試します。

ポンプ2

ポンプと仮の電源

Radiator2

ラジエター

リザーバタンク

仮のリザーブタンク

 

新たに購入したポンプは水中ポンプではないのでパイプの途中に取付ける形となります。
起動時、ポンプまで水が来ていない状態でも少しは吸い上げてくれるかと期待しましたが甘かった様で、全く吸い上げません。よって起動時は何とかして呼び水で満たしてやる必要がありますが、ペットボトルを上げたり下げたり、パイプをシゴいたりと色々やりましたが思った程簡単にはできません。ポンプまで水を送る為のポンプが必要になりそうです。

当初これを購入しようかとも考えましたが・・・

プライマーポンプ

ボートの船外エンジンで燃料を送るのに使うプライマーポンプ

もっと簡単に手に入るのがありました。
灯油ポンプです。これを使って電動ポンプまでの経路を水を満たしてやれば後は電動ポンプが流し続けてくれます。

灯油ポンプ

灯油ポンプ。

 

という事で、この方式でレーザー加工機に取付けたいと思います。
経路は下図の様にします。

水経路

冷却水経路

 

・・・さっそく取付けました。

LaserCoolingSystem

ファンのLEDが眩しく輝いています。このファンもぽんさんから頂いたものです。

LaserCoolingSystem2

灯油ポンプが顔を出しててちょっと変ですが・・・

水流センサー

センサーが水流を検出した証として緑色LEDが点灯しています。

現時点は普通の水道水を入れていますが、暫く使って水漏れが無い事を確認したら不凍液に替えようと思います。冬までには何カ月も猶予がありますが、その前にカビやコケが生えると嫌なのです。よって防カビ/コケ効果のある不凍液にしたいのですが何を入れるのがいいんでしょうね? 車の不凍液(エチレングリコール)は毒性があるらしいので漏れると嫌であまり使いたくありません。グリセリンタイプというのもあるそうですが、こちらは粘性が高いという話です。PC水冷用かな? もう少し調べてコケが生える前には交換しようと思います。

レーザーでハンコを製作する

訳あってハンコを製作する事にしました。
ゴム板をレーザーで彫るのが本筋だと思いますが、手元に無かったので杉(と思われる)板に彫ってみました。

まず適当なソフトで原版を描き、裏表を逆転させます。また彫る部分を黒、残す部分を白にします(一回失敗しました)。

そしてここに書いた方法でレーザー加工機をラスタースキャンさせます。この時レーザーパワーをどれくらいにするのが適当か分からなかったので、ちょっと強めかと思いましたが50%からやってみました。スキャン速度はF3000、解像度は288dpiです。

まず1回目・・・さすがレーザー、細かいところまで残っています。でもちょっと彫り過ぎました。3mm以上窪んでいるので細かいところ(濁点の部分とか)がすぐに折れそうです。

はんこ1

一回目

 

2回目。パワーを約25%に下げて再トライ。
深さ2.5mmでまだ彫りすぎです。

はんこ2

二回目

 

3回目。約10%パワーでやっと1mm強になりました。これくらいで良しとしましょう。
なお10%とはボリュームの目盛りでの10%です(この図のIN端子で制御)。レーザー管の定格は40Wなのでキチンと比例していれば4Wになりますが実際のところは分かりません。

はんこ3

3回目。既にインクを付けた写真しかありませんでした。

つまむところを付けて・・・

はんこ4

つまみ取付け。

 

押してみます。
ゴム版と違って綺麗に押すのが難しい気がします。
まあでも良しとしましょう。

はんこ5

押してみた。

 

3Dプリンタ2号機~その8~

やっぱり二代目3Dプリンターにラズパイを取付けました。
初代RaspberryPiのModelBです。

3dp28_1

Raspberry Piをねじ止め。

ラズパイにモニターやキーボードは取付けていませんが、Xwindowの画面をメインPCに飛ばしPronterfaceを実行できます。
又はTeratermでログインしてPronsoleを使う事も。。。

フロントパネルにはラズパイ専用の電源スイッチとシャットダウンボタンを設置したのでLCDコントローラだけで動作させる場合にはラズパイ電源はOFFにできます。

3dp28_2

手持ちのスイッチを取付け。

なお特に対策をしなければラズパイ専用電源をOFFにしてもArduinoからの電圧でラズパイのLEDが点いてしまいます。正常動作する程の力はない様ですがArduino側のレギュレータに負荷が掛かりそうです。気持ち悪いのでUSBコネクタの+5V端子にカプトンテープを貼って絶縁するという、いい加減な対策をしました。

3dp28_3

USBコネクタの+5V端子を絶縁。

 

これで3Dプリンタ2号機は一旦完成とします(多分まだ何かやりますが)。

3dp28_4

3Dプリンタ2号機~その7~

前回の続きでpronsoleの中を調べています。まだよくわからない部分も多々あるのですが、まず1番の疑問としてGコードのロードになぜ時間がかかるのか、またどこにロードしているのかについては、どうやらPythonの配列に全てのコードを読み込んでいる様です。という事はメインメモリーに取り込んでいる事になります。但し時間がかかっているのは読み込みそのものではなく、その後にレイヤー数や実行時間を計算する部分の様です。という事は実行時間表示を諦めたらロードが早くなってサクサク動くんではないかと期待し、そのうち試してみたいと思います。

LCDコントローラ検討

そもそもは制御PCをどうするかという話でしたが、LCDコントロールパネル+SDカードでも良いんではないかという気がしてきました。これまた世の中では当たり前なのでしょうけどウチでは今までPC接続でしか動かした事が無かったんです(このあたりが世の中から周回遅れなのです)。

手持ちのLCDで丁度良いのがなく、Aliexpressをみたら¥1031-でこんなのがあったのでポチりました。ロータリーエンコーダやSDカードソケットまでついて送料無料です(今見たら若干値段が変っていましたが)。

そして随分と早く、9日間で到着。

3DP27_1

立派な箱に入って到着しました。

開封・・・

3DP27_2

中身一式。
ケーブルに加えRAMPSに挿す為の変換基板も付いています。

接続

早速接続します。配線は本体と変換基板をケーブルでつなぎ、変換基板をRAMPSに挿すだけです。
そしてMarlin側は次の4箇所のコメントを外しました。

#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
       ←接続するコントローラのタイプが「Discount Full graphic controller」である事を示す。
#define REVERSE_ENCODER_DIRECTION     ←ロータリエンコーダの回転方向を逆にする。
#define SDSUPPORT             ←SDカードを使用可能にする。
#define LCD_LANGUAGE kana        ←表示をカナ表示にする。
#define INDIVIDUAL_AXIS_HOMING_MENU  ←各軸単独でHOMINGする為のメニューを追加する。

電源投入

そして電源を入れると・・・

3DP27_3

おお、灯いた。

事前の情報でSDカードに保存するGコードは8+3形式のファイル名でないとダメと聞いていたのでこの通りに作成し、余っていた128MBのSDカード(128GBではなく128MB)に入れてみましたが・・・ファイルを見つける事が出来ません。そこで8GBのSDHCに入れたところ問題なく読み出せました。今どき128MBは想定外なのでしょうか? ま、しかしこれで問題なくプリントできます。

取付け

本体に取付ける為、Thingiverseから適当なケースを落としてきてプリントしました。そしてケースに入れてねじ止めすると、画面の真ん中あたりの横一列に表示の欠損が発生しました。

3DP27_4

真ん中付近に横一列の表示欠けが出ました。

改めてケースから外してみると正常に表示できます。どうやらサイズギリギリにプリントしたケースに基板を押し込んだ為、応力が加わりディスプレイの配線が接触不良をおこしているのだと思います。 そこでケースを少し削って余裕を持たせたら正常に戻りました。

そして本体に取付け。
おー!いい感じです。

3DP27_5

本体に取付けたところ。

そして・・・

元々1号機があった場所に置いてみました。
手前からレーザー加工機、3Dプリンタ2号機、基板切削用CNCです。

3DP27_6

わが家の自作工作機器

結局のところ、まだRaspberry piは繋いでいません。
なんだかこのままSDカードだけでで行ってしまいそうです。

3Dプリンタ2号機~その6~

前回の投稿では1層目の貼り付きが悪いと言って一生懸命Z軸のレベル調整を行なった挙句、結局はプリントベッドをアルコールで拭いたら改善したというオチでした。その後も貼り付き性には問題なく、ネットで調べたらアルコール拭きは常識みたいですね。勉強不足でした。

コントロールPCのラズパイ化検討

3Dプリンタ1号機ではこの時設定したUbuntuマシンをまだ使っていました。たしかCPUはPentium4だったかな?
2号機もコイツで動かしてもいいのですが、レーザー加工機の制御PCも兼ねているので両方同時に使えないんですよね。また先日はボタン電池が切れて交換したし、そろそろいつ止まっても不思議ではない状態です。
他に使えるPCもないのでわが家に何個かあるラズパイで試してみようと思います。

Raspberry Pi1 ModelB

ラズパイの中では最も古いModelBです(+でも2でも、もちろん3でもないヤツ)。動作速度がどうかなーと思いますが、まずは試してみます。

3DP26_1

Raspberry Pi1 ModelB

Pronterfaceをインストール

Pronterfaceをインストールするのですが、まずはその前に今このRaspberry Piに入っているOSはいつのだか判らないので最新版のRaspbian(STREATCHと言うそうです)を入れ直しました。
その後・・・
’sudo apt-get install printrun’ で何事もなくインストール完了。

実行すると見慣れた画面が立ち上がります。
そしてプリンターと繋いで実行すると・・・なんかやっぱり遅いです。モデルの表示を2Dにしても操作した後10秒ぐらいしてからやっと反応する感じ。3D表示だと固まったかと思います。これはちょっと使えるレベルではありません。

pronsole

pronterfaceと一緒にpronsoleというのもインストールされています。こちらはコマンドラインでプリンターを操作できるものなので、メインPCからSSHでログインして操作可能です。 これだとGコードのロード時以外は遅さを感じないので、これもアリかと思います。

Raspberry Pi 2

Pi1だと遅いのですが、ならばRaspberry Pi2ではどうなのか試してみます。 このラスパイ、流行りに乗ってAIY VOICE KITに使ったのでこんな箱に入ったままです(AIY VOICE KITは Raspberry PI3を使うものとされていますが、わが家にPi3はないので2で試したところ、それなりに動いていました)。

3DP26_2

Raspberry Pi2(AIY VOICE KITに収納)

OSはAIY projectのイメージをSDに焼いたもの(ベースはRaspbian Jessie)が入っているのでこのまま使います。
ここでも上と同様にapt-getでインストールを試みたのですが、printurnが見つからないと言ってきます(apt-getの使い方を良くわかっていないだけかもしれません)。そこでGithubからソースを取ってきました。
実行してみると3D表示はやはり遅くてダメですが2Dなら問題なく使えるレベルです。

それぞれのレビジョン確認

ここでPi1とPi2で微妙に画面表示が異なるのが気になり、レビジョンを確認したところ・・・

Pi1   :2015.03.10
Pi2   :1.6.0

なんかレビジョン番号の付け方から異なっていて、どっちが新しいのか分かりません(当然GitHubから取ってきた1.6.0が最新だとは思いますが)。

もう一度Pi1に戻って最新版Pronterfaceをインストール

そこで再びPi1に戻って1.6.0をインストールしてみました。すると結構速度は改善されている様です。当然Pi2には負けますがなんとか使えるレベルだと思います。

(ここら辺の「使えるレベル」とか「遅い」とかは全て私の主観です。念の為。)

・・・という事で

Pi1で行こうかと考えながらも、ラズパイがつながるモニターはメインPCのしか持ってないんですよね。結局、RAMPSに液晶ディスプレイとSDカードを付ければそれでもいいかなとも思って揺れています。

RepRapのSenderって・・・

ところでPronterface等のSenderソフトって何をやっているんでしょう?想像では単にファイルからGコードを読んでArduionoに向けてシリアル送信するだけで、いくら古いラズパイだからってそんなに重い処理ではない様な気がします。実際Teratermでプリンターに接続し、’G0X10Y10F300′とか打ち込んでやるとその通りに動作します(エコーバックがないのでローカルエコーをONにし、改行コードを’LF’にしておく必要あり)。

Senderの動作としてとりあえず次のあたりが疑問です。

  • ロードとはどこにロードするのか?
    RAM上?
  • プリント中のフロー制御。
    プリンターの動作にどうやって同期しているのか?Arduinoとの接続では恐らくハードウェアフロー制御はできないと思っているので、Xon/Xoffなのか、または別の方法なのか?

という事でpronsoleのソースを眺めています(Pythonの経験値が低いので苦労しながら)。わかったら報告します。

3Dプリンタ2号機~その5~

前回までで大体上手く動作する様になり、精度も1号機より上がった感があるのですが、一層目のベッドへの貼り付きが今ひとつなのです。

これはフィラメントの違いもありそうな気がします。1号機で使っていたフィラメントを丁度使い果たしたので2号機は最初から新たなフィラメントを使っています。

3DP25_1

1号機。
貧乏性なので最後のギリギリまで、スペーサーなんかをプリントして使い切りました。

以前のフィラメントも十分安物だったのですが、あれから何年か経っているので新しいものは性能が上がっているだろうと勝手に期待し、またもや安物を買いました(Amazonで¥2290-/1Kgの韓国製です)。
でも貼り付き性に加え収縮率も大きい気がします。
・・と言いつつ、プリンタとフィラメントを同時に変えてしまったので実はどちらが原因なのか切り分けが出来ていません(こういう事態も頭をよぎったのに、つい前のを使い切ってしまった・・・)。

・・・という事で少しでも貼り付きを良くする為、ベッドの水平度調整を厳密にすべくオートレベリングを試してみることにします。世の中から何周も遅れた感がありますが、今までは手動で調整していたのです。

オートレベリングの構想

ネットで見ると皆さんオートレベリングのプローブには色々なタイプのセンサーを使われている様です。大別するとリミットスイッチ等の接触式と、近接センサーを使った非接触式に分かれる様です。 リミットスイッチ自体はシンプルなのですがレベル検出時にはノズルよりも下に配置し、プリント時には造形物に当たらない位置まで上げておく必要があり、サーボ、ソレノイド、手動などで移動させる必要があります。この点、近接センサーだとプローブ先端よりも高い位置に固定しておけますが、手元にはリミットスイッチしかないのでこれでやってみる事にしました。またサーボを取付けるのも面倒なのでまずは手動での着脱式でやってみます。

という事で次の様にしたいと思います・・・

  • 調整したくなった時だけプローブを取付けてレベル検出を行う。
  • 普段のプリント時は過去に取得した検出値を使ってレベル補正を行う。
  • 全体の高さ調整は今まで通りZ-MINのEND-STOPスイッチで行う。
オートレベリングを使った時の動きがよくわかっていないので調べながら進めていきました。特にEND-STOPの検出レべルとプローブの検出レベルとの関係とか。。
実際は色々と試行錯誤があったのですが以下そのあたりは省略して結果だけ書きます。

プローブ

何はともあれプローブを作成する必要があります。といっても下の写真の通り、DCプラグにリミットスイッチを取り付けただけです(DCプラグは差し込んだ状態で揺らすと若干ブレるので、3.5mmのイヤホンプラグを使った方が良かったと思います)。
3DP25_2

着脱式プローブ

ヘッド側には図の様にDCジャックを取付けておきます。

3DP25_3

プリントヘッド側

そしてレベル出しをする時だけプローブを差し込み、レベル出しが終わったらプローブを引っこ抜きます(抜き忘れてプリントするとベッドにぶつかるので要注意)。

3DP25_4

プローブ取付け

リミットスイッチには電極が三つありますが、普段は導通しベッドに接触すると切断状態となる配線にしています。これはENDSTOPスイッチや非常停止スイッチで停止位置を取りこぼさない為の鉄則です。この配線をArduinoMegaの19番端子(本来はZ-Max-ENDSTOPにつながる)に接続しました。

Marinの設定

設定はMarlinのConfiguration.hを次の様に変更します。

#define Z_MIN_PROBE_ENDSTOP  ←コメントだったのを外す(なんか判りにくいのですがZMINとは別の端子にプローブ信号を接続する場合にはこれを宣言する様です)。
#define Z_MIN_PROBE_PIN 19  ←19pinである事を指定するため追加。

 

なおスイッチの動作は’M119′コマンドで確認できます。

>>> M119
SENDING:M119
Reporting endstop status
x_min: open
y_min: open
z_min: open
z_probe: TRIGGERED  ←プローブが接触した時
>>> M119
SENDING:M119
Reporting endstop status
x_min: open
y_min: open
z_min: open
z_probe: open  ←プローブが空中にある時

 

次にプローブの取り付け方の設定です。サーボやソレノイドで出し入れする場合の設定や、よくわからない設定もありますが、今回は手動なので恐らく’FIX_MOUNTED_PROBE’を選択すればよいと思います。

#define FIX_MOUNTED_PROBE
またプローブ位置はノズルと全く同じ位置にはできないので何mmかはズレており、この差を設定します。2号機プリンタはノズルに対しプローブが右に12mm,奥に34mmの位置にあるので以下の様に設定しました。
#define X_PROBE_OFFSET_FROM_EXTRUDER 12
#define Y_PROBE_OFFSET_FROM_EXTRUDER 34
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0

 

レベル補正の計算方法も色々とある様です。高さを3点測定して傾きを求める方法(これはベッドの歪みは無いものとして傾きだけを補正する)や、何ポイントか測定して歪みまで補正する方法、その他よくわからないのも。。。
今回は’AUTO_BED_LEVELING_BILINEAR’という方法を選んでみました。この方法は複数ポイント(デフォルトは格子状に9点)を測定し、何やら上手く計算して補正してくれます

次に9点の計測位置(の最大・最小値)を指定します。上にも書いた通り、プローブがノズルに対しX側に12mm,Y側に34mmずれた位置にあるのでこれよりも小さい値の位置では計測できません。とりあえず各1mmの余裕を見て13mm,35mmを最小値とし、最大値はそれぞれ170mmとして次の様に設定しました。

#define LEFT_PROBE_BED_POSITION 13
#define RIGHT_PROBE_BED_POSITION 170
#define FRONT_PROBE_BED_POSITION 35
#define BACK_PROBE_BED_POSITION 170

 

そして最後に計測したデータをEEPROMに書き込むための許可を与えておきます
毎回レベルを計測するなら不要かもしれませんが、当面は必要な時だけ計測してその値を使い続けるつもりなので測定値をEEPROMに保存する必要があるのです。

#define EEPROM_SETTINGS

 

ここまでの設定でコンパイルしてArduinoMegaに書き込みました。

レベル計測

全軸をHOMINGした後、プローブを取付けて’G29′コマンドを送ると9点の計測が始まります(簡単に書きましたが本当にプローブ位置で止まるか不安だったので電源スイッチに指を掛け、いつでも止めることができる態勢で実行しました)。

実行が終わると次の様な結果が出てきます。

0 1 2
0 +5.313 +5.491 +5.679
1 +5.309 +5.427 +5.623
2 +5.456 +5.518 +5.674

これが9点のベッド高さの測定結果です。Zのホーミング調整はベッドの中央付近で行なったので、この位置に近い中央の+5.427を基準に考えます。この値はZホーミングで得た位置を0としたとき、これよりも5.427mm上の位置でプローブが接触した事を示します。プローブはノズルよりも下に出っ張っているのでノズルがまだ浮いている(高い)位置でプローブが接触する訳です。

結果の反映

ここまででノズルとプローブの差が5.427mmと分かったので、この値を次のコマンドでMarlinに設定してやります。

M851 Z-5.427

M851命令で設定した補正値はG29実行時に計算されるので、この補正値が有効な状態でもう一度’G29′コマンドを実行すると次の結果となりました。

0 1 2
0 -0.088 +0.062 +0.282
1 -0.115 +0.015 +0.225
2 +0.037 +0.109 +0.257

M851で設定した補正値が測定結果に足され中央の値が0.015mmになっています(ピッタリ0mmでないのは恐らく測定誤差のためです)。

これらの測定値は’M500′コマンドでEEPROMに格納しておきます(上で設定した「#define EEPROM_SETTINGS」が無いと’M500′実行時にエラーが出る様なので要注意)。

プリント

あとは「M420 S1」を実行するとオートレベリングが有効になります。試しにジョギングさせてみると、X/Yの動作に合わせてZ軸モーターも僅かに回転するのが確認できます。

なお、このオートレベリング有効設定はホーミングを行うと解除される様なので、Gコード先頭のホーミング命令(G28)の後に「M420 S1」を追加する様にスライサーの設定を変更しました。

以上でオートレベリングの設定完了です。プリントしてみるとZ軸のモーターが常に細かく動いています。一層目のベッドへの貼り付きも良くなった(マシになった)気がします。

その後・・・

やっぱりベッドへの貼り付きがイマイチなので試しにプリントベッドをアルコールで拭いてみたら良くなった様です。今まではガラスクリーナーで拭いていたのですが今のところアルコールの方が良い結果になっています。
そうだとするとフィラメントにはあらぬ疑いをかけていた事になります。フィラメントさんごめんなさい。

3Dプリンタ2号機~その3~

引き続きZ軸を作成していきます。

このプリンターを作り始めた当初はまだレーザー加工機が無かったので殆どのパーツを3Dプリンター1号機で作成していました。でも今はレーザーが使えるので適材適所で組み合わせていきます。

まずモーターを取付ける台とカップリング。

3DP3_1

ダイソーの6mmMDFから切りだしました。

その他諸々のパーツ一式。

3DP3_2

Z軸用パーツ

例によってMakerSlideと組み合わせます。
この次に作るなら中華製リニアガイドも有りだと思いますが、今回のプリンタは途中までMakerSlideで作っていたのでこのまま行きます。

3DP3_3

Z軸機構一式

本体に取付けたところ。

3DP3_4

Z軸パーツ取付け。

次にプリントベッドです。
ヒートベッドが早く届いてほしかったので今回はAliexpressではなくAmazonに発注しましたが、マーケットプレイスってやつだったので結局2週間程度たってから中国から届きました。ところが右下のねじ穴部分が欠けています。

3DP3_5

右下のねじ穴部分が欠けています。

このまま使おうかとも思いましたが一応ショップにクレームを出すとすぐに正しい品を送ってくれるとの事。ダメな方は廃棄してくれという事ですが、正しい物が届くまではこれを使ってみます(その後壊れていない品が届きましたが・・・まだ最初に届いた方を使っています。まっ、そうゆう事です)。

で、プリントベッドを取り付けました。これで一気に3Dプリンタらしくなりました。

3DP3_6

プリントベッド装着。

現在テストプリント&調整中ですが、ベッド高さを調整中にノズルとぶつけてしまったらしく、いつの間にかガラスにヒビが入ってしまいました。どうしようかと考えながらも、そのまま使っています。

3DP3_7

あとはもう少し調整をしていきます。
また実はZ軸の造りがいい加減なのです。モーターと送りねじの間にあるカップリングは引っ張ると分離してしまうタイプなので、もし送りねじを上に引っ張ると抜けてしまう状態です。ここも改善し、更に電源や基板がバラック状態なのをキチンと固定していこうと思います。

3Dプリンタ2号機~その2~

前回の投稿後3年近く放ったらかしでしたが、正月明け頃から3Dプリンタ2号機の制作を再開しています。

まずは前回の写真・・・

3DP2

前回投稿した時の写真

 

そして現状。ぱっと見あまり変わっていませんがモーター、ベルト、エクストルーダが付きました。
3DP_2

 

ホットエンドは900円のを見つけて買っておいたのですが大丈夫でしょうか?
なおノズルは複数取付ける場所を準備しています(どうやって高さの調整をするかまでは考え付いていません)。

3DP2_3

コントローラは1号機で実績のあるArduinoMEGA256+RAMPS。とりあえずX/Yの移動ができるところまで来ました。

3DP2_4

ArduinoMEGA256+RAMPS1.4

続いてZ軸を製作中です。