tutorials:general

Tutorials on ROS/SkiROS

skiros2_examples give some basic introduction to SkiROS (https://github.com/rvmi/skiros2_examples). Clone into catkin_ws /src folder (same level as the “skills” folder). Also check the SkiROS wiki page `https://github.com/RVMI/skiros2/wiki/`

For GUI analytics, `http://wiki.ros.org/rqt` is highly recommended.

In order to make any changes to skills related to driving, navigation and localization, transformation frames are good to know about (e.g. http://wiki.ros.org/tf2)

For ROS beginners there are many highly pedagogic tutorials at https://www.theconstructsim.com/. For example, they have a whole course on navigation/localization.

Pimp history

Add this to your .bashrc:

export HISTTIMEFORMAT=“%h %d %H:%M:%S ”
export HISTSIZE=10000
export HISTFILESIZE=10000
export HISTIGNORE=“ls:ps:history”
shopt -s histappend
PROMPT_COMMAND=“history -a;$PROMPT_COMMAND”

ROS Configuration

Add this to your .bashrc:

export ROS_WS=~/Workspaces/heron_ws
source $ROS_WS/devel/setup.bash
alias src='cd $ROS_WS/src'
export CURRENT_CMAKE_BUILD_DIR=“$(catkin locate –workspace $ROS_WS –build)”

function print_ros_variables () {
echo “ROS_MASTER_URI: ” $ROS_MASTER_URI
echo “ROS_HOSTNAME: ” $ROS_HOSTNAME
echo “ROS_IP: ” $ROS_IP
echo “ROS Workspace: ” $ROS_WS
echo “rosinstall file: ” `test -f $ROS_WS/src/.rosinstall.conf && cat $ROS_WS/src/.rosinstall.conf`
}
print_ros_variables

Configure Master Way 1 - Static

Add this to your .bashrc :

export ROS_IP=192.168.100.5
export ROS_MASTER_URI='http://$ROS_IP:11311'

Configure Master Way 2 - Flexible

Add this to your .bashrc:

alias ros_master_local=“export ROS_MASTER_URI='http://127.0.0.1:11311' && export ROS_IP='127.0.0.1' && unset ROS_HOSTNAME &&
print_ros_variables”
alias ros_master_remote=“export ROS_MASTER_URI='http://192.168.100.5:11311' && export ROS_IP='192.168.100.10' && unset ROS_HOSTNAME && print_ros_variables”
ros_master_local

Resource .bashrc

Add this to your .bashrc:

alias resource=“source ~/.bashrc”

Automatically open a tmux session when connecting through ssh

Add this to your .bashrc: if -z "$TMUX" && [ “$SSH_CONNECTION” != “” ]; then
tmux attach-session -t ssh_tmux || tmux new-session -s ssh_tmux
fi

Add SSH keys to a keyring for multiple shells

This frees you from typing the password of your ssh key every time.

Install the `keychain` package. eval `keychain –agents ssh –timeout 60 –eval id_rsa`

ROS Best Practices

  • tutorials/general.txt
  • Last modified: 2022/09/02 14:04
  • by 127.0.0.1