작동 공급전류 : 1.5mA
최소 공급전압 : 3V
최대 공급전압 : 5.5V
최저 작동온도 : -55
최고 작동온도 : +125
정확도 : +/- 0.5
자세한 스펙 : https://datasheets.maximintegrated.com/en/ds/DS18B20.pdf
라즈베리파이에 DS18B20 온도센서가 장착된
위와 같은 형태의 모듈을 연결하기 위해서는
브레드보드, 와이어가 필요하다.
물론 DS18B20 센서만 구입하여 위 그림처럼,
빵판에 센서와 저항을 연결해도 된다.
저항은 5Kohm ~ 10Kohm 이 필요하다.
위 모듈에 세가지 핀이 보이는데,
| | |
GND VCC(+5V) GPIO#4
제일 왼쪽부터 접지,전압,데이터이다.
라즈베리파이에 온도센서를 장착했다면, 터미널에서 다음과 같이 입력하여 실행한다.
이렇게 하는건, 라즈베리파이와 단선통신(one wire communication)을 하기 위함이다.
sudo modprobe w1-gpio
sudo modprobe w1_therm
그 다음, 나노편집기 등을 이용해 boot/config.txt 를 열고 다음 명령을 추가해 저장한다.
sudo nano /boot/config.txt
dtoverlay = w1-gpio
config.txt 맨 아래 위 항목을 추가 해주고Ctrl-X 하여 파일을 저장한다.
더 자세한 사항을 알고 싶다면
여기를 참조 https://pinout.xyz/pinout/1_wire
그리고, 라즈베리파이를 재부팅 해준다.
sudo reboot
다시 쉘 터미널을 열어다음과 같은 명령어를 입력하여 실행한다.
ls -l /sys/bus/w1/devices/
그러면 다음과 같은 결과를 볼 수 있는데모자이크 해놓은 부분이 온도센서의 주소이다.
이제 온도센서의 주소를 알았으니,
다음 명령어를 입력하여 실행한다.
cat /sys/bus/w1/devices/온도센서주소/w1_slave
그러면 다음과 같이 결과가 나오는데모자이크 하지 않은 t=16875 가 온도이다.
16875는 섭씨 16.875 도 이다.
프로그램으로 만들면
,실시간으로 온도변화를 측정 할 수 있다.
끝. 쉽죠잉?
댓글 없음:
댓글 쓰기