Автор Тема: Переделка "Air Wick" ( пырскалка от дяди Вани из Тайвани)  (Прочитано 39897 раз)

0 Пользователей и 1 Гость просматривают эту тему.

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
Прошло 6 часов. Всё ОК. Сбоев нет.
while(1||!1);
зберігай спокій

Stariywolk

  • .
  • *
  • Сообщений: 97
Пришел с работы, смотрю - а тут прямо как сводки с фронтов! :co_ol:  :dr_ink:
Позвонил по «03» и на всякий случай в Америку по «911»… Так наши на полчаса раньше приехали!

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
Ну, что же. Прошло более 8-ми часов - никаких сбоев не наблюдается.
При этом произошло более 220.000 записей в ячейку.
Можно-ли сделать вывод, что запись без предварительного стирания не изнашивает память?
Ладно, подождем ещё...
while(1||!1);
зберігай спокій

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
(Нет темы)
« Ответ #18 : 04 Апрель 2013, 19:05:38 »
Пока мы чего-то ждем, вкратце объясню смысл происходящего.

Есть тут цель - сделать некий долгоиграющий таймер. Питание - батарейки.
Естественно хочется продлить жизнь батарейкам минимизируя их ток.
У AVR контроллеров самый экономичный режим Power-Down.
В этом режиме вырубается ядро и абсолютно вся периферия, кроме Wachdog Timer сторожевого таймера. (пёс всегда на чеку!)
При этом по току потребления вырисовывается вот такая замечательная картинка:


грех не воспользоваться таким режимом для экономии батареек
while(1||!1);
зберігай спокій

Stariywolk

  • .
  • *
  • Сообщений: 97
Супер! Я сейчас пытаюсь тоже вникнуть в теорию. Пока ... как Ёжик в тумане :-)
Позвонил по «03» и на всякий случай в Америку по «911»… Так наши на полчаса раньше приехали!

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
(Нет темы)
« Ответ #20 : 04 Апрель 2013, 19:51:17 »
Ну, дальше.
В режиме powerdown жив только пёс wachdog который периодически лает и будит Хозяина.
Следовательно, единственный способ мерить Время - считать "лаи" пса.
while(1||!1);
зберігай спокій

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
(Нет темы)
« Ответ #21 : 04 Апрель 2013, 21:09:16 »
Так вот...
Для хранения числа лаев (период которых, кстати, можно регулировать, думаю оптимально будет 4 сек) применяем  EEPROM.
А теперь прикиньте, сохранять надо всегда один раз в 4 сек.
И так до упора, пока хватит ресурса памяти.
Ресурс заявлен как 100.000
Несложно посчитать
1000000 * 4  =  4000000 секунд или 111 часов или 4.6 суток
фигня получается! 5 суток работоспособности устройства нас не устраивает!!!
while(1||!1);
зберігай спокій

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
(Нет темы)
« Ответ #22 : 04 Апрель 2013, 21:33:54 »
шеф!!! что делать?!  шеф...  :wo_ol:

далi буде...
while(1||!1);
зберігай спокій

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
Прошло 12 часов..
Визуально глюков записи не видно. Я так и думал...
надо наверно несколько суток тестить...
while(1||!1);
зберігай спокій

Stariywolk

  • .
  • *
  • Сообщений: 97
Цитата: "slav0n"
что делать?!
Может к черту этот проект? Похоже это просто нереально.
Но с другой стороны непонятно - часы, собранные на Attiny работают веками???
Хотя там не стоит вопрос экономии по питанию :ne_vi_del:
Позвонил по «03» и на всякий случай в Америку по «911»… Так наши на полчаса раньше приехали!

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
Цитата: "Stariywolk"
часы, собранные на Attiny работают веками???
а у нас будет работать тысячелетиями
while(1||!1);
зберігай спокій

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
(Нет темы)
« Ответ #26 : 06 Апрель 2013, 11:12:45 »
Придумал я как регулировать длительность выдержки таймера.
Всё будет делаться при помощи одной кнопки SET следующим образом.
Зажимаем кнопку, через несколько секунд начинает мигать светодиод.
1 вспышка - пауза - 2 вспышки - пауза - 3 вспышки - пауза - и так далее по-кругу.
Количество вспышек соответствует выдержке в часах.  
Если отпустить кнопку сразу после желаемого количества вспышек - запускается соответствующая выдержка.

Немного изменил схему, думаю проще будет разводить печатку.
while(1||!1);
зберігай спокій

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
(Нет темы)
« Ответ #27 : 06 Апрель 2013, 16:36:04 »
Ну, вот собственно тестовая прошивка.
Ускоренные тайминги. Вместо часов будет пырскать раз в 8 - 16 - 24 сек.  Для теста чтобы не ждать часами сработки.
while(1||!1);
зберігай спокій

slav0n

  • Администратор
  • .
  • *****
  • Сообщений: 4571
Цитата: "Stariywolk"
Может к черту этот проект? Похоже это просто нереально.
Лично мне этот проект интересен тем, что можно добиться мизера потребления в паузе - 6 мкА.
while(1||!1);
зберігай спокій

Stariywolk

  • .
  • *
  • Сообщений: 97
Цитата: "slav0n"
Ну, вот собственно тестовая прошивка.
Вот это класс!!! Завтра займусь!  :co_ol:
Плату с коробки уже вытащил - деталей не так уж и много, все поместится. Переключатель оставлю чтобы можно было выключать полностью. :pri_vet:-:
Позвонил по «03» и на всякий случай в Америку по «911»… Так наши на полчаса раньше приехали!