Project

General

Profile

Http api

  1. 获取设备信息(GET)
    http://192.168.36.140/ISAPI/System/deviceInfo
    
  2. 获取通道信息(GET)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/3
    <?xml version="1.0" encoding="UTF-8"?>
    <PTZChannel version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
        <id>3</id>
        <enabled>true</enabled>
        <videoInputID>3</videoInputID>
        <panMaxSpeed>400</panMaxSpeed>
        <tiltMaxSpeed>200</tiltMaxSpeed>
        <presetSpeed>4</presetSpeed>
        <autoPatrolSpeed>70</autoPatrolSpeed>
        <keyBoardControlSpeed>normal</keyBoardControlSpeed>
        <controlProtocol>PELCO-D</controlProtocol>
        <controlAddress>
            <enabled>true</enabled>
            <Address>0</Address>
        </controlAddress>
        <defaultPresetID>1</defaultPresetID>
        <PTZRs485Para>
            <baudRate>9600</baudRate>
            <dataBits>8</dataBits>
            <parityType>none</parityType>
            <stopBits>1</stopBits>
            <flowCtrl>none</flowCtrl>
        </PTZRs485Para>
        <panSupport>true</panSupport>
        <tiltSupport>true</tiltSupport>
        <zoomSupport>true</zoomSupport>
        <manualControlSpeed>selfadaptive</manualControlSpeed>
    </PTZChannel>
    
  3. 获取通道能力(GET)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/3/capabilities
    
  4. 获取通道信息(GET)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/3
    
  5. 查看预置位(GET)
    http://192.168.36.140/ISAPI/PTZCtrl/PTZViewPreset?format=json
    application/x-www-form-urlencoded
    {"view":"2"}
    
  6. 获取高精度绝对PTZ运动控制能力(GET)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/1/absoluteEx/capabilities
    <?xml version="1.0" encoding="UTF-8"?>
    <PTZAbsoluteEx version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
        <elevation min="-37.62" max="72.38">0</elevation>
        <azimuth min="0" max="360">0</azimuth>
        <absoluteZoom min="1" max="40">1</absoluteZoom>
        <focus min="4096" max="49152"/>
        <horizontalSpeed min="0.1" max="210"/>
        <verticalSpeed min="0.1" max="149.9"/>
    </PTZAbsoluteEx>
    
  7. 高精度绝对PTZ运动控制参数(获取位置信息)(GET/PUT)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/1/absoluteEx
    <?xml version="1.0" encoding="UTF-8"?>
    <PTZAbsoluteEx version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
        <elevation>0</elevation>
        <azimuth>0</azimuth>
        <absoluteZoom>1</absoluteZoom>
        <focus>25528</focus>
    </PTZAbsoluteEx>
    
  8. 控制云台/枪机转动(枪机需要先解锁)(PUT)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/1/continuous
    <?xml version="1.0" encoding="UTF-8"?><PTZData><pan>-60</pan><tilt>0</tilt></PTZData>
    <?xml version="1.0" encoding="UTF-8"?><PTZData><pan>0</pan><tilt>0</tilt></PTZData>
    
    http://192.168.36.140/ISAPI/PTZCtrl/channels/3/continuous
    <?xml version="1.0" encoding="UTF-8"?><PTZData><pan>-60</pan><tilt>0</tilt></PTZData>
    <?xml version="1.0" encoding="UTF-8"?><PTZData><pan>0</pan><tilt>0</tilt></PTZData>
    
  9. 锁定/解锁枪机转动(对2/3通道同时生效)(PUT)
    <!-- 解锁2/3通道都可以 -->
    http://192.168.36.140/ISAPI/PTZCtrl/channels/2/manualPTZUnlock?format=json
    <!-- 锁定只有2通道可以 -->
    http://192.168.36.140/ISAPI/PTZCtrl/channels/2/manualPTZLock?format=json
    
  10. 查看解锁剩余时间(GET)
    <!-- 查看解锁剩余时间2/3通道都可以 -->
    http://192.168.36.140/ISAPI/PTZCtrl/channels/2/manualPTZLockCfg?format=json
    {
        "ManualPTZLockCfg": {
            "unLockTime": 295
        }
    }
    
  11. 保存枪机当前场景(2/3通道同时生效)(需要先解锁)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/3/savePosition?format=json
    {
        "statusCode": 1,
        "statusString": "OK",
        "subStatusCode": "ok" 
    }
    
  12. 转动枪机回到场景位置(需要先解锁,通道二/通道三都会回到之前保存的场景)(PUT)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/3/gotoPosition?format=json
    
  13. 获取位置(枪机获取到的和云台一样)(GET)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/1/status
    <?xml version="1.0" encoding="UTF-8"?>
    <PTZStatus version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
        <AbsoluteHigh>
            <elevation>122</elevation>
            <azimuth>2276</azimuth>
            <absoluteZoom>10</absoluteZoom>
        </AbsoluteHigh>
    </PTZStatus>
    
  14. 设置位置(设置枪机通道,实际生效也是云台)(PUT)
    http://192.168.36.140/ISAPI/PTZCtrl/channels/1/absolute
    <?xml version="1.0" encoding="UTF-8"?>
    <PTZData version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
        <AbsoluteHigh>
            <elevation>5</elevation>
            <azimuth>2272</azimuth>
            <absoluteZoom>10</absoluteZoom>
        </AbsoluteHigh>
    </PTZData>
    
  15. 通道能力对比
    通道一支持以下:
        <AbsolutePanTiltPositionSpace>
            <XRange>
                <Min>0</Min>
                <Max>3600</Max>
            </XRange>
            <YRange>
                <Min>-376</Min>
                <Max>723</Max>
            </YRange>
        </AbsolutePanTiltPositionSpace>
        <AbsoluteZoomPositionSpace>
            <ZRange>
                <Min>10</Min>
                <Max>400</Max>
            </ZRange>
        </AbsoluteZoomPositionSpace>
        <isSupportPTZEagleFocusing>true</isSupportPTZEagleFocusing>
        <LFPositionCap>
            <elevation min="-900" max="2700">0</elevation>
            <azimuth min="0" max="3600">0</azimuth>
            <absoluteZoom min="1" max="1000">0</absoluteZoom>
        </LFPositionCap>
    

    通道二支持以下(其实通道三也支持,控制二和控制三效果一样):
        <ManualPTZLockCap>
            <lockStatus>lock, unlock</lockStatus>
            <unLockTime>300</unLockTime>
        </ManualPTZLockCap>
        <isSupportPTZSave>true</isSupportPTZSave>
    
  16. 通道高精度绝对PTZ运动控制能力比较
    通道一支持
    <?xml version="1.0" encoding="UTF-8"?>
    <PTZAbsoluteEx version="2.0" xmlns="http://www.hikvision.com/ver20/XMLSchema">
        <elevation min="-37.62" max="72.38">0</elevation>
        <azimuth min="0" max="360">0</azimuth>
        <absoluteZoom min="1" max="40">1</absoluteZoom>
        <focus min="4096" max="49152"/>
        <horizontalSpeed min="0.1" max="210"/>
        <verticalSpeed min="0.1" max="149.9"/>
    </PTZAbsoluteEx>
    
  17. 分别控制多通道转动(测试不通过)(PUT)
    http://192.168.36.140/ISAPI/PTZCtrl/ManualControlPTZRotation?format=json
    {
        /*req, object, 多通道云台参数, range:[,], additionalProperties:false, desc:*/
        "channelList": [
            /*req, array, 通道列表, range:[1,4], uniqueItems:, desc:*/
            {
                /*req, object, 通道元素, range:[,], additionalProperties:false, desc:*/
                "channelID": 1
                /*req, integer, 通道ID, const:, enum:[], range:[1,100], multipleOf:, unit:, desc:*/
            }
        ],
        "PTZData": {
            /*req, object, PTZ值正向参数, range:[,], additionalProperties:false, desc:*/
            "pan": 60,
            /*opt, integer, P值(水平角度)正向, const:, enum:[], range:[-100,100], multipleOf:, unit:, desc:值的大小代表着转动速度;正值代表着向右转动,值越大速度越快;负值代表着向左转动,值越小速度越快*/
            "tilt": 60,
            /*opt, integer, T值(垂直角度)正向, const:, enum:[], range:[-100,100], multipleOf:, unit:, desc:值的大小代表着转动速度;正值代表着向上转动,值越大速度越快;负值代表着向下转动,值越小速度越快*/
            "zoom": 60,
            /*opt, integer, 变倍值, const:, enum:[], range:[-100,100], multipleOf:, unit:, desc:值的大小代表着变倍速度;正值代表着变倍放大,值越大速度越快;负值代表着变倍缩小,值越小速度越快*/
            "rotate": 60,
            /*opt, integer, 镜头旋转值, const:, enum:[], range:[-100,100], multipleOf:, unit:, desc:值的大小代表着旋转速度;正值代表着顺时针旋转,值越大速度越快;负值代表着逆时针顺转,值越小速度越快*/
            "focus": 60,
            /*opt, integer, 聚焦控制, const:, enum:[], range:[-100,100], multipleOf:, unit:, desc:负值表示远,正值表示近,数值大小表示变化速率(最大速率的百分比),0表示停止*/
            "iris": 60
            /*opt, integer, 光圈速度, const:, enum:[], range:[-100,100], multipleOf:, unit:, desc:0表示停止,数值越大速度越快,正负代表放大和缩小*/
        }
    }
    

    {
        "channelList": [
            {
                "channelID": 1
            }
        ],
        "PTZData": {
            "pan": 60,
            "tilt": 60,
            "zoom": 60,
            "rotate": 60,
            "focus": 60,
            "iris": 60
        }
    }
    
  18. 参考
    《设备网络SDK使用手册.chm》-->《接口列表》-->《网络协议透传》(更多功能)-->《协议透传报文》-->《云台和跟随定位》
  19. win示例(已经包含了几乎所有协议)
    下载地址:https://open.hikvision.com/download/5cda567cf47ae80dd41a54b3?type=10
    ClientDemo 测试工具是使用设备网络 SDK 开发包中的接口开
    发而成的测试工具,可以用来测试设备的功能和接口,在开发的前期
    和调试阶段用以测试设备的功能和 SDK 的接口。ClientDemo 位于开
    发包中的库文件目录下:CH-HCNetSDKV6.1.9.48_build20230410_win32\库文件\ClientDemo.exe