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

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

    已定时 已固定 已锁定 已移动
    FishBot二驱机器人
    fishbot 键盘控制 机器人
    35
    91
    35.7k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 小鱼小
      小鱼 技术大佬 @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