首先十分感谢古月居和地平线给予的机会,很荣幸能参加本次高校合作计划之旭日X3派活动。

       接下来,我将使用旭日X3派开发实现基于VINS-fusion(视觉惯性融合)的视觉SLAM四旋翼无人机自主飞行项目。这个项目可以将视觉和惯性信息相结合,使用多传感器技术来进行准确的位姿估计。随着机器人和自主驾驶汽车等应用领域的不断扩大,对于准确的位置、方向估计需求越来越高,而VINS-fusion正好可以解决这一问题。在X3高性能的支持下,我有信心更加深入地研究学习这项技术,并且开发出可靠、精准的解决方案。非常感谢这次活动的提供机会!

       这个项目将分为五个篇章,本文将以熟悉旭日X3派为主,从烧录镜像开始,搭建项目开发所需的一些环境,如ROS、相机标定等。

        旭日X3派是一款高性能的开源单板计算机,采用了RK3328处理器和Mali-450MP2 GPU,配备了4GB DDR3 RAM内存和32GB eMMC存储空间,支持双频WiFi和蓝牙4.2。它可以运行多种操作系统,如Android、Ubuntu、Armbian等,非常适合于探索物联网、学习编程、开发嵌入式项目等。该单板计算机还提供了丰富的接口,包括HDMI输出、以太网、USB 3.0和USB 2.0、音频输入输出等,对于需要进行多传感器数据处理的项目非常有用。总体来说,旭日X3派是一款配置高、性能优、功能强大的开源单板计算机,可以满足广泛的应用需求。

        拿到旭日X3后,首先需要准备一张16GB以上的SD卡,本人使用的是16GB的,目前内存空间尚为充足,建议32或64GB适宜。对其进行烧录的操作可参考古月学院的课程-Together-Ros-系统安装配置-2.烧录Ubuntu系统镜像,里面有详细讲解,操作清晰明了,适宜新手。

        与此同时,在地平线公司的官网https://developer.horizon.ai/resource,产品中心-资源中心处,也有一些关于旭日X3派的学习使用资料。

      根据视频按部就班一步步操作后,完成镜像烧录,可畅玩ubuntu20.04系统(本人安装的是Ubuntu 20.04 Desktop 操作系统)。

      若条件充足,可准备一块屏幕、一条HDMI连接线、一根5V/2A以上的电源线及插头(若未超过5V/2A,功率不足,将无法开机,绿灯红灯一直亮着)、一副蓝牙鼠标及键盘。先通过HDMI连接线将旭日X3派和屏幕连接起来,然后接入电源线,红灯和绿灯同时亮起,首次启动可能会有一两分钟的环境准备时间。随后绿灯熄灭,只剩红灯,成功开机,出现以下界面!

        若无屏幕的话,也可采用古月学院的课程-Together-Ros-系统安装配置的相关课程中的方法,使用串口进行SSH连接。详情可进入课程自行观看。

        随后,根据自身需要,进行语言汉化、VNC连接等一系列的配置。

        而安装ROS系统,本人使用了鱼香ROS中的一键安装脚本,https://fishros.org.cn/forum/topic/20/%E5%B0%8F%E9%B1%BC%E7%9A%84%E4%B8%80%E9%94%AE%E5%AE%89%E8%A3%85%E7%B3%BB%E5%88%97?lang=zh-CN,省时省力,避免了许多奇奇怪怪的bug。

        打开终端,在命令行中输入以下命令,启动一键安装脚本:

wget http://fishros.com/install -O fishros && . fishros

        根据提示,选择自己想要安装的ROS版本,本人选择ROS1,以ROS1为基础对其进行开发测试。

        与此同时,TogetherRos是一种ROS(机器人操作系统)开发环境,无需编写代码即可创建自己的机器人应用程序。它基于图形界面让用户可以轻松地使用和管理ROS软件包和节点,并自动处理ROS通信协议。TogetherRos还提供了丰富的仿真工具和插件,可以帮助用户更快速、高效地构建、测试和部署机器人项目.

        如果你是一个机器人爱好者或者在机器人领域有相关工作需要开发期望很快地体验不同方案对指定机器的性能影响,那么推荐使用TogetherRos这个工具提供良好的平台支持。它能够帮助你轻松地完成各种机器人项目,并大大简化了开发过程。与此同时,TogetherRos所搭载的ROS系统是目前机器人领域中最为流行、先进的开源框架之一,拥有强大的通用性和可扩展性。如果你想在机器人领域立足和获得更多的机会,TogetherRos是一个绝佳的选择。

        

        本项目中,使用D435i为基础进行VINS-fusion。D435i是由英特尔推出的一款深度相机,它同时与IMU(惯性测量单元)集成在一起,可以实时获取相机所在位置的6自由度位姿。D435i可以捕捉3D点云,也可以生成RGB图像和红外图片,具有灵活性和多功能性。

        D435i相机应用在视觉SLAM和VINS-fusion中能够得到很好的发挥。在SLAM系统中,D435i可以快速地捕捉场景中的3D信息,同时以其IMU数据辅助位姿估计,从而实现高精度的建图和定位功能。另外,在VINS-fusion项目中,D435i利用其强大的图像采集和6轴全向运动功能,适用于融合视觉和惯性信息的综合性算法研究。D435i可以在机器人导航、无人驾驶汽车、虚拟现实等领域中得到广泛应用。

        总之,在视觉SLAM和VINS-fusion等领域,D435i相机借助其自身高性能的硬件条件和丰富的软件生态,既可以提高应用效率,还能帮助用户节省大量时间和成本,是广大研究开发者不可或缺的工具。

        相机标定是指确定相机的内部和外部参数,例如相机的焦距、畸变系数、旋转矩阵、位置向量等。对于使用D435i相机进行VINS-fusion工作的用户而言,进行相机标定非常重要。下一节内容,我们将为大家讲述基于旭日X3派的相机标定。