Πίνακας περιεχομένων:
- Βήμα 1: فكرة مختصره للمشروع
- Βήμα 2: العناصر المستخدمه للمشروع
- Βήμα 3: تشغيل المشروع باللوح التجريبي
- Βήμα 4: Επιμύμ PCB
- Βήμα 5: الخطوه ما قبل الاخيره
- Βήμα 6: الخطوة الاخيره
- Βήμα 7: الكود مع περιγραφές
Βίντεο: Μέτρηση της θερμοκρασίας: 7 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:31
هو قياس درجه الحراره باستخدام الكاميرا االحراريه
Βήμα 1: فكرة مختصره للمشروع
في ظل الازمه والجائحه التي يمربها العالم اجمع في محاربه الكوفيد 19 ونسأل الله السلامه والعافيه للجميع وارحم من توفاه الله
فمشروعنا يحتوى على 5 عناصر اساسيه ، وهي كاميرا تقيس الحراراه ، تظهر النتائج كار درجه درجه
Βήμα 2: العناصر المستخدمه للمشروع
1: κλάσματος TFT
2 φοιτητής LCD κατάσταση
3 حساس المسافه: وذلك اذا استشعر حساس المسافه جسم من امامه مباشرة πιθανή βαθμίδα ελευθερίας του τρικ ωκμαίρα الكاميراه
4 الكاميرا: الكاميرا الحرارية: استخدام الكاميرا الحرارية من طريق الشاشه.
5 اردوينو ميجا
Βήμα 3: تشغيل المشروع باللوح التجريبي
التست بورد: هو لوح بلستيكي مسطح الشكل يضم بداخليه محل معدنيه μεταλλήματα του σακλ σφόφ βαάμδε δοκιχντ ελντουαέρ
Χρέος التست بورد باختصار:…
Βήμα 4: Επιμύμ PCB
Πραγματοποιήστε PCB Σημαντικό για την τρέχουσα χρονική περίοδο
ال PCB باختصار:..هي لوح مسطح.
Βήμα 5: الخطوه ما قبل الاخيره
Μετά ما تمت عمليه الطباعه والتحميض و التخريم وتسجيل الاسلاك بالشكل اللائق يكون الشكل الخرجي اصغر ممكن وشكل متناقس وجميل
Βήμα 6: الخطوة الاخيره
الخطوة الاخيره و هي التاكد من المشروع بالشكل المطلوب μετά أن تم وضعه في الصندوق في الشكل المناسب و متناسق
Βήμα 7: الكود مع περιγραφές
LCD και SD
********************************************** ** ** ************************** هذه مكتبة لكاميرا AMG88xx GridEYE 8x8 IR
يصنع هذا الرسم كاميرا حرارية بدقة 64 بكسل مع مستشعر GridEYE وشاشة 128x128 tft
مصمم فقطًا للعمل مع اندلاع Adafruit AMG88 -
Testkhdem هذه المستشعرات I2C للتواصل. Τίτλος 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 (ηχώ, 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 displayPixelWidth, displayPixelHeight;
// هذا التابع يعمل على بدء تشغيل عند الأردوينو الإعداد باطل () {// هذا الأمر يقوم بفتح منفذ تسلسلي μεταξύ الأردوينو والبدء في الأخطاء وعرض البيانات التي تلقيها من الحساسات
Serial1.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 (καρφίτσα, αλόκριση) · إذا (! SD.begin (cardpin)) {Serial.println ("تهيئة تهيئة SD"); }
إذا (SD.exists ("data.txt")) {Serial.println ("data.txt available."); إذا (SD.remove ("data.txt")) {Serial.println ("تمت إزالة الملف بنجاح"); } Τελευταίο {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. Απόσταση ();
/ هذه جملة شرطية إذا كانت المسافة أعلى من 40 سم تنفيذ الأوامر التالية إذا (dist> 40) {
// هذا الأمر يظهر على شاشة الكمبيوتر جملة "أقترب من الحساس" Serial.println ("اقترب");
// هذا الأمر يظهر على الشاشة الصغيرة جملة "أقترب من الحساس" lcd.print ("اقترب أكثر") · } Τέλος {
/ هذه جملة شرطية ، تنفيذ التعليمات التالية إذα (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 * جديد 2 + 32) * 100; intF = (int) درجة F;
// هذا الأمر يدرس درجة الحرارة بالدرجة المئوية بفواصل عشرية على شاشة الكمبيوتر // Παράδειγμα 36.24 درجة مئوية Serial.println (σεجة λίστανχαίτ);
// هذا الأمر يسجل درجة الحرارة بالدرجة المئوية على شاشة الكمبيوتر // Παράδειγμα 36 σεجة Μεοϊة Serial.println (intF);
// هذا الأمر إسناد الكتابة على المحرف الأول في السطر الأول lcd.setCursor (0, 0);
//lcd.print("Temp: "+ سلسلة (درجة F /100));
// ذ ا ة ة تح تح تح تح تح تح تح تح تح تح تح تح تح تح تح تح ة تح تح
المسلسل 1.println (intF), // هذا الأمر إسناد الكتابة على الحرف الأول في السطر الثاني lcd.setCursor (0, 1);
/ هذه الدرجة درجة الحرارة // الدرجات F هي مقياس الدرجة χωρίς الفاصلة العشرية. إذا كانت درجات λίσταنهايت <10040) {// هذا الأمر على الشاشة الصغيرة جملة "هذا الشخص سليم" lcd.print ("الشخص بأمان");
} Τέλος {/ هذه الحرارة جملة من σεجات الحرارة إذا كانت درجات الحرارة <= 10220) {// هذا الأمر يظهر على الشاشة جملة "إذهب إلى المنزل" lcd.print ("الشخص إلى المنزل");
Μου أعلى درجات الحرارة من أعلى الصفحة ، إذهب إلى الطوارئ.
}} /////////////////////////////////////////////// ////// //////////////////////////////////////// هذه الأوامر التي تفتح Μελφ εσωτερικα κρτ αλμπθθ στο σεχοι. الحرارة بداخله //////////////////////////////////////////////// //// ////// ////////////////////////////////////αρχείο = SD.open ("data.txt", FILE_WRITE); إذا (ملف) {String fulldata = "Temp:" + String (degreeF); file.println (فولداتا); file.close (); }
Τελευταίο {// هذا الأمر يظهر على شاشة الكمبيوتر υπάρχει σφάλμα Φι βιβλία Αλβιανάντ Κερτ الذاكرة Serial.println ("خطأ في كتابة ملف البيانات");
} //////////////////////////////////////////////// //// ///// /////////////////////////////////////////////////////////////////////////////////////} // Χίζα الأمر يقوم بتوقيف الكود لمدة 200 ثانية حتى يستقر المتحكم تأخير (200) · // هذا الأمر يقوم بمسح المحتويات من الشاشة lcd.clear ();
} // نهاية الحلقة
Συνιστάται:
4 βήματα για τη μέτρηση της εσωτερικής αντίστασης της μπαταρίας: 4 βήματα
4 βήματα για τη μέτρηση της εσωτερικής αντίστασης της μπαταρίας: Ακολουθούν τα 4 απλά βήματα που μπορούν να σας βοηθήσουν να μετρήσετε την εσωτερική αντίσταση του κτυπήματος
Μέτρηση της θερμοκρασίας χρησιμοποιώντας ADT75 και σωματίδιο φωτονίου: 4 βήματα
Μέτρηση της θερμοκρασίας χρησιμοποιώντας το ADT75 και το σωματίδιο φωτονίου: Το ADT75 είναι ένας πολύ ακριβής, ψηφιακός αισθητήρας θερμοκρασίας. Αποτελείται από αισθητήρα θερμοκρασίας διακένου ζώνης και μετατροπέα αναλογικού σε ψηφιακό 12-bit για παρακολούθηση και ψηφιοποίηση της θερμοκρασίας. Ο εξαιρετικά ευαίσθητος αισθητήρας του το καθιστά αρκετά ικανό για μένα
Μέτρηση της θερμοκρασίας χρησιμοποιώντας AD7416ARZ και σωματίδιο φωτονίου: 4 βήματα
Μέτρηση της θερμοκρασίας με χρήση AD7416ARZ και σωματιδίου φωτονίου: Το AD7416ARZ είναι αισθητήρας θερμοκρασίας 10-bit με τέσσερις αναλογικούς σε ψηφιακούς μετατροπείς ενός καναλιού και ενσωματωμένο αισθητήρα θερμοκρασίας επί του σκάφους. Ο αισθητήρας θερμοκρασίας στα μέρη μπορεί να προσεγγιστεί μέσω καναλιών πολυπλέκτη. Αυτή η θερμοκρασία υψηλής ακρίβειας
Μέτρηση της θερμοκρασίας χρησιμοποιώντας LM75BIMM και σωματίδιο φωτονίου: 4 βήματα
Μέτρηση θερμοκρασίας με χρήση LM75BIMM και Parton Photon: Το LM75BIMM είναι ένας ψηφιακός αισθητήρας θερμοκρασίας ενσωματωμένος με θερμικό φύλακα και έχει δύο καλώδια διασύνδεσης που υποστηρίζει τη λειτουργία του έως 400 kHz. Έχει έξοδο υπερβολικής θερμοκρασίας με προγραμματιζόμενο όριο και υστέρηση. Σε αυτό το σεμινάριο η διεπαφή
Χρησιμοποιήστε πυκνωτές για τη μέτρηση της θερμοκρασίας: 9 βήματα
Χρησιμοποιήστε πυκνωτές για τη μέτρηση της θερμοκρασίας: Αυτό το έργο προέκυψε επειδή αγόρασα ένα κιτ πυκνωτών με πυκνωτές κυρίως X7R (καλής ποιότητας), αλλά μερικές από τις υψηλότερες τιμές 100nF και άνω ήταν το φθηνότερο και λιγότερο σταθερό διηλεκτρικό Y5V, το οποίο παρουσιάζει τεράστια αλλαγή θερμοκρασίας και op