Sistem kontrol iklim mikro rumah kaca
Mulai dari perjalanan
Suatu hari yang cerah, ketika saya tiba di universitas, saya belajar bahwa semester ini saya memiliki makalah tentang sirkuit. Guru itu menawarkan untuk hanya membuat catatan penjelasan "bagaimana menerapkan proyek" atau untuk mempelajari sisi gelap teknik dan membuat perangkat nyata. Dan karena saya sudah berada di tahun keempat, dan mengingat bahwa satu-satunya waktu saya mempraktikkan keterampilan insinyur adalah pada tahun pertama saya (saya memasang rak buku di dinding), saya memutuskan untuk "bekerja dengan pena." Setelah beberapa pertimbangan, saya memilih tema "Sistem kontrol iklim mikro rumah kaca". Kemungkinan besar pilihan itu dipengaruhi oleh kecintaan saya pada otomatisasi proses, atau fakta bahwa saya sendiri terlibat dalam penanaman mentimun di rumah kaca. Tapi kita tidak akan menarik untuk waktu yang lama - kita mulai.Pencarian Material
Dari teman dan guru saya mendengar tentang platform Arduino. Setelah membaca sedikit tentang Arduinka dan melihat beberapa proyek yang sudah selesai, keinginan untuk membuat sesuatu sendiri menjadi lebih besar. Untuk mengimplementasikan proyek, saya memutuskan untuk menggunakan Arduino Nano v3. Harga aslinya sedikit lebih dari $ 20, untuk salinan yang saya berikan 10. Tentu saja akan lebih murah untuk memesan di Aliexpress, tetapi saya tidak punya waktu atau keinginan untuk menunggu sebulan penuh - saya ingin segera mulai.Saya memutuskan pada papan mikrokontroler dan saatnya untuk memutuskan sensor mana yang saya butuhkan. Setelah berpikir sebentar, saya memutuskan untuk pertama kalinya untuk tidak melakukan sesuatu dalam skala besar (karena saya ingin mengatakan "singkatnya adalah saudara perempuan yang berbakat") dan membatasi diri pada tiga komponen utama iklim mikro rumah kaca - suhu, cahaya dan kelembaban tanah. Mari kita lihat semuanya dalam urutan:Sensor suhu
, DHT11. ( Β« β Β»).

:
- 5V
:
- β 0 β 50Β°C Β± 2Β°C
- β 20 β 95% Β± 5%
:

#include <dht.h>
DHT sensor = DHT();
void setup()
{
Serial.begin(9600);
sensor.attach(A1);
delay(1000);
}
void loop()
{
sensor.update();
switch (sensor.getLastError())
{
case DHT_ERROR_OK:
char msg[128];
sprintf(msg, "Temperature = %dC, Humidity = %d%%",
sensor.getTemperatureInt(), sensor.getHumidityInt());
Serial.println(msg);
break;
case DHT_ERROR_START_FAILED_1:
Serial.println("Error: start failed (stage 1)");
break;
case DHT_ERROR_START_FAILED_2:
Serial.println("Error: start failed (stage 2)");
break;
case DHT_ERROR_READ_TIMEOUT:
Serial.println("Error: read timeout");
break;
case DHT_ERROR_CHECKSUM_FAILURE:
Serial.println("Error: checksum error");
break;
}
delay(2000);
}

, LM393 . , .
int sensorPin = A0;
unsigned int sensorValue = 0;
void setup()
{
pinMode(13, OUTPUT);
Serial.begin(9600);
}
void loop()
{
sensorValue = analogRead(sensorPin);
if(sensorValue<500) digitalWrite(13, HIGH);
else digitalWrite(13, LOW);
}

(0 1), . . :
Value = analogRead(A2);
Saya memutuskan sensor. Sudah waktunya untuk memikirkan kasus yang indah. Setelah mengobrak-abrik gelombang internet, saya menemukan pria tampan ini dan memutuskan: kursach saya akan ada di dalamnya.
Tapi sejak itu ini memiliki lubang untuk tampilan, saya tidak punya pilihan selain untuk "menambahkan" ke tampilan saja menggunakan layar. Saya memutuskan untuk menggunakan lcd 1602 yang mudah digunakan:
Memahami cara kerjanya, saya menemukan artikel yang sangat bagus di mana semuanya dijelaskan secara rinci. Saya menghubungkan semua pin sesuai dengan contoh di artikel. Kode juga terlampir.Sebagai sumber listrik, saya menggunakan mahkota 9V. Materi sudah berakhir. Mulai berkembang.Pengembangan
Mengetahui bagaimana setiap elemen bekerja secara terpisah, tidak sulit untuk mengumpulkan semuanya menjadi satu kesatuan, yang saya lakukan. Setelah beberapa jam penyolderan pertama, ternyata sesuatu seperti ini:
Sensor dibuat terpisah dari badan utama:
Saya akan senang dengan kritik apa pun.Source: https://habr.com/ru/post/id388837/
All Articles