-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A small lack of precision—a dynamic and/or configurable target height tolerance is necessary #7
Comments
Thanks for the feedback! Working out how often to send move commands from the speed sounds is a cool idea to experiment with. For now I have done as you suggested and added a I also added the additional height logging, does that achieve the goal of logging the actual final height? |
Thank you! The The logging during operation is good now however the final height logging is missing. Currently I have to call
As you can see the last reported height was 1075.4 but the final height is 1079.5 mm. Regards! |
In the I'm going to close this issue now but feel free to reopen if necessary. |
Hello!
For me, the default height tolerance results in overshooting by 8-18 mm. Sometimes it's performing a separate additional drive-up command after stop (e.g. raised to 1198 instead of 1080 mm; stopped around 1080 but then issued another raise command).
Perhaps the tolerance constant in the
has_reached_target
check should be configurable. I believe no single magic number will be good here as it depends on the drive speed and the drive speed depends on various factors such as the desk load (reportedly Idasen drive speed is two times slower when under a maximum specified load of around 70 kg for EU model) or the drive power.In my case, changing the constant from
20
to75
improved precision significantly—it's accurate up to 3 mm now (and consistenly within 1 mm in the most cases) instead of 8-18 mm for both lowering and raising the desk. By the way, the reported peak speed is 62.08 but I'm not sure if it's accurate (perhaps the script should measure the speed itself instead of trusting to the desk Bluetooth reporting?) as it takes 11 seconds to drive from 1080 to 670 mm in my case so the actual speed is around 37 mm/second (though it takes about two seconds to reach the max velocity so the peak speed is definitely higher). Anyway, here is my log after changing the height tolerance constant from20
to75
:I think for the best precision the height tolerance should depend on the actual desk speed. Plus additional configurable constant.
Additionally, I think logging for every height event would be useful. I've added a line to do this:
it should be right after these lines:
Also, it would be useful to log the final height after the height adjustment procedure completed so it's no longer necessary to call
python main.py
to get it.Regards!
The text was updated successfully, but these errors were encountered: