Rumah pintar dari smartphone lama atau otomatisasi rumah antik

Halo para pembaca! Kisah lain tentang bagaimana manajer tautan tengah, meniup debu dari kelenjar basi di rak, melakukan hal ini, yang membuat para profesional dari semua garis memiliki rasa sakit di mata. Β‘Tapi, itu berhasil, amigo!



Saya akui, kali ini saya ingin melakukan semuanya dengan benar. Mengambil Raspbery Pi dari rak. Kue itu sama dengan yang sudah saya gunakan di mesin pemotong rumput robot saya: tautan ke pos dan tautan ke pos lain . Dia mengambil mosquitto, semuanya seharusnya bekerja pada mqtt, tetapi Anda tidak akan lari dari mana pun dari diri Anda sendiri. Di bawah luka, lautan garu, sepeda, solder yang buruk, neraka bagi seorang perfeksionis.

gambar

Semuanya dimulai dengan keinginan untuk melengkapi proyek Noorik saya, yang saya taruh di pintu gerbang saya. Singkatnya - ini adalah solusi DIY untuk blok GSM yang membuka gerbang.
Untuk membuka gerbang, cukup untuk menutup kontak tertentu di papan tulis.

gambar

Arduino diganti dengan esp8266 dan membuat antarmuka web dengan tombol terbuka. Ternyata menarik, tetapi kemudian saya ingin antarmuka tunggal untuk membuka pintu geser, pintu garasi sectional dan gerbang.

Ketika saya mulai melukis semua Daftar Keinginan saya, ternyata saya membutuhkan hal yang sama:

  1. sistem kontrol ketel
  2. sistem keamanan
  3. antarmuka seluler ke kamera pengintai
  4. data suhu di rumah dan di jalan

Backend


Malinka bekerja dengan baik, tetapi kali berikutnya dinyalakan, ia berhenti menyala. LED daya pertama menyala, kemudian mati dengan lancar dalam 3-5 detik, elemen (polyfuse T075) di dekat soket daya sangat panas. Dan di sini sudah tangan gatal untuk menerapkan mqtt, blackger, untuk mengundang pelacur dan kesenangan lainnya.



Tidak masalah, manfaat nasibnya sudah menunggu pasien lain. Pi oranye nol ke studio. Betapa saya tidak menderita dengan mukjizat pemikiran Cina ini - untuk menghembuskan nafas hidup menjadi kue kecil ternyata merupakan masalah di luar kekuatan saya. Saya mengunduh firmware di situs resmi dan kiri, saya membeli firmware dari tangan saya dan ditukar dengan cryptocurrency. Saya pikir saya baru saja menemukan sampel yang rusak.



Saya menyadari bahwa takdir itu sendiri yang mendorong saya ke lengan konstruksi sepeda, dan untuk menyembunyikan kegembiraan saya, saya terjun ke dalam kegiatan ini dengan kepala.



Pertama-tama, saya memutuskan untuk menggunakan ponsel pintar sebagai head unit (broker, server). Anda tahu hal-hal lama ini tidak hilang begitu saja. Saya menggunakannya, istri saya, anak perempuan, kemudian saya mengendalikan robot saya dengan peniup salju dari smartphone ini, saya mencoba untuk menenggelamkannya di sungai (saya tidak pernah mencapai Sungai Moskow, tetapi pipa ini membuat desiran di Pakhra asli saya). Dan inilah dia - kehidupan baru untuk Samsung Galaxy S3.

Menginstal Palapa Web Server dan server FTP pada smartphone. Idenya sederhana dalam database MySQL dengan hanya tiga tabel: nilai, log, aturan.

  • Dalam tabel nilai, pasangan kunci / nilai.
  • Tabel log menunjukkan riwayat perubahan nilai.
  • Di tabel aturan, aturan untuk mengubah beberapa sel tergantung pada nilai yang lain.

Semua tambak ini menyajikan satu skrip php, yang menulis atau mengeluarkan data dari database dengan permintaan http, dan juga melayani aturan terjadwal.
Saya bahkan tidak mengerti apa level pemrograman yang harus dilihat seseorang, tetapi saya siap menunjukkan kode tersebut kepada Anda - tulis ke LAN.

Frontend




Jangan melemparkan batu ke arahku, aku mengakui diriku. Saya menggunakan Bootstrap. Ya, berdosa.
Pikiran awal adalah untuk membungkus semuanya melalui Phonegap dan mendapatkan aplikasi lengkap. Saya akan mengatakan lebih banyak, saya melakukan hal itu, tetapi pada akhirnya versi online ternyata lebih efisien. Saya dan istri di telepon hanya membuat pintasan di desktop untuk membuka halaman yang diinginkan pada ip internal.

Setiap elemen merespons peristiwa klik + keadaan ajax diperiksa oleh permintaan ke server dan diubah jika perlu. Sangat nyaman, karena Anda melihat semua perubahan yang telah diberlakukan oleh aturan atau dibuat oleh pengguna lain.
Sebenarnya, kode on demand tanpa masalah.

ESP-8266




Saya mencoba berbagai modul dan ESP-8266 murni. Hasilnya, modul LOLIN V3 ternyata menjadi pilihan yang paling nyaman.



Catu daya menggunakan catu daya switching.



Modul gerbang memerlukan relay dan saya khawatir bahwa relay kontak akan terpicu. Hasilnya, kondisi solid dan kontak berfungsi. Masalahnya adalah bahwa sejumlah besar modul bahkan tanpa label tentang itu dipicu rendah.



Ketika modul dihidupkan, pembukaan jangka pendek terjadi, yang mengarah ke pembukaan tidak disengaja ketika daya dihidupkan. Itu diselesaikan dengan menarik ke nol dan menyatakan negara sebelum menyatakan jenis output.

digitalWrite(rele, 1); digitalWrite(rele2, 1); pinMode(rele, OUTPUT); pinMode(rele2, OUTPUT); 

Hasilnya, modul untuk bengkel garasi terlihat seperti ini. Sensor PIR untuk mendeteksi gerakan digigit lembut ke kulit asli.



Di ruang ketel, ketel saya sangat sederhana dan tidak ada pertanyaan tentang otomatisasi kompleks.



Selain itu, setiap rangkaian melayani pompa yang terpisah.



Serangkaian dengan mesin, relay untuk mengendalikan pompa dan boiler dihidupkan.



Dengan lembut mendorong seluruh perekonomian ke dalam perisai.



Firmware


Saya memutuskan untuk menggunakan IDE Arduino untuk firmware agar tidak mengacaukan nodemcu dan lua. Di Internet dan di GT khususnya, sejumlah besar informasi untuk pemula.
Dari yang menarik, menurut saya, fungsi koneksi ke wifi. Faktanya adalah di rumah saya ada 4 jaringan wifi dan dapat ditambahkan. Agar tidak menetapkan nama jaringan dengan kaku, pertama-tama kami memindai jaringan yang tersedia.

Kode SetupWiFi ()
 void setupWiFi() { WiFi.mode(WIFI_STA); WiFi.disconnect(); delay(100); while(WiFi.status() != WL_CONNECTED) { int n = WiFi.scanNetworks(); Serial.println("scan done"); if (n == 0) Serial.println("no networks found"); else { Serial.print(n); Serial.println(" networks found"); for (int i = 0; i < n; ++i) { Serial.println(""); Serial.print(i + 1); Serial.print(": "); Serial.print(WiFi.SSID(i)); Serial.print(" ("); Serial.print(WiFi.RSSI(i)); Serial.print(")"); Serial.println((WiFi.encryptionType(i) == ENC_TYPE_NONE)?" ":"*"); j=0; ssid=WiFi.SSID(i); Serial.print("Connecting"); ssid.toCharArray(charBuf, 50); WiFi.begin(charBuf,WIFI_PASS); while(WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); j++; if(j>20){ break; } } if((WiFi.status() == WL_CONNECTED)){ break; } } } } Serial.println("Connected"); Serial.println(WiFi.localIP()); } 


Ketika mode otomatis ruang ketel menyala, suhu luar dan suhu pendingin diperiksa sesuai jadwal.

  • Pada suhu di bawah 14 * C, lantai hangat lantai pertama dihidupkan.
  • Pada suhu di bawah 4 * C, semua sirkuit dinyalakan.

Suhu pendingin dipilih sesuai dengan tabel tergantung pada penampang pipa dan suhu luar. Ketika suhu ruangan yang dibutuhkan tercapai, boiler akan mati. Untuk semua menerapkan histeresis tertentu untuk memperlancar nilai transisi.

Sistem keamanan bekerja lebih mudah. Ada aturan dalam tabel bahwa ketika sistem keamanan aktif, jika pergerakan terdeteksi di salah satu sensor PIR, SMS dikirim melalui API dari salah satu layanan.

Paket


  • Pembuatan versi online pada server jarak jauh dan sinkronisasi perubahan untuk kemungkinan kendali jarak jauh.
  • Menampilkan data dari beacon GSM / GPS di dalam mobil;
  • Membuka gerbang ketika mobil kami muncul di area tertentu;
  • Koneksi ke sistem kendali jarak jauh;

Voting berdasarkan foto. Proyek mana yang harus dilakukan selanjutnya?


Selesaikan printer Delta 3D pada pin konstruksi


Stabilizer untuk kamera SLR


Terima kasih atas perhatian anda Denganmu adalah SlavaGik.

Source: https://habr.com/ru/post/id405557/


All Articles