Isi kandungan:

Mengukur Suhu: 7 Langkah
Mengukur Suhu: 7 Langkah

Video: Mengukur Suhu: 7 Langkah

Video: Mengukur Suhu: 7 Langkah
Video: Percobaan Mengukur Suhu | Video Pembelajaran 2024, Julai
Anonim
Mengukur Suhu
Mengukur Suhu

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

Langkah 1: فكرة لهه للمشروع

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

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

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

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

1: شاشه TFT لعرض حراره الجسمه وهي متصله م عالكاميرا الحراريه التي تظهر ايضا درجه الحراره

2 شاشه LCD وضعنا الشاشه لعرض درجه الحراره رقميا لكي تظهر الحراره رقميا

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

4 الكاميرا: الكاميرا الحرارية: استخدام الكاميرا الحرارية من طريق الشاشه.

5 اردوينو ميجا

Langkah 3: تشغيل المشروع باللوح التجريبي

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

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

Langkah 4: Tentukan PCB

Tentukan PCB
Tentukan PCB
Tentukan PCB
Tentukan PCB

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

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

Langkah 5: الخطوه ما قبل الاخیرہ

الخطوه ما قبل الاخیرہ
الخطوه ما قبل الاخیرہ

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

Langkah 6: الخطوة الاخیرہ

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

Langkah 7: الكود مع شرحها

LCD و SD

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

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

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

تستخدم هذه المستشعرات I2C للتواصل. Tajuk I2C للجهاز هو 0x69

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

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

// هذه تعريفات لأماكن اتصال الحساسات بالأردوينو #define TFT_CS 53 // رقاقة حدد لشاشة TFT #define TFT_RST 9 // يمكنك أيضًا توصيل هذا بإعادة تعيين Arduino // في هذه يادة ، اضبرو هذا # ص #define TFT_DC 8 #define trig 12 # تعريف صدى 11 كاردبين int = 10;

اللون الأزرق الأزرق // المبرمجين للمستقيم (سيكون أزرق على الشاشة) #define 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, 0xE4, 0xEx, 0xEx 0xEB00, 0xEAE0, 0xEAC0, 0xEAA0, 0xEA80, 0xEA60, 0xEA40, 0xF220, 0xF200, 0xF1E0, 0xF1C0, 0xF1A0, 0xF180, 0F160, 0xF1, 0xF180, 0F1, 0x160, 0F1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 // هذا الأمر عقوم بتعقبه 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, 0xEBA, 0xEBA, 0xEBA, 0xEBA, 0xEBA 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, 0xEBA, 0xE80, 0xEBA, 0xEB0, 0xEBA, 0xEX, 0x, 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); 0 0xEB60 0 0xEB40 0 0xEB20 0 0xEB00 0 0xEAE0 0 0xEAC0 0 0xEAA0 0 0xEA80 0 0xEA60 0 0xEA40 0 0xF220 0 0xF200 0 0xF1E0 0 0xF1C0 0 0xF1A0 ، 0xF180 0F1801F18001 0xF800 ،}; // هذا الأمر عقوم بتعقبه Adafruit_ST7735 tft = Adafruit_ST7735 (TFT_CS ، TFT_DC ، TFT_RST); 0 0xEB60 0 0xEB40 0 0xEB20 0 0xEB00 0 0xEAE0 0 0xEAC0 0 0xEAA0 0 0xEA80 0 0xEA60 0 0xEA40 0 0xF220 0 0xF200 0 0xF1E0 0 0xF1C0 0 0xF1A0 0 0xF180 0F1801F180 0xF800 ،}; // هذا الأمر عقوم بتعقبه Adafruit_ST7735 tft = Adafruit_ST7735 (TFT_CS ، TFT_DC ، TFT_RST);

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

// هذه متغيرات لتحديد الكاميرا الحرارية تأخير وقت طويل بدون توقيع ؛ البكسل العائم [AMG88xx_PIXEL_ARRAY_SIZE]; uint16_t displayPixelWidth ، displayPixelHeight;

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

Bersiri1.begin (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 ada."); إذا (SD.remove ("data.txt")) {Serial.println ("تمت إزالة الملف بنجاح"); } Akhirnya {Serial.println ("تعذر إزالة ملف البيانات."); }} //////////////////////////////////////////////// ////// ////// ////////

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

// هذا التابع يعمل بشكل مستمر بعد الانتهاء من التابع الأول // يتكرر تنفيذ الأمر بداخل هذا التابع إلى أن يبدأ تنفيذ الأمر ببدء تنفيذ الأمر في أردوين ، وهو اپریلوم بأداء العمليات في الارون الاران الارني الحرارية من الكاميرا // اقرأ كل البكسل amg.readPixels (بكسل);

////////////////////////////////////////////////// //// //// ////////////////////////////// // هذه الأوامر التي تقوم بالنفاذ إلى النقاط الحرارية //// ////////////////////////////////////////////// //////// //////////////////////////////// تعويم maxx = -99.9; لـ (int i = 0; i

// ارسم البكسل! tft.fillRect (displayPixelHeight * floor (i / 8), displayPixelWidth * (i ٪ 8), displayPixelHeight, displayPixelWidth, camColors [colorIndex]); إذا (حز > maxx) {maxx = بكسل ; }} //////////////////////////////////////////////// ////// ////// //////////////////////////////////

// هذا الأمر انبوم بقياس المسافة والمسافة في قياس المسافة والمسافة تقاس بالـ (سم) dist = sr04. Distance ();

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

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

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

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

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

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

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

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

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

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

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

//lcd.print("Temp: "+ سلسلة (tertera F / 100));

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

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

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

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

} آخر {/ هذه الحرارة جملة من درجات الحرارة إذا كانت درجات الحرارة <= 10220) {// هذا الأمر يظهر على الشاشة ورة "إذهب إلى المنزل" lcd.print ("الشخص إلى المنزل");

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

}} //////////////////////////////////////////////// ////// ////// ////////////////////////////// // هذه الأوامر التي تفتح ملف داخل كرت البحث عن درجات. الحرارة بداخله ////////////////////////////////////////////// //// ////// ////////////////////////////////// file = SD.open ("data.txt" ، FILE_WRITE); إذا (ملف) {String fulldata = "Temp:" + String (darjahF); file.println (فولداتا); fail.tutup (); }

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

} ///////////////////////////////////////////////// //// ///// ////////////////////////////////////} // هذا الأمر شرابوم بتوقيف الكود لمدة 200 ثانية حتى يستقر المتحكم تأخير (200); // هذا الأمر مسلموم بمسح المحتويات من الشاشة lcd.clear ();

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

Disyorkan: