Difference between revisions of "Footbot/Real robot information"
From IridiaWiki
Jump to navigationJump to searchCpinciroli (talk | contribs) (→USB) |
Manubrambi (talk | contribs) |
||
(41 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
+ | This page does not exist anymore. Please go to: |
||
− | = EPFL LSRO Wikipages = |
||
+ | http://iridia-dev.ulb.ac.be/projects/argos/trac/wiki/WikiStart#RealRobotInformation |
||
− | For updated info go to the EPFL wiki. |
||
− | http://wiki.epfl.ch/mobots-robots |
||
− | |||
− | = Connecting to a footbot = |
||
− | |||
− | Wifi uses wpasupplicant to connect to a WPA-PSK access point. You can use USB or Bluetooth to connect to the robot otherwise. Set the selector on the robot top to an even value for USB, and uneven to Bluetooth. |
||
− | |||
− | == USB == |
||
− | |||
− | $ sudo /sbin/ifconfig usb0 192.168.0.200 netmask 255.255.255.0 |
||
− | $ ssh root@footbot_usb |
||
− | |||
− | footbot_usb is aliased to ip 192.168.0.202 in /etc/hosts. |
||
− | In asebastudio, to connect use |
||
− | tcp:host=192.168.0.202;port=33333 |
||
− | |||
− | == Bluetooth == |
||
− | |||
− | In aseba, to connect use |
||
− | ser:device=/dev/marxbot2 |
||
− | |||
− | == Wifi == |
||
− | |||
− | Currently unstable, check LSRO wiki. |
||
− | |||
− | = Booting Algorithm = |
||
− | |||
− | Beware of the sudden movement of the robot as it's booting. NEVER put it on a table when testing. |
||
− | If Aseba connection doesn't work, try again without killing asebamedulla; otherwise, close Asebastudio, kill asebamedulla and reset the traslator and the pic. Rerun asebamedulla and try connecting. |
||
− | The command to run asebamedulla is the following: |
||
− | |||
− | $ asebamedulla --system "ser:device=/dev/ttymxc4;fc=hard;baud=921600" 2>&1 1>/dev/null & |
||
− | |||
− | If this does not work, try closing Asebastudio, killing asebamedulla and setting the selector to another even value (NOT an odd one!). Reset the pic and the translator, rerun asebamedulla and try |
||
− | connecting again. |
||
− | |||
− | = Battery = |
||
− | |||
− | * full battery = 4.2V |
||
− | * empty battery < 3.6V |
||
− | |||
− | The charger we have at Iridia damages the batteries. |
||
− | We were given 12 batteries; to limit the number of damaged batteries, 10 batteries, when empty, won't be recharged. |
||
− | Only two batteries will be recharged, . |
||
− | |||
− | = Sensors = |
||
− | |||
− | == Camera == |
||
− | |||
− | Cameras don't work at the same time; you can use them one by one. |
||
− | To select the camera to use, echo to file /sys/class/gpio/gpio28/value |
||
− | a value of 0 for the omnidirectional camera and 1 for the front one. |
||
− | |||
− | The camera module is mt9t031.ko. |
||
− | |||
− | If you get an error such as: |
||
− | |||
− | [FATAL] Cannot open /dev/video0: Input/output error |
||
− | |||
− | then try unbinding the driver and then binding it back. You do it this way: |
||
− | |||
− | echo 0-0 > /sys/bus/soc-camera/drivers/camera/unbind |
||
− | echo 0-0 > /sys/bus/soc-camera/drivers/camera/bind |
||
− | |||
− | For problems, the EPFL guy to ask is Valentin Longchamps <valentin.longchamps@epfl.ch>. |
||
− | |||
− | = Actuators = |
||
− | |||
− | == Turret Rotation == |
||
− | |||
− | At boot, the robot sets the 0 position of the turret. To avoid damaging the robot or having funny values, always put the gripper back in the 0 position and then switch the robot on. It can be done also when the robot is on already: set the variable 'rev.pid.enable' to 0 and rotate the turret back to its position. Then select 'Tools->Reboot->Griper-led' and the new 0 position will be set. |
||
− | |||
− | = Framework = |
||
− | |||
− | == Compiling ARGoS for the real robot == |
||
− | |||
− | Download and install the toolchain from http://wiki.epfl.ch/mobots-robots/toolchain . It is recommended to install it system-wide because it hasn't been tested otherwise. |
||
− | |||
− | Configure your environment for cross-compilation: |
||
− | |||
− | $ source /usr/local/angstrom/arm/environment-setup |
||
− | |||
− | Then, compile the common package: |
||
− | |||
− | $ cd /path/to/argos2 |
||
− | $ cd common |
||
− | $ mkdir -p build/footbot |
||
− | $ cd build/footbot |
||
− | $ cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../.. |
||
− | $ make |
||
− | |||
− | If everything goes OK, compile the real robot package: |
||
− | |||
− | $ cd /path/to/argos2 |
||
− | $ cd real_robot |
||
− | $ mkdir -p build/swarmanoid/footbot |
||
− | $ cd build/swarmanoid/footbot |
||
− | $ cmake ../../../swarmanoid/footbot |
||
− | $ make |
||
− | |||
− | If everything goes OK, compile the user package: |
||
− | |||
− | $ cd /path/to/argos2 |
||
− | $ cd user/my_user |
||
− | $ mkdir -p build/footbot |
||
− | $ cd build/footbot |
||
− | $ cmake -DARGOS_COMPILE_REAL_FOOTBOT=1 ../.. |
||
− | $ make |
||
− | |||
− | == Installing the libraries in the real robot == |
||
− | |||
− | If you log into the robot, you'll notice a directory ARGoS. It contains the aseba backend (aseba_backend.aesl), some useful tools in bin/ and |
||
− | a directory lib/ in which the ARGoS libraries are stored. Whenever you fix the common or real robot packages, you have to update these libraries. To |
||
− | do it, the handiest way is the following. |
||
− | |||
− | Create a directory to install ARGoS locally: |
||
− | |||
− | $ cd /path/to/argos2 |
||
− | $ mkdir install |
||
− | |||
− | Install the common package libraries: |
||
− | |||
− | $ cd common/build/footbot |
||
− | $ DESTDIR=../../../install make install |
||
− | |||
− | Same thing for the real robot package: |
||
− | |||
− | $ cd /path/to/argos2 |
||
− | $ cd real_robot/build/swarmanoid/footbot |
||
− | $ DESTDIR=../../../../install make install |
||
− | |||
− | Now go into the install directory: |
||
− | |||
− | $ cd /path/to/argos2 |
||
− | $ cd install |
||
− | |||
− | And get into the directory where the libraries have been copied: |
||
− | |||
− | $ cd usr/local/lib/argos2 |
||
− | $ ls |
||
− | |||
− | Copy all the libraries onto the robot: |
||
− | |||
− | $ scp * root@footbot_usb:~/ARGoS/lib/ |
Latest revision as of 10:57, 20 April 2010
This page does not exist anymore. Please go to:
http://iridia-dev.ulb.ac.be/projects/argos/trac/wiki/WikiStart#RealRobotInformation