Turinys:
- 1 žingsnis: فكرة مختصره للمشروع
- 2 veiksmas: العناصر المستخدمه للمشروع
- 3 veiksmas: تشغيل المشروع باللوح التجريبي
- 4 žingsnis: PCB pašalinimas
- 5 veiksmas: atlikite veiksmus
- 6 veiksmas: الخطوة الاخيره
- 7 veiksmas: الكود مع شرحها
Video: Temperatūros matavimas: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
هو قياس درجه الحراره باستخدام الكاميرا االحراريه
1 žingsnis: فكرة مختصره للمشروع
في ظل الازمه والجائحه التي يمربها العالم اجمع في محاربه الكوفيد 19 d. الله السلامه والعافيه
فمشروعنا يحتوى على 5 عناصر اساسيه, وهي كاميرا تقيس الحراراه, تظهر النتائج وظهر درجه الحراره الداخليه بالجسم يرمز الاحمر هناك درجه حراره مرتفعه اللون الاخضر يدل على هناك درجه حراره مرتفعه وشاشه تعطي نتائج درجه الحراره للشخص المار امام الكاميرا واخيرا اردوينو ميجا
2 veiksmas: العناصر المستخدمه للمشروع
1: شهاشه TFT لعرض حراره الجسمه وهي متصله م عالكاميرا الحراريه التي تظهر ايضا درجه الحراره
2 ekranų LCD ekranas الشاشه لعرض ارح الحراره رقميا
3 حساس المسافه: وذلك اذا استشعر حساس المسافه جسم من امامه مباشرة احتساب درجه الحراره عن طريق الكاميرا الكام
4 الكاميرا: الكاميرا الحرارية: استخدام الكاميرا الحرارية من طريق الشاشه.
5 اردوينو ميجا
3 veiksmas: تشغيل المشروع باللوح التجريبي
التست بورد: هو لوح بلستيكي مسطح الشكل يضم بداخليه نقاط معدنيه متصله على شكل صفوف واعمده تستخدم الدوائر الالكترن
وظيفة التست بورد باختصار:…
4 žingsnis: PCB pašalinimas
تصميم PCB مهم في حال اردت ان المشروع
ال PCB باختصار:..هي لوح مسطح.
5 veiksmas: atlikite veiksmus
بعد ما تمت عمليه الطباعه والتحميض و التخريم وتسجيل الاسلاك بالشكل اللائق يكون الشكل الخرجي اصغر ممكن وشكل
6 veiksmas: الخطوة الاخيره
الخطوة الاخيره و هي التاكد من المشروع بالشكل المطلوب بعد أن تم وضعه في الصندوق في الشكل الننس
7 veiksmas: الكود مع شرحها
LCD ir SD
************************************************* ** ** *************************** هذه مكتبة لكاميرا AMG88xx GridEYE 8x8 IR
يصنع هذا الرسم كاميرا حرارية 64 psl.
Adafruit AMG88 -
تستخدم هذه المستشعرات I2C للتواصل. Žaidimas I2C, 0x69
تستثمر Adafruit الموارد الموارد فا الكود المصدر ، يمجى دعم أجهزة Adafruit والمصدر المفتوح عن طريق شراء المنفتات من Adafruit
بقلم دين ميلر للصناعات Adafruit. SDرخيص BSD ،مين ن صي نص يصنف في إعادة توزيع ************************************* *************************************** / // هذه المكتبات استدعاءها في بداية الكود عمليةهل كتابة الكود # تضمين // مكتبة الرسومات الأساسية # تضمين // مكتبة خاصة بالأجهزة # تضمين # تضمين # تضمين # تضم # تضم
// هذه تعريفات لأماكن اتصال الحساسات بالأردوينو #define TFT_CS 53 // رقاقة حدد لشاشة TFT #define TFT_RST 9 // يمكنك أيضا توصيل هذا بإعادة تعيين Arduino // في هذه الحالة, اضبط هذا # تعريف الدبوس على 0! #define TFT_DC 8 #define trig 12 #تعريف صدى 11 كاردبين int = 10 ؛
اللون الأزرق الأزرق // المبرمجين للمستقيم (سيكون أزرق على الشاشة) #define MINTEMP 22
Daugiau informacijos apie prekę suteiks mūsų vadybininkai telefonu arba rašykitė į Pagalba internetu
// هذا الأمر يقوم بتعريفه SR04 sr04 = SR04 (echo ، trig) ؛
عنصر عناصر الصورة حجمحج الأبرز // هذا الأمر ي وق بتعقب ذلك ، كريستال_ I2C LCD (0x27 ، 16 ، 2) ؛ // Skystųjų kristalų skystųjų kristalų ekranas 0x27 d. 16 d. // LiquidCrystal LCD (27 d. 28 d. 29 d. 30 d. 31 d. 32 d.)
ملف الملف ؛
يتم حفظ المسافة فيه مسافة طويلة
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 ،
// هذا التابع يعمل على بدء تشغيل عند الأردوينو الإعداد باطل () {// هذا الأمر يقوم بفتح منفذ تسلسلي بين الأردوينو والبدء في الأخطاء وعرض البيانات التي تلقيها من الحساسات Serial.begin (9600);
Serial1.begin (9600) ؛ ///////////////////////////////////////////////////////////////////// //// //// ////////// // هذه الأوامر التي تقوم بعرض البيانات ////////////////////// ////// /////////////////////////////////////////////////////////& lcd.init () ، اضاءه خلفيه ال سى دى () ؛ //////////////////////////////////////////////////////////////////// //// //// //////////
// هذا الأمر يقوم بعرض جملة على شاشة الكمبيوتر توضح أن الكاميرا الحرارية Serial.println (F ("الكاميرا الحرار!")
//////////////////////////////////////////////////////////////////// //////////////// //// ////////////////////////////////////////////////////////////) ته // تهيئة تهيئة ST7735S tft.fillScreen (ST7735_BLACK) ، displayPixelWidth = tft.width () / 8 ؛ displayPixelHeight = tft.height () / 8 ؛ //tft.set الدوران (3) ، /////////////////////////////////////// ///// ///////////////////////
// هذا متغير يتم حفظ حالة الكاميرا الحرارية تعمل / لا تعمل حالة منطقية
// هذا الأمر ، يقوم بالتأكد من أنه يستخدم الكاميرا بشكل صحيح // ، يظهر هذا الحالة. إذا (! الحالة) {Serial.println ("تعذر العثور على مستشعر AMG88xx صالح ، تحقق من تسوية!") ؛ Interneto svetainė (1) ؛ }
Serial.println (" - اختبار الكاميرا الحرارية -") ؛ //lcd.begin(16 ، 2) ؛ ير (100) ؛ // دع المستشعر يصل
//////////////////////////////////////////////////////////////////// //// //// /////// // هذه الأوامر حفظ بحفظ البيانات على الذاكرة الخارجية /////////////////////// ////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////-// (ا (! SD.begin (cardpin)) {Serial.println ("تهيئة تهيئة SD") ؛ }
(ا (SD.exists ("data.txt")) {Serial.println ("data.txt موجود.") (ا (SD.remove ("data.txt")) {Serial.println ("تمت إزالة الملف بنجاح") } آخر {Serial.println ("تعذر إزالة ملف البيانات.") ؛ }} /////////////////////////////////////////////////////////////- ////// /////// ////////
} // نهاية الإعداد
// هذا التابع يعمل بشكل مستمر بعد الانتهاء من التابع الأول // يتكرر تنفيذ الأمر بداخل هذا التابع إلى أن يبدأ تنفيذ الأمر ببدء تنفيذ الأمر في أردوين, وهو يقوم بأداء العمليات في الأردوينو حلقة فارغة () {// هذا الأمر يقوم بقراءة جميع النقاط الحرارية من الكاميرا // اقرأ كل البكسل amg.readPixels (بكسل)
//////////////////////////////////////////////////////////////////// //// //// /////////////////////////////////////////////////////////////////// //// ///////////////////////////////////////////////////////////////// //////// /////////////////////////////////////////////////////////// تعويم maxx = -99,9 ؛ لـ (int i = 0 ؛ i
// ارسم البكسل! tft.fillRect (displayPixelHeight * grindys (i / 8) ، displayPixelWidth * (i ٪ 8) ، displayPixelHeight ، displayPixelWidth ، camColors [colorIndex]) ؛ (ا (حز > maxx) {maxx = بكسل ؛ }} /////////////////////////////////////////////////////////////- ////// ////// /////////////////////////////////////////////////
// هذا الأمر يقوم بقياس المسافة والمسافة في قياس المسافة والمسافة تقاس بالـ (سم) dist = sr04. Distance () ؛
/ هذه جملة شرطية إذا كانت المسافة أعلى من 40 سم تنفيذ الأوامر التالية إذا (dist> 40) {
// هذا الأمر يظهر على شاشة الكمبيوتر جملة "أقترب من الحساس" Serial.println ("اقترب") ؛
// هذا الأمر يظهر على الشاشة الصغيرة جملة "أقترب من الحساس" lcd.print ("اقترب أكثر") ؛ } آخر {
/ هذه جملة شرطية ، تنفيذ التعليمات التالية إذا (dist <6) {// هذا الأمر يظهر على شاشة الكمبيوتر جملة "أبتعد ع Ser Ser Ser.
// هذا الأمر يظهر على الشاشة الصغيرة جملة "أبتعد عن الحساس" lcd.print ("اذهب أبعد") ؛ }
نفذت الإجراءات التالية التالية {
// هذه تظهر تظهر على شاشة الكمبيوتر المسافة بالـ (سم) Serial.print (Dist) ؛ Serial.println ("سم") ؛
هذه الأوامر التي بحساب درجة الحرارة بالدرجة تعويم newmax = دائري ((maks. + 5,25 + (dist / 9)) * 100) ؛ Newويم new2 = newmax / 100 درجات تعويم F = (جديد 2) ؛ // (1,8 * 2 + 32) * 100 intF = (int) درجة F ؛
// هذا الأمر يدرس درجة الحرارة بالدرجة المئوية بفواصل عشرية على شاشة الكمبيوتر // مثال 36.24 درجة مئوية Serial.printl (// هذا الأمر يسجل درجة الحرارة بالدرجة المئوية على شاشة الكمبيوتر // مثال 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) {// هذا الأمر يظهر على الشاشة جل l (((((((((((((((("".
من أعلى درجات الحرارة من أعلى الصفحة ، إذهب إلى الطوارئ.
}} /////////////////////////////////////////////////////////////- ////// ////// ////////////////////////////////////////////// ملف داخل كرت البحث عن درجات. الحرارة بداخله ////////////////////////////////////////////// //// ////// /////////////////////////////////////////////////?hl=lt_failas = SD.open „data.txt“(FILE_WRITE) ؛ (ا (ملف) {String fulldata = "Temp:" + String (laipsnių F) ؛ file.println (فولداتا) ؛ file.close () ؛ }
آخر {// هذا الأمر يظهر على شاشة الكمبيوتر وجود خطأ في كتابة البيانات على كرت الذاكرة Serial.println ("خطأ في كتا ت ف)")
} /////////////////////////////////////////////////////////////- //// ///// ////////////////////////////////////////////////////- يقوم بتوقيف الكود لمدة 200 ثانية حتى يحتىر المتحكم تأخير (200) // هذا الأمر يقوم بمسح المحتويات من الشاشة lcd.clear () ؛
} // نهاية الحلقة
Rekomenduojamas:
Temperatūros matavimas naudojant „XinaBox“ir termistorių: 8 žingsniai
Temperatūros matavimas naudojant „XinaBox“ir termistorių: išmatuokite skysčio temperatūrą naudodami analoginį „XinaBox“įvestį xChip ir termistoriaus zondą
Temperatūros matavimas naudojant AD7416ARZ ir Raspberry Pi: 4 žingsniai
Temperatūros matavimas naudojant AD7416ARZ ir Raspberry Pi: AD7416ARZ yra 10 bitų temperatūros jutiklis su keturiais vieno kanalo analoginiais ir skaitmeniniais keitikliais ir įmontuotu temperatūros jutikliu. Temperatūros jutiklį prie dalių galima pasiekti naudojant multiplekserio kanalus. Ši aukšto tikslumo temperatūra
Temperatūros matavimas naudojant STS21 ir Arduino Nano: 4 žingsniai
Temperatūros matavimas naudojant STS21 ir Arduino Nano: STS21 skaitmeninis temperatūros jutiklis pasižymi puikiu našumu ir taupo vietą. Jis teikia kalibruotus, linijinius signalus skaitmeniniu I2C formatu. Šio jutiklio gamyba pagrįsta CMOSens technologija, kuri priskiriama pranašesniam
Automatinis temperatūros matavimas ir balso pranešimas: 5 žingsniai (su nuotraukomis)
Automatinis temperatūros matavimas ir balso pranešimas: pastaruoju metu visas pasaulis kovoja su virusu Covid19. Pirmiausia tikrinant, ar nėra paveiktų žmonių (ar įtariama, kad tai buvo padaryta), matuojama kūno temperatūra. Taigi šis projektas sukurtas pagal modelį, kuris gali automatiškai išmatuoti kūno temperatūrą ir informuoti
Temperatūros matavimas naudojant ADT75 ir „Arduino Nano“: 4 žingsniai
Temperatūros matavimas naudojant ADT75 ir Arduino Nano: ADT75 yra labai tikslus skaitmeninis temperatūros jutiklis. Jį sudaro juostos tarpo temperatūros jutiklis ir 12 bitų analoginis-skaitmeninis keitiklis, skirtas temperatūrai stebėti ir skaitmeninti. Dėl labai jautraus jutiklio man jis yra pakankamai kompetentingas