树莓派 2/3 Navio2 自动驾驶仪
该飞行控制器支持 PX4 试验性.
开发人员快速入门
操作系统图像
使用 用于 Navio 2 的 Emlid RT Raspbian 映像.默认映像已完成下面显示的大部分设置步骤。
确保不要升级系统(更具体地说是内核)。通过升级,可能会安装一个缺乏必要硬件支持的新内核(可以通过
ls /s/ys/class/pwm
目录不应为空)。
设置访问
Raspbian 映像已经设置了 SSH。用户名为 "pi",密码为 "raspberry"。你可以通过网络连接到 RPi2/3(以太网默认设置为 DHCP),然后继续配置 WiFi 访问。在本指南中,我们假设用户名和密码保持默认值。
要设置 RPi2/3 加入本地无线网络,请遵循以下步骤 本指南.
从网络中查找 Pi 的 IP 地址,然后使用 SSH 进行连接。
ssh pi@<IP-ADDRESS>;
扩展文件系统
安装操作系统并连接后,请确保 扩展文件系统这样 SD 卡上就有足够的空间。
禁用 Navio RGB 叠加
现有的 Navio RGB 叠加功能要求 PX4 为 RGB 灯使用 GPIO。编辑 /boot/config.txt
注释启用 navio-rgb
覆盖。
#dtoverlay=navio-rgb
更改主机名
为避免与网络上的任何其他 RPis 发生冲突,我们建议您将默认主机名更改为合理的名称。我们在设置时使用了 "px4autopilot"。通过 SSH 连接到 Pi,并按照以下说明操作。
编辑主机名文件:
sudo nano /etc/hostname
改变 木莓
为您想要的任何主机名(单词,字符有限)
接下来,您需要更改主机文件:
sudo nano /etc/hosts
更改条目 127.0.1.1 raspberry
至 127.0.1.1 <YOURNEWHOSTNAME>;
完成此步骤后重启 Pi,使其重新与网络关联。
设置 Avahi(Zeroconf)
为了更方便地连接到 Pi,我们建议设置 Avahi (Zeroconf),通过直接指定 Pi 的主机名,可以从任何网络轻松访问 Pi。
sudo apt-get install avahi-daemon sudo insserv avahi-daemon
接下来,设置 Avahi 配置文件
sudo nano /etc/avahi/services/multiple.service
将此添加到文件 :
<?xml version="1.0"; 独立='不&apos;?>;
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">;
<;服务组>;
<;名字 替换万事达卡=是的;>;%h</名字>;
<;服务>;
<;类型>;_设备信息._tcp</类型>;
<;港>;0</港>;
<;txt-record>;型号=RackMac</txt-record>;
</服务>;
<;服务>;
<;类型>;_ssh._tcp</类型>;
<;港>;22</港>;
</服务>;
</服务组>;
重启守护进程
sudo /etc/init.d/avahi-daemon restart
就是这样。您应该可以从网络上的任何计算机直接通过主机名访问您的 Pi。
您可能需要在主机名中添加 .local 才能发现它。
配置 SSH 公钥
为了让 PX4 开发环境自动将可执行文件推送到电路板,您需要配置 RPi 的无密码访问。为此,我们使用了公钥验证方法。
要生成新的 SSH 密钥,请输入以下命令(选择一个合理的主机名,如 <YOURNANME>@<YOURDEVICE>;
.在这里,我们使用了 pi@px4autopilot
)
这些命令需要在 HOST 开发计算机上运行!
ssh-keygen -t rsa -C pi@px4autopilot
输入此命令后,系统会询问你在哪里保存密钥。建议按回车键将其保存在默认位置($HOME/.ssh/id_rsa)。
现在你应该看到文件 id_rsa
和 id_rsa.pub
在你的 .ssh
目录:
ls ~/.ssh authorized_keys id_rsa id_rsa.pub known_hosts
id_rsa
文件就是你的私人密钥。将其保存在开发计算机上。文件 id_rsa.pub
文件是你的公钥。您要把它放在要连接的目标上。
要将公钥复制到 Raspberry Pi 上,请使用以下命令将公钥添加到 Pi 上的 authorized_keys 文件中,并通过 SSH 发送:
cat ~/.ssh/id_rsa.pub | ssh pi@px4autopilot ct; .ssh/authorized_keys&apos;
请注意,这次您必须使用密码(默认为"raspberry")进行身份验证。
现在试试 ssh pi@px4autopilot
您就可以在没有密码提示的情况下进行连接。
如果您看到一条信息 ";代理人承认没有使用密钥签名。
然后将 RSA 或 DSA 身份添加到身份验证代理 ssh-agent,并执行以下命令:
ssh-add
如果还不行,请使用 rm ~/.ssh/id*
并再次按照说明操作。
测试文件传输
我们使用 SCP 通过网络(WiFi 或以太网)将文件从开发计算机传输到目标板。
要测试你的设置,现在尝试通过网络从开发电脑向 Pi 推送一个文件。确保 Pi 具有网络访问权限,并且可以 SSH 登录。
回响 你好; > hello.txt scp hello.txt pi@px4autopilot:/home/pi/ rm hello.txt
这将把一个"hello.txt"文件复制到 RPi 的主文件夹中。验证文件是否已复制,然后就可以进行下一步了。
本地构建(可选)
如果需要,您可以直接在 Pi 上运行 PX4 版本。这是 本地人 构建。另一种方法是在开发计算机上运行构建,开发计算机会对 Pi 进行交叉编译,并将 PX4 可执行二进制文件直接推送到 Pi 上。这就是 交叉编译器 由于部署速度和易用性,它是开发人员推荐使用的构建工具。
对于交叉编译设置,可以跳过这一步。
下面的步骤将按照 PX4 的要求设置 Pi 上的构建系统。在 Pi 上运行这些命令!
sudo apt-get update sudo apt-get install cmake python-empy
然后将固件直接克隆到 Pi 上。
构建代码
继续我们的 标准构建系统安装.