1 简介
功率可调加热装置在很多家用或工业设备上得到广泛应用,本文基于可控硅驱动电路的风加热装置为例详细讲解系统软硬件设计。
风加热装置通常由控制模块、加热模块、通风模块、温度感应模块及软件组成。控制模块是软件载体,又为其它模块提供驱动信号和供电接口。 图1是上海瑞志信息技术有限公司研发的多功能控制模块实物图。
图1 : 控制模块实物图
加热模块一般功率较大,通常需要交流220V市电供电。模块内部根据工作需求一般需要过温保护部件如热保险丝等。根据系统需求通常需要进行功率调节。晶闸管高电压大电流及可调功率特性,非常适合用于加热模块驱动电路。
加热模块如图2所示。
图2 : 加热模块实物图
通风模块一般是风扇,根据风量需求采用直流或交流电驱动。风扇的实物图如图3所示。
图3: 风扇实物图
温度感应模块主要是通过传感器测量风温,作为控制模块的反馈信号调节加热模块的功率,以保持风温稳定。常规的温度传感器采用热敏电阻器,不同的材质对应不同的电阻系数。温度传感器的实物图如图4所示。
图4: 温度传感器实物图
2 交流电及零点
我们知道,所谓交流电就是大小和方向都随着时间不断交变的电流。如下右图“T”表示。单位是秒(字母ms)、微妙(ns)。50Hz频率的交流电的电流一秒钟电流方向改变100次,电压则有100次零点。
图5 交流电波形图
3 晶闸管简介
晶闸管(Thyristor)是晶体闸流管的简称,又可称做可控硅整流器,以前被简称为可控硅;晶闸管是PNPN四层半导体结构,它有三个极:阳极,阴极和门极;晶闸管工作条件为:加正向电压且门极有触发电流;其派生器件有:快速晶闸管,双向晶闸管,逆导晶闸管,光控晶闸管等。它是一种大功率开关型半导体器件,能在高电压、大电流条件下工作,且其工作过程可以控制、被广泛应用于可控整流、交流调压、无触点电子开关、逆变及变频等电子电路中。以下为中功率管TMG8C80F的技术参数。
晶闸管的导通特性决定导通瞬间门极需要提供比较大的驱动电流,再因为需要在过零点后才能打开,故一般采用专门的光耦电路给晶闸管提供驱动。如MOC3062。
4 电路设计
4.1 风扇驱动电路,重点是驱动电压和续流二极管。
4.2 过零检测电路,重点是光耦的前后导通电流和限流电阻选择。
4.3 风机加热电路
4.4 温度检测电路,重点是根据传感器类型选择合适的分压电阻。
5 软件设计
过零检测接口初始化代码:
static void zpd_detection_interface_init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
EXTI_InitTypeDef EXTI_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO| ZPD_DET_RCC, ENABLE);
GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource7);
EXTI_InitStructure.EXTI_Line = EXTI_Line7;
EXTI_InitStructure.EXTI_Mode= EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
EXTI_InitStructure.EXTI_LineCmd = ENABLE;
EXTI_Init(&EXTI_InitStructure);
NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority= 0x0F;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x0F;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
GPIO_InitStructure.GPIO_Mode= GPIO_Mode_IN_FLOATING;
GPIO_InitStructure.GPIO_Pin= ZPD_DET_pin;
GPIO_Init(ZPD_DET_PORT,&GPIO_InitStructure);
}
过零中断程序
void EXTI9_5_IRQHandler(void)
{ EXTI->PR |= EXTI_PR_PR7;
controlable_silicon_task();
}
控制源代码如下:
void controlable_silicon_task(void)
{
staticuint8_t s_chZeroPointCount = 0;
const uint8_tc_chAirDutyThreshold[4] = {0,3,5,7}; // {1, 3, 5, 7};
if(tSystemInfo.bHeatAirStart) {
if(c_chAirDutyThreshold[tSystemInfo.chHeatAirLev]>= s_chZeroPointCount)
{
heat_air_timer_load();
v_hwHeatAirHoldTime = HEAT_HOLD_PERIOD;
}
else
{
heat_air_timer_clear();
}
} else {
heat_air_timer_clear();
}
s_chZeroPointCount ++;
if(31 < s_chZeroPointCount) {
s_chZeroPointCount = 0;
}
}
6总结
火线和零线在过零点后可控硅的门极为高电平则打开了可控硅,导通状态一直持续到下一个零点到来,中途无法改变;如果在过零点后门极为低电平则可控硅保持关闭状态,在下一个零点到来前如果门极电平变为高电平则可控硅被打开,直到零点到来。
80%输出功率实测控制信号如图所示。
局部放大图