单片机AVR微控制器蓄电池充放电控制器的设计

发布者:码字奇思最新更新时间:2016-10-25 来源: elecfans关键字:单片机  AVR  微控制器  蓄电池  充放电控制器 手机看文章 扫描二维码
随时随地手机看文章
本设计采用AVR单片机Mega16L作为核心,可同时控制两块539CH-1型蓄电池的充、放电过程。Mega16L通过串行总线接收上位机的命令,然后通过SPI总线将数据发送给TLV5638。单片机通过多路模拟开关CD4053将TLV5638的两路D/A输出送入信号调整电路,从而完成对充放电电流的控制。放电过程中,Mega16L通过控制8D锁存器74LS573和复合管阵列ULN2081控制放电电阻接入。系统框图如图1所示。

单片机AVR微控制器蓄电池充放电控制器的设计 - 风雨里 - 风雨里的博客
图1 系统原理框图硬件设计
  硬件系统包括串行通信电路、充电和放电控制电路、继电器驱动电路等模块。
通信电路
  单片机通过串口与上位机通信。Mega16L端口为TTL电平,而上位机串口为RS232C标准接口。因此,在上位机与单片机通信时需要进行电平转换。本设计采用MAX232完成TTL电平与RS232接口电平之间的转换。
充电和放电控制电路
  单片机收到上位机的充、放电控制命令后,通过SPI口将控制信号发送给TLV5638。TLV5638将收到的数字信号转换成模拟信号,并送入信号调整电路。模拟控制信号经调整后送入充电或放电电源的PI控制器,对充电和放电电流进行控制。单片机通过CD4053选择控制信号的输出通道,使该控制器可同时对2块蓄电池进行充电和放电。该部分电路原理图如图2所示。
D/A变换
  本设计使用双通道l2位电压输出型高速DA转换器TLV5638完成数模转换。设计中,将Mega16作为主机,通过SPI口直接与TLV5638的串行接口相连。因为Mega16的SPI口为4线串口,所以连接时单片机SPI口的PB6(MISO)悬空。
  串行通信时,CS引脚出现下降沿时通信开始,数据在SCLK的下降沿逐位移入TLV5638的内部寄存器。最先移入的是数据的最高位。当16位数据全部移入或CS引脚变高时,TLV5638移位寄存器中的数据被存入相应的锁存器,锁存器的选择由数据中的控制字确定。因此,当Mega16需要向TLV5638发送数据时,PB7先从高电平跳到低电平,然后通过SPI口连续进行两次写操作,向TLV5638发送个字节数据。两次写操作完成后,在SCLK的第16个上升沿,相应锁存器的内容自动更新。
  应用中,TLV5638工作于慢速正常模式,采用2.048V内部参考电压。更新TLV5638某一路DAC数据时,必须保证另外一路数据不变。
  Mega16的SPI口可采用4种不同的数据传输格式工作,传输格式由SPI控制寄存器中的CPOL位和CPHA位控制。应用中,考虑到TLV5638的使用要求,令CPHA=0,CPOL=1(传输开始时采样SCK下降沿,结束时采样SCK上升沿)。

单片机AVR微控制器蓄电池充放电控制器的设计 - 风雨里 - 风雨里的博客
图2 D/A变换与通道选择
信号通道选择
  Mega16通过PD4和PD5以及外围逻辑电路控制信号的输出通道。逻辑电路包括1片7404和2片CD4053。以TLV5638的OUTA输出信号为例。模拟控制信号从TLV5638输出,经滤波后送入CD4053的X通道和Y通道。单片机PD4一方面直接与CD4053控制端A相连,另外还通过反相器7404与CD4053控制端B相连。这样就保证A端和B端的控制信号反相,使任意时刻X、Y通道中只有一个可以输出有效控制信号,从而保证该路充电和放电不发生冲突。应用中没有使用CD4053的Z通道,应将其与控制端C及使能端一起接地。
继电器驱动电路
  放电后期,需要将电池中的剩余容量完全放出,最终使单体电池电压下降到0V。设计中,利用继电器将放电电阻并联于单体电池两极,从而达到释放电池剩余容量的目的。继电器由8D锁存器74LS573和达林顿管阵列ULN2801驱动。单片机PA0~PA7输出控制信号,PD2、3、7和PC6、7输出5片74LS573所需的锁存使能信号。控制信号由74LS573锁存,然后通过ULN2801驱动继电器工作,将放电电阻并联在单格电池两端,从而完成单格电池剩余容量放电。继电器驱动电路原理图如图3所示。图中只包含1片74LS573,其它4片控制方法类似。

单片机AVR微控制器蓄电池充放电控制器的设计 - 风雨里 - 风雨里的博客
图3 继电器驱动电路原理图
软件设计
  软件采用主从结构。单片机收到上位机指令后,根据通信协议提取出命令字和数据,然后根据命令字完成相应的控制。软件基于模块化设计思想,主要包括:主程序模块,通信程序模块,D/A转换与通道选择模块,继电器组控制模块等。
主程序模块
  主程序模块完成单片机初始化,等待并处理中断等工作,流程图如图4(a)所示。

单片机AVR微控制器蓄电池充放电控制器的设计 - 风雨里 - 风雨里的博客
图4程序流程图
通信程序模块
  单片机与上位机间采用RS232串口通信。单片机采用中断方式接收上位机发出的命令,并根据接收到的数据内容向上位机发送应答信息。当命令的起始标志和结束标志都正确时,单片机向上位机发送ASCII字符‘Y’表示接收成功,然后处理收到的命令;否则,向上位机发送ASCII字符‘N’,表示发送不成功,要求上位机重新发送命令。
  上位机向单片机发送的命令符合以下格式:命令以帧为单位,每帧包含7个字节。每帧包含的命令字规定了单片机的控制方式。每帧中的数据字则以ASCII码的形式确定了充、放电电流的大小和继电器的代号。通信模块流程图如图4(b)所示。
  当上位机需要控制充、放电电流时,单片机采用查询方式,通过SPI口向TLV5638发送命令和数据,然后通过控制CD4053确定模拟控制信号输出通道。因为Mega16L的SPI口字宽为8位,因此必须连续进行两次写操作才能完成对TLV5638的编程。
  单片机收到上位机命令后,先将数据写到PA口,然后向相应锁存使能位写‘0’,将数据锁存入74LS573中,完成对继电器的控制。
关键字:单片机  AVR  微控制器  蓄电池  充放电控制器 引用地址:单片机AVR微控制器蓄电池充放电控制器的设计

上一篇:基于宏定义的超强avr io口操作
下一篇:AVR单片机读卡器程序设计

推荐阅读最新更新时间:2024-03-16 15:17

8051系列单片机介绍
8051系列单片机内部结构可以分为CPU、存储器、并行口、串行口、定时器/计数器和中断逻辑这几部分,如图。 处理器 微处理器又称CPU,由运算器和控制器两大部分组成。 1.算术逻辑单元 它在控制器所发内部控制信号的控制下进行各种算术操作和逻辑操作。 MCS-51系列单片机的算术逻辑单元能完成带进位位加法、不带进位位加法、带进位位减法、加1、减1、逻辑与、逻辑或、逻辑异或、循环移位以及数据传送、程序转移等一般操作外,其特点是: 在B寄存器配合下,能完成乘法与除法操作。 可进行多种内容交换操作。 能作比较判跳转操作。 有很强的位操作功能。 2.累加器 累加器A是最常用的专用寄存器。 进入ALU作算术操作和逻辑操作的操作数很多来自A
[单片机]
8051系列<font color='red'>单片机</font>介绍
基于STM32的 USB设计 --单片机程序篇
   首先,我们来看看usb的工作过程。   当usb设备接入到主机时,主机开始枚举usb设备,并向usb设备发出指令要求获取usb设备的相关描述信息,其中包括设备描述(device descriptor)、配置描述(configuration descriptor)、接口描述(interface descriptor)、端点描述(endpoint descriptor)等。这些信息是通过端点0(endpoint 0)传送到主机的。获取各种描述信息后,操作系统会为其配置相应的资源。这样主机就可以与设备之间进行通信了。   usb通讯有四种通讯方式控制(control)、中断(interrupt)、批量(bulk)和同步
[单片机]
MPC555微控制器及其在汽车电子领域的应用
MPC555微控制器是Motorola PowerPC 500系列的代表产品,专为汽车电子、航空航天、智能系统等高端嵌入式控制系统而设计。该产品可在高速移动、苛刻的环境下工作(工作温度-40~125℃), 性能优良并具有高度的灵活性和可靠性,适合大批量低成本生产。 MPC555主要有以下功能模块: ● 主频40MHz的精简指令集CPU(RCPU) ● 四级存储器控制器 ● U-Bus系统接口单元(USIU) ● 灵活的指令和数据存储保护单元 ● 448K字节Flash EEPROM ● 26K字节SRAM ● 双时间处理单元(TPU3) ● 18通道模块I/O系统(MIOS1) ● 双队列模数转换模块(QADC) ● 双CAN2
[嵌入式]
51单片机LED管显示子程序实例
;DISP显示子程序 PORT_A EQU 0CF01H PORT_B EQU 0CF02H PORT_C EQU 0CF03H ;功能:将显示缓冲区39-3FH内容显示一遍 ;3FH对应八个LED管 ;3E-39H自左到右对应数码 ;占用:PSW,ACC,DPTR,R0,R3,R6,R7 内 ; ORG 0DE00H DISP1: MOV R0,#3FH DISP_0: MOV R3,#01000000B ;位选字 MOV A,@R0 ;取显示数据 SJMP DISP_2 DISP_1: MOV DPTR,#LED_TB MOV A,@R0 MOVC A,@A
[单片机]
通过PIC单片机设计让电风扇送出仿自然风
硬件电路及原理 要使电风扇送出仿自然风,就需要改变电风扇送风的强弱,即需要改变风扇电机的电压和电流,从而改变其转速。如图1所示,风扇插座与晶闸管TREAC相串联,改变晶闸管控制角α,即控制晶闸管导通的时间,就能使风扇电机的电压、电流发生变化。图2展示了α角和电机负载电压的关系。 Α角的变化又可通过电容C1的充放电时间的改变来实现。PIC16F84 单片机按一定规律选择电阻Rx,即可改变电容C1的充放电时间,从而改变2N2646的导通时间。改变了TREAC的导通角,达到改变电风扇送风强弱的目的。控制角α和强弱风的关系如图3所示 市电频率f=50Hz,则可得下式 α/360°=t/0.02……………(1) 根据图1所示RxC1充
[单片机]
通过PIC<font color='red'>单片机</font>设计让电风扇送出仿自然风
74HC595在单片机上的应用及程序
74HC595具有8位串入并出的三态门电路。 高速率:最高55MHz(5V工作电压) 宽的工作电压范围:2V -6V 每个口的最大电流值(QA-QH): 35mA 当单片机的I/O资源比较紧张时,采用595并进行级联是一个很好的选择。 管脚定义: PIN NO symbol name and function 15 QA data output 1 QB data output 2 QC data output 3 QD data output 4 QE data output 5 QF data
[单片机]
利用C2000 MCU实施并网微型太阳能逆变器
作者:德州仪器 (TI) Jason Tao/ Vieri Xue, MCU DMC&DPS SAE工作组 摘要 可再生能源应用的迅猛发展将引发第四次工业革命。光伏发电是整个可再生能源方案的关键部分。在所有太阳能逆变器中,微型太阳能逆变器是至关重要的组成部分。 本文将为您介绍如何利用一个TMS320F2802设计一种低成本、高性能的微型太阳能逆变器。另外,文章还将讨论如何使用交叉式有源钳位反激和SCR全桥实现一个220W输出的微型太阳能逆变器,并介绍完整的系统固件架构和控制方法。最后,文章还会为您展示实验室波形。 1 概述 1.1 太阳能逆变器介绍 材料、能源和信息是人类生存和发展的三大要素。能源利用的每一次新发现,
[嵌入式]
基于AT89C51的时间/位移换向控制器设计
引言   在实际生产过程中,常常要用到具有自动换向功能的控制部件,如机械加工中的往返运行(位移),直流电源的正反向输出,电动机的正反转运行等现象,都是当正向(或反向)运行到一定时间或一定位置时,自动换为反向(或正向)运行,周而复始的过程。实现这一过程的自动化,就是设计一套控制电路,再配以位移传感器或时间继电器。目前市场现有的时间继电器虽然可以用多个组合来满足一些使用场合的要求,但仍存在着重复计时误差大,稳定可靠运行性不高,使用不方便灵活等问题。为此,笔者研发了以单片机为核心组成的时间/位移换向控制器SWHX-1,该系统具有成本低等特点,可完全且克服以上不足。 电路组成及工作原理   SWHX-1的内部电路如图1所示。该系统分
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved