Replies: 2 comments 8 replies
-
Thanks for opening this. While additional methods are certainly worth discussing, the builtin So if it isn't doing that, that's a bug that we should fix, even aside from extra methods 🙂 (Naturally, this is aside from the actual gyro error accumulation compared to a compass, but you are already disregarding that, correct?) Separately from that, I would generally not recommend making 27 turns in the same direction, but I understand why you do it for this experiment. For absolute target control, you could in principle just do: robot.turn(target - robot.heading()) The tolerances are not related to this. They only come into play when |
Beta Was this translation helpful? Give feedback.
-
@laurensvalk Could you elaborate on the effect of using Coast / Brake / Hold with turns or curves and useGyro with respect to accumulating heading error. I have seen https://beta.pybricks.com/static/docs/v2.19.0/parameters/stop.html and do not fully grasp it. Also COAST_SMART is no option for Block Coding (maybe it should be?). If we have some point in the program where we align (on a wall or because line following is stable). What is your recommendation to make the following curves / turns as reliable as possible? |
Beta Was this translation helpful? Give feedback.
-
I know we have had several discussions on whether the DriveBase should exceute methods momentarily or on a global scale.
Coaching an FLL and a WRO teams working with robots that should perform consistently for 120-150 seconds I see a very nice value add to extend the current momentary execution logic to a global scale. Currently they need to find workarounds, including aligning to walls and objects, but I believe we have a better way to do this.
(OFDL WRO team Taiwan had a Global Yaw System posted somewhere in 2018?)
Current logic:
heading_control.target_tolerances()[1]
.heading_control.target_tolerances()[1]
My Suggestion
Workaround
Suggestion:
use_gyro()
e.g.use_global()
that accumulates and accounts all actions based on a global scale.Additional idea:
Further topics to consider:
straight()
should use ideal_heading to calculate directionDemonstration of the problem when using basic turns
Example code:
See also #1094 .
Beta Was this translation helpful? Give feedback.
All reactions