Образовательная галактика Intel®

Блог Участника

Запись блога

Ардуино, mBlock и набор "Умный дом" (БХВ). Проект "Охранная система". Реально-виртуальное пространство проектов

Продолжим. В прошлый раз мы закончили проект "Азбука Морзе" и, добавив к схеме пьезоизлучатель, получили охранную сирену. Теперь можно из данной конструкции сделать настоящую охранную сигнализацию, а это уже реальный компонент "умного дома". Причем, делать будем, не разбирая предыдущую схему, а лишь немного ее модернизируя.

После обсуждения "Что же надо добавить, чтобы сирена включалась сама?" выходим на мысль о том, что требуется какой-то датчик-сенсор. В случае охранной сигнализации первое, что приходит в голову, глядя на входящие в наш набор компоненты - инфракрасный датчик движения.
Вот такой:


Подробнее о датчике и схеме его работы.
Схема с данного ресурса:


А вот здесь - материал о физике работы датчика и опять же - схема подключения и т.д.

Перевернув датчик, видим три контакта подключения: VCC (+ питания), GND (Земля) и OUT - для подсоединения к входу Ардуино. Также есть возможность поднастроить датчик по чувствительности и времени срабатывания (сколько времени он будет выдавать цифровой сигнал 1 при обнаружении движения, прежде чем вновь перейти в состояние 0).


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

Задание 1. Подключение датчика и проверка его работоспособности.
1.1. Для этого задания совсем не обязательно собирать всю нашу прошлую схему и, если вы идете не следом за нами по линии проекта, можно просто соединить датчик тремя проводами типа "папа-мама" соответственно с контактами на Ардуино: +5В, GND и , например, пином 3 для снятия показаний.

1.2 Если же мы продолжаем проект и у нас есть неразобранная схема "Азбуки Морзе", то просто внесем пару дополнений - изменений.
Первое изменение: добавим датчик движения. Соединив уже по описанной выше (1.1) схеме, но на нашей плате проекта.
Соединяем плату с компьютером, включаем mBlock. Работать будем в режиме управления из среды mBlock (так проще отрабатывать и настраивать проекты, да и батарейки не нужны, удобно), так что проводим стандартные операции подсоединения устройства и (если раньше оно было автономным) обновления прошивки mBlock. Для тех, кто не читал первые посты - пункты 4 и 5. На самом деле эти операции подсоединения в режиме управления или заливки скетчей для автономной работы - к ним быстро привыкаешь и делаешь на автомате.
Итак, датчик на плате, плата подключена и может работать с mBlock.

Делаем простую программу, просто для проверки работоспособности датчика.

Это первый вариант вывода информации с датчика. Мы объявили новую переменную "Тревога" и в рабочем окне можем наблюдать за изменением показаний (1 или 0) . Замерли...0. Пошевелились рядом с датчиком - 1. Работает - прекрасно, идем дальше. Не работает - проверяем контакты.

Задание 2. Соединяем виртуальное и реальное пространство.
В принципе, мы это и раньше делали, выводя данные в рабочем поле программы. Но пока еще особо не привлекали внимание к тому, что можно ведь использовать весь арсенал Scratch 2.0, лежащего в основе mBlock, для виртуализации событий, команды к которым будут поступать с реального устройства!
Т.е. в будущем вообще можно будет построить виртуальный умный дом, в котором будут открываться форточки, опускаться шторы, зажигаться свет, работать сигнализация и т.д. и при этом в качестве датчиков будет выступать реальная схема с Ардуино. Тут вообще раздолье для учебных проектов и сложных сценариев)))
Но для начала все проще. Пусть персонаж-спрайт mBlock стоит, охраняет, думая "Хмммм" пока все в порядке, и бегает туда-сюда, крича "Тревога!" в случае срабатывания датчика.
Пример программы:

Поверьте, очень забавно))) Можно добавить в проект звуки из библиотеки, или записать свой "Тревога!!!" чтобы не просто бегал, но и кричал по настоящему!

Задание 3. Делаем внешнюю сигнализацию, заодно экспериментируем с пьезоэлементом.
Теперь можно попробовать сделать свето-звуковую охранную систему уже в реальном мире. Немножко модернизируем схему "Азбуки Морзе", упорядочив провода питания (идущие к +5В) - просто, чтобы было удобнее ориентироваться. Как-то принято выводить их на специальную красную полосу монтажной платы. И второе изменение - уберем провод управления звучком-пьезоэлементом с 10-го пина (где он работал одновременно с светодиодом) на, например, 9-ый, чтобы можно было управлять им отдельно. Посмотрим, как он может издавать разные звуки.
Вариант схемы соединения:


Проверим работоспособность решения. Для подачи звукового тона пьезоэлементом воспользуемся специальным блоком в разделе Робот: Воспроизвести звук... на ноте... в течении...такта. Ноту можно выбирать из списка (или писать самому частоту излучения), что даст нам возможность в будущем создавать музыкальные композиции, но пока двухтональной сигнализации вполне хватит. В качестве пауз между световыми сигналами будут выступать сигналы звуковые и движение виртуального персонажа))
Например так:

Пробуем. Если персонаж при тревоге бегает с воплями "Тревога!", а система правильно срабатывает, реагируя на движение светом и противным звуком - все в порядке.

Видео работающего устройства (жалко, не попал вариант, когда мой кот пытался подобраться к устройству, а оно его отпугивало. Но я там ржал, извините, "не мог удержаться от смеха", и про съемку забыл)))).

Задание 4. Делаем автономную сигнализацию, пока световую.
Что ж, если говорим о сигнальном устройстве, то неплохо бы проверить возможность его автономного существования.
Пробуем. Меняем шапку проекта на "Arduino Program", убираем блоки управления виртуальным персонажем. Я бы даже рекомендовал на время воздержаться от звука, уж очень раздражает во время настроек)))) Так что оставляем моргание светодиодом.
Получается как-то так:

Переходим в Arduino Mode и закачиваем программу на устройство. Подсоединяем батарею питания (можно и не подсоединять, питание идет по кабелю USB, но так меньше заметна автономность. Если батареи есть - хорошо показывать именно удаленный вариант без провода к компьютеру). Двигаемся - светодиод моргает, остановились - гаснет. В принципе - уже сигнализация. Но можно усложнить проект.

Задание 5. Делаем автономную сигнализацию, свет, звук, кнопка.
На нашей схеме, помимо датчика, есть светодиод, звучок и кнопка. Логично использовать все элементы. Поэтому техническое задание:
1 Система должна включаться в "боевой режим" нажатием на кнопку, о чем должен просигнализировать однократный сигнал светодиода.
2. После сигнала светодиода должен быть промежуток времени для "удирания" с места установки. В моем случае - 5 секунд, чтобы зайти за дверь.
3. Через 5 секунд (или заданное вами время) устройство переходит в режим ожидания движения.
4. При срабатывании датчика движения работает свето-звуковой сигнал сирены.
5. Отключить систему можно, еще раз нажав на кнопку, после чего светодиод моргает два раза и устройство готово к новому запуску *при новом нажатии кнопки все начинается с пункта 1)
Вариантов реализации может быть много. По сути, можно даже сделать кодированный вариант отключения системы (это тема отдельного проекта, как научить систему распознавать нажатия, длину, паузы...)
Пока же вариант реализации вышеизложенного ТЗ:


Ну и видео работающего устройства

Обсуждалки по окончанию:
где еще можно использовать датчик присутствия? (включение/выключение дежурного освещения, шлагбаум и т.д.) Обсуждение будущих проектов (пьезоэлемент с изменяемой тональностью ... музыкальный инструмент?) и т.д.

Набор программ из поста - Прикрепленный файл  5.zip ( 187.15 килобайт ) Кол-во скачиваний: 152

Ну вот, пока все. До новых проектов)))


******************************

Наши публикации по теме: учебные наборы "Умный дом"(и другие наборы на основе Ардуино):

Комментарии

Активный пользователь

  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 29.9.2010
  • Из: Санкт-Петербург
  • Номер участника: 93026
Предупреждение

О, сорри, тут посмотрел внимательнее на рисунок - схему датчика))) Я-то смотрел на правильность описания контактов, а название пропустил. "Пирлоэлектрический" - это пироэлектрический. На всякий случай.


--------------------
www.sch169.ru

Новичок

  • Группа: Пользователи
  • Сообщений: 2
  • Регистрация: 5.3.2016
  • Из: Новокузнецк
  • Номер участника: 186103
Предупреждение

Замечательная вещь - умный дом. Можно много проектов для него придумать.
А для сигнализации нужно придумать шифроустройство для отключения. Само-собой, правильно - использовать touch memory и передавать сигнал тревоги на сотовый телефон по СМС или Интернет. Но можно просто звуковую сигнализацию отключать при помощи набора кода. Например 2-3 кнопки, которые нужно нажать в определенном порядке определенное количество раз. Показывать, что кнопка нажата при наборе кода может звуковой сигнал или светодиод. А реле может открывать замок.

Новичок

  • Группа: Пользователи
  • Сообщений: 2
  • Регистрация: 5.3.2016
  • Из: Новокузнецк
  • Номер участника: 186103
Предупреждение

Да, помню такой случай - начальник попросил на Новый год модернизировать большую, в человеческий рост, фигуру Деда Мороза. Поскольку этот дед мог исполнять песню Jingle bells, то мы использовали инфракрасный датчик для включения этой опции. Звучала песня довольно громко, поэтому еще долго этот манекен неожиданно пугал посетителей организации и особенно дежурных ночью, когда они направлялись в туалет.

Сообщение отредактировал Леонид Захаров - 18.1.2017, 15:59

Активный пользователь

  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 29.9.2010
  • Из: Санкт-Петербург
  • Номер участника: 93026
Предупреждение

Цитата(Леонид Захаров @ 18.1.2017, 15:30)
Замечательная вещь - умный дом. Можно много проектов для него придумать.
А для сигнализации нужно придумать шифроустройство для отключения. Само-собой, правильно - использовать touch memory и передавать сигнал тревоги на сотовый телефон по СМС или Интернет. Но можно просто звуковую сигнализацию отключать при помощи набора кода. Например 2-3 кнопки, которые нужно нажать в определенном порядке определенное количество раз. Показывать, что кнопка нажата при наборе кода может звуковой сигнал или светодиод. А реле может открывать замок.


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

Уже подумал, что обязательно сделаем виртуальный умный дом с реальными датчиками))) А еще подумалось, не переделать ли какой дом Барби в умный... Тема же!

Сообщение отредактировал scar169 - 18.1.2017, 19:54


--------------------
www.sch169.ru

Статьи по этой теме

« Май 2017 »
ВПВСЧПС
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

Последние записи

Мои ссылки в блоге

Последние комментарии
scar169 в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
LaraKrav в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
scar169 в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
LaraKrav в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
p&t в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
scar169 в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
p&t в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
Раков Андрей Егорович в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
scar169 в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
p&t в Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.

Мое изображение

7 пользователей просматривает
7 гостей
0 участников
0 анонимных участников

Категории

Поиск в блоге


Наверх