Домашние датчики на Arduino: Как измерять температуру, свет и влажность
Домашние датчики на Arduino: Как измерять температуру, свет и влажность

Полная версия

Домашние датчики на Arduino: Как измерять температуру, свет и влажность

Язык: Русский
Год издания: 2026
Добавлена:
Настройки чтения
Размер шрифта
Высота строк
Поля
На страницу:
3 из 3

Проверьте по порядку:

1. Выбран ли тот же порт, на который загружали программу? Если плату отключали и подключали снова, порт мог измениться. Убедитесь также, что другое приложение не заняло этот порт.

2. Совпадает ли скорость? Для приведённого скетча и монитора нужна скорость 9600.

3. Загружен ли именно этот скетч? Проверка кода и его загрузка — разные операции. Убедитесь, что IDE сообщила об успешной загрузке.

4. Есть ли в программе вывод? Ищите Serial.begin(...) и команды Serial.print() или Serial.println() внутри выполняющейся части кода.

5. Используется ли USB-кабель с передачей данных? Если плата получает питание, но компьютер не видит её, причина может быть в кабеле или настройке драйвера.

Если вместо текста идут бессмысленные знаки, начните со скорости монитора. Если текст появился, но значение не меняется при затенении или освещении датчика, проверьте подключение AO, общий контакт земли и правильность номера входа в программе. Убедитесь, что провод подключён к A0, а не к цифровому выходу DO или другому гнезду. Порядок VCC, GND и сигнала сверяйте по маркировке и документации модуля — не полагайтесь только на цвет проводов.

Значения, постоянно близкие к нулю или верхней границе диапазона, тоже повод проверить схему: возможно, вход замкнут на землю или питание, перепутан контакт, либо выход датчика не соответствует пределам платы. Но не объявляйте число «неправдоподобным» только потому, что оно не похоже на ожидаемую яркость. Пока это сырое показание, а не физическая единица измерения.

Что делать с ошибкой компиляции

Если IDE выделила строку и сообщила об ошибке, прочитайте сообщение сверху: нижняя фраза вроде exit status 1 часто лишь сообщает, что сборка не удалась, но не объясняет причину. Ошибка может быть в пропущенной скобке, лишнем символе или названии переменной. Если программа использует библиотеку, IDE может сообщить, что файл не найден. В таком случае проверьте, та ли библиотека нужна для примера, и установите её через менеджер библиотек или способом, описанным производителем.

Особенно важно не пытаться «лечить» ошибку компиляции перестановкой проводов. На этом этапе программа ещё не дошла до платы. И наоборот, если загрузка прошла успешно, но датчик не реагирует, бессмысленно бесконечно менять библиотеки, пока не проверено соединение. Диагностика становится проще, когда вы отделяете программную часть от электрической.

Сделайте первое изменение

Когда исходный скетч заработал, измените только одну вещь. Например, замените delay(1000) на delay(2000). Показания теперь будут появляться примерно раз в две секунды. Или сделайте строку понятнее:

```cpp

Serial.print("Показание AO: ");

Serial.println(rawValue);


Снова загрузите программу и проверьте, что данные продолжают обновляться. Именно так появляется уверенность: вы не просто запустили случайный пример, а понимаете, за что отвечает небольшое изменение.

Для удобства записи можно добавить отметку времени, прошедшего с момента старта платы:

```cpp

Serial.print(millis());

Serial.print('\t');

Serial.println(rawValue);


Теперь в строках будет сначала время в миллисекундах, затем показание. Такую запись легче сравнивать и переносить в таблицу. Но помните: после перезапуска платы отсчёт времени начинается заново.

Заведите журнал первых измерений. Достаточно записать дату, плату и модель датчика, место установки, условия наблюдения и несколько значений. Например:


Условие

Показание


Модуль лежит на столе

418


Затенили ладонью

671


Направили фонарик

295


Это лишь пример, а не ожидаемые нормы: у вашего модуля числа и направление изменения могут быть другими. Ценность журнала в том, что он показывает связь между действием и результатом. Если изменения повторяются, датчик реагирует. Если данные скачут сами по себе, стоит проверить проводку, контакт и то, не оставлен ли аналоговый вход фактически неподключённым.

Монитор порта — не полноценный приборный экран и не обязательно архив показаний. Это первое окно наблюдения, простой способ увидеть, что программа и плата общаются. Позже появятся графики, пересчёт в привычные единицы и сохранение данных. Но надёжные измерения начинаются не с красивой визуализации, а с понятного ответа на вопрос: что именно сейчас считывается и почему число меняется?

Первый результат — не случайность

Если экран ожил, перед вами не просто набор цифр. Это результат нескольких согласованных шагов: выбрана подходящая плата, программа собрана и загружена, монитор настроен на нужную скорость, а датчик подключён к тому входу, который читает код. Если экран молчит, такая же последовательность проверок помогает найти причину без паники и бессистемной смены компонентов.

Запомните простой цикл: прочитать сигнал, при необходимости обработать его, вывести результат. Сначала добейтесь стабильного вывода, затем меняйте формат или частоту и наблюдайте, что изменилось. А когда число начнёт повторяемо откликаться на условия в комнате, вы уже сделали главное: превратили собранную схему в работающий измерительный инструмент. В следующей главе мы перенесём этот навык на конкретный цифровой датчик температуры, для которого важны не только провода, но и правильный способ обмена данными.

Температура под контролем: подключаем и проверяем цифровой датчик

Однажды датчик на столе показал 27 градусов, хотя комнатный термометр у двери упрямо держался возле 22. Arduino ошиблась? Программа сломалась? Или возле компьютера действительно жарче?

Вполне возможно, что ни датчик, ни программа не ошиблись. Температура у вентиляционной решётки ноутбука и температура воздуха в центре комнаты — не одно и то же. К тому же датчик измеряет прежде всего собственную температуру, а она зависит от того, где и как он установлен. Цифра на экране — не готовый ответ о комнате, а свидетельство, которое нужно правильно прочитать.

В этой главе мы подключим цифровой датчик на примере DS18B20, получим первые показания и проверим их не догадками, а последовательным экспериментом. Если у вас другая модель, ход работы останется полезным, но распиновка, библиотека и способ передачи данных могут отличаться. Здесь особенно важно одно правило: сначала документация производителя — потом провода и код.

Сначала выясним, что именно у нас в руках

Конец ознакомительного фрагмента.

Текст предоставлен ООО «Литрес».

Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.

Конец ознакомительного фрагмента
Купить и скачать всю книгу
На страницу:
3 из 3