선형 액추에이터와 함께 근접 스위치 사용

근접 스위치

근접 스위치 또는 센서는 근처에 물체의 존재를 감지 할 수있는 비접촉 스위치입니다. 이 센서는 객체가 센서 앞에 위치하거나 물체를 제거 할 때 선형 액추에이터에 이동하거나 정지하도록 지시하는 데 사용될 수 있습니다. 또한 가장 가까운 물체가 그들에게 얼마나 멀리 떨어져 있는지 결정하는 데 사용될 수 있으며 선형 액추에이터를 제어하기 위해 피드백을 제공하는 데 사용될 수 있습니다. 일반적으로 T 함께 사용합니다 선형 액추에이터, 근접 센서는 터치리스 제어 및 객체 감지 피드백을 포함한 다양한 상황에서 사용할 수 있습니다.

근접 센서는 일반적으로 전자기장, 빛 또는 소리를 사용하여 물체의 존재를 감지합니다 [1]. 선형 액추에이터가 객체가 있는지 여부를 감지하는 방법은 근접 센서 유형에 따라 다릅니다. 근접 센서에는 4 가지 유형이 있습니다.

  • 유도 성: 자기장을 사용하여 철 물질을 감지합니다
  • 용량 성: 커패시턴스의 변화를 사용하여 물체를 감지합니다 
  • 광전자: 객체가 있는지 여부를 감지하기 위해 빛을 사용합니다.
  • 초음파: 사운드를 사용하여 물체가 있는지 감지합니다. 

유형의 선택은 응용 프로그램과 검출하려는 자료에 따라 다릅니다 [1]. 또한 탐지 범위, 응답 시간, 스위칭 주파수, 작동 온도 및 출력 신호를 포함하여 올바른 근접 센서를 선택할 때 고려해야 할 다른 사양도 있습니다. 올바른 근접 센서를 선택하려면 애플리케이션 요구, 센서 유형, 위 사양을 고려하고 추가 정보를 위해 센서의 데이터 시트를 참조해야합니다.

용량 성 근접 센서

근접 센서와 모션 감지기의 차이점은 무엇입니까?

근접 센서는 모션이 아닌 물체의 근접성을 감지하므로 모션 감지기가 아닙니다. 모션 감지기, 그들의 이름이 제안한 바와 같이, 대상이나 사람의 친밀감보다는 움직임을 의미합니다. 기능적으로, 근접 센서는 물체가 움직이는 지 여부에 관계없이 센서에 물체가 얼마나 가까이 있는지 알려줄 수 있습니다. 모션 감지기는 물체가 얼마나 가까운 지에 관계없이 움직임이있을 때만 트리거됩니다.

모션 탐지기

터치가없는 제어

터치가없는 컨트롤을 위해서는 간단한 푸시 버튼처럼 근접 센서를 사용합니다. 이렇게하려면 감지 범위가 짧은 근접 센서를 선택해야하므로 실수로 스위치를 트리거하지 않으며 손, 발 또는 감지하려는 모든 것을 감지하는 센서가 없습니다. 이를위한 좋은 옵션은 용량 성 근접 센서가 짧은 감지 범위를 가지고 있으며 광범위한 재료를 감지 할 수 있지만 초음파 및 일부 광전성 근접 센서는 더 짧은 감지 범위를 갖는 한 작동합니다 [1]. 근접 센서를 마이크로 컨트롤러에 연결해야합니다. Arduino센서의 출력을 읽습니다. 근접 센서를 마이크로 컨트롤러에 연결하는 방법은 센서 선택에 따라 다르지만 대부분의 경우 마이크로 컨트롤러는 디지털 변환 아날로그 값을 받거나 아날로그 신호를 디지털 값으로 변환해야합니다.

근접 센서는이 응용 프로그램에서 단일 푸시 버튼처럼 작동하므로 선형 액추에이터에 대한 제어 제어가 제한됩니다. 마이크로 컨트롤러를 사용하여 센서가 트리거 될 때 확장 및 철회 사이에 전환하고 선형 액추에이터의 내부 한계 스위치를 사용하여 완전히 확장 또는 후퇴 위치에 도달 할 때 액추에이터를 정지시켜 코드를 작성할 수 있습니다. 우리는 또한 내부 피드백 또는 외부 한계 스위치를 사용하여 완전히 확장되거나 철회되지 않고 다른 위치를 활용할 수 있지만 여전히 두 위치로 제한됩니다. 마이크로 컨트롤러의 펌웨어에서이를 수행하려면 근접 센서가 트리거 될 때마다 플래그 변수를 전환해야합니다. 아래 코드 샘플은 플래그 센서 플래그를 사용하여 Arduino IDE 코드의 기본 루프를 보여주기 위해 선형 액추에이터를 구동하십시오, 이것은 a 모터 드라이버.

이 플래그를 전환하려면 근접 센서의 값을 읽어야합니다. 센서가 언제 트리거 될지 알 수 없으므로 코드의 기본 루프에서 센서를 지속적으로 읽거나 내부 타이머 인터럽트를 사용하여 센서를 주기적으로 읽을 수 있습니다. 후자는 가장 모범 사례로 간주됩니다. 특히 마이크로 컨트롤러를 사용하여 병렬 작업을 미리 형식하려는 경우 센서가 항상 정확한 시간 동안 읽을 수 있도록합니다. Arduino를 사용하는 아래 코드 샘플은 매 초마다 트리거되는 내부 타이머 인터럽트를 설정하는 방법을 보여줍니다. Arduino의 경우 이것은 외부 인터럽트보다 조금 더 복잡하며 일부를해야 할 수도 있습니다. 추가 읽기 응용 프로그램에 대한 인터럽트를 설정하는 방법을 배웁니다.

위의 코드에서 Singal 함수는 TIMER 인터럽트의 인터럽트 서비스 루틴이며, 인터럽트가 트리거 될 때마다 실행되는 타이머 인터럽트의 인터럽트 서비스 루틴입니다. 매 초마다 근접 센서에서 값을 업데이트합니다. 센서에서 읽은 값이 임계 값보다 작 으면 센서를 "누른"고려하고 센서 플래그를 전환합니다. 센서를 테스트 하여이 임계 값을 미리 결정하고 "누른"것으로 간주하려는 출력 값을 결정해야합니다. 센서가 "누른"동안 센서 플래그의 토글링을 한 번만 제한하려면 센서 값이 더 이상 임계 값보다 작을 때까지 재설정되지 않는 다른 플래그가 있습니다.

장애물 감지

근접 센서는 또한 가장 가까운 객체가 얼마나 가까운지를 측정하는 데 사용될 수 있습니다. 이것은 액추에이터 앞의 장애물을 감지하고 컨트롤러로 다시 피드백을 보내기 위해 선형 액추에이터가있는 애플리케이션에서 특히 유용 할 수 있습니다. 근접 센서를 비슷한 방식으로 사용하려면 탐지 범위가 더 크고 다양한 유형의 재료를 감지 할 수있는 근접 센서를 선택해야합니다. 초음파 센서는 센서의 사각 지대에주의를 기울여야하지만 넓은 감지 필드를 가질 수 있으므로이를 선택합니다.

이 애플리케이션의 근접 센서 설정은 터치리스 컨트롤과 매우 유사합니다. 마이크로 컨트롤러를 사용하여 센서의 출력을 읽어야하며 내부 타이머 인터럽트를 사용하여 센서의 값을 주기적으로 읽으려고합니다. 그러나 센서는 이제 액추에이터 앞에 배치되어 앞에 장애물을 감지합니다. 센서의 출력은 센서 앞에서 가장 가까운 객체의 거리와 관련이 있으므로 최소 안전 거리를 기반으로 한 임계 값을 결정할 수 있습니다. 이 임계 값은 선택된 센서에 따라 다릅니다. 아래 코드 샘플에서 인터럽트 서비스 루틴 인 신호 기능은 1 밀리 초마다 미리 형성되며 센서의 출력을 측정하고 임계 값과 비교합니다. 측정 된 값이 임계 값보다 작 으면 플래그 센서 플래그가 1으로 설정되고 주 루프에서 선형 액추에이터를 정지시키는 데 사용됩니다. 측정 된 값은 임계 값보다 작지만 코드는 측정 값이 임계 값보다 크고 플래그가 0으로 재설정 될 때까지 액추에이터가 더 이상 확장 될 수 없습니다. 코드는 여전히 선형을 허용합니다. 액추에이터를 수축하는 것이 여전히 안전하므로 센서 플래그가 1으로 설정되는 동안 액추에이터를 철회합니다.

 참조

[1] Kinney, T. A. (2001, Sept) 근접 센서 비교 : 유도, 용량 성, 광전 및 초음파 검색 : : https://www.machinedesign.com/automation-iiot/sensors/article/21831577/proximity-sensors-compared-inductive-capacitive-photoelectric-and-ultrasonic

센서 이미지 : digikey.com  

Share This Article
Tags: