FIRA HUROCUP ALL-ROUND
Challenges for Humanoid Robots in Simulation
To complete the task successfully
  • Take the time to install the program
    It may take several days to install the program to complete the task before finding out all the problems that prevent a successful installation.
  • Listen to 2 online consultations
    It is recommended to listen to 2 online consultations that will be held for participants.
  • Install the program in advance
    It is recommended to start the installation 5 days before the delivery of your work.
  • Set aside 2 hours to complete the task
    The estimated time to complete the task is 1-2 hours, if the program is successfully installed.
About the task
The task consists of 2 exercises that you need to perform by installing the simulator on your computer with the Windows operating system.
Competitions
  • 1
    Task 1. Sprint
    Select the parameters of the PD controller for the player who runs the sprint.
  • 2
    Task 2. Marathon
    Choose the parameters of the PD controller and the turning angle for a player who runs a marathon
Button to download the program
To complete the task, you need to download the installation package to your computer from the Internet at the following link and install it following the instructions in the installation program.
About the installation
If you have a Webots version other than version 2021b installed on your computer, then you need to uninstall it and then install Webots version 2021b.
  • Test run
    After installing the software package on your computer, you need to make a test run of the game by clicking on the file C:\Elsiros\worlds\FIRA_2023_sprint.wbt
    01
  • Loading
    After starting all the components of the game (you have to wait, sometimes it takes a few minutes to start, although if everything is in order, the robots usually start playing 1 minute after starting the game), the game itself begins.
    02
  • Help
    If the game does not start for more than 5 minutes, it is better to seek advice on the forum https://forum.elsiros.org / or in telegram
    https://t.me/starkitchat
    03
Task 1. Sprint
Detailed description of the competiton
To begin with, it is recommended to see how the sprint race takes place by running the program C:\Elsiros\worlds\FIRA_2023_sprint.wbt
  • 1
    Successful run
    The robot must run 3 m without deviating beyond the selected track width of 1 m. In case of successful completion of the distance, the message "distance was finished within timesteps:" and the number of steps of the simulator will be displayed
  • 2
    Unsuccessful run
    In case of an unsuccessful race, a message will be issued: 'distance was NOT finished due to failure '
  • 3
    Writing to a file
    These messages, in addition to being output to the console, are also written to a file:

    C:\Elsiros\controllers\FIRA_sprint\Sprint_log.txt
The goal of the task
Your task is to choose the step parameters so that the number of steps of the simulator is minimal.
Robot Gait
The robot uses steps in a straight forward direction, however, random disturbances of the simulator can lead to a deviation from the rectilinear direction.
  • Step parameter "rotation"
    To adjust the rotation at each step, an additional step parameter "rotation" is applied.

    If we want the robot to go to the right, then we need to set the "rotation" negative angle in radians.

    If we want the robot to go to the left, then we need to set the "rotation" positive angle in radians.
    01
  • Valid "heading" orientation
    At each step, the robot measures the actual "heading" orientation using the IMU. The direction in which the robot should move is assumed to be 0.

    If the robot deviates to the left, "heading" will show a positive value in radians.

    If the robot deviate to the right, "heading" will show a negative angle in radians.
    02
The program uses the following formula to correct the direction of movement:

rotation = 0 + heading * proportional + (heading - last_heading) * differential

Parameters of the motion direction correction formula:
  • 1
    heading
    heading is the current orientation measurement
  • 2
    last_heading
    last_heading is the orientation measurement in the previous step
  • 3
    proportional , differential
    proportional , differential - parameters for motion correction
You have to choose 2 parameters proportional, differential to correct the direction of movement
Changing parameters
Try not to change the formatting of the file in order to avoid problems with reading the file in the format .json
  • Opening a file
    To change the parameters, you need to open the following file using any text editor:
    C:\Elsiros\controllers\FIRA_TEAM\Init_params\Sprint_params.json
    01
  • New values
    In this file you can write new parameter values in float format
    For example: {"proportional": 2.0, "differential": -1.5}.
    02
  • New launch
    To get reliable results after each run of the simulator with the "Run in real-time" button, it is recommended to overload the simulator with the "Reload world" button
    03
The FIRA jury will run the sprinter with your parameters 3 times. The best result will be taken into account
Task 2. Marathon
Detailed description of the competition
To begin with, it is recommended to see how the marathon race takes place by running the program C:\Elsiros\worlds\FIRA_2023_marathon.wbt
  • 1
    Successful run
    The robot must pass counterclockwise along the circular corridor, which is bounded by circles with radii of 0.3 m and 1.3 m, from the starting position x = 0, y = -0.8. The race ends successfully if the robot has passed through the ring and entered the line from which it started. In case of successful completion of the distance, a message: "distance was finished within timesteps: " and the number of simulator steps will be shown
  • 2
    Unsuccessful run
    In case of an unsuccessful run, a message: 'distance was NOT finished due to failure ' will be shown
  • 3
    Writing to a file
    These messages, in addition to being output to the console, are also written to a file:

    C:\Elsiros\controllers\FIRA_marathon\Marathon_log.txt
The goal of the task
Your task is to choose the step parameters so that the number of steps of the simulator is minimal.
Robot Gait
The logic of choosing the direction of movement when moving around the ring
  • Motion correction formula
    The program uses the following formula to correct the direction of movement:
    rotation = direction + heading * proportional + (heading - last_heading) * differential
    01
  • Parameter "rotation_increment"
    At each next step, an increment is added to the direction:
    direction += rotation_increment
    The step parameter rotation_increment is an increment in radians to the target direction at each step in order to set the movement around the circle.
    02
Additional information
The radius of the inner boundary of the ring is 0.3 m, the radius of the outer boundary of the ring is 1.3 m. The average distance that the robot overcomes by completing one step is 53.6 mm
Changing parameters
Try not to change the formatting of the file in order to avoid problems with reading the file in the format .json
  • Opening a file
    To change the parameters, you need to open the following file using any text editor:
    C:\Elsiros\controllers\FIRA_TEAM\Init_params\Marathon_params.json
    01
  • New values
    In this file, you need to change the values for the parameters proportional, differential, rotation_increment
    02
  • New launch
    To get reliable results after each run of the simulator with the "Run in real-time" button, it is recommended to overload the simulator with the "Reload world" button
    03
The FIRA jury will run the marathon with your parameters 3 times. The best result will be taken into account
Sending results
Instructions for your solution
Sequence of actions
  • Required files
    From the folder
    C:\Elsiros\controllers\FIRA_TEAM\Init_params\
    You need to transfer the following files:

    Sprint_params.json

    Marathon_params.json
    01
  • Letter format
    The files must be sent by email: elsiros.russia@gmail.com

    The email message must indicate the name of the team and the type of competition "FIRA HuroCup All-Round"
    02
  • Feedback
    You should receive a response about the successful receipt of an email message.
    If you have not received such a message during the day, then you need to communicate with the jury via WhatsApp or Telegram:
    +79629713792
    03