산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

다중 온도 센서

구성품 및 소모품

DS18B20
× 8
나사
× 1
Arduino Nano R3
× 1
실험용 PCB
× 1
저항 4.7k
× 1
2 포트 나사 터미널
× 1
SparkFun RS232 시프터 - SMD
× 1
3D 인쇄 케이스
× 1
와이어
× 1

필요한 도구 및 기계

3D 프린터(일반)
스크루드라이버

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

여러 위치에서 온도를 읽어야 했습니다. 온도는 domotica 시스템(Crestron/AMX)으로 분석되어야 합니다. 솔루션 비용이 너무 많이 들지 않아야 합니다. 이 방법으로 DS18B20 센서를 사용하기로 결정했습니다. 널리 사용 가능하고 상당히 저렴하기 때문입니다. 마지막으로 중요한 것은 버스 시스템입니다.

센서는 Arduino Nano에 연결됩니다. Arduino(ttl)의 직렬 출력은 domotica 시스템과 호환되도록 RS232로 변환됩니다.

보기 좋게 만들기 위해 케이스를 디자인하고 Zortrax M200 3D 프린터로 인쇄했습니다.

질문? 그냥 마음 편하게 물어봐!

<섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

코드

<울>
  • MultiTempSensor v1.0.0
  • MultiTempSensor v1.0.0아두이노
    Arduino Code
    /*MultiTempSensor 코드 by WT040센서 코드는 Rik Kretzinger의 예제와 codeHistory:v0.1.1 27/11/2016v0.1.5 04/12/2016 시험판 버전v1.0.0 04의 일부 다른 스니펫을 기반으로 합니다. /2017년 12월 릴리스 버전*///Include's#include #include //Constants#define SENSOR_PIN 12#define READ_TIMER 10000 //10초//OneWire oneWire(SENSOR_PIN);// 우리의 oneWire 참조를 Dallas Temperature.DallasTemperature sensor(&oneWire);//Sensor Adresses DeviceAddress Sensor1 ={ 0x28, 0xFF, 0x89, 0x0F, 0x61, 0x16, 0x03, 0x40 };DeviceAddress Sensor2, 0xF0 에 전달합니다. , 0x61, 0x16, 0x03, 0x21 }; 장치 주소 센서 3 ={ 0x28, 0xFF, 0x38, 0xB3, 0x60, 0x16, 0x03, 0xEA }; 장치 주소 센서 4 ={ 0x28,0 {};DeviceAddress Sensor5 ={ 0x28, 0xFF, 0xFE, 0x13, 0x61, 0x16, 0x03, 0x56 };DeviceAddress Sensor6 ={ 0x28, 0xFF, 0x89, 0xBA, 0x36, =0xFB } 0xFF, 0xFA, 0xB C, 0x60, 0x16, 0x03, 0xD1 };DeviceAddress Sensor8 ={ 0x28, 0xFF, 0x57, 0xB1, 0x60, 0x16, 0x03, 0x93 };int amountOfSensors =8을 한 번 확인하는 버스의 센서 양;//변수 whileint counterCheckBus =0;void setup(){ // 결과를 표시하기 위해 직렬 포트를 시작합니다. Serial.begin(9600); //디스플레이_런닝_스케치(); 인쇄 프로그램 이름(); Serial.print("온도 제어 라이브러리 버전 초기화 중 "); Serial.println(DALLASTEMPLIBVERSION); Serial.print("검색 중 "); Serial.print(amountOfSensors); Serial.println("센서..."); // 온도 측정 라이브러리를 초기화합니다. sensor.begin(); // 해상도를 10비트로 설정합니다. (9~12비트일 수 있습니다.. 낮을수록 빠름) sensor.setResolution(Sensor1, 10); sensor.setResolution(센서2, 10); sensor.setResolution(센서3, 10); sensor.setResolution(센서4, 10); sensor.setResolution(센서5, 10); sensor.setResolution(센서6, 10); sensor.setResolution(센서7, 10); sensor.setResolution(센서8, 10); getSensorsOnBus(); Serial.println("시스템 초기화됨");}void 루프(){ counterCheckBus++; 지연(READ_TIMER); 직렬.println(); if (counterCheckBus ==360) { getSensorsOnBus(); 카운터체크버스 =0; } sensor.requestTemperatures(); Serial.print("센서 1:"); printTemperature(센서1); 직렬.println(); Serial.print("센서 2:"); printTemperature(센서2); 직렬.println(); Serial.print("센서 3:"); printTemperature(센서3); 직렬.println(); Serial.print("센서 4:"); printTemperature(센서4); 직렬.println(); Serial.print("센서 5:"); printTemperature(센서5); 직렬.println(); Serial.print("센서 6:"); printTemperature(센서6); 직렬.println(); Serial.print("센서 7:"); printTemperature(센서7); 직렬.println(); Serial.print("센서 8:"); printTemperature(센서8); Serial.println();} 무효 printTemperature(DeviceAddress deviceAddress){ float tempC =sensor.getTempC(deviceAddress); if (tempC ==-127.00) { Serial.print("센서 오류!"); } else { Serial.print("C:"); Serial.print(tempC); }} 무효 printProgramName() { 문자열 경로 =__FILE__; int 슬래시 =path.lastIndexOf('\\'); 문자열 프로그램 이름 =path.substring(슬래시 + 1); 정수 점 =programName.lastIndexOf('.'); programName =programName.substring(0, 점); Serial.print("\n프로그램 버전:"); Serial.println(programName);}void getSensorsOnBus() { Serial.print("버스에서 찾은 센서 수:"); Serial.println(sensors.getDeviceCount());}

    맞춤형 부품 및 인클로저

    3D 인쇄 가능 케이스 - bottom3D 인쇄 가능 케이스 - top3D 인쇄 가능 케이스 - sub-d 9 마운트

    회로도

    rs232 모듈이 없는 기본 회로도

    제조공정

    1. DS18B20 온도 센서
    2. 라즈베리 파이 온도 로거
    3. Python 및 Raspberry Pi 온도 센서
    4. Raspberry Pi 온도 및 광 센서
    5. 라즈베리 파이 온도 센서
    6. DasFilisera 그린 하우스
    7. 모션센스
    8. 3D 프린터 화재 안전
    9. CoroFence - 열 감지기🖖
    10. 베어링 온도 센서 | 탐지기