ペンプロッタの設定メモ

まだ装置は作成中だけど、いろいろ整理のためにメモする。

制御には以下を使う。grbl0.9ベースのためで、CNCシールドV3.0と組み合わせたいのが理由。
github.com

設定は以下。
$$ <
$0=10 (step pulse, usec)
$1=25 (step idle delay, msec)
$2=0 (step port invert mask:00000000)
$3=3 (dir port invert mask:00000011)
$4=0 (step enable invert, bool)
$5=1 (limit pins invert, bool)
$6=0 (probe pin invert, bool)
$10=3 (status report mask:00000011)
$11=0.010 (junction deviation, mm)
$12=0.002 (arc tolerance, mm)
$13=0 (report inches, bool)
$20=0 (soft limits, bool)
$21=1 (hard limits, bool)
$22=1 (homing cycle, bool)
$23=3 (homing dir invert mask:00000011)
$24=25.000 (homing feed, mm/min)
$25=500.000 (homing seek, mm/min)
$26=250 (homing debounce, msec)
$27=1.000 (homing pull-off, mm)
$100=1120.000 (x, step/mm)
$101=1120.000 (y, step/mm)
$102=250.000 (z, step/mm)
$110=500.000 (x max rate, mm/min)
$111=500.000 (y max rate, mm/min)
$112=500.000 (z max rate, mm/min)
$120=10.000 (x accel, mm/sec^2)
$121=10.000 (y accel, mm/sec^2)
$122=10.000 (z accel, mm/sec^2)
$130=200.000 (x max travel, mm)
$131=200.000 (y max travel, mm)
$132=200.000 (z max travel, mm)

特に明示的に変更しているのは下記の項目。

  • $3=3:座標系をXYともに反転したかったため設定
  • $5=1:リミットスイッチをノーマルクローズにしているため、反転させる。
  • $21=1:リミットスイッチを有効化
  • $22=1:ホーミングを有効化
  • $23=3:XY軸のホーミング方向は逆方向にしたいので設定(2進数ビットになっている)
  • $27=0.2:ホーミングプルオフ距離(ホーミングしたときにマイクロスイッチから離す距離)を0.2mmにしている
  • $100=1120.000:X軸方向のステップ数設定
  • $101=1120.000:Y軸方向のステップ数設定

$100、101が肝心のパラメータだが、HDDドライブのステッピングモータ仕様がわからないので実測と比較して設定した。
1/16のマイクロステップ設定としている。

$Hでホーミングしたあと、「G92X0Y0」を実行することでその座標をワーキング座標系での原点に出来る。

四角を書くサンプル:
m3s0
x2y0
x2y2
x0y2
x0y0
m3s255

# 0番目をマーク
m3s255
x0.12y0.07
m3s0
y0.33
m3s255
x0.15y0.37
m3s0
y0.03
m3s255
x0.2y0.01
m3s0
y0.39
m3s255
x0.25y0.37
m3s0
y0.03
m3s255
x0.28y0.07
m3s0
y0.33
m3s255
x0y0