Përmbajtje:
- Hapi 1: فكرة مختصره للمشروع
- Hapi 2: العناصر المستخدمه للمشروع
- Hapi 3: تشغيل المشروع باللوح التجريبي
- Hapi 4: Përzgjedh PCB
- Hapi 5: الخطوه ما قبل الاخيره
- Hapi 6: الخطوة الاخيره
- Hapi 7: الكود مع përshkاها
Video: Matja e temperaturës: 7 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:10
هو قياس درجه الحراره باستخدام الكاميرا االحراريه
Hapi 1: فكرة مختصره للمشروع
في ظل الازمه والجائحه التي يمربها العالم اجمع في محاربه الكوفيد 19 ونسأل الله السلامه والعافيه للجميع وارحم من توفاه الله
فمشروعنا يحتوى على 5 عناصر اساسيه ، وهي كاميرا تقيس الحراراه ، تظاهر النتائج وظيفه درجه الحراره الداخليه بالجسم يرمز الاحمر هناك درجه حراره مرتفعه اللون الاخضر يدل على هناك درجه حراره مرتفعه وشاخو خيريا
Hapi 2: العناصر المستخدمه للمشروع
1: شاخه TFT لعرض حراره الجسمه وهي متصله م عالكاميرا الحراريه التي تظهر ايضا درجه الحراره
2 skenë LCD وضعنا الشاشه لعرض درجه الحراره رقميا لكي تظهر الحراره رقميا
3 حساس المسافه: وذلك اذا استشعر حساس المسافه جسم من امامه مباشرة احتساب درجه الحراره عن طريق الكاميرا الكاميراه
4 الكاميرا: الكاميرا الحرارية: përdorimi Alkamira الحرارية من طريق الشاشه.
5 اردوينو ميجا
Hapi 3: تشغيل المشروع باللوح التجريبي
التست بورد: هو لوح بلستيكي مسطح الشكل يضم بداخليه مناطق معدنيه متصله على شكل صفوف واعمده تستخدم الدوائر الالكترونيه
Detyra e detyrës së baktës:…
Hapi 4: Përzgjedh PCB
PCM e rëndësishme tani për tani në të gjithë botën
Al PCB باختصار:..هي لوح مسطح.
Hapi 5: الخطوه ما قبل الاخيره
Pas ما تمت عمليه الطباعه والتحميض و التخريم وتسجيل الاسلاك بالشكل اللائق يكون الشكل الخرجي اصغر ممكن وشكل متناقس وجميل
Hapi 6: الخطوة الاخيره
الخطوة الاخيره و هي التاكد من المشروع بالشكل المطلوب pastaj أن تم وضعه في الصندوق في الشكل المناسب و متناسق
Hapi 7: الكود مع përshkاها
LCD dhe SD
*********************************************** ** ** ************************************************************** 8x8 IR
يصنع هذا الرسم كاميرا حرارية بدقة 64 بكسل مع مستشعر GridEYE وشاشة 128x128 tft
مصمم فقطًا للعمل مع اندلاع Adafruit AMG88 -
تستخدم هذه المستشعرات I2C للتواصل. Titulli I2C للجهاز هو 0x69
تستثمر Adafruit الموارد الموارد در هذا الكود المصدر ، يرجى دعم أجهزة Adafruit والمصدر المفتوح عن طريق شراء المنتجات من Adafruit!
بقلم دين ميلر للصناعات Adafruit. ترخيص BSD ، تضمین نص في نص يصنف في إعادة توزيع *********************************** ************************************* // // هذه المكتبات استدعاءها في بداية الكود عمليةهل كتابة الكود # تضمين // مكتبة الرسومات الأساسية # تضمینين
// هذه تعريفات لأماكنين الحساسات بالأردوينو #define TFT_CS 53 // رقاقة حدد لشاشة TFT #define TFT_RST 9 // يمكنك أيضًا përshkيل هذا بإعادة تعيين Arduino // في هذه الذب ، احساس! #define TFT_DC 8 #define trig 12 #تعريف صدى 11 كاردبين int = 10;
اللون الأزرق الأزرق // المبرمجين للمستقيم (سيكون أزرق على الشاشة) #define MINTEMP 22
الشاشة باللون الأحمر // المدى العالي للمستشعر (سيكون أحمر علي الشاشة) # تعريف MAXTEMP 34
// هذا الأمر يقوم بتعريفه SR04 sr04 = SR04 (jehonë, trig);
عنصر عناصر الصورة ، حجمه الأبرز // هذا الأمر ، يقوم بتعقب ذلك ، كريستال_ I2C lcd (0x27, 16, 2); // قاسية عمق titulli 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 ekranPixelWidth, displayPixelHeight;
// هذا التابع يعمل على بدء تشغيل عند الأردوينو الإعداد باطل () {// hذa الأمر يقوم بفتح منفذ تسلسلي بين الأردوينو والبدء في الأخطاء وعرض البيانات التي تلقيها من الحساسات
Serial1.fill (9600); //////////////////////////////////////////////////////////////// //// //// ///////////////////////////////////////////////////////////////////////////////////////////////// // ////// //////////////////////////////////// lcd.init (), lcd.init (), اضاءه خلفيه الى دى (); //////////////////////////////////////////////////////////////// //// //// ///////////
// هذا الأمر يقوم بعرض جملة على شاشة الكمبيوتر توضح أن الكاميرا الحرارية Serial.println (F ("الكاميرا الحرارية AMG88xx!"));
///////////////////////////////////////////////////////////////// //// //// /////////// // هذه الأوامر التي تقوم برفع الشاشة وعرض طولها وعرضها /////////////////////// //// /////////////////////////////////////////tft.initR (INITR_144GREENTAB), // تهيئة تهيئة ST7735S tft.fillScreen (ST7735_BLACK), displayPixelWidth = tft.width () / 8; displayPixelHeight = tft. lartësi () / 8; //tft.set الدوران (3), //////////////////////////////////////// ///// ////////////////////////
// هذا متغير يتم حفظ حالة الكاميرا الحرارية تعمل / لا تعمل حالة منطقية
// هذا الأمر ، يقوم بالتأكد من أنه يستخدم الكاميرا بشكل صحيح // ، يظهر هذا الحالة. إذا (! الحالة) {Serial.println ("تعذر العثور على مستشعر AMG88xx salah, arriti të bëj!"); Midisma (1); }
Serial.println (" - Zgjedh الكاميرا الحرارية -"); //lcd.filloj (16, 2); تأخير (100); // lut المستشعر يصل
///////////////////////////////////////////////////////////////// //// //// /////// // هذه الأوامر تختص بحفظ البيانات على الذاكرة الخارجية ////////////////////////// ////// ///////////////////////////////// pinMode (kartë kartoni, الإخراج); إذا (! SD.begin (cardpin)) {Serial.println ("تهيئة تهيئة SD"); }
إذا (SD.ekziston ("data.txt")) {Serial.println ("data.txt gjendet."); إذا (SD.remove ("data.txt")) {Serial.println ("تمت إزالة الملف بنجاح"); } Fund {Serial.println ("تعذر إزالة ملف البيانات."); }} ///////////////////////////////////////////////// ////// ///////////////
} // نهاية الإعداد
// هذا التابع يعمل بشكل مستمر بعد الانتهاء من التابع الأول // يتكرر تنفيذ الأمر بداخل هذا التابع إلى أن يبدأ تنفيذ الأمر ببدء تنفيذ الأمر في أردوين, وهو يمو يمو اموو الحرارية من الكاميرا // اقرأ كل البكسل amg.readPixels (بكسل);
////////////////////////////////////////////////////////////////// //// ////////////////////////////////// // // هذه الأوامر التي تقوم بالنفاذ إلى النقاط الحرارية //// ////////////////////////////////////////////////////////// //////// ////////////////////////////////// تعويم maxx = -99.9; لـ (int i = 0; i
// ارسم البكسل! tft.fillRect (ekranPixelHeight * kat (i / 8), ekranPixelWidth * (i ٪ 8), displayPixelHeight, displayPixelWidth, camColors [colorIndex]); إذا (حز > maxx) {maxx = بكسل ; }} ///////////////////////////////////////////////// ////// /////////////////////////////////////////
// هذا الأمر يقوم بقياس المسافة والمسافة در قياس المسافة والمسافة تقاس بالـ (سم) dist = sr04. Distanca ();
/ هذه جملة شرطية إذا كانت المسافة أعلى من 40 سم تنفيذ الأوامر التالية إذا (dist> 40) {
// هذا الأمر يظهر على شاشة الكمبيوتر جملة "أقترب من الحساس" Serial.println ("اقترب");
// هذا الأمر يظهر على الشاشة الصغيرة جملة "أقترب من الحساس" lcd.print ("اقترب أكثر"); } Fund {
/ هذه جملة شرطية ، تنفيذ التعليمات التالية إذa (dist <6) {// هذا الأمر يظهر على شاشة الكمبيوتر جملة "أبتعد عن الحساس" Serial.println ("Shko më tej");
// هذا الأمر يظهر على الشاشة الصغيرة جملة "أبتعد عن الحساس" lcd.print ("اذهب أبعد"); }
نفذت الإجراءات التالية التالية {
// هذه تظهر تظهر على شاشة الكمبيوتر المسافة بالـ (سم) Serial.print (Dist); Serial.println ("سم");
هذه الأوامر التي بحساب درجة الحرارة بالدرجة تعويم newmax = دائري ((maxx + 5.25 + (dist / 9)) * 100); تعويم new2 = newmax / 100; درجات تعويم F = (i ri 2); // (1.8 * جديد 2 + 32) * 100; intF = (int) درجة F;
// هذا الأمر يدرس درجة الحرارة بالدرجة المئوية بفواصل عشرية على شاشة الكمبيوتر // Shembull 36.24 درجة مئوية Serial.println (nëجة listnhait);
// هذا الأمر يسجل درجة الحرارة بالدرجة المئوية على شاشة الكمبيوتر // Shembull 36 nëجئوي مئوية Serial.println (intF);
// Hiza الأمر إسناد الكتابة على المحرف الأول في السطر الأول lcd.setCursor (0, 0);
//lcd.print("Temp: "+ سلسلة (درجة F /100));
// ذ ا در در ة تح ة ة تح ة تح ة ة تح تح ة ة تح تح ة تح ة ة int int RING int int int
المسلسل 1.println (intF), // Hذa الأمر إسناد الكتابة على الحرف الأول في السطر الثاني lcd.setCursor (0, 1);
/ هذه الدرجة درجة الحرارة // الدرجات F هي مقياس الدرجة pa الفاصلة العشرية. إذا كانت درجات لیستنهايت <10040) {// هذا الأمر على الشاشة الصغيرة جملة "هذا الشخص سليم" lcd.print ("الشخص بأمان");
} Fund {/ هذه الحرارة جملة من درجات الحرارة إذا كانت درجات الحرارة <= 10220) {// هذا الأمر يظهر على الشاشة جملة "إذهب إلى المنزل" lcd.print ("الشخص إلى المنزل");
Unë أعلى درجات الحرارة من أعلى الصفحة ، إذهب إلى الطوارئ.
}} ///////////////////////////////////////////////// ////// ////// //////////////////////////////// // هذه الأوامر التي تفتح ملف brenda كرت البحث عن درجات. الحرارة بداخله ///////////////////////////////////////////////////////// //// //////////////////////////////////////////fajli = SD.hapur ("data.txt", FILE_WRITE); إذا (ملف) {String fulldata = "Temp:" + String (gradëF); file.println (فولداتا); skedar.mbyll (); }
Fundi {// Hidhra Alumer Yazher Ali Shoshة Alkmbiuter ekziston një gabim në Libra Albianët kundër Kret Elizakre Serial.println ("gabimi në libër ملف البيانات");
} ////////////////////////////////////////////////// //// ///// ///////////////////////////////////////////////////////} يقوم بتوقيف الكود لمدة 200 ثانية حتى يستقر المتحكم تأخير (200); // هذا الأمر يقوم بمسح المحتويات من الشاشة lcd.qartë ();
} // نهاية الحلقة
Recommended:
Matja e temperaturës duke përdorur XinaBox dhe një termistor: 8 hapa
Matja e temperaturës duke përdorur XinaBox dhe një termistor: Matni temperaturën e një lëngu duke përdorur një input analog xChip nga XinaBox dhe një sondë termistori
Matja e temperaturës duke përdorur AD7416ARZ dhe Raspberry Pi: 4 hapa
Matja e Temperaturës duke Përdorur AD7416ARZ dhe Raspberry Pi: AD7416ARZ është sensor i temperaturës 10-Bit me katër konvertues analogë me ato dixhitale me një kanal të vetëm dhe një sensor të temperaturës në bord të inkorporuar në të. Sensori i temperaturës në pjesë mund të arrihet përmes kanaleve multiplexer. Kjo temperaturë me saktësi të lartë
Matja e temperaturës duke përdorur STS21 dhe Arduino Nano: 4 hapa
Matja e temperaturës duke përdorur STS21 dhe Arduino Nano: Sensori dixhital i temperaturës STS21 ofron performancë superiore dhe një hapësirë që kursen hapësirë. Ai siguron sinjale të kalibruara, të linearizuara në formatin digjital, I2C. Prodhimi i këtij sensori bazohet në teknologjinë CMOSens, e cila i atribuohet eprorit
Matja automatike e temperaturës dhe zëri Informoni: 5 hapa (me fotografi)
Matja e Temperaturës Automatike & Zëri Informoni: Ditët e fundit, e gjithë bota po lufton me virusin Covid19. Kontrolli i parë për personat e prekur (ose të dyshuarit për efekt) është matja e temperaturës së trupit. Pra, ky projekt është bërë për një model që mund të masë temperaturën e trupit automatikisht dhe të informojë me anë të
Matja e temperaturës duke përdorur ADT75 dhe Arduino Nano: 4 hapa
Matja e temperaturës duke përdorur ADT75 dhe Arduino Nano: ADT75 është një sensor dixhital i temperaturës shumë i saktë. Përbëhet nga një sensor i temperaturës së hendekut të brezit dhe një konvertues analog me dixhital 12-bit për monitorimin dhe digjitalizimin e temperaturës. Sensori i tij shumë i ndjeshëm e bën atë mjaft kompetent për mua