diggan 1 day ago

That's so cool on so many levels, and I really enjoyed that indeed, now I have to fight the urge to try to build it myself, good thing it's weekend.

However, it does seem to miss the single most useful feature (for me) which is the resistance part. I understand there is a DC motor controlling the snap points and whatnot, but what I'd like is constant resistance I guess, to a configurable level, rather than snapping to specific points and such.

I don't think it would be possible to hack on top of the already made hardware, but didn't seem like it was already done in the software side of things, although I did skim through things so maybe I missed it.

1
pakue 1 day ago

Should be doable to add that. The BLDC needs to add a proportional (or any other function) force against the rotation direction until it reaches 0.

diggan 1 day ago

Sounds reasonable, wonder how that would actually feel in real life? As far as I understand, this would pass through digital parts, adding a little bit of (maybe noticeable) latency, but I wonder if the latency gets high enough for it to be a bit jarring that the resistance is dynamically changing as you apply torque.

camtarn 8 hours ago

In practice, when latency is small enough (on the ~1ms level, which is trivial to achieve using even pretty cheap parts) it's imperceptible.

I sometimes develop control loops for prototype systems which use a motor to emulate a combination of spring + friction damper, and even though I know that my code only runs every 1ms, it's really remarkable how much it feels like a real continuous analogue system.

Another good example is power steering, which uses a motor to remove resistance instead of add it. If I understand it correctly, it senses you applying torque to the steering column and adds proportional amounts of boost - but because it happens so fast, it just feels like the steering is magically lighter.

scottapotamas 1 day ago

This is all fairly normal in robotics, under a subset of (slightly overloaded naming sorry) “impedance control”