Хочу сделать пугачку-говорилку
- Войдите на сайт для отправки комментариев
Чт, 02/04/2020 - 16:15
Добрый день, друзья. Хочу сделать пугачку-говорилку. Есть плата D1 mini обычный датчик движения mp3 player.
Не могу понять как написать код таким образом. что бы если в течении 40 секунд есть движение в поле видимости датчика то воспроизводим музыку.
p.s. просто на движение музыку воспроизводить научился.
Так же желательно не на delay(); это делать. Т.К. в дальнейшем планирую перепрошивать d1 mini через wifi удаленно. а на делей говорят это сделать не получится
Обычным бывает стиральный порошок, а датчики движения бывают инфракрасные; ультразвуковые; микроволновые; гибридные, может ещё какие, но "обычных" точно не бывает.
А что Вы можете понять? Хоть какой-то код у Вас есть? Хоть какие-то попытки делались? Выкладывайте.
Нет, так не пойдёт, прочитайте сначала обязательную для всех новичков тему, а потом выложите код как положено. Как Вы прикажете мне его комментировать, если в нём даже номеров строк нет?
millis() знаете? Вот, оперируя им, определяйте сколько времени прошло с момента первого движения. Если > N sec, то включайте плеер.
Ребят, что написал не так? все равно играет при первом же движении
все
во-первых. ты по срабатыванию датчика сначала должен запомнить время - где это в твоем коде? - нигде
во-вторых, нужен флаг, показывающий. что таймер уже запущен - этого тоже нет
И только если все три условия - 1) флаг поднят, 2) прошло 5 сек и 3)сигнал все еще не пропал - истиннны, только тогда играем
Ребята, я вообще не понимаю с этим флагом. Понимаю, что чего-то не хватает, а чего не пойму (
popkop, логика работы контроллера в большинстве случаев полостью совпадает с логикой человека: постарайтесь представить себя на месте контроллера - как бы Вы лично решали поставленную задачу, и сформулируйте это на бумаге. Для начала - по-русски.
Ребята, переписал уже код по другому. Все равно работает не правильно. Где логику нарушил?
Хоть комментарии напишите
Посидел пар дней и справился с этой задачей, просто подправил логику.
Ребята, другой вопрос: необходимо как-то общаться с моей платой d1 mini через wi-fi или другие средства. К примеру: хочу отключать датчик, что бы он не срабатывал (снимать с сигнализации). Может есть какие-то библиотеки или другие средства?
Я вижу только вариант: это подымать web сервер. И через него проводить общение
по простому Тактовой кнопкой можно управлять. Если более сложный функционал. То несколько кнопок, экран с меню. Или взаимодействие девайса со смартфоном по блютуз или вайфай. Опять же самое простое через простые терминалы типа serial bluetooth terminal или serial WiFi terminal. А лучше по gsm - Думаю для охранки это хорошо иметь еще и оповещение на телефон . если будет gsm , то можно прикрутить управление по mqtt. еще есть вариант управления через инфракрасный канал пультом от телека.