Arduino. Лазерный лабиринт.

Закралась ко мне идея по созданию умного дома. Закралась и стала житья мне не давать. Руки так и чесались что-то делать.
Но, в радиоэлектронике на тот момент, я мог только отличить конденсатор от резистора ))).
Понимая что без базовых знаний у меня ничего не получиться — засел за теорию.
Позже, все таки, купил минимум из набора ардуинщика и начал тупо повторять готовые примеры. Конечно, восторг от работающих схем не передать словами, но с каждым разом этот восторг начинал остывать.
Хотелось что-то делать толковое, но что? С чего начать? По себе знаю, что изучение чего-то, лучше дается в реальной работе, с конкретным конечным результатом.
Однажды, меня спросили: можно ли реализовать на ардуино аналог аттракциона «Лазерный лабиринт»? Подумав, я не увидел ничего сложного в плане электроники (как совсем начинающий электронщик ) и сказал, что можно.
После чего, я согласился его сделать… заодно и теорию с практикой буду изучать для себя.

Достаточно много времени ушло на изучения аналогичных проектов, их алгоритмов, нюансов… конечно никто не выкладывал деталей в существующих проектов, потому весь алгоритм строился по увиденным рекламным видеороликам.

В итоге был сформирован следующий алгоритм:
1. При входе кнопкой выбирается уровень сложности.
2. Заход в комнату и нажатием кнопки старт включаются лазеры и начинается отсчет таймера.
3. Необходимо пройти до конца комнаты не задев лучей и нажать кнопку «полуфиниш». Если задевается луч — включается сирена, задетый лазер выключается и на табло фиксируется количество задетых лазеров.
4. После нажатия кнопки «полуфиниш» задетые выключенные лазеры снова включаются. Необходимо вернуться и нажать кнопку старт для фиксации конца игры и остановки таймера.
5. На табло должно отображаться уровень игры, время в секундах и количество задетых лазеров.
6. При старте игры на каждый уровень автоматически должна включаться своя музыка, а на финише выключаться.
Вот такой стандартный алгоритм.

Ну, что ж, всех спать, а сам за паяльник… так и потянулись вечера да ночи.

На первом этапе отрабатывалась работа кнопок, запуск лазеров и контроль приемников лазеров.

Вторым этапом было изучение сдвиговых регистров для работы 7-ми сигментных индикаторов.

В результате изучил программу SPrintLayout и методом ЛУТа изготовил свои первые в жизни платы для работы 7-ми сегментных индикаторов.

Третий этап — озвучка всего этого хозяйства. Реализовывалось на шилде wtv020-sd-16p, который с трудом удалось запустить по причинам, с которыми сталкиваются в первый раз все начинающие ардуинщики.

Четвертый этап — сборка всего этого добра в корпус и поиском решения разъемов коммутации всех устройств.

Что же в результате всего получилось и как это выглядит в финале.

Реализовано:
— система построена на Arduino MEGA;
— 10 лазеров и приемников — с зеркалами 20 лучей;
— 3 уровня сложности;
— подсветка активных клавиш;
— отдельный плей лист на каждый уровень;
— режим настройки лазеров ;
— вывод на 2 табло счетчик касаний, номер уровня и секундомер;
— восстановление выключенных лазеров при проходе половины дистанции;
— при задевании лазера проигрывание короткого тревожного сигнала;
— реализована статистика количества стартов, финиша, ресетов, и призовых финиширований (проход атракциона без касания лазеров).

Также сформирован новый список доделок, переделок и реализации новых функций. Таких, как:
— увеличение количества лазеров до 30 шт;
— подключение табло по RS-485:
— подключение модулей GSM и WIFI для ведении статистики на отдельный сервер;
— реализация режима динамической презентации;
— подключение ТВ и запуска рекламных роликов в период простоя, а в режиме игры — ее трансляция;
— автоматический режим работы дым-машины
и много другого…

Вот, таким получился мой первый проект на Arduino.

 

 

 


Уникальных посетителей темы: 221

6 мыслей о “Arduino. Лазерный лабиринт.”

  1. Интересная штука.
    А для защиты глаз используете спец очки?
    Какой мощности лазеры Вы используете?

    1. Никакой защиты не используем, она не нужна. При касании лазера он мгновенно отключается. Даже специально пробовали подлазить чтобы в глаз попало, не получается, отключается раньше.
      Мощность от 5 мв. Уже луч хорошо видно

  2. Здравствуйте. Доброго времени суток. Проект просто супер. мне очень понравился. хочу повторит ваш проект. не могли бы вы дать ссылки на детали, а именно на лазеры и табло (7-сегментный), если конечно вы их покупали через интернет. Можно еще ссылочку на скетч ? пожалуйста )).просто я в этом деле еще новичок, но очень хочется сделать в точности как у вас. Заранее спасибо.

    1. Добрый день. Этот проект перешел из стадии интересной самоделки в отдельный коммерческий проект. Скетча, естественно, получить не предоставляется возможным. Но, в общих чертах смогу подсказать что и как сделано. Если Вам хочеться повторить ради интереса, то советую вместо используемых у меня лазеров, перейти на лазерные указки. Они горааааздо дешевле, чем промышленный вариант с очень большим сроком работы и соответствующим охлаждением. Также, подумайте простой и не дорогой кронштейн, для крепления лазерной указки (так и ищите на али). В качестве приемников — можно построить на компараторе собственный модуль и регулировать его чувствительность под свои фоторезисторы. Готовый комплект лазер+приемник+кронштейн+БП стартует от $35, подумайте потянет ли любительский бюджет готовое решение или собирать гораздо дешевле самостоятельно. Блоки реле используются самые обычные на 8 и 4 канала. Табло куплено в офлайне и переделано под себя. (переделка один-в-один как у меня в статье про изготовление часов).
      Собственно, в последнем варианте реализовано подключение посредством вайфай модуля к серверу статистики, куда передается каждое нажатие кнопки и вся возможная телеметрия для построения финансового отчета. Также, реализована функция от воровства, аттракцион удаленно можно деактивировать в личном кабинете, и он перестанет запускаться.
      По этому подумайте над бюджетом, потому как этот проект выльется в копеечку.

  3. скажите пожалуйста, а фоновую музыку вы тоже через шилд wtv020-sd-16p воспроизводите (вместе со звуком задевание луча) ? и будет ли лучше если использовать вместо шилда wtv020-sd-16p, «mp3 модуль DFplayer» ? еще один вопрос ) вы подключили лазеры через реле, а как осуществляется питания реле ? т.е. у вас 10 лазеров, и они на 5 В каждый. (если от одного источника напряжения подключить, не сгорят ли остальные лазеры от увеличения напряжения , когда допустим два луча задеты). А можно обойтись без реле и заменит их полевыми транзисторами типа IRF520 У меня столько вопросов ). Последний вопрос, будет ли разумным вместо ардуино меги использовать DUE ? или хотя-бы Mega ADK так как может быть со временем (когда наберу опыта в этом деле) подключу управление лабиринта к Андроиду. (планшет со специальным приложением для выбора уровня и.т.п.) ИЛИ ардуино мега все это и сам потянет спокойно ? Спасибо Вам огромное !

    1. Для фоновой музики используется и wtv020-sd-16p, а в новой версии — DFplayer.
      Про питания лазеров не понял вопроса — если в Вас дома включены 5 лампочек, то при выключении 2-х не сгорят ли остальные-я правильно провел аналогию?
      Управлять питанием лазеров можно как реле так и мосфетами с соответствующей обвязкой.
      Можно использовать и НАНО, только определите для себя как вы реализуете увеличении портов для лазеров и приемников.
      И делаю на Меге, чтобы не заморачиваться с недостатком портов.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *