pobo Сентябрь 8, 2016 Share Сентябрь 8, 2016 (изменено) ну так начнем ))))) делал на Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. датчик температуры Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. реле Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. можно взять на больший ампераж часы )))) Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. чтоб бокс знал сколько времени да и знал когда ночь а когда день ))) + работа кулеров ))))) экран Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. увлажнение Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. сам скетч и библиотеки Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. ну что господа пробуйте расскажите потом что да как )))) пароль grower.today также думаю можно использовать под грибы !!! поменяв всего пару параметров день/ночь 18/6 температура поднимается выше 23 врубаются кулера падает меньше 18 врубается подогрев 1 раз в час продувка системы кулером при условии что температура не упала ниже 18 дальнейшая работа 2 раза в сутки делать фото )))) пока обдумываю 2 варианта 1 сохранение фоток на флешке и второй выкладывать на какой нибудь ресурс например на Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. )))) но надо с админом обсудить эту возможность ))))) примерно за время грова 500 фоток по 2 мегабайта каждая (((((( печальная сумма )))))))) проверка влажности земли !!! при необходимости полив (но как то есть желания самому поливать ))) ) также думаю на счет веб интерфейса )))) через который можно посмотреть что происходит а также полить например )))))) //50 Ват нагреватель // Освещение 18 день ,6 часов ночь //при поднятии температуры выше 23 градусов включается продувка системы //падение температуры меньше 18 градусов включение подогрева //приблизительно в 9 утра начала дня //каждый час включение кулеров на 5 минут #include "DHT.h" #include <Wire.h> #include "RTClib.h" #include <LiquidCrystal_I2C.h> RTC_DS1307 RTC; DateTime now; int hora = 0; int minutos = 0; int segundos = 0; int rele1 = 4; //нагреватель int rele2 = 5; //Свет int rele3 = 12; //кулер int rele4 = 7; // свободный пин на реле int led1 = 8; //состояние работы int led2 = 10; //состояние работы #define DHTPIN 2 // what pin we're connected to ??????????????? // Uncomment whatever type you're using! #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22 (AM2302) ???????????????????????? //#define DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht(DHTPIN, DHTTYPE); LiquidCrystal_I2C lcd(0x27, 16, 2); byte derece[8] = { 0b00011, 0b00011, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000 }; byte u_herfi_az[8] = { 0b10001, 0b00000, 0b10001, 0b10001, 0b10001, 0b10011, 0b01101, 0b00000 }; byte e_herfi_az[8] = { 0b00000, 0b00000, 0b01110, 0b00001, 0b11111, 0b10001, 0b01110, 0b00000 }; byte termometr[8] = // иконка для термометра { B00100, B01010, B01010, B01110, B01110, B11111, B11111, B01110 }; byte rutubet_isaresi [8] = // Значок влаги (капли воды) { B00100, B00100, B01010, B01010, B10001, B10001, B10001, B01110, }; void setup() { lcd.init(); lcd.backlight(); Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for Leonardo only } lcd.createChar(1, derece); lcd.createChar(2, u_herfi_az); lcd.createChar(3, e_herfi_az); lcd.createChar(4, termometr); lcd.createChar(5, rutubet_isaresi);// ,, pinMode(rele1, OUTPUT); pinMode(rele2, OUTPUT); pinMode(rele3, OUTPUT); pinMode(rele4, OUTPUT); pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); Wire.begin(); RTC.begin(); lcd.begin(16, 2); if (!RTC.isrunning()) { RTC.adjust(DateTime(__DATE__, __TIME__)); } lcd.begin(16, 2); lcd.setCursor(0, 0); lcd.print("Bitkiler uchun"); lcd.setCursor(0, 1); lcd.print(" tenzimleyici"); delay(10000); lcd.clear(); } void loop() { int err; float temp, humi; temp = dht.readHumidity(); // Read temperature as Celsius humi = dht.readTemperature(); if (isnan(humi) || isnan(temp)) { Serial.println("Could not read the sensor data"); humi = 0; temp = 0; } else { Serial.println("temperature:"); Serial.print(temp); if ((temp ) <= 18 ) //&& (temp) >= 38) //нагреватель { digitalWrite(rele1, LOW); //включение } else { digitalWrite(rele1, HIGH); } if ((temp ) >= 23 ) //для кулера { digitalWrite(rele3, LOW); } else { digitalWrite(rele3, HIGH); } { DateTime now = RTC.now(); hora = (now.hour(), DEC); minutos = (now.minute(), DEC); segundos = (now.second(), DEC); lcd.clear(); lcd.setCursor(0, 0); // lcd.print("Time:"); //lcd.setCursor(6,0); lcd.print(now.hour(), DEC); lcd.print(":"); lcd.print(now.minute(), DEC); //lcd.print(":"); //lcd.print(now.second(),DEC); lcd.setCursor(7, 0); //lcd.print("Date:"); //lcd.setCursor(6,1); lcd.print(now.day(), DEC); lcd.print("/"); lcd.print(now.month(), DEC); lcd.print("/"); lcd.print(now.year(), DEC); lcd.setCursor(0, 1); lcd.write( 4 ); lcd.setCursor(1, 1); lcd.print(temp); lcd.setCursor(6, 1); lcd.write( 1); lcd.print("C"); lcd.setCursor(9, 1); lcd.write(5 ); lcd.setCursor(10, 1); lcd.print(humi); lcd.setCursor(15, 1); lcd.print("%"); if (now.hour() == 21 && now.minute() == 00) { lcd.clear(); lcd.setCursor(2, 0); lcd.print("ON"); digitalWrite(rele2, LOW); } if (now.hour() == 15 && now.minute() == 00) { lcd.clear(); lcd.setCursor(2, 0); lcd.print("OFF"); digitalWrite(rele2, HIGH); } delay(1000); } } } void qoshulma() { lcd.clear(); lcd.setCursor(2, 0); lcd.print("FAN ON"); digitalWrite(rele3, LOW); delay(50000); digitalWrite(rele3, HIGH); } void gundeIyirmiDordDefeCevir() { DateTime now = RTC.now(); if (now.hour() == 00 && now.minute() == 00) { qoshulma(); } if (now.hour() == 1 && now.minute() == 00) { qoshulma(); } if (now.hour() == 2 && now.minute() == 00) { qoshulma(); } if (now.hour() == 3 && now.minute() == 00) { qoshulma(); } if (now.hour() == 4 && now.minute() == 00) { qoshulma(); } if (now.hour() == 5 && now.minute() == 00) { qoshulma(); } if (now.hour() == 6 && now.minute() == 00) { qoshulma(); } if (now.hour() == 7 && now.minute() == 00) { qoshulma(); } if (now.hour() == 8 && now.minute() == 00) { qoshulma(); } if (now.hour() == 9 && now.minute() == 00) { qoshulma(); } if (now.hour() == 10 && now.minute() == 00) { qoshulma(); } if (now.hour() == 11 && now.minute() == 00) { qoshulma(); } if (now.hour() == 12 && now.minute() == 00) { qoshulma(); } if (now.hour() == 13 && now.minute() == 00) { qoshulma(); } if (now.hour() == 14 && now.minute() == 00) { qoshulma(); } if (now.hour() == 15 && now.minute() == 00) { qoshulma(); } if (now.hour() == 16 && now.minute() == 00) { qoshulma(); } if (now.hour() == 17 && now.minute() == 00) { qoshulma(); } if (now.hour() == 18 && now.minute() == 00) { qoshulma(); } if (now.hour() == 19 && now.minute() == 00) { qoshulma(); } if (now.hour() == 20 && now.minute() == 00) { qoshulma(); } if (now.hour() == 21 && now.minute() == 00) { qoshulma(); } if (now.hour() == 22 && now.minute() == 00) { qoshulma(); } if (now.hour() == 23 && now.minute() == 00) { qoshulma(); } } Изменено Сентябрь 9, 2016 пользователем pobo 2 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
BudPupok Сентябрь 17, 2016 Share Сентябрь 17, 2016 Долго искал подобный проект) жду с нетерпением обновы и апгрейды) Запчасти частично есть буду пробовать собрать! Спасибо!!! 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
pobo Сентябрь 17, 2016 Автор Share Сентябрь 17, 2016 Только что, BudPupok сказал: жду с нетерпением обновы и апгрейды буду стараться )))) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
BudPupok Сентябрь 17, 2016 Share Сентябрь 17, 2016 Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. Еще на просторах интернета натыкался на такую вот платку Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. Давно думаю заказать для этих целей, оч большой плюс что все в одной компановке, остается подключить только датчики Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
pobo Сентябрь 17, 2016 Автор Share Сентябрь 17, 2016 ну не знаю ))) мне както ближе ардуина )))) + в любой момент можно жописать скетч добавить релешек или датчиков )))) Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
GROWER Сентябрь 17, 2016 Share Сентябрь 17, 2016 Пожалуйста войдите или зарегистрируйтесь чтобы увидеть ссылку. Давай запустим в массы, думаем многим будет интересно, после теста сможем разместить в партнерском магазине на продажу, я договорюсь 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
pobo Сентябрь 17, 2016 Автор Share Сентябрь 17, 2016 Только что, GROWER сказал: Давай запустим в массы, думаем многим будет интересно, согласен ))) 1 Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...