Skip to content
Snippets Groups Projects
Commit c488d533 authored by Jake Read's avatar Jake Read
Browse files

add hardware notes, track new osape

parent e78a9f92
No related branches found
No related tags found
No related merge requests found
......@@ -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](https://en.wikipedia.org/wiki/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?
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment