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

    [FishBot教程]9.0.4.使用ROS2键盘控制FishBot

    已定时 已固定 已锁定 已移动
    FishBot二驱机器人
    fishbot 键盘控制 机器人
    35
    91
    35.9k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 1
      1664486711 @小鱼
      最后由 编辑

      @小鱼 你好我的小车按键没反应

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

        @1664486711 https://fishros.org.cn/forum/topic/151/提问前必看-不符合要求的问题拒绝回答

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

        1 1 条回复 最后回复 回复 引用 0
        • 1
          1664486711 @小鱼
          最后由 编辑

          @小鱼
          小车按键没反应前进后退左右转都没有反应网络能ping通

          wanghuan@wanghuan-virtual-machine:~/桌面$ ros2 run teleop_twist_keyboard teleop_twist_keyboard
          
          This node takes keypresses from the keyboard and publishes them
          as Twist/TwistStamped messages. It works best with a US keyboard layout.
          ---------------------------
          Moving around:
            u    i    o
            j    k    l
            m    ,    .
          
          For Holonomic mode (strafing), hold down the shift key:
          ---------------------------
            U    I    O
            J    K    L
            M    <    >
          
          t : up (+z)
          b : down (-z)
          
          anything else : stop
          
          q/z : increase/decrease max speeds by 10%
          w/x : increase/decrease only linear speed by 10%
          e/c : increase/decrease only angular speed by 10%
          
          CTRL-C to quit
          
          currently:	speed 0.5	turn 1.0 
          currently:	speed 0.55	turn 1.0 
          currently:	speed 0.6050000000000001	turn 1.0 
          currently:	speed 0.6655000000000002	turn 1.0 
          currently:	speed 0.5989500000000002	turn 1.0 
          currently:	speed 0.5390550000000002	turn 1.0 
          currently:	speed 0.4851495000000002	turn 1.0 
          currently:	speed 0.4366345500000002	turn 1.0 
          currently:	speed 0.39297109500000016	turn 1.0 
          currently:	speed 0.3536739855000002	turn 1.0 
          currently:	speed 0.3183065869500002	turn 1.0 
          currently:	speed 0.35013724564500026	turn 1.0 
          currently:	speed 0.38515097020950034	turn 1.0 
          currently:	speed 0.4236660672304504	turn 1.0 
          currently:	speed 0.4660326739534955	turn 1.0 
          currently:	speed 0.5126359413488452	turn 1.0 
          
          
          小鱼小 1 条回复 最后回复 回复 引用 0
          • 小鱼小
            小鱼 技术大佬 @1664486711
            最后由 小鱼 编辑

            @1664486711 请提供!

            1.系统版本,ROS2版本,microros_agent 版本信息
            2.小车控制板版本和小车固件版本
            3.前置所有操作
            4.所有网路ip信息
            5.ping延迟信息
            6.microros-agent 终端日志

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

            1 条回复 最后回复 回复 引用 0
            • 1
              1664486711 @小鱼
              最后由 编辑

              此回复已被删除!
              小鱼小 1 条回复 最后回复 回复 引用 0
              • 小鱼小
                小鱼 技术大佬 @1664486711
                最后由 编辑

                @1664486711 按我的要求提供下相关信息,能不能输出pose不重要

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

                1 条回复 最后回复 回复 引用 0
                • 小鱼小 小鱼 在 中 引用了 这个主题
                • 8
                  862524030 年度VIP @andrew_liumuran
                  最后由 编辑

                  @andrew_liumuran 重启之电脑后打开再microros就可以了把 我是这么解决的

                  1 条回复 最后回复 回复 引用 1
                  • 5
                    591259845
                    最后由 591259845 编辑

                    前面的键盘控制功能都是好的,但是启动rviz2时报错,启动界面闪退,请问下是什么原因?

                    sszb-wan@sszb-2:/mnt/c/WINDOWS/system32$ rviz2
                    QStandardPaths: wrong permissions on runtime directory /run/user/1000/, 0755 instead of 0700
                    Segmentation fault (core dumped)

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

                      @591259845 哈喽,问一下解决办法

                      5 1 条回复 最后回复 回复 引用 0
                      • 5
                        591259845 @1117
                        最后由 编辑

                        @1117 用wsl需要安装linux GUI应用
                        https://learn.microsoft.com/zh-cn/windows/wsl/tutorials/gui-apps?ocid=_reactor_oct_shanghai_social_organic_youtube_win11-klo

                        1 条回复 最后回复 回复 引用 0
                        • P
                          pst
                          最后由 编辑

                          小鱼,请问在执行这条运行agent的指令时:sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6,请问这个micro-ros-agent镜像是通过docker在线下载并运行的,还是之前就已经下载好的镜像然后通过docker运行下而已?一直没看懂这个agent镜像怎么来的,如果在线的方式的仅仅通过microros/micro-ros-agent这个镜像名就可以定位到这个吗?这个是通用的官方文件是吧??

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

                            @pst 有一个网站叫 docker hub

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

                            1 条回复 最后回复 回复 引用 0
                            • 1
                              1039995947 @andrew_liumuran
                              最后由 编辑

                              @andrew_liumuran +1求解决

                              1 条回复 最后回复 回复 引用 0
                              • 小螃蟹小
                                小螃蟹
                                最后由 编辑

                                小鱼您好,我在运行

                                sudo docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6
                                

                                指令时,一旦我用新的终端窗口跑指令,原本的窗口就会出现以下报错

                                terminate called after throwing an instance of 'eprosima::fastcdr::exception::NotEnoughMemoryException'
                                  what():  Not enough memory in the buffer stream
                                [ros2run]: Aborted
                                
                                

                                请求小鱼帮一下解决问题

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

                                  @13826968556

                                  @小鱼 在 【鱼香ROS】社区问答规则(小鱼个人)更新 中说:

                                  请详细说明:系统版本、操作步骤,并提供文字版终端日志或代码(便于排查问题)

                                  什么系统版本

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

                                  小螃蟹小 1 条回复 最后回复 回复 引用 0
                                  • 小螃蟹小
                                    小螃蟹
                                    最后由 小螃蟹 编辑

                                    截图 2025-07-17 14-19-02.png
                                    您好,我在笔记本的Ubuntu 24.04.1 LTS双系统上运行9.0.4,但每次开新的终端跑键盘,原本接收数据的终端就会内存泄漏。麻烦小鱼或其他大佬帮忙看看问题回复,在此非常感谢!

                                    1 条回复 最后回复 回复 引用 0
                                    • 小螃蟹小
                                      小螃蟹 @小鱼
                                      最后由 编辑

                                      @小鱼
                                      Ubuntu 24.04.1 LTS

                                      开终端
                                      docker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host registry.cn-hangzhou.aliyuncs.com/fishros/micro-ros-agent:humble udp4 --port 8888 -v6
                                      开新终端
                                      ros2 run teleop_twist_keyboard teleop_twist_keyboard

                                      原终端

                                      [1752732918.127213] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0x2A8750AE, topic_id: 0x000(2), participant_id: 0x000(1)
                                      [1752732918.127246] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 14, data: 
                                      0000: 81 80 01 00 05 01 06 00 00 0B 00 02 00 00
                                      [1752732918.127253] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
                                      [1752732918.164447] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0B 01 05 00 01 00 01 00 80
                                      [1752732918.236313] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0B 01 05 00 01 00 01 00 80
                                      [1752732918.236517] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
                                      [1752732918.364735] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0B 01 05 00 01 00 01 00 80
                                      [1752732918.370782] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
                                      [1752732918.389860] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 24, data: 
                                      0000: 81 80 02 00 01 07 10 00 00 0C 00 03 03 03 00 01 02 00 00 00 00 00 00 01
                                      [1752732918.389890] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
                                      [1752732918.389899] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0B 01 05 00 02 00 02 00 80
                                      [1752732918.390052] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 02 00 00 01 80
                                      [1752732918.390108] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0x2A8750AE, publisher_id: 0x000(3), participant_id: 0x000(1)
                                      [1752732918.390128] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 14, data: 
                                      0000: 81 80 02 00 05 01 06 00 00 0C 00 03 00 00
                                      [1752732918.390134] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
                                      [1752732918.455072] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 02 00 00 00 80
                                      [1752732918.455098] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 24, data: 
                                      0000: 81 80 02 00 01 07 10 00 00 0C 00 03 03 03 00 01 02 00 00 00 00 00 00 01
                                      [1752732918.455265] debug    | UDPv4AgentLinux.cpp | send_message             | [** <<UDP>> **]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
                                      [1752732918.541929] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 13, data: 
                                      0000: 81 00 00 00 0A 01 05 00 03 00 00 00 80
                                      [1752732918.542394] debug    | UDPv4AgentLinux.cpp | recv_message             | [==>> UDP <<==]        | client_key: 0x2A8750AE, len: 36, data: 
                                      0000: 81 80 03 00 01 07 1C 00 00 0D 00 05 05 03 00 01 0E 00 00 00 00 02 01 00 02 00 01 B3 05 00 00 00
                                      0020: 00 00 00 03
                                      terminate called after throwing an instance of 'eprosima::fastcdr::exception::NotEnoughMemoryException'
                                        what():  Not enough memory in the buffer stream
                                      [ros2run]: Aborted
                                      
                                      

                                      新终端

                                      
                                      This node takes keypresses from the keyboard and publishes them
                                      as Twist/TwistStamped messages. It works best with a US keyboard layout.
                                      ---------------------------
                                      Moving around:
                                         u    i    o
                                         j    k    l
                                         m    ,    .
                                      
                                      For Holonomic mode (strafing), hold down the shift key:
                                      ---------------------------
                                         U    I    O
                                         J    K    L
                                         M    <    >
                                      
                                      t : up (+z)
                                      b : down (-z)
                                      
                                      anything else : stop
                                      
                                      q/z : increase/decrease max speeds by 10%
                                      w/x : increase/decrease only linear speed by 10%
                                      e/c : increase/decrease only angular speed by 10%
                                      
                                      CTRL-C to quit
                                      
                                      currently:	speed 0.5	turn 1.0 
                                      
                                      
                                      1 条回复 最后回复 回复 引用 0
                                      • 第一个帖子
                                        最后一个帖子
                                      皖ICP备16016415号-7
                                      Powered by NodeBB | 鱼香ROS