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

Pemantau Tingkat Pembuangan

Komponen dan persediaan

Arduino Nano R3
× 1
Freescale MPXV5010DP
× 1
0.96" Layar OLED
× 1
MCP4725 DAC
× 1
Relai (umum)
× 1
Kapasitor 1uf, .01uf, 470pf semua SMD
× 1
Kotak proyek plastik bening 110mm*85mm
× 1
Tabung Tygon 3/32"
× 1

Tentang proyek ini

Monitor tingkat bah dibuat untuk bekerja dengan papan input Ecobee RSM-01 yang saya miliki di rumah putri saya atau proyek Monitor Rumah saya. Saya menambahkan relai untuk memungkinkannya berdiri sendiri. Saya menginginkan sesuatu yang saya rasa akan lebih andal dan lebih mudah dipasang daripada sensor ultrasonik. Untuk tujuan ini, saya mulai mencari sensor tekanan dan akhirnya menemukan Freescale MPXV5010DP. Ini memiliki output 0-5vdc untuk 0-10kPa, yang berarti sekitar 1020mm head air.

Karena saya ingin indikasi lokal, saya memilih modul OLED untuk digunakan dalam desain. Murah, cerah, dan yang satu ini memiliki layar dua warna. Untuk menyediakan antarmuka, saya menambahkan relai untuk output kontak kering. Saya menambahkan DAC (digital to analog converter) untuk output 0-5vdc dengan daya lebih besar dari sensor MPXV5010DP, ini juga akan melindungi sensor dari kemungkinan kerusakan kabel. Karena saya menggunakan komunikasi I2C, yang diperlukan hanyalah perubahan perangkat lunak untuk memasok data ke Arduino lain.

Saya merancang dan membuat papan khusus untuk kemudahan koneksi. Ini memberikan fleksibilitas yang cukup untuk konfigurasi yang berbeda.

Sensor dihubungkan oleh tabung tygon ke pipa tembaga yang disalurkan ke dalam bah. Hal ini memungkinkan untuk beberapa kebijaksanaan tentang di mana memasang monitor dan menjauhkannya dari air itu sendiri..

Kode

  • Pemantau Tingkat Summp
Pemantau Tingkat PenampungC/C++
Parsing sesuai kebutuhan, sampah ekstra dalam versi ini lanjutkan dan bersihkan sesuai keinginan.
#include #include  #include #include  #include #include #define OLED_RESET 4Adafruit_SSD1306 display(OLED_RESET);#if (SSD1306_LCDHEIGHT !=64)#error("Tinggi salah, perbaiki Adafruit_SSD1306.h!");#endifAdafruit_MCP4725;int relayPin =5; // untuk keluaran alarm relaiint analogPin =0; //mengukur tegangan keluaran dacint v1 =0; // Keluaran ADC dari MPXV5010int v2 =0; //skala untuk input dac mengkonversi dari input PS ke input dac v3 =0; //untuk konversi mm dari input PS v4 =0; //untuk persentase kedalaman dari input PS v5 =0; // keluaran dac yang dibaca oleh arduinoint v6 =0; //untuk konversi mV dari PS inputfloat v7 =0; //mengkonversi dari mm ke inciint v8 =0; // untuk menghilangkan desimal inci yang mengotori tampilan int offSet =40; //keluaran 0 kPa yang diukur dengan arduinoint maxSet =1015; //output 10 kPa yang diukur dengan arduinoint maxHeight =1020; // kedalaman bah dari ketinggian air normal hingga tutup dalam mmint mulai =(maxHeight * 0.8) + offSet;int alarmHeight =12; // ketinggian alarm dalam inci// Untuk sensor tekanan diferensial MPXV5010DPint analogPin2 =1; pembagi apung =25.4; //untuk mengonversi tampilan menjadi inchesvoid setup() { Serial.begin(9600); Serial.println("Uji DAC dengan sensor DP"); // secara default, kami akan menghasilkan tegangan tinggi dari saluran 3.3v secara internal! (rapi!) display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // inisialisasi dengan I2C addr 0x3D (untuk 128x64) // init done // Hapus buffer. tampilan.clearDisplay(); // Untuk MCP4725A0 alamatnya adalah 0x60 atau 0x61 dac.begin(0x60); pinMode(relayPin, OUTPUT); digitalWrite(relayPin, HIGH);}void loop() { v1 =analogRead(analogPin2); penundaan (1000); if (v1  alarmHeight) { display.invertDisplay(true); digitalWrite(relayPin,LOW);} else { display.invertDisplay(false); digitalWrite(relayPin,HIGH);} display.setTextSize(2); display.setTextColor(PUTIH); display.setCursor(0,0); display.println("TINGKAT SUMPAH"); //display.setTextColor(HITAM, PUTIH); // tampilan teks 'terbalik'.setTextSize(4); display.setTextColor(PUTIH); display.print(v8); display.setTextSize(2); display.println("inci"); tampilan.display(); penundaan (500); }void serial(){ //untuk debugging dan kalibrasi Serial.print(" Input analog PS:"); Serial.print(v1); Serial.print("Tinggi:"); Serial.print(v3); Serial.print("mm"); Serial.print(v4); Serial.print("%"); Serial.print("Tegangan yang dikonversi:"); Serial.print(v6); Serial.println(" mV");}//end

Skema

Digunakan Eagle 6.5.0 sump%20level.sch

Proses manufaktur

  1. C# Lingkup Variabel
  2. Pemantau Lingkungan dan Kualitas Udara DIY
  3. MATRIX VOICE GOOGLE ASSISTANT – MATRIX VOICE PROJECT
  4. Pemantau Cuaca
  5. Monitor Detak Jantung Jarak Jauh
  6. Rover
  7. GoPiGo v2 dengan Windows IoT
  8. Pemodelan Tingkat Gerbang
  9. Mesin JW
  10. Cara meratakan mesin bubut