STM32F1 做可控硅移相控制,疑问

2019-07-21 04:27发布

首先这个可控硅移相控制,我之前在51上做过,成功的,现在用的是STM32F103C8T6,利用外部中断做过零检测电路,在交流电的过零点时启动定时器,定时时间保证在10ms以内,比如定时6ms,然后触发MOC3041打开可控硅,稍延时几us,断开MOC3041触发信号,因为断开触发信号后,可控硅会依然保持在下一个零点信号之前一直导通中,现在我按照这个原理来干,触发导通3041后,延时的时间在1000us以内,灯泡都不亮,把延时时间加大至1500us,灯泡亮了,一直闪烁,明显不对,没有实现调压效果,问题出在哪呢?
这个延时时间应该只要几us,或者几十us就行了,太大了,就不对了。
外部过零检测电路,我在做过测试,没问题,用LED在中断里看到效果了。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
36条回答
lvb
1楼-- · 2019-07-23 00:19
 精彩回答 2  元偷偷看……
爱问知识人
2楼-- · 2019-07-23 02:21
lvb 发表于 2019-3-5 19:41
附上我做毕设时画的波形图吧,可能会清晰一[/img]点

你的毕业设计画的波形我很明白,今天用示波器测了下MOC3041的驱动波形,感觉没毛病,定时器产生的时间,我用LED翻转后用示波器测时间是1ms中断一次,也是对的,因为没有第二根线,所以没有同时捕获2个波形。
单独让UPWM=0,灯泡也亮,加大延时时间,灯泡也亮,也有调压的效果,灯泡亮度降低了,但是闪烁厉害,说明触发的时间不对,以上说明电路也应该没有问题,应该还是软件的问题吧

爱问知识人
3楼-- · 2019-07-23 06:36
lvb 发表于 2019-3-5 19:41
附上我做毕设时画的波形图吧,可能会清晰一[/img]点

由于我的过零电路是这样设计的,所以我程序上,设为上升沿触发外部中断,图片上的中断程序我还没有修改,反正我下降沿,双边沿都调试过,
lvb
4楼-- · 2019-07-23 10:08
爱问知识人 发表于 2019-3-5 20:39
由于我的过零电路是这样设计的,所以我程序上,设为上升沿触发外部中断,图片上的中断程序我还没有修改, ...

你的意思是延时低时灯可以正常调压不闪烁?只有延时调高才会闪烁?
爱问知识人
5楼-- · 2019-07-23 13:30
lvb 发表于 2019-3-5 21:01
你的意思是延时低时灯可以正常调压不闪烁?只有延时调高才会闪烁?

不是,就现在的定时中断程序,num==6  UPWM=0; 然后num==8; UPWM=1;这样灯泡是不会亮的,但是如果把num==8改成num==12或15,灯泡能奇迹般的被点亮,有闪烁感测灯泡电压分别是126V  ,136v, 但这样肯定是有问题的
lvb
6楼-- · 2019-07-23 15:14
 精彩回答 2  元偷偷看……

一周热门 更多>