太阳能充放电控制器的设计课程设计说明书样本

上传人:无*** 文档编号:71415329 上传时间:2022-04-07 格式:DOC 页数:54 大小:17.24MB
收藏 版权申诉 举报 下载
太阳能充放电控制器的设计课程设计说明书样本_第1页
第1页 / 共54页
太阳能充放电控制器的设计课程设计说明书样本_第2页
第2页 / 共54页
太阳能充放电控制器的设计课程设计说明书样本_第3页
第3页 / 共54页
资源描述:

《太阳能充放电控制器的设计课程设计说明书样本》由会员分享,可在线阅读,更多相关《太阳能充放电控制器的设计课程设计说明书样本(54页珍藏版)》请在装配图网上搜索。

1、课程设计说明书太阳能充/放电控制器设计专业自动化学生姓名王晶巧班级B自动化081学号0810603118指导教师张兰红完成日期2012年5月26日太阳能充/放电控制器设计摘 要: 对以STC12C5412AD单片机为控制核心的太阳能充/放电控制器进行了设计。该控制器实现的功能有自动检测太阳能电池板电压,决定能否开启充电;当蓄电池电压低于10.8V时,自动关断负载;当蓄电池电压高于14.8V时,自动关断负载;当蓄电池处于浮充状态时电压值控制在13.7V;当蓄电池反接或系统出现异常时,蜂鸣器报警。根据控制器的主要功能,提出了设计方案并进行了论证。设计包括硬件设计和软件设计两大部分。硬件部分包括单片

2、机最小系统、电源转换及控制电路、显示模块、按键模块、报警模块和串口通信模块六个部分。单片机选用宏晶STC公司的STC12C5412AD,用电源转换及控制电路控制蓄电池的充电和负载的放电,用1602液晶显示器显示系统信息,用发光二极管显示系统的运行状态,用按键来调节系统的各个参数及状态,用蜂鸣器对异常情况报警,用MAX232和RS232进行串口通信。软件采用了模块化的设计方法,主要分为主程序、A/D转换子程序、按键检测子程序、液晶显示子程序四部分。首先在万用板上制作了太阳能充/放电控制器系统,对硬件和软件部分分别进行了调试,再进行了软硬件联调,调试成功后,开始制作PCB板,焊好PCB板之后再进行

3、整体的调试运行,最后得到较为完美的太阳能充/放电控制器,可圆满地完成毕业设计任务。关键词: 单片机;太阳能电池;蓄电池;控制器盐城工学院课程设计说明书(2012)Design on the charging/discharging controller of solar engryAbstract: As to this topic, the STC12C5412AD MCU is chosed as the control core in the design of the solar charging/discharging controller.The controller can ac

4、hieve the following functions: detection of solar panels voltage automatically; when the voltage of accumulator is lower than 10.8V, load is shut down automatically; when the voltage of accumulator is above 14.8V, load is shut down automatically; when the accumulator is in floating state ,the voltag

5、e is controlled at 13.7V; when the storage battery is reverse connection or system is abnormal, buzzer alarms.According to the main function of the controller, the following designed scheme is proposed and demonstrateddan. The design includes hardware design and software design of two parts. The har

6、dware part comprises six parts ,such as the minimum system of MCU , the circuit of the power conversion and control, alarm module , display module, keyboard module, the communication of serial ports module.The STC12C5412AD producted by Hong Jing is choosed as the main control chip; the charging of t

7、he accumulator and the discharging of load are controlled by the circuit of the power conversion and control; 1602LCD is adapted to display system information; system states are displayed by LED; the keys are used to adjust the system parameters and states of the system; buzzer alarms on the unusual

8、 situation; MAX232 and RS232 are used for the communication of serial ports.As to the software part design,the modular method is adopted.In this part,what mainly included are main program, A / D conversion subroutine, liquid crystal display subroutine,keyboard detection subroutine , liquid crystal d

9、isplay subroutine.Firstly, a solar charging / discharging controller system is produced on porous plate ,as to debug the hardwar and software respectively,which are connected to debug subsequently. debugging. When the first step is reached, the PCB board is started to be made.Then the whole system n

10、eeds debugging until a perfect solar charging / discharging controller system ia achieved. Finally,this graduation design task is put across.Key words: MCU;solar battery; storage battery ;contorller目 录1 概述11.1 课题研究背景与意义11.2 课题设计内容12 设计方案论证12.1 总体设计12.2 蓄电池参数选择23 系统硬件电路设计43.1 单片机最小系统43.2 电源转换及控制电路73.

11、3 显示模块83.4 按键模块113.5报警模块123.6串口通信模块124 系统软件设计144.1主程序144.2 A/D转换子程序164.3按键检测子程序174.4液晶显示子程序175系统调试175.1 硬件调试185.2 软件调试185.3 整机联调195.4 PCB板的调试195.5 实验结果196 结束语23致 谢24参考文献25附 录26附录1 太阳能充/放电控制器系统电路原理图27附录2太阳能充/放电控制器系统PCB图28附录3 太阳能充/放电控制器系统元件清单29附录4 太阳能充/放电控制器系统程序清单30盐城工学院课程设计说明书(2012)太阳能太阳能充/放电控制器设计1 概

12、述 1.1 课题研究背景与意义随着能源问题的日益严峻,太阳能作为新能源和可再生能源的一种,因其清洁环保,永不衰竭的特点,越来越收到人们的重视。充分开发利用太阳能成为研究热点,太阳能发电是其主要的利用方式。太阳能发电以太阳能电池板作为媒介,将太阳光直接转化为电能。为了提高太阳能电池的利用效率,近年来国内外市场一直都在研究控制性能更好的太阳能充/放电控制器。太阳能充/放电控制器对太阳能电池板所发的电能进行控制调节,一方面把调整后的能量送往直流负载或交流负载,另一方面把多余的能量送往蓄电池存储,当所发电能不能满足负载需要时,控制器又要把蓄电池的电能送往负载,并且保护蓄电池不能过充或者过放。1.2 课

13、题设计内容以STC12C5412AD单片机为核心,设计并制作太阳能充/放电控制器。该控制器控制太阳能电池板给蓄电池充电,同时控制畜电池为负载放电。具体要求为:a)蓄电池电压为12V,其充电电压不超过14V;b)当检测到蓄电池电压达到规定值时,使用控制器控制连接太阳能电池板与蓄电池之间的MOS管的开关,以脉宽调制的方式,降低充电电流以进一步为蓄电池充电直到最后用很微小的电流将蓄电池电压维持在某一固定值;c)控制负载时,当蓄电池电压放电到一定电压值以下时,要关断负载以保护蓄电池不过分放电。设计太阳能充/放电控制器的硬件电路与软件程序,给出硬件系统的电路原理图与PCB图,对硬件电路与软件分别进行调试

14、,得到调试成功的太阳能充/放电控制器。2 设计方案论证2.1 总体设计太阳能发电系统由太阳能电池板、充放电控制器、蓄电池、负载组成,其组成如图2-1所示。其中的充/放电控制器是本次毕业设计的内容。充/放电控制器总体框图如图2-2所示,其中包括单片机最小系统、电源转换及控制电路、显示模块、按键模块、报警模块和串口通信模块六个部分。普通51单片机是目前使用量最多的单片机,但其片内资源较少,而且A/D转换时需要外接ADC0804,并且没有PWM单元,而STC12C5412AD单片机是高速、低功耗、超强抗干扰的的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍,内部集成4路PWM

15、脉宽调制,8路高速10位A/D转换,针对强干扰场合。由于该控制器需要3路A/D采集系统和PWM脉宽调制单元控制充电,所以选用STC12C5412AD单片机作为控制芯片。图2-1 太阳能发电系统框图图2-2 充/放电控制器总体框图电源转换及控制电路用来检测太阳能电池板电压值,并且为单片机提供工作电压。采用电源接口,将输入电源接口的太阳能电池电压与蓄电池电压通过A/D转换,经单片机比较,开启充/放电的控制。该电路是太阳能充/放电控制器的关键,采用MOS管IRL2703控制充/放电;使用稳压管得到单片机工作电压和保护MOS管。报警模块采用4个二极管,2个电阻和12V有源蜂鸣器。按键模块用来调节系统参

16、数,3个按键的作用分别为:增大浮充电压和过载电压,减小浮充电压和过载电压,调节浮充电压。显示模块准备采用6个发光二极管指示灯和液晶显示器。发光二极管分别为:蓄电池接入系统指示灯、系统正常工作状态指示灯、蓄电池欠压指示灯、蓄电池过压指示灯、充电状态指示灯、负载工作状态指示灯。由于本次设计系统不需要显示汉字与图形,并且1602液晶显示器价格相对便宜,所以,选用1602液晶显示器。串口通信模块采用MAX232和RS-232串口。MAX232芯片是MAXIM公司生产的、包含两路接收器和驱动器的IC芯片,它的内部有一个电源电源变换器,可以把输入的+5V电源电压转换成RS-232输出电平所需的+10V电压

17、。所以,采用此芯片接口的串行通信系统只需单一的+5V电源就可以了。其适应性强,价格适中,硬件接口简单,所以,本系统采用MAX232芯片。但该芯片和上位机使用时,需用RS232串口作为连接。2.2 蓄电池参数选择蓄电池作为太阳能发电系统的储能装置,可以提高系统的供电质量。蓄电池将日照充足时系统发出的多余的电能,保留在太阳光不足的夜间或阴雨天使用。铅酸蓄电池是将电能转换为化学能存储起来,需要是将化学能转变为电能供给用电设备的装置。它的正极活性物质是二氧化铅(),负极活性物质是还蛮装金属铅(),电解液是硫酸液()。其充电和放电过程是通过电化学反应实现的。反应方程为:充电反应:放电反应:阳极:阴极:负

18、极:正极:放电时,蓄电池连接外部电路放电时,稀硫酸即会与阴、阳极板上的活性物质产生反应,生成新化合物(硫酸铅)。经由放电硫酸成分从电解液中释出,放电愈久,硫酸浓度愈稀薄。所消耗之成份与放电量成比例,只要测得电解液中的硫酸浓度,亦即测其比重,即可得知放电量或残余电量。 充电时,由于放电时在阳极板,阴极板上所产生的硫酸铅会在充电时被分解还原成硫酸,铅及过氧化铅,因此电池内电解液的浓度逐渐增加, 亦即电解液之比重上升,并逐渐回复到放电前的浓度,这种变化显示出蓄电池中的活性物质已还原到可以再度供电的状态,当两极的硫酸铅被还原成原来的活性物质时,即等于充电结束,而阴极板就产生氢,阳极板则产生氧,充电到最

19、后阶段时,电流几乎都用在水的电解,因而电解液会减少,此时应以纯水补充。 虽然蓄电池正常使用寿命很长,但影响蓄电池寿命的因素有很多,主要有以下几个方面:a)环境温度。过高的环境温度是影响到蓄电池使用寿命的典型因素,一般蓄电池要求的环境温度是在1520,随着温度的升高,蓄电池的放电能量也有所提高,但环境温度一旦超过25,只要温度每升高10,蓄电池的使用寿命就会减少一般。b)过度放电。蓄电池被过度放电是影响蓄电池使用的另一重要因素。这种情况主要发生在停止充电后,蓄电池为负载供电期间。当蓄电池被过度放电时,导致蓄电池阴极的“硫酸盐化”。在阴极板上形成的硫酸盐越多,电池的内阻越大,蓄电池的充、放电性能就

20、越差,其使用寿命就越短。过量放电使得蓄电池的端电压低于蓄电池所允许的放电终止电压。对12V的M型铅酸蓄电池而言,其放电终了电压为10.610.9V左右。c)过度充电。板栅腐蚀是影响蓄电池使用寿命的重要原因。在过度充电状态下,正极由于析氧反应,水被消耗,增加,从而导致正极附近酸度增高,板栅腐蚀加速。如果蓄电池使用不当,长期处于过充电状态,那么电池的栅极就会变薄,容量降低,缩短使用寿命。所以蓄电池的最大电压不能超过15V。d)浮充电状态对蓄电池使用寿命的影响。目前,蓄电池大多数都处于长期的浮充电状态下,只充电,不放电,这种工作状态极不合理。这样会造成蓄电池的阳极极板钝化,是电池内阻急剧增大,是蓄电

21、池的实际容量远远低于其标准容量,从而导致蓄电池所能提供的实际后备供电时间大大缩短,减少其使用寿命。另外,浮充电压应合理选择。浮充电压是蓄电池长期使用的充电电压,是影响蓄电池寿命的至关重要的因素。一般来说,对于端电压为12V的蓄电池,正常的浮充电压在13.513.8V之间。浮充电压过低,蓄电池充不满,浮充电压过高,会造成过电压充电。当浮充电压超过14V时,即认为是过电压充电。严禁对蓄电池组过电压充电,因为过电压充电会造成蓄电池中的电解液所含的水被电解成氢和氧而逸出,使电解液浓度增大,导致蓄电池寿命缩短,甚至损坏。e)失水。蓄电池失水也是影响其使用寿命的因素之一,蓄电池失水会导致电解液密度增加、电

22、池栅板的腐蚀,是蓄电池的活性物质减少,从而使蓄电池的容量降低而导致其使用寿命减少。f)放电深度。放电深度对蓄电池的循环寿命影响很大,蓄电池经常深度放电,寿命将缩短,其影响程度见图2-3。图2-3 放电深度对蓄电池的循环寿命影响基于以上几点影响因素,为使蓄电池使用寿命尽量长,所以蓄电池选用循环使用充电,设定蓄电池的欠压电压为10.8V,浮充电压为13.7V,过压电压为14.8V。3 系统硬件电路设计 根据第2节总体设计方案,进行了太阳能充/放电控制器的硬件电路设计,总电路原理图如附录1所示。3.1 单片机最小系统本次选用的主控芯片为单片机STC12C5412AD。其引脚图如图3-1所示。图3-1

23、 STC12C5412AD引脚图STC12C5412AD单片机是STC生产的单时钟/机器周期(1T)的单片机,片上集成512字节RAM,6个16位定时器(两个与传统8051兼容的定时器/计数器T0、T1,PCA模块可在实现4个16位定时器),8路10位A/D转换,MAX810专用复位电路,4路PWM/PCA(也可用来当4路D/A使用)。要使单片机工作,必须提供复位电路和晶体振荡电路,即组成单片机最小应用系统,使其正常工作。采用的复位方法是自动复位,单片机复位满足的条件为:RST引脚上出现10ms(T=RC)以上的高电平,所以当电容值取C=10UF时,电阻R=10K才会满足要求。晶振选用12MH

24、Z。而P10作为A/D转换通道,外接电阻R2和R3,用来检测蓄电池电压。STC12C5412AD单片机最小系统如图3-2所示。图3-2 STC12C5412AD单片机最小系统3.2 电源转换及控制电路图3-3为电源接口电路, PV+为太阳能电池板正极,PV- 为太阳能电池板负极,Vcc(12V) 为蓄电池正极,BAT- 为蓄电池负极,FU+为负载正极,FU- 为负载负极。图3-3 电源接口电路控制器采用太阳能电池板、蓄电池和负载共用正极的方式接入,通过蓄电池负极与太阳能电池板负极之间的MOS管控制充电的开/关,通过蓄电池负极与负载负极之间的MOS管控制负载放电的开/关。图3-4为电源转换及控制

25、电路。其中ADC1与单片机的P1.1相连接,JCPV与单片机的P1.3,CHEF与单片机的P3.7相连接。图3-4 电源转换及控制电路图3-4中蓄电池正极从二极管DD6的阳极接入,DD6为防止电源反接构成反向回路设计。Q3、R16、DW2为一级降压电路,将电压钳位在9.4V左右。DW2为10V稳压管,当蓄电池电压高于10V,三极管Q3的基极电压被稳压管DW2稳压在10V,通过BE极之间的PN结后电压下降0.6V,最终电压稳定在9.4V。然后通过二级降压电路R17、Q4和DW3将电压钳位在5V。与一级降压电路的原理相同,DW3为5.6V稳压管,当节点电压高于5.6V,三极管Q4的基极电压被稳压管

26、DW3稳压在5.6V,通过BE极之间的PN结后电压下降0.6V,最终电压稳定在5V。这里的5V电压用来给单片机系统提供电源。两级降压电路中使用三极管的作用是为了扩大电流,单独使用稳压管同样可以使电压稳定在期望值,但是输出的电流会非常小,以致无法带动负载。电阻R25、R26和二极管DD8用来检测太阳能电池板电压值,标号“PV-”为太阳能电池板负极,“JCPV”接单片机A/D输入口。由于太阳能电池板正极与蓄电池正极连接在一起,当“PV-”电压等于或大于“BAT-”电压时,说明太阳能电池板电压等于或小于蓄电池电压,这时不能开启充电控制;当“PV-”电压小于“BAT-”电压时,开启充电控制。R14、R

27、15,R28、R29、DW1、Q2、T1为控制负载开关电路。DW1的作用是保证MOS管的GS之间电压最大不得超过10V,防止了MOS的损坏。三极管Q2导通时,MOS管的栅极电压很小,使栅源电压小于开启电压,MOS管T1截止;Q2不导通时,MOS管T1导通。标号为“ADC1”的作用为:用于单片机控制负载通断;用于采集MOS管在开启状态下的DS压降,从而检测负载消耗电流的大小;当负载过载或短路时,“ADC1”由硬件自动使MOS管T1关闭,从而防止MOS管和负载的损坏。当欠压或过压时,单片机输出1,使得Q2导通,T1截止,负载断开;当正常工作时,单片机输出0,使得Q2截止,T1导通,负载导通;当负载

28、过载时,ADC1电压变高,Q2导通,T1截止,负载断开。R21、R20用来启动硬件自动关闭充电,当太阳能电池板低于蓄电池电压时,可由“PV-”直接控制Q5三极管,Q6的控制将失效。T2、T3两个MOS管需要对接才可以有效地控制充电回路,因为MOS管内部自身会有一个二极管,N沟道为S指向D,P沟道为D指向S,DW4为T2和T3MOS管稳压。T2和T3两个MOS管的开关由Q5和Q6两个三极管的状态共同决定。3.3 显示模块显示模块分为两个部分,分别为:指示灯显示和1602液晶显示。指示灯显示电路如图3-5所示,R8 R13为限流电阻,防止二极管的电流过大,使二极管损坏。LED1为蓄电池欠压指示灯;

29、LED2为蓄电池过压指示灯;LED3为负载工作状态指示灯;LED4为充电状态指示灯;LED5为系统正常工作状态指示灯;LED6为蓄电池接入系统指示灯。1602液晶显示器也叫1602字符液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它有若干个5*7或者5*11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,不能显示图形和汉字。其为5V电压驱动,带背光,可显示两行,每行16个字符,内置含128个字符的ASC字符集字库,只有并行接口,无串行接口。1602液晶显示电路如图3-6所示。其中DB0DB7与单片机的

30、P2.0P2.7相连接,LCDEN与单片机的P1.4,RS与单片机的P1.7相连接。图3-5指示灯显示电路图3-61602液晶显示电路1602型液晶接口信号说明如表2所示。a)本操作时序为:读状态 输入:RS=L,=H,E=H 输出:D0D7=状态字读数据 输入:RS=H,=H,E=H 输出:无写指令 输入:RS=L,=L,D0D7=指令码,E=高电平 输出:D0D7=数据写数据 输入:RS=H,=L,D0D7=指令码,E=高电平 输出:无表3-11602液晶接口信号说明引脚号名称功能说明1VSS电源地2VDD电源正极3VO液晶显示对比度调节端4RS数据/命令选择端(H/L)5读/选择端(H/

31、L)6E使能信号714D0D78位数据口15BLA背光电源正极16BLK背光电源正极b) 状态字说明见表3-2。表3-2状态字说明STA7STA6STA5STA4D7D6D5D4读/写使能当前地址指针的数值原则上每次对控制器进行读写操作之前,都必须进行读/写检测,确保SAT7为0。实际上,由于单片机的操作速度慢于液晶控制器的反应速度,因此可以不进行读/写检测,或只进行简短的延时即可c)数据指针设置见表3-3。控制器内部设有一个数据地址指针,用户可以通过它们访问内部的全部80B的RAM。表3-3数据指针设置指令码功能80H+地址码(027H, 4067H)设置数据地址指针d)其他指针设置见表3-

32、4。表3-4其他设置指令码功能01H显示清屏:1.数据指针清0 2.所有显示清002H显示回车:数据指针清0e)初始化设置显示模式设置见表3-5。表3-5显示模式设置指令码功能00111000设置162显示,57点阵,8位数据接口显示开/关及光标设置见表3-6。表3-6显示开/关及光标设置指令码功能00001DCBD=1开显示;D=0关显示 C=1显示光标;C=0不显示光标 B=1光标闪烁;B=0光标不闪烁000001NSN=1当读或写一个字符后地址指针加1,且光标加1;N=0当读或写一个字符后地址指针减1,且光标减1S=1当写一个字符时,整屏显示左移(N=1)或右移(N=0),以得到光标不移

33、动而整屏移动的效果;S=0当写一个字符时,整屏显示不移动00010000光标左移00010100光标右移00011000整屏左移,同时光标跟随移动00011100整屏右移,同时光标跟随移动f)写操作时序通过RS确定是写数据还是写命令。写命令包括使液晶的光标显示或不显示、光标闪烁或不闪烁、需或不需要移屏、在液晶的什么位置显示,等等。写数据是指要显示什么内容;读/写控制端设置为写模式,即低电平;将数据或命令送达数据线上;给E一个高脉冲将数据送入该控制器,完成写操作。3.4 按键模块调节浮充电压减少浮充电压和过载电压增大浮充电压和过载电压图3-7 按键模块电路按键模块的电路图如图3-7所示。其中KE

34、Y1与单片机的P3.3相连接,KEY2与单片机的P3.4相连接,KEY3与单片机的P3.5相连接。此模块用来调节系统的各个参数及状态。按下S1为增大浮充电压和过载电压,按下S2为减小浮充电压和过载电压,按下S3为调节浮充电压。3.5报警模块蜂鸣器用于系统出现异常时报警,采用四个二极管,若将蓄电池反接至控制器时,蜂鸣器会长鸣报警,警告系统接入错误,同时在蓄电池接入正确时,当BEEP端由单片机输出高电平时,蜂鸣器也可发出报警。报警模块电路如图3-8所示,其中BEEP与单片机的P1.6相连接。图3-8 报警模块电路3.6串口通信模块MAX232芯片是专门为电脑的RS-232标准串口设计的单电源电平转

35、换芯片,使用+5V单电源供电,具有低功耗,高集成度等特点。因此,串口通信部分采用MAX232芯片和RS232进行TTL电平和RS-232电平之间的转换,给单片机下载程序。RS-232是美国电子工业协会EIA制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。RS-232C标准接口全称是“使用二进制进行交换的数据终端设备(DIE)和数据通信设备(DCE)之间的接口”。RS232串口通信接线方法采用三线制,串口传输数据只要有接收数据针脚和发送数据针脚就能实现,接收数据针脚(或线)与发送数据针脚(或线)相连,彼此交叉,信号地对应相接。其中RS232(DB9)的引

36、脚定义见表3-7。MAX232的外围连接分别如图3-9所示。图3-9中上半部分电容C1,C2,C3,C4及V+,V-是电源交换电路部分。在实际应用中,器件对电源噪声很敏感,因此Vcc必须要对地加去耦电容C5,其值为0.1。电容C1,C2,C3,C4选用0.1的非极性瓷片。在设计电路时,这4个电容应尽量靠近MAX232芯片,以提高抗干扰能力。表3-7 DB9针引脚信号功能引脚号信号名称信号功能1DCDPC收到远程信号2RXDPC接受数据3TXDPC发送数据4DTRPC准备就绪5GND信号地6DSR仪器准备就绪7RTSPC请求发送数据8CTS仪器已切换换到接受状态9RI通知PC,线路正常16图3-

37、9 MAX232外围电路连接图图3-9中下半部分为发送和接收部分。实际应用中,T1IN,T2IN可直接连接TTL/CMOS电平的51单片机串行发送端TXD; R1OUT,R2OUT可直接连接TTL/CMOS电平的51单片机串行接收端RXD;T1OUT,T2OUT可直接连接PC机的RS-232串口的接收端RXD;R1IN,R2IN可直接连接PC机的RS-232串口的发送端TXD。若从MAX232芯片中两路发送、接收中任选一路作为接口。要注意其发送、接收的引脚要对应。如使T1IN连接单片机的发送端TXD,则PC机的RS-232接收端RXD一定要对应接T1OUT引脚。同时R1OUT连接单片机的RXD

38、引脚,PC机的RS-232发送端TXD一定要对应接R1IN引脚。其原理图如图3-10所示,其中TXD与单片机的P3.1相连接,RXD与单片机的P3.0相连接。图3-10 串口通信原理图其数据传输过程如下:MAX232的11脚T1IN接单片机TXD端P3.1,TTL电平从单片机的TXD端发出,经过MAX232转换为RS232电平后从MAX232的14脚T1OUT发出,再连接到RS232串口座的第2脚,通过串口连接至PC机的串口座第2脚RXD端,至此计算机接收到数据。PC机发送从PC机串口座第3脚TXD端发出数据,再逆向流向单片机的RXD端片P3.0接收数据。4 系统软件设计本设计系统软件分为主程

39、序、A/D转换子程序、按键检测子程序、液晶显示子程序四部分。4.1主程序主程序的流程图如图4-1所示。如图所示,首先对整个系统初始化,在初始化过程中自动检测太阳能电池板电压,然后判断其是否高于蓄电池电压。当太阳能电池板电压高于蓄电池电压时,若蓄电池电压低于10.8V,开启充电,并等待欠压恢复,按键检测,改变系统参数;若蓄电池电压高于10.8V直接按键检测。然图4-1 主程序流程图后接通负载,若蓄电池电压高于10.8V低于14.8V,则采用PWM脉宽调制技术充电;若蓄电池电压高于14.8V,关闭充电。当太阳能电池板电压低于蓄电池电压时,控制器不能开启充电。若蓄电池电压低于10.8V,则等待欠压恢

40、复,在等待过程中,若太阳能电池板电压高于蓄电池电压时,开启充电,按键检测,改变系统参数;若蓄电池电压高于10.8V,则开启负载。若蓄电池电压高于10.8V低于14.8V,则直接开启负载;若蓄电池电压高于14.8V,则关闭负载,等待过压恢复,并进行按键检测,改变系统参数。最后检测电池板电压,检测负载的过载状态,再次检测按键。4.2 A/D转换子程序由于STC12C5412AD内部自带8路电压输入型10位A/D转换,可做温度检测,电池电压检测、按键扫描、频谱检测等。上电复位后P1口为弱上拉型I/O口,用户可以通过软件设置将8路中的任何一路设置为A/D转换,不用作为A/D使用的口可继续作为I/O口使

41、用。所以在硬件设计方面不需要外接A/D转换器,直接在软件设计时对相关寄存器进行设置进行A/D转换。A/D转换子程序流程图如图4-2所示。图4-2 A/D转换子程序流程图表4-1 P1M0、P1M1寄存器设置P1M07:0P1M17:1I/O口模式(若作A/D使用,需先将其设置为开漏或高祖输入)00准双向口(I/O口),灌电流可达20mA,拉电流为230uA01推挽输出(强上拉输出,可达20mA,要加限流电阻,尽量少用)10仅为输入(高阻),如果需作为A/D使用,可选此模式11开漏,如果需作为A/D使用,可选此模式通过设置P1M0、P1M1可以将P1口的通道设置为A/D转换通道,其具体设置见表4

42、-1。4.3按键检测子程序按键检测子程序分为三个部分,分别对三个键是否按下进行判断。开关S1按下,浮充电压、过载电压增加0.01V,液晶显示浮充电压和过载电压。开关S1按下,浮充电压、过载电压减少0.01V,液晶显示浮充电压和过载电压。开关S3按下后,浮充电压、过载电压减少0.01V。若S1按下,浮充电压增加0.01V;若S2按下,浮充电压减少0.01V。液晶显示浮充电压和过载电压。图4-3 开关S1的工作流程图4.4液晶显示子程序1602液晶显示子程序主要是对内部控制指令进行指定如液晶初始化,显示空白,读,写,判断液晶是否忙及指定字符的位置等函数构成。液晶显示子程序流程图如图4-4所示。首先

43、进行液晶初始化,再写地址命令到LCD,然后放发送字符串,最终液晶显示。图4-4 液晶显示子程序流程图5系统调试 单片机应用系统的调试包括硬件和软件两部分,但是它们并不能完全分开。一般的方法就是排除明显的硬件故障,再进行综合调试,排除可能的软硬件故障。总之,调试过程是一个软硬件相结合调试的过程,硬件电路是基础,软件是检测硬件电路和实现其功能的关键。本设计是在单片机最小系统的基础上建立起来的,所以必须先确定单片机最小系统能否正常工作。为了能够正确控制太阳能充/放电,接下来还要确定电源转换及控制电路有无错误,并对各个模块进行调试。硬件调试结束后,最主要的就是软件的调试。对各个模块的软件通过Keil等

44、仿真编辑器进行编程,确认编程无误后然后与上位机通信,下载程序。然后进行软硬件联调,直至调试成功,得到完整的太阳能充/放电控制器。5.1 硬件调试由于STC12C5412AD没有DIP封装,所以选用32引脚SOP封装。在焊万用板前先将单片机最小系统通过热转印技术制作成印刷电路板。其步骤为:a)利用Altium Designer 6画出电路原理图,再利用网络表生成相应的PCB图,以备打印;b)将PCB图打印到热转印纸上;c)将打印好PCB的转印纸平铺在覆铜板上,准备转印;d)加温,将热转印纸上黑色塑料粉压在覆铜板上形成高精度的抗腐层;e)用三氯化铁溶液进行腐蚀;f)出焊盘部分,剩余的部分用于阻焊。

45、最小系统的印刷电路板制好后,在安装前元器件要逐一检查,用万用表测其数值,看是否与所用相同。在万用板上将器件排好,焊接。焊接完成后用万用表测试电路之间的线有没有短路和断路,及再次检查器件的有无损坏。在检查电源转换及控制电路时,要注意MOS管IRL2703、三极管9012、三极管9013、三极管BC337的管脚判别和稳压管的正负极。在硬件调试的过程中,我发现电源转换及控制电路不能提供+5V的电压,需要改变R16的电阻值,将其从33K变为22K即可提供+5V的电压。5.2 软件调试软件调试分为模块调试和统一调试。调试使用的仿真软件为Keil软件。具体的调试步骤如下:a) 通电前检查电路和器件焊接完成

46、后,需对照电气原理图逐一检查线路,看是否存在短路、断路、虚焊等问题,需要特别注意电源电压和地线的连接、晶体振荡器和电容是否紧靠单片机、复位电路的连接。b)单片机通电检查先给单片机通电,注意是否异常情况,如器件的发烫、冒烟等。如果有异常情况,应立即断电,检查电路错误,防止元器件的损坏。c)模块调试模块调试主要分为串口通信系统调试、显示模块调试、按键模块调试。串口通信模块是单片机工作的基础,与STC下载器配合,观察单片机能否将程序下载进去。如果能够工作,则该模块无错误,单片机最小系统没有问题。显示模块调试主要有发光二极管和液晶1602的调试。对于发光二极管,可以下载流水灯程序。对于液晶1602可以

47、下载LCD1602显示程序。在下载程序时需注意单片机的管脚定义。按键模块调试可以下载单独按键程序。通过对按键的控制,进而控制发光二极管的亮灭。d)整体通电由于本系统中除了5V电源,还需要12V电源(12V电源由蓄电池提供)。将太阳能电池板和蓄电池接入系统后,观察电源转换及控制电路模块的异常情况。如有异常,立即断电检查电路。5.3 整机联调整机联调前应先确定各模块之间信号的连接是否正确。通过电后,将程序下载进单片机,观察各个模块的工作情况。分析各个模块是否达到所要求的工作性能。a)能够通过MAX232、RS232给单片机下载程序;b)能够通过按键调节过载电压、浮充电压等系统参数;c)发光二极管指

48、示灯能够显示电源充放电、负载的通断、系统工作是否正常等情况。液晶LCD1602能够显示通过按键调节后的参数情况;d)在欠压恢复时开启负载、过压恢复时开启负载、欠压、过压、过载、电源校准等情况下,蜂鸣器报警提示;e)电源转换及控制电路能够提供给单片机提供5V电源、控制蓄电池的充/放电、控制负载的通断和脉宽调制等功能。5.4 PCB板的调试对于PCB板,首先要检查其是否存在短路、断路等方面问题,避免硬件电路的损坏。由于本设计中有两个电源,所以对于电源线网络和地线网络要确保其完全正确。元器件安装前要用万用表一一检查其完好度。完成焊接后,再次检查其电路,看是否存在虚焊和少焊。确认无误后,给控制器上电,

49、接入太阳能电池板和蓄电池,再次检查引脚之间的连接。检查完毕后,将程序烧进去,检查运行结果。由于PCB画图的不熟练,在电路检测的过程中发现PCB板上Q5的发射极与地线相连,DD3阳极与地线相连,只好把它们的线割断,再将Q5的发射极与R20,DD3阳极与蜂鸣器负极重新连接。5.5 实验结果本控制器主要的功能是太阳能充/放电的控制,负载的通断控制,按键对系统的参数调节。当蓄电池电压高于电池板电压,且蓄电池电压高于10.8V低于14.8V时,其工作界面如图5-1所示。当蓄电池电压高于电池板电压,且蓄电池电压低于10.8V时,其工作界面如图5-2所示。当蓄电池电压高于电池板电压,且蓄电池电压高于14.8

50、V时,其工作界面如图5-3所示。当蓄电池电压低于电池板电压,且蓄电池电压高于10.8V低于14.8V时,其工作界面如图5-4所示。当蓄电池电压低于电池板电压,且蓄电池电压低于10.8V时,其工作界面如图5-5所示。当蓄电池电压低于电池板电压,且蓄电池电压高于14.8V时,其工作界面如图5-6所示。 图5-1负载工作、不充电工作界面 图5-2欠压、不充电工作界面 图5-3过压、不充电工作界面 图5-4负载工作、充电工作界面 图5-5欠压、充电工作界面 图5-6过压、不充电工作界面开关S1按下时,工作界面如图5-7所示。开关S2按下时,工作界面如图5-8所示。开关S1和S3按下时,工作界面如图5-

51、9所示。开关S2和S3按下时,工作界面如图5-10所示。 图5-7按下S1工作界面 图5-8按下S2工作界面 图5-9按下S1和S3工作界面 图5-10 按下S2和S3工作界面 6 结束语在忙碌了四个月后,我的毕业设计也到了尾声。在书本上学了很多专业方面的知识,似乎通俗易懂,但从未付诸实践过。这次毕业设计做了实物,才意识到自己能力的欠缺和知识的匮乏。知道自己的课题后,由于用汇编编写程序的繁琐,所以我在寒假里就自学了单片机C51语言。开学后,在写开题报告时我结合了毕业设计任务书中的要求,查阅了大量的资料,确定毕业设计的方案。根据设计方案,对电路原理图进行了设计。电路原理图确定后,就开始购买元器件

52、,进行硬件电路的制作。在焊接电路前应检查元件的完好度,每焊接完一个模块需对其进行调试,以确保电路的正确性。全部焊接完后,再次对照电路原理图检查电路。检查完毕后,使用Keil软件仿真,调试程序。完成调试后,开始PCB板的制作。制作PCB板时需对元件的大小和形状做适当的调整。PCB板完成焊接后,进行调试得到太阳能充/放电控制器。本次毕业设计是我在大学四年生活照最有收获的学习环节。学习了C语言、热转印技术和PCB图的制作,动手方面的能力有很大的提高。在整个设计过程中,每一次模块调试的成功都使我很有收获。因为本人能力有限,所以毕业设计中仍存在一些问题,请老师批评指正。致 谢四年的大学生活即将划上一个句

53、号,而对于我的人生只是一个逗号,我将再次踏入一个新的征程。毕业设计是我在大学里交的最后一份作业。这份作业的顺利完成除了本人的努力,更得益于老师、同学、朋友给予的帮助和支持 。本次设计是在老师张兰红教授的悉心指导下完成的。“授人以鱼不如授人以渔”,在设计过程中张老师经常与我在一起讨论。张老师的治学严谨、学识渊博和思想深邃给我留下了深刻的印象,树立了榜样,使我不仅学习了新的专业知识,增强了动手能力,学会了积极思考,还树立了远大目标。在此,对张老师表示衷心的感谢。除了张老师,实验室里的唐立刚、严彬、封会等同学也在我遇到困难时,伸出援手,给予帮助。不积跬步何以至千里,我还想感谢在大学四年里陪伴在我身边

54、的同学、朋友和教导我的老师们,感谢他们为我提出的有益的建议和意见,有了他们的支持、鼓励和帮助,我才能充实的度过了四年的学习生活。同时也感谢电气学院为我们提供的良好的做毕业设计的环境。谢谢你们!2012-6-2参考文献1 张毅刚. 单片机原理及应用M.北京:高等教育出版社,2008 2 郭天祥 新概念51单片机C语言教程入门、提高、开发拓展全攻略M 北京:电子工业出版社 20103 彭伟 单片机C语言程序设计实训100例基于8051+Proteus仿真M 北京:电子工业出版社 2010.64 张大明. 单片机控制实训指导及综合应用实例M.北京:清华大学出版社, 20045 张齐,朱宁西. 单片机

55、应用系统设计技术基于C51的Proteus仿真 M.北京:化学工业出版社,2004.6 沈光斌,刘冬,姚志成.单片机系统实用抗干扰设计.M.北京:人民邮电出版社,20047 冯育长 .单片机系统设计与实例分析.M.西安:西安电子科技大学出版社,2007 8 晁阳. 单片机MCS-51原理及应用开发教程M.北京:清华大学出版社,2009.9 黄惟公, 邓成中, 王燕. 单片机原理与应用技术M. 西安:西安电子科技大学出版社,200910 张萌, 和湘, 姜斌. 单片机应用系统开发综合实例M. 北京:清华大学出版社,2009附 录附录1 太阳能充/放电控制器系统电路原理图附录2 太阳能充/放电控制

56、器系统PCB图附录3 太阳能充/放电控制器系统元器件清单附录4 太阳能充/放电控制系统器程序清单25附录1 太阳能充/放电控制器系统电路原理图盐城工学院本科生毕业设计说明书(2012)附录2太阳能充/放电控制器系统PCB图27盐城工学院本科生毕业设计说明书(2012)附录3 太阳能充/放电控制器系统元件清单序号元器件数量型号(数值)1U11单片机STC12C5412AD2U21电源接口3U3112V有源蜂鸣器4U41MAX232ACPE5U51LCD1602显示器6J11串行接口DB9 母头7C1,C2230pf电容8C3,EC1,EC2,EC3410uf/25V电解电容9C4,C5,C6,C

57、7,C8,C96104电容10LED1,LED2,LED3,LED4,LED5,LED66发光二极管11DD1,DD2,DD3,DD4,DD6,DD7,DD87二极管12Q2,Q629013NPN型三极管13Q3,Q429012PNP型三极管14Q51BC337PNP型三极管15T1,T2,T33IRL2703N沟道功率MOS管16DW1,DW2,DW4310V稳压管17DW315.6V稳压管18S1,S2,S33按键19R1,R32电阻10K20R21电阻20K21R4,R52电阻10022R8,R9,R10,R11,R12,R13,R187电阻1K23R14,R292电阻10K24R151

58、电阻8.2K25R161电阻22K26R171电阻18K27R19,R232电阻12K28R20,R21,R243电阻100K29R221电阻3.3K30R25,R262电阻47K31R281电阻33K32R61可调节电阻10K附录4 太阳能充/放电控制器系统程序清单A. 主程序代码controller.c#include /STC12C5412AD单片机头文件#include /函数所在头文件#include /定义头文件#include /A/D转换头文件#include /液晶显示头文件#include /太阳能电池电压和过载检测头文件#include /初始化头文件void int_t1() interrupt 3 /定时器1中断TH1=(65536-50000)/256; /定时器T1初始化

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!