1、把用户添加到用户组 “dialout”:
sudo usermod -a -G dialout $USER
然后注销后,重新登录,因为重新登录后所做的改变才会有效。
2、下载相应的软件
sudo add-apt-repository ppa:george-edison55/cmake-3.x -y
sudo apt-get update
必备软件
sudo apt-get install python-argparse git-core wget zip python-empy qtcreator cmake build-essential genromfs -y
仿真工具
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jre
sudo apt-get install ant protobuf-compiler libeigen3-dev libopencv-dev openjdk-8-jdk openjdk-8-jre clang-3.5 lldb-3.5 -y
3、卸载模式管理器
sudo apt-get remove modemmanager
4、更新包列表和安装下面的依赖包
sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded -y
sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa
sudo apt-get update
sudo apt-get install python-serial openocd
flex bison libncurses5-dev autoconf texinfo build-essential
libftdi-dev libtool zlib1g-dev
python-empy gcc-arm-none-eabi -y
5、安装git-daemon-sysvinit;
sudo apt-get install git-daemon-sysvinit
6、安装git-all;
sudo apt-get install git-all
7、安装python-jinja2 ;
$sudo apt-get install python-jinja2
8、安装lsb-core;
sudo apt-get install lsb-core
9、用pip安装numpy和toml
先把pip安装好
方案一、$sudo apt-get install python-pip
方案二、
sudo apt-get install python-setuptools python-dev build-essential
sudo easy_install pip
接着是安装numpy和toml
sudo pip install numpy toml
10、安装GCC5.4.3版本
请依次执行
wget https://launchpad.net/gcc-arm-embedded/5.0/5-2016-q2-update/+download/gcc-arm-none-eabi-5_4-2016q2-20160622-linux.tar.bz2
pushd .
sudo apt-get remove gcc-arm-none-eabi
tar -jxf gcc-arm-none-eabi-5_4-2016q2-20160622-linux.tar.bz2
sudo mv gcc-arm-none-eabi-5_4-2016q2 /opt
exportline=“export PATH=/opt/gcc-arm-none-eabi-5_4-2016q2/bin:$PATH”
if grep -Fxq “$exportline” ~/.profile; then echo nothing to do ; else echo $exportline >> ~/.profile; fi
. ~/.profile
popd
可以检查arm-none-eabi 5.4是否安装成功,输入以下指令:
arm-none-eabi-gcc --version
11、下载代码
mkdir -p ~/src
cd ~/src
git clone https://github.com/PX4/Firmware.git
12、代码编译
先进入Firmware文件夹,进而进行初始化、更新子模块操作,耐心的等待……
cd Firmware
git submodule update --init --recursive
cd ~/src/Firmware
make
本文来自 FantasyJXF 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/oqqenvy12/article/details/52035127?utm_source=copy
13、Gazebo配置
安装protobuf库,它用作Gazebo的接口。
sudo apt-get install libprotobuf-dev libprotoc-dev protobuf-compiler libeigen3-dev
在仿真文件夹目录顶层创建一个 Build 文件夹
cd ~/src/Firmware/Tools/sitl_gazebo
mkdir Build
14、添加路径
设置插件的路径以便 Gazebo 能找到模型文件
export GAZEBO_PLUGIN_PATH=
HOME/src/Firmware/Tools/sitl_gazebo/Build
设置模型路径以便 Gazebo 能找到机型
export GAZEBO_MODEL_PATH=
HOME/src/Firmware/Tools/sitl_gazebo/models
禁用在线模型查找
export GAZEBO_MODEL_DATABASE_URI=""
#设置 sitl_gazebo 文件夹的路径
export SITL_GAZEBO_PATH=$HOME/src/Firmware/Tools/sitl_gazebo
(14、文字部分格式有误,请参照图片)
15、切换到构建目录并从中调用CMake
cd Build
cmake …
make
16、MAVROS仿真
MAVROSROS包允许在运行ROS的计算机、支持MAVLink的飞控板以及支持MAVLink的地面站之间通讯。虽然MAVROS可以用来与任何支持MAVLink的飞控板通讯,但是本文仅就PX4飞行栈与运行ROS的协同计算机之间的通讯予以说明。
sudo apt-get install ros-kinetic-mavros ros-kinetic-mavros-extras ros-kinetic-control-toolbox
切换到固件目录
cd ~/src/Firmware
启动gazebo仿真
make posix_sitl_default gazebo
本文来自 FantasyJXF 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/oqqENvY12/article/details/55263122?utm_source=copy