在RISC-V上使用mid360

在RISC-V上使用mid360

因为学习需要用了一段时间的ROS2,又因为实习工作原因在用RISC-V架构的开发板,于是自然而然的想到了在RISC-V上使用ROS2

刚巧RevyOS完成了适配,在手头的LicheePi4A上安装后发现一切都很顺利,就想尝试实际应用一下了

众所周知啊,ROS2是用于机器人相关开发的,必然要使用到很多硬件;但在此同时呢,绝大多数硬件开发时完全不可能考虑到它在rv架构的兼容性,所以恐怕都比较寄。但是呢,手头刚好有一些mid360激光雷达,它使用TCP/IP来传输数据,兼容性上不容易出问题;同时它也不像工业相机那样有很大的数据量,这块性能羸弱的开发板应该可以正常收发,于是简单尝试了一下

非常出人意料的是,Livox提供的sdk的屎代码虽然使用高版本gcc无法编译[1],但是我切换到RevyOS源中的gcc-12后就可以正常编译了,只有几个WARNING,与x86上无异

然后运行[2]livox-ros-driver2,就可以在rviz中看到雷达获取的点云了

这里要吐槽一下,他家有livox_ros_driver livox_ros_driver2 livox_ros2_driver,不光代码很屎山,名字还起的这么绕

ros2 topic hz查看点云的帧率是正常的,但在rviz中看非常卡,如果要移动视角的话更是低于1fps

这大概是因为缺少gpu驱动,这个xfce桌面没有使用图形加速;而cpu本身性能就不行,还要负担这么重的图形计算任务,结果就是非常糟糕的体验

等有了性能足够的芯片以及在图形方面足够的软件支持,或许可以尝试一下把现在做的东西迁移到risc-v上来


  1. 这是我之前就发现的问题,在x86_64也是这样的,与risc-v无关 ↩︎

  2. 这里使用的不是官方仓库的,而是一个第三方修改版,实际功能等都没有变化,只是让代码变得没有那么💩。我后来还提交了一个PR ↩︎

作者

stydxm

发布于

2025-01-29

更新于

2025-01-29

许可协议

CC BY-NC-SA 4.0

评论