WRO’s robots are quite “fast, ruthless and accurate”, so how to accurately control the robot is an important topic. Obviously, the built-in functions in EV3-G are far from enough for us to use.
So we have developed 5 movement blocks for the WRO Regular (Of course FLL、RCJ or any other competition can use it).
They are “PD Controller”, “Synchronous Movement Controller”, and “Acceleration-Deceleration Controller” 😍
Due to working at a lower level than my blocks, so the program is more fast and accurate.😁
How to use?
Example 1：PD Controller
Example 2：Acceleration-Deceleration Controller
Notice：Our Acceleration Controller using “non-linear” formula, basically fit quadratic function curve, faster growth-faster braking. (you can see the robot action in the video below).
Example 3：Synchronous Movement Controller
Example 4：Acceleration-Deceleration Controller x PD Controller
Example 5：Acceleration-Deceleration Controller x Synchronous Controller
OFDL Encoder Block and Raw Motor Block, because select motor port by block menu not through the drop-down parameter, so that action speed is more quickly.
And We use other way to reset encoder (soft-reset: record the encoder when encoder reset, and next time reading the encoder just subtract the current encoder from the last encoder reset value), so if you run our version reset block, the value reading by Lego encoder block or Port View is not reset.
This block and the Lego original Block are incompatible.
For more info about how to use those blocks, plz watch the video below.
．Add Optimized Green Motor block (opOutputSpeed)
Notice: Don’t put the config block in loop, it will make your program run slowly.