Подключаем Max6675 к Ардуино

12-03-2020, 16:21 0 комментариев
Преобразователь на базе микросхемы Max6675 – отличное решение для внедрения в любой современный проект. Данное устройство широко применяется для измерения как высоких, так и низких температурных показаний различных нагревательных (и не только) приборов и элементов (печей, каминов, котлов и бойлеров, паяльников и т.д.), а также в системах вентиляции и кондиционирования. Кроме того, датчик температуры термопары пригодится для усовершенствования контроля на соответствующем газовом оборудовании. Все это говорит нам о значительных преимуществах датчика, его функциональности и стабильности в работе.

Для справки: термопара отличается от иных температурных датчиков невысокой стоимостью, хорошей скоростью измерения и большим диапазоном рабочих температур (до 600 ºC).

Давайте разберем технические характеристики датчика подробнее:
  • напряжение питания: 3,0 - 5,5 V;
  • диапазон напряжения на выходе: от -6 до +20 мВ;
  • диапазон измеряемых температур чипом: 0 - 800 °C;
  • точность измерений: +-2°C;
  • тип шины: SPI;
  • длина кабеля: 0,5 – 1 м.

Подключение Max6675 к Ардуино

Теперь рассмотрим сборку адаптера и его подключение. Для этой цели нам понадобятся следующие аппаратные компоненты:
  1. Микроконтроллер Arduino Uno (Arduino Nano также подойдет)
  2. Модуль преобразователя сигнала термопары Max6675
  3. Соединительные провода
Вот что у нас получилось:
Схема простая, но ее можно модернизировать, добавив дополнительное «железо» (например, LCD экран).
Чтобы реализовать проект, нам понадобится скачать и инсталлировать специализированный софт – библиотеку с одноименным названием MAX6675.


Она необходима для соединения по интерфейсу SPI и для более быстрой прошивки и программирования. Архив с ПО открываем и сохраняем в среде разработки IDE в папке libraries.

Прописываем проверочный скетч:
#include "max6675.h"

int thermoDO = 2;  //он же SO
int thermoCS = 3;
int thermoCLK = 4;  //он же SCK

MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);

int vccPin = 5;  //пин для питания
int gndPin = 6;  //пин для земли

void setup() {
  Serial.begin(9600);
  //активируем питание и землю
  pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH);
  pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW);
  Serial.println("MAX6675 test");
  //ждем стабилизации чипа MAX
  delay(500);
}

void loop() {
  //Выводим показания в монитор порта
  Serial.print("C = ");
  Serial.print(thermocouple.readCelsius());
  Serial.print(";   F = ");
  Serial.println(thermocouple.readFahrenheit());
  delay(300);
}
Для вывода значений температуры в градусах по Цельсию и по Фаренгейту используются опции readCelsius() и readFahrenheit().
Управлять модулем будем через Serial Monitor (монитор COM-порта). Открываем его как обычно через меню Инструменты. В нем "побегут" нужные нам данные.
На этом пока прощаемся. Хороших вам проектов!
Поделись в социальных сетях:
О авторе
Калугин Антон

Программист микроконтроллеров с 8-ми летним стажем, работал в таких компаниях как IBM, ASUS, Microsoft.

В комментариях с радостью отвечу на ваши вопросы.

Все статьи автора
Похожие новости

Сегодня поговорим о том, как воплотить в жизнь подключение FPM10A к Arduino, что это за модуль, где используется, каковы параметры его работы и т.д. Речь идет...

GSM модуль NEOWAY M590 – один из самых простых и бюджетных контроллеров, с помощью которого можно совершать звонки, принимать ∕ отправлять SMS-сообщения, а...

В новом информационном обзоре рассматриваем GSM модуль SIM800L к Arduino. Почему выбрано именно это устройство? Во-первых, оно достаточно известно и популярно...

В этой статье обсуждаем подключение датчика температуры DS18B20 к Arduino. О подобных устройствах мы говорили мало, но это не означает, что их редко...

В этой статье мы рассмотрим подключение ADS1115 к Ардуино. Речь идет о 16-битном аналого-цифровом преобразователе, оснащенном 4 входами непосредственно для...

Оставить комментарий