微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于AVR微控制器的蓄电池充放电控制器的设计

基于AVR微控制器的蓄电池充放电控制器的设计

时间:11-03 来源:互联网 点击:
主程序模块

主程序模块完成单片机初始化,等待并处理中断等工作,流程图如图4(a)所示。



图4程序流程图

通信程序模块

单片机与上位机间采用RS232串口通信。单片机采用中断方式接收上位机发出的命令,并根据接收到的数据内容向上位机发送应答信息。当命令的起始标志和结束标志都正确时,单片机向上位机发送ASCII字符‘Y’表示接收成功,然后处理收到的命令;否则,向上位机发送ASCII字符‘N’,表示发送不成功,要求上位机重新发送命令。

上位机向单片机发送的命令符合以下格式:命令以帧为单位,每帧包含7个字节。每帧包含的命令字规定了单片机的控制方式。每帧中的数据字则以ASCII码的形式确定了充、放电电流的大小和继电器的代号。通信模块流程图如图4(b)所示。

当上位机需要控制充、放电电流时,单片机采用查询方式,通过SPI口向TLV5638发送命令和数据,然后通过控制CD4053确定模拟控制信号输出通道。因为Mega16L的SPI口字宽为8位,因此必须连续进行两次写操作才能完成对TLV5638的编程。

单片机收到上位机命令后,先将数据写到PA口,然后向相应锁存使能位写‘0’,将数据锁存入74LS573中,完成对继电器的控制。

结语

本文提出了一种基于Mega16L的蓄电池充放电控制器。该控制器利用串口RS232接受上位机发送的控制指令,然后根据控制指令完成对蓄电池充电电流、放电电流以及放电电阻接入的控制。该控制器部分实现了电池充、放电电源的数字化控制。该系统已应用于539CH-1型Ni-Cd电池的充放电设备中,性能良好。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top