Commit c488d533 authored by Jake Read's avatar Jake Read
Browse files

add hardware notes, track new osape

parent e78a9f92
......@@ -9,6 +9,18 @@ These are stepper drivers! They run:
- 1x AS5147 if you want to get closed-loop-fancy
- RS485 input and 40W 24V into one 10-pin IDC
To build one w/ a motor, for closed loop stepping, I do:
- N17 Motor 17HS19-2004S1
- IDC, Plug, 2x15 609-5106-ND
- IDC, Plug, 2x5 609-1746-ND
- Magnet 469-1076-ND
- Spacer 6mm Tall 94669A101
- M3 SHCS 50mm 91292A026
- DIP Switch 219-8LPSTRF
- 2x5 Latching 732-2679-ND
- Two Part Epoxy
The hardware is set up to run on the 'UCBus', a synchronous embedded protocol that establishes a bus clock *and* data lines on one RS485/UART Phy. Details are not documented anywhere ATM, but it w o r k s.
## Closed Loop
Subproject commit 763c64b623c30fa245ddecc45ac03d1c1c8f5b17
Subproject commit 41c6b76ffb321c0e596fac7034c5c45353a6514a
Subproject commit 7bbcbf8d8364d9beaf501d1acf6b34a77e4086f3
Subproject commit c940ac7425b5d544590caeeca4b49ce95b16ec76
......@@ -14,8 +14,28 @@ With 2x A4950s on the DAC, AS5047P on the encoder, etc.
## Likely Improvements
- encoder value filtering is a PITA, see note from 2021-02-17 about filtering and time constant. change loop structure so that we (1) sample the encoder as fast as possible, always, maybe 50kHz, and then (2) filter that with a heavier first exponential filter (keeping some small time constant as a target), and (3) run the actual control loop with this filtered value
- use a rejection term instead of this filter... if delX > 200 encoder ticks, just use last...
- bring phase advance back
- even better, run an [alpha beta filter]( underneath the control loop, as fast as possible, always.
## Writing the Paper
- holding torque open loop vs closed loop: given disturbance, the open loop motor probably shows more real measured error than a well tuned closed loop controller
- total integral of motor output along the torque curve from 0->10kRPM,
- probably finding resonant dips in open loop,
- maybe extending operating range in the closed loop (more RPM)
Paper List
- microsteps are not real, and we can measure this i.e. with zach's setup:
- closed loop would eliminate microsteps
- wider torque band: potentially higher RPM
- low end torque / torque density: should robotics industry be using BLDCs 3-phase or BLDCs bipolar stepper?
- saturation: we can drive higher peak torque into i.e. N17 when we do closed loop control, offering potentially higher performance overall than open loop fixed-current control
- efficiency: open loop wastes energy, always dissipating
- just gathering motor data:
- torque curve, that includes efficiency - for both approaches
- closed loop can actually hold position better: open loop will only apply best torque when the rotor has deviated from stator's static field by 90degs phase, cl can react
## Evaluation
- static holding, watch encoder wobble when torque applied (can see ticks moving around even w/o motor torque being overcome), measure again with closed loop: can we hold *better* than static pointing?
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment