Пятница, 26.04.2024, 22:33
| RSS
Поиск
Главная |
Защита, контроль, управление
Форма входа
Логин:
Пароль:

Меню

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

Статьи

Raspberry Pi

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

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

Ссылки

Форум

Чат

Канал YouTube

Группа в Facebook


Календарь
«  Март 2014  »
ПнВтСрЧтПтСбВс
     12
3456789
10111213141516
17181920212223
24252627282930
31

Наш опрос

Ссылки


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





.
Статистика

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

Raspberry Pi для домашней автоматизации. Структурная схема

Raspberry Pi для домашней автоматизации. Структурная схема

Наш канал в YouTube


 

Автоматика для дома

Продолжаем рассматривать применение компьютера Raspberry Pi для домашней автоматизации. Как вы помните, в предыдущих выпусках мы получили общие сведения о Raspberry Pi, научились, как установить и сконфигурировать операционную систему Raspbian, познакомились с фреймворком WebIOPi и его возможностями по работе с портами GPIO, в частности, как управлять дискретными входами / выходами и работу последовательного порта UART

Сегодня я постараюсь познакомить вас с общей структурной схемой планируемой системы домашней автоматизации, которая будет создаваться с применением Raspberry Pi. (рис.1).

Структура домашней автоматизации

Рис. 1

Система домашней автоматизации состоит из центрального сервера, связанного по интерфейсу RS485 с установленными в каждом помещении контроллерами, а к контроллерам в свою очередь подключаются все периферийные устройства (различные устройства управления, контроля, регулирования, защиты). Преимущество такой сетевой архитектуры состоит в том, что нет необходимости тянуть провода от каждого устройства к серверу, а достаточно соединить контроллеры, к которым они подключены, двумя парами проводов – по одной паре подается питание, а вторая используется для интерфейса RS485. Кроме того, логика работы задумывается так, что выход из строя любого контроллера или даже центрального сервера не должен повлиять на работоспособность остальной системы. Другими словами, архитектура системы домашней автоматизации должна быть распределенной и децентрализованной. Подобная архитектура напоминает широко используемую в коммерческих проектах «умного дома» шину Smart Bus.

В качестве центрального сервера системы домашней автоматизации применяется Raspberry Pi. На нем установлен Web сервер, посредством которого пользователь с любого коммуникационного устройства (смартфона, ноутбука, планшета) через браузер может получать информацию о всех процессах, происходящих в доме и соответственно, управлять ими. Доступ к Web серверу по вводу логина и пароля можно получить как из домашней локальной сети, так и из сети интернет через Wi-Fi роутер.

К последовательному порту UART Raspberry Pi через согласующее устройство по интерфейсу RS485 подключаются контроллеры, имеющие необходимый набор вводов/выводов. Кроме этого, к RS485 подключается GSM модем для доступа к системе через сотовую или стационарную телефонную сеть на случай, если в точке, где находится пользователь, нет возможности получить выход в интернет. Доступ в этом случае также выполняется через ввод пароля.

Еще одним устройством в сети RS485 является радиомодуль. Его назначение – привязка к общей системе автоматизации всех радиодатчиков и радиопультов дистанционного управления. Описание одного из вариантов такого радиомодуля, недавно публиковалось на нашем сайте, его можно посмотреть здесь – Радиоуправление для умного дома.

Как уже говорилось ранее, Raspberry Pi имеет собственные порты GPIO, которые можно задействовать под различные функции. UART GPIO мы используем для организации интерфейса RS485, а остальные порты пока свободны. Поэтому, вполне логично, что кроме подключения датчиков и исполнительных устройств к контроллерам, некоторые элементы системы домашней автоматизации можно подключить и непосредственно к портам GPIO Raspberry Pi через буферное устройство при условии, что к таким элементам не нужно прокладывать длинные коммуникации. Например, это может быть датчик атмосферного давления или датчик контроля температуры с управлением охлаждения самого Raspberry Pi. На структурной схеме непосредственное подключение к портам Raspberry Pi показано через буферный модуль GPIO.

Для доступа к Web серверу из сети интернет, у вас должен быть статический IP адрес, в противном случае необходимо воспользоваться сервисами, предоставляющими услугу Dynamic DNS. Некоторые сервисы предоставляют данную услугу бесплатно, например, dlinkddns.com правда при условии, что вы пользуетесь сетевым оборудованием D-Link. Среди других сервисов Dynamic DNS можно отметить такие как dyndns.com и nоip.com. Как настроить роутер для работы с DDNS, читайте в статье Видеонаблюдение через интернет.

Так как на первом этапе практической реализации нашей системы мы будем организовывать подключение порта UART Raspberry Pi к контроллеру по интерфейсу RS485, а так же подключать исполнительные устройства непосредственно к портам ввода/вывода GPIO, предлагаю для начала завершить настройку и конфигурирование Raspberry Pi для выполнения этих задач.

Итак, если вы прочитали предыдущие три части обзора, выполнили установку фреймворка WebIOPi, попробовали управлять портами, проверили работу UART в режиме двухстороннего обмена через терминальную программу, то для завершения настроек осталось сделать совсем немного.

Заходим в файл конфигурирования командой:

sudo nano /etc/webiopi/config

и устанавливаем следующие настройки [GPIO] (рис.2)

4 = OUT 0

7 = OUT 0

8 = OUT 0

25 = OUT 0

24 = OUT 0

Putty setup GPIO

Рис. 2

 

В разделе [HTTP Server Configuration]  необходимо прописать строку:

doc-root = /home/pi/myproject/html

Это будет путь к папке, которую мы потом создадим для хранения страницы Web интерфейса index.html. Разумеется, можно было создать эту папку и в другом месте, прописав к ней соответствующий путь, но во избежание путаницы и проблем в дальнейшем, давайте будем придерживаться однообразия (рис.3)

 

http webiopi

Рис. 3

 

Далее заходим в раздел [REST] и прописываем следующие строки (рис.4):

gpio-export = 4, 7, 8, 25, 24

gpio-post-value = true

gpio-post-function = true

device-mapping = true

 

sensor webiopi config

Рис. 4

 

В файле конфигурации настройки завершены. Сохраняем их нажатием сочетания клавиш Ctrl и O, затем нажимаем Enter и выходим командой Ctrl и Х.

Создаем на диске Raspberry Pi папки для хранения нашего проекта. Для этого, да и вообще для работы с файлами на диске Raspberry Pi можно воспользоваться файловым менеджером WinSCP о котором упоминалось в первой части обзора. Вложенность создаваемых папок должна иметь следующий вид:

/home/pi/myproject/html (рис.5)

 

GPIO Raspberry Pi

Рис. 5

 

Для контроля правильности выполненных операций, распакуйте архив тестового файла в папку html. Там должен появится файл index.html. Введите сетевой адрес Raspberry Pi, логин и пароль (webiopi / raspberry). Выполните перезагрузку WebIOPi командой:

sudo /etc/init.d/webiopi restart

После этого вы должны увидеть тестовый web интерфейс (рис.6). С помощью этого интерфейса можно управлять выходами GPIO 4, 7, 8, 24, 25 кликая мышкой по соответствующей кнопке. Высокий уровень на выходе показывается оранжевым цветом, низкий – черным. После каждого клика по кнопке состояние выхода меняется на противоположное. Для визуального контроля выполняемых команд к этим выходам можно подключить светодиоды через токоограничивающие резисторы 300470 Ом.

 

Рис. 6

 

 Если у вас все получилось, значит, настройки выполнены правильно. В следующем выпуске нашего обзора перейдем к практической реализации в «железе» первого этапа системы домашней автоматизации.

 

Тестовый Web интерфейс портов GPIO



 

 

Содержание всех статей сайта по теме Raspberry Pi




Категория: | Просмотров: 32416 | Добавил: Admin | Теги: домашняя автоматизация, Raspberry Pi | Рейтинг: 0.0/0 |
Всего комментариев: 4


3 mrsrg  
Здравствуйте, прошу прощения, скажитек пожалуйста, как добавить кнопки в web интерфейсе? Я подключил к Raspberry Pi 3 (40 pin) 8 реле двумя платами
https://www.raspberry-solutions.co.uk/wp-content/uploads/2015/02/relayy.png
С помощью Вашего описания я подключил все 5 кнопок, но как включить остальные? Если можно, напишите...

2 Admin  
По поводу термина умный дом я высказывал своё мнение почти два года назад.

1 123ksn  
Народная мудрость гласит, что дьявол прячется в мелочах! Сегодня меня посетила до ужаса простая мысль: большинство разработок со словосочетанием "умный дом" на самом деле почти ничего не имеют общего с понятием "дом" в русском смысле этого слова. Правильнее называть такие разработки "умная квартира". Ох уж эта мне американизация(англоязычие)! Ну не едим мы горячих собак (HOT DOG). К чему это я? Ну не будет думать квартирожитель о том, что вода может протечь не только под мойкой, но и в бане. Что датчик движения может быть не только в помещении, но и за 50м от контроллера на столбе. Что ночью, когда бежишь на свидание с "Большой медведицей" (в туалет), больше волнует не вентиляция санузла, а освещение дорожки. Что когда выезжаешь/въезжаешь на машине, что-то должно включаться и отключаться, определенным образом двигаться и контролироваться. Что должен стоять бойлер с водой, нагреваемый солнцем. Что надо контролировать влажность не только воздуха, но и почвы. И поливать надо зелень индивидуально и определенным образом. Да, "умную квартиру" можно попытаться расширить до "умного дома", но, как я заметил, за счет "костылей". Потому что мелочи не позволят это сделать красиво. О мелочах надо думать еще на этапе поставновки задачи, когда считаем какой провод будем покупать и сколько метров земли на какую глубину копать. Я повторил несколько устройств, претендовавших на звание "умный дом", но у всех у них оказались какие-то неявные недостатки, которые обнаружились только на этапе внедрения в дом.
Уважаемый Михаил, это не конктретно в Ваш "огород" камень! Просто авторы ....

4 DrVicX  
Если есть "Умный Инженер", то он из "Умной Квартиры" сможет сделать и "Умный Дом" и Умный Город и даже "Умную Галактику"  biggrin 

Это-же КОНСТРУКТОР!
Изучай, Применяй, Комбинируй, ТВОРИ! smile





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