首先是初始化的ros安装的一些库;
install.sh:
execute_command() {
if [ "$1" = "1" ]; then
wget http://fishros.com/install -O fishros && bash fishros
elif [ "$1" = "2" ]; then
#gnome-terminal --title="nvidia-smi" -- bash -c "sudo ubuntu-drivers devices; exec bash"
sudo ubuntu-drivers autoinstall
elif [ "$1" = "3" ]; then
sudo apt-get install -y python-yaml
sudo apt install -y libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2
sudo apt install -y libgsettings-qt1
sudo apt install -y python3-virtualenv python3-pip
sudo apt-get -y install libgflags-dev
sudo apt install -y ros-noetic-nmea-msgs
sudo apt install -y ros-noetic-jsk-topic-tools
sudo apt install -y ros-noetic-grid-map-ros
sudo apt install -y ros-noetic-jsk-rviz-plugins
sudo apt install -y ros-noetic-image-view2
sudo apt install -y ros-noetic-jsk-recognition-msgs
sudo apt install -y ros-noetic-gps-common
sudo apt install -y ros-noetic-velodyne-gazebo-plugins
sudo apt install -y ros-noetic-velodyne-pointcloud
sudo apt install -y ros-noetic-nmea-navsat-driver
sudo apt install -y ros-noetic-lgsvl-msgs
sudo apt install -y ros-noetic-geodesy
sudo apt install -y ros-noetic-rosbridge-server
sudo apt install -y ros-noetic-sound-play
sudo apt install -y ros-noetic-automotive-platform-msgs
sudo apt install -y ros-noetic-gscam
sudo apt install -y ros-noetic-qpoases-vendor
sudo apt install -y ros-noetic-imu-tools
sudo apt install -y ros-noetic-automotive-platform-msgs
sudo apt install -y ros-noetic-velodyne
sudo apt install -y ros-noetic-velocity-controllers
sudo apt install -y ros-noetic-carla*
sudo apt install -y ros-noetic-velodyne-description
sudo apt install -y ros-noetic-automotive-navigation-msgs
sudo apt install -y ros-noetic-uvc-camera
sudo apt install -y ros-noetic-effort-controllers
sudo apt install -y ros-noetic-ackermann*
sudo apt install -y ros-noetic-derived-object*
sudo apt install -y libomp5
sudo apt install -y libvulkan-dev vulkan-tools
sudo apt-get -y install libepoxy-dev
echo "export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH" >> ~/.bashrc
sudo apt install -y kolourpaint
sudo apt install -y meld
sudo apt-get -y install imagemagick
sudo apt-get install -y python3-numpy
sudo apt-get install -y python3-numpy-dev
sudo apt install -y ros-noetic-navigation
sudo apt install -y ros-noetic-joy
sudo apt install -y ros-noetic-gazebo-ros-control
sudo apt install -y ros-noetic-joint-state-controller
sudo apt install -y ros-noetic-position-controllers
sudo apt install -y ros-noetic-effort-controllers
sudo apt install -y ros-noetic-cv-bridge
sudo apt install -y ros-noetic-controller-manager
sudo apt install -y ros-noetic-hector-mapping
sudo apt install -y ros-noetic-gmapping
sudo apt install -y ros-noetic-plotjuggler
sudo apt install -y ros-noetic-plotjuggler-ros
sudo apt install -y libdw-dev
sudo apt install -y ros-noetic-osqp-vendor
sudo apt install -y ros-noetic-joint-state-controller
sudo apt install -y ros-noetic-velocity-controllers
sudo apt install -y ros-noetic-position-controllers
sudo apt install -y ros-noetic-gmapping
sudo apt install -y ros-noetic-map-server
sudo apt install -y ros-noetic-amcl
sudo apt install -y ros-noetic-move-base
sudo apt install -y ros-noetic-nav-core
sudo apt install -y ros-noetic-costmap-*
sudo apt install -y ros-noetic-teb-local-planner
sudo apt install -y ros-noetic-global-planner
# add cyun 9.25
sudo apt-get install -y ros-noetic-joint-state-publisher-gui
sudo apt install -y ros-noetic-controller-manager
sudo apt install -y ros-noetic-gazebo-ros-control
sudo apt-get install -y ros-noetic-effort-controllers
sudo apt install -y ros-noetic-driver-base
sudo apt install -y ros-noetic-ackermann-msgs
sudo apt install -y ros-noetic-rtabmap-ros
sudo apt-get install -y ros-noetic-ros-controllers
sudo apt install -y ros-noetic-joint-state-controller
sudo apt install -y ros-noetic-velocity-controllers
sudo apt install -y ros-noetic-position-controllers
sudo apt install -y ros-noetic-gmapping
sudo apt install -y ros-noetic-map-server
sudo apt install -y ros-noetic-amcl
sudo apt install -y ros-noetic-move-base
sudo apt install -y ros-noetic-nav-core
sudo apt install -y ros-noetic-costmap-*
sudo apt-get install -y ros-noetic-costmap-*
sudo apt install -y ros-noetic-teb-local-planner
sudo apt install -y ros-noetic-global-planner
sudo apt-get install -y ros-noetic-usb-cam
sudo apt-get install -y ros-noetic-cartographer-ros
sudo apt-get install -y ros-noetic-driver-base
sudo apt-get install -y ros-noetic-ackermann-msgs
sudo apt install -y ros-noetic-navigation
sudo apt install -y ros-noetic-joy
sudo apt install -y ros-noetic-gazebo-ros-control
sudo apt install -y ros-noetic-joint-state-controller
sudo apt install -y ros-noetic-position-controllers
sudo apt install -y ros-noetic-effort-controllers
sudo apt install -y ros-noetic-cv-bridge
sudo apt install -y ros-noetic-controller-manager
sudo apt install -y ros-noetic-hector-mapping
sudo apt install -y ros-noetic-gmapping
sudo apt install -y ros-noetic-joint-state-controller
sudo apt install -y ros-noetic-velocity-controllers
sudo apt install -y ros-noetic-position-controllers
sudo apt install -y ros-noetic-gmapping
sudo apt install -y ros-noetic-map-server
sudo apt install -y ros-noetic-amcl
sudo apt install -y ros-noetic-move-base
sudo apt install -y ros-noetic-nav-core
sudo apt install -y ros-noetic-costmap-*
sudo apt install -y ros-noetic-teb-local-planner
sudo apt install -y ros-noetic-global-planner
# add cyun 9.25
sudo apt-get install -y ros-noetic-joint-state-publisher-gui
sudo apt install -y ros-noetic-controller-manager
sudo apt install -y ros-noetic-gazebo-ros-control
sudo apt-get install -y ros-noetic-effort-controllers
sudo apt install -y ros-noetic-driver-base
sudo apt install -y ros-noetic-ackermann-msgs
sudo apt install -y ros-noetic-rtabmap-ros
sudo apt-get install -y ros-noetic-ros-controllers
sudo apt install -y ros-noetic-joint-state-controller
sudo apt install -y ros-noetic-velocity-controllers
sudo apt install -y ros-noetic-position-controllers
sudo apt install -y ros-noetic-gmapping
sudo apt install -y ros-noetic-map-server
sudo apt install -y ros-noetic-amcl
sudo apt install -y ros-noetic-move-base
sudo apt install -y ros-noetic-nav-core
sudo apt install -y ros-noetic-costmap-*
sudo apt-get install -y ros-noetic-costmap-*
sudo apt install -y ros-noetic-teb-local-planner
sudo apt install -y ros-noetic-global-planner
sudo apt-get install -y ros-noetic-usb-cam
sudo apt-get install -y ros-noetic-cartographer-ros
sudo apt-get install -y ros-noetic-driver-base
sudo apt-get install -y ros-noetic-ackermann-msgs
sudo apt-get install -y python-yaml
# add cyun
sudo apt install -y git
sudo apt-get install ros-noetic-serial -y
sudo apt install simplescreenrecorder -y
sudo apt install terminator -y
sudo apt install kolourpaint -y
sudo apt install meld -y
sudo apt-get install fcitx -y
sudo apt install variety -y
sudo apt install cmatrix -y
sudo apt install htop -y
sudo apt-get install unrar -y
sudo apt install pcl-tools -y
else
echo '输入无效,退出脚本'
exit 1
fi
}
read -p '请输入数字(1-执行 wget,2-驱动,3-安装):' input
execute_command $input
peek
wps
sougou
simplescreenrecorder
terminator
edge
netron
cloudcompare
wechat
drawio
baiduyun
carla
appollo
awsim
blender
filemanager-action
kolourpaint
meld
Tencent meeting
variety
nvidia 驱动
tensorrt
其他库
安装pangolin v0.6版本:
git clone https://github.com/pybind/pybind11.git
cd pybind11
mkdir build
cd build
cmake ..
make -j16
sudo make install
cd ..
cd ..
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
git checkout v0.6
mkdir build
cd build
cmake ..
make -j16
sudo make install
安装json:
git clone https://github.com/nlohmann/json.git
cd json
mkdir build
cd build
cmake ..
make -j16
sudo make install
python环境下的库:
install_python.sh:
pip install can cantools
cartographer建图的安装:
#!/bin/bash
# cyun 一键安装cartographer源码环境
# 2024.3.6
# 需要git可用(科学上网)
# 1. 安装依赖
sudo apt-get update
sudo apt-get install -y \
cmake \
g++ \
git \
google-mock \
libboost-all-dev \
libcairo2-dev \
libeigen3-dev \
libgflags-dev \
libgoogle-glog-dev \
liblua5.2-dev \
libprotobuf-dev \
libsuitesparse-dev \
libwebp-dev \
ninja-build \
protobuf-compiler \
sphinx-common
cd ~/Documents
if [ ! -d "ceres-solver" ]; then
git clone https://github.com/ceres-solver/ceres-solver.git
fi
echo "ceres Document Ready"
cd ceres-solver
git checkout 1.14.x
mkdir -p build
cd build
if [ ! -f "Makefile" ]; then
cmake ..
fi
make -j8
sudo make install
cd ~/Documents
if [ ! -d "protobuf" ]; then
git clone https://ghproxy.com/https://github.com/google/protobuf.git
fi
echo "protobuf Document Ready"
cd protobuf
git checkout v3.6.1
mkdir -p build
cd build
if [ ! -f "Makefile" ]; then
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release -Dprotobuf_BUILD_TESTS=OFF ../cmake
fi
make -j8
sudo make install
cd ~/Documents
if [ ! -d "cartographer" ]; then
git clone https://gitee.com/BlueWhaleRobot/cartographer.git
fi
cd cartographer
mkdir -p build
cd build
if [ ! -f "Makefile" ]; then
cmake ..
fi
make -j
sudo make install
cd ~/forklift_ws/src
if [ ! -d "cartographer_ros" ]; then
git clone https://git.bwbot.org/publish/cartographer_ros
fi
cd ..
catkin_make
cd ~/forklift_ws/src
if [ ! -d "Hybrid_A_Star" ]; then
git clone https://github.com/zm0612/Hybrid_A_Star
fi
cd ..
catkin_make
cd ~/forklift_ws/src
if [ ! -d "pointcloud_to_laserscan" ]; then
git clone https://github.com/BluewhaleRobot/pointcloud_to_laserscan.git
fi
cd ..
catkin_make
echo "脚本执行完毕"
echo "2D:"
echo "wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bag"
echo "测试命令:source ros 环境;roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:='/home/cyun/Downloads/cartographer_paper_deutsches_museum.bag'"
echo "3D:"
echo "wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_3d/with_intensities/b3-2016-04-05-14-14-00.bag"
echo "roslaunch cartographer_ros demo_backpack_3d.launch bag_filename:=${HOME}/Downloads/b3-2016-04-05-14-14-00.bag"
python程序的注释内容:
#!/usr/bin/env python3
#coding=utf-8
# **************** panda_ws实现采棉功能 ****************
'''describe = "This is the description."
input_data = "Input data example."
output_data = "Output data example."
author = "cyun"
time = "2024.3.15"
cc程序的注释内容:
// *************** panda\_ws实现采棉功能 \***************
/*describe = "This is the description."
input_data = "Input data example."
output_data = "Output data example."
time = "2023-12-15"
*/
sudo不再需要输入密码: