スピンドルスピードを実測するやつを作った。左から、実測・設定値・最大値 (プーリー設定によって変化)。再現性とか考えるとやはり実測回転数が必要。
回路
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をフォトリフレクタで受けるようにした。