Isi kandungan:

Membina Peranti Homie untuk IoT atau Automasi Rumah: 7 Langkah (dengan Gambar)
Membina Peranti Homie untuk IoT atau Automasi Rumah: 7 Langkah (dengan Gambar)

Video: Membina Peranti Homie untuk IoT atau Automasi Rumah: 7 Langkah (dengan Gambar)

Video: Membina Peranti Homie untuk IoT atau Automasi Rumah: 7 Langkah (dengan Gambar)
Video: Собака лежала в луже. История борзой собаки по имени Мелвин. 2024, November
Anonim
Membangunkan Peranti Homie untuk IoT atau Automasi Rumah
Membangunkan Peranti Homie untuk IoT atau Automasi Rumah

Instruksional ini adalah sebahagian daripada siri Automasi Rumah DIY saya, lihat artikel utama "Merancang Sistem Automasi Rumah DIY". Sekiranya anda belum tahu apa itu Homie, lihat homie-esp8266 + homie dari Marvin Roger.

Terdapat banyak banyak sensor. Saya membahas perkara yang sangat asas untuk memberi pembaca keperluan untuk mula membina "sesuatu". Itu mungkin bukan sains roket tetapi sebenarnya harus berjaya.

Sekiranya anda tidak mempunyai alat ganti, perhatikan "Sourcing Electronic Parts From Asia" saya yang akan datang.

Izinkan saya menambahkan beberapa perkataan buzz: IoT, ESP8266, Homie, DHT22, DS18B20, automasi rumah.

Topik harus cukup jelas sekarang:-)

Juga, arahan ini sekarang juga boleh didapati dari halaman peribadi saya:

Langkah 1: Bermula

Bermula
Bermula
Bermula
Bermula

Konvensyen

Instruksional ini menggunakan klon D1 Mini. Ini adalah pengawal yang serasi dengan Arduino yang menggunakan WiFi menggunakan cip ESP8266. Mereka dihantar dalam bentuk faktor yang sangat kecil (~ 34 * 25mm) dan kotoran murah (~ 3-4 $ untuk klon).

Saya akan menggambarkan setiap binaan menggunakan D1 Mini, papan roti dan beberapa sensor. Saya memasukkan Bil Bahan (BOM) untuk setiap item tetapi akan melangkau perkara yang jelas seperti wayar jumper dan papan roti (mini atau penuh). Saya akan fokus pada "bahagian aktif".

Untuk wayar / kabel dalam rajah (perpustakaan Fritzing + AdaFruitFritzing), saya menggunakan:

  • Merah / Jingga untuk kuasa, biasanya 3.3V. Kadang-kadang ia akan menjadi 5V, berhati-hati.
  • Hitam untuk tanah.
  • Kuning untuk isyarat data digital: Bit bergerak dan dapat dibaca sebagaimana mestinya dengan cip.
  • Biru / Ungu untuk isyarat data analog: Tidak ada bit di sini, hanya voltan biasa yang mesti diukur dan dikira untuk memahami apa yang berlaku.

Homie untuk ESP8266 menghantar belasan contoh, di situlah saya mula membina arahan ini.

Papan roti

D1 cukup mesra papan roti tetapi hanya akan menyimpan satu baris pin ke atas dan ke bawah. Setiap contoh akan mempunyai D1 di sebelah kanan dan komponen di sebelah kiri. Rel kuasa atas dan bawah akan digunakan untuk membawa sama ada 3.3V atau 5V.

Catatan

Contoh homie dibina sebagai lakaran ".ino" untuk Arduino IDE. Walau bagaimanapun, kod saya sendiri dibina sebagai ".ccp" untuk PlatformIO.

Ini akan membuat sedikit perbezaan kerana lakaran cukup mudah untuk disalin / ditampal apa sahaja alat pilihan anda.

Langkah 2: Suhu & Kelembapan: DHT22 / DHT11

Suhu & Kelembapan: DHT22 / DHT11
Suhu & Kelembapan: DHT22 / DHT11
Suhu & Kelembapan: DHT22 / DHT11
Suhu & Kelembapan: DHT22 / DHT11
Suhu & Kelembapan: DHT22 / DHT11
Suhu & Kelembapan: DHT22 / DHT11

Membina peranti

DHT22 menggunakan:

  • Satu pin digital untuk berkomunikasi dengan pengawal, sambungkan ke D3
  • Dua wayar untuk kuasa (3.3V atau 5V + GND)
  • Pin digital mesti dijaga tinggi (disambungkan ke kuasa), untuk ini kami menggunakan perintang antara power rail dan pin data

Kod

Projek PlatformIO boleh dimuat turun dari:

Contoh Homie yang asal ada di sini (tetapi tidak menggunakan sensor):

Untuk DHT22, gunakan perpustakaan sensor DHT (ID = 19)

BOM

  • Pengawal: Wemos D1 Mini
  • Perintang: 10KΩ
  • Sensor: (salah satunya)

    • DHT22: Saya telah menggunakan jenis 4 pin yang memerlukan perintang tambahan. Terdapat 3 pin modul penghantaran sebagai SMD yang merangkumi perintang.
    • DHT11: Ini lebih murah tetapi kurang tepat, periksa keperluan anda

Langkah 3: Suhu Kalis Air: DS18B20

Suhu kalis air: DS18B20
Suhu kalis air: DS18B20
Suhu Kalis Air: DS18B20
Suhu Kalis Air: DS18B20
Suhu Kalis Air: DS18B20
Suhu Kalis Air: DS18B20

Membina peranti DS18B20 menggunakan:

  • Satu pin digital untuk berkomunikasi dengan pengawal, sambungkan ke D3
  • Dua wayar untuk kuasa (3.3V atau 5V + GND)
  • Pin digital mesti dijaga tinggi (disambungkan ke kuasa), untuk ini kami menggunakan perintang antara power rail dan pin data

DS18B20 adalah sensor 1 wayar. Ia menggunakan bas dan pelbagai sensor boleh menggunakan satu pin data.

Anda juga mungkin TIDAK menggunakan 3.3V / 5V untuk menghidupkan sensor, ini disebut mod kuasa parasit. Lihat lembaran data untuk perincian.

Kod

Projek PlatformIO boleh dimuat turun dari:

Seperti DHT22, contoh Homie yang asli ada di sini (tetapi tidak menggunakan sensor):

Untuk bas 1-Wire, gunakan pakej OneWire (ID = 1)

Untuk DS18B20, gunakan DallasTemperature (ID = 54)

BOM

  • Pengawal: Wemos D1 Mini
  • Perintang: 4.7KΩ
  • Sensor: DS18B20, gambar adalah kalis air
  • Terminal skru 3 pin untuk memudahkan penyambungan kabel ke papan roti

Langkah 4: Cahaya: Photoresistor / Photocell (digital: Hidup / mati)

Cahaya: Photoresistor / Photocell (digital: Hidup / mati)
Cahaya: Photoresistor / Photocell (digital: Hidup / mati)
Cahaya: Photoresistor / Photocell (digital: Hidup / mati)
Cahaya: Photoresistor / Photocell (digital: Hidup / mati)
Cahaya: Photoresistor / Photocell (digital: Hidup / mati)
Cahaya: Photoresistor / Photocell (digital: Hidup / mati)

Membina peranti

(Maaf, tidak mempunyai komponen Fritzing untuk photocell digital)

Modul digital photocell menggunakan:

  • Satu pin digital untuk berkomunikasi dengan pengawal, sambungkan ke D3
  • Dua wayar untuk kuasa (3.3V + GND)

Ada kemungkinan menggunakan fotokel analog tetapi ini tidak didokumentasikan di sini, lihat artikel Adafruit yang sangat baik "Menggunakan Photocell".

Catatan: Dalam contoh ini terdapat potensiometer pada papan sensor. Ini digunakan untuk menetapkan batas antara cahaya ambien "terang" dan "gelap". Apabila membaca 1 lampu mati, maka membaca 0 bermaksud cahaya jika menyala.

Kod

Projek PlatformIO boleh dimuat turun dari:

BOM

Pengawal: Wemos D1 Mini

Sensor: Modul Pengesanan Fotosensitif / Cahaya

Langkah 5: Cahaya: Photoresistor / Photocell (analog)

Cahaya: Photoresistor / Photocell (analog)
Cahaya: Photoresistor / Photocell (analog)
Cahaya: Photoresistor / Photocell (analog)
Cahaya: Photoresistor / Photocell (analog)
Cahaya: Photoresistor / Photocell (analog)
Cahaya: Photoresistor / Photocell (analog)

Membina peranti

Sensor analog photocell bertindak sebagai perintang. Ia akan menghubungkan antara input analog dan 3.3V.

Perintang diletakkan di antara GND dan pin data untuk membuat pembahagi voltan. Tujuannya adalah untuk membuat julat nilai yang diketahui:

  • Sekiranya tidak ada cahaya, photocell pada dasarnya akan menyekat VCC, sehingga menghubungkan GND ke pin data anda: Pin akan membaca hampir 0.
  • Terdapat banyak cahaya terang, photocell akan membiarkan VCC mengalir ke pin data: Pin akan membaca voltan hampir penuh dan hampir ke maksimum (1023).

Catatan: Nilai pin analog dibaca dalam julat 0-1023 menggunakan analogRead. Ini tidak praktikal untuk menangani nilai 1 bait, kerana ini fungsi peta Arduino akan membantu mengurangkan dari 0-1023 menjadi (misalnya) 0-255.

Untuk penentukuran nilai min / maksimum untuk sensor anda, gunakan lakaran seperti ini dari Arduino.

Kod

Projek PlatformIO boleh dimuat turun dari:

BOM

  • Pengawal: Wemos D1 Mini
  • Sensor: Perintang Bergantung Cahaya (LDR) / Fotoresistor
  • Perintang: 1K atau 10K, perlu menentukur berdasarkan sel anda

Rujukan

  • Kod sumber pelayan PiDome untuk keadaan pencahayaan lokasi
  • Adafruit's "Menggunakan Photocell"
  • "Photoresistors" di sini di arahan
  • Beberapa "Photocell Tutorial" yang gila jika anda mahukan beberapa matematik dan grafik

Langkah 6: Pengesan Optik: QRD1114

Membina peranti

Kod

BOM

Rujukan

  • Pengkomputeran Fizikal: QRD1114 merangkumi contoh kod untuk membaca sensor dan menggunakan interrupt untuk rotary encoder + reka bentuk PCB yang tepat
  • Panduan Pengait Optik QRD1114 di Sparkfun

Langkah 7: Perkataan Akhir

Perkataan Akhir
Perkataan Akhir

Pengajaran ini sangat pendek untuk menjelaskan pemantauan asas.

Untuk melangkah lebih jauh, kita perlu menyambung geganti, pemancar IR … Mudah-mudahan ini akan diliputi kemudian kerana masa lapang membolehkan saya. Perbezaan utama ialah kita tidak hanya "membaca" (ada cahaya?) Tetapi juga "menulis" (nyalakan lampu!).

Disyorkan: