欢迎来到天天文库
浏览记录
ID:13935217
大小:97.00 KB
页数:4页
时间:2018-07-25
《直流系统无触点闪光继电器设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、直流系统闪光继电器设计[摘要]:用单片机P89LPC901控制大功率场效应管通断,构成无触点闪光继电器。针对普通保险管无法有效保护场效应管,易过流烧坏的问题,加入了闪光输出过流保护功能。关键词:单片机直流系统闪光继电器0引言直流系统闪光继电器的主要作用是提供闪光电源,当开关事故跳闸发出事故音响后,值班人员可根据指示灯闪烁情况迅速判断跳闸回路,及时处理故障。电磁式闪光继电器存在的问题是闪烁频率和占空比不稳定,受外接指示灯的内阻影响较大。指示灯内阻大会出现闪光继电器不动作现象,指示灯内阻小可能会出现占空比过大,给人以指示灯常亮的错觉。典型的问题是普通指示灯更换为发光二极管指示灯
2、后,内阻变大,闪光继电器不动作,为解决这一问题设计了无触点闪光继电器,对电磁式闪光继电器进行更换。1硬件设计无触点闪光继电器由开关电源、单片机P89LPC901、大功率场效应管等电子元件组成,原理图如图1。P89LPC901是一款只有8个引脚的微控制器,适合于许多要求高集成度、低成本的场合,可以满足多方面的性能要求,内部集成了128字节RAM数据存储器、1KB的Flash程序存储器、7.373MHz振荡器、复位电路和电压比较器等系统级的功能,这样可大大减少元件的数目和电路板面积并降低系统的成本。单片机除了电源引脚,还用到了P0.4、P1.2、P3.0这3个引脚,其中P3.0
3、脚输出2Hz脉冲信号,通过光藕Q817驱动场效应管K1462。场效应管导通时信号母线+220V经场效应管和电流采样电阻R1输出到闪光母线,场效应管截至时闪光母线失电。此时有指示灯接入闪光母线就会以2Hz的频率闪烁,当闪光母线外接负荷过大或是碰到信号母线-220V,大的电流经过电阻R1,当R1上的电压超过1.23V时,会通过R2由单片机P0.4脚检测到并立即切断输出,起到过流保护功能。P1.2脚驱动发光二极管作为工作状态指示,正常时以2Hz的频率闪烁,过流时常亮。电路的电源采用常见的成品开关电源即可,都支持较大范围的交直流输入。因为普通开关电源的工作原理都是把交流电整流为直流
4、,再变为高频交流,整流后输出,所以直接输入直流220V也是能正常工作的。要求低压侧能提供和高压侧隔离的12V,0.1A的电源给电路工作,输出的电源地和闪光母线接到一起,方便检测输出电流,也为场效应管的驱动提供回路。12V电源经过三端稳压7133输出3.3V电压给单片机提供电源,12V电源是驱动场效应管用的,实际应用时电压范围在12V~15V之间电路都能正常工作。图1:无触点闪光继电器电路原理图单片机P89LPC901内部电压比较器示意图见图2,P0.4是正向输入端,通过设定CN1选Vref为反向输入端,Vref是单片机内部比较器参考电压,Vref=1.23(1±10%)V。
5、P0.4电压大于Vref时比较器输出1,否则输出0,使能比较器中断EC1,当比较器输出变化时产生中断,这就是保护动作的原理,保护动作10秒后打开输出,如果还是超电流保护再次动作,直到外部故障消失,实现了保护自动复归。电阻R1功率选5W,电阻为0.56Ω时过流保护值为1.23/0.56(A),约2.2A,正常使用时够用了,改变R1的阻值可改变过流定值。场效应管选K1462,其主要参数为:900V、8A、150W,装配时加个散热器。图2:单片机P89LPC901内部电压比较器2软件设计软件用KeilC51编写,主程序只是对端口、定时器和电压比较器初始化,定时中断子程序负责脉冲输
6、出和保护自动复归,比较器中断子程序负责实现保护功能,设置比较器中断优先级最高,使得过流保护动作时间小于10µs。具体源程序如下:#include//单片机头文件bitPRO=0;//保护状态:0-正常,1-动作unsignedchardataNum1;//计数1,用于指示灯闪烁unsignedintdataNum2;//计数2,用于保护延时自动复归sbitLED=P1^2;//指示灯sbitFLA=P3^0;//脉冲输出//初始化端口子程序voidIO_init(void){P0M1=0x30;//P0输入P0M2=0x00;P1M1=0x24;//P1
7、.2开漏P1M2=0x04;P3M1=0x00;//P3准双向P3M2=0x00;}//初始化定时器子程序voidTIMER_init(void){TMOD=0x11;//定时器0配置为模式1TAMOD=0x00;TH0=0x6F;//10ms,根据波特率和单片机计算出TL0=0xFE;ET0=1;//允许定时器0中断TR0=1;//打开定时器0}//初始化比较器子程序voidCMP_init(void){unsignedintdatai;//延时计数用PT0AD=0x30;CMP1=0x28;//使能比较器for
此文档下载收益归作者所有