كود أردوينو كامل للتحكم الذكي في مستودع
هيدروبونيك زراعة أسماك نباتات الجزء السابع والأخير (7)
(شرح الكود / شرح لقسم void loop / الجزء "د" + تحميل الكود كامل / المراجع / إمكانية شراء الخدمات المماثلة )
Arduino-code-farme-hydroponic-control
===========
كود أردوينو كامل للتحكم الذكي في مستودع هيدروبونيك (زراعة أسماك نباتات او ورقيات...) بالكامل مجرب لن تحتاج لأيدي عاملة به تقريبا إلا للأعمال الروتينية والتفقدات... ونظرا لأن الموضوع طويل فقد تم تقسيمه لسبعة أجزاء وهذا هو الجزء السابع سنتعرف فيه على شرح الكود / شرح لقسم void loop / الجزء "د" + تحميل الكود كامل / المراجع / إمكانية شراء الخدمات المماثلة ...
الكود مع الشرح / شرح الكود / شرح لقسم void loop / الجزء "د"
===========================================
تشغيل لاد الوضع اليدوي
والبقاء فيه اذا كان السويتش في الوضع اليدوي...
//========================== MODE
MANUAL =======================
//===============================================================
//===============================================================
التغيير والدخول لهذا الكود فقط وتغيير باللاد للوضع اليدوي
حسب وضع زر السويتش الرئيسي بالصندوق الكهربائي...
else if (digitalRead(B_mn) == HIGH) {
digitalWrite(Led_mn, HIGH);
lcd2.setCursor(0, 3);
lcd2.print("Mn");
//مسح =
lcd2.setCursor(0, 0);
lcd2.print(" ");
تحكمات الكايباد او
السيريال الكلية في هاذا الوضع....
//--------------------- الكايباد مانيال
-------------------------
التحكم بالكمبيوتر
//التحكم
بالسيريال
if (Serial.available()) {
char ser = Serial.read();
switch(ser){
عند الضغط على 1 اصدار
صوت وكتابته على الشاشة وتشغيل الضوء الداخلي للعمال..
case '1':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("1");
digitalWrite(Li, HIGH);
lcd1.setCursor(0, 2);
lcd1.print("Li>");
break;
عند الضغط على 2 اصدار
صوت وكتابته على الشاشة وتشغيل الضوء الخارجي..
case '2':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("2");
digitalWrite(Lx, HIGH);
lcd1.setCursor(4, 2);
lcd1.print("Lx>");
break;
عند الضغط على 3 اصدار
صوت وكتابته على الشاشة وتشغيل الضوء الداخلي للنباتات..
case '3':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("3");
digitalWrite(Lm, HIGH);
lcd1.setCursor(8, 2);
lcd1.print("Lm>");
break;
عند الضغط على 4 اصدار
صوت وكتابته على الشاشة وتشغيل اجهزة أكل السمك..
case '4':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("4");
digitalWrite(Fd, HIGH);
lcd1.setCursor(12, 2);
lcd1.print("Fd>");
break;
عند الضغط على 5 اصدار
صوت وكتابته على الشاشة وتشغيل مضخة الماء..
case '5':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("5");
digitalWrite(Wt, HIGH);
lcd1.setCursor(16, 2);
lcd1.print("Wt>");
break;
عند الضغط على 6 اصدار
صوت وكتابته على الشاشة وتشغيل مراوح تهوية المستودع من الهواء الخارجي..
case '6':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("6");
digitalWrite(Vn, HIGH);
lcd1.setCursor(0, 3);
lcd1.print("Vn>");
break;
عند الضغط على 7 اصدار
صوت وكتابته على الشاشة وتشغيل مراوح تهوية النباتات..
case '7':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("7");
digitalWrite(Fn, HIGH);
lcd1.setCursor(4, 3);
lcd1.print("Fn>");
break;
عند الضغط على 8 اصدار
صوت وكتابته على الشاشة وتشغيل سخانات المياه للمنظومة..
case '8':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("8");
digitalWrite(Ch, HIGH);
lcd1.setCursor(8, 3);
lcd1.print("Ch>");
break;
عند الضغط على 9 اصدار
صوت وكتابته على الشاشة وتشغيل مضاد الحشرات..
case '9':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("9");
digitalWrite(An, HIGH);
lcd1.setCursor(12, 3);
lcd1.print("An>");
break;
عند الضغط على 0 اصدار
صوت وكتابته على الشاشة وتشغيل اجهزة حقن الاكسجين للسمك والنباتات بالمنظومة..
case '0':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("0");
digitalWrite(Ox, HIGH);
lcd1.setCursor(16, 3);
lcd1.print("Ox>");
break;
عند الضغط على A اصدار صوت وكتابته على الشاشة وتشغيل مروحة
تهوية الصندوق الكهربائي..
case 'A':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("A");
digitalWrite(F, HIGH);
lcd2.setCursor(0, 2);
lcd2.print("F>");
break;
عند الضغط على Z اصدار صوت وكتابته على الشاشة وتشغيل محرك إطفاء كهرباء المستودع..
case 'Z':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("B");
digitalWrite(M, HIGH);
lcd2.setCursor(3, 2);
lcd2.print("M>");
break;
عند الضغط على E اصدار صوت وكتابته على الشاشة وتشغيل الآذان..
case 'E':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("C");
digitalWrite(Q, HIGH);
lcd2.setCursor(6, 2);
lcd2.print("Q>");
break;
عند الضغط على R اصدار صوت وكتابته على الشاشة وتشغيل المآخذ
الخارجية R1 2 3 4 5..
case 'R':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("D");
digitalWrite(R1, HIGH);
lcd2.setCursor(9, 2);
lcd2.print("R1>");
digitalWrite(R2, HIGH);
lcd2.setCursor(13, 2);
lcd2.print("R2>");
digitalWrite(R3, HIGH);
lcd2.setCursor(17, 2);
lcd2.print("R3>");
break;
عند الضغط على T اصدار صوت وكتابته على الشاشة وتشغيل لاد التحذير والاوتوماتيك..
case 'T':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("#");
digitalWrite(Led_wr, HIGH);
lcd2.setCursor(3, 3);
lcd2.print("W>");
digitalWrite(Led_auto, HIGH);
break;
عند الضغط على Y اصدار صوت وكتابته على الشاشة وتشغيل كل الاجهزة او الريليهات..
case 'Y':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print("*");
for(int j=0; j<20; j++) {digitalWrite(sortee[j], LOW);}
//كتابات
ثابتة عامة
B1; B2; B3; B4; B5; B6; B7; B8; B9; B10; B11; B12; B13; B14;
B17; B18; B19; B20; B21; B22; B23; B24; B25; B26; B27; B28;
B29; B30; B31; B32; B33; B34; B35; B36; B37; B38; B39; B40; B41;
B42; B43; }}
التحكم بالكايباد
//تفعيلات
الكايباد
char key = kpd.getKey();
if(key){
switch (key){
عند الضغط على 1 اصدار
صوت وكتابته على الشاشة وتشغيل ضوء العمال..
case '1':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Li, HIGH);
lcd1.setCursor(0, 2);
lcd1.print("Li>");
break;
عند الضغط على 2 اصدار
صوت وكتابته على الشاشة وتشغيل الضوء الخارجي..
case '2':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Lx, HIGH);
lcd1.setCursor(4, 2);
lcd1.print("Lx>");
break;
عند الضغط على 3 اصدار
صوت وكتابته على الشاشة وتشغيل ضوء النباتات..
case '3':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Lm, HIGH);
lcd1.setCursor(8, 2);
lcd1.print("Lm>");
break;
عند الضغط على 4 اصدار
صوت وكتابته على الشاشة وتشغيل أجهزة أكل السمك..
case '4':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Fd, HIGH);
lcd1.setCursor(12, 2);
lcd1.print("Fd>");
break;
عند الضغط على 5 اصدار
صوت وكتابته على الشاشة وتشغيل مضخة الماء..
case '5':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Wt, HIGH);
lcd1.setCursor(16, 2);
lcd1.print("Wt>");
break;
عند الضغط على 6 اصدار
صوت وكتابته على الشاشة وتشغيل مراوح ادخال الهواء للمستودع..
case
'6':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Vn, HIGH);
lcd1.setCursor(0, 3);
lcd1.print("Vn>");
break;
عند الضغط على 7 اصدار
صوت وكتابته على الشاشة وتشغيل مراوح تهوية النباتات..
case '7':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Fn, HIGH);
lcd1.setCursor(4, 3);
lcd1.print("Fn>");
break;
عند الضغط على 8 اصدار
صوت وكتابته على الشاشة وتشغيل ضوء سخانات مياه المنظومة..
case '8':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Ch, HIGH);
lcd1.setCursor(8, 3);
lcd1.print("Ch>");
break;
عند الضغط على 9 اصدار
صوت وكتابته على الشاشة وتشغيل مضاد الحشرات..
case '9':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(An, HIGH);
lcd1.setCursor(12, 3);
lcd1.print("An>");
break;
عند الضغط على A اصدار صوت وكتابته على الشاشة وتشغيل مراوح تهوية الصندوق
الكهربائي..
case 'A':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(F, HIGH);
lcd2.setCursor(0, 2);
lcd2.print("F>");
break;
عند الضغط على B اصدار صوت وكتابته على الشاشة وتشغيل محرك اطفاء كهرباء المستودع..
case 'B':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(M, HIGH);
lcd2.setCursor(3, 2);
lcd2.print("M>");
break;
عند الضغط على C اصدار صوت وكتابته على الشاشة وتشغيل الآذان..
case 'C':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Q, HIGH);
lcd2.setCursor(6, 2);
lcd2.print("Q>");
break;
عند الضغط على D اصدار صوت وكتابته على الشاشة وتشغيل المآخذ الإظافية R1,R2,R3, في ال3 معا..
case 'D':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(R1, HIGH);
lcd2.setCursor(9, 2);
lcd2.print("R1>");
digitalWrite(R2, HIGH);
lcd2.setCursor(13, 2);
lcd2.print("R2>");
digitalWrite(R3, HIGH);
lcd2.setCursor(17, 2);
lcd2.print("R3>");
break;
عند الضغط على 0 اصدار
صوت وكتابته على الشاشة وتشغيل مضخات الأكسجين..
case '0':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Ox, HIGH);
lcd1.setCursor(16, 3);
lcd1.print("Ox>");
break;
عند الضغط على * اصدار صوت وكتابته على الشاشة وإطفاء كل
الأجهزة..
case '*':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
for(int j=0; j<20; j++) {digitalWrite(sortee[j], LOW);}
//كتابات
ثابتة عامة
B1; B2; B3; B4; B5; B6; B7; B8; B9; B10; B11; B12; B13; B14;
B17; B18; B19; B20; B21; B22; B23; B24; B25; B26; B27; B28;
B29; B30; B31; B32; B33; B34; B35; B36; B37; B38; B39; B40; B41;
B42; B43;
break;
عند الضغط على # اصدار
صوت وكتابته على الشاشة وتشغيل لاد التحذير البرتقالي ولاد الوضع الأوتوماتيكي..
case '#':
tone(Z, Sound1, 50);
lcd2.setCursor(19,1);
lcd2.print(key);
digitalWrite(Led_wr, HIGH);
lcd2.setCursor(3, 3);
lcd2.print("W>");
digitalWrite(Led_auto, HIGH);
break;
default:
lcd2.setCursor(19,1);
lcd2.print(key);}}
else {
lcd2.setCursor(7, 3);
lcd2.print(" Press (Key).");
if (millis() > time_now_K + period_K) {
time_now_K = millis();
lcd2.setCursor(19,1);
lcd2.print("K");}}
} //FIN MODE MANUAL
//============================ NO
MODE =========================
//===============================================================
//===============================================================
الوضع الوسطي للسويتش No mode Nm (ليس Auto وليس Mn)
else
{
lcd2.setCursor(0, 3);
lcd2.print("Nm");
إطفاء كل الأجهزة مسح كلي للشاشة وكتابة No Mode
بالشاشة
for(int j=0; j<20; j++) {digitalWrite(sortee[j],
LOW);}
//كتابات
ثابتة عامة
B1; B2; B3; B4; B5; B6; B7; B8; B9;
B10; B11; B12; B13; B14;
B17; B18; B19; B20; B21; B22; B23;
B24; B25; B26; B27; B28;
B29; B30; B31; B32; B33; B34; B35;
B36; B37; B38; B39; B40; B41;
B42; B43;
//تنظيف
اماكن الفراغ
lcd1.setCursor(0, 0);
lcd1.print("
");
lcd1.setCursor(0, 1);
lcd1.print("
");
lcd2.setCursor(1, 0);
lcd2.print("
");
lcd2.setCursor(0, 1);
lcd2.print("
");
lcd2.setCursor(7, 3);
lcd2.print(" NO Mode.....");
} //FIN NO MODE
}
//نهاية اللوب
نهاية الloop والكود
==================== نهاية الكود
==========================
===========================================
تحميل كود الأردوينو كامل للتحكم الذكي في مستودع هيدروبونيك زراعة أسماك نبات
========================================
لتحميل كود الأردوينو كامل للتحكم الذكي في مستودع هيدروبونيك زراعة أسماك نبات بالكامل والتحكم بواجهة عرض +الهاتف الذكي +السيريال مونيتور والذي تم شرحه في سبعة أجزاء إضغط هنا للتحميل المباشر أو قم بنسخ ولصق أحد الرابطين بالأسفل بمتصفحك والضغط للبدأ (الرابط الأول بالأسود هو رابط غير مباشر والثاني بالأحمر هو رابط مباشر) إختر الطريقة التي تناسبك للتحميل (كل الروابط لنفس الملف)..
https://drive.google.com/file/d/1qVupm0-8iTYGpVEwFcgGzBTnrM-eTY36/view?usp=sharing
https://docs.google.com/uc?id=1qVupm0-8iTYGpVEwFcgGzBTnrM-eTY36&export=download
=======================================
المراجع والمصادر...
=======================================
المراجع والمصادر...
مؤلف وصاحب المشروع: بلمختاري عبد القادر
الناشر: موقع: سوفت بيديا Softpudia
=======================================
هذا هو الكود الكلي الخاص بتشغيل مستثمرة أو مستودع هيدروبونيك لزراعة
النباتات الورقية والثمرية والأسماك في دورة مغلقة حيث يتحكم النظام في كل شيء
تقريبا ويبقى دور صاحب المستمرة أو الفلاح فقط هو التفقد ومراقبة الأداء وتفقد حسن
عمل النظام الآلي وملىء الخزانات تغيير المياه الدوري وملئ أجهزة إطعام الأسماك
وضخ محاليل تسميد النبات حسب نوعها ، أي أن العمل سيكون أسبوعي حسب سعة الأجهزة
المستخدمة للأكل والتسميد ثم يمكنه إغلاق
المستودع لِأسبوع كامل دون فتحه إلى لجني المنتوجات ويستخدام الهاتف في تتبع
الأداءات والحساسات والأجهزة العاملة والتحذيرات وبالتالي توفير الجهد والوقت والعمالة االلازمة لفعل ذلك وتخفيض تكاليف
الإنتاج لأقصى حد بتغيير توقيتات عمل الأجهزة
حسب نوع النشاط وتوافر الإظائة الطبيعية أو لا...الخ
وللعلم نفس الكود السابق والحساسات والمنظومة السابقة تصلح للتشغيل والتحكم
في مصانع صغيرة إلى متوسطة.. وتصلح للمنازل الذكية.. مستشفيات... مؤسسات.. مقاهي..
مطاعم.. سوبر ماركت... وحتى للتحكم وإظافة عنصر كومبيوتر المتن والدارات الذكية
للسيارات للتحكم بالنوافذ، التشغيل عن بعد، تشغيل المكيف حسب الحرارة، تشغيل
مساحات الزجاج في حالة الأمطار، وضع كايباد ورقم سري لابد من إدخاله لتشتغل
السيارة أي حتى بالمفتاح ودون رقم سري لن تعمل السيارة...الخ، يمكن بتغييرات في
الكود السابق وبعض الحساسات حسب نوع الإستعمال لفعل أي شيء تقريبا في مجال الذكاء
الإلكتروني ....منازل... حدائق.. ورشات.. مستثمرات... مصانع... محلات...الخ
نلتقي في موضوع جديد إنشاء الله، لأي إستفسار أو غموض أو خطأ يرجى
التواصل معنا عن طريق صفحة إتصل بنا وسنقوم بتوجيه رسالتكم لصاحب المشروع أو الكود
ليجيبكم على الإستفسار...
إمكانية شراء خدمات مماثلة جاهزة
===========================================
وللحصول على أكواد أخرى للأردوينو أو التحكم الذكي مع إمكانية برمجتها لكم لتشغيل ورشات مصانع مستودعات مستثمرات فلاحية منازل وغيرها مع تركيب الأجهزة والتشغيل في المكان في 48ولاية (داخل القطر الجزائري) يرجى التواصل معنا وسنقوم بإيصالكم مباشرة بمبرمج الأجهزة لدينا والإتفاق على السعر المناسب حسب الخدمة المطلوبة ليتم تجهيزها لكم مسبقا قي صندوق كهربائي وإلكتروني يتم ربطه مع اللوحة الكهربائية الرئيسية لديكم للتحكم...
===========================================