Isi kandungan:

Mini-Serre: 11 Langkah
Mini-Serre: 11 Langkah

Video: Mini-Serre: 11 Langkah

Video: Mini-Serre: 11 Langkah
Video: Mini Greenhouse Timelapse - Harvest Village 2024, Julai
Anonim
Mini-Serre
Mini-Serre
Mini-Serre
Mini-Serre

Sebagai pelajar, saya mempunyai tabiat buruk untuk melupakan perkara. Oleh kerana itu, jika saya ingin menanam jenis tanaman tertentu, saya biasanya melupakannya dan ia mati kerana tidak ada yang menjaganya.

Saya akan cuba menyelesaikan masalah ini dengan Mini-Serre. Mini-Serre adalah sistem pemantauan berkebun automatik yang mengirimkan data pelbagai jenis sensor yang dipasang ke pelayan web yang berjalan di Raspberry Pi. Dengan cara ini pengguna dapat memantau tanaman mereka di laman web di mana sahaja mereka berada. Konsep ini dikembangkan sebagai projek akhir dalam tahun pertama teknologi multimedia dan komunikasi, di Howest Kortrijk, Belgium.

Langkah 1: Bahan

Bahan-bahannya
Bahan-bahannya

Untuk membina projek ini, anda memerlukan item berikut:

Elektronik

  1. Raspberry pi 3 - kit
  2. Papan roti
  3. Penyambung lelaki-ke-lelaki
  4. Penyambung lelaki-ke-wanita
  5. Dallas 18B20 (sensor suhu)
  6. Sensor Cahaya Fotosensitif Pengesanan Photoresistor
  7. MCP3008
  8. Potensiometer
  9. Paparan LCD
  10. Perintang
  11. LED Biru
  12. LED RGB

Sarung:

13. Central Park kweekkas (https://www.brico.be/nl/tuin-buitenleven/moestuin/…) 14. Plat kayu (bahagian bawah casing) 15. Paku 16. Skru

Alat:

17. Tukul 18. Gergaji 19. Pemutar skru 20. gerudi

Langkah 2: Membuat Litar

Membuat Litar
Membuat Litar
Membuat Litar
Membuat Litar

Pada langkah 2 kita akan membuat litar untuk projek ini. Ini adalah minimum mutlak yang anda perlukan jika anda mahu ia berfungsi. Gunakan jadual fritzing dan rajah untuk membuat salinan litar. Di sinilah anda memerlukan semua bahan elektrik dari langkah 1.

Maklumat mengenai litar:

Kami mempunyai 2 sensor yang dihubungkan ke MCP3008 yang merupakan sensor cahaya dan sensor kelembapan tanah. Sensor suhu mempunyai output digital dan menggunakan pin GPIO pada Raspberry Pi.

Tambahan:

Saya juga mengimplementasikan paparan LCD yang akan memudahkan anda menyambung ke Raspberry Pi di kemudian hari tanpa perlu menyambung ke komputer riba anda. Ini tidak perlu tetapi sangat disarankan.

Langkah 3: Buat Pangkalan Data

Buat Pangkalan Data
Buat Pangkalan Data

Adalah sangat penting untuk menyimpan data anda dari sensor dengan cara yang teratur tetapi juga selamat. Inilah sebabnya mengapa saya memutuskan untuk menyimpan data saya dalam pangkalan data. Hanya dengan cara ini saya dapat mengakses pangkalan data ini (dengan akaun peribadi) dan memastikannya tetap tersusun. Pada gambar di atas, anda dapat mencari skema saya dari pangkalan data saya dan di bawah fail untuk mengeksport pangkalan data ke program pangkalan data, misalnya MySQL.

Pangkalan data-program Penting bahawa pangkalan data kami dapat berfungsi sendiri dari Raspberry Pi kami. Anda boleh melakukannya dengan memuat turun MySQL atau MariaDB untuk Raspberry Pi. Mula-mula anda ingin membuat pangkalan data pada komputer anda di MySQL Workbench. Seterusnya anda mengeksport pangkalan data ini sebagai fail mandiri. Sekarang sambungkan ke pangkalan data Raspberry Pi anda melalui MySQL Workbench dan pulihkan pangkalan data di sini. Kini anda mempunyai pangkalan data yang berjalan di Raspberry Pi anda!

Langkah 4: Menulis Data Sensor ke Pangkalan Data

Setelah pangkalan data dijalankan pada Raspberry Pi anda, kami mahu sensor kami dapat menyimpan data mereka di dalamnya. Kita dapat melakukan ini dengan membuat 3 skrip terpisah (yang dilakukan di PyCharm). Ciri bagus yang terdapat dalam PyCharm ialah anda dapat menyambung ke Pi anda dan dengan cara ini anda dapat mengakses pangkalan data anda dan menulis terus ke dalamnya. Data juga dibaca secara langsung oleh Raspberry Pi dan LED akan menyala sesuai dengan yang anda perlukan.

LED biru menyala: Tanah tidak cukup lembap. LED RGB menyala hijau: semuanya baik-baik saja. LED RGB menyala merah: terlalu panas, buka bumbung untuk menyejukkannya sedikit. LED RGB menyala biru: terlalu sejuk, tutup bumbung jika terbuka.

Anda boleh memuat turun semua skrip dari repositori github saya:

Catatan: Saya menggunakan maklumat log masuk peribadi saya untuk pangkalan data sehingga anda mungkin perlu mengubahnya agar sesuai dengan data anda.

Catatan: Folder DB1 mengandungi 'pangkalan data' kelas yang diimport dalam kod yang akan disambungkan ke pangkalan data anda.

Langkah 5: Memaparkan IP Anda di Paparan

Memaparkan IP Anda di Paparan
Memaparkan IP Anda di Paparan

Paparan menunjukkan alamat IP yang sedang digunakan oleh Raspberry Pi anda, dengan cara ini anda boleh menyambung dengan mudah tanpa kabel ke Raspberry Pi anda. Saya juga menulis skrip untuk ini yang membaca IP pi anda dan memaparkannya di paparan (perhatikan bahawa pin GPIO anda sepadan jika tidak mungkin berfungsi). Raspberry Pi menjalankan skrip ini secara automatik semasa permulaan. Anda boleh melakukannya dengan menambahkan beberapa kod ke fail rc.local pada Raspberry Pi anda. Anda boleh sampai ke sana dengan menaip 'sudo nano /etc/rc.local', sebelum baris terakhir kod yang anda mahu tambah 'Python3.5 / home / user / filelocation &'.

Anda boleh mendapatkan skrip di sini:

Catatan: '&' di akhir, ini akan menjadikan skrip berjalan sekali dan segera menghentikannya sehingga skrip lain dapat berjalan juga.

Langkah 6: Mengukur Sensor Setiap 10 Minit

Mengukur Sensor Setiap 10 Minit
Mengukur Sensor Setiap 10 Minit

Kami tidak mahu pangkalan data kami diisi oleh sensordata 0,001 saat, jika tidak, ini akan menjadikan pangkalan data sukar untuk mengikuti semua data yang masuk dan mungkin akan rosak. Inilah sebabnya mengapa saya menambahkan skrip ke 'crontab' pada Raspberry Pi. Crontab adalah program yang melacak tugas yang dijadualkan sehingga dengan cara ini anda hanya dapat menjalankan skrip setiap 10 minit sekali.

Cara menyediakannya:

Anda boleh mengaturnya dengan menaip baris perintah Raspberry Pi 'crontab -e' terlebih dahulu, ini membuka editor untuk crontab. Tatal ke bahagian bawah fail dan tambahkan 3 baris, satu untuk setiap sensor.

'* / 10 * * * * python3.5 / rumah / pengguna / jalan masuk / sensor1'

Catatan: '* / 10' adalah 10 minit yang kita mahu berada di antara setiap pengukuran. Kod yang saya taip setelahnya adalah versi python yang anda jalankan dan fail yang ingin anda jalankan sehingga anda harus menulis satu baris untuk setiap sensor kerana ada dari 3 fail yang berbeza.

Langkah 7: Membuat Laman Web

Membuat Laman Web
Membuat Laman Web

Saya membuat laman web saya dalam program bernama Atom. Ini adalah program yang sangat mudah digunakan dan dinasihatkan jika anda cukup baru menulis HTML dan CSS seperti saya.

Anda boleh mendapatkan semua kod dan gambar yang digunakan mengikuti pautan ini:

Saya membuat bahagian depan laman web dalam Visual Studio Code jadi jika anda tidak merancang untuk membuat HTML & CSS sendiri, anda boleh menambahkan fail ke folder baru dalam Visual Studio Code dan bukan Atom.

Langkah 8: Membuat Back-end

Bahagian belakang dan depan akan menjadi perkara yang benar-benar membuat sesuatu berlaku di laman web yang baru kita buat. Di bahagian belakang kami menyambung ke pangkalan data kami sekali lagi dan bukannya memasukkan data ke dalam pangkalan data. Kami sekarang akan membaca semua data dari sensor yang berbeza dan menggunakan Socket. IO kami akan menghantarnya ke front-end kami sehingga kami dapat memaparkannya di laman web.

Anda boleh mendapatkan kod di bahagian belakang di sini:

Catatan: Kami menggunakan kelas pangkalan data yang kami gunakan sebelumnya jadi saya tidak memasukkannya ke dalam repositori ini.

Langkah 9: Membuat Bahagian Depan

Bahagian depan adalah tempat kami menggabungkan kod HTML & CSS kami bersama dengan JavaScript dan Back-end kami. JavaScript yang saya tulis cuba membuat hubungan dengan bahagian belakang yang mesti dijalankan. Sekarang Back-end akan mengirimkan semua data dari sensor dan kami dapat membuat beberapa fungsi dalam JavaScript yang mengedit fail HTML sehingga sesuai dengan nilai kami saat ini.

JavaScript boleh didapati di sini:

Catatan: pastikan anda memautkan HTML anda ke folder tempat JavaScript yang betul jika tidak, ia mungkin tidak berfungsi.

Langkah 10: Membuat Rumah Hijau

Membuat Rumah Hijau
Membuat Rumah Hijau
Membuat Rumah Hijau
Membuat Rumah Hijau

Saya membeli pakej premade dari Brico:

Ikuti sahaja langkah yang disertakan dengan pakej. Selepas ini selesai, kami belum cukup bersedia untuk memasukkan Raspberry Pi kami ke sana. Mula-mula kita perlu membuat 'lantai' atau bawah untuk Rumah Kaca, anda boleh melakukannya dengan mengambil piring kayu dan mengukur seberapa besar saiznya untuk membuatnya sesuai. Saya mula-mula membuat bingkai kayu sehingga pinggan kayu mempunyai sesuatu yang boleh disandarkan.

Langkah 11: Menggabungkan Semuanya

Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya
Menggabungkan Semuanya

Kami hampir bersedia! Hanya ini langkah terakhir dan anda sudah bersedia untuk pergi. Ambil Raspberry Pi dan rumah hijau, buat beberapa lubang sehingga anda dapat memasukkan LEDnya, membuat lubang untuk paparan dan lubang untuk bekalan kuasa Raspberry Pi. Masukkan semua barang di rumah hijau, pasangkan Pi dan anda sudah siap! Anda mempunyai rumah hijau sendiri!

Disyorkan: