Подключаем к ардуино MLX90614 IR-TERMOMETER MODULE 28040 - модуль для бесконтактного измерения температуры

Датчик представляет собой небольшую платку с установленным на ней термочувствительным сенсором, четырех контактным разъемом.
VCC- контакт для подключения напряжения питания 3,3 Вольт.
GND- контакт для подключения общего провода.
SDA- последовательный интерфейс.
SCL- последовательный интерфейс.
Один из примеров использования датчика будет такой:
Подключаем питание 3,3 Вольт к плате сенсора.
SDA вывод платы сенсора подключаем к Arduino на аналоговый вход А4.
SCL вывод платы сенсора подключаем к Arduino на аналоговый вход А5


Arduino pin:MLX90614 pin:
GNDGND
+3.3vVCC (+2.8-3.6v)
A5SCL (I²C Clock)
A4SDA (I²C Data)

Product schematicКартинки по запросу MLX90614

Готовый же модуль с обвязкой выглядит вот так

 Похожее изображение

Голый модуль же можно подключать по следующей схеме но тогда нужно будет указать другие пины в коде (А4,А5)

Картинки по запросу mlx90614 arduino

Купить такой можно дешевле всего на Алиэкспресс  MLX90614 

Запишем в Arduino вот такой скетч:

  1. #include <i2cmaster.h>
  2. void setup(){
  3. Serial.begin(9600);
  4. Serial.println("Setup...");
  5.  
  6. i2c_init(); //Initialise the i2c bus
  7. PORTC = (1 << PORTC4) | (1 << PORTC5);//enable pullups
  8. }
  9.  
  10. void loop(){
  11. int dev = 0x5A<<1;
  12. int data_low = 0;
  13. int data_high = 0;
  14. int pec = 0;
  15.  
  16. i2c_start_wait(dev+I2C_WRITE);
  17. i2c_write(0x07);
  18.  
  19. // read
  20. i2c_rep_start(dev+I2C_READ);
  21. data_low = i2c_readAck(); //Read 1 byte and then send ack
  22. data_high = i2c_readAck(); //Read 1 byte and then send ack
  23. pec = i2c_readNak();
  24. i2c_stop();
  25.  
  26. //This converts high and low bytes together and processes temperature, MSB is a error bit and is ignored for temps
  27. double tempFactor = 0.02; // 0.02 degrees per LSB (measurement resolution of the MLX90614)
  28. double tempData = 0x0000; // zero out the data
  29. int frac; // data past the decimal point
  30.  
  31. // This masks off the error bit of the high byte, then moves it left 8 bits and adds the low byte.
  32. tempData = (double)(((data_high & 0x007F) << 8) + data_low);
  33. tempData = (tempData * tempFactor)-0.01;
  34.  
  35. float celcius = tempData - 273.15;
  36.  
  37. Serial.print("Celcius: ");
  38. Serial.println(celcius);
  39.  
  40. delay(1000); // wait a second before printing again
  41. }

Записав скетч в Arduino и включив монитор порта, мы можем видеть как меняются показания датчика в зависимости от его направления. На рисунке представлен результат измерения температуры ладони, поднесенной к датчику на 10 см.
Прикрепленное изображение: Снимок экрана от 2015-04-19 21:12:13.png 


 Подписывайся на Geek каналы :

➤ VK - https://vk.com/denis_geek

➤ VK - https://vk.com/club_arduino

➤ VK - https://vk.com/chinagreat

➤ VK - https://vk.com/solar_pover

➤ VK - https://vk.com/my_vedroid

➤ VK - https://vk.com/3dprintsumy

➤ Youtube - http://www.youtube.com/c/Danterayne



★ Моя партнёрка с Aliexpress ★

http://ali.pub/1j9ks1 

★ Получай 10.5% скидку с любой покупки на Aliexpress! ★

http://ali.pub/1lx67o

★ Полезное браузерное приложение для кэшбэка  ★

http://ali.pub/1lx637


  • Подключаем к ардуино MLX90614 IR-TERMOMETER MODULE 28040 - модуль для бесконтактного измерения температуры

Похожие статьи

Arduino - что это такое? Популярно для начинающих

Arduino - что это такое? Популярно для начинающих

Arduino это недорогая, доступная в смысле покупки электронная плата с микроконтроллером и выводами входов-выходов. Arduino выпускаются в различных версиях, но поддерживают один и тот же, простой язык программирования. Огромный успех Ардуино, с уважением к другим микроконтроллерам, связан с тем, что аппаратное и программное обеспечение были опубликованы в открытом бесплатном для общего пользования виде: вы можете читать, изучать и даже расширять его возможности как в плане программного обеспечения, так и с точки зрения аппаратных средств. Вся информация об Ардуино доступна под лицензией "Creative Commons Attribution-ShareAlike 3.0 License".

Arduino UNO как осциллограф

Arduino UNO как осциллограф

Контроллеры Arduino можно использовать как простейший осциллограф, для наблюдения за быстро изменяющимися электрическими сигналами.

Скачиваем программу Processing , после чего её устанавливать не нужно - она запускается с EXE-файла.

 Подключение OLED I2C дисплея с размером экрана 0,96″ и разрешением 128*64 точек к плате Arduino UNO.

Подключение OLED I2C дисплея с размером экрана 0,96″ и разрешением 128*64 точек к плате Arduino UNO.

Сегодня мы рассмотрим подключение OLED I2C дисплея с размером экрана 0,96″ и разрешением 128*64 точек к плате Arduino UNO.

Начало работы с Digispark., а для кого то просто  ATtiny85 с USB . Установка драйверов и работа с arduino IDE

Начало работы с Digispark., а для кого то просто ATtiny85 с USB . Установка драйверов и работа с arduino IDE

Немного вступления про саму платку DIgispark и  модификацию с привычным нам USB портом на базе МК Атини 85ATtiny85 — это как раз то, что отлично подходит для многих вещей, где полноценные Arduino-совместимые платы вроде Pro Mini, Uno и, тем более, Mega избыточны. Причем конкретно эта штука хороша тем, что на ней можно быстро, без паутины проводов и программаторов обкатать код, который потом будет трудиться в чем-то готовом.


Теги: Подключаем, ардуино, MLX90614, IR-TERMOMETER, MODULE 28040, модуль для бесконтактного, измерения, температуры,