소프트웨어 디바운스가 적절하지 않은 경우 스위치 및 릴레이에 대한 하드웨어 디바운스를 구현하는 방법
홈페이지홈페이지 > 소식 > 소프트웨어 디바운스가 적절하지 않은 경우 스위치 및 릴레이에 대한 하드웨어 디바운스를 구현하는 방법

소프트웨어 디바운스가 적절하지 않은 경우 스위치 및 릴레이에 대한 하드웨어 디바운스를 구현하는 방법

Jun 14, 2024

전기 및 전자 공학의 맥락에서 스위치는 전기 회로를 "만들거나" "파괴"하여 전류를 차단하거나 한 도체에서 다른 도체로 방향을 전환할 수 있는 구성 요소입니다. 엔지니어가 입증할 수 있듯이 토글 스위치, 로커 스위치, 푸시버튼 스위치, 마이크로 및 리미트 스위치, 자기 및 리드 스위치, 계전기를 비롯한 다양한 유형의 스위치가 있습니다. 모두 한 가지 공통점이 있습니다. 바로 바운스된다는 것입니다. 그것은 단지 그들이 하는 일입니다.

일반적으로 이 바운스는 회로에 거의 또는 전혀 영향을 미치지 않지만, 디지털 회로가 여러 바운스를 감지하고 이에 응답할 만큼 충분히 빠른 경우 심각한 결과가 발생할 수 있습니다. 엔지니어의 임무는 이 바운스의 영향을 피하거나 완화하는 것, 즉 스위치를 "디바운싱"하는 것입니다. 업계에서는 오랫동안 하드웨어 디바운스를 실천해 왔지만 최근에는 소프트웨어 기반 디바운스 접근 방식으로 전환했습니다. 그러나 하드웨어 디바운스가 더 나은 옵션인 상황이 있습니다.

이 문서에서는 바운스에 대해 설명하고 디바운스에 대한 소프트웨어 및 하드웨어 접근 방식에 대해 설명합니다. 그런 다음 구현 방법을 보여주기 전에 하드웨어 디바운스가 더 나은 옵션인 경우를 지적합니다. 스위칭 장치 및 하드웨어 디바운스 구성 요소의 예는 NKK Switches, ON Semiconductor, Texas Instruments, Maxim Integrated 및 LogiSwitch의 예를 통해 소개됩니다.

스위치 바운스란 무엇입니까?

스위치나 릴레이가 뒤집히거나 토글될 때, 장치의 상태가 바뀔 때마다 사람이 즉각적인 단일 응답으로 인식하는 것은 실제로 접촉이 최종적으로 발생하기 전에 수천분의 1초 동안 지속되는 100개 이상의 연결 또는 차단 동작을 포함할 수 있습니다. 자리를 잡습니다.

예를 들어 NKK의 M2011SS1W01과 같은 SPST(단극 단투) NO(상시 개방) 패널 실장 토글 스위치를 생각해 보세요. 입력으로 간주될 수 있는 이 스위치의 한 쪽은 접지(0V)에 연결되어 있고, 다른 쪽(이 경우 출력)은 5V 전원 공급 장치(+ve로 표시됨)에 연결되어 있다고 가정합니다. ) 풀업 저항기(R1)를 통해 연결됩니다(그림 1).

스위치가 활성화(닫힘)되거나 비활성화(열림)될 때 스위치 바운스가 발생할 수 있음을 관찰하십시오. 때때로 바운스는 공급 레일 사이에서 완전히 전환될 수 있습니다. 여기서는 논리 0과 1 상태로 간주됩니다. 이 경우 이는 "깨끗한" 바운스입니다. 이에 비해 신호가 중간 전압에만 도달하는 경우 이를 "더티" 바운스라고 합니다.

NKK의 M2012SS1W01-BC와 같은 단극 쌍투형(SPDT) 패널 실장 토글 스위치의 경우 상시 개방(NO) 단자와 상시 폐쇄(NC) 단자 모두에서 바운싱이 발생할 수 있습니다(그림 2). 이 경우 단순화를 위해 "깨끗한" 바운스만 표시되었습니다.

대부분의 경우 이 신호 바운스 기간은 아무런 효과가 없습니다. 다중 바운스를 감지하고 이에 응답할 수 있을 만큼 빠른 전자 장비에 스위치를 연결하면 문제가 발생합니다. 필요한 것은 스위치에서 나오는 신호가 스위치에 의해 작동되기 전에 디바운싱하는 방법입니다.전자 장비.

소프트웨어 대 하드웨어 디바운스

1960년대와 1970년대에는 SPST 스위치와 함께 사용되는 간단한 저항기-커패시터(RC) 지연 회로부터 보다 정교한 설정/재설정(SR) 래치 기능에 이르기까지 다양한 하드웨어 기술을 사용하여 스위치 디바운스가 구현되었습니다.

최근에는 많은 시스템에 마이크로프로세서 장치(MPU) 또는 마이크로컨트롤러 장치(MCU)가 탑재되어 있기 때문에 스위치에서 나오는 신호를 디바운싱하기 위해 소프트웨어 기술을 사용하는 것이 일반화되었습니다. 그러나 소프트웨어 디바운스가 항상 최선의 접근 방식은 아닙니다. 디바운스 루틴을 구현하는 데 사용할 수 있는 코드 공간 및/또는 클록 주기가 제한된 소형, 저성능, 메모리 제한 프로세서를 포함하는 일부 애플리케이션이 있습니다. 이러한 경우에는 하드웨어 구현이 더 나은 솔루션일 수 있습니다.

또한 많은 소프트웨어 개발자는 활성화마다 달라지는 것 외에도 스위치의 바운스 특성이 온도 및 습도와 같은 환경 조건에 의해 영향을 받을 수 있다는 사실과 같은 스위치의 물리적 특성에 익숙하지 않습니다.