找回密码
 立即注册
查看: 1176|回复: 9

如何实现软启动?

[复制链接]
  • 打卡等级:偶尔看看II
  • 打卡总天数:24
  • 最近打卡:2025-06-17 11:28:34

11

主题

33

回帖

327

积分

中级会员

积分
327
发表于 2023-5-31 13:50:00 | 显示全部楼层 |阅读模式
本帖最后由 MWX 于 2023-6-1 18:27 编辑

u16 KHZ;ZKB;

void PWMA_config(void);


void main(void)
        
{
        KHZ = 500;          //频率
        ZKB = KHZ/(1+1);   //占空比
           
}
上是对称PWM,(占空比ZKB上电时,频率KHZ的值减10(KHZ-10),慢慢减到ZKB值。就是慢启动。
梁工:请给指导写一下。



回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:523
  • 最近打卡:2025-06-17 09:55:53
已绑定手机

23

主题

593

回帖

2989

积分

金牌会员

积分
2989
发表于 2023-5-31 15:44:10 | 显示全部楼层
本帖最后由 wenhuixuan 于 2023-5-31 15:45 编辑

你这个所谓的慢启动,不就是电机的软启动吗?这个好办,你只要设置1个定时器(比如10ms),从最小值开始每计时1次就把占空比加(或减)1,一直加(或减)到需要的最终值即可实现软启动的效果了。

点评

没看懂你的慢启动是要怎么操作。 如果是用于功率控制,我们一般称之为“软启动”,即PWM从某个最小占空比开始,按一定的速度逐渐加大到设定值,这个过程,PWM周期通常是不变的。  详情 回复 发表于 2023-5-31 16:53
不停地学习
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:95
  • 最近打卡:2025-06-17 10:15:05

74

主题

6094

回帖

1万

积分

超级版主

积分
12735
发表于 2023-5-31 16:53:54 | 显示全部楼层
wenhuixuan 发表于 2023-5-31 15:44
你这个所谓的慢启动,不就是电机的软启动吗?这个好办,你只要设置1个定时器(比如10ms),从最小值开始每 ...

没看懂你的慢启动是要怎么操作。

如果是用于功率控制,我们一般称之为“软启动”,即PWM从某个最小占空比开始,按一定的速度逐渐加大到设定值,这个过程,PWM周期通常是不变的。
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:24
  • 最近打卡:2025-06-17 11:28:34

11

主题

33

回帖

327

积分

中级会员

积分
327
发表于 2023-6-1 18:12:14 | 显示全部楼层
本帖最后由 MWX 于 2023-6-1 18:27 编辑

对,是软启动。  
占空比最小到设定值。试了芯片的PWM特性,点空比=频率除2,
       PWMA_ARR    = KHZ;          //频率
        PWMA_DTR    = 10;                  // 死区
        PWMA_CCR1   = ZKB;                // 占空比=频率除2(50%对称)
       这三条任变频。省好多语句。

上面三条语句可修改频度范围也大,最稳定,网上的程序都麻烦。单要PWM输出几句就可以。不外调频率等功能简单多了。
要按键调频率,还要频率抖动,要有好多穿插。用中断可能就没有简单的路,STC也没有这方面例程。全国也没找出个正确的。


劳烦梁工,搞个例出来。

网上视频小儿科,不行的。

点评

看不明白你的描述,搞不懂你的要求,无法写啊。  详情 回复 发表于 2023-6-2 12:07
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:95
  • 最近打卡:2025-06-17 10:15:05

74

主题

6094

回帖

1万

积分

超级版主

积分
12735
发表于 2023-6-2 12:07:12 | 显示全部楼层
MW*** 发表于 2023-6-1 18:12
对,是软启动。  
占空比最小到设定值。试了芯片的PWM特性,点空比=频率除2,
       PWMA_ARR    = KHZ;   ...

看不明白你的描述,搞不懂你的要求,无法写啊。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看II
  • 打卡总天数:24
  • 最近打卡:2025-06-17 11:28:34

11

主题

33

回帖

327

积分

中级会员

积分
327
发表于 2023-6-2 15:04:09 | 显示全部楼层
本帖最后由 MWX 于 2023-6-2 15:06 编辑

早上还想单片机是一万条路,自己去创,不行开个窗能跑出去就行。
要啰嗦些话:如普通方波式就不用讨教了。芯片给了PWM功能,那就以PWM功能来设计,ARRH  ARRL  CCRH CCRL 是高底位写法,啰嗦写出对称互补也可以。使用PWM就是需要个可控制的方波信号,对称互补是指定要求。占空比(脉宽控制功率),(频率可调,点空比可调)为何要搞出那么多乱事?ARR和CCR不用拆分就OK了,按键控制改变ARR和CRR就可实现应市场大部分使用要求。
软启动是硬件PWM芯片都有的功能,需要片机也要有这功能,现在只能用程序实现软启动。我的设想上电3秒时间控制CRR的值 递增或递减到指定值。(按键调功率的也需变化CCR)这需要使用中断吧?使用PWM中断还是普通中断,还是混合全用?还是CCR必须拆分为H/L高低位?能否只变化CCR值,不扯其它?

PWMx_CCR1 =PWMx_ARR除2, PWMx_ARR的值就是周期频率的值,也不用算!输入值测出后加减就可以,PWMx_ARR()除2=50%占空比,实用的设定方法,

发贴要验证码,还是孩子思维。

点评

PWM是一个通用外设,需要复杂控制时,就要用到好多寄存器,你只是从你的简单应用的要求,而设计外设要考虑各种应用。 软启动,按一定时间间隔逐渐加大占空比至目标值即可。  详情 回复 发表于 2023-6-2 23:28
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:95
  • 最近打卡:2025-06-17 10:15:05

74

主题

6094

回帖

1万

积分

超级版主

积分
12735
发表于 2023-6-2 23:28:11 | 显示全部楼层
本帖最后由 梁工 于 2023-6-2 23:29 编辑
MW*** 发表于 2023-6-2 15:04
早上还想单片机是一万条路,自己去创,不行开个窗能跑出去就行。
要啰嗦些话:如普通方波式就不用讨教了。 ...

PWM是一个通用外设,需要复杂控制时,就要用到好多寄存器,你只是从你的简单应用出发提的要求,而厂家设计外设要考虑各种应用。
软启动,按一定时间间隔逐渐加大占空比至目标值即可。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:15
  • 最近打卡:2025-05-17 16:16:15
已绑定手机

0

主题

9

回帖

96

积分

注册会员

积分
96
发表于 2025-5-6 14:03:14 | 显示全部楼层
梁*** 发表于 2023-5-31 16:53
没看懂你的慢启动是要怎么操作。

如果是用于功率控制,我们一般称之为“软启动”,即PWM从某个最小占空 ...

梁工您好 请问如果想从1000占空比开始软启动到2000 是开一个10ms中断 每执行一次pwm+1吗

点评

差不多是这个意思,间隔多久,看你要求的启动时间,占空比从d1到d2经过N次递增,递增间隔时间为t,则总软启时间为N*t。 比如电机启动,占空比从0~1000,1ms递增1,则软启时间为1S。  详情 回复 发表于 2025-5-6 15:55
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:95
  • 最近打卡:2025-06-17 10:15:05

74

主题

6094

回帖

1万

积分

超级版主

积分
12735
发表于 2025-5-6 15:55:59 | 显示全部楼层
Ment*** 发表于 2025-5-6 14:03
梁工您好 请问如果想从1000占空比开始软启动到2000 是开一个10ms中断 每执行一次pwm+1吗 ...

差不多是这个意思,间隔多久,看你要求的启动时间,占空比从d1到d2经过N次递增,递增间隔时间为t,则总软启时间为N*t。
比如电机启动,占空比从0~1000,1ms递增1,则软启时间为1S。
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:15
  • 最近打卡:2025-05-17 16:16:15
已绑定手机

0

主题

9

回帖

96

积分

注册会员

积分
96
发表于 2025-5-9 15:11:58 | 显示全部楼层
梁*** 发表于 2025-5-6 15:55
差不多是这个意思,间隔多久,看你要求的启动时间,占空比从d1到d2经过N次递增,递增间隔时间为t,则总软 ...

谢谢
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-18 07:52 , Processed in 0.182134 second(s), 112 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表