Proteus仿真之继电器驱动电灯泡

发布者:码梦狂人最新更新时间:2021-12-09 来源: eefocus关键字:Proteus仿真  继电器驱动  电灯泡 手机看文章 扫描二维码
随时随地手机看文章

1.   继电器简述

继电器(如图1所示)是一种电控制器件,具有控制系统(输入回路)和被控制系统(输出回路)之间的互动关系,实际上就是用小电流控制大电流运作的一种“自动开关”,在电路中起着自动调节、安全保护、电路转换等作用。


当流入继电器的电流乘以继电器的标称电阻达到其标称电压时,继电器就在磁场作用下将原先悬置的开关拉到另一个开关处,即由“常开触点”到“常闭触点”。

图 1 Proteus中继电器形状


2.   Proteus硬件电路设计

Proteus中,继电器驱动电灯泡的电路如图2所示。这里,采用at89C51来提供微小电流,控制电灯泡的开关。

图 2 继电器控制电灯泡之硬件电路图


图2中,芯片AT89C51左边电路为其复位和晶振电路,同时将 引脚接高(51单片机在使用外部存储器时,此引脚接低,直接接地即可;否则接高)。除有特殊说明,默认接高即为+5V。图中所有的电流表和电压表在实际应用中皆可不接,只为测试用。


电路中,因为单片机输出口的电流很小,无法驱动继电器,所以在继电器输入端应该接一个PNP三极管,用来放大电流,驱动继电器工作。而为了保护此三极管的正常工作,还应在三极管的输出端(集电极)加上一个二极管用来保护三极管不被过流击穿,此二极管在实际应用中非常重要。继电器的电路设计如图3所示。

图 3 继电器的电路设计


3.   C51软件设计

本文只为了说明问题,所以软件部分没有任何复杂性与难度,只是将输出的对应脚置低,程序如下所示。


#include


sbit led1 = P2^4;


#define uchar unsigned char


#define uint unsigned int


void main()


{


         while(1)


         {


                   led1 = 0;


         }


}


 


4.   实验结果

运行之后,如图4所示,灯泡L1和L2将被点亮,但是两者的颜色却并不一样。这是因为,对于一定功率(额定电压和额定电阻)的灯泡,驱动灯泡发光的电流大小将直接决定其亮暗程度,这个很好理解。

图 4 实验结果


将右边部分放大(图5所示),可以看到,流过三极管Q1基极的电流为-0.44mA,流过Q1集电极的电流为9.82mA。因为Q1由发射极流进电流,一部分流向基极,另一部分流向集电极,所以按照图中接法,基极处电压为负。

图 5 放大后的示数值


由于Q1的放大倍数β=100,但是0.44×100=44,显然超过9.82。这是为什么呢?秘密在于继电器RL1中。打开RL1属性,我们可以发现RL1的标称电压为5V,标称电阻为500Ω,这就是说流进继电器的电流要达到(或接近[1])0.01A即10mA,才能驱动继电器工作。而电路中,Q1的导通电压约为0.3V,即集电极的电压约为4.7V,而此时有电阻500Ω,所以流出的电流为4.7/500=9.4mA≈9.82mA,而继电器在此工作电流下亦能正常工作。


这里,可以改变继电器的阻值来观察其效果。改变继电器的线圈阻值为100Ω,则流出Q1集电极的电流为47.6mA,近100倍放大基极电流,同时灯泡点亮。


但是,工作后,继电器两端为什么还会有0.91V的电压呢?这是一个很值得探讨的问题。仔细思考下,我们就可以知道,那是因为此时的继电器仍然存在一定的内阻,而且值为0.91/9.13≈0.1Ω。可是这个值在继电器中又是如何设置的?


继电器在proteus中是一个模型,其电气行为由一个叫MODFILE(LISA Model File)的文件定义的,而ACTVRLY就是继电器的MODFILE。RLY为relay,即继电器;ACTV为active,所有诸如继电器这样在仿真的时候能用动画来改变自身状态的模型都为ACTIVE模型,像发光二极管、数码管等。打开proteus安装目录MODELS,找到ACTIVE.LML的文件,将其后缀名改为.txt后,用写字板就可以打开。搜索relay,可以找到如下一段文字。


*PROPERTIES,5   


RCOIL=100


RCONTACT=0.1


ROFF=100M


VOFF=0.5*


VON=0.8*


 


*MODELDEFS,0   


 


*PARTLIST,6    


AVS1,AVS,"ABS(V(A,B))",PRIMITIVE=ANALOGUE


R1,RESISTOR,,PRIMITIVE=ANALOG


S1,VSWITCH,VSWITCH,PRIMITIVE=ANALOGUE,ROFF=,RON=,VH=(-)/2,VT=(+)/2


S2,VSWITCH,VSWITCH,PRIMITIVE=ANALOGUE,ROFF=,RON=,VH=(-)/2,VT=(+)/2


S3,VSWITCH,VSWITCH,PRIMITIVE=ANALOGUE,ROFF=1M,RON=1,VH=(-)/2,VT=(+)/2


VP1,RTVPROBE,ACTIVE_VPROBE,LOAD=1k,MAX=1.0,PRIMITIVE=ANALOG


 

RCOIL表示继电器左边的线圈电阻为100Ω;RCONTACT=0.1表示继电器右边的开关,即当它闭合的时候有0.1Ω的电阻,这就解释了上面的疑问。ROFF=100M表示继电器右边的开关在断开的时候有100MΩ的电阻。


VOFF=0.5*:VALUE表示的是继电器的电压,当新放置一个继电器时,看到的12V字样,就是这个。尖括号的意思是,这个数值在仿真运行的时候,取自你属性对话框里设定的数值。而VON即与此相反。这里,表示当施加的电压小于0.5*时,继电器释放;大于0.8*时,继电器合上。这也解释了上面提到的“接近”。


下面的语句有S1,S2和S3,表示此继电器由三个开关组成。关注语句中的ROFF=:左边的ROFF表示器件模型里的开关在断开时候的电阻,这个电阻是器件的组成分;右面的表示给ROFF一个多大的数值,此值来自属性表。如果属情表中没有赋值,ROFF就是系统默认的100M,否则使用属性表中的值。

关键字:Proteus仿真  继电器驱动  电灯泡 引用地址:Proteus仿真之继电器驱动电灯泡

上一篇:51单片机仿真——报警器与旋转灯
下一篇:单片机8x8LED点阵屏显示图案

推荐阅读最新更新时间:2024-11-13 10:49

PIC单片机的PWM波的简单调制+proteus仿真实现直流电机的启动
前言:该篇文章主要是给刚入门的新人看的,自己也是昨天通过PIC 16F877A调出的一的PWM波。关于什么是PWM波我就不在赘述,这个需要小伙伴自己去查资料了。 主要内容:在这里主要是讲利用PIC单片机自身集成的硬件模块去调PWM波,而不是通过I/O口的模拟。 需要的一些工具:MPLAB X IDE(编程软件) proteus(仿真软件) 芯片手册。 1.我们需要了解的下图的意思。 从图可以看出,在TMR2与CCPRxH比较时,是用来复位的,意思是在计数值等于CCPxH时复位,(用来确定脉冲的宽度)。 在TMR2与PR2比较时,是用来置位,意思是在计数等于PR2时置位,也是将TMR2计数寄存器清零,并且反转CC
[单片机]
PIC单片机的PWM波的简单调制+<font color='red'>proteus仿真</font>实现直流电机的启动
为什么还在使用继电器驱动汽车电机?
随着汽车电气系统中更小更智能的集成电路(IC)的出现,是时候开始正视房间里的“大象”了:为什么我们仍然使用继电器控制汽车天窗、窗玻璃升降装置、电动锁、后行李箱盖提升装置、记忆座椅、压缩机以及车上的各种泵?虽然,继电器价格亲民且易于设计,但是由于它们的使用寿命有限且体积较大,因此它们的功能对于现代电机应用来说稍显笨重。对于一个安静、小型而安全的解决方案而言,固态IC是汽车电机控制应用的最佳选择。 解决方案尺寸 让我们比较两种解决方案,如图1所示的是具有相同的电压和电流额定值的典型继电器解决方案及等效固态解决方案。   图1:继电器解决方案与固态解决方案 仅针对解决方案尺寸,固态8mm×8mm四方扁平无引线(QFN)和两个双封装N通
[嵌入式]
单片机定时器占空比按键调整Proteus仿真程序
仿真原理图如下 单片机源程序如下: #include reg52.h #define uchar unsigned char #define uint unsigned int uchar COUNT100,PWMCOUNT; /*LCD 端口定义*/ sbit RS=P3^7; sbit RW=P3^6; sbit E=P3^5; sbit PWM=P1^0; sbit K1=P3^0;//加1 sbit K2=P3^1;//减1 sfr LCDData=0x80;//0x80--P0,0X90--P1,0xa0--P2,0xb0--P3 /************液晶驱动程序**********
[单片机]
单片机定时器占空比按键调整<font color='red'>Proteus仿真</font>程序
单片机怎么驱动继电器
用ULN和三极管驱动比较理想,光耦效率不高。 ULN2003通常做驱动用。 如果用NPN三极管,那么继电器一端接电源,出来了接NPN的集电极,发射极接地,基极接控制信号。 注意:单片机的IO口驱动能力不够,加一片ULN2003来驱动继电器,一个ULN2003可以驱动7个继电器,ULN2803可以驱动8个。驱动电流最大为500mA。
[单片机]
单片机怎么<font color='red'>驱动</font><font color='red'>继电器</font>
单片机自行车测速系统+源程序+proteus仿真
自行车测速系统仿真原理图如下 单片机源程序如下: #include d:c51reg51.h #include d:c51intrins.h sbit LCM_RS=P3^0; sbit LCM_RW=P3^1; sbit LCM_EN=P3^7; #define BUSY 0x80 //常量定义 #define DATAPORT P1 #define uchar unsigned char #define uint unsigned int #define L 50 uchar str0 ,str1 ,count;
[单片机]
单片机自行车测速系统+源程序+<font color='red'>proteus仿真</font>
Proteus仿真STM32实现--DS18B20和LCD1602显示
proteus仿真stm32103r6,实现18B20温度值在1602上显示,可测量正负温度。程序及仿真工程已上传附件,利用proteus仿真18b20温度为0和-0.1时返回值均为零,新手上路,请多指教。使用proteus8.8版本进行仿真。 原理图 时序 原理图 单片机部分程序如下: #include stm32f10x.h #include bsp-lcd1602.h #include delay.h #include sys.h #include ds18b20.h #include stdio.h #include math.h short tem,tem1; u8 a,b,c,t
[单片机]
<font color='red'>Proteus仿真</font>STM32实现--DS18B20和LCD1602显示
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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