جدول المحتويات:
- الخطوة 1: WiFi ESP8266 NodeMcu ESP-12E
- الخطوة الثانية: مستشعر الأشعة تحت الحمراء
- الخطوة 3: عرض OLED
- الخطوة 4: التجميع
- الخطوة 5: المكتبات
- الخطوة 6: كود المصدر
فيديو: مستشعر الأشعة تحت الحمراء مع ESP8266: 6 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:41
هدفنا هذه المرة هو إنشاء برنامج يقرأ درجة الحرارة المحيطة لأي جسم يشير إلى جهاز الاستشعار الخاص بنا. للقيام بذلك ، سنستخدم في هذا المشروع عقدة ESP8266MCU ، ومستشعر الأشعة تحت الحمراء MLX90614 ، وشاشة OLED 96 بوصة ، والتي ستعرض بيانات درجة الحرارة.
الخطوة 1: WiFi ESP8266 NodeMcu ESP-12E
الخطوة الثانية: مستشعر الأشعة تحت الحمراء
مستشعر الأشعة تحت الحمراء MLX90614 المستخدم في هذا الإعداد هو في الواقع نوع من كاميرات الفيديو. إنه يلتقط الصور عبر CCD (جهاز Charged Coupled Device) ، وهو نظام مشابه جدًا للنظام المستخدم في الكاميرات الرقمية الثابتة. وبالتالي ، فإنه يسجل كمية الأشعة تحت الحمراء الخارجة من الجسم ، وبهذه الكمية ، فإنه يحسب درجة الحرارة. إنه دقيق للغاية.
الخطوة 3: عرض OLED
الخطوة 4: التجميع
هذا مخطط بسيط للغاية. لدي جدول هنا يسمح بالتخيل السهل.
ESP8266 - OLEDD5 - SCL
D7 - SDA
D3 - الدقة
D4 - DC
D8 - CS
3 ، 3 فولت - VCC
GND - GND
ام ال اكس 90614
D1 - SCL
D2 - SDA
3 ، 3 فولت - VCC
GND - GND
الخطوة 5: المكتبات
لاستخدام شاشة OLED ، أضف مكتبة "Adafruit-GFX-Library-master" التالية.
ما عليك سوى الوصول إلى "Sketch >> Include Libraries >> Manage Libraries…"
أضف أيضًا مكتبة "Adafruit Unified Sensor" التالية.
روابط التنزيل الخاصة بالمكتبات موجودة في ملف PDF ، المتاح أدناه مباشرة.
الخطوة 6: كود المصدر
سنبدأ بتعريف المكتبات والثوابت التي سنستخدمها خلال الكود الخاص بنا.
# تتضمن // Biblioteca para I2C # include // Biblioteca para comunicação com o sensor #include // Biblioteca para propriedades gráficas #include // Biblioteca para comunicação com dipsplay OLED // pinagem para o NodeMCU ESP8266 # D5 #define cs D8 #define rst D3 #define dc D4 // definição das cores que serão utilizadas #define BLACK 0x0000 #define WHITE 0xFFFF // definição da socenada onde escreveremos cada um dos dados #define POS_X_AMBOSE 2 #define POS_Y_OBJETO 55 #define POS_X_TITULO 10 #define POS_Y_TITULO 4 // construtor do objeto para comunicar com o display OLED Adafruit_SSD1331 display = Adafruit_SSD1331 (cs، dc، mosi، sclk، rst) ؛ // objeto responsável pela comunicação com o sensor infravermelho IRTherm sensor؛ // variáveis que armazenarão o valor das temperature lidas float tempAmbiente؛ تعويم درجة الحرارة
اقامة
في وظيفة الإعداد () ، سنقوم بتهيئة هدف الاتصال الخاص بنا مع المستشعر ، وكذلك موضوع الاتصال بالشاشة. فيما يلي بعض الإعدادات لكل منهم.
إعداد باطل () {// Inicializa sensor de temperature infravermelho sensor.begin () ؛ // سيليسيونا درجة الحرارة em Celsius sensor.setUnit (TEMP_C) ؛ // podemos ainda utilizar TEMP_F para Fahrenheit // ou TEMP_K para Kelvin // inicializa o objeto para comunicarmos com o display OLED display.begin () ؛ // pinta a tela toda de preto display.fillScreen (أسود) ؛ // configura o tamnaho do texto que escreveremos em tela display.setTextSize (0) ؛ // configura a cor branca para o texto display.setTextColor (WHITE) ؛ // os comandos abaixo posicionam o cursor no (x، y) desejado para a seguir escrevermos em tela display.setCursor (POS_X_TITULO، POS_Y_TITULO) ؛ display.print ("TEMPERATURA") ؛ display.setCursor (POS_X_TITULO + 20، POS_Y_TITULO + 15) ؛ display.print ("(") ؛ display.print ((char) 247) ؛ // símbolo de graus display.print ("C)") ؛ display.setCursor (POS_X_AMBIENTE، POS_Y_AMBIENTE) ؛ display.print ("AMB:") ؛ // AMBIENTE display.setCursor (POS_X_OBJETO، POS_Y_OBJETO) ؛ display.print ("OBJ:") ؛ // OBJETO}
حلقة
في وظيفة الحلقة () ، دعنا نقرأ بيانات المستشعر ، ثم نعرضها على شاشة OLED.
// chamamos o método "read" do sensor para realizar a leitura da tempAmbiente // read retornará 1 caso consiga realizar a leitura، ou 0 caso contário if (sensor.read ()) {// recupera a leitura da Temperatura do ambiente tempAmbiente = sensor.ambient () ؛ // recupera a leitura da tematura do objeto apontado pelo sensor tempObjeto = sensor.object () ؛ // limpa a área onde colocamos o valor da temperatura do ambiente e do objeto display.fillRect (POS_X_AMBIENTE + 35، POS_Y_AMBIENTE، 35، 10، BLACK) ؛ display.fillRect (POS_X_OBJETO + 35، POS_Y_OBJETO، 35، 10، BLACK) ؛ // posiciona o cursor e escreve عرض درجة حرارة محيطة. setCursor (POS_X_AMBIENTE + 35، POS_Y_AMBIENTE) ؛ display.print (tempAmbiente) ؛ display.print ((char) 247) ؛ // simbolo de graus // posiciona o cursor e escreve a temperature objeto que o sensor está apontando display.setCursor (POS_X_OBJETO + 35، POS_Y_OBJETO) ؛ display.print (tempObjeto) ؛ display.print ((char) 247) ؛ // simbolo de graus} تأخير (1000) ؛ // interalo de 1 segundo para a próxima leitura}
موصى به:
مصباح الأشعة تحت الحمراء (الأشعة تحت الحمراء) الجزء 2: 3 خطوات
مصباح الأشعة تحت الحمراء (الأشعة تحت الحمراء) الجزء -2: مرحبًا يا شباب ، لقد عدت مع الجزء 2 من مصباح الأشعة تحت الحمراء (الأشعة تحت الحمراء) القابل للتوجيه. إذا لم تكن قد رأيت الجزء الأول ، فانقر هنا ، فلنبدأ … دائرة إضاءة بسيطة بالأشعة تحت الحمراء للمساعدة في الرؤية الليلية لكاميرات الدوائر التلفزيونية المغلقة. رؤية ليلية بإضاءة الأشعة تحت الحمراء ، باسم
مصباح الأشعة تحت الحمراء (الأشعة تحت الحمراء) الجزء 1: 5 خطوات
مصباح الأشعة تحت الحمراء (الأشعة تحت الحمراء) الجزء -1: مرحبًا … في هذا الدليل ، سوف نتعلم قليلاً عن الرؤية الليلية ، وطرق مختلفة لتحقيق الرؤية الليلية ودائرة إضاءة بالأشعة تحت الحمراء بسيطة للمساعدة في الرؤية الليلية لكاميرات CCTV. يوضح الشكل الرسم التخطيطي لدائرة IR Illumina
ميزان حرارة يعمل بالأشعة تحت الحمراء لا يلامس من أردوينو - ميزان حرارة قائم على الأشعة تحت الحمراء باستخدام Arduino: 4 خطوات
ميزان حرارة يعمل بالأشعة تحت الحمراء لا يلامس من أردوينو | ميزان حرارة قائم على الأشعة تحت الحمراء باستخدام Arduino: مرحبًا يا رفاق في هذه التعليمات ، سنقوم بعمل مقياس حرارة بدون تلامس باستخدام اردوينو. نظرًا لأن درجة حرارة السائل / الصلب في بعض الأحيان تكون مرتفعة جدًا أو منخفضة ومن ثم يصعب الاتصال بها وقراءتها درجة الحرارة ثم في هذا المشهد
Adafruit SI1145 مستشعر الأشعة فوق البنفسجية / الضوء المرئي / الأشعة تحت الحمراء - اردوينو وشاشات الكريستال السائل: 4 خطوات
Adafruit SI1145 مستشعر الأشعة فوق البنفسجية / الضوء المرئي / الأشعة تحت الحمراء - Arduino و LCD: يستخدم هذا المشروع مستشعر Adafruit SI1145 للأشعة فوق البنفسجية / الضوء المرئي / الأشعة تحت الحمراء لحساب تصنيف الأشعة فوق البنفسجية الحالي. لم يتم استشعار الأشعة فوق البنفسجية مباشرة. بدلاً من ذلك ، يتم حسابها كدالة للضوء المرئي وقراءات الأشعة تحت الحمراء. عندما اختبرت ذلك في الخارج ،
جهاز تحكم عن بعد بالأشعة تحت الحمراء وجهاز استقبال الأشعة تحت الحمراء (TSOP1738) مع Arduino: 10 خطوات
جهاز التحكم عن بعد بالأشعة تحت الحمراء وجهاز استقبال الأشعة تحت الحمراء (TSOP1738) مع Arduino: هذا التوجيه مخصص للمبتدئين في Arduino. هذا أحد مشاريعي السابقة مع Arduino. لقد استمتعت كثيرًا عندما صنعتها وأتمنى أن تنال إعجابك أيضًا. الميزة الأكثر جاذبية لهذا المشروع هي "التحكم اللاسلكي". وهذا هو