这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 单片机控制交流220V实现加热丝温度调节

共3条 1/1 1 跳转至

单片机控制交流220V实现加热丝温度调节

菜鸟
2020-12-30 13:10:32     打赏
单片机控制交流220V实现加热丝温度调节

在单片机实际控制中,有时候需要调节灯光亮度、PID调节,有时候需要控制220V交流电,使用相对较高电压,在工作时电流相对较小。

        根据P=UI可得

I=P/U

例如,在我之前需要做一个恒温箱,结果买了一个12V加热器,200w,电流I = 200/12 = 16.67A这么大的电流,对电源、电线都是一个不小的挑战。

Q = I^2 * R * T

        可知,发热量是电流的指数关系,减少电流就可以减少发热量

采用220V控制就可以很大的减小电流,I = P/U = 200/220 = 0.91 A升高电压就可以将电流降到原来的18倍 。那么就有了新的问题,这么解决PID控制方案呢?

对于3.3v单片机来说,220v就是一个高电压,一不小心就可能损坏单片机,应该采用光电隔离来保护单片机。

对于交流电的特性,应该采用双向光电耦合开关,我采用的是MOC3081,先看一下芯片推荐的电路原理图


image.png

3、5脚悬空,1、2脚为控制端,4、6脚为到通端


控制接线图如下


image.png


Rin选用330的限流电阻,在刚开始测试的时候,将1、2脚直接通5v电,直接将MOC损坏,建议在使用不熟悉的芯片时,注意阅读芯片手册。


由于要测试实际的控制能力,在五金商店购买灯泡一个,用于测试


image.png


在测试时发现,在单片机输出一个方波信号,灯泡的亮度忽明忽暗,但是可以初步看出灯泡是受控制的。


image.png


控制效果不是很理想,为了验证控制的波形,用脉冲发生器模拟220v波形


image.png


测得实际输出波形如下


image.png


由于在灯泡控制中,频率过高,导致波形凌乱,出现灯光不稳定闪烁。测试代码如下


#include <reg52.h>  //11.0592
sbit led=P1^0;  //定义一个引脚
sbit s1 = P3^0;
sbit s4 = P3^3;
bit jia,jian;
unsigned int count,count1;

//按键调节占空比
void key()
{
	if(s1==0)
	{
		delay(10);
		if(s1==0)
		{
			count1+=5;
		}
		while(!s1);
	}
	if(s4==0)
	{
		delay(10);
		if(s4==0)
		{
			count1-=5;
		}
		while(!s4);
	}
}

//主函数
void main()
{
	unsigned int flag;
	count=1130;
	count1=556;
	flag = count;

	while(1)
	{
		key();
		
		for(flag=count;flag>0;flag--)
		{
			if(flag>=count1)
			{
				led=0;
			}
			else 
			{
				led=1;
			}
		}
	}
}


编者能力有限,出现错误的地方烦请批评指正。





关键词: 单片机     控制     交流    

高工
2020-12-30 14:12:21     打赏
2楼

谢谢分享


工程师
2021-01-12 23:23:01     打赏
3楼

总结的不错哦


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]