Replies: 2 comments 9 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.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
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