أخر الاخبار

كود أردوينو كامل (ج2) للتحكم الذكي في مستودع هيدروبونيك زراعة أسماك نباتات


كود أردوينو كامل للتحكم الذكي في مستودع هيدروبونيك زراعة أسماك نباتات الجزء الثاني (2)

(تحميل المكتبات + بداية شرح الكود / الجزء العلوي فوق void setup)

Arduino-code-farme-hydroponic-control

===========

كود أردوينو كامل للتحكم الذكي في مستودع هيدروبونيك (زراعة أسماك نباتات او ورقيات...) بالكامل مجرب لن تحتاج لأيدي عاملة به تقريبا إلا للأعمال الروتينية والتفقدات...  ونظرا لأن الموضوع طويل فقد تم تقسيمه لسبعة أجزاء وهذا هو الجزء الثاني سنتعرف فيه على الشرح التفصيلي للتعاريف التي تكون فوق قسم  

void setup() {

 من الكود مع تحميل المكتبات الضرورية لتشغيله...



 

الشرح التفصيلي للكود المستعمل لتحميله إنزل لأسفل الجزء السابع (ج7) من الموضوع

=======================================================

كود أردوينو كامل للتحكم الذكي في مستودع هيدروبونيك زراعة أسماك نبات بالكامل والتحكم بواجهة عرض +الهاتف الذكي +السيريال مونيتور

=======================================================





أولا تحميل المكتبات

لتحميل المكتبات إضغط عليها بالأسفل أو قم بنسخ الرابط الأول الغير مباشر بالاسود الذي يلي المكتبة وقم بلصقه في متصفحك واضغط للإنتقال إلى صفحة التحميل أو قم بنفس الأمر مع الرابط الثاني الاحمر للتحميل المباشر (كل الروابط تؤدي لنفس الملف إختر طريقة التحميل التي تناسبك) ......


Arduino-Prayer-Times-master

https://drive.google.com/file/d/17vP0TmzgLJIzUb_YXabmTwRrXg1YGo8k/view?usp=sharing

https://docs.google.com/uc?id=17vP0TmzgLJIzUb_YXabmTwRrXg1YGo8k&export=download

 

DHT-lib

https://drive.google.com/file/d/1wPY8Zgk969prifUukI5aYZnHPCcqWVEf/view?usp=sharing

https://docs.google.com/uc?id=1wPY8Zgk969prifUukI5aYZnHPCcqWVEf&export=download

 

DS3231

https://drive.google.com/file/d/1008fW_q17pr3mA0IFRxGm_i1El20MBjS/view?usp=sharing

https://docs.google.com/uc?id=1008fW_q17pr3mA0IFRxGm_i1El20MBjS&export=download

 

Ethernet 2.0.0

https://drive.google.com/file/d/1TlERUD406kde6SOUsZp9PZB337wIDTZ2/view?usp=sharing

https://docs.google.com/uc?id=1TlERUD406kde6SOUsZp9PZB337wIDTZ2&export=download

 

Keypad-master

https://drive.google.com/file/d/1U7tzHYGl61GU7Uhcv9ulT98S_xXh1PKy/view?usp=sharing

https://docs.google.com/uc?id=1U7tzHYGl61GU7Uhcv9ulT98S_xXh1PKy&export=download

 

RemoteXY

https://drive.google.com/file/d/172e16MtTTyuBqL46cZmzKDfKQ1ChTJNE/view?usp=sharing

https://docs.google.com/uc?id=172e16MtTTyuBqL46cZmzKDfKQ1ChTJNE&export=download

 

SPI-master

https://drive.google.com/file/d/1rgoMCUNa4VQyCkVd2iUxcUgpVtEk7q0G/view?usp=sharing

https://docs.google.com/uc?id=1rgoMCUNa4VQyCkVd2iUxcUgpVtEk7q0G&export=download

 

Time

https://drive.google.com/file/d/15dMcfnskwpztKQz4Drgl45OJuyoWw8lR/view?usp=sharing

https://docs.google.com/uc?id=15dMcfnskwpztKQz4Drgl45OJuyoWw8lR&export=download



 


ثانيا بداية الكود مع الشرح (القسم العلوي من الكود البرمجي فوق Void setup )


===========================================

هنا  نظيف مكتبة الساعة الحقيقية real time DS3231  

#include <DS3231.h>

هنا  نظيف مكتبة شاشة الكريستال 4*20

#include <LiquidCrystal.h>

هنا  نظيف مكتبة الكايباد 4*4

#include <Keypad.h>

هنا  نظيف مكتبة حساس الرطوبة والحرارةdht11  

#include <dht.h>

هنا نظيف مكتبة الآذان و تعاريف بالأرردوينو ليؤذن في الوقت المحدد حسب منطقتنا

#include "PrayerTimes.h"

double times[sizeof(TimeName)/sizeof(char*)];

هنا نظيف مكتبة الذاكرة الداخلية لتسجيل التحذيرات للعودة لها لاحقا من الهاتف او واجهة العرض بالمزرعة واسفلها كود اظهار التحذيرات المخزنة للعرض

//لتسجيل التحذيرات

#include <EEPROM.h>

//لعرض w المسجل في 500

                   char y [14] ;       

تأخيرات في الزمن

هنا نظيف زمن لكي يسخن حساس الغاز ثم يبدا العمل بعدها كي لايعطينا قرائة خاطئة وهو بارد

//لتأخير حساسات الغاز لتسخن ولا تقطع

// الكهربا عند عودته دون ديلاي

unsigned long T1=0;

هنا نظيف كود لنط ضوء التحذير (البرتقالي) أي يصبح يغمز (ينطفأ ويشتعل) للتحذير في حالة وجود تحذيرات

bool x=0;

unsigned long T2=0;

هنا نظيف تأخيرات مختلفة

//مواقيت الإيميل

     int period_K = 6000;

     unsigned long time_now_K = 0;

    

     int period_P = 30000;

     unsigned long time_now_P = 0;

    

     int period_d = 30000;

     unsigned long time_now_d = 0;

هنا نظيف تأخير في زمن بدا عمل كود الضوء الخارجي

     //تأخير عمل الضوء Lx

     const unsigned long Min_Lx = 15 * 60 * 1000UL;

     static unsigned long time_now_Lx = 0 - Min_Lx;

هنا نظيف تأخير 30ثانية في زمن عمل حساسات الغاز حتى تسخن

     int period_Gs = 30000;

     unsigned long time_now_Gs = 0;

    

     int period_Gi = 30000;

     unsigned long time_now_Gi = 0;

هنا نظيف تأخير 30ثانية في زمن عمل حساس الحرارة الداخلية للمستودع

     int period_Ti = 30000;

     unsigned long time_now_Ti = 0;

    هنا نظيف تأخير 30ثانية في زمن عمل حساس الحرارة الخارجية للمستودع

     int period_Tx = 30000;

     unsigned long time_now_Tx = 0;

     هنا نظيف تأخير 30ثانية في زمن عمل حساس حرارة ماء المنظومة

     int period_Te = 30000;

     unsigned long time_now_Te = 0;

     هنا نظيف تأخير 30دقيقة في زمن عمل ريلاي السخانات حتى نظمن الإستقرار وعدم تشغيل وإطفاء السخانات المتكررحسب قراءات الحساس فتحدث مشاكل أي نترك الماء يبرد لنصف ساعة ثم نشغل السخانات وهكذا إذا كان الجو بارد

     //تأخير عمل الCh

     const unsigned long Min_Ch = 30 * 60 * 1000UL;  //تاخير ب1/2 سا

     static unsigned long time_now_Ch = 0 - Min_Ch;

هنا نظيف تأخير 30ثانية في زمن عمل حساس  حرارة صندوق الكهرباء حتى لاتشغل وتطفأ المراوح باستمرار لضمان إستقرار في القراءات والأداء...

     int period_Ts = 30000;

     unsigned long time_now_Ts = 0;

  هنا نظيف تأخير 30ثانية في زمن عمل محرك الكهرباء المسؤول عن إطفاء كهرباء المستودع بالقاطع الرئيسي في حالة وجود خطر حريق غازات...     

     int period_M = 30000;

     unsigned long time_now_M = 0;

  هنا نظيف تأخير 5ثانية في زمن عمل الإلتراسونيك لضمان عمله واستقرار قرائاته    

     int period_Ult = 5000;

     unsigned long time_now_Ult = 0;

    هنا نظيف تأخير 30ثانية في زمن عمل عرض درجة الحرارة  

     int period_C = 30000;

     unsigned long time_now_C = 0;

     هنا نظيف تأخير 30ثانية في زمن عمل حساس مستوى الماء

     int period_L = 30000;

     unsigned long time_now_L = 0;

 هنا نظيف تأخير 10ثانية في زمن عمل التحذير     

     int period_Wr = 10000;

     unsigned long time_now_Wr = 0;

هنا نظيف تأخير 10ثانية في زمن عرض السيريال مونيتور للقدرة على قرائة البيانات بالكومبيوتر بروية

     int period_Serial = 10000;

     unsigned long time_now_Serial = 0;

تعاريف المداخل المختلفة وبينات توصيلها

هنا نظيف تعاريف الساعة الحقيقية  التوقيت اليوم الشهر السنة الثواني الساعات والدقائق ..real time

//تعاريف الساعة

     DS3231  rtc(SDA, SCL);

     Time T;

     int Hor;

     int Min;

     int Sec;

     int Jour;

     int Mois;

     int Annee;

هنا نظيف تعاريف الشاشتين ببينات التوصيل

//تعاريف الشاشة

     LiquidCrystal lcd1(A5, 49, 48, 47, 46, 45);

     LiquidCrystal lcd2(44, 43, 42, 41, 40, 39);

هنا نظيف تعاريف بينات توصيل الكايباد keypad 4*4

//تعاريف الكايباد

     const byte ROWS = 4;

     const byte COLS = 4;

  char keys[ROWS][COLS] = {

     {'1', '2', '3', 'A'},

     {'4', '5', '6', 'B'},

     {'7', '8', '9', 'C'},

     {'*', '0', '#', 'D'}};

     byte rowPins[ROWS] = { 4, 5, 6, 7 };

     byte colPins[COLS] = { 8, 11, 12 , 13};

Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

هنا نظيف تعاريف بينات المداخل...

// تعريف المداخل المستعملة

نظافة الماء ec او الناقلية

     int sensor_pin_c = A8;

     int C ;

حساس مستوى الماء للاحواض

     int sensorPin_L =  A7;

     int L ;

درجة الحرارة والرطوبة الداخلية

     int sensorPin_Ti = A10;

     dht DHTi;

درجة الحرارة والرطوبة الخارجية

     int sensorPin_Tx = A11;

     dht DHTx;

درجة حرارة الصندوق الكهربائي

     int sensorPin_Ts = A14;

     dht DHTs;

درجة حرارة الماء

     int sensorPin_Te = A9;

     int Vo;

     float RR1 = 10000;

     float logRR2, RR2, TT, Te;

     float c1 = 1.009249522e-03, c2 = 2.378405444e-04, c3 = 2.019202697e-07;

حساس الغاز للصندوق الكهربائي

     int sensorPin_Gs = A13;

     int Gs;

حساس الغاز لداخل المستودع

     int sensorPin_Gi = A12;

     int Gi;

حساس الضوء الخارجي للمستودع

     int sensorPin_D =  A15 ;

     int D ;

حساس حامضية الماء ph

     int sensorPin_P =  A6 ;

     int P ;

حساس الالتراسونيك

     const int trigPin =  2;  //هذا مخرج

     const int echoPin = 14;  //هذا مدخل

     long duration;

     int distance;

هذا الزر في مكان الفلوتور (حساس مستوى الماء للخزان اسفل النباتات لتشغيل المضخة عند عودة الماء وامتلائه) عند الضغط= مستوى عالي والعكس... رمزه بالكود بالأسفل .T1 T0

     int B_Wt =    28 ;

زر السويتش الرئيسي

     int B_auto =  27 ;

     int B_mn =    26 ;

            هذا لإنشاء إختصار للحساسات

int sensor[ ]={sensor_pin_c,sensorPin_L,sensorPin_Ti,sensorPin_Tx,sensorPin_Ts,

         sensorPin_Te,sensorPin_Gs,sensorPin_Gi,sensorPin_D,sensorPin_P,

         B_Wt,B_auto,B_mn};

تعاريف المخارج المختلفة وبينات توصيلها

// تعريف المخارج المستعملة

int Z=3    ,Led_auto=25 ,Led_mn=24 ,Led_wr=23 ,F=22 ;

int M = 19 ,Q= 18       ,R1=17     ,R2=16     ,R3=15;

int Li=38  ,Lx=37       ,Lm=36     ,Fd=35     ,Wt=34;

int Vn=33  ,Fn=32       ,Ch=31     ,An=30     ,Ox=29;

هذا لإنشاء إختصار للمخارج

int sortee[ ]={Z,Led_auto,Led_mn,Led_wr,F,M,Q,R1,R2,R3,Li,Lx,Lm,

         Fd,Wt,Vn,Fn,Ch,An,Ox};

تعريف لتشغيل لاد الويفي ولاد اظهار ان الجهاز يعمل

int On = A3;

int Wifi = A4;

صنع صوت

const int Sound1[8] = { 131, 175, 262, 349, 523, 698, 1047, 1397};

 

  byte Flesh1[8] = {

     B10000,

     B11000,

     B11100,

     B11111,

     B11110,

     B11100,

     B11000,

     B10000};

  byte Flesh2[8] = {

     B00000,

     B00000,

     B11111,

     B11111,

     B11111,

     B11111,

     B00000,

     B00000};

  byte Temp[8] = {

     B01100,

     B01100,

     B01100,

     B01100,

     B01110,

     B10001,

     B10001,

     B01110};

  byte Hmd[8] = {

     B00000,

     B00100,

     B00100,

     B01110,

     B11111,

     B11111,

     B01110,

     B00000};

  byte Ard[8] = {

     B01110,

     B11011,

     B10001,

     B01010,

     B01110,

     B11011,

     B11011,

     B01110};

   byte Adn_fsl[8] = {

     B00001,

     B00001,

     B00001,

     B00001,

     B00001,

     B00001,

     B00001,

     B00001};

 

     تعاريف لتشغيل تطبيق remotXY  على الهاتف الذكي حين فتحه ولابد من وجود مكتبة remoteXY

:يمكنك إنشاء التطبيق الخاص بك بالإنتقال لموقع
 remoteXY
...ثم إستبداله مكان هذا إن أردت (ولاتنسى إستبدال كل الأكواد الخاصة به في كل الكود البرمجي وليس هنا فقط)

// RemoteXY select connection mode and include library 

#define REMOTEXY_MODE__ETHERNET_LIB_CLOUD

#include <Ethernet.h>

/* Ethernet shield used pins: 10(SS) */

#include <SPI.h>

/* SPI interface used pins: 51(MOSI), 50(MISO), 52(SCK) */

 

#include <RemoteXY.h>

 

// RemoteXY connection settings 

#define REMOTEXY_ETHERNET_MAC "DE:AD:BE:EF:EF:ED"

#define REMOTEXY_CLOUD_SERVER "cloud.remotexy.com"

#define REMOTEXY_CLOUD_PORT 6376

#define REMOTEXY_CLOUD_TOKEN "702182956c38c4f57481e0666f797003"

 

 

// RemoteXY configurate  

#pragma pack(push, 1)

uint8_t RemoteXY_CONF[] =

  { 255,4,0,203,0,39,5,8,24,5,

  130,0,-1,88,65,16,0,25,130,0,

  -1,-3,65,9,0,25,130,0,30,71,

  32,14,2,187,130,0,1,71,29,14,

  2,187,2,1,3,90,17,7,2,133,

  26,31,31,79,78,0,79,70,70,0,

  65,36,19,7,5,5,2,129,0,19,

  12,7,3,2,31,77,97,110,62,0,

  65,34,19,16,5,5,2,65,34,19,

  25,5,5,2,65,36,28,7,5,5,

  2,65,34,28,16,5,5,2,65,34,

  29,25,5,5,2,65,34,37,7,5,

  5,2,65,34,37,16,5,5,2,65,

  34,37,25,5,5,2,65,34,2,21,

  5,5,2,65,34,2,31,5,5,2,

  65,34,2,41,5,5,2,65,34,2,

  51,5,5,2,65,34,2,61,5,5,

  2,65,34,56,21,5,5,2,65,34,

  56,31,5,5,2,65,34,56,41,5,

  5,2,65,34,56,51,5,5,2,65,

  34,56,61,5,5,2,129,0,28,12,

  5,3,2,31,87,114,62,0,129,0,

  36,12,8,3,2,31,65,117,116,111,

  62,0,129,0,20,21,5,3,2,31,

  70,62,0,129,0,29,21,6,3,2,

  31,77,62,0,129,0,38,21,6,3,

  2,31,81,62,0,129,0,19,30,6,

  3,2,31,82,49,62,0,129,0,29,

  30,6,3,2,31,82,50,62,0,129,

  0,37,30,6,3,2,31,82,51,62,

  0,129,0,3,18,4,3,2,31,76,

  105,62,0,129,0,2,28,5,3,2,

  31,76,120,62,0,129,0,2,38,6,

  3,2,31,76,109,62,0,129,0,2,

  48,5,3,2,31,70,100,62,0,129,

  0,2,58,5,3,2,31,87,116,62,

  0,129,0,56,18,5,3,2,31,86,

  110,62,0,129,0,56,28,5,3,2,

  31,70,110,62,0,129,0,56,38,5,

  3,2,31,67,104,62,0,129,0,56,

  48,5,3,2,31,65,110,62,0,129,

  0,56,58,5,3,2,31,79,120,62,

  0,67,1,1,72,3,3,2,31,26,

  3,67,1,5,72,3,3,2,31,26,

  3,67,1,9,72,3,3,2,31,26,

  3,67,1,15,72,3,3,2,31,26,

  3,67,1,19,72,3,3,2,31,26,

  3,67,1,22,72,6,3,2,31,26,

  5,129,0,4,72,1,3,2,31,58,

  0,129,0,8,72,1,3,2,31,58,

  0,129,0,18,72,1,3,2,31,46,

  0,129,0,22,72,1,3,2,31,46,

  0,129,0,38,75,3,3,2,31,71,

  105,0,67,1,41,75,3,3,2,31,

  26,3,129,0,45,75,4,3,2,31,

  71,115,0,67,1,48,75,4,3,2,

  31,26,3,129,0,34,72,2,3,2,

  31,84,0,67,1,35,72,3,3,2,

  31,26,2,129,0,40,81,2,3,2,

  31,62,0,129,0,53,75,2,3,2,

  31,85,0,67,1,54,75,6,3,2,

  31,26,4,129,0,32,75,2,3,2,

  31,83,0,67,1,33,75,4,3,2,

  31,26,3,129,0,2,75,1,3,2,

  31,105,0,67,1,3,75,3,3,2,

  31,26,3,129,0,6,75,1,3,2,

  31,40,0,67,1,7,75,3,3,2,

  31,26,3,129,0,10,75,1,3,2,

  31,41,0,129,0,17,75,1,3,2,

  31,40,0,129,0,21,75,1,3,2,

  31,41,0,67,1,14,75,3,3,2,

  31,26,3,67,1,18,75,3,3,2,

  31,26,3,129,0,23,75,2,3,2,

  31,101,0,67,1,24,75,4,3,2,

  31,26,3,67,1,31,81,4,3,2,

  31,26,6,67,1,35,81,4,3,2,

  31,26,4,67,1,36,78,5,3,2,

  31,26,3,67,1,31,78,5,3,2,

  31,26,3,67,1,1,78,5,3,2,

  31,26,5,67,1,6,78,5,3,2,

  31,26,5,67,1,12,78,5,3,2,

  31,26,5,67,1,18,78,5,3,2,

  31,26,5,67,1,23,78,5,3,2,

  31,26,5,67,1,1,81,5,3,2,

  31,26,5,67,1,6,81,5,3,2,

  31,26,5,67,1,12,81,5,3,2,

  31,26,5,67,1,18,81,5,3,2,

  31,26,5,67,1,23,81,5,3,2,

  31,26,5,129,0,44,72,2,3,2,

  31,67,0,67,1,45,72,4,3,2,

  31,26,3,67,1,40,72,3,3,2,

  31,26,3,129,0,39,72,2,3,2,

  31,76,0,129,0,56,72,2,3,2,

  31,68,0,67,1,57,72,6,3,2,

  31,26,4,67,1,51,72,4,3,2,

  31,26,3,67,1,59,75,3,3,2,

  31,26,2,67,1,47,78,5,3,2,

  31,26,4,67,0,42,81,20,3,2,

  31,26,14,129,0,19,2,12,3,0,

  27,65,114,100,117,105,110,111,0,129,

  0,32,2,11,3,0,27,67,111,110,

  116,114,111,108,0,129,0,11,68,8,

  3,2,27,76,67,68,49,0,129,0,

  42,68,8,3,2,27,76,67,68,50,

  0,131,1,-1,1,15,5,1,132,31,

  80,97,103,101,49,0,131,0,47,1,

  15,5,2,132,31,80,97,103,101,50,

  0,65,36,18,15,25,25,1,129,0,

  19,9,24,6,1,27,87,97,114,110,

  105,110,103,0,2,1,22,90,17,6,

  1,133,26,31,31,79,78,0,79,70,

  70,0,67,5,22,70,16,5,1,31,

  26,8,67,5,11,42,41,7,1,31,

  26,14,65,34,25,76,10,10,1,2,

  1,23,90,17,7,2,133,26,31,31,

  79,78,0,79,70,70,0,2,1,43,

  90,17,7,2,133,26,31,31,79,78,

  0,79,70,70,0,129,0,3,97,17,

  3,2,27,115,119,105,116,99,104,49,

  95,40,76,105,41,0,129,0,24,97,

  17,3,2,27,115,119,105,116,99,104,

  50,95,40,77,41,0,129,0,44,97,

  15,3,2,27,115,119,105,116,99,104,

  51,95,40,81,41,0,129,0,22,97,

  19,3,1,27,115,119,105,116,99,104,

  49,48,95,40,76,105,41,0,129,0,

  12,75,2,3,2,31,120,0,129,0,

  50,72,2,3,2,31,80,0,129,0,

  32,72,2,3,2,31,61,0,67,1,

  41,78,5,3,2,31,26,3,67,1,

  52,78,5,3,2,31,26,4,67,1,

  57,78,5,3,2,31,26,4,130,0,

  -1,52,64,3,1,25 };

  

// this structure defines all the variables of your control interface 

struct {

 

    // input variable

  uint8_t switch_1; // =1 if switch ON and =0 if OFF

  uint8_t switch_10; // =1 if switch ON and =0 if OFF

  uint8_t switch_2; // =1 if switch ON and =0 if OFF

  uint8_t switch_3; // =1 if switch ON and =0 if OFF

 

    // output variable

  uint8_t led_Man_r; // =0..255 LED Red brightness

  uint8_t led_F_g; // =0..255 LED Green brightness

  uint8_t led_R1_g; // =0..255 LED Green brightness

  uint8_t led_W_r; // =0..255 LED Red brightness

  uint8_t led_M_g; // =0..255 LED Green brightness

  uint8_t led_R2_g; // =0..255 LED Green brightness

  uint8_t led_Auto_g; // =0..255 LED Green brightness

  uint8_t led_Q_g; // =0..255 LED Green brightness

  uint8_t led_R3_g; // =0..255 LED Green brightness

  uint8_t led_Li_g; // =0..255 LED Green brightness

  uint8_t led_Lx_g; // =0..255 LED Green brightness

  uint8_t led_Lm_g; // =0..255 LED Green brightness

  uint8_t led_Fd_g; // =0..255 LED Green brightness

  uint8_t led_Wt_g; // =0..255 LED Green brightness

  uint8_t led_Vn_g; // =0..255 LED Green brightness

  uint8_t led_Fn_g; // =0..255 LED Green brightness

  uint8_t led_Ch_g; // =0..255 LED Green brightness

  uint8_t led_An_g; // =0..255 LED Green brightness

  uint8_t led_Ox_g; // =0..255 LED Green brightness

  char text_HOR[3];  // string UTF8 end zero

  char text_MIN[3];  // string UTF8 end zero

  char text_SEC[3];  // string UTF8 end zero

  char text_JOUR[3];  // string UTF8 end zero

  char text_MOIS[3];  // string UTF8 end zero

  char text_ANNEE[5];  // string UTF8 end zero

  char text_Gi[3];  // string UTF8 end zero

  char text_Gs[3];  // string UTF8 end zero

  char text_T[2];  // string UTF8 end zero

  char text_U[4];  // string UTF8 end zero

  char text_Ts[3];  // string UTF8 end zero

  char text_Ti[3];  // string UTF8 end zero

  char text_Hi[3];  // string UTF8 end zero

  char text_Tx[3];  // string UTF8 end zero

  char text_Hx[3];  // string UTF8 end zero

  char text_Te[3];  // string UTF8 end zero

  char text_At[6];  // string UTF8 end zero

  char text_W[4];  // string UTF8 end zero

  char text_M[3];  // string UTF8 end zero

  char text_F[3];  // string UTF8 end zero

  char text_Li[5];  // string UTF8 end zero

  char text_Lx[5];  // string UTF8 end zero

  char text_Lm[5];  // string UTF8 end zero

  char text_Fd[5];  // string UTF8 end zero

  char text_Wt[5];  // string UTF8 end zero

  char text_Vn[5];  // string UTF8 end zero

  char text_Fn[5];  // string UTF8 end zero

  char text_Ch[5];  // string UTF8 end zero

  char text_An[5];  // string UTF8 end zero

  char text_Ox[5];  // string UTF8 end zero

  char text_C[3];  // string UTF8 end zero

  char text_L[3];  // string UTF8 end zero

  char text_D[4];  // string UTF8 end zero

  char text_P[3];  // string UTF8 end zero

  char text_K[2];  // string UTF8 end zero

  char text_R1[4];  // string UTF8 end zero

  char text_WNoThink[14];  // string UTF8 end zero

  uint8_t led_W0_r; // =0..255 LED Red brightness

  char text_SEC0[8];  // string UTF8 end zero

  char text_WNoThink0[14];  // string UTF8 end zero

  uint8_t led_0_g; // =0..255 LED Green brightness

  char text_Q[3];  // string UTF8 end zero

  char text_R2[4];  // string UTF8 end zero

  char text_R3[4];  // string UTF8 end zero

 

    // other variable

  uint8_t connect_flag;  // =1 if wire connected, else =0

 

} RemoteXY;

#pragma pack(pop)

 

/////////////////////////////////////////////

//           END RemoteXY include          //

/////////////////////////////////////////////

تعاريف مخارج ازرار افتراضية للتحكم بتطبيق الremotXY من الهاتف

#define PIN_SWITCH_1 A0

#define PIN_SWITCH_10 A0

#define PIN_SWITCH_2 A1

#define PIN_SWITCH_3 A2

 

هنا اظافي ليتم التواصل مع الويفي وليعرض بعد اتمام الاتصال حالته باللاد المخصص لذلك

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

byte ip[] = { 192, 168, 8, 101 };

#define Site "http://remotexy.com/"

EthernetClient client; 

===========================================








للتنقل السريع بين أجزاء الموضوع إستخدم الروابط بالأسفل...


(التعرف على مهام ودور الكود + العتاد المطلوب + كيفية طلب العتاد (للجزائريين)
(تحميل المكتبات + بداية شرح الكود / الجزء العلوي فوق void setup)
(شرح الكود / شرح لقسم void setup)
(شرح الكود / شرح لقسم void loop / الجزء "أ" )
(شرح الكود / شرح لقسم void loop / الجزء "ب" )
(شرح الكود / شرح لقسم void loop / الجزء "ج" )
(شرح الكود / شرح لقسم void loop / الجزء "د" + تحميل الكود كامل / المراجع / إمكانية شراء الخدمات المماثلة  )









إذا أعجبك الموضوع يمكنك مشاهدة مواضيع  مشابهة بقسم الأردوينو لاتقل أهمية إضغط هنا  للإنتقال لقسم الأردوينو.


ليصلك جديدنا تابعنا على صفحاتنا الاجتماعية: الفيسبوكالتويتر ,tumblrpinterestlinkedininstagram








ˆFr
وضع القراءة :
حجم الخط
+
16
-
تباعد السطور
+
2
-