Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Sensor Multi Suhu

Komponen dan persediaan

DS18B20
× 8
sekrup
× 1
Arduino Nano R3
× 1
pcb eksperimen
× 1
resistor 4.7k
× 1
2 terminal sekrup
× 1
SparkFun RS232 Shifter - SMD
× 1
Casing cetak 3D
× 1
kawat
× 1

Alat dan mesin yang diperlukan

Printer 3D (generik)
obeng

Aplikasi dan layanan online

Arduino IDE

Tentang proyek ini

Saya perlu membaca suhu pada beberapa posisi. Suhu harus diuraikan ke sistem domotika (Crestron/AMX). Solusinya seharusnya tidak terlalu mahal. Dengan cara ini saya memutuskan untuk menggunakan sensor DS18B20 karena ini tersedia secara luas dan cukup murah. Terakhir, ini adalah sistem bus.

Sensor terhubung ke Arduino Nano. Output Serial Arduino (ttl) diubah menjadi RS232 agar kompatibel dengan sistem domotika.

Agar semuanya terlihat bagus, saya mendesain kasing dan mencetaknya di printer 3D Zortrax M200 saya.

pertanyaan? Jangan ragu untuk bertanya!

Kode

  • MultiTempSensor v1.0.0
MultiTempSensor v1.0.0Arduino
Kode Arduino
/*Kode MultiTempSensor oleh WT040Kode sensor didasarkan pada contoh dari Rik Kretzinger dan beberapa cuplikan kode lainnyaSejarah:v0.1.1 27/11/2016v0.1.5 04/12/2016 versi pra-rilisv1.0.0 04 /12/2017 versi rilis*///Include#include #include //Constants#define SENSOR_PIN 12#define READ_TIMER 10000 //10 detik//OneWire oneWire(SENSOR_PIN);// Teruskan referensi oneWire kami ke Dallas Temperature.DallasTemperature sensor(&oneWire);//Sensor Adresses DeviceAddress Sensor1 ={ 0x28, 0xFF, 0x89, 0x0F, 0x61, 0x16, 0x03, 0x40 };DeviceAddress Sensor2 ={ 0x28, 0xFF, 0xE2, 0x0x , 0x61, 0x16, 0x03, 0x21 };DeviceAddress Sensor3 ={ 0x28, 0xFF, 0x38, 0xB3, 0x60, 0x16, 0x03, 0xEA };DeviceAddress Sensor4 ={ 0x28, 0xFF, 0xA4, 0xBE, 0x60, 0x16, 0x103 };DeviceAddress Sensor5 ={ 0x28, 0xFF, 0xFE, 0x13, 0x61, 0x16, 0x03, 0x56 };DeviceAddress Sensor6 ={ 0x28, 0xFF, 0x89, 0xBA, 0x60, 0x16, 0x03, 0xFB };DeviceAddressSensor 0xFF, 0xFA, 0xB C, 0x60, 0x16, 0x03, 0xD1 };DeviceAddress Sensor8 ={ 0x28, 0xFF, 0x57, 0xB1, 0x60, 0x16, 0x03, 0x93 };int numberOfSensors =8;//variabel untuk memeriksa jumlah sensor pada bus sekali dalam a whileint counterCheckBus =0;void setup(){ // mulai serial port untuk menampilkan hasil Serial.begin(9600); //display_Running_Sketch(); printNamaProgram(); Serial.print("Inisialisasi Versi Pustaka Kontrol Suhu "); Serial.println(VERSI DALLASTEMPLIB); Serial.print("Mencari "); Serial.print(jumlahSensor); Serial.println("sensor..."); // Inisialisasi sensor perpustakaan pengukuran suhu.begin(); // atur resolusi menjadi 10 bit (Bisa 9 hingga 12 bit .. lebih rendah lebih cepat) sensor.setResolution(Sensor1, 10); sensor.setResolution(Sensor2, 10); sensor.setResolution(Sensor3, 10); sensor.setResolution(Sensor4, 10); sensor.setResolution(Sensor5, 10); sensor.setResolution(Sensor6, 10); sensor.setResolution(Sensor7, 10); sensor.setResolution(Sensor8, 10); getSensorsOnBus(); Serial.println("Sistem diinisialisasi");}void loop(){ counterCheckBus++; tunda(READ_TIMER); Serial.println(); if (counterCheckBus ==360) { getSensorsOnBus(); counterCheckBus =0; } sensor.requestTemperatures(); Serial.print("Sensor 1 :"); printSuhu(Sensor1); Serial.println(); Serial.print("Sensor 2 :"); printSuhu(Sensor2); Serial.println(); Serial.print("Sensor 3 :"); printSuhu(Sensor3); Serial.println(); Serial.print("Sensor 4 :"); printSuhu(Sensor4); Serial.println(); Serial.print("Sensor 5:"); printSuhu(Sensor5); Serial.println(); Serial.print("Sensor 6:"); printTemperature(Sensor6); Serial.println(); Serial.print("Sensor 7 :"); printSuhu(Sensor7); Serial.println(); Serial.print("Sensor 8:"); printSuhu(Sensor8); Serial.println();}void printTemperature(DeviceAddress deviceAddress){ float tempC =sensor.getTempC(deviceAddress); if (tempC ==-127.00) { Serial.print("Sensor error!"); } else { Serial.print("C:"); Serial.print(tempC); }}void printProgramName() { Jalur string =__FILE__; int slash =path.lastIndexOf('\\'); String namaprogram =path.substring(garis miring + 1); int dot =namaprogram.lastIndexOf('.'); namaprogram =namaprogram.substring(0, titik); Serial.print("\nVersi program:"); Serial.println(programName);}void getSensorsOnBus() { Serial.print("Jumlah sensor yang ditemukan di bus:"); Serial.println(sensors.getDeviceCount());}

Suku cadang dan penutup khusus

Kasing yang dapat dicetak 3D - kasing yang dapat dicetak 3D bawah - kasing yang dapat dicetak atas3D - dudukan sub-d 9

Skema

skema dasar, tanpa modul RS232

Proses manufaktur

  1. Sensor Suhu DS18B20
  2. Pencatat Suhu Raspberry Pi
  3. Sensor Suhu Python dan Raspberry Pi
  4. Sensor Suhu dan Cahaya Raspberry Pi
  5. Sensor Suhu Raspberry Pi
  6. Rumah Kaca DasFilisera
  7. MotionSense
  8. Keselamatan Kebakaran Printer 3D
  9. CoroFence - Detektor Termal🖖
  10. Sensor suhu bantalan | detektor