ROS + Parrot-Sphinx进行Bebop无人机仿真


本篇博客介绍了如何使用 Parrot-Sphinx进行Bebop 2无人机的飞行仿真。

测试环境
  • Ubuntu 18.04
  • ROS Melodic
一、安装Parrot-Sphinx

打开一个终端,输入:

$ echo "deb http://plf.parrot.com/sphinx/binary `lsb_release -cs`/" | sudo tee /etc/apt/sources.list.d/sphinx.list > /dev/null
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 508B1AE5
$ sudo apt-get update
$ sudo apt-get install parrot-sphinx

注意:安装过程中会跳出窗口"add user to the firmware group"(添加用户名到固件组),可以输入当前用户。安装结束后需要登出并重新登录当前用户以完成安装。

二、初步使用
1. 启动并检查firmwared服务

打开 一个终端,输入:

$ sudo systemctl start firmwared.service

启动后不可关闭当前shell,继续在终端输入:

$ fdc ping

将得到PONG的响应。
注意:启动firmwared服务后,会默认在*/usr/share/firmwared/firmwares*路径下生成一个.firmware文件,该文件可以删除,删除后需要重新启动服务。若需要关闭firmwared服务,可以在终端中输入:

$ sudo systemctl stop firmwared.service
2. 检查WiFi接口名

在终端中输入:

$ iwconfig

并记录下显示的主机WiFi接口名(通常为“wlan0”或者“wlx****”)。

3. 初步运行仿真

进入*/opt/parrot-sphinx/usr/share/sphinx/drones/*文件夹,

$ cd /opt/parrot-sphinx/usr/share/sphinx/drones/
$ ls

可以看到有一些以.drone为后缀的文件,它们定义了所需仿真的无人机类型。打开其中的bebop2.drone,

$ gedit bebop2.drone

在这里插入图片描述
找到*<stolen_interface>wlan0:eth0:192.168.42.1/24</stolen_interface>*这一行,将其中的wlan0替换为之前保存的主机WiFi接口名称。打开一个终端,输入:

$ sphinx /opt/parrot-sphinx/usr/share/sphinx/drones/bebop2.drone

将打开一个Gazebo窗口
在这里插入图片描述
可以看到其中已经有一架Bebop 2无人机。

注意 1此时若关掉该Gazebo仿真窗口,并继续用iwconfig命令查看主机WiFi接口,会发现名称发生了改变,变成了eth0.因此,如果需要再次运行该仿真,需要将.drone中的相关名称改为eth0。该改变只会发生一次,但是每次电脑重启后WiFi接口名又会变为最初的名称。

注意 2每运行一次该仿真,在电脑重启后,将会得到一次检测到系统问题的弹窗出现。

三、起飞、降落与控制
1. 安装bebop_autonomy程序包

参考:在Ubuntu 18.04和ROS Melodic下安装使用bebop_autonomy包

2. 修改和运行launch文件

参考:ROS控制多架Bebop 2无人机
进入~/bebop_ws/src/bebop_autonomy/bebop_driver/launch文件夹,打开bebop_node.launch运行文件,
在这里插入图片描述
将其中的IP地址改为“10.202.0.1”,该地址为连接仿真无人机的默认IP地址。然后打开一个终端,运行该launch文件:

$ roslaunch bebop_driver bebop_node.launch 
3. 控制无人机

打开另一个终端就可以通过发送ros消息对仿真无人机进行控制了。
(1)起飞:

$ rostopic pub --once /bebop2/takeoff std_msgs/Empty

在这里插入图片描述
(2)降落:

rostopic pub --once /bebop2/land std_msgs/Empty

(3)飞行
通过发送cmd_vel消息。

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 17
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值