GEN II Robot Soccer EV3 Compass Training Curriculum Brian Thomas

Similar documents
Standard League Robot Soccer EV3 Compass Training Curriculum Brian Thomas

Simple Simon GEN II Robot Soccer EV3 -Tris 10 Training Curriculum

Standard League WRO Football Simple Simon EV3 Training Curriculum

Robot Activity: Programming the NXT 2.0

LEGO Engineering Conferences ROBOLAB and MINDSTORMS Education Version 4.5 March 2008

Rule 1 of Sumo club is we don t talk about sumo club!

World Robot Olympiad 2018

The NXT Generation. A complete learning solution

Rules Summary. RoboCupJunior Australia Simple Simon Soccer Rules Last Modified: February 21, Playing Field 2 2.

RoboCupJunior New Zealand GEN II Soccer Rules 2015

Rescue Rover. Robotics Unit Lesson 1. Overview

Technology. In the My Files [My Files] submenu you can store all the programs that you have made on the NXT or downloaded from your computer.

General Rules 2015 Season

1001ICT Introduction To Programming Lecture Notes

Beginner Category Tug of War 2v2

Rules - WRO GEN II Football

Line Following with RobotC Page 1

RoboCupJunior Soccer Rules 2009

Rule 0. Construction and programming of robots has to be performed exclusively by the students.

nvisti Kestrel Companion Pro For Android

World Robot Olympiad 2019

2014 National Robotics Competition - GEN II Football

Microsoft Windows Software Manual for FITstep Stream Version 4

World Robot Olympiad 2018

National Robotics Competition 2018 NRC WRO Challenge Manual

Software Manual for FITstep Pro Version 2

2013 National Robotics Competition - GEN II Football

1. Playing Field and Ball 1.1 Floor The playing field for the GEN II League is 122 cm by 183 cm. The field has white borders 30cm wide.

FLL Indonesia Category

Robot Soccer Challenge

Using the Lego NXT with Labview.

RoboCupJunior Soccer Rules for SuperTeams 2016

NATICK SOCCER CLUB - PRACTICE IDEAS

frequently asked questions

Mac Software Manual for FITstep Pro Version 2

Technology. Using Bluetooth

RoboCupJunior Soccer Rules for Big Field SuperTeams 2014

Building the Playing Style Concepts

Mapping a Magnetic Field. Evaluation copy. Figure 1: Detecting the magnetic field around a bar magnet

Chapter 13. ANTY: the robotic ant

1 P a g e GPISD STEaMposium 2.0 Lego Competition Handbook

Algorithm for Line Follower Robots to Follow Critical Paths with Minimum Number of Sensors

PART 5 - OPTIONS CONTENTS 5.1 SYSTEM EXPANSION 5-3

GHC 20. Owner s Manual

Copyright Velocomp LLP 2006

Coaching Players Ages 17 to Adult

Technology. In the My Files [My Files] submenu you can store all the programs that you have made on the NXT or downloaded from your computer.

Getting Started with the LabVIEW Toolkit for LEGO MINDSTORMS NXT

CONSUMER MODEL INSTALLATION GUIDE

Altimeter and Compass Watch Instruction Manual

Kestrel 5700 Elite. App Quick Start Guide

Quick Start Guide. A. Hardware installation B. Software installation C. Start the software for the first time D. Do your first measurement

RoboCupJunior Soccer Rules 2011

DT 630 ALTIMETER, BAROMETER AND COMPASS WATCH OPERATING INSTRUSTIONS

ARCCOS 360 NEW USER GUIDE

THE SOUNDBEAM 2 HANDBOOK PART 2 STEP BY STEP

Johnston - Urbandale Soccer Club U8. Coaching Curriculum

Weekly Practice Schedule:

RoboCupJunior Soccer - SuperTeams Rules 2018

USER GUIDE USER GUIDE

CONSOLE-320 ENGLISH. 230A: CONSOLE-320 with cable data output Item 230B: CONSOLE-320 with cable + wireless radio data output

Introduction WELCOME TO LEGO MINDSTORMS EDUCATION

Spring 2010 Coaching Sessions U14

Certified Accuracy. Ring Force Gauge. Models and Capacities Available. Design and Principle of Operation

New product release. Universal Rebreather Monitor (URBM) Single O2 cell and Dual HP package

FireHawk M7 Interface Module Software Instructions OPERATION AND INSTRUCTIONS

Natural Soccer User Guide

FOOTBALL WEST. Sports TG User Guide. Club Administrators

Computer Scorekeeping Procedures

Mission Statement. To deliver the highest standards of excellence in soccer development to everyone.

REACTOR 40 MECHANICAL Configuration Guide

[MYLAPS INTEGRATION]

OWNERS MANUAL FOR. Pro Challenger/Master Challenger Basic Game Instuctions HAPP CONTROLS

Sony Four Legged Robot Football League Rule Book

Copyright 2004 by the Thomas G. Faria Corporation, Uncasville CT No part of this publication may by reproduced in any form, in an electronic

LifeBeat should be worn during daytime as well as night time as it can record activity levels as well as sleep patterns.

Device overview. 6 Breathing circuit connection. Note: When the remote control foot pedal is connected, the manual switch is disabled.

Possession Playing Away From Pressure

Johnston - Urbandale Soccer Club U9-U10. Coaching Curriculum

Spartans FC Youth Section Skills Program

Regular Elementary Category Rocket

50 & Practices Volume One

DRILL MONITOR DM-100 OPERATIONS MANUAL

Contact with your suggestions for this chapter. Chapter1 Standard 4 v 4

SNOOKER SCORE BOARD. Snooker Scorer. Digital snooker score board. Operator & Reference Handbook

This document contains recommendations that may help teams be more successful in preparing for and participating in the FTC World Championship Event.

Rulebook Revision 2016 v1.0 Published September 18, 2015 Sponsored By

FUBA RULEBOOK VERSION

Thinking beyond the press

CYSA Coach s Training Guide

Fencing Time Version 4.3

NXT Robotics Techniques Workshop 2008

RoboCup Junior Australia Standard League Soccer Rules

U10 Soccer Program Stage 3: Learning to Train

Pegas 4000 MF Gas Mixer InstructionManual Columbus Instruments

Your web browser (Safari 7) is out of date. For more security, comfort and. the best experience on this site: Update your browser Ignore

Ranger Walking Initiation Stephanie Schneider 5/15/2012 Final Report for Cornell Ranger Research

GLOBAL PREMIER SOCCER

TACTICAL FOOTBALL GAME RULEBOOK fubatacticalfootballgame. Game design by Hannu Uusitalo

APPROACH CT10. Owner s Manual

Transcription:

GEN II Robot Soccer EV3 Compass Training Curriculum Brian Thomas RoboCup Junior Australia Inc Copyright 2015 1

GEN II EV3 Robot Soccer Training Overview Welcome! The aim of this curriculum is to guide you through a sequence of programming steps in order to allow a robot to compete in RoboCup Junior and WRO. Every attempt has been made to keep these steps simple and easy to attain. Consequently, modifications may be needed to program a more efficient robot for the competitions. You will find that GEN II is no harder than any other forms of Robot Soccer or other robot competitions. It is actually easier for beginners to enter and compete successfully in Soccer! They can then raise their expectations and skills as they progress. The GEN II field just adds a further dimension of control for the robots and programmers when they get to that stage. In short, it allows for advanced robots to have more control over where they are on the GEN II field. An added advantage is that the GEN II mat is very classroom friendly, you just have to roll it out and then start playing. The sequence of this Curriculum starts with programming for a Simple Simon Soccer Playing Robot. These instructions can be found at http://www.robocupjunior.org.au/tutorials.this will allow any robot to successfully play soccer on any field type. The controlling aspect of any robot soccer game is the ball. If the ball is on the field then so should the robots be, chasing it. It is important that students work through this curriculum sequentially. They need to understand the differences that may be required for their individual robots. Students have often gone straight to the more complex programming, become lost and then disillusioned. Students who work through the curriculum enjoy the success at each step, and carry with them knowledge that will eventually allow them to develop their own algorithms programs. Very few students complete this curriculum in a single year s preparation. They set their goals at a certain level and return the following year with their goal being the next level. This is usually with a different robot, so they need to reprogram anyway. This curriculum essentially deals with programming the striker robot. If you wish to have a goalie, the programming for a goalie is very easy after mastering the striker. You use the same principles, but limit the robots movement and for every forward command, have a reverse. Build a Riley Rover robot from http://www.damienkee.com/home/2011/8/20/domabotclassroom-robot-design.html or a Tommabot from http://www.robocupjunior.org.au/tutorials Add an infra red sensor and a bull bar and you are ready to go RoboCup Junior Australia Inc Copyright 2015 2

Further information can be obtained from our web site www.robocupjunior.org.au. NOTE ******* These notes use the Tris10 Findball IR sensor. If you are using a Hitechnic IRV2 sensor, it is easy to substitute the Hitechnic IRV2 block for the Ultrasonic Sensor block when you see it or Vice Versa. Any questions queries or comments, contact: b.thomas@ccg.vic.edu.au Please Note These training notes are the property of RoboCup Junior Australia Inc. All or part of these notes are not to be copied or used for commercial gain without the permission of the RoboCup Junior Australia Inc Committee. **LEGO, Mindstorms and EV3 are Registered Trademarks of the LEGO Corporation RoboCup Junior Australia Inc Copyright 2015 3

Compass 1: Ball Avoidance Overview You are now able to look for the ball and kick it. The only thing left is to make sure that you will kick it in the right direction. Therefore you must use your gyro sensor to make sure you are kicking in the right direction and not goals for the opposition. Before using the gyro sensor, you must devise tactics to avoid the ball when it is detected, but the robot is heading in the wrong direction. Ball The diagram above shows the desired path when the robot is kicking from right to left and is stuck on the wrong side of the ball. The robot must trace a path that takes it past the ball and quickly begin a scan that will have it approaching the ball from the right direction. 1. The robot senses the ball. 2. The robot checks its compass to see if it is kicking the right direction. 3. It finds it is on the wrong side of the ball. 4. The robot turns 90 degrees right. 5. The robot traces a circle approximately 50 cm in diameter. 6. The robot makes a short reverse to free it, if it has become stuck. Important! This is not easy, as the path varies from robot to robot and changes as battery levels change. RoboCup Junior Australia Inc Copyright 2015 4

Method Start with a new program A sample program can be seen below. It is good for the robot to play a sound so that you know it is in ball avoid mode. Start with the robot turning right for.3 sec at full power Then veer left for about 2 sec A quick reverse for.3 sec to free it if it is stuck. Load this program and repeatedly test it with the ball(turned off) starting at different distances between 20cm and 70cm from the ball. Experiment by changing the different times that the robot is supposed to turn and circle the ball The robot should just go past the ball without touching it and finish behind the ball. It takes time to perfect this, but it is important to persevere with it. RoboCup Junior Australia Inc Copyright 2015 5

Programming for the Compass Sensor: Student s Notes Overview This unit introduces a compass switch that will allow the robot to chase the ball if it is facing in the correct direction and use ball avoid if it is facing the opponents goal. This will allow your robot to be very competitive at the top level of RoboCup Junior. Using the Compass Sensor Make sure that you read all instructions before using the Hitechnic Compass Sensor. You will need to check whether you have the Hitechnic Compass sensor installed on your software. Click on the Yellow Sensor tab in the main EV3 program. The compass sensor icon should be at the right hand end of the pallette You may need to download the compass sensor icon from the Hitechnic web site. http://www.hitechnic.com/downloadnew.php?category=38 Follow all instructions closely and you should be able to find the new Compass Sensor Icon in your Yellow Palette now. Robot Setup The compass sensor can be plugged into sensor port 2 of the EV3. The ball sensor should be plugged into Sensor Port 1. The down light sensor should be plugged into Sensor Port 3. The down sensor is required to detect colours on the GEN II field. Students have found it is advantageous to have a means of manually zeroing the compass on the robot. They use a turntable that can be locked with a gear. RoboCup Junior Australia Inc Copyright 2015 6

A programming method of zeroing the compass is covered in a later unit in these notes. Remember to locate your compass as far away from motors and motor wires as possible, as these tend to create their own magnetic fields. The easiest way to zero your compass sensor is to: Go back to the main menu on the EV3. Click across to the control section of the EV3. You will find that Port View is the first option in this section. Click on this. Scroll across to Port 2. It should show the message 2: HT-CMP-DEG The reading will change from 0-360 as you rotate the robot. Hint: if you cannot get a change in readings when the compass is rotated, juts unplug and reinsert the compass lead. Start with your robot facing the direction that you want to kick. Turn the robot clockwise to face right angles to the goal. Rotate your compass on the robot until it is reading 0 degrees. You will now find that with your Compass Sensor icon, less than 180 degrees is the wrong direction. Greater than 180 degrees will be facing your goal. Your Goal 270 180 0 /360 90 Opponents Goal RoboCup Junior Australia Inc Copyright 2015 7

Method This unit will incorporate a Compass Sensor Switch with the Ball Avoid Block from the previous unit, and added to a Simple Soccer Player Program. This program, if run properly will allow you to be very competitive in RoboCup Junior or WRO competitions. Programming Program an Unlimited Loop along with a Switch inside of the loop. Set the switch to Logic. Insert the Compass sensor tile before the switch and set this to Measure-Absolute Heading and Sensor Port 2. Add a Compare Tile and set this to a Greater than 180. Wire these up to the Switch as shown. For the True Branch of the switch, put a forward for 1 second Motor tile in. this is the correct direction so the robot should chase the ball. For the False section, which occurs when the ball is in the wrong direction, copy and paste the Ball Avoid commands from the previous unit. Your times should be different to the ones shown Test this program extensively by placing the ball 20cm in front of you robot, in different directions, to make sure that it is working perfectly before putting it into the Simple Simon Program. RoboCup Junior Australia Inc Copyright 2015 8

Create a Simple Soccer Player program from earlier units. Make sure this is in tabbed view. Check that he robot should be able to scan and chase the ball consistently. The only time you can check the compass is when the ball is in front of the robot. This is when the IRV2 reading is 4, 5 or 6, or the Tris10 sensor is reading 3. These are the tabs where the robot is going straight ahead to chase the ball. Now simply copy and paste the Compass Switch into these tabs, without the loop, replacing the command where the robot is being told to go straight forward. Notes The ball avoidance will have to be varied for different robots so that they most efficiently avoid the ball. You may have to slow down the turning speeds as the compass may need time to catch up. Keep working with this program until you can recognise what the robot is doing in each part and you have it working perfectly. RoboCup Junior Australia Inc Copyright 2015 9

Super Soccer Player Overview You will by now have noticed that after the ball avoid, the robot rarely lines up directly in line with the goal. Goals are missed even though the robot has detected the ball directly in front of the goals. This program will tell the robot to continue to avoid the ball until it is directly in line with the goals. Similar to high performance cars, this is a high performance program is more susceptible to things going wrong. It is recommended that all of the simpler programs are mastered before attempting this program. The operator need to have solid experience beforehand to recognise problems and to trouble shoot them Method In the previous unit, the robot circles the ball for a set amount of time. Even though the robot will not kick own goals, there is no guarantee that it will finish in line with the goal it is kicking towards. If you can successfully refine the following program, you will find that the robot will definitely line up with the goals and score more often. Robot Set-up IR V2 sensor(ball) Port 1 Compass Sensor Port 2 Programming Start with the test program used to ball avoid in the previous unit Place a loop over the tile where the robot is circling the ball. Set the loop to logic and Loop Until True. Add another Compass Sensor Tile Add a compare tile. Set it to greater than 170 degrees. RoboCup Junior Australia Inc Copyright 2015 10

It is important that the robot does the ball avoid in a clockwise direction. If it does not do this, just reverse the direction of each of the motor controls. Test and retest this program to get it working perfectly. This should correspond to when the robot stops circling when it is facing directly across the field. This is also when the ball is also directly in line with the goal. The robot should then kick the ball into the goals. Now copy and paste this into the 4,5 and 6 tabs of the Hitechnic Sensor program or 3 tab of the Tris10 program. Extensions Zero your compass with the robot only aiming at 60 degrees to the right of the goals. That way your robot will be aiming more accurately at the goals. In this situation the first compass reading should now be Greater Than 240 degrees and when the robot is circling the ball it should stop at Greater Than 210 degrees. To really finnesse your robot s performance program it to circle right or circle left around the ball depending on which will be the shortest route. The new switch for this should be set at Greater Than the compass reading when the robot is facing directly at the opposition s goals. In this case it is at 120 degrees. Not easy, but it will make you competitive in any competition. If you find that the robot is stuck in a loop where it is turning backwards and forwards when it ball avoid, this occurs when the initial turn is through the 0-360 point. A timed turn back through this point, inserted before the loop will get the Ball Avoid working again. RoboCup Junior Australia Inc Copyright 2015 11

Have you found that the robot is detecting the ball and starting its ball avoid from too far away. Consequently it completes the ball avoid and it still has the ball in the direction of the opponent s goal. This means it has to repeat the whole Ball Avoid process again. You want your robot to start its ball avoid at the same distance from the ball. Test the following program using the Hitechnic Sensor Enhanced mode. Adjust the b value until the robot consistently stops 15-20cm from the ball. Copy and paste the contents of the loop into the compass check tab(3 for Ttris10 or 4,5,6 for IRV2) of you Super Soccer Program Now replace the Motor stop icon with the entire previous contents of the tab. Not easy, but worth doing. RoboCup Junior Australia Inc Copyright 2015 12

Automatic Compass Calibration Overview You have previously used a manual method to zero the compass. You can now permanently attach your compass to a place above the EV3. This unit will allow the robot to set the compass in the correct direction at the start of each game. Method The compass reading will be taken when the program is started. The robot just needs to be facing the direction that you wish to zero to. From here that amount will be subtracted from any reading that the compass takes. Of course there is a problem with the 0/360 spot on the compass. This is rectified by adding 360 when the calculation is less than zero. To start the robot playing Soccer, the touch sensor just needs to be pushed. This also serves the purpose of starting the robot immediately, without the lag associated with starting the EV3. You will find that this is a huge advantage in the game situation Robot Set-up IR V2 sensor(ball) Port 1 Compass Sensor Port 2 Touch Sensor Port 3 Programming An enlarged version of this program can be found on the next page. The first compass reading is saved in the variable suitcase This is set to Write. Click on the Variable Name Box. Click on Add variable. Call this variable Comp Start an Unlimited Loop. Take another compass reading and subtract the Variable Comp from this value to zero it. You must set the Variable Comp to Write to use it. The new Variable is set to Read and named CompZ. Now you must check that this reading is a positive value. If it is Greater Than Zero on the switch, it is not changed, but just called CompR If it is less than Zero, 360 is added to it and the resulting variable is called CompR CompR is then displayed on the screen, just to make sure that it is all working OK. Set the Display Icon to Wired by clicking on the box at the top right hand corner of the tile Now select text in the bottom left hand corner of the tile. You can now adjust the position and style of the display with the other settings RoboCup Junior Australia Inc Copyright 2015 13

RoboCup Junior Australia Inc Copyright 2015 14

Now, open up your working Soccer Player program. Copy and Paste the first two Read and Write tiles to the front of the Soccer Player program. Insert a Wait For Touch Sensor Pressed tile before the loop. Copy the following section from the Compass Zero program. Paste the Compass Zero section just before the first light reading of the Soccer Player Program. This will take a few attempts as the EV3 program does not like it. RoboCup Junior Australia Inc Copyright 2015 15

Replace each compass reading tile in the program following this, with the CompR variable, set to Read. Now you just need to aim your robot towards the zero position each time you start playing. Done!!! RoboCup Junior Australia Inc Copyright 2015 16