Оглавление:
- Шаг 1. Требования
- Шаг 2: Настройка проводки
- Шаг 3: Настройка датчика
- Шаг 4: Отправка данных в Ubidots для визуализации
- Шаг 5: Необязательные шаги: переименуйте устройство и переменные
- Шаг 6: Настройка события
- Шаг 7: Результат
Видео: Температурная система DIY Raspberry Pi с Ubidots: 7 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
Система мониторинга температуры предоставляет ценную информацию как в коммерческой, так и в промышленной среде, чтобы уменьшить неэффективность или поддерживать качество продукции и ее качество. Что, если бы я сказал вам, что вы можете контролировать температуру в собственном винном погребе или в семейном аквариуме дома, используя одно и то же устройство. Кроме того, что, если бы я сказал вам, что это же устройство можно было бы использовать для контроля температуры воздуха и жидкостей на вашем заводе? Создатели нашего мира сделали это возможным, и это руководство предназначено для того, чтобы помочь запустить ваши собственные инициативы дома или в производственном цехе.
Это руководство станет вашим учебным пособием по простой самодельной системе контроля температуры, которая также является водонепроницаемой. Используя Raspberry Pi и Ubidots, мы покажем вам, как подключить ваш Pi и отображать в реальном времени показатели вашей температурной системы. Используя Ubidots, вы также можете создавать электронные письма или SMS-сообщения, чтобы гарантировать, что ваша «переменная» (в данном случае температура) остается в пределах набора определенных лимитов, назначенных вами для обеспечения качества и эффективности условий вашей системы.
Для этого проекта мы собираемся использовать водонепроницаемую версию датчика DS18B20 с предварительно подключенным проводом. Что такое 1-Wire? Это протокол связи, который упрощает подключение ваших датчиков IoT, объединяя все кабели в один провод (… ну, на самом деле это три, два - это заземление и подключение питания для энергии, а третий - 1-проводный для передачи данных).
ВАЖНОЕ ПРИМЕЧАНИЕ: Датчик температуры 1-Wire продается в разных версиях; один с резистором, встроенным в датчик, а другой - без него. При покупке или настройке оборудования лучше всего убедиться, что ваши устройства и датчики совместимы, прежде чем переходить к дальнейшему изучению этого руководства.
Шаг 1. Требования
- Модель Raspberry Pi 3 (уже настроена)
- Датчик температуры OneWire - DS18B20
- Учетная запись Ubidots - или - Лицензия STEM
Шаг 2: Настройка проводки
Как упоминалось ранее, датчик температуры OneWire продается с различными версиями, содержащими резисторы. В этом руководстве мы проиллюстрируем обе версии - с резистором и без него. Независимо от того, что вы выберете для своей системы, обязательно дважды проверьте правильность подключения на основе приведенных ниже диаграмм и фотографий.
Со встроенным резистором - с разъемом Grove
Следуйте таблице и изображению выше, чтобы правильно подключить датчик температуры OneWire с резистором.
СОВЕТ: Arduberry - это новая кампания на Kickstarter, которая предлагает простой и недорогой способ добавить щиты Arduino на Raspberry Pi. Этот невероятный вариант - простой способ начать подключать датчики Grove с помощью щита Arduino Grove. Для получения дополнительной информации об этом, пожалуйста, обратитесь к кампании:)
Без встроенного резистора - без разъема Grove
Резистор в этой схеме используется в качестве подтяжки для линии передачи данных и должен быть подключен между проводом данных и проводом питания. Это гарантирует, что линия данных находится на определенном логическом уровне, и ограничивает помехи от электрических шумов, если наш вывод остался плавающим.
Используйте резистор 4,7 кОм (или 10 кОм) и следуйте приведенной выше схеме для правильного подключения. Обратите внимание, что в Raspberry Pi подключены те же контакты, что и в таблице.
Шаг 3: Настройка датчика
1. Подключив Raspberry Pi к Интернету, проверьте IP-адрес, назначенный для доступа к плате, с помощью ssh в терминале вашего компьютера:
ssh pi @ {IP_Address_assigned}
Если вы еще не настроили учетные данные своего Raspberry Pi, обратите внимание, что вам придется использовать предоставленные учетные данные по умолчанию:
- имя пользователя: пи
- пароль: малина
Когда ваш пи настроен и подключен правильно, пользователь вашего терминала будет указан как: pi @ raspberrypi
2. Теперь давайте обновим несколько пакетов и установим pip, менеджер пакетов Python. Скопируйте и вставьте приведенные ниже команды в свой терминал и нажимайте "ввод" после каждой, чтобы запустить команды.
обновление sudo apt-get> обновление sudo apt-get
sudo apt-get install python-pip python-dev build-essential
3. Затем установите библиотеку запросов, которая является популярной библиотекой Python, которая упрощает выполнение HTTP-запросов. Скопируйте и вставьте приведенные ниже команды в свой терминал и нажмите «ввод», чтобы запустить команду.
Запросы на установку $ pip
4. Raspberry Pi оснащен рядом драйверов для взаимодействия. В этом случае, чтобы иметь возможность загрузить драйвер датчика 1-Wire на контакты GPIO, мы должны использовать эти два драйвера ниже. Таким образом, эти драйверы хранятся как загружаемые модули, и команда modprobe используется для их загрузки в ядро Linux, когда это необходимо.
Выполните следующие команды:
$ sudo modprobe w1-gpio> $ sudo modprobe w1-therm
5. Теперь нам нужно изменить каталог на папку с нашим устройством 1-Wire и перечислить устройства, чтобы убедиться, что наш датчик загрузился правильно. Скопируйте и вставьте приведенные ниже команды в свой терминал и нажимайте "ввод" после каждой, чтобы запустить команды.
$ cd / sys / bus / w1 / devices /> $ ls
На данный момент ваш датчик уже собран и подключен, и его следует указать в виде набора цифр и букв. В нашем случае устройство зарегистрировано как 28-00000830fa90, но в вашем случае будет другой набор букв и цифр, поэтому замените наш серийный номер своим собственным и запустите команду.
$ cd 28-00000830fa90
Датчик периодически записывает в файл w1_slave, чтобы прочитать датчик температуры, выполните следующую команду:
$ cat w1_slave
Эта команда покажет вам две строки текста с выводом t =, показывающим температуру в градусах Цельсия. Обратите внимание, что десятичная точка должна быть помещена после первых двух цифр (это предусмотрено в окончательном коде - не беспокойтесь); например, полученная нами температура составляет 29 500 градусов по Цельсию.
Теперь, когда вы можете снимать показания температуры, пришло время опубликовать их в Ubidots!
Шаг 4: Отправка данных в Ubidots для визуализации
Пришло время писать код!:) Создайте и запустите скрипт Python в терминале вашего компьютера:
$ nano onewire_temp_ubidots.py
Затем вставьте и сохраните следующий код в свой терминал: Нажмите здесь, чтобы получить код
Обязательно замените серийный номер 28-00000830fa90 своим и назначьте токен своей учетной записи Ubidots в URL-адресе запроса. Если вы не знаете, как получить свой токен Ubidots, обратитесь за помощью к статье ниже:
Найдите свой ТОКЕН в своей учетной записи Ubidots
Теперь протестируем скрипт. Вставьте и запустите приведенный ниже сценарий в терминале вашего компьютера.
Python onewire_temp_ubidots.py
Если он работает правильно, вы увидите новое устройство в своей учетной записи Ubidots с двумя переменными: temp_celsius и temp_fahrenheit.
Шаг 5: Необязательные шаги: переименуйте устройство и переменные
Имена создаваемых переменных совпадают с именами ярлыков API, которые являются идентификаторами, используемыми API. Это не означает, что их имена нельзя изменить, поэтому рекомендуется изменить имена ваших устройств и переменных, чтобы сделать их более удобными для вашей номенклатуры. Чтобы узнать, как переименовать имена переменных, см. Ниже:
Как настроить имя устройства и имя переменной
Вы также можете добавлять и настраивать единицы измерения каждой переменной из вашего списка опций.
Как вы можете видеть выше, мы присвоили каждой переменной разные единицы измерения, а также присвоили более понятные имена, чтобы соответствовать номенклатуре наших проектов. Это настоятельно рекомендуется пользователям, которым требуется развертывание сотен или устройств.
Шаг 6: Настройка события
Событие (или предупреждение) - это любое действие, инициируемое, когда данные соответствуют правилу проектирования или превышают его. Например, сообщение электронной почты или SMS может быть отправлено в любое время, когда датчик перестает отправлять данные или температура превышает максимальный или минимальный порог.
Чтобы создать мероприятие, ознакомьтесь со статьей ниже:
События: создание события текстового сообщения (SMS, электронная почта и Telegram)
Шаг 7: Результат
Всего за несколько минут вы создали простую систему контроля температуры своими руками. Теперь разместите датчики там, где это необходимо, и начните отслеживать температуру со своего устройства уже сегодня!
Удачного взлома:)
Рекомендуемые:
АВТОМАТИЧЕСКАЯ ТЕМПЕРАТУРНАЯ КОМПЕНСАЦИЯ ДАТЧИКА ПРОВОДИМОСТИ ATLAS: 4 шага
АВТОМАТИЧЕСКАЯ ТЕМПЕРАТУРНАЯ КОМПЕНСАЦИЯ ДАТЧИКА ПРОВОДИМОСТИ ATLAS: В этом проекте мы будем автоматически выполнять температурную компенсацию датчика проводимости Atlas Scientific. Изменения температуры влияют на проводимость / общее количество растворенных твердых веществ / соленость жидкостей, и, компенсируя это, мы обеспечиваем
Автоматизированная садовая система, построенная на Raspberry Pi для улицы или дома - MudPi: 16 шагов (с изображениями)
Автоматизированная садовая система, построенная на Raspberry Pi для улицы или дома - MudPi: Вы любите садоводство, но не можете найти время для его ухода? Возможно, у вас есть комнатные растения, которые немного хотят пить или вам нужен способ автоматизировать гидропонику? В этом проекте мы решим эти проблемы и изучим основы
Система с ионным охлаждением для вашего игрового сервера Raspberry Pi !: 9 шагов (с изображениями)
Система с ионным охлаждением для игрового сервера Raspberry Pi! Привет, создатели! Некоторое время назад у меня был Raspberry Pi, но я действительно не знал, что с ним делать. В последнее время популярность Minecraft вернулась, поэтому я решил создать сервер Minecraft, чтобы я и мои друзья могли наслаждаться им. Что ж, это оказался только я:
Система сортировки цветов: система на основе Arduino с двумя ремнями: 8 шагов
Система сортировки по цвету: система на основе Arduino с двумя ремнями: транспортировка и / или упаковка продуктов и предметов в промышленной сфере осуществляется с использованием линий, изготовленных с использованием конвейерных лент. Эти ремни помогают перемещать предмет из одной точки в другую с определенной скоростью. Некоторые задачи обработки или идентификации могут быть
Температурная активность DEEDU: 7 шагов
Температурное упражнение DEEDU: Цель этого упражнения - повысить чувствительность пользователя к потреблению энергии для контроля температуры. Это задание предназначено для детей старше 9 лет, которые могут читать и понимать ориентировочные значения температуры и