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

    在运行摄像头节点时出现报错

    已定时 已固定 已锁定 已移动
    ROS 2相关问题
    ros2 humble v4l2camera 摄像头
    2
    2
    199
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • L
      leolanqin
      最后由 编辑

      终端运行指令

      ros2 run v4l2_camera v4l2_camera_node 
      

      然后终端输出

      [INFO] [1740129310.150471961] [v4l2_camera]: Driver: uvcvideo
      [INFO] [1740129310.151033248] [v4l2_camera]: Version: 331688
      [INFO] [1740129310.151131432] [v4l2_camera]: Device: USB Camera: USB Camera
      [INFO] [1740129310.151178135] [v4l2_camera]: Location: usb-0000:01:00.0-1.2
      [INFO] [1740129310.151216116] [v4l2_camera]: Capabilities:
      [INFO] [1740129310.151256263] [v4l2_camera]:   Read/write: NO
      [INFO] [1740129310.151294726] [v4l2_camera]:   Streaming: YES
      [INFO] [1740129310.151354058] [v4l2_camera]: Current pixel format: MJPG @ 1920x1080
      [INFO] [1740129310.151693294] [v4l2_camera]: Available pixel formats: 
      [INFO] [1740129310.151753626] [v4l2_camera]:   MJPG - Motion-JPEG
      [INFO] [1740129310.151794755] [v4l2_camera]:   YUYV - YUYV 4:2:2
      [INFO] [1740129310.151832773] [v4l2_camera]: Available controls: 
      [INFO] [1740129310.151887587] [v4l2_camera]:   Brightness (1) = 0
      [INFO] [1740129310.151939845] [v4l2_camera]:   Contrast (1) = 34
      [INFO] [1740129310.151990789] [v4l2_camera]:   Saturation (1) = 56
      [INFO] [1740129310.152039881] [v4l2_camera]:   Hue (1) = 0
      [INFO] [1740129310.152087954] [v4l2_camera]:   White Balance, Automatic (2) = 1
      [INFO] [1740129310.152136453] [v4l2_camera]:   Gamma (1) = 100
      [INFO] [1740129310.152183989] [v4l2_camera]:   Gain (1) = 0
      [INFO] [1740129310.152231563] [v4l2_camera]:   Power Line Frequency (3) = 1
      [INFO] [1740129310.152658352] [v4l2_camera]:   White Balance Temperature (1) = 4000 [inactive]
      [INFO] [1740129310.152733444] [v4l2_camera]:   Sharpness (1) = 2
      [INFO] [1740129310.152827553] [v4l2_camera]:   Backlight Compensation (1) = 0
      [ERROR] [1740129310.152889515] [v4l2_camera]: Failed getting value for control 10092545: Permission denied (13); returning 0!
      [INFO] [1740129310.152935329] [v4l2_camera]:   Camera Controls (6) = 0
      [INFO] [1740129310.152987162] [v4l2_camera]:   Auto Exposure (3) = 3
      [INFO] [1740129310.153370119] [v4l2_camera]:   Exposure Time, Absolute (1) = 313 [inactive]
      [INFO] [1740129310.153436433] [v4l2_camera]:   Exposure, Dynamic Framerate (2) = 1
      [ERROR] [1740129310.154025368] [v4l2_camera]: Failed getting value for control 10094856: Input/output error (5); returning 0!
      [INFO] [1740129310.154085033] [v4l2_camera]:   Pan, Absolute (1) = 0
      [ERROR] [1740129310.154709412] [v4l2_camera]: Failed getting value for control 10094857: Input/output error (5); returning 0!
      [INFO] [1740129310.154836244] [v4l2_camera]:   Tilt, Absolute (1) = 0
      [WARN] [1740129310.156985969] [v4l2_camera]: Control type not currently supported: 6, for control: Camera Controls
      terminate called after throwing an instance of 'rclcpp::exceptions::InvalidParameterValueException'
        what():  parameter 'pan_absolute' could not be set: Parameter {pan_absolute} doesn't comply with integer range.
      [ros2run]: Aborted
      

      当前用户是有操作摄像头的权限的,但依然还是出现这些问题,请各位大佬帮忙看看

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

        从您提供的日志信息来看,v4l2_camera_node 在尝试获取和设置摄像头的某些控制参数时遇到了问题。主要问题集中在权限错误、输入输出错误以及参数设置不符合范围。以下是一些可能的解决步骤和检查点:

        1. 权限问题:

          • 尽管您提到当前用户有操作摄像头的权限,但日志中显示获取某些控制值时遇到了“Permission denied”错误。确保您的用户账号在 video 组中(这是Linux系统中常用的用于访问视频设备的组)。您可以通过运行 sudo usermod -aG video $USER 来将当前用户添加到 video 组,然后重新登录或重启系统以确保组更改生效。
        2. 输入输出错误:

          • 这可能意味着设备驱动程序或硬件本身有问题。尝试重新插拔摄像头,查看是否有硬件连接问题。
          • 检查 /dev/video* 设备文件是否存在,并且您的用户账号可以访问它。
        3. 参数设置不符合范围:

          • 日志中提到 parameter 'pan_absolute' could not be set: Parameter {pan_absolute} doesn't comply with integer range. 这表明尝试设置的 pan_absolute 参数值超出了允许的范围。这可能是由于节点内部对参数的错误处理或默认值设置不当。
          • 检查 v4l2_camera_node 的源代码或文档,看看是否有关于这些控制参数的具体说明和范围限制。
        4. 软件和环境问题:

          • 确保您的 ROS 2 和 v4l2_camera 包都是最新版本,或者至少是兼容的版本。
          • 尝试在不同的机器或不同的Linux发行版上运行相同的节点,看看问题是否依然存在。
        5. 调试和日志:

          • 增加日志级别可能会提供更多关于错误的信息。您可以查看 v4l2_camera_node 的启动参数,看看是否有设置日志级别的选项。
          • 使用 strace 或 ltrace 等工具跟踪系统调用和库调用,可能会揭示更具体的错误原因。
        6. 硬件兼容性:

          • 检查您的摄像头是否与 v4l2_camera_node 兼容。有些摄像头可能不完全支持V4L2标准或特定的控制功能。

        通过上述步骤,您应该能够更接近问题的根源,并找到适当的解决方案。如果问题依然存在,考虑在 ROS 社区或相关论坛发帖寻求更专业的帮助。


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

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

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