跳到主要内容

如何减少开关弹跳

SMD元件

无论何时在电子系统中触发开关,在开和关状态之间并不总是平稳过渡。机械开关特别容易受到开关反弹的影响,当开关被翻转时,开关信号会表现出一些振荡行为。当开关改变触点并与开关组件中的另一极碰撞时,很容易看到这是如何由机械振动造成的。

在某些电路中,这是无害的,可能不会被注意到,直到你用示波器测量。在一些系统中,开关反弹会产生明显的问题,需要消除,例如当开关被用于触发另一个设备的关键信号时。另一个重要的例子涉及继电器的电力输送,其中开关反弹导致电流涌入,可能损坏系统中的电力设备。

无论您是否将开关反弹视为一个关键的性能参数,或者您只是觉得它很烦人,都可以使用一些简单的步骤来减少或消除它。所采用的方法取决于将在其中实现解决方案的系统类型。

开关弹跳可视化

开关弹跳(也称为触点弹跳)是由机械开关中的触点关闭造成的,当开关触点碰撞时产生振动。触点的振动会引起开关输出电的变化,并且传递的信号或功率的变化会出现在负载组件或设备上。

开关反弹很容易在示波器迹中看到,如下所示。在本例中,开关电路HIGH会导致触点反弹,在此期间输出功率试图稳定到HIGH输出值。在最初的反弹消失后,信号上升到HIGH输出,但它也表现出振铃。开关弹跳部分是波形的初始伪随机低压部分,而开关弹跳部分是波形的初始伪随机低压部分欠阻尼的响出现的原因是沿信号路径某处的LC共振。

开关反弹示波器

无论这是供电电路还是低电流信号电路,这里看到的开关反弹和随后的振铃可能是有问题的。然而,它可以通过一些简单的技术来消除,称为开关反弹。这里有三个简单的方法可以使用:

1:滑动或平行触点

一些开关不使用常见类型的碰撞触点,因此开关组件的动能可以产生较小的振动。例如,滑动触点开关可以产生更低的弹跳,因为触点相互摩擦。然而,这将磨损接触后反复切换,这些开关可能有较低的寿命。

其他开关有多个触点并联。当翻转时,只有一个触点需要做一个坚实的连接,以提供低开关反弹,即使其他触点振动。这是创建低跳率机电连接的一种简单方法,通常在低电流信号下运行。

2.增加一个低通RC电路

添加RC电路将创建一个低通滤波器,它将开关信号的振荡部分分流到地。换句话说,它减速和平滑OFF和ON状态之间的转换。转换时间由RC时间常数对于电路。在某些情况下,会有一个上拉电阻来设置电流限制。

RC电路开关

对于电力线来说,这可能需要使用更大的组件来确保可靠的电力输送。对于电源和信号,这也可能是一个问题,因为这些组件的添加可能会修改输入阻抗到负载组件。在添加RC电路之前一定要考虑这些问题,特别是如果相位和转换时间很重要的话。

3.在嵌入式固件中添加延迟

如果交换机连接的是微控制器上的GPIO,那么就有可能延迟处理接收到的信号,直到反弹消失。当开关最初关闭并且接收到的信号上升到逻辑HIGH的阈值以上时,时钟将导致缓冲I/O锁存。在具有快速时钟的微控制器的情况下,初始闩锁后的开关反弹可能导致I/O缓冲区改变状态,这将被GPIO读取为有意切换而不是无意的开关反弹。

这需要在开关导致I/O缓冲区锁存之后编程多个时钟周期延迟。例如,假设开关反弹持续大约1毫秒;如果时钟频率为100mhz,则需要将延迟设置为至少100,000个时钟周期。这使得GPIO能够容忍可能使输入高于或低于HIGH和LOW逻辑阈值的较大反弹。

总结

下表总结了电源和信号连接开关跳线去除的一些常见选项。

开关反弹

优势

缺点

滑动触点开关

  • 滑动开关之间不能相互碰撞而引起振动
  • 随着时间的推移,隐形眼镜会磨损得更厉害

平行触点开关

  • 反弹信号“分散”到多个触点上
  • 这些装置在物理上可能比类似的滑动开关或其他解决方案更大或更昂贵

并联电容器或RC电路

  • 基于RC时间常数设计所需的延迟很简单
  • 对于电源线来说,为了处理高电压/电流,这些组件可以相当大

软件开关跳脱

  • 添加到代码中很简单,只是延迟了一定数量的时钟周期
  • 仅适用于嵌入式系统,不适用于电源,除非PMIC包含一些延迟机制

上面没有提到的另一个选择很简单:买一个低弹跳开关。有一些更昂贵的开关比简单的开关产生更低的弹跳。例如,有弹簧触点开关,甚至液体(水银)触点开关,可以产生更低的弹跳。在实现开关反弹方法之前,要考虑所有选项。

当您准备放置开关和为PCB设计跳线电路时,请使用完整的CAD工具OrCAD节奏来制作电路板。只有Cadence提供了一套全面的电路,IC和PCB设计工具,适用于任何应用程序和任何复杂程度。OrCAD用户还可以将原理图捕获实用程序集成到PSpice软件获得业界最好的模拟能力。

订阅我们的通讯获取最新信息。如果您想了解更多Cadence如何为您提供解决方案,和我们的专家团队谈谈吧