Оглавление:
- Шаг 1: вам нужно
- Шаг 2: Создайте интерфейс RS232
- Шаг 3: Тестирование интерфейса RS232
- Шаг 4: Сделайте датчики и сеть
- Шаг 5: Настройка программного обеспечения - сбор данных
- Шаг 6: Настройка программного обеспечения - построение графиков
- Шаг 7: Реализация 1 - Мониторинг серверной комнаты
- Шаг 8: Реализация 2 - Метеостанция
- Шаг 9: Реализация 3 - Комната студенческого общежития
Видео: Датчик температуры / метеостанция: 9 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:54
Создайте метеостанцию или датчик температуры, используя очень крутой цифровой датчик температуры DS1820. Я использую эту установку для мониторинга серверной комнаты и в качестве метеостанции. Этот проект состоит из:
- Автобусная сеть 1-Wire в Далласе
- Интерфейс между RS-232 и системой Dallas 1-Wire
- Цифровые датчики температуры, подключенные к шине Dallas 1-Wire (DS1820 / DS18s20)
- Настройка программного обеспечения для сбора и построения графиков температур
Обновлено 18 ноября 2007 г., чтобы включить сценарии автоматического построения графиков и изображения реальных реализаций этой системы.
Шаг 1: вам нужно
Вот что вам понадобится для изготовления метеостанции или регистратора температуры:
- Некоторые навыки работы с Linux
- Базовые навыки работы с электроникой, пайкой и т. Д.
Компоненты
- 1 стабилитрон 6,2 В (1N5234)
- 1 стабилитрон 3,9 В (1N5228)
- 2 диода Шоттки (1N5818)
- 1 резистор 1,5 кОм
- 1 2-контактный винтовой зажим
- 1 гнездовой разъем D-sub 9 с точками пайки
- 1 небольшой кусок перфорированного картона.
- Один или несколько цифровых датчиков температуры Dallas Semiconductor DS1820 или DS18s20
- Кабели Cat5
- Термоусадочная трубка
Шаг 2: Создайте интерфейс RS232
Мне нравится делать 1-Wire busmaster настолько маленьким, чтобы его можно было просто разместить на задней панели компьютера в порту rs232.
Шаг 1) Определите, насколько маленьким вы можете его сделать. Выложите все компоненты на перфоратор. Поместите их с учетом схемы. Мы не хотим добавлять провода в нижнюю часть схемы! Смотрите изображение. Шаг 2) Вырежьте перфокарт подходящего размера. Просто проведите острым ножом несколько раз по ряду отверстий, в которых вы хотите прорезать. Сделайте это с обеих сторон, а затем просто сломайте его пополам. Обычно он ломается на созданной вами линии разлома. 3) Припаяйте компоненты на место. и соедините точки пайки, чтобы замкнуть цепь.
Шаг 3: Тестирование интерфейса RS232
1) Загрузите и установите digitemp. В Debian и Ubuntu Linux это можно сделать, запустив `sudo apt-get install digitemp` 2) Подключите DS1820 к вашей цепи. Средняя ножка входит в порт DQ, две другие подключаются. в GND 3) Подключите схему к порту rs232 компьютера. Я описываю это только для Linux, но это также возможно сделать в Windows … 4) Если команда `digitemp` не работает, это потому, что существует несколько версий digitemp.type digitemp, затем нажмите вкладку, чтобы увидеть их все.. digitemp_DS9097 - это то, что нужно для этого 1wire busmaster. Просто ради простоты мы хотим, чтобы команда была `digitemp`, а не` digitemp_DS9097`.type `sudo ln -s / usr / bin / digitemp_DS9097 / usr / bin / digitemp`5) От имени пользователя root или с помощью sudo: запустите `digitemp -s / dev / ttyS0 -i`. Это выполнит поиск датчиков в сети 1wire и создаст файл конфигурации для digitemp. Если вы используете COM2, используйте -s /dev/ttyS1. Run `digitemp -a`, чтобы прочитать температуру подключенного временного датчика. См. Снимок экрана 6) Сделайте это для всех датчиков, которые вы собираетесь использовать, и запишите адреса Если у вас несколько датчиков, приятно знать, какой из них какой.
Шаг 4: Сделайте датчики и сеть
При подключении сети 1wire вы хотите использовать сетевые кабели категории 5.
У меня был неудачный опыт использования других кабелей и комбинирования кабелей разных типов. При работе по cat5 шина 1wire может иметь довольно длинные кабели. В одной установке метеостанции я запустил 30-метровую cat5 из технического помещения с компьютером Linux и до крыши. На крыше кабель разделен на 3 кабеля длиной 5-15 метров с датчиком на конце каждого из них. Эта установка работает безупречно. 1-проводная сеть довольно надежна. Изготовление датчика: вы хотите сделать датчик водонепроницаемым и жестким. 1) Отрежьте кабель категории 5 до нужной длины. 2) Изолируйте конец датчика. Отрежьте 3 пары из 4, оставив зеленую / бело-зеленую. 3) Наденьте маленькую термоусадочную трубку на зеленый провод. 4) Припаяйте зеленый провод к среднему контакту DS1820 5) Потяните термоусадочную трубку вверх, чтобы она покрыла весь металл средней ножки и металл соединенного с ней провода. Затем нагрейте его зажигалкой или термофеном, чтобы усадить на место. 6) Припаяйте бело-зеленый провод к двум другим контактам. 7) Наденьте термоусадочную трубку большего размера на датчик и кабель. Смотрите картинку. Затем осторожно нагрейте его зажигалкой, чтобы он уселся на месте. Вы не хотите поджигать вещь, просто держите пламя на расстоянии 4-10 мм от термоусадочной трубки. 8) Разместите датчики там, где вы хотите, подключите их к интерфейсу RS232 и подключите к компьютеру.
Шаг 5: Настройка программного обеспечения - сбор данных
Теперь, когда наши датчики установлены, мы хотим собрать с них некоторые данные. Как root на вашей Linux-машине: 1) Выполните `digitemp -s / dev / ttyS0 -i -c /etc/digitemp.conf`, это создаст конфигурацию файл digitemp.conf с датчиками yoru. Просмотрите вывод, чтобы увидеть, какое число получают датчики. 2) Проверьте температуру с помощью `digitemp -aq -c /etc/digitemp.conf`3) Сохраните выходные данные в файл. Я выгружаю файл в apache wwwroot, таким образом, я могу получить доступ к температуре из любого места. Команда `digitemp -aq -c /etc/digitemp.conf> / var / www / digitemp.txt` помещает вывод digitemp в файл digitemp.txt4) Автоматизируйте этот процесс: введите `crontab -e`, это откроет корневой crontab. Введите` * * * * * digitemp -aq -c /etc/digitemp.conf> / tmp / digitemp; mv / tmp / digitemp / var / www / digitemp.txt` в этот файл и сохраните его. Запустите crontab -l, чтобы убедиться, что crontab установлен. Причина, по которой я отправляю вывод в / tmp, а затем перемещаю это в / var / www, это то, что digitemp использует несколько секунд для завершения своего запуска. Если вы попытаетесь получить доступ к выходным данным во время работы digitemp, вы получите неполный файл. Это может нарушить работу других скриптов, считывающих данные из этого файла. (Это не показано на скриншоте, забыл сделать это) Ваша метеостанция теперь запущена и работает. Используйте данные, чтобы делать все, что хотите, графически отображать их, использовать их для отправки по электронной почте в случае высокой / низкой температуры и т. Д.
Шаг 6: Настройка программного обеспечения - построение графиков
Это сложная часть, здесь необходимо много скриптов. 1) Создайте место для размещения скриптов, место для хранения изображений и место для хранения данных. `Mkdir / etc / tempsensor``mkdir / var / www / temperature``mkdir / var / log / digitemp_rrd`2) Установите программное обеспечение: вам понадобятся PHP и RRDtool. `apt-get install rrdtool``apt-get install php` (существует много пакетов php, установите один с исполняемый файл консоли) 3) Загрузите и установите сценарии, отвечающие за создание графиков: Загрузите tempsensor-0.1.tar.gz на ваш Linux-компьютер. tar xvzf tempsensor-0.1.tar.gz``cp -v tempsensor / * / etc / tempsensor`4) Настройте скрипты: откройте /etc/tempsensor/config.php и следуйте комментариям в этом файле. Измените скрипт для чтения входных данных из "/var/www/digitemp.txt", если вы следовали примеру на предыдущем шаге.5) Автоматизация. Добавьте запись в crontab так же, как на предыдущем шаге. Скрипт должен запускаться каждые 5 минут. Строки должны выглядеть так: `* / 5 * * * * php /etc/tempsensor/logdata.php``*/5 * * * * php /etc/tempsensor/graphdata.php `6) Запустите скрипты вручную, чтобы проверить, работает ли он. Php /etc/tempsensor/logdata.phpphp /etc/tempsensor/graphdata.php7) Посетите https://your.ip.or.hostname/temperature или все, что вы указали в файл конфигурации.
Шаг 7: Реализация 1 - Мониторинг серверной комнаты
Моя первая реализация этой системы была в серверной в студенческих общежитиях, где я работаю. Вот вам несколько картинок.
Шаг 8: Реализация 2 - Метеостанция
Когда я оборудовал серверную комнату датчиками температуры, я просто не смог устоять перед тем, как положить их на крышу!
Метеостанция немного сложнее серверной. Снаружи много помех. Солнце может ударить датчик, отправив его от -1 до 30 градусов Цельсия за 5 минут. Я решил эту проблему с помощью трех датчиков, размещенных в точках, которые в разное время в течение дня получали солнечный свет. Поскольку тепло является единственным «шумом» при измерении, я просто использую датчик с самым низким показателем в любое время в качестве «наружной температуры». Эта температура снова сглаживается за счет усреднения последних нескольких минут.
Шаг 9: Реализация 3 - Комната студенческого общежития
Мой друг последовал этой инструкции и оборудовал свою квартиру датчиками температуры. В холодильнике, санузле, компе и т. Д.:)
Рекомендуемые:
Датчик температуры барбекю и мяса на ESP8266 с дисплеем: 5 шагов (с изображениями)
Датчик температуры барбекю и мяса на ESP8266 с дисплеем: в этом руководстве я покажу вам, как создать собственную версию инструмента для барбекю, который измеряет текущую температуру в вашем барбекю и включает вентилятор, чтобы при необходимости зажигать его. Дополнительно к этому есть также датчик температуры ядра мяса
Метеостанция NaTaLia: метеостанция на солнечной энергии Arduino сделала правильный выбор: 8 шагов (с изображениями)
Метеостанция NaTaLia: метеостанция на солнечной энергии Arduino сделала правильный выбор: после 1 года успешной работы в 2 разных местах я делюсь своими планами по проекту метеостанции на солнечной энергии и объясняю, как она превратилась в систему, которая действительно может выжить в течение длительного времени. периоды от солнечной энергии. Если вы последуете
Датчик температуры для Arduino, применяемый для COVID 19: 12 шагов (с изображениями)
Датчик температуры для Arduino, применяемый для COVID 19: Датчик температуры для Arduino является фундаментальным элементом, когда мы хотим измерить температуру процессора человеческого тела. Датчик температуры с Arduino должен быть в контакте или близко, чтобы принимать и измерять уровень тепла. Вот как т
Датчик / датчик температуры двигателя с беспроводным датчиком для классических автомобилей: 7 шагов
Датчик / датчик температуры двигателя с беспроводным датчиком для классических автомобилей: я сделал этот датчик для своего любимого Çipitak. Автомобиль fiat 126 с 2-цилиндровым двигателем с воздушным охлаждением под задним капотом. У ipitak нет датчика температуры, показывающего, насколько горячий двигатель, поэтому я подумал, что датчик будет полезен. Также хотел, чтобы датчик был проводным
ESP8266 NodeMCU + LM35 + Blynk (метеостанция IOT / цифровой датчик температуры): 4 шага
ESP8266 NodeMCU + LM35 + Blynk (метеостанция IOT / цифровой датчик температуры): Привет, ребята! В этом руководстве мы узнаем, как подключить датчик LM35 к NodeMCU и отображать эту информацию о температуре через Интернет на смартфоне с помощью приложения Blynk. (Также в этом проекте мы будем использовать виджет SuperChart в Bl