机载tx2与飞控连接排错指南


打算把机载电脑tx2和飞控进行连接,控制无人机飞行,这个过程太多bug,记录一下,提醒大家,多看官网教程。

1 安装ROS

参考资料

Tips:

用中科大USTC的源比较快,其他的源也可以参考官网

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ $DISTRIB_CODENAME main" > /etc/apt/sources.list.d/ros-latest.list'

安装过程过程中,sudo rosdep init 出错了,没管(等下安装MAVROS才会有影响,解决方法见下文),继续执行下面的语句,全部执行完了,就可以测试。

# 测试
roscore # 第一个终端,启动ros核心,启动成功证明安装成功
rosrun turtlesim turtlesim_node # 第二个终端,打开小海龟
rosrun turtlesim turtle_teleop_key # 第三个终端,控制小海龟动起来

sudo rosdep init 出错解决方法:本文之后,世上再无rosdep更新失败问题!,亲测有效

在翻墙的前提下,上述问题都不是问题,但是架构的不同,tx2上没办法使用翻墙工具,只能通过各种方法解决了。

2 安装MAVROS

参考资料

3 机载电脑和飞控连接

本来使用老版安卓数据线和机载电脑连接的,结果连上了鼠标键盘都动不了了,至今不知道为什么,看了一些帖子,讲道理是可以这么连的,后面连飞控的 TELEM2端口 就可以了,图片是从淘宝看到的。
飞控接口

4 启动命令测试

输入命令测试MAVROS是否安装成功,并且验证飞控是否成功和机载电脑连接成功。

roslaunch mavros px4.launch fcu_url:="/dev/ttyUSB0:921600" # 在终端中输入飞控和Mavros连接的命令

其中,fcu_url 表示把 px4.launch 里面的 fcu_url 参数的值改为 /dev/ttyUSB0:921600 ,通过查看 px4.launch 可以看到原始的串口是ACM0,921600是波特率,57600也可以用,具体的串口可以用cutecom查看。

查看串口

在终端输入命令安装cutecom,利用cutecom查看串口号,有时候会变的,建议连接之后查看一下。

sudo apt-get install cutecom # 下载cutecom
sudo cutecom # 打开cutecom

roslaunch 命令输入后会显示奇奇怪怪的错误,如下图所示。
cannot locate node
错误:

ERROR: cannot launch node of type [mavros/mavros_node]: Cannot locate node of type [mavros_node] in package [mavros].

解决方法:

网上能搜到的解决办法是

如果出现ERROR: cannot launch node of type [mavros/mavros_node]错误,则把catkin_ws里的内容删掉重新编译一下工作空间。或者把原来的catkin_ws删掉。

不敢把东西都删掉,因为工作空间里面是下载的mavros和mavlink,安装环境不容易。

最后就是把工作空间 mavros_ws 里的build文件夹下的内容删掉,再用 catkin build 重新编译一下工作空间,不知道为什么重新编译以后,build文件夹下就没有文件了,但是成功了

第二天睡醒又出错了,最后发现就是根目录底下的ros文件夹里面也有一个mavros文件夹 (/opt/ros/melodic/share/mavors),部分文件和这个工作空间下的文件重复了,所以无法locate,最后把工作空间mavros_ws下的mavros文件夹删掉,再次编译就成功了。

继续运行,报的错误变了!!!
请添加图片描述
错误:

[FATAL] [...]: FCU: DeviceError:serial:open: Permission denied

看了别人的帖子,才知道出现这个错误就是忘记给端口赋予权限。

sudo chmod 777 /dev/ttyUSB0

给串口权限以后,就能成功启动了。下一步就是在上面构建自己的ROS功能包实现某些功能啦。

  • 1
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值