It is useful to run on your machine (locally) to develop and improve your program without having to wait for the challenge server to update scores.
🤖 Webots is the open source robot simulator we’ll be using! 🤖
Update July 29th: We confirm we’ll continue using Webots version R2021a
⚠️ Windows: Here is a direct quick link for download: webots-R2021a_setup.exe
⚠️
⚠️ Other platforms: Go to https://cyberbotics.com/#download to download your version. ⚠️
Double-click the downloaded file and follow instructions to install on your computer.
💻 We’ll be using Git to download and upload program code! 💻
We’ll be using Git written commands because they are much easier to copy, paste, and modify!! These commands are for you to introduce in a window called Terminal. We’ll highlight the word Terminal upon each appearance so you can click on it, to remember how to reach it.
⚠️ Windows: Here is a direct quick link for download: Git-2.32.0-64-bit.exe
⚠️
⚠️ Ubuntu: In a Terminal, type: sudo apt install git
(in this case, download+install is in same step) ⚠️
⚠️ Other platforms: Go to https://git-scm.com/downloads to download your version. ⚠️
Double-click the downloaded file and follow instructions to install on your computer.
From a Terminal:
git clone https://github.com/pal-admin/pal-webots-competition-organizer
🔝 This command should be written as a single line within your terminal (it’s a “one-liner”) 🔝
It will be convenient to create your Robot Controller from one of the GitHub Templates we have prepared.
⚠️ If you do not have a GitHub account, now is the best time to go to https://github.com and click on the Sign up
button at the top! ⚠️
⚠️ Once you have a GitHub account, now is the best time to go to https://github.com and log in via the Sign in
button at the top! If not, the next links will lead to a 404 error page. ⚠️
Think about which language of the following 3 options you prefer, and click on it (select only one):
You should see a screen similar to the following (click on the image to zoom), with some slight differences:
-cpp
ending (as displayed), for Python the ending will be -py
, for MATLAB the ending will be -m
.user-name
, you will see your signed in user name.Please proceed with the following steps:
participant_controller
. You should see the green check to the right appear as in the image.The command for this is slightly longer than the previous ones. It downloads your robot controller, and is designed to force it into where the robot controller is expected by the simulated enviroment.
From a Terminal (⚠️ in the following command replace user-name your signed in user name from above ⚠️):
git clone https://github.com/user-name/participant_controller pal-webots-competition-organizer/controllers/participant_controller
🔝 This command should be written as a single line within your terminal (it’s a “one-liner”) 🔝
From a Terminal:
webots pal-webots-competition-organizer/worlds/competition1.wbt
🔝 This command should be written as a single line within your terminal (it’s a “one-liner”) 🔝
🔝 Replace the 1 for any value up to 10 to test you robot controller in different worlds! 🔝
⚠️ If you created a C++ robot controller: You must first compile your code. Everything is performed within Webots. From the elements of the left (white background), double-click on DEF PARTICIPANT_ROBOT TiagoBase. Within the newly displayed elements within the same left (white background), click on controller “participant_controller”. Also on the left, you’ll have a new (grey background) zone below, within which you should click on Edit. Your robot controller code will be displayed on the right side (white background). Click on the gear-shaped icon at the top right (grey background), which compiles your code. 🎉 You can now press the Play icon at the top center (grey background)! 🎉 ⚠️
🎉 For Python and MATLAB robot controllers, your robot controller starts automagically! 🎉
Run the following commands in order, all from the same Terminal (all “one-liners”):
cd pal-webots-competition-organizer/controllers/participant_controller
git add -u
git commit -m "Any message here, but best if it describes improvements"
git push
⚠️ This step is only required to be performed once per robot controller! ⚠️
This is something the Organizers enable manually, but we require a tiny bit of information from you.
From the Terminal (all “one-liners”):
cd pal-webots-competition-organizer/controllers/participant_controller
git remote -v
You should see a string that is very similar to https://github.com/user-name/participant_controller
, where user-name
has been replaced with your own signed in name. Copy this string (unmodified, with your own signed in name) and paste it in an email to the organizers at: iros2021challenge@gmail.com
🙂 We understand some of these steps may be tricky! Feel free to contact us to the email stated above for specific enquiries! 🙂
🎉 Voilà! 🎉
PS: The 🏆 Scoreboard 🏆 gets updated every night!!