제조공정
이 Raspberry Pi 광 센서 자습서에서는 광 저항 센서를 GPIO 핀에 올바르게 연결하는 방법을 보여줍니다. 마지막으로 간단한 python 스크립트에서 데이터를 수집하고 사용할 수 있는 방법을 보여 드리겠습니다.
이것은 내가 조명 작동 알람 시계와 같은 미래 프로젝트에 통합할 또 다른 센서입니다.
이 회로에서 사용할 각 부품에 대해 좀 더 자세히 설명하겠습니다. 이에 대한 추가 정보가 필요한 경우 해당 내용을 읽으십시오. 이 튜토리얼에서 저는 단순한 광전지 센서를 사용하고 있다는 점에 유의하는 것이 중요합니다. 그러나 일부 작업에는 완벽하지만 원하는 만큼 정확하지 않을 수 있습니다.
광센서 회로 및 코드 설정 방법을 차근차근 시각적으로 보고 싶으시다면 장비 목록 바로 아래 영상을 꼭 확인해주세요.
이 Raspberry Pi 광 센서 튜토리얼을 완료하려면 다음 장비가 필요합니다. 브레드보드 장비 없이도 이 작업을 수행할 수 있지만 많은 회로 작업을 수행할 계획이라면 일부 장비에 투자하는 것이 좋습니다.
라즈베리 파이
Raspberry Pi 2 또는 B+를 사용하는 경우 8GB SD 카드 또는 Micro SD 카드
이더넷 코드 또는 Wi-Fi 동글
광센서(LDR 센서)
1 1uF 커패시터
라즈베리 파이 케이스
USB 키보드
USB 마우스
GPIO 브레이크아웃 키트
브레드보드
브레드보드 와이어
비디오에는 이 튜토리얼의 텍스트 버전이 수행하는 거의 모든 것이 포함되어 있습니다. 시각적으로 완료되는 것을 보고 싶다면 완벽합니다. 또한 완료되면 회로가 어떻게 작동해야 하는지 알게 될 것입니다.
동영상 바로 아래에서 텍스트 지침 및 정보를 찾을 수 있습니다.
이 튜토리얼에서 만들려는 회로는 매우 간단하며 회로를 처음 시작하는 모든 사람에게 적합합니다.
LDR 센서라고도 알려진 광 의존 저항은 우리 회로에서 가장 중요한 장비입니다(분명히). 그것이 없으면 우리는 그것이 어두운지 밝은지 감지할 수 없을 것입니다. 밝은 곳에서는 이 센서의 저항이 수백 옴에 불과하지만 어두운 곳에서는 몇 메가옴의 저항을 가질 수 있습니다.
회로에 커패시터가 있으므로 LDR 센서의 저항을 측정할 수 있습니다. 커패시터는 기본적으로 전원을 공급받는 동안 충전된 다음 더 이상 전원을 받지 않으면 방전되는 배터리와 같은 역할을 합니다. 이것을 LDR과 직렬로 사용하면 LDR이 얼마나 많은 저항을 내는지 알 수 있으므로 밝거나 어둡습니다.
광 센서 회로를 올바르게 구축하려면 아래 단계를 따르거나 단계 바로 아래에 있는 회로도를 확인하십시오. 다음 단계에서는 핀의 물리적 번호(논리적 순서)를 참조합니다.
<올>이제 Python 코드로 이동할 준비가 되었습니다. 회로에 문제가 있는 경우 아래 다이어그램을 참조하세요.
이 프로젝트의 코드는 매우 간단하며 밝은지, 그늘진지 또는 완전히 어두운지 대략적으로 알려줍니다.
이 회로에서 우리가 직면한 가장 큰 문제는 Pi에 아날로그 핀이 없다는 사실입니다. 그것들은 모두 디지털이므로 입력에 대한 저항의 변화를 정확하게 측정할 수 없습니다. 아날로그 핀의 부족은 출력이 높거나 낮았기 때문에(디지털) 모션 센서 자습서에서 문제가 되지 않았습니다. 대신 커패시터가 충전되고 핀을 하이로 보내는 데 걸리는 시간을 측정합니다. 이 방법은 밝거나 어두움을 구분하는 쉽지만 부정확한 방법입니다.
Raspberry Pi 광 센서 코드와 그 역할에 대해 간략하게 설명하겠습니다. 코드를 원하시면 복사하여 아래에 붙여넣거나 내 GitHub에서 다운로드할 수 있습니다.
시작하려면 GPIO 핀과 통신할 수 있도록 필요한 GPIO 패키지를 가져옵니다. 또한 시간 패키지를 가져오기 때문에 필요할 때 스크립트를 잠자기 상태로 만들 수 있습니다.
#!/usr/local/bin/pythonimport RPi.GPIO를 GPIO 가져오기 시간으로
그런 다음 GPIO 모드를 GPIO.BOARD로 설정합니다. 이는 이 스크립트에서 사용하는 모든 번호가 핀의 물리적 번호를 참조한다는 것을 의미합니다. 입력/출력 핀이 하나만 있기 때문에 하나의 변수만 설정하면 됩니다. 이 변수를 입력/출력 핀으로 작동하는 핀 번호로 설정하십시오.
GPIO.setmode(GPIO.BOARD)# circuitpin_to_circuit =7로 가는 핀 정의
다음으로 rc_time이라는 함수가 있습니다. 회로에 대한 핀 번호인 하나의 매개변수가 필요합니다. 이 함수에서 count라는 변수를 초기화하고 핀이 하이가 되면 이 값을 반환합니다.
그런 다음 출력으로 작동하도록 핀을 설정한 다음 낮음으로 설정하고 스크립트를 10ms 동안 잠자기 상태로 만듭니다.
그런 다음 핀을 입력으로 설정하고 while 루프에 들어갑니다. 우리는 핀이 하이가 될 때까지 이 루프를 유지합니다. 이것은 커패시터가 약 3/4로 충전될 때입니다. 일단 높아지면 카운트 값을 메인 함수로 반환합니다. 이 값을 사용하여 LED를 켜고 끄거나, 다른 것을 활성화하거나, 데이터를 기록하고, 빛의 변화에 대한 통계를 유지할 수 있습니다.
def rc_time(pin_to_circuit):count =0 #GPIO.setup(pin_to_circuit, GPIO.OUT)에 대한 핀의 출력 GPIO.output(pin_to_circuit, GPIO.LOW) time.sleep(0.1) #변경 핀을 다시 입력 GPIO.setup(pin_to_circuit, GPIO.IN) #핀이 하이가 될 때까지 카운트(GPIO.input(pin_to_circuit) ==GPIO.LOW):count +=1 return count#스크립트가 중단될 때 캐치, 정리 righttry:# 메인 루프 while True:print rc_time(pin_to_circuit)except KeyboardInterrupt:passfinally:GPIO.cleanup()
이 단계는 매우 쉽지만 가능한 한 빠르고 원활하게 Pi에서 실행할 수 있도록 단계를 빠르게 진행하겠습니다. 이 웹사이트의 모든 튜토리얼과 마찬가지로 Raspbian을 설치하는 데 도움이 필요하면 Raspbian을 사용하고 있습니다. Raspbian 설치 가이드를 확인하세요.
경우에 따라 모든 소프트웨어 패키지가 이미 설치되어 있어야 하지만 그렇지 않을 수도 있습니다. GPIO 핀과 소프트웨어 업데이트 및 설치 방법에 대해 자세히 알아보려면 Raspberry Pi에서 GPIO 핀 설정에 대한 제 튜토리얼을 확인하세요.
git clone을 사용하여 코드를 다운로드할 수 있습니다. 다음 명령은 바로 이 작업을 수행합니다.
git clone https://github.com/pimylifeup/Light_Sensor/cd ./Light_Sensor
또는 파일이 python 스크립트인지 확인하기만 하면 코드를 복사하여 붙여넣을 수 있습니다.
sudo nano light_sensor.py
파일에서 작업을 마치면 ctrl x를 사용하기만 하면 됩니다. 그런 다음 y 저장하고 종료합니다.
마지막으로 다음 명령을 사용하여 코드를 실행합니다.
sudo 파이썬 light_sensor.py
이제 스크립트가 작동하고 센서의 빛 변화를 올바르게 반영하는 데이터를 수신하기를 바랍니다. 문제가 발생하면 주저하지 말고 아래에 의견을 남겨주세요.
회로에서 광 센서의 용도는 셀 수 없이 많습니다. 이 튜토리얼을 작성하는 동안 생각난 몇 가지만 말씀드리겠습니다.
이 멋진 작은 센서로 할 수 있는 일은 무궁무진하지만 광전지보다 조금 더 정확한 것이 필요하다면 Adafruit의 HDR(High Dynamic Range) 디지털 광 센서와 같은 것을 살펴보십시오.
아무 문제 없이 이 Raspberry Pi 광 센서를 설정할 수 있기를 바랍니다. 문제가 발생하거나 피드백이 있는 경우 제가 놓친 부분이나 하고 싶은 말이 있으면 아래에 의견을 남겨주세요.
출처:Raspberry Pi 광 센서:간단한 LDR 자습서
제조공정
구성품 및 소모품 Arduino Nano R3 × 1 브레드보드(일반) × 1 지문 센서 × 1 1.44 LCD ILI9361C × 1 앱 및 온라인 서비스 Arduino IDE 이 프로젝트 정보 친애하는 친구, 다른 튜토리얼에 오신 것을 환영합니다! 오늘 우리는 지문 센서 모듈을 사용하는 흥미로운 Arduino 프로젝트를 만들 것입니다. . 더 이상 지체하지 말고 시작하겠습니다! 저는 지문 센서
구성품 및 소모품 Arduino UNO × 1 KY-039 하트비트 센서 × 1 점퍼 와이어(일반) × 1 이 프로젝트 정보 Arduino용 37개 센서 세트 , 심장 박동 센서가 있습니다. 이름은 너무 많은 것을 약속합니다. 사람들은 이것이 I2C 또는 이와 유사한 것을 통해 디지털 숫자를 제공한다고 생각하는 경향이 있습니다. 숫자는 심장 박동수입니다. 센서가 제공하는 것은 0에서 1023 사이의 아날로그 값으로, 광 센서가 수신하는 적외선의 양 또는 실제