鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    制作一个基于ros的自动导航机器人

    已定时 已固定 已锁定 已移动
    VIP问答专区
    树莓派3b, slam 树莓派安装ros imuutils,ros2
    4
    20
    3.7k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 1
      1117 年度VIP
      最后由 编辑

      使用店铺买的FishBot基础款,进行制作,需要添加一个树莓派完成一个自动导航功能

      小鱼小 1 条回复 最后回复 回复 引用 1
      • 小伊小
        机器人小伊
        最后由 编辑

        制作一个基于ROS(Robot Operating System)的自动导航机器人,使用店铺购买的FishBot基础款,并添加一个树莓派来完成自动导航功能,以下是一个大致的步骤指南:

        一、准备工作

        1. 硬件准备:

          • FishBot基础款
          • 树莓派(推荐带有足够GPIO接口的型号,以便连接传感器和执行器)
          • 电源、连接线、USB接口等配件
          • 激光雷达或其他距离传感器(用于导航和避障)
          • 电机驱动器(如果FishBot未配备)
        2. 软件准备:

          • ROS 2(推荐最新版本)
          • 导航相关功能包(如nav2)
          • 树莓派操作系统(如Raspbian或Ubuntu Mate for Raspberry Pi)
          • Python编程语言(用于编写控制脚本)

        二、硬件搭建

        1. 连接树莓派与FishBot:

          • 将树莓派通过USB或串口连接到FishBot的主控板。
          • 连接激光雷达或其他传感器到树莓派的GPIO接口。
          • 确保电机驱动器与FishBot的电机正确连接。
        2. 电源管理:

          • 确保FishBot和树莓派都有稳定的电源供应。
          • 如果需要,可以使用电池组为整个系统供电。

        三、软件配置

        1. 安装ROS 2:

          • 在树莓派上安装ROS 2。可以通过官方文档获取安装指南。
          • 配置ROS 2环境变量,并安装必要的依赖项。
        2. 安装导航功能包:

          • 安装nav2功能包,这是ROS 2中用于导航的主要功能包。
          • 确保所有相关的依赖项都已正确安装。
        3. 配置导航参数:

          • 创建或修改导航配置文件,包括地图文件、定位算法参数、路径规划算法参数等。
          • 将地图文件加载到map_server中。

        四、编写控制脚本

        1. 编写启动文件:

          • 编写一个ROS 2的启动文件,用于启动导航功能包和其他必要的节点。
          • 确保启动文件中包含了地图、配置文件等必要的信息。
        2. 编写Python控制脚本:

          • 使用Python编写控制脚本,用于接收导航指令并控制FishBot的运动。
          • 脚本中应包含与ROS 2节点的通信逻辑,以及控制电机和传感器的代码。

        五、调试与测试

        1. 启动ROS 2核心:

          • 在树莓派上启动ROS 2核心,并加载必要的节点。
        2. 加载地图与导航配置:

          • 使用map_server加载地图文件。
          • 配置导航功能包以使用正确的定位算法和路径规划算法。
        3. 测试导航功能:

          • 使用RVIZ或其他可视化工具来监控FishBot的导航过程。
          • 在RVIZ中设置目标点,并观察FishBot是否能够成功到达目标。
          • 根据测试结果调整导航参数和控制脚本。
        4. 优化性能:

          • 根据实际测试情况,对导航算法、控制逻辑和硬件连接进行优化。
          • 确保FishBot在复杂环境中也能稳定导航。

        六、总结与扩展

        1. 总结:

          • 完成上述步骤后,你应该能够使用ROS 2和树莓派来控制FishBot进行自动导航。
          • 回顾整个制作过程,记录遇到的问题和解决方案。
        2. 扩展:

          • 考虑添加更多的传感器和执行器,以提高FishBot的感知能力和运动灵活性。
          • 探索ROS 2中的其他功能包和算法,以进一步扩展FishBot的功能。

        请注意,以上步骤仅为一个大致的指南,具体实现时可能需要根据FishBot的硬件规格和树莓派的型号进行调整。同时,ROS 2和导航功能包的版本也可能会有所更新,因此建议参考最新的官方文档和教程。


        以上为生成回答,仅供参考~

        我是小伊,已接入ChatGpt,所有回复,仅供参考~

        1 1 条回复 最后回复 回复 引用 0
        • 小鱼小
          小鱼 技术大佬 @1117
          最后由 编辑

          @1117 看一下配套资料,不需要树莓派也可完成自动导航功能。:https://fishros.org.cn/forum/topic/923/fishbot配套资料教程汇总

          如果必须要求使用树莓派,请参考教程

          @小鱼 在 FishBot配套资料教程汇总 中说:

          拓展1:FishBot配套雷达驱动教程(源码版)
          拓展2:树莓派上使用micros-agent驱动主控板的方法
          拓展3:FishBot 树莓派配置建图导航

          新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

          1 1 条回复 最后回复 回复 引用 0
          • 1
            1117 年度VIP @小鱼
            最后由 编辑

            @小鱼 小鱼,俺需要基于你的小车,添加一个树莓派完成自动导航机器人,因为是毕设,不加树莓派的话,认为工作量不够,害

            小鱼小 1 条回复 最后回复 回复 引用 0
            • 小鱼小
              小鱼 技术大佬 @1117
              最后由 编辑

              @1117 那你按照拓展1/2/3尝试一下,遇到具体问题再提问

              新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

              1 条回复 最后回复 回复 引用 0
              • 1
                1117 年度VIP @小伊
                最后由 编辑

                @小伊 树莓派3B可以烧录ubantu22.04吗?

                1 条回复 最后回复 回复 引用 0
                • 小伊小
                  机器人小伊
                  最后由 编辑

                  树莓派3B可以烧录Ubuntu 22.04。虽然Ubuntu 22.04的官方系统要求中并未直接提及树莓派3B的兼容性,但根据树莓派的硬件性能和社区支持情况,树莓派3B及其后续型号(如3B+)通常能够支持较新版本的Linux操作系统,包括Ubuntu 22.04。

                  在烧录Ubuntu 22.04到树莓派3B时,需要注意以下几点:

                  1. 硬件要求:确保树莓派3B的硬件配置满足Ubuntu 22.04的基本要求。虽然Ubuntu 22.04的官方要求可能更侧重于x86_64架构的处理器和较大的内存容量,但树莓派3B的ARM架构处理器和1GB内存通常足以支持轻量级到中等负载的Ubuntu 22.04安装。
                  2. 镜像文件:从Ubuntu的官方网站或其他可靠的镜像源下载Ubuntu 22.04的ARM架构镜像文件。确保选择与树莓派兼容的镜像版本。
                  3. 烧录工具:使用适当的工具(如Etcher或Win32DiskImager)将Ubuntu 22.04镜像文件烧录到SD卡上。在烧录之前,请确保SD卡已正确格式化。
                  4. 启动和配置:将烧录好的SD卡插入树莓派3B,然后通电启动。根据屏幕上的指示完成Ubuntu 22.04的初始配置。可能需要设置用户名、密码、时区等基本信息。
                  5. 远程访问:如果需要远程访问树莓派上的Ubuntu 22.04系统,可以配置SSH服务或使用其他远程桌面工具(如xrdp和GNOME桌面)。这允许你从其他计算机上安全地访问和管理树莓派上的系统。

                  需要注意的是,由于树莓派3B的硬件性能有限,因此在运行Ubuntu 22.04时可能会遇到一些性能瓶颈。如果计划运行资源密集型的应用程序或服务,请考虑使用更高性能的树莓派型号(如4B)或其他更强大的硬件平台。

                  总之,虽然Ubuntu 22.04不是为树莓派3B量身定制的操作系统,但经过适当的配置和优化,它仍然可以在树莓派3B上运行并提供丰富的功能和良好的用户体验。


                  以上为生成回答,仅供参考~

                  我是小伊,已接入ChatGpt,所有回复,仅供参考~

                  1 1 条回复 最后回复 回复 引用 0
                  • 1
                    1117 年度VIP @小伊
                    最后由 编辑

                    @小伊 到时候安装ros2,安装32位还是64位的ubantu22.04?

                    小鱼小 1 条回复 最后回复 回复 引用 0
                    • 小伊小
                      机器人小伊
                      最后由 编辑

                      在安装ROS 2时,选择32位还是64位的Ubuntu 22.04主要取决于你的具体需求和硬件兼容性。以下是对两种版本的详细分析:

                      64位Ubuntu 22.04

                      • 优势:

                        • 性能:64位系统能够处理更大的内存地址空间,因此在理论上可以提供更好的性能,特别是对于需要大量内存和计算资源的ROS 2应用来说。
                        • 软件兼容性:许多现代软件和库都优先支持64位系统,因此你可能会遇到更少的兼容性问题。
                        • 社区支持:由于64位系统更为普遍,因此你可能会获得更广泛的社区支持和资源。
                      • 适用场景:

                        • 如果你有足够的硬件资源(如内存和CPU),并且希望获得最佳的性能和兼容性,那么64位Ubuntu 22.04是一个很好的选择。

                      32位Ubuntu 22.04

                      • 优势:

                        • 硬件兼容性:如果你的硬件(如CPU)仅支持32位操作系统,那么32位Ubuntu 22.04将是唯一的选择。
                        • 特定需求:在某些特定情况下,你可能需要使用32位系统来满足特定的软件或硬件要求。
                      • 适用场景:

                        • 如果你的硬件资源有限,或者你的硬件仅支持32位操作系统,那么32位Ubuntu 22.04可能是一个合适的选择。然而,请注意,随着技术的发展,越来越多的硬件和软件开始转向64位支持。

                      注意事项

                      • ROS 2支持:ROS 2本身对32位和64位系统都有一定的支持,但具体的支持程度可能因ROS 2的版本和发行版而有所不同。因此,在安装之前,请务必查阅ROS 2的官方文档以获取最新的支持信息。
                      • 编译需求:如果你需要从源代码编译ROS 2或其组件,那么64位系统可能会提供更广泛的编译工具和库支持。

                      综上所述,如果你的硬件支持64位操作系统,并且你希望获得最佳的性能和兼容性,那么建议选择64位Ubuntu 22.04来安装ROS 2。如果你的硬件仅支持32位操作系统,或者你有特定的32位软件需求,那么32位Ubuntu 22.04也是一个可行的选择。


                      以上为生成回答,仅供参考~

                      我是小伊,已接入ChatGpt,所有回复,仅供参考~

                      1 1 条回复 最后回复 回复 引用 0
                      • 小鱼小
                        小鱼 技术大佬 @1117
                        最后由 编辑

                        @1117 选64

                        新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                        1 条回复 最后回复 回复 引用 1
                        • 1
                          1117 年度VIP @小伊
                          最后由 编辑

                          @小伊 好的,谢谢小鱼,我虽然已经知道了(先用32的,失败,然后重新烧了64的,然后成功)👍 👍 👍

                          小鱼小 1 条回复 最后回复 回复 引用 0
                          • 小鱼小
                            小鱼 技术大佬 @1117
                            最后由 编辑

                            @1117 实践出真知~

                            新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                            1 条回复 最后回复 回复 引用 0
                            • 2
                              2075605318 年度VIP
                              最后由 编辑

                              树莓派5无法烧录ubuntu2204,吗

                              1 小鱼小 2 条回复 最后回复 回复 引用 0
                              • 1
                                1117 年度VIP @2075605318
                                最后由 编辑

                                @2075605318 肯定是可以的吧,我树莓派3都可以,你可能是烧的版本不对

                                小鱼小 1 条回复 最后回复 回复 引用 0
                                • 小鱼小
                                  小鱼 技术大佬 @2075605318
                                  最后由 编辑

                                  @2075605318 5确实不行

                                  新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                                  1 1 条回复 最后回复 回复 引用 0
                                  • 小鱼小
                                    小鱼 技术大佬 @1117
                                    最后由 编辑

                                    @1117 不知道有没有hack方法,主要是有没有定制内核之类的

                                    新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                                    1 条回复 最后回复 回复 引用 0
                                    • 1
                                      1117 年度VIP @小鱼
                                      最后由 编辑

                                      @小鱼 鱼哥,树莓派和买的那个二驱的机器人,一般怎么连接接线呀?

                                      1 1 条回复 最后回复 回复 引用 0
                                      • 1
                                        1117 年度VIP @1117
                                        最后由 编辑

                                        @1117 li@ubantu:~$ sudo apt update
                                        忽略:1 https://mirrors.ustc.edu.cn/ubuntu jammy InRelease
                                        忽略:2 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy InRelease
                                        忽略:3 https://packages.ros.org/ros2/ubuntu jammy InRelease
                                        忽略:4 https://mirrors.ustc.edu.cn/ubuntu jammy-updates InRelease
                                        忽略:2 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy InRelease
                                        忽略:3 https://packages.ros.org/ros2/ubuntu jammy InRelease
                                        忽略:5 https://mirrors.ustc.edu.cn/ubuntu jammy-backports InRelease
                                        忽略:3 https://packages.ros.org/ros2/ubuntu jammy InRelease
                                        忽略:2 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy InRelease
                                        忽略:6 https://mirrors.ustc.edu.cn/ubuntu jammy-security InRelease
                                        错误:3 https://packages.ros.org/ros2/ubuntu jammy InRelease
                                        暂时不能解析域名“packages.ros.org”
                                        错误:2 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy InRelease
                                        暂时不能解析域名“mirrors.tuna.tsinghua.edu.cn”
                                        忽略:1 https://mirrors.ustc.edu.cn/ubuntu jammy InRelease
                                        忽略:4 https://mirrors.ustc.edu.cn/ubuntu jammy-updates InRelease
                                        忽略:5 https://mirrors.ustc.edu.cn/ubuntu jammy-backports InRelease
                                        忽略:6 https://mirrors.ustc.edu.cn/ubuntu jammy-security InRelease
                                        忽略:1 https://mirrors.ustc.edu.cn/ubuntu jammy InRelease
                                        忽略:4 https://mirrors.ustc.edu.cn/ubuntu jammy-updates InRelease
                                        忽略:5 https://mirrors.ustc.edu.cn/ubuntu jammy-backports InRelease
                                        忽略:6 https://mirrors.ustc.edu.cn/ubuntu jammy-security InRelease
                                        错误:1 https://mirrors.ustc.edu.cn/ubuntu jammy InRelease
                                        暂时不能解析域名“mirrors.ustc.edu.cn”
                                        错误:4 https://mirrors.ustc.edu.cn/ubuntu jammy-updates InRelease
                                        暂时不能解析域名“mirrors.ustc.edu.cn”
                                        错误:5 https://mirrors.ustc.edu.cn/ubuntu jammy-backports InRelease
                                        暂时不能解析域名“mirrors.ustc.edu.cn”
                                        错误:6 https://mirrors.ustc.edu.cn/ubuntu jammy-security InRelease
                                        暂时不能解析域名“mirrors.ustc.edu.cn”
                                        正在读取软件包列表... 完成
                                        正在分析软件包的依赖关系树... 完成
                                        正在读取状态信息... 完成
                                        有 163 个软件包可以升级。请执行 ‘apt list --upgradable’ 来查看它们。
                                        W: 无法下载 https://mirrors.ustc.edu.cn/ubuntu/dists/jammy/InRelease 暂时不能解析域名“mirrors.ustc.edu.cn”
                                        W: 无法下载 https://mirrors.ustc.edu.cn/ubuntu/dists/jammy-updates/InRelease 暂时不能解析域名“mirrors.ustc.edu.cn”
                                        W: 无法下载 https://mirrors.ustc.edu.cn/ubuntu/dists/jammy-backports/InRelease 暂时不能解析域名“mirrors.ustc.edu.cn”
                                        W: 无法下载 https://mirrors.ustc.edu.cn/ubuntu/dists/jammy-security/InRelease 暂时不能解析域名“mirrors.ustc.edu.cn”
                                        W: 无法下载 http://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu/dists/jammy/InRelease 暂时不能解析域名“mirrors.tuna.tsinghua.edu.cn”
                                        W: 无法下载 https://packages.ros.org/ros2/ubuntu/dists/jammy/InRelease 暂时不能解析域名“packages.ros.org”
                                        W: 部分索引文件下载失败。如果忽略它们,那将转而使用旧的索引文件。
                                        出现这个是什么原因呢?之前还没有。我在尝试解决无法定位软件包的时候出现的

                                        小鱼小 1 2 条回复 最后回复 回复 引用 0
                                        • 小鱼小
                                          小鱼 技术大佬 @1117
                                          最后由 编辑

                                          @1117 看起来像是电脑没网

                                          新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                                          1 条回复 最后回复 回复 引用 0
                                          • 1
                                            1117 年度VIP @1117
                                            最后由 编辑

                                            @1117 4d5961c6-a6f5-49a7-941c-7d330d480193-image.png 鱼哥,好像就这个克隆一直出问题

                                            1 条回复 最后回复 回复 引用 0
                                            • 第一个帖子
                                              最后一个帖子
                                            皖ICP备16016415号-7
                                            Powered by NodeBB | 鱼香ROS