Воскресенье, 24.11.2024, 01:51
| RSS
Поиск
Главная |
Защита, контроль, управление
Форма входа

Меню

Авторские проекты

Статьи

Raspberry Pi

Полезная информация

Обратная связь

Ссылки

Форум

Чат

Канал YouTube

Группа в Facebook


Календарь
«  Октябрь 2017  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
3031

Наш опрос

Ссылки


Яндекс.Метрика





.
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Автоматизация дома Web Home Pi

Автоматизация дома Web Home Pi

Наш канал в YouTube


Здесь размещено описание системы домашней автоматизации WebHomePi. Такому названию система обязана в первую очередь фреймворку WebIOPi, на котором, собственно, она  и построена. Другими словами, WebHomePi – это WebIOPi, адаптированная для управления и мониторинга в доме. 

Аппаратная часть WebHomePi. В настоящее время для WebHomePi разработано несколько новых версий кросс-платы, которые полностью совместимы с первой версией, но вместе с тем стали значительно компактнее и рассчитаны на установку в стандартный корпус на DIN-рейку D9MG. Новые версии кросс-плат разработаны модератором и одним из самым активных участников нашего форума Zoolu.  Хотелось бы выразить огромную благодарность Антону как от себя, так и от всех участников форума за проделанную работу по разработке и создаю новой кросс-платы. Структурная схема аппаратной части WebHomePi показана на рис.1. 

Join our group on Facebook. Присоединяйтесь к нашей группе в Фейсбуке

 

WebHomePi структурная схема

Рис. 1

 

Конструктивно кросс-плата, помещенная в корпус D9MG, состоит из следующих функциональных узлов:

  • микрокомпьютер Raspberry Pi (B+, 2, 3)
  • блок питания 12 /5  В с импульсным стабилизатором
  • часы реального времени DS1307
  • датчик давления и температуры BMP085
  • дисплей на базе контроллера HD44780 с интерфейсом I2C
  • преобразователь UART / RS485 с гальванически изолированным выходом
  • 3 кнопоки управления
  • 8 гальванически изолированных входов (12...24 В)
  • 8 релейных выходов (до 230 В / 5 А)

Через интерфейсные разъемы к кросс-плате можно подключить:

  • 8 датчиков DS18B20 (шина 1-wire)
  • 2 датчика DHT22 (два отдельных входа)
  • датчик температуры и влажности SHT21 (шина I2C)
  • датчик освещенности TSL2561 (шина I2C)
  • акселерометр ММА7660 (шина I2C)

Все перечисленные выше узлы и датчики относятся к централизованному сегменту WebHomePi. Остальные устройства, подключаемые к кросс-плате по шине RS485 являются распределенным сегментом системы. В частности, это:

  • метеостанция
  • радиомодуль
  • контроллеры 

Программная часть WebHomePi построена, как уже отмечалост выше, на базе фреймворка WebIOPi. и «обратно совместима» с предыдущей версией кросс-платы. Единственным нюансом является необходимость установки модуля  преобразователя UART/RS485. Однако, можно использовать и адаптер USB/RS485, внеся соответствующие изменения в конфигурационный файл.

Интерфейс WebHomePi. Для визуализации показаний датчиков использована библиотека Just Gage. По сравнению с подобными библиотеками визуализации, например Google Gauge, эта библиотека является независимой от внешних ресурсов и может работать в закрытой от доступа в интернет сети. Фактически, это и явилось главным аргументом в пользу выбора Just Gage.

Web-интерфейс  WebHomePi  представляет собой восемь страниц:

  • «Датчики» (главная)
  • «Входы/выходы GPIO»
  • «Радиомодуль»
  • «Метеостанция»
  • «Контроллеры»
  • «Графики»
  • «Настройки»
  • «Журнал событий»

Первые две страницы относятся к централизованному сегменту WebHomePi, следующие три – к распределенному сегменту (работающему по интерфейсу RS485) и последние три – общие для системы в целом.

Страница «Датчики». Здесь отображаются показания мониторинга различных датчиков – температуры DS18B20, температуры и влажности DHT22, температуры и влажности SHT21, освещенности TSL2561, атмосферного давления BMP085 (BMP180), а также температура и загрузка процессора Raspberry Pi (рис.2). Выбор для подключения к WebHomePi того или иного датчика выполняется на странице «Настройки».

 

WebHomePi датчики

Рис. 2

 

Страница «Входы/выходы GPIO». На этой странице контролируется состояние дискретных входов и выходов Raspberry Pi и выполняется управление исполнительными реле как в ручном режиме, так и по различным сценариям, таким как управление выходами по температуре, освещенности, времени, срабатывании входов (рис.3).

Предусмотрена  возможность отправки оповещений через e-mail при изменение любого из дискретных входов. Управление сценариями и ввод параметров выполняется на странице «Настройки».

 

WebHomePi GPIO

Рис. 3

 

Страница «Радиомодуль». С помощью радиомодуля, который подключается к WebHomePi по интерфейсу RS485, можно принимать информацию о срабатывании различных радиодатчиков (движения, протечки, пожара и т.д), а так же управлять девайсами, например, такими кондиционер, вентилятор, светодиодная RGB подсветка (рис.4).

Учитывая, что страница довольно большая, она открывается в свернутом виде, где отображаются только контролируемые радиодатчики. Интерфейсы для управления девайсами открываются по клику на соответствующие кнопки «Закрыть/Открыть». Подробное описание радиомодуля смотрите здесь 

 

WebHomePi радиомодуль

Рис. 4

 

Страница «Метеостанция». Метеостанция – это устройство, подключаемое по интерфейсу RS485, которое позволяет собирать показания температуры и влажности с одного датчика DHT22 и пяти датчиков DHT11 с отображением их на собственном дисплее и передачей данных на Raspberry Pi с отображением в web-интерфейсе (рис.5). Подробное описание метеостанции смотрите здесь

 

WebHomePi GPIO

Рис. 5

 

Страница «Контроллеры». Контроллер так же подключается по интерфейсу RS485 и позволяет контролировать состояние четырех дискретных входов, управлять четырьмя нагрузками до 1 кВт с помощью реле, а также контролировать параметры температуры и влажности с помощью датчика DHT22 (рис.6).

В контроллере предусмотрен режим местного управления непосредственно на месте его установки и  дисплей для отображения состояния выходов, входов, параметров температуры и влажности. С помощью одного web-интерфейса можно просматривать состояние нескольких таких контроллеров, выбрав сетевой адрес требуемого устройства. Подробное описание контроллера RS485 смотрите здесь

 

WebHomePi RS485

Рис. 6

 

Страница «Графики». На этой странице отображаются графики изменения параметров с различных датчиков. Внизу для каждого графика размещается кнопка для очистки данных из журнала логирования (рис.7).

Все графики являются «самомасштабируемыми» при построении, а так же легко масштабируются при необходимости их детального просмотра с выборкой до минут и секунд. На странице отображаются только графики тех параметров, которые активированы на странице «Настройки». 

 

WebHomePi графики

Рис. 7

 

Страница «Настройки». С помощью этой страницы можно выполнить следующие настройки  WebHomePi :

  • привязать к выходам 1 и 2 управление от термодатчиков DS18B20 №1 и №2
  • привязать к выходам 3 и 4 управление от таймера
  • привязать к выходу 5 управление от датчика освещенности TSL2561
  • привязать к выходам 7 и 8 управление от дискретных входов 7 и 8
  • выбрать подключение необходимых датчиков (для DS18B20 задать их id)
  • активировать отправку e-mail при срабатывании любого из дискретных входов
  • указать параметры получателя/отправителя e-mail (см. ниже)
  • определить отображаемые закладки меню
  • считать/записать параметры конфигурации
  • очистить журнал событий
  • выполнить перезагрузку 

Параметры e-mail: 

  • Получатель – e-mail, на который отправляется сообщение
  • Отправитель – e-mail, с которого отправляется сообщение
  • SMTP сервер – SMTP сервер отправителя
  • Логин – логин e-mail отправителя
  • Пароль – пароль e-mail отправителя 

В текстовые поля input_1_closeinput_1_open вводятся сообщения, которые будут в отправляемом e-mail соответственно при замыкании и размыкании входа №1. Аналогично вводятся сообщения и для остальных входов. Текст должен вводится без пробелов (для отделения слов используется нижнее подчеркивание).

Активируется функция отправки e-mail установкой чекбокса в разделе «События» напротив выбранного входа. 

WebHomePi настройка

Рис. 8

 

Страница «Журнал событий». В журнале регистрируются все события, которые происходили в системе (рис.9). Причем, фиксируется не только время срабатывания определенного реле, но и причина, по которой это событие происходило. Например, запись 12-03-2017 16:19:49 , Relay 2 OFF / Temperature 29.6 говорит о том, что отключение реле №2 в указанное время произошло по команде от датчика DS18B20 вследствие повышения температуры до установленного верхнего значения -  29.6 °С.

 

WebHomePi RS485

Рис. 9

 

На рис. 10 и 11 показано размещение кросс-платы в корпусе D9MG.

 

WebHomePi case

Рис. 10

 

WebHomePi case

Рис. 11

 

Установка программного обеспечения Web Home Pi:

1. Отформатировать SD карту (емкостью не менее 4 Гб) в программе SDFormatter

2. На отформатированную карту с помощью программы Win32DiskImager записать образ SD карты.

3. С помощью программы IPScan определить IP адрес Raspberry Pi в локальной сети (например, 192.168.1.11).

4. Выполнить вход на Raspberry Pi через web-браузер по IP адресу с указанием порта 8000 (например, 192.168.1.11:8000). Введите логин – webiopi, пароль - raspberry. Указанные логин и пароль затем можно изменить.

5. Открыть страницу конфигурации системы и выполнить все необходимые пользовательские настройки – подключаемые датчики, сценарии, режимы работы выходов и т.д. После конфигурации пользовательских настроек и перезагрузки система домашней автоматизации Web Home Pi готова к работе.

Обновление программного обеспечения Web Home Pi:

1. Запустить терминальную программу Putty и настроить доступ к Raspberry Pi – ваш IP (например, 192.168.1.11), порт – 22, имя пользователя – pi, пароль – raspberry.

2. Запустить программу WinSCP и настроить доступ к Raspberry Pi – ваш IP, порт – 22, имя пользователя – root, пароль – admin. Эта программа - менеджер файлов, для копирования файлов и папок на диск Raspberry Pi.

3. Заменить в директории home/pi папку myproject. Если необходимо сохранить предыдущие данные логов и графиков, предварительно сделайте архивы нужных файлов в папке home/pi/myprojec/html/logs, а затем восстановите их после обновления.

4. Выполнить перезагрузку Raspberry Pi командой sudo reboot. .

Образ SD-карты (русский интерфейс)

Образ SD-карты (английский интерфейс)

Обновления

Прошивки микроконтроллеров

Все статьи по теме домашней автоматизации

WebHomePi Facebook

WebHomePi Вконтакте

 


 

Видео работы web-интерфейса WebHomePi:

 

 

 




Категория: | Просмотров: 16489 | Добавил: Admin | Теги: | Рейтинг: 4.9/9 |
Всего комментариев: 3


3 eonmax  
To have IP adress RPi have to be connected to wifi. So to do that You could add to instruction easy way to do that:
1. open internet configuration file by "sudo nano /etc/wpa_supplicant/wpa_supplicant.conf"
2. add lines: "network={
    ssid="your wifi network name"
    psk="your password"
}
"
You need to check it carefully, any mistake will cause no wifi conection but You can edit this file anytime
3. save file by crtl+x and then Y to confirm
4. "sudo reboot now"
5. After that use IPScan to find ip adress and connect via putty or WinSCP or web browser.

For me it works. I didnt use any ethernet cable. Only my TV and keyboard to enter those commands.

2 Sashkus  
Спасибо за любезно предоставленные обновления!!! Я ими с радостью воспользовался. Однако, вынужден отметить, что для успешного копирования файлов при помощи WinSCP пришлось вначале немного поработать в Putty, изменив права доступа к нужным папкам с 755 на 777.  При помощи команд  chmod 777 webiopi ,  chmod 777 html и chmod 777 python.
P.S.  - сам виноват - заходил в программу WinSCP используя логин/пароль   -   pi/raspberry   вместо   root/admin.

1 Sashkus  
Очень любопытная вещь получается. Уже начал эксперименты. Буду с интересом следить за обновлениями!!!





T2M © 2024
Сайт управляется системой uCoz