HS-S24P numeraire 온도 센서

HS-S24P numeraire 온도 센서

1、소개

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

2、시뮬레이션 그래프

디지털 온도 센서-HS-S24P 시스템 도면点击查看

3、모듈 매개변수

핀 이름

설명

G

GND(전원 입력 부정极)

V

VCC(전원 입력 정극)

S

디지털 신호 핀

  • 전원전압: 3.3V / 5V

  • 연결방식: PH2.0 케이블접속

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

4、회로판 크기

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

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

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

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

OneWire oneWire_6(6);//18B20数字温度传感器接 Arduino 上的数字引脚6口
DallasTemperature sensors_6(&oneWire_6);//将 oneWire 引用传递给DallasTemperature库
DeviceAddress insideThermometer;

float ds18b20_6_getTemp(int w) {
  sensors_6.requestTemperatures();//发送命令以获取温度
  if(w==0) {
    return sensors_6.getTempC(insideThermometer);
  }
  else {
    return sensors_6.getTempF(insideThermometer);
  }
}

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

void loop(){
  
  Serial.println(String("温度:") + String(ds18b20_6_getTemp(0)) + String("℃"));//以摄氏度为单位打印温度
  Serial.println(String("温度:") + String(ds18b20_6_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 개발 보드 *1

  • HELLO STEM UNO R3 P 확장 보드 *1

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

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

  • PH2.0 3P 핀 공구 전도선 *1 또는 PH2.0 3P 양두개 핀 공구 전도선 *1

전기 연결도):

ESP32 테스트 환경 설정

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

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

9、비디오 강의

비디오 강의:点击查看

10、테스트 결과

Arduino UNO 테스트 결과:

선을 연결한 후에, 위의 프로그램을 개발보드에 기록한 후, 시리얼 모니터를 열고,波特레이트를 9600으로 설정하면 현재 환경 온도가 시리얼 모니터에 출력됩니다。

ESP32 테스트 결과:

업데이트 대기 중...