package domain // 定义枚举类型 type MqttCmdType string const ( MQTT_LOG_0 MqttCmdType = "0" // 设备连接中断 MQTT_LOG_101 MqttCmdType = "101" // 登录上行命令 MQTT_LOG_102 MqttCmdType = "102" // 登录应答下行命令 MQTT_LOG_103 MqttCmdType = "103" // 设备绑定解绑上行命令 MQTT_LOG_104 MqttCmdType = "104" // 设备绑定解绑应答下行命令 MQTT_LOG_105 MqttCmdType = "105" // 设备心跳上行数据 MQTT_LOG_106 MqttCmdType = "106" // 应答云平台心跳下行数据 MQTT_LOG_107 MqttCmdType = "107" // 设备参数更新上行数据 MQTT_LOG_108 MqttCmdType = "108" // 应答设备参数更新下行数据 MQTT_LOG_109 MqttCmdType = "109" // 云平台更新设备参数下行数据 MQTT_LOG_110 MqttCmdType = "110" // 应答云平台更新设备参数上行数据 MQTT_LOG_201 MqttCmdType = "201" // 用户实时数据 (运行数据,默认数据间隔5min) MQTT_LOG_202 MqttCmdType = "202" // 厂商实时数据上传通知 MQTT_LOG_203 MqttCmdType = "203" // 实时数据召唤 MQTT_LOG_204 MqttCmdType = "204" // 实时数据召唤应答 MQTT_LOG_205 MqttCmdType = "205" // 当前告警上传 MQTT_LOG_206 MqttCmdType = "206" // 当前告警上传应答 MQTT_LOG_207 MqttCmdType = "207" // 告警日志上传 MQTT_LOG_208 MqttCmdType = "208" // 告警日志上传应答 MQTT_LOG_209 MqttCmdType = "209" // 用户实时数据离线后补传命令 MQTT_LOG_210 MqttCmdType = "210" // 用户实时数据离线后补传应答 MQTT_LOG_211 MqttCmdType = "211" // 设备实时数据召唤下行数据 MQTT_LOG_212 MqttCmdType = "212" // 设备实时数据召唤上行数据 MQTT_LOG_213 MqttCmdType = "213" // 告警日志文件上传通知 MQTT_LOG_214 MqttCmdType = "214" // 当前告警集合上行数据 MQTT_LOG_215 MqttCmdType = "215" // 应答当前告警集合下行数据 MQTT_LOG_216 MqttCmdType = "216" // 当前告警集合查询下行数据 MQTT_LOG_217 MqttCmdType = "217" // 应答当前告警集合查询上行数据 MQTT_LOG_218 MqttCmdType = "218" // 告警监控快照文件上传通知 MQTT_LOG_219 MqttCmdType = "219" // 应答告警监控快照文件上传 MQTT_LOG_220 MqttCmdType = "220" // 系统资源监控数据上行数据 MQTT_LOG_221 MqttCmdType = "221" // 设备数据主动上传 MQTT_LOG_223 MqttCmdType = "223" // 设备数据补传通知上行数据 MQTT_LOG_224 MqttCmdType = "224" // 应答设备数据补传下行数据 MQTT_LOG_225 MqttCmdType = "225" // 继电器切断次数上行数据 MQTT_LOG_227 MqttCmdType = "227" // 设备实时上传数据 MQTT_LOG_229 MqttCmdType = "229" // 实时数据补传上行 MQTT_LOG_230 MqttCmdType = "230" // 实时数据补传下行 MQTT_LOG_235 MqttCmdType = "235" // sunrun数据上报使能设置 MQTT_LOG_236 MqttCmdType = "236" // sunrun数据上报使能设置应答 MQTT_LOG_231 MqttCmdType = "231" // 电池数据主动上传 MQTT_LOG_233 MqttCmdType = "233" // 实时数据补传通知上行数据 MQTT_LOG_234 MqttCmdType = "234" // 应答实时数据补传下行数据 MQTT_LOG_301 MqttCmdType = "301" // 参数设置 MQTT_LOG_302 MqttCmdType = "302" // 参数设置应答 MQTT_LOG_303 MqttCmdType = "303" // 参数查询 MQTT_LOG_304 MqttCmdType = "304" // 参数查询应答 MQTT_LOG_305 MqttCmdType = "305" // 预警模式 MQTT_LOG_306 MqttCmdType = "306" // 预警模式应答 MQTT_LOG_307 MqttCmdType = "307" // 设备端解除预警模式 MQTT_LOG_308 MqttCmdType = "308" // 设备端解除预警模式应答 MQTT_LOG_309 MqttCmdType = "309" // 设备事件推送 MQTT_LOG_310 MqttCmdType = "310" // 设备事件推送应答 MQTT_LOG_311 MqttCmdType = "311" // 设备控制指令设置查询 MQTT_LOG_312 MqttCmdType = "312" // 设备控制指令设置查询应答 MQTT_LOG_313 MqttCmdType = "313" // TOU参数配置查询指令 MQTT_LOG_314 MqttCmdType = "314" // TOU参数配置查询指令应答 MQTT_LOG_315 MqttCmdType = "315" // 系统设置下行数据 MQTT_LOG_316 MqttCmdType = "316" // 系统设置上行数据 MQTT_LOG_317 MqttCmdType = "317" // 全局参数配置指令 MQTT_LOG_318 MqttCmdType = "318" // 全局参数配置指令应答 MQTT_LOG_319 MqttCmdType = "319" // TOU策略配置查询下行数据 MQTT_LOG_320 MqttCmdType = "320" // 应答TOU策略配置查询上行数据 MQTT_LOG_321 MqttCmdType = "321" // Wi-Fi设置查询下行数据 MQTT_LOG_322 MqttCmdType = "322" // 应答Wi-Fi设置查询上行数据 MQTT_LOG_323 MqttCmdType = "323" // 发电机参数设置查询下行数据 MQTT_LOG_324 MqttCmdType = "324" // 应答发电机参数设置查询上行数据 MQTT_LOG_325 MqttCmdType = "325" // 光伏参数设置查询下行数据 MQTT_LOG_326 MqttCmdType = "326" // 应答光伏参数设置查询上行数据 MQTT_LOG_327 MqttCmdType = "327" // aPower灯开关控制下行数据 MQTT_LOG_328 MqttCmdType = "328" // 应答aPower灯开关控制上行数据 MQTT_LOG_329 MqttCmdType = "329" // 自动编址下行数据 MQTT_LOG_330 MqttCmdType = "330" // 应答自动编址上行数据 MQTT_LOG_331 MqttCmdType = "331" // 自动编址结果查询下行数据 MQTT_LOG_332 MqttCmdType = "332" // 应答自动编址结果查询上行数据 MQTT_LOG_333 MqttCmdType = "333" // 调试模式下行数据 MQTT_LOG_334 MqttCmdType = "334" // 应答调试模式上行数据 MQTT_LOG_335 MqttCmdType = "335" // Wi-Fi热点扫描下行数据 MQTT_LOG_336 MqttCmdType = "336" // 应答Wi-Fi热点扫描上行数据 MQTT_LOG_337 MqttCmdType = "337" // Wi-Fi热点账号查询设置下行数据 MQTT_LOG_338 MqttCmdType = "338" // 应答Wi-Fi热点账号查询设置上行数据 MQTT_LOG_339 MqttCmdType = "339" // 连接状态查询下行数据 MQTT_LOG_340 MqttCmdType = "340" // 应答连接状态查询上行数据 MQTT_LOG_341 MqttCmdType = "341" // 网终开关查询设置下行数据 MQTT_LOG_342 MqttCmdType = "342" // 应答网终开关查询设置上行数据 MQTT_LOG_343 MqttCmdType = "343" // 电池控制下行数据 MQTT_LOG_344 MqttCmdType = "344" // 应答电池控制上行数据 MQTT_LOG_345 MqttCmdType = "345" // 电网设置下行数据 MQTT_LOG_346 MqttCmdType = "346" // 应答电网设置上行数据 MQTT_LOG_347 MqttCmdType = "347" // 电网事件结果通知上行数据 MQTT_LOG_348 MqttCmdType = "348" // 应答电网事件结果下行数据 MQTT_LOG_349 MqttCmdType = "349" // 主动离网数据下行 MQTT_LOG_350 MqttCmdType = "350" // 应答主动离网数据上行 MQTT_LOG_351 MqttCmdType = "351" // 主动离网结果通知上行数据 MQTT_LOG_352 MqttCmdType = "352" // 应答主动离网结果通知下行数据 MQTT_LOG_353 MqttCmdType = "353" // 系统参数查询设置下行数据 MQTT_LOG_354 MqttCmdType = "354" // 系统参数查询设置上行数据 MQTT_LOG_355 MqttCmdType = "355" // 能量调度策略查询 MQTT_LOG_356 MqttCmdType = "356" // 能量调度策略查询应答 MQTT_LOG_357 MqttCmdType = "357" // 能量调度策略增加和删除设置 MQTT_LOG_358 MqttCmdType = "358" // 能量调度策略增加和删除设置应答 MQTT_LOG_359 MqttCmdType = "359" // 系统参数查询设置 MQTT_LOG_360 MqttCmdType = "360" // 系统参数查询设置应答 MQTT_LOG_361 MqttCmdType = "361" // 网络通道检测设置 MQTT_LOG_362 MqttCmdType = "362" // 网络通道检测设置应答 MQTT_LOG_363 MqttCmdType = "363" // 网络通道检测结果查询 MQTT_LOG_364 MqttCmdType = "364" // 网络通道检测结果查询应答 MQTT_LOG_365 MqttCmdType = "365" // Swell注册/注销设置 MQTT_LOG_366 MqttCmdType = "366" // Swell注册/注销设置应答 MQTT_LOG_367 MqttCmdType = "367" // Swell应用程序状态查询 MQTT_LOG_368 MqttCmdType = "368" // Swell应用程序状态查询应答 MQTT_LOG_369 MqttCmdType = "369" // Modbus参数权限的查询设置 MQTT_LOG_370 MqttCmdType = "370" // modbus参数权限的查询设置应答 MQTT_LOG_371 MqttCmdType = "371" // 同步点表配置请求 MQTT_LOG_372 MqttCmdType = "372" // 同步点表配置请求应答 MQTT_LOG_373 MqttCmdType = "373" // 点表配置表增删查命令 MQTT_LOG_374 MqttCmdType = "374" // 点表配置表增删查命令应答 MQTT_LOG_375 MqttCmdType = "375" // 点表响应设置命令 MQTT_LOG_376 MqttCmdType = "376" // 点表响应设置应答 MQTT_LOG_377 MqttCmdType = "377" // 故障录波实时数据获取 MQTT_LOG_378 MqttCmdType = "378" // 故障录波信息应答 MQTT_LOG_379 MqttCmdType = "379" // 故障录波信息上传 MQTT_LOG_380 MqttCmdType = "380" // 故障录波信息上传应答 MQTT_LOG_381 MqttCmdType = "381" // 设备休眠配置命令 MQTT_LOG_382 MqttCmdType = "382" // 设备休眠命令应答 MQTT_LOG_383 MqttCmdType = "383" // 休眠/退出休眠结果上报 MQTT_LOG_384 MqttCmdType = "384" // 休眠/退出休眠结果上报应答 MQTT_LOG_385 MqttCmdType = "385" // 设备退出休眠/取消充电休眠配置命令 MQTT_LOG_386 MqttCmdType = "386" // 设备退出休眠/取消充电休眠配置命令应答 MQTT_LOG_387 MqttCmdType = "387" // 智能负载开关查询设置 MQTT_LOG_388 MqttCmdType = "388" // 智能负载开关查询设置应答 MQTT_LOG_389 MqttCmdType = "389" // 智能负载开关实时数据查询命令 MQTT_LOG_390 MqttCmdType = "390" // 智能负载开关实时数据查询应答 MQTT_LOG_391 MqttCmdType = "391" // aPbox2.0查询设置 MQTT_LOG_392 MqttCmdType = "392" // aPbox2.0查询设置应答 MQTT_LOG_3100 MqttCmdType = "3100" // 完成MSA安装设置命令 MQTT_LOG_3101 MqttCmdType = "3101" // 完成MSA安装设置应答 MQTT_LOG_3104 MqttCmdType = "3104" // CT转向设置查询 MQTT_LOG_3105 MqttCmdType = "3105" // CT转向设置查询应答 MQTT_LOG_3106 MqttCmdType = "3106" // 设备编址完成 MQTT_LOG_3107 MqttCmdType = "3107" // 设备编址完成应答 MQTT_LOG_393 MqttCmdType = "393" // CT检测设置查询 MQTT_LOG_394 MqttCmdType = "394" // CT检测设置查询应答 MQTT_LOG_395 MqttCmdType = "395" // CT检测数据/结果上传 MQTT_LOG_396 MqttCmdType = "396" // CT检测数据/结果应答 MQTT_LOG_401 MqttCmdType = "401" // 日功率曲线电量召唤 MQTT_LOG_402 MqttCmdType = "402" // 日功率曲线电量召唤应答 MQTT_LOG_403 MqttCmdType = "403" // 电量历史报表召唤(月,年) MQTT_LOG_404 MqttCmdType = "404" // 电量历史报表召唤应答 MQTT_LOG_405 MqttCmdType = "405" // 备电日志上传 MQTT_LOG_406 MqttCmdType = "406" // 备电日志上传应答 MQTT_LOG_407 MqttCmdType = "407" // 历史日功率曲线电量报表上传通知 MQTT_LOG_408 MqttCmdType = "408" // 历史日功率曲线电量报表上传应答 MQTT_LOG_409 MqttCmdType = "409" // 电量历史报表上传通知(月,年) MQTT_LOG_410 MqttCmdType = "410" // 电量历史报表上传应答 MQTT_LOG_411 MqttCmdType = "411" // 日电量统计上传上行数据 MQTT_LOG_412 MqttCmdType = "412" // 应答日电量统计上传下行数据 MQTT_LOG_413 MqttCmdType = "413" // 设备模式变化时上传 MQTT_LOG_414 MqttCmdType = "414" // 应答设备模式变化下行数据 MQTT_LOG_501 MqttCmdType = "501" // IBG设备安装信息主动上传 MQTT_LOG_502 MqttCmdType = "502" // IBG设备安装信息主动上传应答 MQTT_LOG_503 MqttCmdType = "503" // IBG设备安装信息召唤 MQTT_LOG_504 MqttCmdType = "504" // IBG设备安装信息上报 MQTT_LOG_505 MqttCmdType = "505" // 设备升级指令 MQTT_LOG_506 MqttCmdType = "506" // 设备升级应答 MQTT_LOG_507 MqttCmdType = "507" // 设备升级结果 MQTT_LOG_508 MqttCmdType = "508" // 设备升级结果应答 MQTT_LOG_509 MqttCmdType = "509" // 设备安装信息主动上传上行数据 MQTT_LOG_510 MqttCmdType = "510" // 设备安装信息主动上传下行数据 MQTT_LOG_511 MqttCmdType = "511" // 设备升级文件下载信息下发 MQTT_LOG_512 MqttCmdType = "512" // 设备升级文件下载信息响应上行数据 MQTT_LOG_513 MqttCmdType = "513" // 设备升级文件下载完成上行数据 MQTT_LOG_514 MqttCmdType = "514" // 应答设备升级文件下载完成下行数据 MQTT_LOG_515 MqttCmdType = "515" // 特殊升级启动信息上报上行数据 MQTT_LOG_516 MqttCmdType = "516" // 特殊升级启动信息上报应答下行数据 MQTT_LOG_517 MqttCmdType = "517" // 设备编址后参数更新上行数据 MQTT_LOG_518 MqttCmdType = "518" // 应答设备编址后参数下行数据 MQTT_LOG_523 MqttCmdType = "523" // 设备升级进度上报上行数据 MQTT_LOG_524 MqttCmdType = "524" // aHub升级记录结果上行数据 MQTT_LOG_525 MqttCmdType = "525" // aHub升级记录结果应答下行数据 MQTT_LOG_526 MqttCmdType = "526" // aHub连接状态检测上行数据 MQTT_LOG_601 MqttCmdType = "601" // 调试参数下发 MQTT_LOG_602 MqttCmdType = "602" // 调试参数下发结果 MQTT_LOG_603 MqttCmdType = "603" // 设备日志召唤 MQTT_LOG_604 MqttCmdType = "604" // 设备日志召唤应答 MQTT_LOG_605 MqttCmdType = "605" // 设备日志上传结果 MQTT_LOG_606 MqttCmdType = "606" // 设备日志上传结果应答 MQTT_LOG_607 MqttCmdType = "607" // 故障录波召唤下行数据 MQTT_LOG_608 MqttCmdType = "608" // 故障录波召唤应答上行数据 MQTT_LOG_609 MqttCmdType = "609" // 故障录波文件上传结果 MQTT_LOG_610 MqttCmdType = "610" // 故障录波文件上传结果应答 MQTT_LOG_611 MqttCmdType = "611" // 模块日志召唤 MQTT_LOG_612 MqttCmdType = "612" // 模块日志召唤应答 MQTT_LOG_613 MqttCmdType = "613" // 模块日志文件上传结果 MQTT_LOG_614 MqttCmdType = "614" // 模块日志文件上传结果应答 MQTT_LOG_701 MqttCmdType = "701" // 设备数据主动上传通知上行数据 MQTT_LOG_702 MqttCmdType = "702" // 应答设备数据补传下行数据 MQTT_LOG_703 MqttCmdType = "703" // 设备数据主动上传通知上行数据 MQTT_LOG_704 MqttCmdType = "704" // 应答设备数据补传下行数据 MQTT_LOG_705 MqttCmdType = "705" // 设备数据主动上传通知下行数据 MQTT_LOG_706 MqttCmdType = "706" // 应答设备数据补传下行数据 MQTT_LOG_801 MqttCmdType = "801" // sunnova数据周期上传 MQTT_LOG_802 MqttCmdType = "802" // sunnova数据主动上传使能按钮 MQTT_LOG_803 MqttCmdType = "803" // 应答sunnova数据设置查询 ) type MqttLogItem struct { CmdType string `json:"cmdType"` CmdName string `json:"cmdName"` GatewayId string `json:"gatewayId"` // SN GatewayType *string `json:"gatewayType"` GatewayStatus *string `json:"gatewayStatus"` ActiveStatus *string `json:"activeStatus"` // 激活状态 LogData string `json:"logData"` // JSON数据 LogTime string `json:"logTime"` // 设备时间 Time string `json:"time"` // UTC时间 } /********* LogData struct 定义 *********/ type MqttLogContent[T any] struct { CmdType string `json:"cmdType"` // 日志类型 MqttCmdType EquipNo string `json:"equipNo"` // SN Type int `json:"type"` // 设备类型 0-设备网关IBG TimeStamp int64 `json:"timeStamp"` DataArea T `json:"dataArea"` // 业务数据 } // MQTT_LOG_0 type MqttLogType_0 struct { Lwt string `json:"lwt"` // 遗愿 "Lost Connect!" } // MQTT_LOG_101 type MqttLogType_101 struct { IBG_SN string `json:"IBG_SN"` // SN DeviceType int `json:"deviceType"` // 设备类型 0-设备网关IBG TimeStamp int64 `json:"timeStamp"` ProtocolVer string `json:"protocolVer"` // MQTT协议版本 SysHdVersion int `json:"SysHdVersion"` // 系统硬件版本 100 = 1.0 } // MQTT_LOG_201 type MqttLogType_201 struct { ReportType int `json:"report_type"` // 上报类型 0-周期 1-召唤 2-事件变化 Mode int `json:"mode"` // EMS当前工作模式 0-初始状态 2-自发自用 3-TOU(平衡) 4-TOU(经济) 5-并网状态下的仅备电状态 6-风暴等待模式 7-离网,电池备电中 8-离网,发电机备电中 9-VPP调度 10-紧急停止(EPO) 11-故障进入安全模式 13-调试 16-升级状态 25-apower手动关机 26-主动离网(Go Off-Grid NSC+ULG支持)27-v2L模式(ULG支持) 28-newhome模式 29-msa安装未完成 更多模式信息请查阅文档 ModeName int `json:"name"` // 调度模式名称 RunStatus int `json:"run_status"` // EMS当前运行状态 0-待机 1-充电 2-放电 3-故障 SlaverState int `json:"slaver_stat"` // EMS_SLAVE当前运行状态 0-初始化 1-参数获取;2:监听;3:待机;4:市电并网运行;5:离网运行;6:油机并网运行 离网油机接入运行;7:故障 GridState int `json:"elecnet_state"` // 市电网状态 0-正常 1-故障 FhpSn []string `json:"fhpSn"` // FHP设备编号 APowerStatus []int `json:"infi_status"` // FHP状态 0-正常 1-告警 2-故障 3-离线;4-关机 5-自检(apowerS支持) PeState []int `json:"pe_stat"` // PE当前运行状态 -1-离线 0-初始化 1-参数初始化 2-监听 3-待机 4-预充检测 5-预充 6-起机延时 7-逆变继电器吸合 8-运行 9-故障 注:老版本中10 表示离线; BmsState []int `json:"bms_work"` // BMS工作状态 0-停机 1-初始化 2-自检 3-待机 4-预充 5-运行 6-充电 7-放电 8-充电保护 9-放电保护 10-充放电保护 11-故障 12-异常充电准备 13-异常充电 14-异常充电停止 15-工装模式 16-补电模式 17-补电故障 BmsHeatState []int `json:"bms_heat_state"` // 取值为0~15:Bit0 加热膜1状态,0:未使能;1:使能 Bit1 加热膜2状态,0:未使能;1:使能 Bit2 加热膜3状态,0:未使能;1:使能 Bit3 加热膜4状态,0:未使能;1:使能 P_uti float32 `json:"p_uti"` // 市电供电功率 单位kW,供电为正(uti→home),馈电为负(home→uti) P_sun float32 `json:"p_sun"` // 太阳能发电功率 单位kW,供电为正(sun→home),无馈电 P_gen float32 `json:"p_gen"` // 发电机发电功率 单位kW,供电为正(gen→home),无馈电 P_fhp float32 `json:"p_fhp"` // FHP发电功率 单位kW,放电为正(fhp→home),充电为负(home→fhp) P_load float32 `json:"p_load"` // 负荷功率 单位kW,耗电为正(home) Kwh_uti_in float32 `json:"kwh_uti_in"` // 市电口输入电量 单位kWh,日统计电量,截止到当前时间点的电量,下同 Kwh_uti_out float32 `json:"kwh_uti_out"` // 市电口输出电量 单位kWh,馈入电网电量 Kwh_sun float32 `json:"kwh_sun"` // 太阳能供电电量 单位kWh Kwh_gen float32 `json:"kwh_gen"` // 发电机供电电量 单位kWh Kwh_fhp_di float32 `json:"kwh_fhp_di"` // FHP放电电量 单位kWh Kwh_fhp_chg float32 `json:"kwh_fhp_chg"` // FHP充电电量 单位kWh Kwh_load float32 `json:"kwh_load"` // 负荷用电量 单位kWh Soc float32 `json:"soc"` //系统SOC 单位% FhpSoc []float32 `json:"fhpSoc"` // FHP电池SOC 单位% FhpPower []float32 `json:"fhpPower"` // FHP有功功率 单位kw T_amb float32 `json:"t_amb"` // 环境温度 单位℃ MainSwitchState [3]int `json:"main_sw"` // 主开关状态 a1-备电主开关 a2-发电机主开关 a3-光伏主开关 (0-开关断开 1-开关闭合) ProLoadState [3]int `json:"pro_load"` // 编程负载状态 0-断开 1-闭合 DoState [4]int `json:"do"` // 干接点继电器输出状态 0-断开 1-闭合 DiState [4]int `json:"di"` // 输入干接点状态 0-断开 1-闭合 Signal_4G int `json:"signal"` // 4G信号强度 Signal_WIFI int `json:"wifiSignal"` // wifi信号强度 ConnType int `json:"connType"` // 网络连接方式 0-未接入网络 1-eth0 2-eth1 3-wifi 4-4G GenState int `json:"genStat"` // 发电机状态 0-不使能 1-停机 2-启动 3-运行 4-退出 5-故障 6-演习中 RemoteSolarEn int `json:"remoteSolarEn"` // 远端光伏接入使能(接入数量) 0-不使能 1-使能数量1 2-使能数量2 (默认0) SolarPower int `json:"solarPower"` // 近端光伏功率 单位:0.1KW RemoteSolar1Power int `json:"remoteSolar1Power"` // 远端光伏1功率 单位:0.1KW 负载侧远端光伏1或市电侧远端光伏功率 RemoteSolar2Power int `json:"remoteSolar2Power"` // 远端光伏2功率 负载侧远端光伏2单位:0.1KW BattHTemp float32 `json:"sinHTemp"` // 最高单体温度 单位:0.1℃ BattLTemp float32 `json:"sinLTemp"` // 最低单体温度 单位:0.1℃ BlackStartRelay *int `json:"blackStartRelay,omitempty"` // 黑启动继电器状态 0-断开 1-闭合 GridPhaseConSet int `json:"gridPhaseConSet"` // 市电相制设置 00-split 01-单相三角形接法 02-三相三角形接法 MpptAllPower *float32 `json:"mpptAllPower,omitempty"` // MPPT光伏总功率 单位KW MpptActPower *[]float32 `json:"mpptActPower,omitempty"` // MPPT光伏有功功率 单位KW MpptSta *[]int `json:"mpptSta"` // MPPT工作状态 0-初始状态 1-升级状态 2-待机状态 3-启机状态 4-运行状态 5-故障状态 6-自检状态 7~13-预留 14-离线 15-休眠 } // MQTT_LOG_357 type MqttLogType_357 struct { Opt int `json:"opt"` // 操作类型 1-增加/编辑 2-删除 3-修改当前工作序列 Sn string `json:"sn"` Data *ScheduleData `json:"data,omitempty"` // opt=1时存在,更新的工作策略表 Id []int `json:"id,omitempty"` // opt=2时存在,删除的ID,不允许删除当前使用的工作序列 CurrentId *int `json:"current_id,omitempty"` // opt=3时存在,模式策略切换 } type ScheduleData struct { Name string `json:"name"` // 参数表名称 可选,默认空字符串,自发自用或者TOU等 ID uint `json:"id"` // 参数表ID 唯一标识此工作序列(ID从128后开始)【后台生成】 StartTime string `json:"startTime"` // 模式开始时间 eg.2024-03-05 13:41:00 设备时区 Duration int `json:"duration"` // 模式持续时间 单位秒,默认0,表示持续运行不退出 IntervalTime int `json:"intervalTime"` // 间隔时间 单位秒,默认0,无间隔 StartEvent int `json:"startEvent"` // 模式开始事件 事件ID,默认0,表示无此事件 EndEvent int `json:"endEvent"` // 模式结束事件 事件ID,默认0,表示无此事件 NextMode int `json:"nextmode"` // 模式退出后要执行的模式ID 默认为2,系统预留的自发自用 ElectricityType int `json:"electricity_type"` // 电费类型 1:分时电价;2:阶梯电价;3:固定电价;4:分时&阶梯 5:BB套餐;6:peak demand SchedulingType int `json:"scheduling_type"` // 调度类型 work_mode 工作模式 1:tou 2: 自发自用 3:仅备电 ReservedSoc uint `json:"reserved_soc"` // 备电预留SOC 备电预留SOC,可选,默认20%,与策略表项中的min_discharge_soc相比,取较大值 Loop int `json:"loop"` // 模式执行次数 0:不限执行次数 1:执行一次,可选,默认0 Priority int `json:"priority"` // 优先级 模式优先级,可选,默认为0,与TOU、自发自用一样具有相同优先级;0 优先级最低,数字越大优先级越高 Env uint `json:"env"` // 使用环境 模式使用条件,可选,默认为0。bit0~1:00,不涉及,01,未安装光伏,10,已安装光伏; bit2~bit3:00,不涉及,01,不允许馈网,10,允许馈网,其他预留 List []ScheduleSection `json:"list"` // 策略表 YearStrategy []int `json:"yearStra"` // 年策略表方案 [1,1,1......],共366个点,表示1年366天,数值代表策略ID } type ScheduleSection struct { ID int `json:"id"` // 策略ID Season string `json:"season"` // 季节 eg.summer DayType string `json:"dayType"` // 日类型 weekdays or weekends List []ScheduleTimeSection `json:"list"` // 时间段数据 } type ScheduleTimeSection struct { StartTime string `json:"start_time"` // 开始时间 06:30 EndTime string `json:"end_time"` // 结束时间 07:30 Flag int `json:"flag"` // 峰平谷 0-谷 1-平 2-峰 3-尖峰 4-低谷 Name string `json:"name"` // 名称 eg.On-Peak Describe string `json:"describe"` // 描述 eg.光伏优先供载 SolarPriority *[3]uint `json:"solar_priority,omitempty"` // 光伏电能优先级 [0]-市电, [1]-负载, [2]-FHP;优先级为0/1/2/3,可相同,若相同则表明需要按比例或者功率分配,0为不涉及,数字越大优先级越高 GridDischargeMax *int `json:"grid_discharge_max,omitempty"` // 电池最大允许馈网功率 可选,默认不能馈网;0:不可馈网,-1:不限制 GridChargeMax *int `json:"grid_charge_max,omitempty"` // 电网允许最大充电功率 可选,默认不允许;0:不允许,-1:不限制 GCAO_max *int `json:"GCAO_max,omitempty"` // 低于预留SOC电网充电使能 可选;0:不允许,-1:不限制;默认未设置(-3);如果使能之后没有设置值,则为2.5kw*N(用-2标识) ChargePower *int `json:"charge_power,omitempty"` // 可选,按单台功率计算,默认未设置-1 DischargePower *int `json:"discharge_power,omitempty"` // 电池放电功率 可选,按单台功率计算,默认未设置-1 ChargeMax *int `json:"charge_max,omitempty"` // 电池最大允许充电功率 可选,按单台功率计算,-1:无限制,默认-1 DischargeMax *int `json:"discharge_max,omitempty"` // 电池最大允许放电功率 可选,电池需要放电时可设置,按单台功率计算,-1:无限制,默认-1 LoadPriority *[3]uint `json:"load_priority,omitempty"` // 负载用电优先级 可选,[0]-市电, [1]-光伏, [2]-FHP;优先级为0/1/2/3,可相同,若相同则表明需要按比例或者功率分配,0为不涉及,数字越大优先级 GridFeedMax *int `json:"grid_feed_max,omitempty"` // 电网允许最大馈网功率 0:不允许,-1:不限制,-2:未设置,可选,默认-2(aPbox功率算在这里吗?不算) GridMax *int `json:"grid_max,omitempty"` // 电网允许最大取电功率 0-不允许,-1-不限制,可选,默认不限制 MinDischargeSoc *int `json:"min_discharge_soc,omitempty"` // 放电截止SOC 预留SOC,供停电后使用,可选,默认20% MaxChargeSoc *int `json:"max_charge_soc,omitempty"` // 充电截止SOC 预留SOC,供停电后使用,可选,默认100% HeatEnable *int `json:"heat_enable,omitempty"` // 充电加热使能 0-未设置(默认) 1-不使能 2-使能 RampTime *int `json:"ramp_time,omitempty"` // 爬坡时间 0~300,默认值0,BB套餐默认300 PowerOffAPower *[]int `json:"poweroff_apower,omitempty"` // 主动关闭APower 0-不控制(默认) 1-断开 2-闭合 OffGrid *int `json:"off_grid,omitempty"` // 主动断开市电继电器 0-不控制(默认) 1-断开 2-闭合 SolarCutoff *int `json:"solar_cutoff,omitempty"` // 主动断开光伏继电器 0-不控制(默认) 1-断开 2-闭合 SchedulingType int `json:"scheduling_type"` // 调度类型 1-TOU 2-自发自用 3-仅备电 }