当前位置: 代码迷 >> 综合 >> beaglebone blue使用px4固件教程
  详细解决方案

beaglebone blue使用px4固件教程

热度:33   发布时间:2023-12-26 21:19:28.0

硬件准备
beaglebone blue开发板一个,sd卡一个(内存不低于4G)
参考px4 github
https://docs.px4.io/master/en/flight_controller/beaglebone_blue.html
在这里插入图片描述
第一步:向开发板烧写系统
参考链接
https://github.com/beagleboard/beaglebone-blue/wiki/Flashing-firmware
先下载系统镜像,网址如下
https://beagleboard.org/latest-images
下载图中的最新稳定版镜像
在这里插入图片描述
使用烧写工具向SD卡烧写镜像
下载并安装 Etcher utility 软件
https://www.balena.io/etcher/
安装完后打开,点击选择镜像,电脑插入SD卡,选择相应的SD卡,最后选择前面下载好的镜像,然后点Flash,等待烧写完成后弹出SD卡
在这里插入图片描述
将SD卡插入ubuntu系统的电脑,打开SD卡中的/boot/uEnv.txt文件,将包含init-eMMC-flasher-v.sh的那一行取消注释并保存。

然后将SD卡插入开发板,上电前按住SD按键,然后上电,再按一下RST按键,开发板的灯会先闪几下,然后会来回闪流水灯,等待几分钟,开发板的灯会全灭,这时代表系统已经烧好了,弹出SD卡,重启开发板即可进入系统

固件下载
px4的固件下载采用wifi。
先找一个路由器,将开发板连到路由器
我这里使用PuTTY软件通过串口访问开发板。在这里插入图片描述
将开发板通过USB接到电脑,稍等一段时间后,电脑会识别到开发板的端口
在这里插入图片描述
打开putty软件,

在这里插入图片描述
在这里插入图片描述
做如上设置后点击open,会弹出窗口
在这里插入图片描述
然后可以连接wifi
输入root回车
输入密码为root,执行完后如下
在这里插入图片描述
依次执行
connmanctl
scan wifi
services
在这里插入图片描述
在输入services后,会显示当前可用的wifi,我这边的路由器是第一个wifi,所以执行下面的命令,不同路由器后面的那一段会不一样
agent on
connect wifi_38d269e12f71_54502d4c494e4b5f363337433030_managed_psk
在这里插入图片描述
因为我这边之前已经连过,所以提示已经连接
然后执行
quit
这个时候开发板已经连接到路由器了
执行ifconfig
在这里插入图片描述
会显示相应的ip地址,这个地址后面会用到。

在建立ssh连接前,需要在板子上配置一下,这一步很重要,没有的话会导致电脑在输入开发板的密码时匹配不上
在putty执行
sudo su
echo “PermitRootLogin yes” >> /etc/ssh/sshd_config && systemctl restart sshd

打开配置好编译环境的ubuntu电脑

建立ssh链接
ssh-keygen -t rsa
ssh-copy-id root@192.168.1.101
@后面跟的就是上面开发板的ip地址
在执行这一步时,会提示输入密码,密码为root,如果输入后仍然不对,就检查上面的板子配置有没有做
在这里插入图片描述
这个时候就可以链接ssh了
输入ssh root@192.168.1.101

在这里插入图片描述就会进入到开发板的终端界面
在下固件的时候不需要登入开发板,前面两步就可以了
在上传代码之前,还需要修改一下
打开Firmware/boards/beaglebone/blue/cmake/upload.cmake
在这里插入图片描述将上图的那一行改成图中的内容,@后面的地址就是上面的开发板的ip地址,不同的路由器可能不一样。

如果没有路由器的话也可以使用板子自带的wifi
名字叫BeagleBone-XXXX
默认密码BeagleBone
ip是192.168.8.1
建立ssh之后,upload.cmake里面对应的也要改成192.168.8.1

修改完后即可上传固件,进入到源码路径下,输入make beaglebone_blue_default upload。不同版本的代码,中间的那个cmake文件可能不一样,我用的是1.11.0版本的代码。
在这里插入图片描述
上传完成后的界面如上图

上传好固件后就可以在开发板上运行固件了
cd /home/debian/px4
sudo ./bin/px4 -s px4.config

在这里插入图片描述
运行固件后会进入pxh
在这里插入图片描述
可以在pxh中执行各种px4的命令,这里测试一下气压计
执行
bmp280 status

在这里插入图片描述
可以正常显示气压值,说明固件正常运行,这时可以连接地面站调试一下去试飞。不多介绍

连地面站可以用WiFi
板子自身的WiFi名字叫BeagleBone-XXXX
默认密码BeagleBone
电脑连接到wifi后,qgc地面站会自动连接到开发板

  相关解决方案