过零检测及单片机调压

发布者:美丽花朵最新更新时间:2017-11-29 来源: eefocus关键字:过零检测  单片机调压 手机看文章 扫描二维码
随时随地手机看文章

首先用PWM(脉宽调制)方法用于可控硅控制是有条件的,即调制频率不能大于市电频率(50Hz),也就是周期不能小于20mS,否则就不能达到调制作用,调制频率超过市电频率时,可控硅即处于连续导通状态而不能达到调压目的。只有调制频率低于市电频率才能起到调压目的,即限制市电的周波通过可控硅的数量而起到调压的目的。因此用该种方法调制的电压周波数一定是小于50HZ,超过了人眼视觉暂留效应,此就是用于调光产生闪烁的原因。该调压方法用在调功或对脉动电压不敏感的用途上尚可。如果采用可控硅调压用在调光上,须采用移相的调制方法,可使光连续可调。采用移相方法就需过零检测作为移相基点。过零检测其实并不难,如果要求调压比不是很高采用简单的方法即可奏效;用一只三极管即可。用单片机进行移相调压控制可以做得很精。

/********************************************************************************/
#i nclude      
__CONFIG (CPD&PROTECT&BOREN&MCLRDIS&PWRTEN&WDTEN&INTIO);
/********************************************************************************/
//
void      init         (void);
/********************************************************************************/
//
                     bit   fg_pw,fg_vs,fg_zq;
volatile    unsigned  char  fg_count;
volatile    unsigned  int   time1_temp,buff;
/********************************************************************************/
#define      powon          GPIO|=0B00110000
#define      powoff         GPIO&=0B00001111
#define      vpp            GPIO2
#define      feedback       GPIO0
/********************************************************************************/
       void      init         (void)
   {   CLRWDT();
       TRISIO=0B11001111;
    WPU=1;
    IOCB=4;               //使能过零信号中断
    VRCON=0;
    PIE1=1;
    OPTION=0;
    INTCON&=7;
    INTCON|=0B10001000;
    CMCON=7;
       T1CON&=1;
    T1CON|=0x10;
}
/*********************************************************************************/
       void      interrupt  isr_power   (void)
   {   GPIO=GPIO;
          if     (TMR1IF&&TMR1ON)
        { TMR1IF=0;
             if      (fg_pw)
            { if  (!fg_vs)
              {powon;fg_vs=1;TMR1L=112;TMR1H=0xfe;}  //触发宽度400US(256+144)
               else
              {fg_vs=0;
               powoff;       //关闭
               TMR1ON=0;
              }
            }
             else    {powoff;fg_count=0;}
        }
           if    (GPIF)
        {   GPIF=0;
            if (fg_pw)
            {fg_zq=1;
             TMR1H=(time1_temp>>8);
             TMR1L=(time1_temp&0xff);
             //if    (vpp==0)   TMR1H-=3;     //上下沿检测,下沿时间补偿(3*256)US
             TMR1ON=1;
            }
            else
          { if     (vpp)   {TMR1ON=1;TMR1L=TMR1H=0;}  //l-->h
             else
            {time1_temp=(TMR1H<<8|TMR1L);    //h-->l
             TMR1ON=0;
             TMR1L=TMR1H=0;
             time1_temp=~time1_temp;         //同步信号周期检测(时间)
             time1_temp+=1000;               //一个半周时间中缩短1MS开始触发
             buff=time1_temp;
             if   (++fg_count>=4)    fg_pw=1;//连续周期检测4次
            }
          }
        }
    }
/************************************************************************************/
        void        main         (void)
   {     unsigned int i;
         TMR0=0;
         init();
         while   (1)
      {    if     (fg_pw&&fg_zq)
          {  fg_zq=0;
             if     (feedback)  {if(time1_temp<0xffff-1000) time1_temp+=20;}//功率(电压)上限
             else
             {if  (time1_temp>buff)time1_temp-=20;}  //功率(电压)下限
            for  (i=1000;i!=0;i--) {;}
            init();
          }
      }
   }

关键字:过零检测  单片机调压 引用地址:过零检测及单片机调压

上一篇:PIC32编译器和谐说明
下一篇:PIC单片机学习精华心得

推荐阅读最新更新时间:2024-03-16 15:47

基于ATMAGE16单片机的直流电源屏硅链自动调压系统
目前,电力系统大量的综合自动化变电站的新建和改造,使得大量的直流电源屏在电力系统得以应用,为使系统配置合理,能更可靠、稳定的为变电站提高直流电源,确保变电设备的正常、可靠运行,其中为控制母线提供稳定直流电压的调压单元工作地位也极其重要。 调压单元:采用硅链降压的调压方式,合闸母线的调压容量按照合闸负荷的最大放电容量进行配置,控制母线的调压容量按照控制负荷的最大冲击电流进行配置。为了使系统简单、便于维护,通常采用合闸母线不使用调压单元而直接是蓄电池的端电压,同时要求硅链具有手动/自动调压转换功能,使硅链在自动调压功能出错时,转换到手动调压,也可保证硅链的正常工作,确保控制母线的可靠供电。 基于ATMAGE16单片机的直流电源屏
[单片机]
基于单片机80C196KC的静电除尘电源三相交流调压控制系统
   1.引言   静电除尘器有除尘效率高、运行和维修费用相对低廉等特点,在减少排放到大气中有害粉尘方面起着十分重要的作用,是当前使用较为广泛的一种环保设备。静电除尘器是利用高压静电吸附带电离子的原理进行除尘。一般来说,静电极板电压越高,对带电离子的吸附能力就越强,除尘效率越高。但电压越高,电场内会出现频繁的火花闪烁,甚至产生电弧,放电过程难以控制,除尘效率明显降低,这种情况应该避免。如果能够控制极板电压长时间维持在临界放电状态,就可以获得最佳的除尘效果并有效节约电力资源。实验证明,基于单片机80C196KC的 静电除尘 电源三相交流调压控制系统能够很好实现这一功能。    2.静电除尘电源主电路及交流调压结构   2.
[单片机]
基于<font color='red'>单片机</font>80C196KC的静电除尘电源三相交流<font color='red'>调压</font>控制系统
检测单片机调压
首先用PWM(脉宽调制)方法用于可控硅控制是有条件的,即调制频率不能大于市电频率(50Hz),也就是周期不能小于20mS,否则就不能达到调制作用,调制频率超过市电频率时,可控硅即处于连续导通状态而不能达到调压目的。只有调制频率低于市电频率才能起到调压目的,即限制市电的周波通过可控硅的数量而起到调压的目的。因此用该种方法调制的电压周波数一定是小于50HZ,超过了人眼视觉暂留效应,此就是用于调光产生闪烁的原因。该调压方法用在调功或对脉动电压不敏感的用途上尚可。如果采用可控硅调压用在调光上,须采用移相的调制方法,可使光连续可调。采用移相方法就需过零检测作为移相基点。过零检测其实并不难,如果要求调压比不是很高采用简单的方法即可奏效;用一只
[单片机]
热门资源推荐
热门放大器推荐
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved