(贵州大学电气工程学院 贵州贵阳 550025)
摘要:采用了STM32单片机作为控制器,以可控硅为主电路控制元器件,多路分配式过零触发式的交流调功器。系统主要有过零检测电路、触发电路、精密整流电路、触摸液晶显示屏、AD转换电路、故障检测电路和主电路组成。系统主要实现的功能有:通过显示屏触摸设定各路调功通道功率输出百分比设定功率范围0%-100%,精确度为1%。通过蜂鸣器报警及准确定位故障线路。
关键词:可控硅;STM32单片机;过零检测;触摸屏;精密整流
Multiple-phase AC power regulator design
ZHANG Chenxi1,LI Zetao2
(School of Electrical Engineering,Guizhou University,Guiyang 550025)
Abstract:STM32 microcontroller used as a controller for the main circuit SCR control components,multi-channel distribution formula zero trigger type AC power regulator.System has the zero-crossing detection circuit,trigger circuit,precision rectifier circuit,LCD touch screen,AD converter circuit,fault detection circuit and the main circuit.System is mainly implemented features are:brightest setting by touching the display power adjustment channel power output percentage set power range of 0% to 100%,with an accuracy of 1%.By buzzer alarm and accurately locate the fault line.
Key words:SCR STM32 Microcontroller Zero-crossing detection Touch Screen Precision Rectifier
0 引言
多路三相调功器是以晶闸管为基础,以智能数字控制器为核心的电源功率控制电器,简称晶闸管调功器。多路三相调功器在工矿企业、邮电通信、国防科研、交通运输、医疗设备、建筑工程乃至家用电器等许多方面都得到了广泛的应用。经过多年的发展,多路三相调功器已经成为人们生活中普遍应用的元器件,但还有很多问题需要人们的解决。近几年出现的许多智能调功器,多采用单片机控制晶闸管的通断来达到调节功率的目的,实现了无电刷,无伺服电动机和无机械传动的自动调功。它们都是应用新器件、新原理同时结合传统技术向适用、高效、轻量、少污染的方向不断发展。
1 总设计方案
1.1 设计总框图
本设计主要由过零检测电路检测电路将交流同步电压过零点时刻以脉冲形式输出,作为单片机计数器开始计数的
时间基准。通过在液晶显示屏上输入所需要达到的功率,单片机通过设定的程序对触发电路控制来控制主电路的可控硅通断以到达调功目的。精密整流电路把交流电压信号转化为直流信号再通过滤波电路转化为平滑的直流信号通过A/D转换单片机通过采集的信号来诊断电路故障。
1.2分配式过零触发算法
在本系统中以一百个50HZ正弦波为一个周期,以一个周期为例,调功器想要输出功率由0%-100%内设定,且精度为1%的算法。想要输出功率为1%,那么一百个波形中,只通过第一个波,剩下的99个波全不导通。想要输出功率为3%,那么第1个、第33个、第67个波形导通其余全部不导通。以此类推这种导通方式称为“等分式导通”。即想要输出功率
为n%(0≤n≤50)。就把一百个正弦波平均分成n份,然后控制晶闸管在每份正弦波同一位置处的正弦波导通。当输出功率为50%-100%时恰好和输出功率为0%-49%的晶闸管通断相反这方式称为“等分式关段”。采用这种方式把电压平均分到负载上,这样来提高系统的精度和可靠性。工作时输出的电压波形如图1.2所示。
口电压为0V,产生高电平;当正弦波电压为负时,D2导通,比较器正极端口电压为-0.7V,负极端口电压为0V,产生低电平。过零检测电路的电路图如图2.1所示。
通过过零检测电路,把正弦电压变成了方波输出,均匀的产生了过零信号,保证了给STM32单片机提供过零信号,产生过零触发,其仿真结果如图2.2所示。
2.2 触发电路
本次设计中的触发电路是为了触发晶闸管,控制其稳定的通断,以保证功率调节的精度。触发电路的输出触发脉冲具有极高的对称性及稳定性,且不随环境温度变化,使用中不需要对脉冲对称度及限位进行调整。触发电路广泛应用于工业各领域的电压电流调节,适用于电阻性负载、电感性负载、变压器一次侧及各种整流装置等。MOC3021应用电路(即触发电路)如图2.3所示。
在该电路中,2号处连接单片机的输出端口。当触发脉冲为高电平时,MOC3021中的发光二极管发光,触发光敏硅双向开关导通,触发电路工作;当触发脉冲为低电平时,MOC3021中的发光二极管不发光,不能触发光敏硅双向开关导通,触发电路不工作。通过控制单片机所发触发脉冲的高低电平来控制功率的大小。
在这个电路中,“HOT”端切换并连接到负载的接地端,39Ω电阻器和0.01μF的电容被双向可控硅所抵制,470Ω电阻和0.05μF电容器被耦合器所抵制,这些组件可能有或者没有必要根据特别的负载所使用。
如图2.4 所示的精密整流电路可在单电源供电情况下运行,提供全波整流。精密全波整流器电路使用了两个运放,R3 和R4两个电阻器的电阻值均为R2的两倍,而与R1和R5相等。其电路工作原理如下:如果 VIN>0V,则 IC1A 的输出 VHALF 等于 VIN/2,而 IC1B 用作一个减法器,其输出电压 VOUT = VIN。实际上,这个电路是一个单位增益的跟随器。如果 VIN = 0V,则 VHALF = 0V,此时电路是一个单位增益反相器,输出 VOUT = - VIN。仿真所得结果如图2.5、图2.6和图2.7所示。
比较的电压值;显示每一相在与要求的电压值比较后,是否达到我们的要求,如果达到显示“1”,未能达到显示“0”。
2)设置功能。当摁下“OK”键时,程序进入设置中断中,屏幕上显示0~9十个数,通过触摸,选择要设置的具体数值,设置完成后,触摸屏幕的右下角,表示设置完成,程序跳出中断,进行触发。
2.5 STM32F103的介绍
在本次设计中,选用的单片机STM32F103实现的功能有一下几点。
1)通过过零检测电路传来的过零信号,控制触发电路。在STM32F103中编程,控制选择三相(24路)中的哪一路,并分别控制每一路所要达到的不同功率。
2)控制AD转换功能。在STM32F103中编程,来设置由AD转换将模拟量转换成数字量,同时进行比较,如果电压小于所规定电压则说明短路,控制蜂鸣器报警。
3)控制触摸液晶显示屏。在STM32F103中编程,设置触摸屏,在触摸屏上达到选择第几路,选择达到什么功率,选择AD转换中的规定电压等功能。
4)检测功能。在STM32F103中编程,设置时间中断,每隔100s跳入中断,分别检测24路是否有断开的情况。
通过单片机STM32F103,总体控制了多路三相调功器的各部分井条有序的进行工作。
用接近于传统C语言的语法来开发,与汇编相比,C语言易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在
关键的位置嵌入,使程序达到接近于汇编的工作效率。
Keil μVision4引入灵活的窗口管理系统,使开发人员能够使用多台监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。新的用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发应用程序。
3.3 A相触发中断
当在触摸液晶显示屏上设置好选择1~8路中的一路,触发A相,跳入中断服务程序中进入A相触发。按照设置的功率数决定触发了多少下。
3.4 B相触发中断
当在触摸液晶显示屏上设置好选择9~16路中的一路,触发B相,跳入中断服务程序中进入B相触发。按照设置的功率数决定触发了多少下。
3.5 C相触发中断
当在触摸液晶显示屏上设置好选择16~24路中的一路,触发C相,跳入中断服务程序中进入C相触发。按照设置的功率数决定触发了多少下。
3.6设置触摸屏中断
程序开始运行时,首先按触摸屏中显示的、在主程序中设置的数值进行触发。当按下OK键时,程序跳入触摸屏的中断服务程序中,首先显示设定值,然后在触摸屏上设定好某路的功率值,再就是A/D转换的比较电压,最后按屏幕的右下角,跳出中断服务程序,进入主程序。按照设定值再次进行触发。
3.7故障诊断
在每路的工作过程中,因为所控制的路数比较多,无法直观的得知每路工作情况,所以设计了故障诊断。
对电路的故障诊断是通过STM32单片机控制进行的,在单片机(STM32F103)中设置时间中断程序,每隔100s就对每一路分别进行一次触发,看是否有触发的脉冲出现,如果有触发的脉冲的出现则说明一切工作正常,如果没有触发脉冲出现,则说明这一路已经断开,应当立即停止工作检查电路,并对其进行修复。
3.8 A/D转换模块
将A、B、C三相精密整流电路输出的电压从模拟量转化成数字量,然后在触摸液晶显示屏上设置好相应的的数值,让两者相比较。如果达到要求,则在触摸液晶显示屏上A、B、C三相所显示的数字均为“1”,说明一切正常工作;如果没有达到要求,则在触摸液晶显示屏上A、B、C三相所显示的数字均为“0”,同时蜂鸣器报警,说明电路发生短路,应当立即停止工作,对故障进行处理。
3.9系统整体调试结果
如图3.2得到初始状态触摸显示结果。按下OK键得到图3.3显示结果。设置p=01,s=001,m=000,设置完成后,说明A、B、C三相均正常工作,如图3.4所示。设置p=01,s=020,即调功器输出功率为20%时的波形,如图3.5所示。设置p=01,s=086,即调功器输出功率为86%时的波形,如图3.6所示。
4 结果分析
4.1 设计中遇到的问题
在设计过程中主要遇到两大方面的问题。
1.(1)在STM32中编写触发信号的程序时,想出了很多种方案,其中最简单的一种是编写一种算法,把1%~100%的功率分成100份,需要多少功率就给多少上升沿触发,得到的就是百分之几的功率。但最终发现的问题是,这种算法在不是整除的情况下无法均匀触发,这导致了电路不能均匀的工作,严重的损害了电路元器件的工作寿命,甚至会因忽冷忽热而烧坏元器件。最终选择了列表,即把1%~100%的功率分成100份,列成100×100的数组,然后设定好每行哪一个需要上升沿触发,这样虽然工作量大大提高,但是能够准确均匀的进行触发,达到了我们预期的效果。
(2)在编写程序时,设计所需要的是一个短暂的上升沿脉冲,如果这个上升沿脉冲变的十分宽,那么容易造成在下一个上升沿脉冲来的时候被这个上升沿脉冲所涵盖,这样就会少触发一下,造成了输出功率的不准确。发现问题后,在程序中,设置了短暂的延时后变成未触发时的样子,这样大大降低了少触发和误触发的几率,提高了工作的准确性。
(3)在触发时,只有来了一个过零信号才触发一次,而不是来了一个过零信号就触发一百次。针对这个问题,把timer中断改成了外部中断,当来一个过零信号就跳入中断一次,触发一下,如果不来过零信号就不会触发。达到了预期的目的。
2.触摸屏的设置问题。程序写好后,当摁OK键时,无法跳入中断,在触摸屏上进行设置。开始以为是中断跳不进去,导致的无法进行设置,但在中断中加了蜂鸣器后发现蜂鸣器是响的,这说明是中断中的程序有错误。发现问题后,及时的进行了更正,达到了预期的效果。
4.2 功能分析
该调功器的很多功能都没有实现,下面分别进行分析:
(一)实现的功能:过零触发,精密整流,触摸屏,检测电路,A/D转换等等;
(二)未能实现的功能:利用比较器检测是否过流,没有考虑环保的因素,并没有做出整体实物等等。
5 结语
多路三相交流调功器的发展已经日渐成熟,移相触发方式的多路三相调功器会对电力系统产生谐波的干扰,而过零触发时在交流电压过零点时进行触发,负载得到的电压波形则是完整的正弦波,这样就大大避免了对电路系统产生谐波的干扰。
参考文献:
[1]刘军.例说STM32[M].北京:北京航空航天大学出版社,2011.
[2]意法半导体.STM32中文参考手册.第10版.意法半导体(中国)投资公司,2010.
[3]Joseph Yiu,宋岩(译).Cortex-M3微控制器原理与实践[M].北京航空航天大学出版社,2009.
[4]意法半导体.STM32固件库V3.5中文参考手册.意法半导体(中国)投资公司,2010.
[5]Montree Kumngern.Precision Full-Wave Rectifier Using Two DDCCs.2011,2,127-132.
论文作者:张晨曦,李泽滔
论文发表刊物:《电力设备》2017年第4期
论文发表时间:2017/5/16
标签:电路论文; 电压论文; 功率论文; 脉冲论文; 单片机论文; 程序论文; 触摸屏论文; 《电力设备》2017年第4期论文;