Суббота, 23.11.2024
Завод горного оборудования
Меню сайта
Google_Translate
Категории раздела
Мои статьи [125]
Статистика

Онлайн всего: 2
Гостей: 2
Пользователей: 0
Форма входа
Рейтинг@Mail.ru

Яндекс.Метрика
Главная » Статьи » Мои статьи

DHT11, DHT22 в Raspberry Pi и WebIOPi

Предупреждение. На официальном сайте https://www.raspberrypi.org/ уже можно скачать новую версию Raspbian Stretch. Не используйте эту версию, на ней WebIOPi вообще не запускается. Найдите в Сети предыдущую версию. Все описанное относится к версии Raspbian Jessie.
При использовании старых дистрибутивов при работе в терминале можно давать команду sudo apt-get update, но не вводите команду sudo apt-get upgrade. Это может нарушить работу уже установленных программ.
Скачать Raspbian Jessie версия от 2016-05-27 архив ZIP 1.4 Gb

webiopi-dht

Модуль датчика DHT для WebIOPi

Установка

1.) Скачать и распаковать исходный код на странице http://webiopi.trouch.com/.
На моем Pi установлен Raspbian версия от 2016-05-27.
Я скачал исходный код с http://sourceforge.net/. В терминале выполните следующие команды:

wget http://sourceforge.net/projects/webiopi/files/WebIOPi-0.7.1.tar.gz
$ tar xvzf WebIOPi-0.7.1.tar.gz

2.) Вы должны установить модуль Adafruit Python DHT

sudo apt-get install build-essential python-dev
git clone https://github.com/adafruit/Adafruit_Python_DHT.git
cd Adafruit_Python_DHT
sudo python setup.py install

Если вы собрали электрическую схему (см. рисунок ниже), то можете уже сейчас проверить датчик командой:

cd Adafruit_Python_DHT
sudo python examples/AdafruitDHT.py 22 18

Если у вас датчик DHT11, то вместо 22 поставьте 11, 18 - номер контакта GPIO, т.е. GPIO18 (используется BCM нумерация).

3.) Склонируйте  мой репозиторий на Pi.

cd
git clone https://github.com/swkim01/webiopi-dht.git

В домашнем каталоге создастся папка webiopi-dht.
Если вы используете Raspberry Pi1 Модель B, вам придется пропатчить исходники следующим образом.

cd /home/pi/webiopi-dht
patch -p1 < /home/pi/webiopi-dht/webiopi-0.7.1-rpi1-py2.7-dht.diff

Если вы используете Raspberry Pi2 или Pi3, тогда пропатчите исходники таким образом: 

cd /home/pi/webiopi-dht
patch -p1 < /home/pi/webiopi-dht/webiopi-0.7.1-rpi2-py2.7-dht.diff

Примечание: в Python 2.7.9 есть ошибка - не находит модули в egg module file (см. здесь) или каталог, начинающийся с '_', таким образом webiopi не может загрузить любой модуль устройства. Спасибо joelliot за его комментарий.

4.) Установка и запуск WebIOPi

cd /home/pi/WebIOPi-0.7.1/
sudo ./setup.sh

В конце инсталляции выдается запрос на установку Weaved. Я отказался от установки, нажав n.
Если вы используете версию raspbian jessie, вы должны скопировать файл webiopi.service командой: 

cd /home/pi/webiopi-dht
sudo cp webiopi.service /lib/systemd/system

Для автоматического запуска WebIOPi при старте системы отредактируйте rc.local командой 

sudo nano /etc/rc.local

и добавьте строку

sudo /etc/init.d/webiopi start

перед строкой exit 0.

Проверка

1.) Для тестирования этого модуля подключите вывод DATA датчика DHT22 на вход GPIO18 и светодиод к выходу GPIO17 Raspberry Pi (используется BCM нумерация).
Показана схема подключения для Raspberry Pi 2 или Pi 3.

Нумерация контактов для Raspberry Pi 2 или Pi 3

Вывод Vcc датчика можно подключать к шине +3,3 В (линия связи может достигать 20 м) или к шине +5 В (линия связи до 100м, но при этом надо подобрать сопротивление резистора, включенного между Vcc и DATA).


На фото, кроме DHT22 и светодиода, присутствует схема с двумя датчиками DS18B20. Они в проекте не участвуют, просто остались от предыдущего проекта.

2.) Чтобы включить DHT и функции GPIO на WebIOPi, отредактируйте файл /etc/webiopi/config.

sudo nano /etc/webiopi/config

...
[DEVICES]
...
dht0 = DHT22 pin:18
...
[REST]
gpio-export = 17
gpio-get-value = true
gpio-post-value = true
...

3.) После перезагрузки WebIOPi, вы можете видеть значения температуры/влажности на странице 'device-monitor' WebIOPi. 

sudo /etc/init.d/webiopi restart

В браузере введите примерно следующее

192.168.1.29:8000/app/devices-monitor

т.е. IP адрес Raspberry Pi, номер порта (8000) и путь к devices-monitor

Программа запрашивает логин - webiopi и пароль - raspberry.
Фреймворк WebIOPi - программа привередливая, при малейшей ошибке в файле /etc/webiopi/config она не запускается, в браузере выдается страница с сообщением "Нет доступа, в соединении отказано":

Исправьте ошибку в файле config и перезапустите сервис командой sudo /etc/init.d/webiopi restart
После этого фреймворк WebIOPi должен заработать.

4.) Теперь давайте управлять устройством с помощью команды cURL, как показано ниже.

curl -X GET -u webiopi:raspberry localhost:8000/devices/dht0/sensor/temperature/c
24.40
curl -X GET -u webiopi:raspberry localhost:8000/devices/dht0/sensor/humidity/percent
44
curl -X GET -u webiopi:raspberry localhost:8000/GPIO/17/value
0
curl -X POST -u webiopo:raspberry localhost:8000/GPIO/17/value/1
curl -X POST -u webiopo:raspberry localhost:8000/GPIO/17/value/0

Пользовательские примеры веб-страницы и скрипта Python

Наш пример состоит из HTML-файла и файла скрипта Python. HTML-код содержит веб-контент для отслеживания датчика DHT и управления светодиодом. Код скрипта обеспечивает получение/переключение режима работы на Автоматический или Ручной. В Автоматическом режиме светодиод будет включаться и выключаться автоматически в соответствии со значением температуры датчика DHT22.

1.) Отредактируйте файл /etc/webiopi/config в соответствии с расположением HTML-файла и файла скрипта Python.

...
[SCRIPTS]
myproject = /home/pi/webiopi-dht/examples/python/script.py
...
[HTTP]
...
doc-root = /home/pi/webiopi-dht/examples/html
...

2.) Перезагрузите WebIOPi и откройте веб-браузер.
sudo /etc/init.d/webiopi restart
В браузере введите примерно следующее
192.168.1.29:8000


Если вы немного разбираетесь в языке HTML, то сможете заменить надписи на английском языке русским текстом.
Понятно, что вместо светодиода можно включить схему с реле. С помощью реле можно включать/отключать, например, электронагреватель. Таким образом можно создать термостат для поддержания в помещении температуры в заданном диапазоне.
В автоматическом режиме при указанных в файле /home/pi/webiopi-dht/examples/python/script.py установках светодиод будет включаться при температуре ниже 22 градусов Цельсия и выключаться при температуре выше 27 градусов Цельсия.

Если вы хотите смотреть температуру и влажность через интернет, то об этом можно прочитать в статье Видеонаблюдение через интернет
Также об этом написано в статье Как получить доступ по интернету к датчикам в квартире.

Оригинал статьи https://github.com/swkim01/webiopi-dht
Также использованы:
https://www.devin.cl/blog/dht11-webiopi/
https://kropochev.com/?go=all/raspberry-pi-and-humidity-sensor-dht/
http://electromost.com/news/raspberry_pi_dlja_domashnej_avtomatizacii_chast_vtoraja/2014-02-20-116
https://www.element14.com/community/docs/DOC-73950/l/raspberry-pi-3-model-b-gpio-40-pin-block-pinout

Категория: Мои статьи | Добавил: zgo (15.09.2016)
Просмотров: 9594 | Комментарии: 70 | Теги: control, термостат, DHT22, raspberry pi, DHT11, sensor, WebIOPi, temperature, температуры, thermostat | Рейтинг: 5.0/1
Всего комментариев: 2
2 filTaw  
0
Создание веб-сайтов под ключ - Filandor

Filandor объединил подлинных специалистов в дружную, целенаправленную команду, какая осуществляет работу отлично и в кратчайший временной срок.

Веб-студия "Filandor" имеет долгий опыт в сфере разработки веб-сайтов под ключ, раскрутка веб сайтов и сопровождения. Мы проявили себя в успешной реализации множества удачных онлайн проектов, таких как cargo.ua, sercedoserca.com.ua, cinta.bio и другие. Наша команда может предложить особенно оптимальные решения в данной области.

Раскрутка веб сайта. У вас существует товар или услуги, а также функциональный и современный сайт. Но этого не достаточно, чтобы ваш товар легко находили в глобальной сети интернет. Благодаря продвижению интернет-сайта, или, как говорят SEO-мастера, "раскрутке сайта" ваш товар а соответственно и бизнес выйдет на лидирующие позиции, в рейтинге поиска и его обязательно будут находить скорее, чем рекламные предложения конкурентов. Умножатся продажи и бизнес начнет расти.

У нас имеются необходимые обученные специалисты для абсолютно всех этапов изготовления, раскрутки и обслуживания Вашего интернет-сайта от планирования и дизайна до подготовки и размещения контента. В связи с чем выбирают нашу фирму? - Мы высококачественно и честно работаем в области разработки, сопровождения и раскрутки интернет-сайтов более 10 лет.

Подробнее https://filandor.com/kontekstnaya-reklama-stoimost-v-mesyac - https://filandor.com/kontekstnaya-reklama-stoimost-v-mesyac

1 saawaive  
0
Saytoved — это современная команда предоставляющая работы по разработке, продвижению веб-сайтов в Кокшетау и Астане . Мы применяем в работе как шаблоны, так и неформатный дизайн, а значит, ваш портал будет иметь эксклюзивный внешний вид, удобный интерфейс (usability), все блоки будут размещаться так как хотите вы лично.

Мы уважаем своих заказчиков и никогда не нарушаем обговоренных сроков выполнения работ. Все фазы изготовления сайта, проходят строго по обговоренному графику. Будь то интернет-магазин или небольшой Landin Page — вы можете быть абсолютно уверены, что ваш web-сайт будет предоставлен вам к сроку, а самое важное по разумной цене.

Наш основной вид деятельности — это создание веб-сайтов в Кокшетау и Астане под ключ. Создание таких сайтов состоит из:

1) Создания структуры вебсайта, с учетом всех ваших предпочтений

2) Квалифицированная настройка

3) Заполнение вебсайта информацией

4) Отладка интернет-проекта. Перед сдачей интернет-проекта мы тщательно обследуем корректную работу абсолютно всех модулей

5) Установка сайта на ваш интернет-хостинг

6) Обучение работе в системе администрирования сайтом

Мы разрабатываем веб-сайты в Кокшетау и Астане, любой сложности: Landing Page(одностраничный сайт), простые (недорогие) сайты, визитки, бизнес-сайты, интернет-магазины и прочее.

Абсолютно любой созданный сайт отвечает всем без исключения передовым требованиям по дизайну, верстке и программированию. Особое внимание уделено удобному расположению модулей (usability). Для нас очень важно, чтобы любой пользователь смог легко и быстро найти требуемую ему информацию.

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


https://saytoved.biz - разработка сайтов в Астане,Кокшетау

Имя *:
Email *:
Код *:
Поиск
Друзья сайта
  • Создать сайт
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Все проекты компании
  • Сайт завода zgo.ucoz.ru
  • Забайкальский край
    Дарасун
    Яндекс.Погода


    Хостинг Ucoz опять навязал видеорекламу, но обещает - "мы настроили систему так, чтобы в сутки на уникального посетителя приходилось не более двух показов."
    Совет, как не смотреть видеорекламу.

    Или используйте Uran - браузер от Ucoz без рекламы Скачать

    или подключите к браузеру блокировщик рекламы, например, Adblock Plus или uBlock Origin

    Универсальный декодер кириллицы



    Защита, контроль, управление.



    DONATE (поддержи автора)
    Все статьи авторские, при использовании прошу ссылаться на сайт
    Copyright Дарасунский завод горного оборудования © 2004 - 2024
    Бесплатный конструктор сайтов - uCoz