表 4 单 片 机 的 P3口 的 数 据 与 所 巡 检 的 蓄 电 池 的 对 应 关 系 P3口数据 DC7 DC6 DC5 DC4 DC3 DC2 DC1 DC0 巡检板号 电池号 VC+ VC- 00H 0 0 0 0 0 0 0 0 1 1 +C1 -C1 01H 0 0 0 0 0 0 0 1 1 2 +C2 -C2 02H 0 0 0 0 0 0 1 0 1 3 +C3 -C3 03H 0 0 0 0 0 0 1 1 1 4 +C4 -C4 ... ... ... ... ... ... ... ... ... ... ... ... ... FCH 1 1 1 1 1 1 0 0 2 253 +C253 -C253 FDH 1 1 1 1 1 1 0 1 2 254 +C254 -C254 FEH 1 1 1 1 1 1 1 0 2 255 +C255 -C255 FFH 1 1 1 1 1 1 1 1 2 256 +C256 -C256
3.4 信号处理电路
设计思路是单片机不仅需要识别每节电池的电压,还需识别每节电池的极性,因此,把采样总线VC+和VC-上的信号处理成单片机所需的模拟信号和数字信号。
如图5所示,VC+和VC-经PART1_A(差分比例运算放大器)处理后的模拟信号,作为PART1_B的输入信号。PART1_B是绝对值电路和比较器的合成电路,从PART1_B的比较器输出的正负信号经PART2_B(由比较器、二极管和电阻构成的电平转换电路)处理后得到每节电池的极性数字信号(高电平:正极性,零电平:负极性);从绝对值电路输出的正值信号Vco(0~12V)经PART2_A(跟随器)输出到由R1~R6和X3跳线构成的电阻网络。此电阻网络经X3跳线来对不同型号的蓄电池采样电压进行调整,比如:如果R1~R6阻值为10kΩ,X3不跳线时,适合采样2V电池;X3的1-4跳线,模拟信号的幅值则为Vco的1/2,适合采样4V电池;X3的2-5或3-6跳线,模拟信号的幅值则为Vco的1/3,适合采样6V电池;X3的全部跳线,模拟信号的幅值则为Vco的1/6,适合采样12V电池。
图 5 信 号 处 理 电 路
在巡检120节、容量200Ah、单节2V蓄电池的情况下,图6和图7分别是模拟信号测试点和数字信号测试点波形。
图6 Analog测试点波形图
图7 Digital测试点波形图
4 软件设计
电源监控系统的软件包括键盘处理、液晶显示、交流监测、直流监测、电池巡检、绝缘监测、环境监测、电气控制、集中监控、整流模块通信和控制、告警回报等软件。电池巡检主要汇编程序清单如下:
DATA;外部RAM
CellV DS5 12 ;每节蓄电池电压采样数据区首址
CellPol: DS2 56 ;每节蓄电池极性采样数据区首址
AuxFP: EQU 0EC00H ;74HC574的入口地址
RSECT;内部RAM
ax: DS 2 ;暂存寄存器定义
bx: DS 2
cx: DS 2
al: EQU ax
ah: EQU (ax+1)
bl: EQU bx
bh: EQU (bx+1)
cl: EQU cx
ch: EQU (cx+1)
Pointer DS 2 ;蓄电池地址指针
Px DS 1 ;蓄电池组数(用户设置)
Py DS 1 ;每组蓄电池节数(用户设置)
Pz DS 1 ;每节蓄电池额定电压(用户设置)
BatEn DS 1;电池巡检功能使能(用户设置)
Bat1En DS 1;电池巡检板1使能(用户设置)
Bat2En DS 1;电池巡检板2使能(用户设置)
Num DS 2;整个电源系统蓄电池的总节数
i DS 2
CODE;程序代码部分
ld Pointer,#0;相关变量初始化
ld i,#1
ld ax,#CellVo
Init1: st #0,[ax]+;蓄电池电压采样数据区初始化
inc i
cmp i,#256
jlt Init1
ld i,#1
ld bx,#CellPol
Init2: st #0,[bx]+;蓄电池极性采样数据区初始化
inc i
cmp i,#128
jlt Init2
ld ax,#CellVo
ld bx,#CellPol;电池巡检中断服务程序
Patrol:cmpb BatEn,#1;电池巡检功能是否使能
jne Endptl
mulb Num,Px,Py
cmpb Num,#128
jle Check1
cmpb Bat2En,#1;电池巡检板2是否使能
je Check1
ld Num,#128
Check1:cmp Bat1En,#1;电池巡检板1是否使能
jne Endptl
ld AuxFP,Pointer;电池巡检入口地址
lcall ADC;12位A/D转换
stb Ioport0,cl;转换结果处理
stb Ioport2,ch
shrb ch,4;高四位移位
st cx,[ax]+;保存当前该节电池电压
stb Ioport2,cl
shrb cl,3;开关量移至低位
andb cl,#01
stb cl,[bx]+;保存当前该节电池极性
inc Pointer;指针下移
上一篇:基于AN总线的分布式电池管理系统