代码之家  ›  专栏  ›  技术社区  ›  Mr.Yeah

WbCmd Movesense:放置物体的问题

  •  0
  • Mr.Yeah  · 技术社区  · 4 年前

    我正在使用PowerShell在Windows上进行测试。

    当我把简单的类型像 bool ,WbCmd按预期工作。

    PS> wbcmd --port TCP7044 --path /Component/Led --op put --opdatatype bool --opdata true
    WbCmd Movesense:
    {
      "response": 200,
      "responsestring": "HTTP_CODE_OK",
      "operation": "put",
      "uri": "/net/ECSI00000000/Component/Led",
      "querytimems": 0,
      "querytimens": 536100
    }
    

    但是当我尝试放置一个对象时,它“找不到数据类型”

    PS> wbcmd --port TCP7044 --path /Component/Leds/0 --op get
    WbCmd Movesense:
    {
      "response": 200,
      "responsestring": "HTTP_CODE_OK",
      "operation": "get",
      "uri": "/net/ECSI00000000/Component/Leds/0",
      "content": {
        "IsOn": true,
        "LedColor": [
          0,
          "Red"
        ]
      },
      "querytimems": 0,
      "querytimens": 613500
    }
    
    PS> wbcmd --port TCP7044 --path /Component/Leds/0 --op put --opdatatype LedState --opdata '{ "LedState":
    { "IsOn": false, "LedColor": 0 } }'
    WbCmd Movesense:
    {
      "response": 404,
      "responsestring": "Failed to find data type LedState",
      "operation": "put",
      "uri": "/net/ECSI00000000/Component/Leds/0",
      "querytimems": 3,
      "querytimens": 3526200
    }
    

    我如何解决这个问题,或者获取更多关于后台发生的事情的信息?

    0 回复  |  直到 4 年前
        1
  •  0
  •   PetriL    4 年前

    在Movesense传感器中有两个引导的API。具有真/假值的简单/组件/Led(与当前Movesense传感器中的单个Led匹配)。添加了第二个LED API,以支持其他Movesense兼容设备中的多个/多色LED。

    对于Movesense传感器,我建议使用简单的API。然而,要使用wbcmd来处理复杂的API,请使用以下命令(我已经测试过,它在Mac中运行过,这就是为什么端口看起来像这样):

    wbcmd --port /dev/cu.usbserial-AL01XHQC --path /component/leds/0 --op put --opdata '{"IsOn":true}'
    

    完全披露:我为Movesense团队工作

    推荐文章