RC自动复位电路时间计算及其泄流二极管的选择

RC自动复位电路时间计算及其泄流二极管的选择

在单片机复位电路中,可利用电容两端电压不能突变的特点,设计相应的RC电路来实现对单片机的复位需求,一般有两种类型,

  1. 低电平有效复位电路

RC复位低有效
此复位电路是针对低电平有效复位而言的,其中二极管是起着在断电的情况下能够很快的将电容两端的电压释放掉,为下次上电复位准备。

假设电容两端的初始电压为U0(一般情况下设为0V),T时刻电容两端电压为UT。3.3V电压设为VCC。

由流经电容的电流I和电容两端的电压变化关系式:I=C*dUt/dt

可以得到:Idt=CdU t

两边分别积分可以的得到:IT=∫(0-1)CdUt;即IT=CUt−C*U0(其中U0=0V),

由VCC=UR+UT 可以得到公式:VCC=R1*(C*UT/T)+UT

假设对电容充电至0.9VCC时完成复位,此时可以得出T=9RC,T就是所需要的复位时间。

一般芯片的复位时间是给出的,R,C其中可以自己确定一个值,然后再求出另外一个值。

  1. 高电平有效复位电路

RC复位高有效
假设电容两端的初始电压为U0(一般情况下设为0V),T时刻电容两端电压为UT。

电容的充电电流为:

同理可以得到在T时刻的流经电阻的电流值为I=C1VCC/T 电阻两端的电压可定:UR=R1(C1*UT/T)

所以又:VCC=UR+UC1

在T时刻时电容充电为UT ,若UR≥0.9VCC时,高电平复位有效,则可以有UT=0.1VCC,

故可有:0.9VCC=R1*(C10.1VCC/T),故可以得到:T=(1/9)R1C1。

其中T就是所需的复位时间,原理图中的电阻电容确定一个值,便可以求出另一个值了。

在该RC电路的设计中,用到的二极管起到快速放电,为下次的复位做准备的作用,下面总结一下二极管的分类及其使用电路:

二极管,(英语:Diode),电子元件当中,一种具有两个电极的装置,只允许电流由单一方向流过,许多的使用是应用其整流的功能。而变容二极管(Varicap Diode)则用来当作电子式的可调电容器。大部分二极管所具备的电流方向性我们通常称之为“整流(Rectifying)”功能。二极管最普遍的功能就是只允许电流由单一方向通过(称为顺向偏压),反向时阻断 (称为逆向偏压)。因此,二极管可以想成电子版的逆止阀。

  1. 二极管的种类:

二极管种类有很多,按照所用的半导体材料,可分为锗二极管(Ge管)和硅二极管(Si管)。

根据其不同用途,可分为检波二极管、整流二极管、稳压二极管、开关二极管、隔离二极管、肖特基二极管、发光二极管、硅功率开关二极管、旋转二极管等。

按照管芯结构,又可分为点接触型二极管、面接触型二极管及平面型二极管。

  • 二极管的用途
  • 整流二极管结构主要是平面接触型,其特点是允许通过的电流比较大,反向击穿电压比较高,但PN结电容比较大,一般广泛应用于处理频率不高的电路中。例如整流电路、嵌位电路、保护电路等。整流二极管在使用中主要考虑的问题是最大整流电流和最高反向工作电压应大于实际工作中的值。
  • 快速二极管主要应用于高频整流电路、高频开关电源、高频阻容吸收电路、逆变电路等,其反向恢复时间可达10ns。快速二极管主要包括快恢复二极管和肖特基二极管。
  • 稳压管的最主要的用途是稳定电压。在要求精度不高、电流变化范围不大的情况下,可选与需要的稳压值最为接近的稳压管直接同负载并联。在稳压、稳流电源系统中一般作基准电源,也有在集成运放中作为直流电平平移。其存在的缺点是噪声系数较高,稳定性较差。
  • 快恢复二极管(简称FRD)是一种具有开关特性好、反向恢复时间短特点的半导体二极管,主要应用于开关电源、PWM脉宽调制器、变频器等电子电路中,作为高频整流二极管、续流二极管或阻尼二极管使用。目前快恢复二极管主要应用在逆变电源中作整流元件,高频电路中的限幅、嵌位等。
  • 肖特基(Schottky)二极管也称肖特基势垒二极管(简称SBD),是由金属与半导体接触形成的势垒层为基础制成的二极管,其主要特点是正向导通压降小(约0.45V),反向恢复时间短和开关损耗小,是一种低功耗、超高速半导体器件,广泛应用于开关电源、变频器、驱动器等电路,作高频、低压、大电流整流二极管、续流二极管、保护二极管使用,或在微波通信等电路中作整流二极管、小信号检波二极管使用。

总结

  • 所以在上述RC自动复位的电路中选择的泄流二极管一般大多采用开关二极管,该二极管一般还多用于三极管作为开关而其负载为感性或者容性时,考虑并联一个反向二极管用于泄流,避免关断三极管开关时,对负载造成损害。
  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
以下是一个简化的水库调度来水、泄流、弃水的 MATLAB 程序示例: ```matlab % 定义水库容量和初始水位 reservoirCapacity = 1000; % 水库容量(万立方米) initialWaterLevel = 500; % 初始水位(万立方米) % 定义来水和供水需求 inflow = [50, 80, 70, 90, 60]; % 来水量(万立方米) demand = [30, 40, 50, 20, 60]; % 供水需求(万立方米) % 定义泄流和弃水判断参数 spillThreshold = 800; % 泄流阈值(万立方米) spillageThreshold = 100; % 弃水阈值(万立方米) % 初始化泄流量和弃水量数组 outflow = zeros(1, length(inflow)); spillage = zeros(1, length(inflow)); % 计算每个时间段的泄流量和弃水量 for i = 1:length(inflow) % 计算剩余水量 remainingWater = initialWaterLevel + inflow(i) - demand(i); % 判断是否需要泄流 if remainingWater > reservoirCapacity outflow(i) = remainingWater - reservoirCapacity; initialWaterLevel = reservoirCapacity; else outflow(i) = 0; initialWaterLevel = remainingWater; end % 判断是否有弃水 if initialWaterLevel > spillThreshold spillage(i) = initialWaterLevel - spillThreshold; initialWaterLevel = spillThreshold; end % 判断是否有弃水超过阈值 if spillage(i) > spillageThreshold disp(['时间段', num2str(i), '的弃水量超过阈值']); end end % 输出每个时间段的泄流量和弃水量 for i = 1:length(outflow) disp(['时间段', num2str(i), '的泄流量:', num2str(outflow(i)), ' 万立方米']); disp(['时间段', num2str(i), '的弃水量:', num2str(spillage(i)), ' 万立方米']); end ``` 这个示例程序使用简化的模型,假设水库容量、初始水位、来水量、供水需求以及泄流和弃水的阈值都是已知的。程序通过迭代计算每个时间段的剩余水量,并根据剩余水量进行泄流和弃水判断,并输出结果。 请注意,这只是一个简化的示例程序,实际应用可能需要考虑更多因素,如水位变化规律、水库调度策略等。建议根据实际情况进行参数设置和逻辑调整,并使用专业的水利工程软件或咨询相关专家进行准确的水库调度计算。以上示例程序仅供参考。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值