# 1. 检查能否 ping 通ping 10.1.1.171# 2. 查看是否能连接 ROS Masterrostopic list# 3. 检查 ROS_MASTER_URI 和 ROS_IP 是否设置正确echo $ROS_MASTER_URIecho $ROS_IP黄金法则:80% 的分布式 ROS 问题都源于网络配置错误。始终先检查网络环境变量。
---
结语
恭喜你读到这里!从硬件联通、驱动配置,到定位建图、轨迹规划,再到系统集成和故障排查,我们覆盖了 USV 开发过程中的核心环节。
这份指南的核心思想是:逐模块验证,循序渐进集成,系统日志先行。不要被整个系统的复杂度吓倒——每一个模块本身都相对独立,只要确保网络通、驱动装、参数对,剩下的就是反复调试和优化。
关键要点回顾
1. 网络是基础:激光雷达、ROS 通信、远程控制都依赖网络。遇到怪问题,先 ping、再 tcpdump,99% 的情况下是网络配置或 IP 地址。
2. 模块独立性:在集成前,务必单独验证每个部分(激光雷达能否发数据、FAST-LIO 能否建图、Ego-Planner 能否规划)。
3. 参数和外参很关键:特别是激光雷达的外参和坐标系定义,这些往往是隐藏的、难以调试的问题。花时间验证一次,可以省掉后续的百般困扰。
4. 文档和日志是你的朋友:记录每次修改、每个成功的配置、每个失败的原因。后续复现和扩展会轻松很多。
进阶建议
• 性能优化:一旦系统跑通,可以考虑优化计算图、减少话题频率、使用话题同步等手段,提升整体效率。
• 鲁棒性测试:在不同环境、不同天气、不同的船体配置下测试,记录系统的适应范围。
• 模块替换:掌握这套框架后,可以合理地替换其中的模块(如换成其他定位算法、规划器或控制器),逐步构建属于自己的系统。
最后的话
USV 是一个涉及感知、规划、控制多个领域的系统。开发过程中会遇到各种出乎意料的问题,但这正是学习的机会。每解决一个问题,你就深入理解了系统的一个层面。
祝你的 USV 早日遨游四海!如果在开发中遇到新的坑或有更好的解决方案,欢迎反馈和分享,让我们一起完善这份指南。
---
相关资源:
• FAST-LIO GitHub
• Ego-Planner GitHub
• ROS 官方文档
• Livox SDK
祝开发顺利!