Лета - гэта час, калі многія, як правіла, выязджаюць на адпачынак за мяжу, і расліны ўяўляюць сабой праблему, бо гэтага не можа быць палівайце тыя дні, калі вас няма дома. Акрамя таго, у садовых крамах звычайна прадаецца своеасаблівы гель, які ўвільгатняе і сілкуе расліна каля месяца. Але пры спякоце, калі вы з'едзеце больш за месяц, вам спатрэбіцца некалькі лепшая сістэма, каб па вяртанні яны былі ўсё яшчэ жывыя і бадзёрыя.
Каб гэта стала магчымым, рашэнне, якое існуе, - набыць аўтаматычная сістэма паліву што вы можаце запраграмаваць, альбо, калі вы стваральнік і вам падабаецца рабіць самастойна, вы можаце зрабіць гэта самастойна з Arduino. Вам патрэбныя матэрыялы, акрамя дошкі Arduino, лёгка знайсці і даволі танна, таму яны не патрабуюць занадта вялікіх выдаткаў. Акрамя таго, для некаторых элементаў, такіх як рэзервуар для вады і г.д., вы можаце выкарыстоўваць перапрацаваныя матэрыялы ...
Калі вы крыху паглядзіце Інтэрнэт, вы знойдзеце розныя праекты гэтага тыпу, але, мабыць, самае цікавае Ярдуіна. У сувязі з гэтым я буду натхнёны гэтым праектам, бо лічу, што іншыя ірыгацыйныя сістэмы, якія выкарыстоўваюць толькі датчыкі вільготнасці і нічога іншага, не такія поўныя.
Што вам трэба?
Л матэрыялы, неабходныя для вашай сістэмы аўтаматычнага паліву гук:
- Прадуктаў не знойдзена., хоць іншыя былі б вартыя.
- Пратаборд альбо друкаванай платы калі вы хочаце яго прылітаваць і зрабіць пастаянным.
- Датчык тэмпературы і вільготнасці Прадуктаў не знойдзена.
- Кабелі
- датчык YL-69 вільгаць на зямлю з дапамогай гігрометра, каб уторкнуць яго ў гаршчок / ы альбо ў глебу.
- Міні-помпа Падводная вада 3В і прыблізны расход 120 л / гадзіну.
- Дыёда 1N4007
- Біпалярны транзістар PN2222
- 3 Рэзістары: 1x 220 Ом, 1x 1k, 1x фотарэзіст ЛДР
- Рэзервуар для вады, які можа быць барабанам альбо бутэлькай аб'ёмам 5 і больш літраў і г.д.
- Туба падключыць да міні-помпы і падвесці да завода
Кома альтэрнатыўныя ідэі, Я хацеў бы сказаць вам, што вы таксама можаце выкарыстоўваць соноф або модуль Wi-Fi для яго актывацыі праз Інтэрнэт, дзе б вы ні знаходзіліся, альбо палепшыць яго, таксама дадаўшы ў кран аўтаматычны клапан для праграмавання напаўнення рэзервуара для вады, калі ён спусцее і г.д.
Як наладзіць аўтаматычную сістэму паліву
Зборка даволі простая. Ты можаш выкарыстоўвайце прыведзеную схему, каб зрабіць усе злучэнні. Вы павінны размясціць сістэму ў месцы каля акна альбо там, дзе знаходзіцца расліна, якое вы хочаце паліваць, і ўставіць два кончыкі датчыка вільготнасці ў глебу расліны, каля сцябла.
Аўтаматычная сістэма паліву з Arduino будзе паліваць кожны раз, калі выявіць шэраг умоў навакольнага асяроддзя. Напрыклад, калі ён выяўляе слабы святло ці цемру, тэмпература паветра з'яўляецца канкрэтнай, якую мы будзем наладжваць у эскізе Arduino IDE, а вільготнасць на зямлі нізкая. У гэты момант ён уключыў рухавік для паліву завода.
Пажадана паліваць расліны ноччу, калі менш горача, бо гэта ў моцныя гарачыя дні можа нанесці больш карысці, чым карысці ...
Памятай, што трэба ўвесці міні-помпа пад ваду у рэзервуары, які вам прызначаны для арашэння, і які павінен мець дастатковую ёмістасць, каб утрымліваць дні, калі вас там няма. Вы можаце правесці папярэднія тэсты, каб даведацца, як доўга гэта доўжыцца, і вам трэба пакінуць крыху больш вады, калі яна выпарыцца пры моцнай спякоце ...
Само сабой зразумела, што трубка павінна быць замацавана на расліне, каб яна не рухалася разам з ветрам, альбо вада магла выпадаць і марнавацца. І я думаю, што не трэба было б памятаць, што вам трэба падтрымліваць бягучую падачу платы Arduino, каб яна працавала ...
праграмаванне
Зараз вам трэба напісаць код, неабходны ў IDE Arduino каб мець магчымасць запраграмаваць мікракантролер, які кіруе апаратным забеспячэннем, якім вы карысталіся. Гэта час, каб адаптаваць адпаведныя паказчыкі тэмпературы, вільготнасці і святла да вады ў вашым рэгіёне, бо яна можа вар'іравацца ў залежнасці ад таго, дзе вы знаходзіцеся. Але прыклад, які вы можаце выкарыстоўваць у якасці асновы (я пакінуў каментарыі, дзе вы можаце змяніць значэнні, астатнія вы можаце пакінуць яго такім):
Загрузіце код з код-абрашэнне-аўтопаліў-аўто для вашага саду
#include <SimpleDHT.h> #include <SPI.h> #define humidity_sensor_pin A0 #define ldr_pin A5 //Bibliotecas para los módulos sensores usados necesarias //Y definición de variables para los sensores de humedad y LDR en los pines A0 y A5 int pinDHT11 = 2; SimpleDHT11 dht11; int ldr_value = 0; int water_pump_pin = 3; int water_pump_speed = 255; //Aquí puedes dar valores desde 0 a 255 para la velocidad a la que trabajará la minibomba //Haz pruebas previas del caudal y configura la. Yo he //elegido 255 pero ustedes pueden elegir la que estimen conveniente. A más velocidad, mayor //bombeo de agua void setup() { Serial.begin(9600); } void loop() { // Mide la temperatura y humedad relativa y muestra resultado Serial.println(“*******************************”); Serial.println(“Muestra DHT11…”); byte temperature = 0; byte humidity_in_air = 0; byte data[40] = {0}; if (dht11.read(pinDHT11, &temperature, &humidity_in_air, data)) { Serial.print(“Lectura del sensor DHT11 fallida”); return; } Serial.print(“Muestra RAW Bits: “); for (int i = 0; i < 40; i++) { Serial.print((int)data[i]); if (i > 0 && ((i + 1) % 4) == 0) { Serial.print(‘ ‘); } } Serial.println(“”); Serial.print(“Muestra OK: “); Serial.print(“Temperatura: “);Serial.print((int)temperature); Serial.print(” *C, “); Serial.print(“Humedad relativa en aire: “);Serial.print((int)humidity_in_air); Serial.println(” %”); int ground_humidity_value = map(analogRead(humidity_sensor_pin), 0, 1023, 100, 0); Serial.print(“Humedad en suelo: “); Serial.print(ground_humidity_value); Serial.println(“%”); int ldr_value = map(analogRead(ldr_pin), 1023, 0, 100, 0); Serial.print(“Luz: “); Serial.print(ldr_value); Serial.println(“%”); Serial.println(“*******************************”); //************************************************************** // Condiciones de riego // Si la humedad en el suelo es igual o inferior al 60%, si la luminosidad es inferior al 30%, // Si la temperatura es inferior al 35%, entonces el sistema de riego riega. // En caso de que no se cumpla alguno o ninguno de los 3 requisitos anteriores, // el sistema de riego no riega //************************************************************** //Aquí puedes variar los parámetros que necesites de 60, 35 y 30, e incluso usar otros operandos <>=... if( ground_humidity_value <= 60 && ldr_value<30 && temperature<35) { digitalWrite(water_pump_pin, HIGH); Serial.println(“Irrigación”); analogWrite(water_pump_pin, water_pump_speed); } else{ digitalWrite(water_pump_pin, LOW); Serial.println(“Riego detenido”); } delay (2000); // Ejecuta el código cada 2000 milisegundos, es decir, 2 segundos. Puedes variar la frecuencia de muestreo }
Больш інфармацыі - Курс праграмавання Arduino (бясплатны PDF)
Фуэнтес
Больш інфармацыі - Ярдуіна
36 каментарыяў, пакіньце свой
ЧАМУ Я ВЫХОДЯЦЬ з выхаду 1
#include чакае "ІМЯ ФАЙЛА" альбо ESO пры загрузцы
Добры дзень,
Гэтая памылка звязана з праблемай сінтаксісу ў кодзе. Я прайшоў гэта і меў памылку. Цяпер усё павінна быць добра.
Прывітанне!
Добры дзень, добры дзень, у мяне таксама такая ж праблема:
праект: 3:10: памылка: #include чакае "FILENAME" альбо
#уключыць <SimpleDHT.h>
^
праект: 4:10: памылка: #include чакае "FILENAME" альбо
#уключыць <SPI.h>
^
статус выхаду 1
#include чакае "FILENAME" альбо
Прывітанне, прабачце, вы можаце мне дапамагчы з памылкай, якая ўзнікае ў кодзе
Сапраўды гэтак жа мне падаецца памылка ў кодзе, ці не маглі б вы дапамагчы мне з гэтай праблемай, калі ласка
Добры дзень,
Калі ласка, пакіньце інфармацыю пра вашу памылку, каб я мог дапамагчы. Калі я не ведаю зместу памылкі, мне цяжка дапамагчы вам альбо знайсці месца, дзе праблема ...
прывітання
Прывітанне, з'яўляецца гэтая памылка, як я магу яе выправіць?
памылка: SimpleDHT.h: Няма такога файла альбо каталога
#include
^ ~~~~~~~~~~~~
кампіляцыя спынена.
статус выхаду 1
SimpleDHT.h: Няма такога файла альбо каталога
Прывітанне Саманта,
Гэтая памылка таму, што IDE Arduino, здаецца, не выяўляе бібліятэку SimpleDHT.h. Вы правільна ўсталявалі яго? У выпадку, калі ў вас ёсць, паспрабуйце выкарыстоўваць больш новую версію Arduino IDE, калі яна старая ...
Больш інфармацыі можна паглядзець тут:
https://www.arduino.cc/en/Guide/Libraries
І атрымаць бібліятэку адсюль:
https://github.com/adafruit/DHT-sensor-library
Прывітанне!
Спачатку дзякую за допіс, які вельмі цікавы і вельмі слушны, але я прачытаў гэта:
"Пажадана паліваць расліны ноччу, калі менш горача, бо гэта ў моцныя гарачыя дні можа нанесці больш карысці, чым карысці ..."
Я чуў гэта шмат разоў, але хацеў бы, каб нехта мне дакладна растлумачыў, як ім балюча ... Я вырошчваю расліны больш за 20 гадоў, і калі вельмі горача, яны нічога больш не цэняць, чым добры паліў і магчымасць апырсквання ракавінай змочваць лісце.
Гэта міф, што ўсё, што ён робіць, - гэта прымусіць расліны пакутаваць ... Калі вам горача і смажыць, ці чакаеце вы да ночы, каб выпіць? ... падумайце пра гэта
дзякуй за паведамленне !!!
Прывітанне Пепе,
Дзякуй за ваш уклад. Я жыву на дачы, і часам, калі спёка вельмі моцная, паліў раслін у гарачыя гадзіны можа забіць іх. Я сам гэта праверыў (акрамя таго, у залежнасці ад геаграфічнай вобласці, дзе вы знаходзіцеся, у мяне вельмі горача). Гэта можа быць па некалькіх прычынах:
1-Таму што кроплі вады на лісці дзейнічаюць як шклянка, спальваючы іх сонечным святлом, як павелічальнае шкло.
2-Расліны маюць вусцікі, якія зачыняюцца, каб не абязводжваць, калі сонечна. Калі вы іх паліваеце, яны адкрыюцца і могуць прывесці да абязводжвання.
3 Калі яны знаходзяцца ў пластыкавым посудзе, эфект можа быць яшчэ горшым.
Прывітанне!
ДОБРЫ ДЗЕНЬ!!
Мне вельмі спадабаўся распрацаваны праект, у мяне ёсць уласны сад, і я тэстую гэты праект як асабісты досвед, не атрымліваючы прыбытковай выгады, я проста хацеў спытаць у вас, ці можаце вы дапамагчы мне з кодам, бо гэта дае мне памылку , У мяне ёсць бібліятэка DHT, але пры праверцы я выдаю памылку ў канцы кода: {Serial.println ("Паліў спынены");} і кажа мне, што гэта: бадзяжны '\ 342' у праграме.
Я вельмі мала ведаю гэтае пытанне, я даследаваў і не змог яго вырашыць.
Я быў бы ўдзячны, калі б вы мне дапамаглі. Дзякуй 😀
Добры дзень,
Ці правільны код? То бок у яго няма памылак друку?
З іншага боку, вы можаце даведацца больш пра гэтую памылку тут:
https://forum.arduino.cc/index.php?topic=386225.0
прывітання
Прывітанне Добры дзень, прабачце, я не ведаю, ці ёсць спосаб звязацца з вамі, гэта тое, што ён дае мне шмат памылак з гэтым кодам у arduino
Прывітанне ўсім,
Я ачысціў код і напісаў яго зноў, каб даведацца, ці былі па нейкіх прычынах памылкі ў кодзе, які адлюстроўваецца ў Інтэрнэце. Каб яго можна было загрузіць, я пакінуў новы код у спасылцы для загрузкі непасрэдна перад кодам, які з'яўляецца ў Інтэрнэце. Калі вы націснеце там, вы можаце загрузіць яго ў тэкставым фармаце. Спадзяюся, праблем больш не будзе.
Прывітанне!
Як я магу дадаць модуль Wi-Fi? і ці можна было б кіраваць ім, падаючы заяўку?
Як ежа таксама: с?
Прывітанне Чакі! Я спрабую зрабіць тое ж самае, што і вы, не маглі б вы мне дапамагчы, калі б вы скончылі свой код ????
Пытанне, які кампанент будзе паміж платай Arduino і датчыкам DHT11?
Вялікі дзякуй !!
Прывітанне Нерэя,
Вы маеце на ўвазе дыёд і рэзістар? Звярніце ўвагу, што ў раздзеле да дыяграмы ёсць спіс усіх кампанентаў ...
Прывітанне!
Добры дзень, у вас ёсць відэа, як выглядала ваша ірыгацыйная сістэма.?
прабачце, працуе толькі для arduino uno альбо таксама для arduino mega
Прывітанне, добрай раніцы, прабачце, я хацеў задаць пытанне, чаму, калі я адкрываю манітор Arduino ide, я атрымліваю няўдалы счытчык датчыка dht11?
Уся праграма добра скампілявана і загружана добра, падрабязнасці - гэта калі я адкрываю манітор і з'яўляецца гэтая легенда.
Што гэта можа быць?
ВІТАЙ, СЯБР, ВЯЛІКАЯ РАБОТА, АЛЕ ПАМОЖАЕ ПАМЫЛКУ У ГЭТАЙ ЧАСТКЕ Няма такога файла ці каталога
#include
ШТО БУДЗЕ? Я быў бы ўдзячны за вашу дапамогу
ПРЫВІТАЙ, ГЭТА ПУБЛІЧНА, АЛЕ НЕ ЗНАЧЫЦЬ, Я САПРАЎДЫ ХАЧУ ДЗЯКАТЬ ЧАЛАВЕКУ АБО ЛЮДЗЯМ, ЯКІЯ БРАЛІ УЧАСТЬ У РАЗРАБОЦЦЕ ГЭТАГА ПРАЕКТУ, МОЖА ШМАТ ШТО ГЭТА ГЛУПАЦЬ, АЛЕ ДЗЯКУЙ ДЗЯКУЙ ШКОЛА, ЯКОЙ Я НЕ ХАЧАЮ ПРЫНАЦЬ, І ПРАЎДУ, НА якую НЕ ШКАДУЮ, Я НАВУЧЫЛАСЯ, ДЗЯКУЙ ЗА СВАЮ СТРАНІЦУ, Я ЖАДАЮ Вам НАЙЛЕПШЫХ.
Як я магу дадаць модуль Wi-Fi? і ці можна было б кіраваць ім, падаючы заяўку?
#include "DHT.h"
DHT dht (2, DHT11);
int valueLDR;
int pinLDR = A5;
int МАТОР = 8;
// ————————————————————————————————————————————-
ўстаноўка пустэчы ()
{
Serial.begin (9600);
valueLDR = 0;
Serial.begin (9600);
Serial.println ("ТЭСТ ІРЫГАЦЫЙНАЙ СІСТЭМЫ");
dht.begin ();
pinMode (МАТОР, ВЫХОД);
Serial.println ("Значэнне датчыка вільготнасці");
}
// ————————————————————————————————————————————-
пустая пятля ()
{
Serial.println («============================================== = ========================== »);
int вільготнасць = analogRead (A0);
Serial.print ("Чытаць:");
Serial.println (вільготнасць);
калі (вільготнасць> = 0 і вільготнасць> = 1000) {
Serial.println ("Датчык у сухой глебе");
} інакш калі (вільготнасць> 500 і вільготнасць <= 1000) {
Serial.println ("Датчык у вільготнай глебе");
} інакш калі (вільготнасць <= 500) {
Serial.println ("Датчык у вадзе");
}
valueLDR = analogRead (pinLDR);
Serial.print ("LIGHT (");
Serial.print (valueLDR);
Serial.println (")");
delay (2000);
float h = dht.readHumidity ();
float t = dht.readTemperature ();
калі (isnan (h) || isnan (t)) {
Serial.println ("Не ўдалося прачытаць датчык DHT11!");
return;
}
Serial.print ("Вільготнасць:");
Serial.print (h);
Serial.print ("%");
Serial.print ("Тэмпература:");
Serial.print (t);
Serial.println ("* C");
калі (h <= 50 && LDRvalue <70 && t = 1000) {
digitalWrite (MOTOR, HIGH);
Serial.println ("Павінна паліць");
}
яшчэ {
digitalWrite (MOTOR, LOW);
Serial.println ("НЕ трэба паліваць");
}
delay (1000);
}
Я выкарыстаў толькі
-DTH тэмпературы і вільготнасці на кантакце 2
-фотарэзіст LDR на кантакце A5
-матор на штыфце 8
-датчык вільготнасці глебы на штыфце A0
гэта мой код, я спадзяюся, і ён працуе для вас
-датчык вільгаці для глебы
Добрай раніцы, у мяне праблемы з кодам, які я атрымліваю, і я выкарыстоўваю найноўшае праграмнае забеспячэнне:
sketch_nov12c: 1: 10: фатальная памылка: SimpleDHT.h: Няма такога файла ці каталога
#include
^ ~~~~~~~~~~~~
кампіляцыя спынена.
статус выхаду 1
SimpleDHT.h: Няма такога файла альбо каталога
Я хацеў бы, каб вы дапамаглі мне вырашыць гэта, калі ласка, бо я пачатковец у гэтым, я не ведаю, як гэта добра працуе. Дзякуй.
Прывітанне, вы маглі б пакінуць лепшае малюнак таго, як падключана ланцуг? Гэта дрэнна ацэнена, з якім напружаннем харчавання ён падаецца? Дзякуй
#include "DHT.h"
DHT dht (2, DHT11);
int valueLDR;
int pinLDR = A5;
int МАТОР = 8;
// ————————————————————————————————————————————-
ўстаноўка пустэчы ()
{
Serial.begin (9600);
valueLDR = 0;
Serial.begin (9600);
Serial.println ("ТЭСТ ІРЫГАЦЫЙНАЙ СІСТЭМЫ");
dht.begin ();
pinMode (МАТОР, ВЫХОД);
Serial.println ("Значэнне датчыка вільготнасці");
}
// ————————————————————————————————————————————-
пустая пятля ()
{
Serial.println («============================================== = ========================== »);
// —————————————————————————————–
// ———– Вільгаць, датчык глебы —————————————————–
int вільготнасць = analogRead (A0);
Serial.print ("Чытаць:");
Serial.println (вільготнасць);
калі (вільготнасць> = 0 і вільготнасць> = 1000) {
Serial.println ("Датчык у сухой глебе");
} інакш калі (вільготнасць> 500 і вільготнасць <= 1000) {
Serial.println ("Датчык у вільготнай глебе");
} інакш калі (вільготнасць <= 500) {
Serial.println ("Датчык у вадзе");
}
// —————————————————————————————–
// ————— Фота супраціў ———————————————————-
valueLDR = analogRead (pinLDR);
Serial.print ("LIGHT (");
Serial.print (valueLDR);
Serial.println (")");
delay (2000);
// —————————————————————————————–
// ————— Датчык тэмпературы і вільготнасці паветра DTH11 —————————–
float h = dht.readHumidity ();
float t = dht.readTemperature ();
калі (isnan (h) || isnan (t)) {
Serial.println ("Не ўдалося прачытаць датчык DHT11!");
return;
}
Serial.print ("Вільготнасць:");
Serial.print (h);
Serial.print ("%");
Serial.print ("Тэмпература:");
Serial.print (t);
Serial.println ("* C");
// —————————————————————————————–
// ———— Стан паліваць альбо не паліваць ———————————————-
// (вільготнасць паветра) (фотарэзіст) (тэмпература) (вільготнасць зямлі)
калі (h <= 50 && LDRvalue <70 && t = 1000) {
digitalWrite (MOTOR, HIGH);
Serial.println ("Павінна паліць");
}
яшчэ {
digitalWrite (MOTOR, LOW);
Serial.println ("НЕ трэба паліваць");
}
delay (1000);
}
// як толькі штыфты проста пераканайцеся, што помпа ўяўляе сабой ШІМ-штыфт і
// фотарэзіст LDR аналагічны, а вільготнасць глебы роўная штыфту
// аналагавы і датчык dth11 датчыка тэмпературы і вільготнасці паветра
// лічбавыя шпількі ўсё яшчэ могуць быць заснаваны на арыгінальным кодзе гэтай старонкі
// злучыць шпількі
// працуе з 5v
Я атрымліваю памылку ў гэтай частцы кода »empty loop () {» можа дапамагчы мне
Добры дзень, не маглі б вы сказаць мне, якія бібліятэкі альбо як яны называюцца, каб усталяваць іх, бо пры ўстаўцы кода ён кажа мне, што мне патрэбна бібліятэка DTH
Прывітанне, сістэма здаецца вельмі добрай. Я паспрабаваў узнавіць яго, але падчас уключэння кода і адпаведнай бібліятэкі з'яўляецца наступнае.
У файле, уключаным з C: \ Users \ User \ Documents \ Arduino \ TEST_1 \ TEST_1.ino: 5: 0:
C: \ Program Files (x86) \ Arduino \ libraries \ DHT-sensor-library-master / DHT_U.h: 36:10: фатальная памылка: Adafruit_Sensor.h: Няма такога файла ці каталога
#include
^ ~~~~~~~~~~~~~~~~~~
кампіляцыя спынена.
статус выхаду 1
Памылка кампіляцыі для карты Arduino Uno.
Я не ўпэўнены, ці патрэбна мне іншая кнігарня, калі хто-небудзь можа мне дапамагчы.
Вельмі добры праект, аднак пасля праверкі кода, яго кампіляцыі і загрузкі, адзінае, што з'яўляецца на паслядоўным маніторы, гэта "Памылка чытання DHT11", ён не выходзіць за рамкі гэтага пункту
Добры дзень, у мяне ёсць некалькі праблем, калі ласка, дапамажыце мне, і калі ў кагосьці ёсць відэа ці я знайшоў падрабязнае відэа, якое я магу паглядзець
У мяне пытанне, куды паставіць ток і які тып току можна выкарыстоўваць.
Ці можаце вы дадаць контур з больш высокім дазволам? некаторыя сувязі не відаць выразна