- 博客(5)
- 收藏
- 关注
原创 单相逆变器电路拓扑及控制原理
那么为了使加到负载上的电压是成正弦波变化的,我们就要使用到上一节所讲述的方法,将占空比不断变化的方波施加到mos管的栅极。很容易想到当pwm占空比大于50%时,电流将正向流动,当占空比小于50%时,电流就将从右端的高侧mos流向左端的低侧mos,这时电流反向流动。可以想到,这样的方式控制上非常简单,但是在一个pwm周期内,电感上将会被施加上正向和反向的电压,纹波将会非常大。当基波小于载波时,左侧半桥的下管导通,此时电感通过左侧和右侧半桥的下管实现续流(这个很像Buck的拓扑)。所以我选择的控制如下图。
2024-04-14 22:55:30 1113 1
原创 spwm实现单相逆变
下面介绍PWM方波是如何转变为正弦波进行输出的,我们知道在载波(三角波)频率远远大于基波(正弦波)频率时,在一个周期内基波的值不会发生变化,为sin(t)。所以,在载波大于sin(t)时,pwm输出高电平,又因为三角波的线性特性,pwm的占空比是和sin(t)成正比的。spwm的具体控制原理为将正弦波作为基波,三角波作为载波,利用pwm进行离散控制,在基波大于载波时,输出高电平,在小于载波时输出低电平。这很容易理解,因为基波缩小几倍对应的sin(t)也缩小相同的倍数,占空比也缩小相同的倍数。
2024-04-11 23:24:08 701
原创 基于stm32f103c8t6单片机的超声波避障小车(解决上点之后程序不运行的问题)
他给的迷宫又是那种很方正的,所以在控制算法上不难但是科创部给出的道具实在是一言难尽,轮胎他太打滑了,而且加上我们3D打印出的小车框架不是很平整,所以控制起来也不是特别顺利。2. 如果你的程序没有问题,debug也正常,但是上电后就是不运行,试试在上电之后点一下复位。1. stlink有时候会接触不良,如果取下来在插上去任然烧不起的话,可以尝试在点烧录前把复位一直按着,点了烧录之后,再松开复位。其他先不说,先看最后的效果吧。
2023-08-27 22:31:34 506 10
原创 stm32单片机TIM1定时器中断与usart串口初始化冲突。
一直不知道原因,后来在一次偶然的排查中发现让我把定时器中断的时间调长一点(差不多1s),程序就可以运行。但是我是用串口调试pid,中断时间间隔不能很长,当我把中断时长调为25ms时,程序又卡在timer初始化里。这是我的中断服务函数。后来想了想才发现是进中断后,触发了串口发送,而我的串口初始化在后面,时间太短(25ms)根本执行不完串口初始化,才导致标志位一直为零,卡在循环里面。在我用串口调试pid参数时,程序下载之后发现一直卡在timer的初始化函数里面,我的一开始的初始化顺序如图。
2023-07-28 22:59:32 2097 2
原创 stm32在keil中使用串口进行下载时一直卡在Timer-Init函数里。
我的timer函数是完全正确的,已经调试过很多次。后来发现当我把中断服务函数TIM1-UP-IRQhandler写好后,问题就解决了。在我使用TIM1中断进行计时的时候,发现函数一直卡在timer的初始化函数里,后面的连最简单的点亮LED都执行不了。
2023-07-26 19:11:47 129 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人