Implemented Hands-Off Protection logic#177
Implemented Hands-Off Protection logic#177meadhours wants to merge 1 commit intoUltrawipf:masterfrom
Conversation
|
I will have to test this. I am not sure if active dampening is the right approach for this. I am more on the side of passively cutting torque to limit acceleration for users who want that feature. As it is not a game controlled effect it probably makes more sense in the axis than in the effect calculator class as well and we already do have planned acceleration limiting there. In PR #168 this gets expanded and we are currently working on merging these functions so maybe it can be extended a bit by testing your approach as well. |
|
Of course, you can test it. If you find any problems, I'd appreciate it if you let me know. The speed limiter works to some extent for this task, but since it doesn't do exactly what I want, I felt the need to create something like this. Of course, this innovation can also be greatly improved. I'll be waiting for your feedback. |
|
While i appreciate the idea i can not get it to behave in a way that is better than just setting the already implemented speed limit. Yes the normal speed limiter does have some overshoot but it intentionally is not braking actively which this damper based version does. As an experiment could you try to set the axis limiter to something like 1000°/s and see if that works for what your intention is? |
|
Your concerns are valid, but I designed this as an optional feature, not a default setting. I assume you might be testing this in a Servo setup. I tested this on my Hoverboard motor and did not observe any irregular behavior or excessive noise. However, I can apply a filter to the input; this may yield better and smoother results for more powerful motors like yours. Regarding the speed limiter: I have actually been using the 1000°/s axis speed limit for quite some time. However, for some reason (probably due to the high inertia of my setup), this didn't meet my needs and didn't effectively stop the oscillations. There's a noticeable difference in feel/control that I can't quite describe, but active damping solved the problem. Since you're using a powerful servo motor, if you could give me some detailed instructions, it would be helpful for development. I'm curious about your suggestions and thoughts on the filter. |
I’ve implemented a new "Hands-Off Protection" feature for OpenFFBoard specifically designed to stabilize high-torque DD motors (like Hoverboard setups) and prevent death wobble without sacrificing drift responsiveness. The system uses a Conditional Active Damping algorithm in the firmware that monitors angular velocity in real-time; unlike standard damping, it remains 100% transparent during normal driving and only applies a precision floating-point counter-force when the wheel speed exceeds a user-defined threshold