🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
目录 [TOC] ## 一、创恒云(旧平台)获取Access_Token ~~~[api] post:https://cloud.truhigh.com/api/cloud/v1/get-token *name:name=默认值#创恒云用户名 *password:password=默认值#创恒云密码 <<< success <<< error ~~~ 返回内容描述 | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | msg| 描述| string | 返回信息 | | code| 结果| int | 1 验证通过、-1 验证失败 | | access_token| Access_Token| string | 成功时返回,时效为2小时,过期请重新获取| | userkey| userkey| string | 成功时返回,用户的key| | userId| userId| string | 成功时返回,用户的id| >[danger] **以下的请求都需要在请求头部加入'Authorization=access_token',否则会导致验证不通过** ## 二、创恒云(旧平台)根据用户信息获取DTU设备列表 >[success]请求地址 `https://cloud.truhigh.com/api/cloud/v1/get-dtu-information` 请求类型 `GET` 请求参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | key| 用户的key(必须)| string | 第一个API已获取 | | owner| 用户的id(必须) | string | 第一个API已获取 | | page| 页数 | string/int | 分页的页数 | | size| 页大小 | string/int | 一页限制几条 | 返回参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | code| 结果| int | 1 获取成功、-1 获取失败 | | msg| 返回信息| string| 失败时返回 | | list| DTU设备列表| Array| 成功时返回| 返回示例 ``` { "code": 1, "list": [ //DTU设备列表 { "username": "lch", "starttime": "网关上线时间", //只有网关在线才会有此字段 "_id": "5e6880181e3a2c7354e56edb", "freestyle": 2, "sid": "mdrwrszj0", "pcid": "P401A2191203083", //DTU设备SN号 "name": "P401A2191203083", "__v": 0, "comid": "P401A2191203083P401A219120308391127c9bd41740458f5493497f4c372f", "pkey": "91127c9bd41740458f5493497f4c372f", "monitor\_camera": null, "owner": null, "ppiAddress": 0, "purpose": "datatrans", "utime": "2020-03-11T06:07:20.028Z", "ctime": "2020-03-11T06:07:20.000Z", "cover": "[http://www.placehold.it/200x150/EFEFEF/AAAAAA&amp;text=no+image](http://www.placehold.it/200x150/EFEFEF/AAAAAA&text=no+image)", "location": { "detailedAddr": "", "district": "", "city": "", "province": "" }, "inquireTim": 1000, "inquirePeriod": 5, "open": 0, "Stopbits": 1, "Databits": 8, "Parity": "无校验", "Baudrate": 9600 }.... ], "deviceGroupList": [], "pager": { "page": 1, //页数 "size": 15, //页大小 "total": 12 //总数 } } ``` ## 三、创恒云(旧平台)根据DTU设备SN号获取DTU下设备列表 >[success]请求地址 `https://cloud.truhigh.com/api/cloud/v2/get-device-list` 请求类型 `GET` 请求参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | sn| DTU设备的SN号 |string | DTU设备的唯一SN号 | 返回参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | code| 结果| int | 1 获取成功、-1 获取失败 | | msg| 返回信息| string| 失败时返回 | | list| DTU下设备列表| Array| 成功时返回| 返回示例 ``` { "code": 1, "list": [ { "_id": "5e999efc7a2d7d312147b3d0", //设备id "NO": 36002, "userid": "5c9c426f15092dd36059fe6b", "sid": "ysg60qsac", "parent": "5dd7641be8ad701eed29a934", "modbusRule": { //点表 "_id": "5e990da07a2d7d3121449ff6", "name": "ceshi", "type": "modbusRTU" }, "slaveAddr": 1, "note": "ceshi", "Texp": "T1", "Fexp": "F1", "ctime": "2020-04-17T12:20:12.340Z", "__v": 0 } ... ] } ``` ## 四、创恒云(旧平台)获取用户设备详细信息 >[success]请求地址 `https://cloud.truhigh.com/api/cloud/v2/get-device-information` 请求类型 `GET` >[danger] **需要在请求头部加入'Authorization=access_token',否则会导致验证不通过,access_token获取请查看第一个API** 请求参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | _id| 设备唯一id | string | 设备的_id字段 | **创恒云平台查看设备唯一id** ![](http://qiniu.yuncon.net/fed3c7ea67ea4fc4db81ef27886ebc75) ![](http://qiniu.yuncon.net/7f0ae9558cb3d43b6ddc4f5c442b4f34) 返回参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | code| 结果| int | 1 获取成功、-1 获取失败 | | msg| 返回信息| string| 失败时返回 | | item| 设备信息| Object| 成功时返回| **item字段描述** ``` "item":{         "_id":"5f890ed5******0ab9147fc", //设备ID         "NO":22251,         "userid":"5efd49******a34f4ce558b", //用户ID         "sid":"4b7***ijp", //设备SID         "parent":{             "_id":"5f0be7******e24dfd089c0b", //DTU设备ID             "freestyle":2,             "sid":"ctd7***l2s", //DTU设备SID             "pcid":"P411A*******2001", //DTU设备SN号             "name":"P411A*******2001",             "ppiAddress":0,             "purpose":"datacollection",             "utime":"2020-07-13T04:48:32.500Z",             "ctime":"2020-07-13T04:48:32.000Z",             "cover":"[http://www.placehold.it/200x150/EFEFEF/AAAAAA&text=no+image](http://www.placehold.it/200x150/EFEFEF/AAAAAA&text=no+image)",             "inquireTim":1000, //轮询周期             "inquirePeriod":2,             "open":0,             "Stopbits":1, //停止位             "Databits":8, //数据位             "Parity":"无校验", //校验位             "Baudrate":9600, //波特率             "__v":0,             "comid":"P411A*******A1191012001b5d16384ad2442f6fc73c671a500b13f",             "location":{                 "detailedAddr":"",                 "district":"历下区",                 "city":"济南市",                 "province":"山东省",                 "longitude":117.429344,                 "latitude":36.690586             }, //地理位置信息             "pkey":"b5d1638********c73c671a500b13f",             "monitor_camera":null,             "owner":null         },         "modbusRule":{             "_id":"5efd6f1e7***********5e0", //点表ID             "name":"SIEMENS",             "note":"",             "type":"PPI", //点表类型modbusRTU、PPI             "userid":"5efd490*********e558b",             "template":"single",             "utime":"2020-07-18T02:42:09.615Z",             "ctime":"2020-07-02T05:22:38.683Z",             "page":[ ],             "table":[ { "plcAddr":1, "_XID":"row_0", "note":"", "formula":"", //正反向公式,中间以逗号隔开 "originMax":"", "originMin":"", "max":"", //最大值 "min":"", //最小值 "byteOrder":"", //字节顺序 "dataBits":"", //数据位 "format":"", //数据格式 "address":"0", //地址 "register":"RWCoil", //寄存器类型 "fixed":"", "unit":"", //单位 "name":"输出0", "index":"#1"                 }, ........             ], //modbusRTU点表             "__v":0,             "ppiTable":{                 "ky******54z":{                     "formula":"",                     "_XID":"row_3",                     "sid":"ky******4z", //数据点的SID                     "note":"",                     "formula2":"", //反向公式                     "formula1":"", //正向公式                     "oType":"read_w", //类型                     "address":"M20.0", //地址                     "format":"BIT", //数据格式                     "unit":"1",                     "name":"模式选择",                     "index":"#3"                 }, .......... } //西门子PPI点表         },         "slaveAddr":2, //从机地址         "note":"测试2", //设备名称         "Texp":"T1",         "Fexp":"F1",         "ctime":"2020-10-16T03:09:09.157Z",         "__v":0,         "devtype":"SIEMENS",         "protocol":"Modbus RTU",         "inquirePeriod":2,         "inquireTim":1000,         "online":false //设备在线离线状态     } ``` ## 五、创恒云(旧平台)获取ModbusRTU设备数据 >[success]请求地址 `https://cloud.truhigh.com/api/cloud/v3/get-modbus-data` 请求类型 `GET` >[danger] **需要在请求头部加入'Authorization=access_token',否则会导致验证不通过,access_token获取请查看第一个API** 请求参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | deviceId| 设备唯一id | string | 设备的_id字段 | 返回参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | success| 结果| bool| true 获取成功、false 获取失败 | | msg| 返回信息| string| 失败时返回 | | modbusRule| 数据信息| Object| 成功时返回| **modbusRule字段描述** ``` "modbusRule": { "_id":"5d1ad387******35b613ae98", //点表ID "name":"测试点表", "type":"modbusRTU", //协议类型 "userid":"5cd8ccaf4*******1f7ee9927", //用户ID "__v":0, "note":"备注信息", "template":"single", "utime":"2019-10-16T06:28:12.749Z", "ctime":"2019-07-02T03:46:15.990Z", "page":[ ], "table":[         {             "time":1602824245358, //数据获取的时间             "data":9460, //获取的数据值             "index":"#0",             "name":"测试点1",             "unit":"mm", //单位             "fixed":"",             "register":"RHoding", //寄存器类型             "address":"0", //地址             "format":"16Unsigned", //数据格式             "dataBits":"", //数据位             "byteOrder":"", //字节顺序             "min":"",             "max":"",             "originMin":"",             "originMax":"",             "formula":"",             "note":"",             "plcAddr":40001 //plc地址         }, ..........     ] } ``` ## 六、创恒云(旧平台)获取PPI设备数据 >[success]请求地址 `https://cloud.truhigh.com/api/cloud/v3/get-ppi-data` 请求类型 `GET` >[danger] **需要在请求头部加入'Authorization=access_token',否则会导致验证不通过,access_token获取请查看第一个API** 请求参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | _id| 设备唯一id | string | 设备的_id字段 | 返回参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | code| 结果| int| 1获取成功、0获取失败 | | msg| 返回信息| string| 失败时返回 | | modbusRule| 数据信息| Object| 成功时返回| **modbusRule字段描述** ``` "modbusRule": { "_id":"5db6949*******05863575ded", "name":"测试PPI点表", "note":"", "type":"PPI", "userid":"5db68be******34dfa36", "__v":0, "ppiTable":[         {             "time":1602827325657, //数据获取的时间             "data":0, //获取的数据值             "formula":"",             "_XID":"row_2",             "sid":"be***3g0y", //数据点SID             "note":"测试",             "formula2":"", //反向公式             "formula1":"", //正向公式             "oType":"read_w", //寄存器类型             "address":"M0.0", //数据地址             "format":"BIT", //数据格式             "unit":"",             "name":"测试点",             "index":2         },     ], "template":"single", "utime":"2020-02-13T06:58:41.499Z", "ctime":"2019-10-28T07:11:15.952Z", "page":[ ], "table":[ ] } ``` ## 七、创恒云(旧平台)下发Modbus设备数据 >[success]请求地址 `https://cloud.truhigh.com/api/cloud/v3/set-modbus-data` 请求类型 `POST` >[danger] **需要在请求头部加入'Authorization=access_token',否则会导致验证不通过,access_token获取请查看第一个API** 请求参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | sid| 设备唯一sid | string | 设备的sid字段 | | address| 设备从机地址 | int| 设备的slaveAddr字段 | | code| 根据当前数据点的寄存器类型整合| int| 见下方注释1 | | start| 起始地址 | string | 当前数据点的address字段 | | data| 整合发送数据 | float / null| 见下方注释2 | |sn|DTU设备SN号 |string|可看第四个API信息,返回值内有详细标注| |wData|要发送的具体信息| Object|见下方注释3| >[success]**注释** 1.code: 当前数据点的register字段 (RWCoil,RCoil)为5, (RWHoding,WHoding)为6 2.data: <1>数据点类型为BIT类型:要发送数据为1时,data为0xff;要发送数据为0时,data为0x00; <2>数据点类型不是BIT类型时:<1>如果当前数据点的(min,max,originMin,originMax)字段全部未赋值,直接将要发送的数据转为浮点型;<2>如果当前数据点的(min,max,originMin,originMax)字段已赋值,则执行下方数据转换代码: ``` v = parseFloat(v) // v为要下发的数据 min = parseFloat(min) // min为数据点的min字段 max = parseFloat(max) // max为数据点的max字段 oMin = parseFloat(originMin) // originMin为数据点的originMin字段 oMax = parseFloat(originMax) // originMax为数据点的originMax字段 var rs = (v - min) / (max - min) * (oMax - oMin) + oMin data = isNaN(rs) ? null : rs.toFixed(4) ``` >[success]**注释** 3.wData内为下方表格数据 | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | dtuId| DTU设备SID| string| DTU设备SID ,可看第四个API信息,返回值内有详细标注 | | deviceId| 设备SID| string| 设备SID,可看第四个API信息,返回值内有详细标注 | | plcAdress| 数据点的PLC地址| int| 数据点的plcAddr字段 | | data| 要下发的数据| string/int| 要下发的数据 | | category| 数据点的数据格式| string| 数据点的format字段 | | register| 数据点寄存器格式| string| 数据点的register字段:(RWCoil,RCoil)为Coil;(RDiscrete)为Discrete;(RWHoding,RHoding,WHoding)为Hoding;(RInput)为Input | | formula| 数据点公式| string| 数据点的formula字段 | | byteOrder| 数据点字节顺序| string| 数据点的byteOrder字段 | 返回参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | code| 结果| int| 1 下发成功、-1 下发失败 | | msg| 返回信息| string| 失败时返回 | ## 八、创恒云(旧平台)下发PPI设备数据 >[success]请求地址 `https://cloud.truhigh.com/api/cloud/v3/set-ppi-data` 请求类型 `POST` >[danger] **需要在请求头部加入'Authorization=access_token',否则会导致验证不通过,access_token获取请查看第一个API** 请求参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | _id| 设备唯一ID| string | 设备的_id字段 | | sid| 数据点唯一sid| string | 数据点的sid字段 | | writeData| 要下发的数据| float/int/string| 要下发的数据 (BIT类型下发数据为int,其他类型下发数据为float或string) | 返回参数及说明: | 字段 |说明 | 类型 |备注 | | --- | --- | --- | --- | | code| 结果| int| 1 下发成功、0 下发失败 | | msg| 返回信息| string| 失败时返回 |