在 RPi3 上构建 NAVIO2¶
概述¶
这些说明阐明了如何使用 Waf 构建系统在 Navio2 的 RPi3 板上为 Navio2 板构建 ArduPilot。这些说明假定 RPi3 已经按照制造商(即 Emlid)的说明进行了设置 这里.
或者,您也可以按照 Emlid 的说明,从源代码中创建程序。 这里.
设置¶
使用 ssh 终端程序,如 油灰 登录 Navio2 板的 RPI3。
备注
在 Raspbian Stretch 上,可能缺少 Python 的一个要求,因此请通过以下方式安装未来的 Python
核心 安装 未来
获取 git¶
Git 是一个免费开源的分布式版本控制系统,用于管理 ArduPilot 代码库。Git 适用于所有主流操作系统平台,并有多种工具可帮助用户轻松上手。
Git 命令行¶
乌班图¶
Linux/Ubuntu 用户可以使用 apt .NET 安装:
苏都 apt-get 更新
苏都 apt-get 安装 git
苏都 apt-get 安装 gitk git-gui
Windows操作系统和其他系统¶
下载并安装 git-scm.com 的下载页面
推荐的图形用户界面工具¶
git 命令行、gitk 和 git-gui 工具是所有用户都应安装的基本工具,可从一些地方获取。
下面列出了图形用户界面工具的完整列表 在 git-scm.com 但这里有几个开发者最喜欢的产品:
GitHub 桌面 是一款易于使用的工具,与 GitHub 集成良好,但功能少于其他客户端。
适用于 Windows 和 Mac OSX 的 Sourcetree 是一款功能齐全的工具,具有漂亮的界面和多种功能,包括允许在新提交中包含文件中的个别行(较简单的工具只允许包含整个文件)。
GitKraken 是一款功能齐全的工具,适用于 Windows、Mac 和 Linux。
克隆 ArduPilot 软件仓库¶
"克隆 "是 git 的术语,指为远程仓库(即 GitHub 服务器上的仓库)制作本地副本。
开发人员应克隆主 ArduPilot 存储库 (如果他们只是想下载和编译最新代码)或他们自己的 分叉 (如果他们想修改源代码,并可能将修改提交回来)。
常用工具的说明如下,但无论使用哪种工具,都需要提供源代码库的 URL。这可以在每个 Github 仓库主页的屏幕右侧找到,但一般来说,URL 是:
https://github.com/ArduPilot/ardupilot.git
主 ardupilot 软件仓库https://github.com/your-github-account/ardupilot
为您的 分叉 的软件包
使用命令行克隆¶
打开终端,导航到您希望保存克隆的目录
克隆你的叉子
git 复制 --递归-子模块 https://github.网/您的-github-用户名/ardupilot CD ardupilot
备注
如果某些防火墙不允许 ssh 访问,从而导致上述子模块更新失败,在这种情况下,可以通过以下命令告诉 git 单方面使用 https:
git 配置 --全球 网址."https://";.而不是 git://
使用 https 协议,而不是默认的 git:// 前缀。
安装一些必要的软件包¶
如果您使用的是基于 debian 的系统(如 Ubuntu 或 Mint),我们将为您提供 剧本 就能帮你完成。从克隆的 ardupilot 目录 :
工具/环境安装/安装-先决条件-乌托邦.吁 -y
重新载入路径(注销并登录以使其永久有效):
. ~/.概况
现在,您应该可以按照 BUILD.md.
备注
此时,您已经安装了 MAVProxy 地面控制站(MAVProxy GCS),并准备对飞行器代码进行软件环路 (SITL) 模拟。请参见 SITL 模拟器(循环中的软件) 和 在 Linux 上设置 SITL.您不仅可以构建代码,还可以在 ArduPilot SITL 模拟器中运行您的构建。
清洁¶
如果某些 git 子模块有更新,您可能需要进行一次完整的编译。为此,请使用
./waf 清洗
这将移除构建工件,这样您就可以执行 构建 零起点
备注
Waf 应始终在 ardupilot 的根目录下调用。
为方便访问 Waf,请在 ardupilot 根目录下使用以下别名:
别称 waf="$PWD/modules/waf/waf-light";
配置¶
选择要使用的电路板:
waf 配置 --官方=navio2
建设¶
现在,您可以制作 arducopter。使用以下命令制作旋翼飞行器:
waf --目标 箱柜/自动飞行器
要制作旋翼飞行器,请指定 "arducopter-heli"。在Mission Planner地面站菜单 "初始设置 "的 "框架类型 "项中可指定以下框架类型。
四边形 六边形 奥克塔 奥克塔-四边形 Y6 旋翼飞行器 三
编译结束后,名称为 arducopter 的二进制文件将被放置在 ardupilot/build/navio2/bin/ 通讯录
.