جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
تخفيف الصدمة عن طريق Superflux: موقعنا على الإنترنت
هذه التعليمات هي استمرارية نظام Fogponic. هنا ، ستكون قادرًا على الحصول على المزيد من الخيارات لقياس البيانات من كمبيوتر الدفيئات الزراعية الخاصة بك والتحكم في عمليات متعددة مثل تدفق مضخة المياه ، وتوقيت الأضواء ، وشدة المروحة ، والضباب ، وجميع وحدات التحكم الأخرى التي تطمح لإضافتها إلى Fogponic. مشروع.
الخطوة 1: قم بتثبيت ESP 8266-01 Wifi Shield على Arduino
الحد الأدنى من متطلبات المواد:
- اردوينو ميجا 2560
- درع ESP 8266-01
- هاتف ذكي
- اتصال واي فاي
اتصال:
- أردوينو - ESP 8266
- 3 فولت - VCC
- 3 فولت - CH_PD
- GND - GND
- RX0 - TX
- TX0 - آر إكس
الخطوة 2: قم بإعداد درع ESP8266-12
خطوات قليلة يجب اتباعها:
- بعد توصيل درع ESP866-91 بـ Arduino ، يجب عليك تحميل مثال Bareminimum من أجل حذف الكود السابق في لوحك.
- قم بتحميل الكود إلى Arduino ، وافتح الشاشة التسلسلية ، واضبط Baudrate على 115200 واضبط كلا من NL و CR.
- على جهاز العرض التسلسلي ، اكتب الأمر التالي: AT. عادةً ، من المفترض أن تتلقى الرسالة "حسنًا". إذا لم يكن كذلك ، فيرجى تبديل الأسلاك التالية: RX و TX من Arduino. اعتمادًا على الدرع ، يمكن أن يكون موضع جهاز الاستقبال مختلفًا.
- سوف تحتاج إلى إعداد MODE للدرع الخاص بك. يوجد 3 محطات مختلفة: وضع المحطة (1) AP Mode (2) و AP + المحطة (3). بالنسبة إلى MOS ، نحتاج فقط إلى الحصول على الوضع الأول ، اكتب الأمر التالي: AT + CWMODE = 1. إذا تم إعداد الدرع بشكل جيد ، فستتلقى الرسالة "موافق". يمكنك معرفة الوضع الذي تعمل فيه عن طريق كتابة: AR + CWMODE؟
- لتوصيل ESP8266-01 بنوع اتصال Wi-Fi لديك: AT + CWJAP = "شبكة Wi-Fi" ، "كلمة المرور"
- أحسنت! نموذج MOS الأولي متصل بالإنترنت. نحتاج الآن إلى توصيل ESP8266 بتطبيق.
الخطوة 3: قم بإعداد اتصال Wifi
# تضمين # تعريف BLYNK_PRINT المسلسل 2 # تضمين # تضمين # تعريف EspSerial Serial2 ESP8266 wifi (EspSerial) ؛ شار المصادقة = «b02cfbbfd2b34fd1826ec0718613306c» ؛ # تضمين # تضمين
الإعداد باطل() {
Serial2.begin (9600) ؛ تأخير (10) ؛ EspSerial.begin (115200) ؛ تأخير (10) ؛ Blynk.begin (المصادقة ، wifi ، «اسم المستخدم» ، »كلمة المرور») ؛ timer.setInterval (3000 لتر ، وقت الإرسال) ؛ }
sendUptime باطل () {
Blynk.virtualWrite (V1 ، DHT.temperature) ؛ Blynk.virtualWrite (V2 ، DHT.humidity) ؛ Blynk.virtualWrite (23 ، م) ؛ }
حلقة فارغة()
{rtc.begin () ، timer.run () ، Blynk.run () ،
}
- قم بتنزيل وتثبيت مكتبة Blynk الأخيرة داخل مجلد مكتبة برنامج Arduino الخاص بك.
- قم بتنزيل وتثبيت آخر مكتبة Blynk ESP8266 في مجلد المكتبة. من الممكن أن تحتاج إلى تغيير esp8226.cp بإصدار آخر.
- قم بتثبيت تطبيق BLYNK على Appstore أو Google play store وقم بإنشاء مشروع جديد.
- انسخ / الصق الكود أعلاه في Arduino Sketch جديد. ستحتاج إلى تغيير مصادقة char مع المصادقة الرئيسية من مشروع BLYNK الخاص بك. مفتاح تطبيق MOS الحالي هو «b02cfbbfd2b34fd1826ec0718613306c».
- اكتب كلمة المرور الخاصة بك على السطر التالي: Blynk.begin (المصادقة ، wifi ، «؟؟؟» ، «؟؟؟») ؛.
- قم بتشغيل رسم Arduino وافتح Serial Monitor. لا تنس تغيير Baudrate إلى 115200 وترميز الخط إلى "كل من NL و CR".
- بعد بضع ثوانٍ ، سيتم توصيل MOS Arduino بشكل طبيعي بالإنترنت. حان الوقت الآن لإنشاء تطبيق MOS Blynk!
الخطوة 4: تعلم وطبق لغة BLYNK
تتكيف Blynk جيدًا مع لغة Arduino. واحدة من خصوصيات Blynk هي استخدام دبابيس رقمية وتناظرية ولكن أيضًا افتراضية. اعتمادًا على وحدة التحكم أو المستشعر أو الخافت ، ستحتاج إلى كتابة خطوط افتراضية على رسم تطبيق Arduino.
- مثال على الكتابة الافتراضية على مخطط Arduino: Blynk.virtualWrite (pin ، action) ؛
- يمكنك إضافة جميع الأدوات التي تريدها إلى التطبيق باتباع الخطوات المذكورة أعلاه.
- لكن كن على علم بأن بعض المستشعرات ستحتاج إلى بعض التعديلات على الكود الأصلي للارتباط بتطبيق BLYNK.
مثال ، DHT-11 + BLYNK:
- تأكد من عدم وضع تأخير على كود الإعداد الباطل بعد آخر تأخير (10) ؛ يستخدم timer.setInterval (1000 ، Senduptime) كتأخير لدرع ESP8266-01 وليس للشاشة التسلسلية. تحتاج إلى وضع 1000 ميلي ثانية كحد أدنى لهذا التأخير وإلا سيواجه درع ESP صعوبة في إرسال المعلومات وتلقيها.
- ستحتاج إلى تحديث مكتبة DHT لتطبيق Blynk. لذلك ، يمكنك تنزيل مكتبة DHT الجديدة بكتابة DHT.h و DHT11.h على google. يوجد بعض مستودع Github الجيد مع مكتبة DHT بالداخل.
- يكمن التغيير الكبير في إرسال باطلة () مع مكتبة DHT الجديدة ، ستحتاج فقط إلى ضبط الدبوس الافتراضي الذي تريده مع الحالة التي تريدها: درجة الحرارة أو الرطوبة. لذا ، دعنا نرى مثالاً للخط الذي يمكنك كتابته لإرسال بيانات الرطوبة أو درجة الحرارة إلى تطبيق Blynk: Blynk.virtualWrite (V1 ، DHT.temperature) ؛. Blynk.virtualWrite (دبوس افتراضي ، جهاز استشعار).
- تحصل الحلقة الفارغة () على شرطين جديدين هما: Blynk.run ()؛ و timer.run () ؛. ولكن أيضًا ، حتى إذا قمت باستدعاء DHT في الفراغ أدناه والذي يعمل كحلقة باطلة () ، فستحتاج أيضًا إلى استدعاء المستشعر في الفراغ الأخير.
# تضمين dht11 DHT ؛ #define DHT11_PIN A0 # تضمين مؤقت SimpleTimer ؛ # تضمين # تعريف BLYNK_PRINT المسلسل # تضمين # تضمين #de ne EspSerial المسلسل ESP8266 wi (EspSerial) ؛ شار المصادقة = «b02cfbbfd2b34fd1826ec0718613306c» ؛ # تضمين # تضمين
الإعداد باطل() {
Serial2.begin (9600) ؛ تأخير (10) ؛ EspSerial.begin (115200) ؛ تأخير (10) ؛ timer.setInterval (1000 ، sendUptime) ؛ }
sendUptime () باطلة
{Blynk.virtualWrite (V1، DHT.temperature) ؛ Blynk.virtualWrite (V2 ، DHT.humidity) ؛ }
حلقة فارغة() {
int chk = DHT.read (DHT11_PIN) ، timer.run () ، Blynk.run () ،
}