ዝርዝር ሁኔታ:

የሙቀት መጠንን መለካት -7 ደረጃዎች
የሙቀት መጠንን መለካት -7 ደረጃዎች

ቪዲዮ: የሙቀት መጠንን መለካት -7 ደረጃዎች

ቪዲዮ: የሙቀት መጠንን መለካት -7 ደረጃዎች
ቪዲዮ: የበርሃማነትና የሙቀት መጠንን ለመከላከል ትኩረት ሰጥቶ እየሰራ እንደሚገኝ የታች አርማጭሆ ወረዳ ግብርና ጽህፈት ቤት አሰታወቀ 2024, ህዳር
Anonim
የሙቀት መጠንን መለካት
የሙቀት መጠንን መለካት

هو قياس درجه الحراره ستخداستخدام الكميرا االحراريه

ደረጃ 1 ፦ ةرة مختصره للمشروع

ظي ظل الازمه والجائحه التي يمربها العالم اجمع في محاربه الكوفيد 19 ونسأل الله السلامه والعافيه للجميع وارحم من توفاه الله

فمشروعنا يحتوى على 5 عناصر اساسيه, وهي كاميرا تقيس الحراراه, تظهر النتائج وظهر درجه الحراره الداخليه بالجسم يرمز الاحمر هناك درجه حراره مرتفعه اللون الاخضر يدل على هناك درجه حراره مرتفعه وشاشه تعطي نتائج درجه الحراره للشخص المار امام الكاميرا واخيرا اردوينو ميجا

ደረጃ 2 - العناصر المستخدمه للمشروع

العناصر المستخدمه للمشروع
العناصر المستخدمه للمشروع
العناصر المستخدمه للمشروع
العناصر المستخدمه للمشروع
العناصر المستخدمه للمشروع
العناصر المستخدمه للمشروع

1 ፦ ፋሲል ትረስት عراره الجسمه وهي متصله م عالكاميرا الحراريه التي تظهر ايضا درجه الحراره

2 شاشه ኤልሲዲ (LCD)

3 ساس المساذ وذلك اذا استشعر حساس المسافه جسم من اممم مباشرة حتساحتس درجه الحراره عن طريق الكاميرا الكاميراه

4 ኣልዒመሪራ ኣላሕምራሕ ኣልራሕራሕ ኣኽኣም ኣልማዕራሕ ኣልራሕሪኢን መን ረሲዕካ ኣላ።

5 አሩدይኖ መኢያ

ደረጃ 3 تشغيل المشروع باللوح التجريبي

التست دورد هو لوح بلستيكي مسطح الشكل يضم بدالله قنقا معديه متصله على شكل صفوف واعمده تستخدم الدوائر الالكترونيه

وظيفة التست دورد ختصاختصار:…

ደረጃ 4 تصميم PCB

PCميم PCB
PCميم PCB
PCميم PCB
PCميم PCB

تصميم PCB مهم في حال اردتن المشروع

ال PCB باختصار:..هي لوح مسطح.

ደረጃ 5 - الخطوه ما قبل الاخيره

الخطوه ما قبل الاخيره
الخطوه ما قبل الاخيره

بعد ما تمت عمليه الطباعه والتحميض و التخريم وتسجيل الاسلاك بالشكل اللائق يكون الشكل الخرجي اصغر ممكن وشكل متناقس وجميل

ደረጃ 6 - الخطوة الاخيره

الخطوة الاخيره و هي التاكد من المشروع بالشكل المطلوب بعدن تم وضعه في الصندوق في الشكل المناسب و متناسق

ደረጃ 7: الكود مع شرحها

ኤልሲዲ እና ኤስዲ

*************************************************** ** ** *************************** هذه مكتبة لاميرا AMG88xx GridEYE 8x8 IR

يصنع هذا الرسم ماميرا حرارية بدقة 64 عل مع مستشعر GridEYE وشاشة 128x128 tft

مصمم فقطًا للعمل منعناع Adafruit AMG88 -

هذهم هذه المستشعرات I2C للتواصل. ونوان I2C ሌላሴ 0و 0x69

رمر Adafruit الموارد الموارد هذي هذا الكود المصدر يرجى دعم أجهزة Adafruit والمصدر المفتوح عن طريق شراء المنتجات من Adafruit!

ملم دين ميلر للصناعات Adafruit. خرخيص BSD ، يمين نصي صي صيصنف إعي إعادة توزيع ************************************* *************** *************************** / // هذه المكتبات استدعاءها في بداية الكود عمليةهل كتابة الكود # አማን // مكتبة الرسومات الأساسية # አማን // مكتبة خاصة بالأجهزة # يمين # تضمين # يمين # تضمين # تضمين // # አሜን #

// تعريفات لماكن اتصال الحساساب أالأردونو #define TFT_CS 53 // رقاقة شلشاTTT #defiine TFT_RST 9 // كمكنك أيضًا تيص ةيع دةيدة دةيدة دةادة دةيدة دةادة دةيف دةيدة دةيدة دةيف دةيف دةيف دةيف دةيدة دةيف دةيف دةيف دةيف دةيف دةيف دةيف دةيف دةيف دةيف دةاف دة ف ف ف ف ف ف ف ف? #መግለፅ TFT_DC 8 #define trig 12 #فريف صدى 11 دباردبين int = 10 ؛

اللون الأزرق الأزرق // المبرمجين للمستقيم (سيكون أزرق على الشاشة) #ተወሰነ MINTEMP 22

الشاشة باللون الأحمر // المدى العالي للمستشعر (سيكون أحمر على الشاشة) # تعريف MAXTEMP 34

// أا الأمر يقوم بتعريفه SR04 sr04 = SR04 (echo ، trig) ؛

صنصر عناصر الصورة ، حجمه الأبرز // أا الأمر ي،وم بتعقب ذلك كريستال_ I2C lcd (0x27 ، 16 ، 2) ؛ // ሳቂይ عمق عنوان LCD على 0x27 عرض 16 حرا وخطن // LiquidCrystal LCD (27 ، 28 ، 29 ، 30 ، 31 ، 32) ؛

ملف الملف ؛

تمحفظ حفظ المسافة فيه مسافة طويلة

0xDEA0, 0xDE80, 0xDE80, 0xE660, 0xE640, 0xE620, 0xE600, 0xE5E0, 0xE5C0, 0xE5A0, 0xE580, 0xE560, 0xE540, 0xE520, 0xE500, 0xE4E, 0x20, 0xE4C0, E4A0, 0x4E, 0xEBA0, 0xEB80, 0xEB60, 0xEB40, 0xEB20, 0xEB00, 0xEAE0, 0xEAC0, 0xEAA0, 0xEA80, 0xEA60, 0xEA40, 0xF220, 0xF200, 0xF1E0, 0xF1C0, 0xF1A0, 0xF180, 0F160, 0xF1, 0xF180, 0F160, 0xF1, 0xF180, 0F160, 0xF060, 0xF040, 0xF020, 0xF800,}; // أا الأمر يقوم بتعقبه Adafruit_ST7735 tft = Adafruit_ST7735 (TFT_CS ፣ TFT_DC ፣ TFT_RST) ؛ 0xE5A0, 0xE580, 0xE560, 0xE540, 0xE520, 0xE500, 0xE4E0, 0xE4C0, 0xE4A0, 0xE480, 0xE460, 0xEC40, 0xEC20, 0xEC00, 0xEBE0, 0xEBC0, 0xEBA0, 0xEB80, 0xEB60, 0xEBA0, 0xEB80, 0xEB, 0x00, 0xEA80, 0xEA60, 0xEA40, 0xF220, 0xF200, 0xF1E0, 0xF1C0, 0xF1A0, 0xF180, 0xF160, 0xF140, 0xF100, 0xF0E0, 0xF0C0, 0xF0A0, 0xF080, 0xF060, 0xF040, 0xF020, 0xF0800, 0xF040, 0xF020: // هذا الأمر يقوم بتعقبه Adafruit_ST7735 TFT = Adafruit_ST7735 (TFT_CS ፣ TFT_DC ፣ TFT_RST) ؛ 0xE5A0, 0xE580, 0xE560, 0xE540, 0xE520, 0xE500, 0xE4E0, 0xE4C0, 0xE4A0, 0xE480, 0xE460, 0xEC40, 0xEC20, 0xEC00, 0xEBE0, 0xEBC0, 0xEBA0, 0xEB80, 0xEB60, 0xEBA0, 0xEB80, 0xEB, 0x00 0xEA80, 0xEA60, 0xEA40, 0xF220, 0xF200, 0xF1E0, 0xF1C0, 0xF1A0, 0xF180, 0xF160, 0xF140, 0xF100, 0xF0E0, 0xF0C0, 0xF0A0, 0xF080, 0xF060, 0xF040, 0xF020: // هذا الأمر يقوم بتعقبه Adafruit_ST7735 TFT = Adafruit_ST7735 (TFT_CS, TFT_DC, TFT_RST)., 0xEB60, 0xEB40, 0xEB20, 0xEB00, 0xEAE0, 0xEAC0, 0xEAA0, 0xEA80, 0xEA60, 0xEA40, 0xF220, 0xF200, 0xF1E0, 0xF1C0, 0xF1A0, 0xF180, 0xF160, 0xF140, 0 xF0100, 0xF160, 0xF140, 0F100, 0xF1, 0xF020, 0xF800 ،} ؛ // أا الأمر يقوم بتعقبه Adafruit_ST7735 tft = Adafruit_ST7735 (TFT_CS ፣ TFT_DC ፣ TFT_RST) ؛, 0xEB60, 0xEB40, 0xEB20, 0xEB00, 0xEAE0, 0xEAC0, 0xEAA0, 0xEA80, 0xEA60, 0xEA40, 0xF220, 0xF200, 0xF1E0, 0xF1C0, 0xF1A0, 0xF180, 0xF160, 0xF140, 0 xF0100, 0xF160, 0xF140, 0F100, 0xF1, 0xF020, 0xF800 ،} ؛ // أا الأمر يقوم بتعقبه Adafruit_ST7735 tft = Adafruit_ST7735 (TFT_CS ፣ TFT_DC ፣ TFT_RST) ؛

// أا الأمر يقوم بتعريف عنصر الكاميرا الحرارية Adafruit_AMG88xx amg

// هذه متغيرات لتحدي الداميرا الحرارية رير وقت طويل بدون توقيع البكسل العائم [AMG88xx_PIXEL_ARRAY_SIZE] ؛ uint16_t ማሳያ ፒክሴል ስፋት ، ማሳያ ፒክሰል ከፍታ ؛

// تا التابع يعمل على تشغيل عند الأردوينو الإعداد باطل () {// أا الأمر يقوم بفتح منفذ تسلسلي بين الأردوينو والبدء في الأخطاض العاء العاء العاء

ተከታታይ 1. መነሻ (9600) ؛ ///////////////////////////////// //// //// //////////// // هذه الأوامر التي تقم بعرض البيانات /////////// ////// ////////////////////////////// ////////// lcd.init () ، lcd.init () ، اضاءه خلفيه ال سى دى) () ؛ ///////////////////////////////// //// //// ////////////

// أا الأمر يقوم بعرض جملة على شاشة الكمبيوتر توضح أن الكاميرا الحرارية Serial.println (F ("الكاميرا الحرارية AMG88xx!")) ؛

//////////////////////////////// //// //// //////////// // هذه الأوامر التي تقم برفع الشاشة وعرض طولها وعرضها/ //// ////////////////////////////////////////// tft.initR (INITR_144GREENTAB) ، // تهيئة تهيئة ST7735S tft.fillScreen (ST7735_BLACK) ، displayPixelWidth = tft.width () / 8 ؛ displayPixelHeight = tft.height () / 8 ؛ //tft.set الدوران (3) ، /////////////////// ///// //////////////////////////

// تغا متغير يتم حفظالة الكاميرا الحرارية لمل / لا تعمل حالة منطقية

// أا الأمر ، قيمم بالتأكد من أنه ستخديم الكاميرا صحل صحيح // ، ظهير هذا الحالة. (ا (! الحالة) {Serial.println ("عثر العثور على مستشعر AMG88xx صالح ، تحقق من تسوية!") ؛ نينما (1) ؛ }

Serial.println (" - اختبار الكاميرا الحرارية -") ؛ //lcd.begin (16 ، 2) ؛ رير (100) ؛ // دع المستشعر يصل

/////////////////////////////// //// //// ///////// // هذه الأوامر تختص بحفظ البيانات على الذاكرة الخارجية ///////////////// ////// ///////////////////////////////////// pinMode (cardpin ، الإخراج) ؛ (ا (! SD.begin (cardpin)) {Serial.println ("تهيئة تهيئة SD") ؛ }

(ا (SD.exists ("data.txt")) {{Serial.println ("data.txt ሙሱ.") ؛ (ا (SD.remove ("data.txt"))) {Serial.println ("تمت إزالة الملف بنجاح") ؛ } {ر {Serial.println ("تعذر إزالة ملف البيانات") ؛ }} //////////////////////////////// ////// ////// ////////

} // نهاية الإعداد

// هذا التابع يعمل بشكل مستمر بعد الانتهاء من التابع الأول // يتكرر تنفيذ الأمر بداخل هذا التابع إلى أن يبدأ تنفيذ الأمر ببدء تنفيذ الأمر في أردوين, وهو يقوم بأداء العمليات في الأردوينو حلقة فارغة () {// هذا الأمر يقوم بقراءة جميع النقاط الحرارية من الكاميرا // اقرأ كل البكسل amg.readPixels (بكسل) ؛

/////////////////////////////// //// //// /////////////////// //// //////////////////////////////// //////// ///////////////// لـ (int i = 0 ؛ i

// ኢራም البكسل! tft.fillRect (displayPixelHeight * ፎቅ (i / 8) ، displayPixelWidth * (i -8) (ا (حز > maxx) {maxx = بكسل ؛ }} ////////////////////////////// ////// ////// ////////////////////////////////

// أا الأمر يقوم بقياس المسافة والمسافة في قياس المسافة والمسافة تقاس بالـ (سم) dist = sr04. ርቀት () ؛

/ هذهملة شرطية كا كانت المسافة أعلى من 40 سم تنفيذ الأوامر التالية إذا (dist> 40) {

// أا الأمر يظهر على شاشة الكمبيوتر جملة "برب من الحساس" Serial.println ("اقترب") ؛

// أا الأمر يظهر على الشاشة الصغيرة جملة "أقترب من الحساس" lcd.print ("اقترب أكثر") ؛ } {ر {

/ هذهملة شرطية ،نفيذ التعليمات التالية إذا (dist <6) {// أا الأمر يظهر على شاشة الكمبيوتر جملة "أبتعد عن الحساس" Serial.println (")

// أا الأمر يظهر على الشاشة الصغيرة جملة "أبتعد عن الحساس" lcd.print ("اذهب أبعد") ؛ }

نفذت الإجراءات التالية التالية {

// هذهر تظهر على شاشة الكمبيوتر المسافة بالـ (سم) Serial.print (Dist) ؛ Serial.println ("سم") ؛

أ الأوامر التي بحساب درجة الحرارة بالدرجة تعويم newmax = دائري ((maxx + 5.25 + (dist / 9)) * 100) ؛ Newويم new2 = newmax / 100 ؛ جرجات تعويم F = (جديد 2) ؛ // (1.8 * جديد 2 + 32) * 100 ؛ intF = (int) درجة F ؛

// أا الأمر يدرس درجة الحرارة دالدرجة المئوية صواصل عشرية على شاشة الكمبيور // مثال 36.24 درجة مئوية Serial.println (درجة فهرن)

// أا الأمر يسجل درجة الحرارة بالدرجة المئوية على شاشة الكمبيوتر // مثال 36 درجة مئوية Serial.println (intF) ؛

// أا الأمر إسناد الكتابة على المحرف الأول في السطر الأول lcd.setCursor (0 ، 0) ؛

//lcd.print("Temp: "+ سلسلة (درجة F /100)) ؛

// أا الأمر يقود إلى درجة الحرارة الصغيرة بعدويل درجة الحرارة إلى مصفوفة محارف STRING lcd.print ("جةرجة الحرارة:" + سلس ةردرة)

المسلسل 1.println (intF) ،

// أا الأمر إسناد الكتابة على الحرف الأول في السطر الثاني lcd.setCursor (0 ، 1) ؛

/ هذه الدرجة درجة الحرارة // الدرجات F هي مقياس الدرجة بدون الفاصلة العشرية. كا كانت درجات فهرنهايت <10040) {// أا الأمر على الشاشة الصغيرة جملة "هذا الشخص سليم" lcd.print ("الشخص بأمان") ؛

} آخر {/ هذه الحرارة جملة من درجات الحرارة إذا كانت درجات الحرارة <= 10220) {// هذا الأمر يظهر على الشاشة جملة "إذهب إل"

من أعلى درجات الحرارة من أعلى الصفحة إذهب إذهبلى الطوارئ.

}} //////////////////////////////// ////// ////// /////////////// ملف داخل كرت البحث عن درجات. الحرارة بداخله //////////////////////////// //// ////// //////////////////////////////// ፋይል = ኤስዲ. ክፍት ("data.txt" ، FILE_WRITE) ؛ (ا (ملف) {String fulldata = "Temp:" + String (degreesF) ؛ file.println (فولداتا) ؛ file.close () ؛ }

{ر {// هذا الأمر يظهر على شاشة الكمبيوتر وجود خطأ في كتابة البيانات على كرت الذاكرة Serial.println ("خطأ في كتابة ملف البيانات")

} ///////////////////////////////// //// ///// /////////////////////////// ኢይሱም بتوقيف الكود لمدة 200 نانية حتى ستقر المتحكم تأخير (200) ؛ // أا الأمر يقوم بمسح المحتويات من الشاشة lcd.clear () ؛

} // نهاية الحلقة

የሚመከር: