# 电表型号接口文档 ## 获取电表型号 ### 接口描述 获取当前使用的电表型号。 ### 基本信息 | 属性 | 值 | |------|-----| | 方法名 | `/m9z/meter/getMeterFirm` | | 请求方式 | POST (JSON-RPC) | | 是否需要认证 | 配置文件决定 | | 描述 | 查询当前电表型号 | ### 请求参数 无请求参数。 ### 响应参数 | 字段名 | 类型 | 必填 | 描述 | |--------|------|------|------| | meter_firm | string | 是 | 当前电表型号 | ### 响应示例 **成功响应:** ```json { "jsonrpc": "2.0", "id": 1, "result": { "meter_firm": "ADL400" } } ``` **响应字段说明:** | 字段 | 说明 | |------|------| | `meter_firm` | 当前电表型号,支持的值:ADL400、DDSD1352、DTS1352 | ### 备注 - 电表型号优先从 `data/meterFirm.json` 读取,不存在则使用配置文件 `config.json` 中的默认值 - 配置文件 `config.json` 中的 `deviceInfo.meterFirm` 仅作为默认值,后续以 `data/meterFirm.json` 为准 - 变更电表型号后会自动重新加载电表控制实例 --- ## 设置电表型号 ### 接口描述 设置电表型号,变更后会保存到 `data/meterFirm.json`,并自动重新加载电表控制实例。 ### 基本信息 | 属性 | 值 | |------|-----| | 方法名 | `/m9z/meter/setMeterFirm` | | 请求方式 | POST (JSON-RPC) | | 是否需要认证 | 配置文件决定 | | 描述 | 修改电表型号 | ### 请求参数 | 字段名 | 类型 | 必填 | 描述 | |--------|------|------|------| | meter_firm | string | 是 | 电表型号,支持:ADL400、DDSD1352、DTS1352 | ### 请求示例 ```json { "jsonrpc": "2.0", "id": 1, "method": "/m9z/meter/setMeterFirm", "params": { "meter_firm": "DDSD1352" } } ``` ### 响应参数 | 字段名 | 类型 | 必填 | 描述 | |--------|------|------|------| | success | boolean | 是 | 是否成功 | | meter_firm | string | 是 | 设置后的电表型号 | ### 响应示例 **成功响应:** ```json { "jsonrpc": "2.0", "id": 1, "result": { "success": true, "meter_firm": "DDSD1352" } } ``` **错误响应 - 无效型号:** ```json { "jsonrpc": "2.0", "id": 1, "error": { "code": 400, "message": "invalid meter_firm, available: ADL400, DDSD1352, DTS1352" } } ``` **错误响应 - 参数为空:** ```json { "jsonrpc": "2.0", "id": 1, "error": { "code": 400, "message": "meter_firm is required" } } ``` ### 备注 - 设置的电表型号会持久化保存到 `data/meterFirm.json` - 变更后会自动调用 `adl400TtyApi.Reload()` 重新初始化电表控制实例 - 请确保在设备断电或安全情况下修改电表型号 - 不支持的型号将被拒绝并返回错误 --- ## 相关接口 | 接口 | 方法 | 描述 | |------|------|------| | 电表数据读取 | `/adl400/readPhaseData` | 读取电表分相数据 | | 通信地址读取 | `/adl400/getMsgAddress` | 读取电表通信地址 | | 通信地址设置 | `/adl400/setMsgAddress` | 设置电表通信地址 |