Вопрос по разработке таймера

Обсуждаем контроллеры компании Atmel.
Ответить
Alerr
Встал на лапы
Сообщения: 146
Зарегистрирован: Вт май 03, 2011 20:01:23

Вопрос по разработке таймера

Сообщение Alerr »

Привет всем!
Заранее прошу прощения если опубликовал вопрос в неверной ветке.
Сто лет назад имел опыт работы с Atmega8/16/32: программировал всякое типа мигания диодами. В общем какой-то опыт работы с МК был.

Сейчас понадобилось сделать таймер. Сделал бы на AtmegaX+кварц, но нужно минимальное токопотребление. Желательно вообще 0, но тк 0, не бывает, то нашел вот этого товарища: https://www.rxelectronics.kr/datasheet/09/AM1815AQ.pdf (Если есть еще что-то лучше, то был бы признателен за подсказку)

Таймер, условно, в течение года-двух (еще не определился) будет включать и выключать светодиод, который тоже питается от общей батарейки 3В.

То есть таймер:
- через промежуток времени TX1 должно размыкать цепь питания на время t1 (от минуты до пары часов).
- через промежуток времени TX2 должно замыкать цепь питания на время t2 (на 6-12 часов).

Пока мне нужно сделать так, чтобы таймер хотябы работал :)
В схемотехнике разбираюсь слабо, но почитав Datasheet понял, что AM1815AQ программируется через интерфейс I2C/SPI.

Опыта работы с SPI у меня не было, но насколько понимаю, Atmega поддерживает SPI и через него можно запрограммировать и таймер AM1815AQ 8)
То есть для достижения цели мне потребуется программатор атмеги, сама атмега и подключение по SPI интерфейсу к AM1815AQ:
-=.png
(155.63 КБ) 44 скачивания
Просто я не знаю получится ли запрограммировать AM1815AQ по SPI, может для нее нужен другой программатор?
Дело в том, что в режиме SPI (вычитал в сети) устройства должны работать в режиме Master-Slave. Тк для атмеги программатор имеется, то теоретически я смогу перевести ее в режим мастера. А вот с товарищем AM1815AQ не знаю как быть.

Может кто-то делал что-то подобное и имеет опыт. Заранее благодарен за помощь.
Adrift
Вымогатель припоя
Сообщения: 539
Зарегистрирован: Вт окт 01, 2024 15:22:33

Re: Вопрос по разработке таймера

Сообщение Adrift »

Ваш светодиод будет потреблять от общей батарейки в несколько тысяч раз больше типичного мк во сне, т.е. если, как вы пишете, светодиод работает по 6-12 часов, то за это время он сожрет как мк за несколько лет. И зачем вам таймер потребляющий 0? Ищите такой светодиод )
Alerr
Встал на лапы
Сообщения: 146
Зарегистрирован: Вт май 03, 2011 20:01:23

Re: Вопрос по разработке таймера

Сообщение Alerr »

[uquote="Adrift",url="/forum/viewtopic.php?p=4781200#p4781200"]Ваш светодиод будет потреблять от общей батарейки в несколько тысяч раз больше типичного мк во сне, т.е. если, как вы пишете, светодиод работает по 6-12 часов, то за это время он сожрет как мк за несколько лет. И зачем вам таймер потребляющий 0? Ищите такой светодиод )[/uquote]

Это условно "светодиод". На самом деле это датчик системы охраны. Мне абсолютно неважно как он работает так долго и прочие его тонкости. Знаю что он живет 1 год на одной батарейке 3В в самом эффективном режиме (когда почти не взаимодействует с пультом охраны). Там есть такой режим.
Есть на 3.7В датчики, живут 3 года, но там и сигнализация другая и размеры датчиков другие. В общем руки не приложить, нужно просто их купить. Но они по размеру здоровые и это мне не подходит.

В общем мои в режиме работы с пультом - месяцев 8 живут, а по размеру они в диаметре 3.5 см на 1 см (толщина).
Мне хотелось бы продлить время жизни датчика на 2-3 года так:
- с 10.00 до 19.00 (мое рабочее время) датчик включается и работает.
- в остальное время он отключатеся
Переключение времени (зима-лето) учитывать пока не буду. Примерно такая задача стоит.
akl
Друг Кота
Сообщения: 4443
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: Вопрос по разработке таймера

Сообщение akl »

Тоже приходилось решать аналогичную задачу. Как вариант на tiny25. В исходнике задаете необходимые интервалы, ассемблируете, полученный хекс загружаете. Смотрите ток потребления
Изображение
Alerr
Встал на лапы
Сообщения: 146
Зарегистрирован: Вт май 03, 2011 20:01:23

Re: Вопрос по разработке таймера

Сообщение Alerr »

[uquote="akl",url="/forum/viewtopic.php?p=4781212#p4781212"]Тоже приходилось решать аналогичную задачу. Как вариант на tiny25. В исходнике задаете необходимые интервалы, ассемблируете, полученный хекс загружаете. Смотрите ток потребления
Изображение[/uquote]

Спасибо за ответ!
Посмотрел Datasheet: https://static.chipdip.ru/lib/696/DOC011696762.pdf
Low Power Consumption
– Active Mode:
• 1 MHz, 1.8V: 300 µA
– Power-down Mode:
• 0.1 µA at 1.8V

Все же нано на 10^3 меньше чем микро. Потому хотелось бы собрать на ультранизкопостребляющем таймере
veso74
Поставщик валерьянки для Кота
Сообщения: 1902
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Вопрос по разработке таймера

Сообщение veso74 »

Подключитье внешний микроконтроллер, который будет загружать данные в RTC (мне проще всего по I2C), после чего сможет переходить в "спящий режим", можно и просыпаться по событию. Вот еще несколько типов с током 100 nA. Есть функция alarm: PCF8523, RX‑8111CE, RV‑3028, PCF2123 (SPI)
Alerr
Встал на лапы
Сообщения: 146
Зарегистрирован: Вт май 03, 2011 20:01:23

Re: Вопрос по разработке таймера

Сообщение Alerr »

[uquote="veso74",url="/forum/viewtopic.php?p=4781248#p4781248"]Подключитье внешний микроконтроллер, который будет загружать данные в RTC (мне проще всего по I2C), после чего сможет переходить в "спящий режим", можно и просыпаться по событию. Вот еще несколько типов с током 100 nA. Есть функция alarm: PCF8523, RX‑8111CE, RV‑3028, PCF2123 (SPI)[/uquote]


Внимательно читал Datasheet по таймеру AM1805 и заметил, что он не умеет хранить данные в регистрах при отключении питания. То есть при замене батареи все слетит. Ну или при любом плохом контакте с батареей все слетит. Это очень критично в моем случае.

Гуглил программируемые таймеры с энергонезависимой памятью и нашел пока этот вариант:
RV-8803-C7
https://www.microcrystal.com/fileadmin/ ... 803-C7.pdf
В сети нет нашел пока информации о том как его подключать к Atmega, но через Arduino, вроде как, можно его запрограммировать.
veso74
Поставщик валерьянки для Кота
Сообщения: 1902
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Вопрос по разработке таймера

Сообщение veso74 »

В случае отключения питания передайте управления управляющему микроконтроллеру, инициализация новыми/старыми, если запомнили в напр. EEPROM/ значениями и дальнейшее выполнение в цикле. Но понадобится меню, кнопки, настройка часов, экран ...

А любом случае, понадобится способ самостоятельно корректировать часы, потому что, какими бы точными они ни были, всегда будет расхождение с точным временем. Напр. хорошая DS3231 обеспечивает точность измерения времени в течение года, с погрешностью напр. не более минуты.

При использовании обычного RTC и обычного кварца (32768 Hz) "накопите" напр. 1-7 и более секунд в день (и это в лучшем случае - если отрегулировали, выбрали напр. кварц и конденсаторы кварца). Через год разница во времени будет "хорошей" :)) .
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 584
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Вопрос по разработке таймера

Сообщение linux_rulezz »

Потом выяснится, что нужно NTP…
Ну неужели нельзя к любому компьютеру в этом заведении подключить USB-релюшку, да дергать нужные контакты? Вообще ничего программировать не придется, разве что bash-script простейший написать и по cron'у его запускать.
Windows must die!
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15539
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Вопрос по разработке таймера

Сообщение BOB51 »

Ну и зачем такой садомазохизм?...
Используем любой RTC плюс МК в режиме глубокого сна с периодическим пробуждением ...
Та же DS3231 в режиме будильника... МК с микропотреблением (раньше ПИКушки тем славились, на сегодня вроде и АВРки не уступают).
Больше должен волновать источник питания в смысле саморазряда при длительном хранении.
:roll:
Или глянуть как устроены транспортные логгеры, что температуру груза отслеживают...
:roll:
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 584
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Вопрос по разработке таймера

Сообщение linux_rulezz »

[uquote="BOB51",url="/forum/viewtopic.php?p=4781352#p4781352"]Используем любой RTC[/uquote]
И получаем минимум 2-3 секунды погрешности в месяц. И это - в идеальных условиях…
Если условия эксплуатации позволяют, идеальный вариант - именно напрямую USB-релюшку в комп, да и нехай себе щелкает. У меня многие вещи именно так и работают. Если дистанция от компьютера нужна - используем CAN или 485 (последний позволяет недорого хоть до 10км сделать "удлинитель" на оптоволокне), а с "той стороны" - тоже 300-рублевая китайская релюшка…

// да, у меня есть профдеформация, т.к. в астрофизике даже 50мс погрешности во времени — полный трешняк. Поэтому, конечно, если ТСу сгодятся секунды погрешности в месяц, то и такое решение сгодится.

P.S. А вот чего не понимаю, так это почему именно от батарейки питание? Неужели в радиусе ста метров нет ни одной розетки?
Windows must die!
Alerr
Встал на лапы
Сообщения: 146
Зарегистрирован: Вт май 03, 2011 20:01:23

Re: Вопрос по разработке таймера

Сообщение Alerr »

"P.S. А вот чего не понимаю, так это почему именно от батарейки питание? Неужели в радиусе ста метров нет ни одной розетки?"
- это беспроводные датчики разбития стекла. На каждое стекло вешается по такому датчику. Мне понравились мелкие, почти размером с батарейку-таблетку на 3В. Их даже на окне почти не заметно. Визуально почти никак не мешают и проводов к каждому окну городить не нужно.
Примерно год они держат, но хотелось бы побольше. В идеале вообще бы про них никогда не вспомнинать, но увы XD

"Больше должен волновать источник питания в смысле саморазряда при длительном хранении."
- тут я не знаю сколько на практике батарейка на 3В саморазряжается.
В сети видел что 10 лет может храниться и саморазряд примерно 1-2% в год. Но допускаю что это неправда.

Ладно, пока забиваем на погрешности со временем. Пустть таймер сильно будет ошибаться. Учту это в периоде включения-выключения, запас сделаю.

"Используем любой RTC плюс МК в режиме глубокого сна с периодическим пробуждением ...
Та же DS3231 в режиме будильника... МК с микропотреблением (раньше ПИКушки тем славились, на сегодня вроде и АВРки не уступают)."
- гуглил эту схему, ее длина около 1 см, что ну очень много для датчика. Если очень постараться найти место, то в сумме можно выкроить 8х8х3мм (по памяти, он у меня не под рукой).


Пока изучаю это:
AB08X5
https://www.alldatasheet.com/datasheet- ... B08X5.html

Насколько понял она имеет энергонезависимую память и можно ее запрограммировать на будильник по таймеру. Но опять есть проблема!
Эта схема умеет вызывать будильник только через фиксированое время. То есть она не умеет вызывать будильник через 1 час, а следующий через 5 часов.
Ну я думаю что можно использовать 2 таких схемы, которые запрограммирую на 2 временных промежутка и одна должна активировать другую и выключать себя.
В общем ... XD
Ну мне не нравится городить такой велосипед. Хотелось бы все в одном устройстве.
Adrift
Вымогатель припоя
Сообщения: 539
Зарегистрирован: Вт окт 01, 2024 15:22:33

Re: Вопрос по разработке таймера

Сообщение Adrift »

[uquote="Alerr",url="/forum/viewtopic.php?p=4781210#p4781210"]В общем мои в режиме работы с пультом - месяцев 8 живут, а по размеру они в диаметре 3.5 см на 1 см (толщина).
Мне хотелось бы продлить время жизни датчика на 2-3 года так:
- с 10.00 до 19.00 (мое рабочее время) датчик включается и работает.
- в остальное время он отключатеся[/uquote]
Т.е. там что-то типа CR2032 стоит на ~200mAh и если работает 8 месяцев, значит в сутки выходит 800uA, а за 9 часов может быть 300uA. Итого сам датчик - 300uA в сутки, а датчик с мк - 324... Большого смысла искать мк который будет жрать меньше 1uA нет.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15539
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Вопрос по разработке таймера

Сообщение BOB51 »

Неужели то свет клином на одном типе датчиков сошёлся?
Существует много разных способов обнаружения разрушений.
8)
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 584
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Вопрос по разработке таймера

Сообщение linux_rulezz »

Alerr, датчик разрушения стекла, который будет отключаться на какое-то время? Оригинально…
Самый дешевый вариант еще в СССР использовали. Да и сейчас практически ничем эти датчики не отличаются. Но таки кабель надо протянуть, да. Да и в чем проблема? Все равно еще на этапе ремонта штробится адское количество штроб: под силовую часть, низковольтку разнообразную, оптоволокно…
Датчики же проникновения в окно нынче в очень разнообразном варианте выпускаются. Можно просто снаружи приклеить на каждое окно один лазер-"линейку" и полоску фотодиодов с шагом, скажем, сантиметров 10.
Хотя, давно уже никто так не заморачивается: просто камерами все обвешивают и пишут видео. Главное - чтобы сервер с видео не стоял в охраняемом помещении ☺
Windows must die!
Alerr
Встал на лапы
Сообщения: 146
Зарегистрирован: Вт май 03, 2011 20:01:23

Re: Вопрос по разработке таймера

Сообщение Alerr »

"Неужели то свет клином на одном типе датчиков сошёлся?
Существует много разных способов обнаружения разрушений.
8)"
- система охраны удобная, мне нравится.

"Alerr, датчик разрушения стекла, который будет отключаться на какое-то время? Оригинально…" - на время пока я дома.

"Да и сейчас практически ничем эти датчики не отличаются. Но таки кабель надо протянуть, да. Да и в чем проблема?"
- я больше программист, а не ремонтник. Резать стены - не мое.
"Датчики же проникновения в окно нынче в очень разнообразном варианте выпускаются. Можно просто снаружи приклеить на каждое окно один лазер-"линейку" и полоску фотодиодов с шагом, скажем, сантиметров 10."
- наверняка есть разные датчики, но я под себя хочу его допилить.
Аватара пользователя
linux_rulezz
Вымогатель припоя
Сообщения: 584
Зарегистрирован: Пн сен 15, 2025 08:43:23
Откуда: Маленький СССР посреди шариатской республики

Re: Вопрос по разработке таймера

Сообщение linux_rulezz »

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

// и таки я продолжаю настаивать на проводных решениях. Это же не чисто поле, где нужно "линк" на 10км кинуть. Провел витуху на CAN, с ней проложил 2.5мм² на питание 24В. У китайцев нонче есть дешевые компактные DC-DC на 3.3 и 5В, которым даже внешние индуктивность и диод не нужны…
Хотя, конечно, если дома есть постоянно работающий сервер (торрентокачалка и т.п.), то можно и беспроводное решение обеспечить на основе "радиореле" с того же алиэкспресса. Только реле заменить на мосфет, который будет отключать нагрузку. Зато такое решение позволит не париться с синхронизацией времени каждой отдельной точки, да и будет возможность централизованно включить/выключить.
Windows must die!
Ответить

Вернуться в «AVR»