На скорую руку сообразил одно устройство, скорей охранно-предупредительное и жутко надоедливое. Изначально было задумано получать информацию по 4м ультразвуковым датчикам дистанции и 1му датчику движения, но оказывается мне хватило одного датчика дистанции и одного датчика движения.
Дезинфектор настолько надоедливый, что на датчик движения по моему совету накинули тряпку.
Алгоритм:
-Датчик движения -- (Первичное) Сгенерировать пол дезинфектора и сгенерировать приветствие (два мужских и два женских приветствия), пол речи поддерживается до простоя; -- Сразу включить свет -- Если долгое присутствие по датчику движения, то рассказать стихотворение; -- Если прошли мимо и небыло дезинфекции, сказать "Ну и ладно" или "А ну вернись"; -Датчик дистанции; -- Если расстояние большое, то произнести "подойдите ближе" и если 4 раза по N времени не поднесли, то "Я обиде(лся)(лась)".; --Если расстояние вполне хватает, то произнести "ещё ближе" и если три раза не поднесли, опрыскать принудительно со словами типа "Да на держи, не жалко" и рассказать RND стишок; - Датчик уровня жидкости генерирует случайно два вида сообщений в каждом роде (м и ж) - Окончание дезинфекции
Первичный словарный запас выглядел как на этом видео ролике(позже добавлен женский пол и разнообразие. см.список):
Но после дополнил и задокументировал содержимое флешки в таком порядке: СпойлерТематика нумерация файлов на диске:
Приветствие:
1-Дезинфектор 2.0 готов к работе (Мужск голос) 2-Стоять дезинфекция (мужск голос)
Приветсткие при долгом отсутствии (не реализованно)
3-Добро пожаловать, я Дезинфектор 2.0 ( м голос) 4-Добро пожаловать. Я Дезинфектор 2 0 и я готова к работе (женский голос)
Реакция на присутствие:
5-Поднесите ладони (муж) 6-Поднесите ладони (женс) 7-Ближе (мужск) 8-Поднесите ещё ближе (женс)
Реакция на задалбливание 1 степени 9-Да на, держи, не жалко 10-Ну как хочеш, держи
Реакция на обиду 11-Я обиделся (мужс) 12-Я обиделась (женский)
Реакция на завершения цикла дезинфекции 15-Следующий (мужск) 16-Спасибо (женс)
Реакция на разражение игнорирования
17-А ну вернись 18-Ну и ладно (женский)
Технические неисправности: 19-Низкий уровень жидкости 20-Опохмелите 21 - Я проголодалась (женск) 22 -Заправьте меня
>=23 <=38 -Мужские стихи
Всего 4,5 мегабайта.
Тех.характеристики:
-Микроконтроллер Atmega328pb (но можно в прошивке переделать Atmega8,Atmega16,Atmega328 и т.п.) -Программа написана в Bascom AVR (исходник ниже) -Полевые транзисторы с материнской платы (обязательно ТТЛ открытие) -Помпа 12в. омывайки (давления хватает на форсунки опрыскивателя цветов) -Герконовый датчик уровня жидкости -Датчик движения почти любой -Ультразвуковой датчик дистанции стандартный от Arduino -Стабилизатор питания 5в. какой хотите -- индикатор RGB на форсунке это излишество
P:S: Ультразвуковой датчик дистанции стоит дешевле чем ИК датчики и т.п.. по этому его проще было использовать и грех не воспользоваться его аналоговым преимуществом. На плате lay6 все порты подписаны, используйте плату не только в этом проекте, там так-же предусмотрены все полезности в виде INT прерываний и т.п.