This is the main repo for Team-WPI's participation in Space Robotics Challenge.
- Disable hyper-threading, if it is enabled in bios
- Ubuntu 14.04
- Ros Indigo
Download the scripts from this location and run the following commands:
bash setup1.shafter the system restarts, run the following
bash setup2.shonce everything is setup successfully, it should automatically launch the gazebo with valkyire, controllers and the robot should start walking.
note:
The scripts also handle installing ros, dependencies, setting up workspace, checkout - updated repo etc. So basically running the scripts on a fresh linux machine (with out any package except git) should install and setup everything, finally making valyire walk in gazebo.
(run setup1.sh first and after reboot run setup2.sh).
known problems
- after everything getting launched (gazebo with valkyire standing), if for any reason the process dies and say the tf is missing, then remove the build, devel
rm -rf /build /develand rebuild the workspacecatkin_make, this should fix the problem and valkyire should start walking this time.
sudo rm /etc/apt/sources.list.d/gazebo*
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list'
wget -O - http://packages.osrfoundation.org/gazebo.key | sudo apt-key add -
sudo sh -c 'echo "deb http://srcsim.gazebosim.org/src trusty main" > /etc/apt/sources.list.d/src-latest.list'
wget -O - http://srcsim.gazebosim.org/src/src.key | sudo apt-key add -
wget -O - https://bintray.com/user/downloadSubjectPublicKey?username=bintray | sudo apt-key add -
sudo apt-get update
sudo apt-get install srcsim echo 'export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64' >> ~/.bashrc
echo 'export IS_GAZEBO=true' >> ~/.bashrcThis ROS package requires to write some files in its installation directory at runtime. We're working on a fix for this issue. In the meantime, please change the ownership of this directory to your user.
if you are the only user on the computer, use this
sudo chown -R $USER:$USER /opt/ros/indigo/share/ihmc_ros_java_adapter
else, use this
sudo chmod -R 777 /opt/ros/indigo/share/ihmc_ros_java_adapter
mkdir -p ${HOME}/.ihmc; curl https://raw.githubusercontent.com/ihmcrobotics/ihmc_ros_core/0.8.0/ihmc_ros_common/configurations/IHMCNetworkParametersTemplate.ini > ${HOME}/.ihmc/IHMCNetworkParameters.ini
Increase real-time scheduling priority for current user (rtprio), which is required by the IHMC controller. Add current user to ros group:
sudo bash -c 'echo "@ros - rtprio 99" > /etc/security/limits.d/ros-rtprio.conf'
sudo groupadd ros
sudo usermod -a -G ros $USER
wget -P /tmp/ https://bitbucket.org/osrf/gazebo_models/get/default.tar.gz
tar -xvf /tmp/default.tar.gz -C $HOME/.gazebo/models --strip 1
rm /tmp/default.tar.gz
Open a new terminal and run:
source /opt/nasa/indigo/setup.bash
roslaunch ihmc_valkyrie_ros valkyrie_warmup_gradle_cache.launch
cd ~ && git clone https://github.com/ihmcrobotics/ihmc-open-robotics-software.git
Compile the java code that you just cloned (https://xkcd.com/303)
cd ihmc-open-robotics-software
git checkout master
./gradlew
./gradlew -q deployLocal
- ruby, pcl, MoveIt!, Trac_IK, footstep_planner, humanoid_localization, Multisense
sudo apt-get install ruby ros-indigo-pcl-ros ros-indigo-pcl-conversions ros-indigo-moveit-full ros-indigo-trac-ik ros-indigo-footstep-planner ros-indigo-humanoid-localization ros-indigo-multisense-rosCreate catkin workspace. If you already have one, move to the next step
mkdir -p ~/indigo_ws/src && cd ~/indigo_ws/src
catkin_init_workspace
cd ~/indigo_ws
catkin_makeClone the git repositories
git clone https://gitlab.com/whrl/space_robotics_challenge.git ~/indigo_ws/src/space_robotics_challenge
git clone https://github.com/ninja777/humanoid_navigation.git ~/indigo_ws/src/humanoid_navigationAfter the code is downloaded, run catkin_make.
cd ~/indigo_ws
catkin_make source /opt/nasa/indigo/setup.bash
cd ~/indigo_ws
rm -rf devel/ build/
catkin_make
source devel/setup.bash
roslaunch val_bringup qual2.launch
- To start qual task 1 with controller
roslaunch val_bringup qual1.launch- To start qual task 1 without controller
roslaunch val_bringup qual1.launch controller:=false- To start qual task 2 with controller
roslaunch val_bringup qual2.launch- To start qual task 2 without controller
roslaunch val_bringup qual2.launch controller:=false-
val_description
This package contains the robot model. All the xacro, urdf, dae files of the robot can be found in this package. This code is downloaded from IHMC's repo. -
val_gazebo
This package contains launchers for simulation in gazebo. It also hosts the world files along with additional plugins written for various tasks. -
val_moveit/val_moveit_config This package contains moveit configuration files with "trac_ik" solver for Valkyrie generated by MoveIt! setup assistant. This can be used for motion planning tasks. The robot groups and poses can be edited by editing this package in moveit_setup_assistant. Refer MoveIt! tutorials and Trac_ik for more details.
-
val_moveit/val_moveit_tasks This package conatains tasks that can be performed using MoveIt! code API.