スピンドルスピードを実測するやつを作った。左から、実測・設定値・最大値 (プーリー設定によって変化)。再現性とか考えるとやはり実測回転数が必要。

回路



PCB Milling でさくっと実装

R3 が感度を決めているが、これは一旦可変抵抗をつけて調整してから、調整済みの抵抗値を実測し、チップ抵抗に換装する方法にした。可変抵抗そのままつけたほうがいいけど小さくしたかったので

Fusion360 で治具作成

3D プリンタで出力。単に非接触で固定するだけなので、締結は M2。

テスト

ベンチトップオシロと離れててプローブが届かないのでバッテリ式のオシロで確認。

Machinekit config

# hal

# spindle encoder
setp hpg.encoder.00.chan.00.scale 1
setp hpg.encoder.00.chan.00.counter-mode 1
setp hpg.encoder.00.chan.00.A-pin 7
# postgui.hal

setp scale.2.gain 60
setp lowpass.0.gain 0.010000
net spindle-velocity => lowpass.0.in
net spindle-fb-filtered-rps      lowpass.0.out  => abs.0.in
net spindle-fb-filtered-abs-rps  abs.0.out      => scale.2.in
net spindle-fb-filtered-abs-rpm  scale.2.out    => pyvcp.spindle-speed

1pulse/rev なので scale は 1 になる。4箇所ぐらいに反射テープ貼って4pulse/rev にしてもいいかもだけど

過去の試行

前は頑張って60pulse/revなエンコーダを作ろうとしていたけど、かなり面倒なので、単純に1pulse/revをフォトリフレクタで受けるようにした。

  1. トップ
  2. tech
  3. Sable-2015 + Machinekit (LinuxCNC) スピンドルスピード
▲ この日のエントリ