成就更好的自己
目录
Jetson版Ubuntu以及ROS的安装:
ROS机器人系统运行于Ubuntu系统中,在Jetson Nano上运行的Ubuntu是英伟达特供版的Ubuntu,总体还是基于Ubuntu的普通发行版所改动,版本号和所有更新与发行版同步并兼容,安装方式见链接:
https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write
ROS安装方式:
https://www.guyuehome.com/10082
ROS特性及Nano开发问题:
ROS在Ubuntu18.04对应的版本为melodic,在此ROS版本中对应的Python解释器版本为Python2.7,但是有很多基于python的算法设计和库都已经是python3的了,因此在开发过程中要注意安装支持python2的库,也要使用python2的语法。当然了,也有在ROS中使用python3的设置教程,其中最靠谱的我觉得是下面这种方法,主要原理是在ROS安装初期就把ROS默认的python版本换成3的,具体操作方法如下:
https://www.jianshu.com/p/5f60d11a1a86
因为Jetson Nano性能有限(带不动pycharm)且大多数IDE都是以window为平台的,所以在nano上的开发软件我推荐微软公司的VSCode,这样既可以编写python也可以编写C++,但是两者的VSCode开发环境不太好配置。
多launch文件启动可以使用shell脚本或者python脚本启动,python脚本较为容易上手,教程与操作方式详见链接:https://blog.csdn.net/weixin_42368421/article/details/98625365
此外在开发过程中还要修改Xml标记语言和Cmkae文件,实质上不用花太多时间学习这些东西,找到个别人写好的xml和cmakelist文件比葫芦画瓢修改就型。教程和操作方式详见链接,xml语言教程:https://www.runoob.com/xml/xml-intro.html;
CMake教程:
几个比较适合学习ROS的基础网站:
古月居ROS综合教程:https://www.guyuehome.com/
ROS基础概念及工具网站:https://www.ncnynl.com/archives/201608/496.html
ROS wiki官网:http://wiki.ros.org/cn/ROS/Tutorials
PX4与Gazebo仿真环境
本人在很久之前接触过PX4在Gazebo上的仿真,现在就记得两个坑点,第一需要有个强劲的电脑,不然会很卡;另外PX4 Firmware的固件一定要是git clone下来的,不能是通过下载zip的方式下载,否则会无法make。
关于Firmware克隆速度过慢的问题,可以通过将github仓库转存到gitee再进行下载,速度会快很多,而且在make期间尽量保持”科学上网”,我记得在make过程中还要下一些东西。
PX4 Firmware默认有几个飞行器模型,当然了,我们也可以通过urdf等文件在默认基础飞行器上添加自己的模型(仿真传感器模型,机体模型,质心模型等)。
正常初始化仿真环境和模型后,运行正常的控制程序即可。
具体方法参考以下链接:
https://www.guyuehome.com/7672
https://github.com/PX4/PX4-Autopilot
https://docs.px4.io/master/zh/simulation/
ROS与MATMAB仿真
MATLAB针对于ROS出了专门的工具软件,一些SIMLINK模型仿真可以通过这个工具软件运行,并与系统内的ROS节点进行兼容通信,不过似乎要付费。
参考以下链接:
https://ww2.mathworks.cn/products/ros.html