Closed mukmalone closed 3 years ago
Robot specific teensy parameters
//define your robot' specs here
laser.launch
<node pkg="tf2_ros" type="static_transform_publisher" name="base_link_to_laser" args="0.195 0 0.233 0 0 0 /base_link /laser"/>
https://github.com/linorobot/linorobot/issues/31#issuecomment-650132815
This fixed the gudev issues with Python capatibility
sudo apt install python-gobject sudo apt install libtool-bin sudo apt install python-gobject-2-dev sudo apt install autoconf sudo apt-get install libgudev-1.0-dev git clone https://github.com/nzjrs/python-gudev.git cd python-gudev ./autogen.sh make sudo make install rosrun lino_udev lino_udev.py sudo cp 58-lino.rules /etc/udev/rules.d/58-lino.rules
Install rplidar_ros from source since the package is not available for Noetic
Navigation issue:
Warning: Invalid argument "/map" passed to canTransform argument target_frame in tf2 frame_ids cannot start with a '/' like:
Fix was to remove any /
from topic definitions in yaml files for navigation such as local costmap and global costmap
!/usr/bin/env bash
set -e
source /opt/ros/$(dir /opt/ros)/setup.bash
sudo cp files/49-teensy.rules /etc/udev/rules.d/
ROSDISTRO="$(rosversion -d)" BASE=$1 SENSOR=$2 ARCH="$(uname -m)" echo $ARCH
if [ "$3" != "test" ] then if [ "$*" == "" ] then echo "No arguments provided" echo echo "Example: $ ./install.sh 2wd xv11" echo exit 1
fi
echo echo "INSTALLING NOW...." echo
sudo apt-get update sudo apt-get install -y \ avahi-daemon \ openssh-server \ python-setuptools \ python-dev \ build-essential \ python-gudev replaced with gir1.2-gudev-1.0 added sudo apt install python-is-python3
sudo easy_install pip replaced with sudo apt install python3-pip sudo python2.7 -m pip install -U platformio replaced with sudo pip3 install -U platformio sudo rm -rf $HOME/.platformio/
source /opt/ros/$ROSDISTRO/setup.bash
cd $HOME mkdir -p linorobot_ws/src cd $HOME/linorobot_ws/src catkin_init_workspace
sudo apt-get install -y \ ros-$ROSDISTRO-roslint \ ros-$ROSDISTRO-rosserial \ ros-$ROSDISTRO-rosserial-arduino \ ros-$ROSDISTRO-imu-filter-madgwick \ ros-$ROSDISTRO-gmapping \ ros-$ROSDISTRO-map-server \ ros-$ROSDISTRO-navigation \ ros-$ROSDISTRO-robot-localization \ ros-$ROSDISTRO-tf2 \ ros-$ROSDISTRO-tf2-ros
if [[ "$3" == "test" ]] then sudo apt-get install -y \ ros-$ROSDISTRO-xv-11-laser-driver \ ros-$ROSDISTRO-rplidar-ros \ ros-$ROSDISTRO-urg-node \ ros-$ROSDISTRO-lms1xx \ ros-$ROSDISTRO-freenect-launch \ ros-$ROSDISTRO-depthimage-to-laserscan \ ros-$ROSDISTRO-teb-local-planner
else if [[ "$SENSOR" == "hokuyo" ]] then sudo apt-get install -y ros-$ROSDISTRO-urg-node hokuyoip= echo "" echo -n "Input your hokuyo IP. Press Enter to skip (Serial Based LIDAR): " read hokuyoip echo "export LIDARIP=$hokuyoip" >> $HOME/.bashrc
fi
cd $HOME/linorobot_ws/src git clone https://github.com/linorobot/linorobot.git git clone https://github.com/linorobot/imu_calib.git git clone https://github.com/linorobot/lino_pid.git git clone https://github.com/linorobot/lino_udev.git git clone https://github.com/linorobot/lino_msgs.git
cd $HOME/linorobot_ws/src/linorobot TRAVIS_BRANCH="echo $TRAVIS_BRANCH" if [ "$TRAVIS_BRANCH" = "devel" ]; then git checkout devel; fi
cd $HOME/linorobot_ws/src/linorobot/teensy/firmware export PLATFORMIO_CI_SRC=$PWD/src/firmware.ino platformio ci --project-conf=./platformio.ini --lib="./lib/ros_lib" --lib="./lib/config" --lib="./lib/motor" --lib="./lib/kinematics" --lib="./lib/pid" --lib="./lib/imu" --lib="./lib/encoder"
echo "source $HOME/linorobot_ws/devel/setup.bash" >> $HOME/.bashrc echo "export LINOLIDAR=$SENSOR" >> $HOME/.bashrc echo "export LINOBASE=$BASE" >> $HOME/.bashrc source $HOME/.bashrc
cd $HOME/linorobot_ws catkin_make --pkg lino_msgs catkin_make
echo echo "INSTALLATION DONE!" echo