2、Ubuntu 22.04 安装px4 1.14:快速搭建

1、下载

使用git加速:https://gh-proxy.com/

bash 复制代码
# 下载
git clone https://github.com/PX4/PX4-Autopilot.git 

# 切换分支到v1.14.0
git checkout v1.14.0

# 校验:是否是1.14
git describe --tags --exact-match HEAD

2、替换链接

bash 复制代码
# 将所有 github.com 替换为 gh-proxy.org
git config --global url."https://gh-proxy.org/https://github.com/".insteadOf "https://github.com/"

# 然后更新子模块
git submodule sync --recursive
git submodule update --init --recursive
  • 也可以:手动自己去替换,建议用上面的命令,替换比较彻底。

3、设置 python 清华镜像

python 复制代码
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

pip config set global.trusted-host pypi.tuna.tsinghua.edu.cn

pip config list

4、执行

bash 复制代码
# 执行 px4 脚本
./Tools/setup/ubuntu.sh

5、执行过程中,卡在:下载

手动去下载:gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2

替换:ubuntu.sh 中的链接

  • 移动下载好的文件:
bash 复制代码
mv gcc-arm-none-eabi-9-2020-q2-update-x86_64-linux.tar.bz2 \
   gcc-arm-none-eabi-9-2020-q2-update-linux.tar.bz2

修改 ubuntu.sh 脚本, 找到

bash 复制代码
else
    echo "Installing arm-none-eabi-gcc-${NUTTX_GCC_VERSION}";
    wget -O /tmp/gcc-arm-none-eabi-${NUTTX_GCC_VERSION}-linux.tar.bz2 https://armkeil.blob.core.windows.net/developer/Files/downloads/gnu-rm/${NUTTX_GCC_VERSION_SHORT}/gcc-arm-none-eabi-${NUTTX_GCC_VERSION}-${INSTALL_ARCH}-linux.tar.bz2 && \
        sudo tar -jxf /tmp/gcc-arm-none-eabi-${NUTTX_GCC_VERSION}-linux.tar.bz2 -C /opt/;
  • 替换为(注释掉 wget,改用本地文件):
bash 复制代码
else
    echo "Installing arm-none-eabi-gcc-${NUTTX_GCC_VERSION} from local file";
    LOCAL_TARBALL="${DIR}/gcc-arm-none-eabi-${NUTTX_GCC_VERSION}-linux.tar.bz2"
    if [ ! -f "$LOCAL_TARBALL" ]; then
        echo "ERROR: Local toolchain tarball not found at $LOCAL_TARBALL"
        echo "Please place the file in the same directory as ubuntu.sh"
        exit 1
    fi
    sudo tar -jxf "$LOCAL_TARBALL" -C /opt/

6、再次执行

bash 复制代码
./Tools/setup/ubuntu.sh

8、运行 jmavsim

bash 复制代码
	xcd ~/projects/PX4-Autopilotmake px4_sitl jmavsimbash
  • 进入px4命令行窗口后:可以执行如下测试命令
bash 复制代码
# 解锁(让电机可以转动)
commander unlock

# 上锁(停止电机)
commander lock

# 切换到位置控制模式(需 GPS 有效,在 jmavsim 中默认有 GPS)
# 自动起飞(如果已解锁且处于 position 模式)
commander takeoff      

# 触发自动降落
commander land         

9、运行gazebo

bash 复制代码
cd ~/projects/PX4-Autopilot

make px4_sitl gz_x500

10、安装QGC

游览器安装:https://d176tv9ibo4jno.cloudfront.net/latest/QGroundControl-x86_64.AppImage

bash 复制代码
# 授权
chmod +x QGroundControl-x86_64.AppImage

# 执行
./QGroundControl-x86_64.AppImage
相关推荐
soft200152538 分钟前
Linux + MySQL + Sysbench 一键部署和压测教程
linux·mysql·adb
阑梦清川39 分钟前
计算机网络--关于域名服务器的访问顺序
运维·服务器·计算机网络
栈低来信43 分钟前
Linux侵入式链表详解
linux·链表
卜锦元43 分钟前
docker 部署南大通用 GBase 8sV8.8
运维·数据库·docker·容器·部署·运维开发
小雨下雨的雨1 小时前
第10篇:Redis监控、运维与故障排查
运维·redis·bootstrap
半两八斤1 小时前
cmake_tutorial
ubuntu
阿海5741 小时前
卸载redis7.2.4的shell脚本
linux·redis·shell
徐子元竟然被占了!!1 小时前
Linux-vim
linux·运维·vim
擎创夏洛克AIOps1 小时前
智能运维的“地基革命”:数据治理如何支撑大模型智能体?
运维·人工智能·科技