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

Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum

Komponen dan Perlengkapan

Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
Arduino UNO
×1
Sensor suhu presisi TS-NTC-103, 10 kΩ
×1
Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
LCD Standar Adafruit - 16x2 Putih pada Biru
×1
Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
Sumber Daya RobotGeek 12VDC 2.0A - US
×1
Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
Kapasitor 100 nF
×2
Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
Kapasitor 470 µF
×1
Resistor Metalfilm 10k toleransi 0,1%
×1
tombol push (normal off)
×1
Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
Potensiometer Rotary (generik)
×1
Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
Resistor 10k ohm
×1

Tentang Proyek Ini

Pendahuluan

Saya membuat termometer ini untuk kesenangan, tetapi juga untuk mendapatkan pengalaman dalam menulis perangkat lunak Arduino dan penggunaan layar LCD. Sambil mengerjakannya saya memutuskan untuk menambahkan beberapa fungsionalitas. Suhu maksimum yang diukur, suhu minimum, dan panah ke atas atau ke bawah di layar yang menunjukkan tren suhu. Tombol push digunakan untuk mengatur ulang suhu min dan max yang ditampilkan ke suhu saat ini.

Cara Membuatnya

Pembuatannya cukup sederhana. Hubungkan komponen seperti yang ditunjukkan dalam jadwal. Output 5V Arduino Uno harus dihubungkan ke semua koneksi +5V (panah.) Selain itu hubungkan semua pin ground. Termometer didayai oleh sumber daya eksternal 12 V DC yang terhubung ke Arduino. Unduh sketch dan unggah ke Arduino Anda dan selesai.

Yang Anda butuhkan:

  • Arduino Uno
  • Layar LCD 1602A
  • Sumber daya 12 V DC
  • B+B Thermo Technik TS-NTC-103 (10kΩ)
  • Resistor Metalfilm 10kΩ, toleransi 0,1%
  • potmeter 10kΩ linier
  • Resistor 820 Ω (toleransi tidak penting, 10%, 5% atau lebih baik akan dilakukan)
  • Resistor 10 kΩ (toleransi tidak penting)
  • Kapasitor 0,1 uF (=100nF) 16V (2 potong)
  • Elco 470 uF 16V
  • tombol push (normal off)
  • Kotak penutup jika Anda ingin membangun di dalamnya

Sensor, NTC presisi tinggi

NTC yang saya gunakan adalah sensor suhu presisi dari B+B Thermo Technik sebesar 10 kΩ. Sensor ini memiliki toleransi resistansi pada 25 °C ±0,5% Sensor suhu NTC seri TS-NTC memiliki rentang pengukuran luas -60 ... +150 °C, dan oleh karena itu, cocok untuk aplikasi tempat sebelumnya resistor platinum mahal digunakan. Baik resistansi dasar maupun nilai B berada dalam toleransi ±0,5%, sehingga komponen dapat digunakan dalam banyak aplikasi tanpa kalibrasi suhu dan dapat juga diganti tanpa pengaturan ulang. Oleh karena itu, dengan pengukuran resistansi sederhana, akurasi ±0,12 K pada 25 °C dapat dicoba dengan cara ini. Dalam rentang suhu -60 ...+85 °C, kesalahan maksimum sekitar ±0,5K. Anda dapat menggunakan NTC presisi tinggi lainnya, tetapi kemudian Anda harus mengubah koefisien Steinhart-Hart dalam sketch untuk sesuai dengan NTC tersebut (lihat pendekatan Steinhart-Hart.)

Jelas untuk pengukuran suhu presisi tinggi, resistor lain dari pembagi tegangan, berurutan dengan NTC, juga perlu berjenis toleransi rendah. Saya menggunakan resistor metalfilm 10kΩ, toleransi 0,1%, 0,6W, koefisien suhu 25 ppm. Resistor lain dengan toleransi 0,5% atau lebih rendah akan cukup.

Kabel NTC menangkap kebisingan

NTC ditempatkan di luar rumah. Dalam kasus saya dengan beberapa meter kabel. Untuk menghindari gangguan dari peralatan listrik lain yang 'berisik' di rumah saya menempatkan kapasitor pemisah 0,1 uF dari input suhu analog Arduino Uno (pin 14) ke ground. Osiloskop masih menunjukkan beberapa kebisingan pada pin 14 setelah itu. Kebisingan disebabkan oleh jam layar LCD 1602. Ini hilang setelah kapasitor pemisah 0,1 uF ditempatkan antara pin VDD dan Vss layar LCD. Kapasitor ini harus dihubungkan langsung pada papan PCB LCD dengan kabel sependek mungkin (1 cm paling banyak.)

Osiloskop menunjukkan sinyal pada pin 14 bersih setelah itu. Untuk menghindari kebisingan dan riak dari sumber daya switching saya menempatkan elco 470 uF antara 5V dan gnd Arduino

Penempatan NTC

Untuk menghindari pengukuran suhu yang salah NTC dan kotak penutupnya tidak boleh pernah terpapar matahari. Jadi harus ditempatkan di tempat bayangan, lebih baik di sisi utara rumah (di sisi selatan jika Anda berada di selatan bumi) atau bahkan jauh dari rumah. Tidak menempel ke dinding, tetapi paling tidak beberapa mil di luar dinding, karena dinding mungkin beberapa derajat lebih panas dari udara luar. Dan lebih baik dinding tanpa pemanas di belakangnya seperti dinding garasi.

Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum
Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum

Tentang perangkat lunak.

Perpustakaan LiquidCrystal disertakan untuk perintah LCD 1602. Beberapa konstanta dan variabel dideklarasikan. Silakan baca komentar dalam sketch untuk info lebih lanjut. A, B dan C adalah koefisien Steinhart-Hart untuk NTC yang saya gunakan. Untuk NTC lain Anda harus mengubah koefisien ini. Interval integer pada baris 17 menentukan waktu antara dua pengukuran berturut-turut, yaitu 3 detik. Untuk mendapatkan kemajuan yang halus dari pengukuran suhu rata-rata berjalan dihitung dari 30 pengukuran berturut-turut (numReadings pada baris 22). Oleh karena itu suhu yang ditampilkan selalu rata-rata suhu 90 detik terakhir. Untuk perhitungan rata-rata berjalan array digunakan: readings[numReadings] atau dalam kasus ini readings[30] pada baris 21. Setiap pembacaan adalah integer antara 0 dan 1023.

Pendekatan Steinhart-Hart

NTC (Negative Temperature Coefficient) adalah resistor dengan resistansi yang bergantung pada suhu. Resistansi menurun jika suhu naik. Sayangnya hubungan antara resistansi dan suhu tidak linier. Namun kurva R-T dapat didekati oleh rumus. Dalam praktik dua rumus pendekatan digunakan. Rumus Beta yang disebut dan rumus Steinhart-Hart. Karena yang terakhir memberikan pendekatan terbaik, itulah yang saya gunakan. Seringkali pabrikan memberikan nilai untuk kedua pendekatan. Namun TS-NTC-103 dapat digunakan dalam rentang suhu luas -60...+150 derajat Celsius. Karena kita menggunakannya dalam rentang yang lebih kecil sekitar -10...+30 derajat Celsius kita mendapatkan pendekatan yang lebih baik jika kita menghitung koefisien sendiri khusus untuk rentang ini. Saya menggunakan tiga pasang resistansi-suhu dari spesifikasi pabrikan dalam rentang kerja kita (-10, 0 dan +20 derajat Celsius). Sederhana untuk menghitung koefisien dengan kalkulator online Stanford Reasearch Systems. Dalam diagram di bawah Anda melihat data (titik merah) model pendekatan Beta dan pendekatan Steinhart-Hart. Di sudut kanan bawah Anda melihat bahwa dengan nilai resistor 10k, suhu yang didekati adalah 25,0035 derajat Celsius dengan pendekatan Steinhart-Hart, yang cukup baik, dan 25,7716 derajat Celsius dengan pendekatan Beta, yang jauh lebih baik tidak (NTC adalah 10k pada 25 derajat Celsius)

Termometer Outdoor Berbasis Arduino dengan Pembacaan Tren, Maksimum, dan Minimum

Link ke NTCcalculator

Kode

Arduino
Versi 1.4 memecahkan masalah konvensi dalam deklarasi fungsi PrintPG() yang menyebabkan kesalahan compiler di editor offline tapi tidak ada masalah di versi editor web 1.3 termasuk histeresis untuk panah tren

Skematik


Proses manufaktur

  1. Sistem Kontrol Akses Terintegrasi QR, RFID, dan Verifikasi Suhu
  2. Menghubungkan Beberapa Sensor DS18B20 1-Wire ke Raspberry Pi untuk Pemantauan Suhu yang Akurat
  3. Cara Membaca Suhu dengan DS18B20 pada Raspberry Pi 2
  4. Pengukuran Suhu Raspberry Pi dengan Sensor 1-Wire Maxim dan Jembatan I2C DS2482
  5. Membuat Sensor Suhu Jarak Jauh dengan Raspberry Pi dan Python – Panduan Langkah demi Langkah
  6. Pemantauan Suhu & Kelembaban Mulus di Raspberry Pi dengan EzTemp
  7. Pemantauan Suhu Akurat di Lemari Server dengan Raspberry Pi
  8. Kontrol Suhu Homebrew DIY: Pantau & Atur dengan Arduino
  9. Pemantauan Suhu Ruangan Berbasis Raspberry Pi dengan Grafik Gnuplot dan Peringatan Email
  10. Bangun Sistem Pemantauan Suhu & Cahaya Multi-Sensor dengan Raspberry Pi & DS18B20