Difference between revisions of "Sbot Common Interface"

From IridiaWiki
Jump to navigationJump to search
Line 21: Line 21:
 
#Checkout common interface from repository
 
#Checkout common interface from repository
 
#*svn checkout svn+ssh://<your iridia username>@iridia.ulb.ac.be/usr/local/share/svn_repositories/sbotci
 
#*svn checkout svn+ssh://<your iridia username>@iridia.ulb.ac.be/usr/local/share/svn_repositories/sbotci
#Compile and run one of the example controllers on the real robot
+
#Compile one of the example controllers for the real robot
 
#*cd sbotci/real_sbot
 
#*cd sbotci/real_sbot
 
#*./build_scripts/build_support_libs.sh (build toolchain, sboteyelib etc)
 
#*./build_scripts/build_support_libs.sh (build toolchain, sboteyelib etc)
 
#*make controller=describe_circle
 
#*make controller=describe_circle
  +
#Copy binary to sbot and run it
#tools/sbot_file_copy/describe_circle <sbotnumber>
+
#*tools/sbot_file_copy/describe_circle <sbotnumber>
 
#*ssh root@sbot<sbotnumber>
 
#*ssh root@sbot<sbotnumber>
 
#*cd /tmp
 
#*cd /tmp

Revision as of 11:52, 28 March 2006

What is the common interface, and why should we use it?

Write Controller Once, instead of modifying for each platform.
  • Save time - no code rewrites. Maintain just one version of your code
  • When developing in simulation, you can do frequent reality checks on real robots.


Why common interface.png


Everyone shares a common build environment. We can stop reinventing the wheel.
  • All controllers stored in common repository. Can easily browse other people's code.
  • Share and jointly improve tools - eg. scripts for copying files to sbots
  • All extra libraries included in common interface - toolchain, sboteyelib etc.


Common Interface QuickStart

  1. Install subversion.
    • apt-get install subversion
  2. Checkout common interface from repository
    • svn checkout svn+ssh://<your iridia username>@iridia.ulb.ac.be/usr/local/share/svn_repositories/sbotci
  3. Compile one of the example controllers for the real robot
    • cd sbotci/real_sbot
    • ./build_scripts/build_support_libs.sh (build toolchain, sboteyelib etc)
    • make controller=describe_circle
  4. Copy binary to sbot and run it
    • tools/sbot_file_copy/describe_circle <sbotnumber>
    • ssh root@sbot<sbotnumber>
    • cd /tmp
    • ./describe_circle
  5. Compile twodee and run an example controller
    • cd twodee
    • ./bootstrap.sh
    • ./configure
    • make
    • ./twodee -e10003 --experiment-parameters controller=describe_circle