{    
    "version":"1.0.2",
    "statement":{
        "release":"各种设备参数描述信息",
        "param desc":{
          "devType": [
            {"devType":"EMG", "desc":"网关设备类型"},
            {"devType":"BAU", "desc":"总控"},
            {"devType":"BCU", "desc":"主控"},
            {"devType":"PCS", "desc":"PCS设备"},
            {"devType":"AirCond", "desc":"空调设备"},
            {"devType":"DirIO", "desc":"直连IO设备类型"},
            {"devType":"ExtDevice", "desc":"扩展设备类型"},
            {"devType":"GridMeter", "desc":"电网侧电表"},
            {"devType":"EssMeter", "desc":"储能电表"},
            {"devType":"LoadMeter", "desc":"负载侧电表"},
            {"devType":"HumTemp", "desc":"温湿度设备"},
            {"devType":"FireFight", "desc":"消防设备"},
            {"devType":"LiquidCool", "desc":"液冷机"},
            {"devType":"FanCool", "desc":"风冷机"},
            {"devType":"WaterOut","desc": "水浸"},
            {"devType":"CombustibleGas","desc": "可燃气体探测仪"},
            {"devType":"ExtIO","desc": "扩展IO设备"},
            {"devType":"UPS","desc": "UPS"}
            ]
        }
    },
    
    "deployTypeCommit": "部署类型支持ESS储能系统、EMS能量管理系统两种方式",
    "deployType":"ESS", 

    "emsDeploy":[        
        {"devSn":"5175319244S00279", "ip":"10.30.5.35", "isHost":1,"serialId":0}
    ],
    "comment_properity": "用于配置人员进行中文注释",
    "comment_devName_0": "devName表示设备名称, 所有的名称需要满足 devType_%d %d(1~16) 例如温湿度设备: devName = HumTemp_1 ~ HumTemp_16 不允许其他写法",
    "comment_devName_1": "devName 需要和 ems_dev_man.json中声明的关键字保持一致 程序才能找到对应的设备里面的地址",
    "comment_devType_0": "devType表示设备类型,支持的品类如上所示,诸如EMG表示网关",
    "comment_devType_1": "devType需要特别的注意配置项: ExtDevice表示扩展设备是接在MCU侧,扩展设备接在MCU的IO或者485上,EMG通过串口与MCU直连进行数据传输",
    "commit_allDev":     "protocol描述设备通信协议,必须配置, 支持的配置项:ModbusTCP/ModbusRTU/DLT645/IO",
    "commit_hwPort_0":   "hwPort描述设备的硬件接口信息, 依赖于protocol字段, 1、通信协议为:ModbusTCP时, 必须配置: ip(设备IP地址)和port(设备端口)字段",
    "commit_hwPort_1":   "通信协议为:ModbusRTU/DLT645时, 必须配置: pin(接在哪个485引脚上)、baud(波特率)、parity(校验方式, 选项包括'N'（无校验） 'E'（偶校验）和 'O'（奇校验）)、data_bit(数据位)、stop_bit(停止位)",
    "commit_hwPort_2":   "通信协议为:IO时, 必须配置: pin(接在哪个DI/DO引脚上)",
    "commit_hwPort_3":   "pin字段格式为'通信类型' + '_' + 引脚序号, 支持485、DI、DO格式",
    "commit_hwPort_4":   "挂在mcu侧的 1个udp_port对应一个动环设备 地址范围(12000 ~ 12200)",
    "devDomain":   [
    {
      "top":{"emgSn":"5175319244S00279", "devName":"EMG-123", "devId":1, "devType":"EMG"},
      "dev": [
        {
          "properity": "消防1","devType": "FireFight",
          "allDev": [
            {"devName": "FireFight_1","protocol": "ModbusRTU","hwPort": {"pin": "485_6","baud": 9600,"parity": "N","data_bit": 8,"stop_bit": 1,"other": "0"}}
          ]
        },
        {
          "properity": "空调1+空调2","devType": "AirCond",
          "allDev": [
            {"devName": "AirCond_1","protocol": "ModbusRTU", "hwPort": {"pin": "485_7","baud": 9600,"parity": "N","data_bit": 8,"stop_bit": 1,"other": "0"}},
            {"devName": "AirCond_2","protocol": "ModbusRTU", "hwPort": {"pin": "485_7","baud": 9600,"parity": "N","data_bit": 8,"stop_bit": 1,"other": "0"}}
          ]
        },
        {
          "properity": "液冷机1+液冷机2","devType": "LiquidCool",
          "allDev": [
            {"devName": "LiquidCool_1","protocol": "ModbusRTU", "hwPort": {"pin": "485_8","baud": 9600,"parity": "N","data_bit": 8,"stop_bit": 1, "other": "0"}},
            {"devName": "LiquidCool_2","protocol": "ModbusRTU", "hwPort": {"pin": "485_8","baud": 9600,"parity": "N","data_bit": 8,"stop_bit": 1, "other": "0"}}
            ]
        },
        {
          "properity": "电表1","devType": "EssMeter",
          "allDev": [
           {"devName": "EssMeter_1","protocol": "ModbusRTU", "hwPort": {"pin": "485_9","baud": 9600,"parity": "N","data_bit": 8,"stop_bit": 1, "other": "0"}}
          ]
        },
        {
          "properity": "直连IO",
          "devType": "DirIO",
          "allDev": [
            {"devName": "DI_15","protocol": "IO", "hwPort": {"pin": "DI_15", "other": "0"}},
            {"devName": "DI_16","protocol": "IO", "hwPort": {"pin": "DI_16", "other": "0"}},
            {"devName": "DI_17","protocol": "IO", "hwPort": {"pin": "DI_17", "other": "0"}},
            {"devName": "DI_18","protocol": "IO", "hwPort": {"pin": "DI_18", "other": "0"}},
            {"devName": "DO_13","protocol": "IO", "hwPort": {"pin": "DO_13", "other": "0"}},
            {"devName": "DO_14","protocol": "IO", "hwPort": {"pin": "DO_14", "other": "0"}},
            {"devName": "DO_15","protocol": "IO", "hwPort": {"pin": "DO_15", "other": "0"}},
            {"devName": "DO_16","protocol": "IO", "hwPort": {"pin": "DO_16", "other": "0"}},
            {"devName": "HSD_1","protocol": "IO", "hwPort": {"pin": "HSD_1", "other": "0"}},
            {"devName": "HSD_2","protocol": "IO", "hwPort": {"pin": "HSD_2", "other": "0"}},
            {"devName": "HSD_3","protocol": "IO", "hwPort": {"pin": "HSD_3", "other": "0"}},
            {"devName": "HSD_4","protocol": "IO", "hwPort": {"pin": "HSD_4","other":  "0"}}
          ]
        },
        {
          "properity":"扩展设备", "devType":"ExtDevice", 
          "allDev":[
              {"devName":"UPS_1",     "protocol":"ModbusRTU","hwPort":{"udp_port":12000, "pin":"485_1", "baud":9600, "parity":"N", "data_bit":8, "stop_bit":1, "other":"0"}},
              {"devName":"HumTemp_1", "protocol":"ModbusRTU","hwPort":{"udp_port":12001, "pin":"485_2", "baud":9600, "parity":"N", "data_bit":8, "stop_bit":1, "other":"0"}},
              {"devName":"HumTemp_2", "protocol":"ModbusRTU","hwPort":{"udp_port":12002, "pin":"485_3", "baud":9600, "parity":"N", "data_bit":8, "stop_bit":1, "other":"0"}},
              {"devName":"HumTemp_3", "protocol":"ModbusRTU","hwPort":{"udp_port":12003, "pin":"485_4", "baud":9600, "parity":"N", "data_bit":8, "stop_bit":1, "other":"0"}},

              {"devName":"DI_1",      "protocol":"IO", "hwPort":{"udp_port":12004, "pin":"DI_1", "other":"0"}},
              {"devName":"DI_2",      "protocol":"IO", "hwPort":{"udp_port":12005, "pin":"DI_2", "other":"0"}},
              {"devName":"DI_3",      "protocol":"IO", "hwPort":{"udp_port":12006, "pin":"DI_3", "other":"0"}},
              {"devName":"DI_4",      "protocol":"IO", "hwPort":{"udp_port":12007, "pin":"DI_4", "other":"0"}},
              {"devName":"DI_5",      "protocol":"IO", "hwPort":{"udp_port":12008, "pin":"DI_5", "other":"0"}},
              {"devName":"DI_6",      "protocol":"IO", "hwPort":{"udp_port":12009, "pin":"DI_6", "other":"0"}},
              {"devName":"DI_7",      "protocol":"IO", "hwPort":{"udp_port":12010, "pin":"DI_7", "other":"0"}},
              {"devName":"DI_8",      "protocol":"IO", "hwPort":{"udp_port":12011, "pin":"DI_8", "other":"0"}},
              {"devName":"DI_9",      "protocol":"IO", "hwPort":{"udp_port":12012, "pin":"DI_9", "other":"0"}},
              {"devName":"DI_10",     "protocol":"IO", "hwPort":{"udp_port":12013, "pin":"DI_10", "other":"0"}},
              {"devName":"DI_11",     "protocol":"IO", "hwPort":{"udp_port":12014, "pin":"DI_11", "other":"0"}},
              {"devName":"DI_12",     "protocol":"IO", "hwPort":{"udp_port":12015, "pin":"DI_12", "other":"0"}},
              {"devName":"DI_13",     "protocol":"IO", "hwPort":{"udp_port":12016, "pin":"DI_13", "other":"0"}},
              {"devName":"DI_14",     "protocol":"IO", "hwPort":{"udp_port":12017, "pin":"DI_14", "other":"0"}},

              {"devName":"DO_1",       "protocol":"IO", "hwPort":{"udp_port":12018, "pin":"DO_1", "other":"0"}},
              {"devName":"DO_2",       "protocol":"IO", "hwPort":{"udp_port":12019, "pin":"DO_2", "other":"0"}},
              {"devName":"DO_3",       "protocol":"IO", "hwPort":{"udp_port":12020, "pin":"DO_3", "other":"0"}},
              {"devName":"DO_4",       "protocol":"IO", "hwPort":{"udp_port":12021, "pin":"DO_4", "other":"0"}},
              {"devName":"DO_5",       "protocol":"IO", "hwPort":{"udp_port":12022, "pin":"DO_5", "other":"0"}},
              {"devName":"DO_6",       "protocol":"IO", "hwPort":{"udp_port":12023, "pin":"DO_6", "other":"0"}},
              {"devName":"DO_7",       "protocol":"IO", "hwPort":{"udp_port":12024, "pin":"DO_7", "other":"0"}},
              {"devName":"DO_8",       "protocol":"IO", "hwPort":{"udp_port":12025, "pin":"DO_8", "other":"0"}},
              {"devName":"DO_9",       "protocol":"IO", "hwPort":{"udp_port":12026, "pin":"DO_9", "other":"0"}},
              {"devName":"DO_10",      "protocol":"IO", "hwPort":{"udp_port":12027, "pin":"DO_10", "other":"0"}},
              {"devName":"DO_11",      "protocol":"IO", "hwPort":{"udp_port":12028, "pin":"DO_11", "other":"0"}},
              {"devName":"DO_12",      "protocol":"IO", "hwPort":{"udp_port":12029, "pin":"DO_12", "other":"0"}}
          ]
        }
      ]        
    }
    ],
	
    "statement2":"devBankRemapTree 用于描述全部的堆与设备的关联关系",
    "devBank":[
        {
            "bankName":"堆1",
            "bankId": 0, 
            "bmsBank": [
                {"emgSn":"1", "devType":"BAU", "devId":1, "bankId":1}
            ],
            "device":[
                {"emgSn":"1", "devType":"BAU", "devId":1},
                {"emgSn":"1", "devType":"LoadMeter", "devId":1},
                {"emgSn":"1", "devType":"PCS", "devId":1}
            ]
        }
    ],
    "devContainer":[
        {
            "bankName":"柜1",
            "containerId": 1, 
            "bmsBank": [
                {"emgSn":"1", "devType":"BAU", "devId":1, "bankId":1}
            ],
            "device":[
                {"emgSn":"1", "devType":"BAU", "devId":1},
                {"emgSn":"1", "devType":"LoadMeter", "devId":1},
                {"emgSn":"1", "devType":"PCS", "devId":1},
                {"emgSn":"1", "devType":"GridMeter", "devId":1}, 
                {"emgSn":"1", "devType":"AirCond", "devId":1},
                {"emgSn":"1", "devType":"FireFight", "devId":1},
                {"emgSn":"1", "devType":"HumTemp", "devId":1},
                {"emgSn":"1", "devType":"DirIO", "devId":1},
                {"emgSn":"1", "devType":"ExtDevice", "devId":1}
           ]
        }
    ]
}





