找回密码
 立即注册
搜索
0赞
赞赏
手机版
扫码打开手机版
把文字装进口袋

基于TFT LCD的BOOST DC-DC电源电路设计

yao不回忆 2022-8-3 10:14:31
  项目实现功能
        由TFT LCD液晶屏幕显示的升压斩波直流电源转换器BOOST DC-DC电源电路,并完成了锂电池充放电电路的设计和仿真分析。先来看看项目效果演示:
        ,时长02:49项目实现的功能:
        1. 全数字方案;
        2. 电路输入15~26V,输出15~35V,最大电流5A;
        3. 单片机PWM控制BOOST电路输出;
        4. PID算法构成反馈环;
        5. 状态机控制系统的输出模式;
        6. RTOS协调整个系统的不同任务;
        7.按键交互设置输出模式及参数。
        硬件框架及设计
        先来看看系统的硬件框图,如下:
       
       

                整个系统分为四个部分进行设计:
        1)在BOOST电路的功率计设计方面,采用了集成度更高,更加小体积的电感电容和开启内阻极小的功率增强型金属氧化物场效应管MOSFET。2)在BOOST电路的控制系统方面,采用了小封装体积的STM32单片机微处理器作为中心处理器件,并采用了霍尔传感器作为反馈单元。3)在显示屏的设计方面,采用了2.2寸的TFT LCD的RGB全彩屏幕进行显示,并采用SPI通信协议进行控制和写入。4)在人机交互方面,采用了5个功能分明的按键,保证了系统的易用性,同时也没有对系统的交互性进行损失。
        最终我们得到了一个电路上效率较高,显示性能和交互性也较强的BOOST DC-DC电源转换电路。
        ✓ BOOST功率级设计BOOST电路是一种升压型DC-DC电源变换器,通过PWM信号控制电子开关,促使电感电容不断传递能量从而实现输出升压,它的基本拓扑结构如下
       
       

                通过脉宽调制信号PWM对三极管的基极进行控制,使三极管快速的通断。
        在三极管导通时,相当于输入电压直接加在电感两侧,电感电流呈线性增加,储存能量,同时二极管反向偏置,防止电容电压放电;当三极管断开时,由于电感的电流不会突变,则电感的电流会流经二极管到电容及负载上,此时储存在电感内的能量被释放,使得电容两端电压高于输入电压,以此实现升压的过程。更改脉宽调制信号PWM的占空比,就改变了电感储存能量的时间长短,时间越长,电感的能量就越多,从而关断期间释放的能量也就越大,输出电压也就越大。
        通过对原理的研究,我们可以得到下面两个公式
       
       

                根据工作条件:输入电压17V,输出电压26V,工作频率114KHz,负载50Ω,最大允许纹波50mV。计算电感及电容参数:
        L1=32.45uH,取L1=33uH
        C》31.57uF,取C=50uF
        在实际情况中,电路的负载变化时,如果保持PWM占空比不变,则输出电压会有所变化。为了保持输出电压稳定,我们需要反馈调节机制:PID算法,反映了控制器输出量和误差之间的闭环关系。
       
       

                将计算好的L1和C参数代入SIMULINK仿真,并设置PID反馈环:设置KP=10,KI=1,KD=0
        运行仿真,可以得到较为稳定的电源输出:
       
       

                为了实现电路的反馈,需要电压电流采样。电压采样使用分压电阻,电流采样使用霍尔传感器ACS712。
       
       

                由于单片机PWM输出的驱动能力有限,故要想控制BOOST电路,需要MOSFET驱动器的辅助,这里使用UCC27511。
       
       

                系统中其他器件的选型为:
        MCU采用STM32F103C8T6;
        MOSFET驱动器采用UCC27511;
        TFT-LCD采用1.44寸彩屏;
        霍尔电流计采用ACS712-20A;
        辅助电源采用K7812-2000;
        MOSFET采用CSD18540KTT;
        电感采用HSC1770封装的功率电感
        肖特基二极管采用CLS03;
        输入输出电容采用2220封装的钽电容
        ✓ 单片机控制级设计
        单片机控制级负责PWM信号输出,电压电流采样以及屏幕控制,需要在单片机最小系统的基础上引出PWM输出,ADC采样和SPI通信引脚。
       
       

                ✓ 按键交互设计
        五个按键功能分别为:
        MENU:停止输出,模式选择
        UP:选择恒压模式,增加设定值
        DOWN:选择恒流模式,减少设定值
        OK:确认该位设定值,切换下一位
        START:开启电源输出按键采用下降沿触发方式输入单片机,使用电容进行硬件滤波,减小误触概率。
        系统软件设计
        本系统的软件基本架构如下图:
       
       

                然后在STM32CubeMX内,对该框架进行一个使能和初始化。外设设置说明:ADC双路采样使用DMA循环模式;5个按键采用下降沿触发;SPI通信协议由于使用GPIO软件模拟,故设置成推挽输出即可;PWM输出采用高级定时器PWM模式;使用ST LINK V2对代码进行烧录;
        高速时钟源采用外部8MHz晶体振荡器,并将APB1总线倍频到64MHz。
        ✓ TFT屏幕通信设计
        TFT LCD屏幕的底层我们采用GPIO软件模拟SPI通信协议,单向只输出;
        从最高位开始,依次移位对要发送的8位数据和指令进行发送。
        引脚定义:
        PB10:数据/命令切换信号
        PB13:时钟信号
        PB15:串行数据发送
        ✓ RTOS任务设计
        本设计由三个RTOS任务构成,分别是:
        void State_change_function(void const * argument);//状态切换任务void tft_show_function(void const * argument);//屏幕内容刷新任务void drive_sample_function(void const * argument);//PWM输出及采样反馈PID运算任务
        其中:
        状态切换只有在按键按下之后才会触发;
        屏幕内容刷新只有在内容需要更改的时候才会触发,防止系统资源过度占用,并且在实时显示输出量时更新频率为20Hz;
        PID运算只有在start之后才会开始进行。
        ✓ 状态机设计
        假设要操控某一系统,通过按键设定功能,这时我们可以采用有限状态模型,系统拥有有限的一些状态,而我们只需指定有限的状态切换条件即可,这就是状态机。
       
       

                通过上述关系图的分析,我们可以将有限状态模型应用到本设计的功能设定和运作当中,使得系统运行逻辑性更强,效率更高。
        所有代码都严格写在了USER CODE范围内,可以直接用cube更改外设。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

使用道具 举报

您需要登录后才可以回帖 立即登录
学习了,这就去试试
2022-8-4 13:32:26
抢楼了,前排第一次啊
2022-8-5 15:45:33
学习了!!!!
2022-8-6 09:23:20
支持,赞
2022-8-7 03:01:06
支持一下,期待更多东西
2022-8-7 23:00:24
顶起  很好的帖
2022-8-8 18:59:41
太赞了
2022-8-10 07:26:23
不错
2022-8-10 07:29:49
支持,赞
2022-8-12 08:46:46
12下一页
返回顶部