Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05
Дорогие друзья, добро пожаловать на очередной урок!
Сегодня мы узнаем, как использовать этот аналоговый вольтметр с Arduino и заставить его показывать температуру вместо напряжения. Как видите, в этом модифицированном вольтметре мы можем видеть температуру в градусах Цельсия. Температура измеряется этим цифровым датчиком DS18B20 и затем отображается на вольтметре. Мне очень нравятся такие аналоговые циферблаты, потому что они придают проектам винтажный вид.
Создавая этот проект, вы получите очень ценные знания и опыт. Знание добавления аналоговых циферблатов в любой проект Arduino, и вы узнаете, как использовать функциональность PWM Arduino
Давайте теперь посмотрим, как добиться этого результата.
Шаг 1. Получите все детали
Детали, которые нам понадобятся сегодня, следующие:
- Arduino Uno ▶
- Датчик DS18B20 ▶
- Аналоговый вольтметр ▶
- Провода 3 в 1 ▶
- Power Bank ▶
Стоимость проекта около 9 долларов.
Шаг 2: Датчик температуры DS18B20
DS18B20 - это цифровой термометр, который точно измеряет температуру в диапазоне от -10 ° C до + 85 ° C, а также включает функции сигнализации и точки срабатывания.
Это очень простой датчик, поскольку он использует интерфейс One-Wire. Итак, нам нужно подключить только один провод, чтобы он заработал! Я много использовал этот датчик в прошлом, и я собираюсь много использовать его в будущем из-за его простоты использования и точности.
Стоимость датчика составляет около 2 долларов.
Вы можете получить его здесь ▶
Шаг 3: Аналоговый вольтметр постоянного тока 0-5 В
Это недорогой аналоговый вольтметр постоянного тока. Он имеет диапазон от 0 до 5 В постоянного тока. Он очень прост в использовании, вы просто подключаете провода к источнику напряжения, и он будет отображать напряжение.
Я считаю этот вольтметр очень полезным из-за его диапазона. Мы можем легко вывести любое напряжение от 0 до 5 В с цифрового вывода Arduino, используя функцию ШИМ. Таким образом, мы можем контролировать положение иглы по своему желанию! Таким образом мы можем построить любой аналоговый измеритель, который нам нравится! Мы можем создавать потрясающие проекты, используя вольтметры, подобные этому.
Стоимость вольтметра около 2,5 долларов.
Вы можете получить его здесь ▶
Шаг 4: Как управлять вольтметром с помощью Arduino
Сначала давайте посмотрим, как управлять вольтметром с помощью Arduino. Подключаем положительный полюс вольтметра к цифровому выводу 9, а отрицательный - к GND. Поскольку Arduino Uno не предлагает цифро-аналоговый преобразователь, мы должны использовать один из выводов PWM, чтобы записать аналоговое значение на цифровой вывод Arduino. Широтно-импульсная модуляция - это метод получения аналоговых результатов с помощью цифровых средств. Вместо того, чтобы записывать HIGH на цифровой вывод, с помощью PWM мы отправляем импульс. ШИМ прикреплен к определенным контактам Arduino Uno. Рядом с цифровыми контактами, поддерживающими ШИМ, есть этот символ ~.
Чтобы отправить значение вольтметру, мы используем команду analogWrite и записываем значение от 0 до 255. Итак, если мы напишем 0, вольтметр покажет 0 В, а если мы напишем 255, вольтметр покажет 5 В. Мы можем записать любое другое значение от 0 до 255, вольтметр перейдет в соответствующее положение. Итак, если мы хотим, чтобы вольтметр показывал 2,5 В, мы должны вызвать команду analogWrite (9, 128). Большой! Теперь мы можем управлять стрелкой вольтметра по своему желанию!
Шаг 5: создание аналогового термометра
Преобразуем вольтметр в термометр.
Сначала нам нужно подключить датчик DS18B20. Мы подключаем контакт со знаком - к Arduino GND, контакт со знаком + к 5 В и сигнальный контакт к цифровому контакту 2. Вот и все.
Теперь нам нужно подготовить приборную панель. Откручиваю эти винты и снимаю эту металлическую пластину. Затем нам нужно создать для него собственное лицо. Я разработал простой с помощью Photoshop. На самом деле создание лица заняло у меня гораздо больше времени, чем создание самого проекта, поэтому, чтобы сэкономить ваше время, я прикреплю файл в этом руководстве. Теперь все, что нам нужно сделать, это распечатать циферблат панельного счетчика и приклеить его на место. Если мы загрузим код и включим проект, мы увидим, что он работает нормально! Если прикоснуться к сенсору, температура быстро поднимется. Наш аналоговый термометр готов!
Шаг 6: Код проекта
Давайте теперь быстро взглянем на код проекта, чтобы понять, как он работает.
Нам понадобится библиотека DallasTemperature в коде для компиляции. Получить здесь:
Код очень простой. Сначала мы считываем температуру с датчика. Затем мы передаем значение температуры в функцию temperatureToPWM. Эта функция преобразует температуру в значение ШИМ от 0 до 255 с помощью функции карты. Затем все, что нам нужно сделать, это записать это значение ШИМ на вольтметр. Вы также можете определить максимальную и минимальную температуру, которую может отображать панельный измеритель, изменив значения глобальных переменных MIN_TEMP и MAX_TEMP. Чем меньше разница между этими двумя значениями, тем большее разрешение будет предлагать панельный измеритель.
Вы можете найти код проекта здесь. Также вы можете посетить сайт проекта, чтобы получить последнюю версию кода ▶
Шаг 7: Тестирование проекта
Как видите, наш Аналоговый термометр работает нормально! Это очень простой в реализации проект, и он выглядит так здорово!
Мне очень нравится внешний вид этих аналоговых панельных измерителей, поэтому я собираюсь построить с ними множество проектов. В следующем видео я спроектирую и напечатаю на 3D-принтере винтажный корпус для аналогового термометра, который мы построили сегодня. Я собираюсь использовать Arduino nano, чтобы сделать вещи более компактными, и добавить несколько желтых рассеянных светодиодов для освещения панели в ночное время. Думаю будет круто.
Хотелось бы услышать ваше мнение по этому поводу? Вам нравятся аналоговые панельные счетчики, и если да, то какие проекты вы собираетесь строить с их помощью? Пожалуйста, оставляйте свои комментарии в разделе комментариев ниже и не забывайте ставить лайки этим инструкциям, если они вам интересны. Спасибо!
Рекомендуемые:
Аналоговый интерфейс для осциллографа: 6 шагов (с изображениями)
Аналоговый интерфейс для осциллографа: дома у меня есть несколько дешевых звуковых USB-карт, которые можно купить на Banggood, Aliexpress, Ebay или в других глобальных интернет-магазинах за несколько долларов. Мне было интересно, для чего их можно использовать, и я решил попробовать сделать низкочастотный прицел для ПК с
Великолепный аналоговый синтезатор / орган, использующий только дискретные компоненты: 10 шагов (с изображениями)
Великолепный аналоговый синтезатор / орган, использующий только дискретные компоненты: аналоговые синтезаторы очень круты, но их довольно сложно сделать, поэтому я хотел сделать один настолько простым, насколько это возможно, чтобы его работа была легко понятной. нужно несколько базовых подсхем: Простой генератор с сопротивлением
Басовый барабан TR 808. Аналоговый звук !: 5 шагов (с изображениями)
Басовый барабан TR 808. Analog Sound !: Аналоговый звук классической драм-машины. Этот проект восходит к концу 90-х, когда я работал техником-электронщиком, и мы обычно получали набор схем по цене. TR 808 был на тех схемах, и в тот момент я подумал, что
Бесконтактный инфракрасный термометр на базе Arduino - ИК-термометр с использованием Arduino: 4 шага
Бесконтактный инфракрасный термометр на базе Arduino | ИК-термометр с использованием Arduino: Привет, ребята, в этой инструкции мы сделаем бесконтактный термометр с использованием Arduino, поскольку иногда температура жидкости / твердого вещества слишком высока или слишком низка, и тогда трудно установить контакт с ним и прочитать его температура тогда в этом сценарии
Настольный аналоговый источник питания DIY с прецизионным ограничителем тока: 8 шагов (с изображениями)
Настольный аналоговый источник питания DIY с прецизионным ограничителем тока: в этом проекте я покажу вам, как использовать знаменитый LM317T с силовым транзистором усилителя тока и как использовать усилитель считывания тока Linear Technology LT6106 для прецизионного ограничителя тока. использовать до более 5А