HS-S24A 디지털 온도 센서

HS-S24A 디지털 온도 센서

1、소개

18b20 디지털 온도 센서는 일반적으로 사용되는 디지털 온도 센서로, 수치 신호를 출력하며, 크기가 작고, 방해받지 않음이 강하고, 정확도가 높은 특징을 가지고 있습니다。디지털 온도 센서 연결이 쉽고, 포장된 후 케이블 트랙 온도 측정, 고炉 수위 주기 온도 측정, 보일러 온도 측정, 데이터 라우터 온도 측정, 농업 대棚 온도 측정, 정화실 온도 측정, 탄약고 온도 측정 등 다양한 비극한 온도 상황에 사용할 수 있습니다。내구성 있고 충격을 견딜 수 있으며, 작은 크기로 사용이 편리하며 다양한 포장 형식으로 제공되어 다양한 좁은 공간 장비 디지털 온도 측정 및 제어 영역에 적합합니다.

2、시뮬레이션 그래프

디지털 온도 센서-HS-S24A-L 시간도면点击查看

3、모듈 매개변수

핀 이름

설명

G

GND(전원 입력 부정极)

V

VCC(전원 입력 정극)

S

디지털 신호 핀

  • 전원전압: 3.3V / 5V

  • 연결 방식: 2.54mm 레이아웃 핀저

  • 설치방식: 더블스크루 고정

4、회로판 크기

5、아두이노 IDE 예제 프로그램

주의: 프로그램을 업로드할 때 라이브러리 파일 오류가 표시되면 먼저 라이브러리 파일을 가져오세요!
Arduino IDE 라이브러리 다운로드 및 导入 가이드:
点击查看

예제 프로그램(UNO 개발 보드):

#include <OneWire.h>
#include <DallasTemperature.h>

OneWire oneWire_13(13);
DallasTemperature sensors_13(&oneWire_13);
DeviceAddress insideThermometer;

float ds18b20_13_getTemp(int w) {
  sensors_13.requestTemperatures();
  if(w==0) {
    return sensors_13.getTempC(insideThermometer);
  }
  else {
    return sensors_13.getTempF(insideThermometer);
  }
}

void setup(){
  Serial.begin(9600);
  sensors_13.getAddress(insideThermometer, 0);
  sensors_13.setResolution(insideThermometer, 9);
}

void loop(){
  //DS18B20读取温度\nDS18B20连接在D6管脚,串口打印出温度值\n注:如果使用的DS18B20是散件,则需要在电源线和信号线之间并联一个5K左右的电阻
  Serial.println(String("温度:") + String(ds18b20_13_getTemp(0)) + String("℃"));
  Serial.println(String("温度:") + String(ds18b20_13_getTemp(1)) + String("℉"));
  Serial.println("");
  delay(1000);

}

6、ESP32 Python 예제(Mixly IDE /미스키에 적용됨)

개발 보드를 선택하세요 Python ESP32 【ESP32 Generic(4MB)】를 코드 모드로 전환하여 업로드하십시오

주의: 프로그램을 업로드할 때 라이브러리 파일 오류가 표시되면 먼저 라이브러리 파일을 가져오세요!
미시지(Mixly)IDE ESP32 라이브러리 다운로드 및 가져오기 가이드:
点击查看

예제 프로그램(ESP32-Python):

from machine import Pin
import time
class OneWire:
    def __init__(self, pin):
        self.pin = pin
        self.pin.init(Pin.OPEN_DRAIN, Pin.PULL_UP)
        self.pin.value(1)
    def reset(self):
        self.pin.value(0)
        time.sleep_us(480)
        self.pin.value(1)
        time.sleep_us(60)
        present = not self.pin.value()
        time.sleep_us(420)
        return present
    def writebit(self, value):
        self.pin.value(0)
        if value:
            time.sleep_us(10)
            self.pin.value(1)
            time.sleep_us(55)
        else:
            time.sleep_us(65)
            self.pin.value(1)
            time.sleep_us(5)
    def readbit(self):
        self.pin.value(0)
        time.sleep_us(2)
        self.pin.value(1)
        time.sleep_us(15)
        value = self.pin.value()
        time.sleep_us(45)
        return value
    def writebyte(self, value):
        for i in range(8):
            self.writebit((value >> i) & 1)
    def readbyte(self):
        value = 0
        for i in range(8):
            value |= self.readbit() << i
        return value
    def readinto(self, buf):
        for i in range(len(buf)):
            buf[i] = self.readbyte()
class DS18B20:
    def __init__(self, onewire):
        self.ow = onewire
        self.buf = bytearray(9)
    def convert_temp(self):
        self.ow.reset()
        self.ow.writebyte(0xCC)
        self.ow.writebyte(0x44)
        time.sleep_ms(750)
    def read_temp(self):
        self.ow.reset()
        self.ow.writebyte(0xCC)
        self.ow.writebyte(0xBE)
        self.ow.readinto(self.buf)
        temp = self.buf[0] | (self.buf[1] << 8)
        if temp & 0x8000:
            temp = -((temp ^ 0xffff) + 1)
        return temp / 16

def ds18b20_get_temp(w=0):
    sensor.convert_temp()
    t = sensor.read_temp()
    if w == 1:
        t = t * 9 / 5 + 32
    return t

ds_pin = Pin(12)
ow = OneWire(ds_pin)
sensor = DS18B20(ow)


while True:
    print(ds18b20_get_temp(1))

7、미스키 Mixly 예제 프로그램(그래픽 언어)

예제 프로그램(UNO 개발 보드):다운로드 클릭
주의: 프로그램을 업로드할 때 라이브러리 파일 오류가 표시되면 먼저 라이브러리 파일을 가져오세요!
미스키(Mixly)IDE Arduino 라이브러리 다운로드 및 가져오기 가이드:点击查看

예제 프로그램(ESP32 개발 보드):다운로드 클릭
주의: 프로그램을 업로드할 때 라이브러리 파일 오류가 표시되면 먼저 라이브러리 파일을 가져오세요!
미시지(Mixly)IDE ESP32 라이브러리 다운로드 및 가져오기 가이드:
点击查看

8、테스트 환경 구축

Arduino UNO 테스트 환경 구축

부품 준비:“

  • HELLO STEM UNO R3 PRO 개발보드 *1

  • USB type-c 데이터 케이블 *1

  • 디지털 온도 센서 (HS-S24A) *1

  • 1P 모터 모터 드뷰론 라인 *3개 또는 3P 모터 모터 드뷰론 라인 *1개

전기 연결도):

ESP32 테스트 환경 설정

부품 준비:“업데이트 대기 중...

전기 연결도): 업데이트 대기 중...

9、비디오 강의

비디오 강의:点击查看

10、테스트 결과

Arduino UNO 테스트 결과:

선을 연결한 장치 이후로, 위의 프로그램을 U+ 프로그램 카드에 기록한 후, 시리얼 모니터를 열고,波特률을 9600으로 설정하면 현재 환경 온도를 시리얼 모니터에 출력할 수 있습니다.