2018年9月29日土曜日

3Dプリンタ その14(Firmware v1.1.4 Update)

Geeetech I3 Pro B(Rev.A+)の1回目のFirmware Updateを
その09で行いました。
購入時のFirmwareは、V.1.0.04
Geeetech ForumのここのFirmwareに書き換えたのですが
V.1.0.2と表示され、Downdateか?と思ったのですが、
Repetier-HostからEEPROM Configurationが変更可能になったので、
V.1.0.20に上がっているようです。
無事、オートベッドレベリングもできるようになりました。
所が、最初、3D Touch Sensorの調子は、良かったのですが
その後、左に行く程、1stレイヤーが高くて乗り悪かったり、
1~2レイヤーでSensorのピンが下がるし(これは最初からかな)
3D Touch Sensorの調子が変なのです。

Touch Sensor自体が悪いかもしれませんが
既にMarlin Firmwareは、Ver.1.1.9まで来ていることだし
まずは、Firmwareを更にUpdateしてみることにします。

その前に、レイヤーファンノズルの送風口が折れてしまったので外して、
というか、この取付具だと3D Touch Sensorの位置が標準ではないので
Firmwareのソースを変更しないといけないのです。
で、ソースの変更不要な、ここのGeeetech推奨のノズルなしの取付具を
この時にプリントしていたので
交換しました。
探しているとGitHubのここ
「Marlin 1.1.x firmware configured for Ramps 1.4
  + 3D Touch sensor on Geeetech Prusa i3 Pro」
ってのがありました。
Geeetech i3 Pro用にConfigration.hファイルの調整済
・Ramps 1.4 board
・Arduino Mega 2560
・3D Touch Sensor (using Z-min endstop and Servo0 pins)
と書いてあるので使えるだろうと、
ダウンロードして解凍して
Arduino IDE Ver.1.8.3で読み込みます。
無事、書込完了しました!
もう、煩わしいArduino IDE Ver.1.0.1は、使わなくて良くなっています。
が、LCDが完全に文字化けしています。
RESETして再起動してもダメです。
よーくサイトを見直すと「I3 Pro」用でした。
「I3 Pro B」には、使えないようです。

次に見つけたのは、GeeetechサイトのここからOlimatou氏の編集版、
「Marlin 1.1.4 With 3DTouch / BLTouch for i3 Pro B」です。
「Marlin-1.1.x.rar」をダウンロードします。
解凍して、Arduino IDE 1.8.3で「marlin.ino」を読み込んで、
この設定にして
書き込み開始!
コンパイルが終わって「Writing」に突入!
さっきLCD異常だったので、ここは、緊張しますね~
無事終わりました!
今度は、LCD表示は正常に起動しました!
RESETすると起動時に [Marlin 1.1.4]とでます!
起動時間が、前よりも少々長くなっています。
まあ、Update成功です。
Repetier-Host V.1.6.0を起動してPrinter Informationを出すも
バージョン番号が何もなしです。ちと寂しい~
Repetier-HostからConnectする時のログをみると
「Marlin 1.1.4」ってあります。
*****
13:58:34.299 : Printer reset detected - initalizing

13:58:34.299 : Marlin 1.1.4
13:58:34.299 : echo: Last Updated: 2017-07-04 12:00 | Author: (Olivier H.,GTECH I3 Pro B)

13:58:40.339 : FIRMWARE_NAME:Marlin 1.1.4 (Github) SOURCE_CODE_URL:https://github.com/Ultimaker/Marlin PROTOCOL_VERSION:1.0 MACHINE_TYPE:Pi3 Pro B EXTRUDER_COUNT:1 

*****

で、Manual Controlで移動させてみると、Z軸の移動量が大きいです。
Repetier-HostからEEPROM Settingsを見ると
赤枠部が、Update前と変わっています。
組み立てて初動の時と同じ状況です。
Update前のこの値と同じにして[Save to EEPROM]します。
G28(Homing)とG29(Auto Lebering)してみます。
正常に動作しました!

さて、3D Touch Sensorのキャリブレーションをしてみます。
この時Updateした、以前のFirmwareでは「M851 Z0」でErrorがでたので
Firmware「Configuration.h」この行を変更していました。
***「#define Z_PROBE_OFFSET_RANGE_MAX -5」***
変更せずに「M851 Z0」を送ってみます。
おっ!「echo: Z Offset 0.00」が返ってきました!
大丈夫です。
ソースを調べてみると、こうなっていました。
ちょっと、ここまで範囲を広げなくても、って気もしますが...
****
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20
#define Z_PROBE_OFFSET_RANGE_MAX 20
****

で、キャリブレーションをやってみると
前のバージョンからバグが取れて、マニュアル通りにできるようなっています。
Geeetech wikiのWeb版マニュアルは、
I3 Pro B Rev A+用ではないと思っていたら、Firmwareが古かったんですね~
バージョンを記載してあれば...です。
マニュアルの手順取りにRepetier-HostとLCDで行ってみます。

1.M851 ; note the number
 ***echo***
  echo:Z Offset : 0.00
 ***
2.M851 Z0 ; set the offset to zero
 ***echo***
  echo:Z Offset 0.00
 ***
3.G28
 ⇒ Homingが実施され、XY原点がセットされた後、
   ステージ中央付近で、SensorがONになる高さ+10mmで停止
 ***echo***
  echo:busy: processing
  X:104.00 Y:139.00 Z:10.00 E:0.00 Count X:8320 Y:11120 Z:4000
 ***
4.G1 Z0
 ⇒ Z0に移動。LCD表示 Z:0、echoなし
5.LCDメニューから操作してZを下げる
 [Prepare]-[Move axis]-[0.1mm]-[Move Z]で下げる
 お~っ!下がります。
 しかもLCDパネルのノブの反応も鈍くしてあります。
 Repetier-Host v1.6.0の表示は変化せず、下げダメ、上げのみ。
 で、ノズルの下の紙が動かなくなる所まで下げます。
 LCDで-0.7mmでした。
6.M851 Z-0.7(Z-Offset設定)
 ***echo***
  echo:Z Offset -0.70
 ***
7.M500(設定保存)
 ***echo***
  echo:Settings Stored (465 bytes; crc 24061)
 ***
但し、この時点でLCDとRepetier-Hostの表示が一致していません。
8.RESET(これはマニュアルになし)
 Disconnectして再Connectすると、RESETがかかります。
 これで、3D Touch SensorのZ-PROBE OFFSET調整完了です。

調整手順をまとめると
<Z-PROBE OFFSET調整 at Firmware Ver.1.1.4
<Repetier-Host v2.1.3 or v1.6.0)>
1.[]内のコマンド発行
 1)[M851]
 2)[M851 Z0
 3)[G28]
  この時、LCD表示[Z 10]、Repetier-Host表示[Z 10.00]
 4)[G1 Z0
  Z軸が、Z0まで下がります。
  この時、LCD表示[Z 0]、Repetier-Host表示[Z 0.00]
2. ここでノズルの下に薄紙を敷きます。
 LCDメニューから操作してZを下げる
 [Prepare]-[Move axis]-[0.1mm]-[Move Z]で下げる
 LCDメニューからしか下げることはできません。
 Z -0.7 になったとすると
 0.7mm が、Sensor Touch位置とノズルの距離になります。
3.[M851 Z-0.7
4.[M500]  で設定保存します。
 この時、LCD表示[Z -0.69]、Repetier-Host表示[Z 0.00]
5.Disconnectして再Connect(RESETされます)
 No.3でLCDで下げると、一旦RESETしないと、次で表示が揃いません。
6.[G28]すると Z:10.7で終了し、表示が合います。
 この時、LCD表示[Z 10.7]、Repetier-Host表示[Z 10.70]


0.01mm精度で設定したい場合
<Repetier-Host v2.1.3 or v1.6.0)>
1.[]内のコマンド発行
 1)[M851]
 2)[M851 Z-2
 3)[G28]
  この時、LCD表示[Z 12]、Repetier-Host表示[Z 12.00]
  Ver.1.1.4でバグが治って、表示は同じになっています。
 4)[G1 Z2
  Z軸が、表示 Z2 の位置に下がります。
  この時、LCD表示[Z 2]、Repetier-Host表示[Z 2.00]
2. ここでノズルの下に薄紙を敷きます。
 Reppetier-HostのZ軸ジョグボタン0.1mmや0.01mmで下げて
 紙を動かせなくなる位置で止めます。
 ・Repetier-Host Z:2 ⇒ 1.35 になったとすると
 1.35 - 2 = -0.65    ( 少数点2位までOK )
 が、Sensor Touch位置とノズルの距離になります。
3.[M851 Z-0.65]  ( 符号「-」を忘れずに )
4.[M500]  で設定保存します。(RESET不要)
5.[G28]すると Z:10.65で停止して終了します。
 この時、LCD表示[Z 10.65]、Repetier-Host表示[Z 10.65]

更にFirmwareのVersionを上げようかと思いましたが
Ver.1.1.4があったOlimatou氏のサイトには、
3D Touch Sensor(BL Touch)の調整方法や
オートベッドレベリング調整するTOOLソフトの情報があるので
それを先にやることにします。
次の投稿にて!

0 件のコメント: