|Please excuse me again to post the following write-up to the list. I'll use this as the handout in a few of FLL team meetings sponsored by schools and PTAs. I guess some other FLLers may be carious what I'll talk about in the meetings. So for the openness here it is -
Tips for achieving consistent results in FLL robot games
- Use a piece of clean cloth from soft t-shirt to dust off the Field Mat and Robot Tiers to keep the consistency of the mat and robot tier physical property (surface smoothness and friction of the contact area of the tiers and the surface)
- Never Hold Robot Tiers with Hands and when you absolutely have to carry the robot with hand such as move it from the carrying box onto the field mat, hold on non-tier part of the robot. Holding on the robot tiers may change the moisture-ness and sticky-ness of the tires and therefore may dramatically changes the friction between the tiers and the surface, the consequence is all pre-programmed turns will NOT do what they are expected!
- Use Wait Block (Time) for cancelling momentum and for Testing NXT Program Subsets. Insert a wait-on-time block after a move block even if it seems unnecessary at the time. Adding a wait-on-time block between the move blocks is a simple but very effective way to improve the consistency of the robot movement. With temporally increase the value in the wait-on-time block the robot will take a long pause before execute next block or you can terminate the program if you want to fine tune the movement executed so far before making adjustment on the remaining movement without breaking the block link. Therefore, the method can also be used for program diagnosis and fine tuning.
- Bump/Hug/Rub/Touch Walls and use walls for Robot Angling / Orientation. It is the most commonly used method to align and re-align the robot during the progress. One of the key elements is to use LEGO L-shape beams and rollers to build mechanical bumpers/aligners, which are not only provide the orientation alignment but also space (position) alignment for a particular mission execution. A combination of “bumping wall, driving away from wall a bit, and turning into wall with a move block on time” may provide a decent orientation resetting. Are there any other objects on the field that can be used for robot position/orientation alignment?
- Use sensors as many applicable places as possible! Checking black strips (lines) on the field mat with light sensors provide the most fundamental POSITION RESETTING method in FLL robot games. You may apply “a light sensor checks black strip edge” to a turning alignment under a suitable situation. Check distance with Ultrasonic Sensors whenever it is applicable.
- Turn on Sensors only when the robot is near the intended check point. Don’t turn on the light sensors or ultrasonic sensors when the robot is still relatively far away from the intended check point because that may introduces some unintended responses. Instead, use a move block on degrees to travel a estimated distance to close in first, then continue on with “move-block-unlimited with wait-on-light /distance-change-blocks”
- Use Level of Power properly. Observe the behaviors (moves and turns) of robot with the different level of the power percentage and select the optimum level. Always fully charge the robot battery – set a thread hold of your own standard for battery level stability – how about no lower than 7.5v?
- Calibrate or adjust Key Values on Different Tables. Recognize the variations that have no way to be completely eliminated (wall-to-wall distance on different tables, lighting condition, etc.), intentionally imbed or identify some blocks in the program that may need to be adjusted at the tournament. Once your table assignment is handed over to you at the tournament day and you are given a preliminary round opportunity, use it for calibrate your robot on the table within allowed the time – record the change of the value and go back the pit area to update your programs! Of cause the best way to deal with this is your robot design and your game execution plan will minimize the impact of the change of the environment to your mission executions!!!
- Apply move-block-on-time to preventing robot from “stuck” – cannot finish a block and move on. Remember that “The Time will pass and The Robot will move on! Don’t get stuck on walls, on models or even on the robot self if you improperly use move block on degrees!”
- Partition NXT Program by good resetting methods – review all methods mentioned so far.
- Use mission models for resetting the Positions and Orientations of Robot without hurting the models - keywords: power levels!
- Select execution plan wisely. If you have prepared two game plans with different attachments and programs – one shows elegance but requires precision of the movement, another looks blunt or even “less civil” (complaint to all rules) but allows more tolerant (margin of errors), which game plan that you will deploy to the competition round or rounds? And which one you might consider to show the judges in the Robot Design Interview?
- Other considerations and tips – dear coaches and mentors: please give your comments and tips to the community. Thanks.