# 附件：开发需求规格说明书

所属合同： 36仓体直流电瓶车充电柜 开发合同 合同编号： ________________

## 第1章 柜控主板（ID128）硬件规格

### 1.1 基本参数

项目 | 参数
--- | ---
板卡数量 | 3块（含1块备板）
MCU | 内置MCU控制器，支持OTA固件升级
供电 | 12V直流输入（预接触器，常供电）
后备电源 | 后备电池自动切换（可选），维持板子供电与4G通讯
工作温度 | -10℃ ~ +70℃
工作湿度 | 10% ~ 90%
PCB | 双面板/四层板，根据设计复杂度确定

### 1.2 接口规格

接口 | 规格
--- | ---
485接口 | 1路隔离RS485，与6个仓控板通讯，光耦隔离保护，波特率9600
485电表接口 | 1路隔离RS485，接DL/T645电表，读取耗电量数据
4G模块 | Air780E，自定义TCP协议长连接
烟感接口 | 1路开关量输入，中断触发
浸水接口 | 1路开关量输入，中断触发
倾倒检测 | 1路开关量输入，中断触发
环境温控接口 | 1路，适配NTC/DS18B20
门锁控制 | 1路MOS管/三极管驱动输出 + 1路门磁反馈输入，控制柜体电控锁并检测锁状态
接触器控制 | 1路继电器输出，控制常开接触器（默认断开，给信号吸合）
喷淋电磁阀 | 1路继电器输出，烟感触发时自动打开
加热风扇继电器 | 1路独立继电器输出，220V/10A
电磁泵继电器 | 1路继电器输出
接触器按钮 | 2个物理按钮：合闸按钮（吸合接触器）、分闸按钮（断开接触器）
存储 | Flash，存储BMS类型/报警阈值/无协议充电参数

### 1.3 供电时序

- 主电源12V预接触器接入，柜控板常供电
- 后备电池（可选）在380V断电时自动切换，维持板子供电与远程通讯
- 接触器默认断开，上电后自动吸合恢复供电
- 平台可远程下发恢复指令吸合接触器

## 第2章 仓控主板（ID1-6）硬件规格

### 2.1 基本参数

项目 | 参数
--- | ---
板卡数量 | 10块（含4块备板）
MCU | 内置MCU控制器，支持OTA固件升级
供电 | 由柜控板统一供电（12V）
工作温度 | -10℃ ~ +70℃
ID设置 | 4位拨码开关，设置485从站ID（1-6）

### 2.2 接口规格

接口 | 规格
--- | ---
485接口×3 | 全部隔离：1路接柜控板（ID128）、1路接BMS总线（6仓体共用）、1路接所属电源模块
光耦隔离 | 3路485均做光耦隔离保护
温控接口 | 6路，适配NTC/DS18B20（可选）
指示灯接口 | 6路，支持绿灯/红灯控制

### 2.3 物料清单（乙方供）

物料 | 数量 | 说明
--- | --- | ---
4G模块 | 3个 | Air780E（用于柜控板）
光耦隔离芯片 | 100个 | 485隔离用
状态指示灯 | 50个 | 红绿双色
拨码开关 | 10个 | 4位
PCB打样及焊接辅料 | 1批 | 含钢网/样板焊接

## 第3章 MCU固件需求

### 3.1 柜控板固件（1个工程）

功能 | 说明
--- | ---
485主站通讯 | 与仓控板ID1-6双向寻址通讯，响应延迟≤0.5s
4G TCP通讯 | 与后台平台自定义TCP长连接，含心跳/断线重连/数据缓存补偿
指令转发 | 接收平台充电控制/门锁/配置等指令，转发至对应仓控板
安全监测联动 | 烟感/浸水/倾倒检测，触发后断开接触器+打开喷淋电磁阀
电表采集 | 通过独立485接口按DL/T645协议读取电表耗电量，定时上报平台
辅助设备控制 | 加热风扇自动温控（<0°C开/≥25°C停）、电磁泵远程通断
门锁控制 | 接收平台开门指令，直接控制柜体电控锁
OTA升级 | 接收平台固件包，本地升级或分片转发仓控板
配置管理 | BMS协议类型、报警阈值、无协议充电参数的存储与下发

### 3.2 仓控板固件（1个工程）

功能 | 说明
--- | ---
485从站通讯 | 响应柜控板指令，按拨码ID（1-6）寻址
BMS多协议通讯 | 按配置协议轮询6仓体电池数据：星恒Modbus-RTU/天能自定义/无协议跳过
1TN电源协议 | 与所属充电电源独立485通讯，电压/电流/开关控制（电源自带通断）
充电控制逻辑 | 平台/柜控双模式，含电池握手/充满判断/无协议充电/低电流自动停止
状态采集与指示 | 6路红绿LED指示灯控制 + 6路温控采集（可选）
OTA升级与ID管理 | 接收固件包校验写入，拨码开关读取识别

## 第4章 后台管理系统需求

### 4.1 功能模块

模块 | 功能要求
--- | ---
设备管理 | 实时监控、远程重启、参数配置、OTA固件升级（柜控板+仓控板）
仓体控制 | 独立电流/电压设置、禁用/解除、状态查看、远程开门
BMS协议配置 | 设置当前柜体BMS协议类型（星恒/天能/无协议充电）
无协议充电参数配置 | 设置固定充电电压/电流/停止电流阈值
充电控制模式配置 | 平台/柜控模式切换、特殊ID管理
能耗管理 | 实时显示/统计电表耗电量数据，按日/月/年生成报表
用户管理 | 注册/登录、权限分配（管理员/普通/骑手）
数据统计 | 充电量、使用率、故障率、温控数据、告警统计、能耗统计
故障管理 | 故障记录、工单分配、处理跟踪、解除禁用
报警阈值管理 | 关门超时阈值配置、高温报警阈值配置
TCP连接管理 | 连接状态监控、心跳检测、断连告警
辅助设备控制 | 电磁泵远程通断控制、加热风扇状态监控

### 4.2 数据模型

实体 | 字段
--- | ---
充电柜 | id/名称/位置/状态/BMS协议类型/无协议充电参数/报警阈值/总耗电量
仓体 | 所属电源/所属仓控板ID/状态/电压电流设置/指示灯状态
仓控板 | ID/状态/固件版本/OTA进度/6路温控（可选）
柜控板 | ID/状态/固件版本/OTA进度/TCP状态/4G信号/加热风扇/电磁泵/喷淋/电表耗电量
充电记录 | 仓体ID/开始结束时间/充电量/最高温度/状态
故障记录 | 主板ID/故障类型/故障码/时间/处理状态/等级

## 第5章 微信小程序需求

微信小程序为后台管理系统的移动端版本，实现后台核心功能的移动化操作。

### 5.1 功能页面

页面 | 功能要求
--- | ---
首页 | 充电柜概览仪表盘：在线状态、总耗电量、今日充电量、待处理告警数
设备管理 | 查看柜控板/仓控板状态、仓体列表及状态、温控数据、电表读数
远程控制 | 仓体禁用/解除、远程开门、电磁泵通断、接触器合闸/分闸
告警管理 | 实时告警推送、告警列表查看与确认处理
数据统计 | 充电量/能耗/告警统计图表（日/月/年）
个人中心 | 账号信息、修改密码、操作日志

## 第6章 通讯协议栈

### 6.1 协议列表

协议 | 说明
--- | ---
电源1TN RS485 | 与充电电源通讯，电压/电流设置、状态查询、故障读取
星恒BMS Modbus-RTU | 读取电池SOC/电压/温度/告警，地址0x16
天能485协议 | 适配天能电池自定义RS485协议
电表DL/T645 | 读取柜体总耗电量，定时采集上报
仓控-柜控485协议 | 自定义帧结构（帧头/ID/功能码/长度/数据/CRC16），14个功能码
柜控-平台TCP协议 | 自定义TCP长连接，含心跳/数据上报/指令下发/OTA

### 6.2 仓控-柜控485功能码表

码 | 指令 | 方向
--- | --- | ---
0x01 | 上传BMS数据 | 仓控→柜控
0x02 | 上传温控数据 | 仓控→柜控
0x03 | 上传电源状态 | 仓控→柜控
0x06 | 上传OTA状态 | 仓控→柜控
0x82 | 电源参数设置 | 柜控→仓控
0x83 | 指示灯控制 | 柜控→仓控
0x84 | 查询指令 | 柜控→仓控
0x85 | 平台禁用 | 柜控→仓控
0x86 | 模式切换 | 平台→柜控
0x87 | 接触器控制 | 平台→柜控
0x89 | OTA升级 | 柜控→仓控
0x8A | BMS类型配置 | 柜控→仓控
0x8B | 报警阈值配置 | 柜控→仓控