Как и обещал: видео + пару слов про алгоритм работы.
Так как вся система автономная (на батарейках), вопрос низкого потребления очень важен. А если учесть что коробочка, которая ставится на вел не имеет кнопки "ВКЛ", то все еще сложнее. Благо что всё на чипах от TI, которые славятся маленьким аппетитом.
Сначала сделал все в лоб. Датчик на веле все время в режиме приёма (потребление около 20 мА), по приходу сигнала от часов, включается режим охраны. Все бы ничего, но первый же подсчет показал что батарейка в модуле сядет за пару тройку часов. Что не есть гуд. Пришлось включить смекалку.
У акселерометра есть очень удобный режим, в котором он генерит прерывание на спец выводе если был превышен установленный предел по одной/всем осям. Используя эту фичу имеем: после включения и настройки датчика, контроллер засыпает, и спит пока его не разбудит аксель (то есть вибрация), после этого включается приемник и ждет 30 секунд сигнала с часов. Если сигнал есть, то переходим в режим охраны. Если нет, то засыпаем снова.
Так как по сути потребляет только датчик (что-то около 400 мкА), то время работы вырастает на порядок. Получается что оно само включается когда я еду на веле (есть вибрация), и ждет сигнала в тот момент когда это нужно - после вибрации (приехал куда надо и остановился). Большую же часть времени (когда вел дома ночью), система спит.
Пару слов о работе самой сигналки после 2-х месячной эксплуатации. Радиус не большой, но как раз хватает чтобы сигнал тревоги дошел от велопарковки до меня в магазине, что и требовалось от всего этого безобразия. Есть еще пару багов и поле для усовершенствований, чем я и займусь ближе к зиме наверное.
Ну и видео "на столе":
No comments:
Post a Comment