前回、マシントラブルで中断していた切削ですが、今回はいろいろと対策をして完走できましたのでその報告です。
dreamerdream.hateblo.jp
まず、古いESP32はUSB接続するも無反応のままなので諦めてFluidNCを新しいESP32に焼き直しました。
インストール方法はこちらの過去記事↓
dreamerdream.hateblo.jp
最終設定ファイルを備忘録として残します。
name: "ESP32 Dev Controller V4"
board: "ESP32 Dev Controller V4"
uart1:
txd_pin: gpio.1
rxd_pin: gpio.3
baud: 115200
mode: 8N1
stepping:
engine: RMT
idle_ms: 250
dir_delay_us: 1
pulse_us: 2
disable_delay_us: 0
axes:
shared_stepper_disable_pin: gpio.18:high
x:
steps_per_mm: 200
max_rate_mm_per_min: 300
acceleration_mm_per_sec2: 25
max_travel_mm: 300
homing:
cycle: 2
mpos_mm: 10
positive_direction: true
motor0:
limit_all_pin: gpio.5:low:pu
stepstick:
direction_pin: gpio.32
step_pin: gpio.33
motor1:
null_motor:
y:
steps_per_mm: 200
max_rate_mm_per_min: 300
acceleration_mm_per_sec2: 25
max_travel_mm: 300
homing:
cycle: 2
mpos_mm: 30
positive_direction: true
motor0:
limit_all_pin: gpio.17:low:pu
stepstick:
direction_pin: gpio.25
step_pin: gpio.26
motor1:
null_motor:
z:
steps_per_mm: 200
max_rate_mm_per_min: 300
acceleration_mm_per_sec2: 25
max_travel_mm: 50
homing:
cycle: 1
mpos_mm: 10
positive_direction: true
motor0:
limit_all_pin: gpio.16:low:pu
stepstick:
direction_pin: gpio.27
step_pin: gpio.14
motor1:
null_motor:
spi:
miso_pin: gpio.19
mosi_pin: gpio.22
sck_pin: gpio.21
sdcard:
cs_pin: gpio.23
card_detect_pin: NO_PIN
coolant:
flood_pin: gpio.2
mist_pin: gpio.4
control:
safety_door_pin: gpio.34:low
cycle_start_pin: gpio.35:low
probe:
pin: gpio.15:low:pu
PWM:
pwm_hz: 500
output_pin: gpio.13
enable_pin: gpio.12
direction_pin: NO_PIN
disable_with_s0: false
s0_with_disable: true
spinup_ms: 0
spindown_ms: 0
tool_num: 0
speed_map: 0=0% 100=100%
ESP32が故障した原因は定かではありませんが、ブラシモーターの整流子からのスパークノイズがすごいので(スマホを稼働中のモーターへ近づけると誤タップ作動が確認される)、もしかしたらすごいデカいノイズが電路を伝って故障してしまったのかもしれません。
対策として、モーターへコンデンサを追加し、さらにモーターの電力線と並走するコードをを全てアルミでシールドすることにしました。
そして、故障に至らずとも稀に切削が途中で止まってしまうという謎現象がありましたが、その要因が判明しました。
要因となるのはESP32のWi-Fi通信です。
Wi-Fi通信を行い、タブレットから状態を監視しながら切削をしていたのですが、しばらく端末を放置してスリープ状態になり、再度確認しようとタブレットを立ち上げるとマシンが停止してしまう。という事象に何度か遭遇しました。
どうやら切削中にWi-Fiの解除と再接続が行われると(ESP32はアクセスポイント設定)、接続が失敗した際に切削動作が停止してしまうようです。(一発で接続されれば素直に繋がるようです。)
対策としてWi-Fi接続を最小限に留めるという方法が有効です。
・Gコードによる切削を開始すると、端末は手動でWi-Fi接続を切っておく。
これで自動でWi-Fiに再接続されることがなくなります。
・状態確認をする際は、CNCの停止ボタンで一度切削作業を停止させてからWi-Fiを再度接続、無事に接続出来てから切削再開する。
緊急停止スイッチはこちらの過去記事で付けています↓
dreamerdream.hateblo.jp
絶対にWi-Fi接続が解除されない環境、或いはUSB経由でGコードを送る仕様であれば上の対策は不要だと思われます。
僕の環境のようにタブレット端末からFluidNCをアクセスポイントとしてWi-Fi接続制御しようとすると意図しないタイミングでWi-Fiの再接続が起こり、途中でうんともすんとも言わなくなる可能性があります。
僕の環境だとあくまでWi-Fi接続制御はオマケ機能と考えておくほうが良いかもしれません。スタンドアロン駆動ができるだけでも素晴らしいことです!
初めて完走できた作品がこちら
うん。素晴らしい!
後は線を纏めたりするだけなので今回で「CNCマシンが作りたい」というタイトル記事は終了とします。
まとめ動画も作りました。
youtu.be
第1回記事はこちら↓
dreamerdream.hateblo.jp