2017年11月13日月曜日

End Stop

XYZ各軸にEnd Stopを付けました。
付ける場所は結構苦労しました。
X軸は普通に付ければよいのですが、
Y軸はテーブル前側にスィッチを押すバーを付加して対応。
Z軸はスイッチを基板からはずし、LEDの基板を上部に配置。

スイッチの確認はM119コマンドで行います。
通常0で、スイッチを押した時に1になるはず。

次に、Homing動作です。
パネルからホーミング動作を起動できます。
Homing時の動作順はデフォルトではXYZの順ですが、最初に工具が上に逃げた方が良いような気がするのでZXYの順で動作させました。

なお、alpha_limit_enableなどは常に有効というわけでは無いです。
xxx_limit_enableがTrueであればどちらかのリミットが入れば常に止まって欲しい気がしますが、Homing動作中はホームと逆側のリミットがOnになった場合でも動き続けてしまいます。つまりスイッチを逆に付けてしまうとガガガとなります・・・

Config.txt抜粋---------------
# Endstops
endstops_enable              true             # the endstop module is enabled by default and can be disabled here
#corexy_homing              false            # set to true if homing on a hbit or corexy
alpha_min_endstop          1.24^!            # add a ! to invert if endstop is NO connected to ground
alpha_max_endstop         1.25^!            # NOTE set to nc if this is not installed
alpha_homing_direction    home_to_min      # or set to home_to_max and set alpha_max
alpha_min                        0                # this gets loaded after homing when home_to_min is set
alpha_max                       230              # this gets loaded after homing when home_to_max is set
beta_min_endstop            1.26^!            #
beta_max_endstop           1.27^!            #
beta_homing_direction       home_to_min      #
beta_min                          0                #
beta_max                         160              #
gamma_min_endstop        1.28^!            #
gamma_max_endstop       1.29^!            #
gamma_homing_direction  home_to_min      #
gamma_min                      0                #
gamma_max                     50              #

# optional order in which axis will home, default is they all home at the same time,
# if this is set it will force each axis to home one at a time in the specified order
homing_order                   ZXY              # x axis followed by y then z last

# optional enable limit switches, actions will stop if any enabled limit switch is triggered
alpha_limit_enable           true            # set to true to enable X min and max limit switches
beta_limit_enable            true            # set to true to enable Y min and max limit switches
gamma_limit_enable        true            # set to true to enable Z min and max limit switches

alpha_fast_homing_rate_mm_s                  20               # feedrates in mm/second
beta_fast_homing_rate_mm_s                   20               # "
gamma_fast_homing_rate_mm_s                4                # "
alpha_slow_homing_rate_mm_s                  8               # "
beta_slow_homing_rate_mm_s                   8               # "
gamma_slow_homing_rate_mm_s              2                # "

alpha_homing_retract_mm                     5                # distance in mm
beta_homing_retract_mm                      5                # "
gamma_homing_retract_mm                 1                # "
------



2017年11月12日日曜日

パネル(12864LCD)

MKS SBaseには2種類のパネルが付けられますが、12864LCDの方を付けました。

 私の場合、素直に配線したのでは動きませんでした。
 Smothie本家ページをよく読むと、クローンの12864LCDでは、”コネクタが逆になっている場合がある”との記述が有り、確認するとしっかり逆でした。
 逆でも入るように、コネクタのキー用の切れ込みを入れて対応しました。

 良い点は、ロータリーエンコーダでジョグができることですね。移動単位を直に変えられないですが、PC無しの単体で動かせるのは助かります。
 悪い点は、液晶が見えずらい!相当旧式のLCDなので、コントラストが低いし視野角も狭い。パネルを傾けられるようにする必要がありました。

config.txt 抜粋 ーーーーーーーーーーーーーーーー
panel.lcd reprap_discount_glcd  #
panel.spi_channel 0       # spi channel to use ; GLCD EXP1 Pins 3,5 (MOSI, SCLK)
panel.spi_cs_pin 0.16      # spi chip select ; GLCD EXP1 Pin 4
panel.encoder_a_pin 3.26!^   # encoder pin ; GLCD EXP2 Pin 3
panel.encoder_b_pin 3.25!^   # encoder pin ; GLCD EXP2 Pin 5
panel.click_button_pin 1.30!^  # click button ; GLCD EXP1 Pin 2
panel.buzz_pin 1.31       # pin for buzzer ; GLCD EXP1 Pin 1
panel.external_sd true      # set to true if there is an extrernal sdcard on the panel
panel.external_sd.spi_channel 1 # set spi channel the sdcard is on
panel.external_sd.spi_cs_pin 0.28 # set spi chip select for the sdcard (or any spare pin)
panel.external_sd.sdcd_pin 0.27!^ # sd detect signal (set to nc if no sdcard detect) (or any spare pin)
ーーーーーーーー


MKS SBase(Smoothieboardもどき)

付属していた制御基板は軸毎のリミットスイッチを区別できないなどのため、
CNC2417の制御基板をMKS SBase Ver1.3に変更しました。
MPUはLPC1768 96MHzと余裕の処理能力が売りの基板です。
ただ、基本3Dプリンタ用で(日本では?)結構マイナー、少し古いなどのせいか情報が少なく苦労することに><


 まず、PCとの接続です。
 MKSのホームページからドライバをダウンロードできるのですが、Smoothie本家をよく読むと、”Windows 10ではドライバは要らない、入れるとうまく接続できない”と書いてあります。結局、ファームウェアとconfig.txtを入れたマイクロSDを挿して接続後電源をいれるだけです。
 PCとの接続はボードが正しく起動していることが必要で、基板上のLED D7,D2,D1が点灯、D3,D4が点滅であれば正常と思われます。config.txtの内容によってはこの状態にならないようで、正しい記述を確認し不要の行をコメントアウトした方が良いと思われます。

#ややこしいことに、MKS Base V1.5というのも有りますが、これは別シリーズです。
Smoothieもどきなのは MKS SBase。

CNC2417

だいぶ迷ったのですが、結局中華CNCを購入してしまいました。
機種はCNC2417。送料別で$150以下の低価格品ですが、どこまで使えるか・・・

リミットが効いていない機械を動かす気はしないので、すでに結構手が入っています。