Девайсы
Софт
Статьи
Контакты

Микроконтроллерный таймер для споттера v.2

Описанный таймер предназначен для управления силовым ключом в споттере импульсами с точно заданным временем выдержки. Устройство является результатом доработки старого таймера. В новой версии доработана компоновка платы и добавлена оптронная развязка цепей управления, что позволило применять в силовой цепи обычные тиристоры, не имеющие опторазвязки.

    Возможности таймера:
  • управляющий сигнал может быть подан на тиристор, симистор, твердотельное реле, контактор с соответствующей катушкой (например, КНЕ-220);
  • диапазон регулировки 0,01-0,99с с шагом 0,01c;
  • диапазон регулировки 0,1-9,9с с шагом 0,1с;
  • ручное управление (сигнал подается без таймера, пока удерживается кнопка пистолета).

Таймер для споттера

Рисунок 1 - Фото таймера.

Схема таймера споттера

Рисунок 2 - схема таймера.


Алгоритм

При подаче питания на контроллер, в первые 1,5 секунды отображается бегущий огонь, после этого на 1 секунду высвечивается версия прошивки, затем 1 секунду высвечивается вариант диапазона регулировки времени (описаны далее), который был сохранен в EEPROM. Далее происходит переход в рабочий режим "авто" (задание выдержки по таймеру). На индикаторе отображается цифра, показывающая заданную величину выдержки в единицах, соответствующих шагу регулирования (0,01с или 0,1с). Так цифра 10 может соответствовать выдержке 0,10с, либо - 1,0с. Регулирование осуществляется кнопками "убавить" или "добавить". При длительном удержании этих кнопок (более 10 шагов) происходит ускорение прокрутки. По нажатию внешней кнопки "пуск", подключенной к клеммнику на плате, происходит генерация одиночного импульса с заданной выдержкой и сохранение этого значения в EEPROM. Последнее сохраненное значение будет восстановлено после перезапуска питания контроллера. Кнопка "авто/ручной" служит для перехода в ручной режим. В этом режиме на индикаторе отображается "--", а длительность генерируемого импульса будет соответствовать длительности удержания кнопки "пуск". Реакция на нажатие и отпускание кнопки "пуск" составляет 1мс. Но, между двумя нажатиями подряд добавлена выдержка 250мс (фильтр дребезга).

Диапазоны регулирования

Работа таймера возможна в следующих диапазонах: t1 - 0,01-0,99с с шагом 0,01c; t2 - 0,1-9,9с с шагом 0,1с. Если нужно изменить диапазон регулировки, то нужно войти в режим настройки. Для этого нужно зажать кнопку выбора режима "авто/ручной" во время подачи питания на контроллер, либо нажать её в первые 1,5с после старта, пока отображается бегущий огонь (длительность нажатия не имеет значения). Выбор варианта t1 или t2 осуществляется кнопками "убавить" или "добавить", а сохранение и выход из режима настройки - нажатием кнопки "авто/ручной" (как и вход).

Файлы

spotter2_pub.zip (529 кб) - прошивки, платы в SprintLayout, схема в PDF (для печати);
spotter2_smd.zip (5 Мб) - smd версия платы (прислал Дмитрий Мринский).

История изменений прошивки
r09 (18.09.2022)
- объединены два диапазона регулирования в одной прошивке 0,01-0,99 с и 0,1-10 с;
- выбор диапазона/шага с сохранением в EEPROM производится в режиме настройки, вызываемом кнопкой "авто/ручной" при старте МК;
- ускорение прокрутки значений при удержании кнопок добавления/убавления дольше 10 шагов подряд;
- на кнопки добавлены внутренние подтяжки, из схемы v2.3 и платы main_board_rev7.lay убраны соответствующие резисторы (допустимо применение прошивки со старыми платами, имеющими эти резисторы).

r08 (17.09.2022)
- полностью переписан код прошивки;
- требуемая частота тактирования для всех вариантов прошивок сведена к 8МГц (без делителя);
- увеличена частота обновления 7-сегментного индикатора до 122 Гц;
- отклик по нажатию и отпусканию кнопки "пуск" уменьшен до 1 мс, вместе с этим добавлен фильтр дребезга 250мс между двумя нажатиями подряд;
- диапазон изменения шагов 1-99 (было 2-99);
- отображение версии прошивки во время запуска МК;

r07 (17.02.2016)
- сохранение в EEPROM последнего значения, при котором была нажата кнопка "пуск".
r06 (18.02.2015)
- добавлена пауза выключенного состояния сегментов при переключении между разрядами в динамической индикации, было слабое свечение неактивных сегментов.
r05 (23.11.2014)
- замедлена реакция на кнопки из-за затруднений при переключении режима.

Установка фьюзов ATTiny2313:
CKSEL = 1110 - тактирование от кварца 8МГц;
CKDIV8 = 1 - отключить делитель частоты;
BODLEVEL = 100 - сброс МК при напряжении питания ниже 4,3В.

Сборка

Как прошить контроллер смотрите здесь. Если после сборки и прошивки отображение цифр на индикаторе некорректно, проверьте, соответствует ли прошивка вашему типу индикатора (с общим анодом или катодом). Кроме того, на плате индикатора должны быть запаяны перемычки (рис. 3), которые содержатся на слое M1 платы interface_board_rev5.lay. Если время задержки в разы отклоняется от заданного в большую или в меньшую сторону, ненормальная скорость отклика кнопок и заметно мерцание цифр, то следует проверить соответствие частоты кварца и правильность установки фьюзов CKSEL и CKDIV8.

Обратная сторона платы индикатора

Рисунок 3 - Перемычки на плате индикатора.


Видео





Комментарии

#41 сообщение от анатолий 28.02.2015
Добрый день! собрал первый вариант вашей схемы Спасибо большое работает все замечательно вот только при нажатии на клавишу пропадает индикация писал в вашем первом проекте как можно устранить? а так спасибо огромное за проект
#40 сообщение от admin 27.02.2015
Нога NC - not connected, ни к чему не подключена.. но на плате развел для того, чтобы была возможность задействовать 8-й бит без изменения платы, если будет нужно.
#39 сообщение от анатолий 26.02.2015
Добрый день! у вас на схеме не указанно сопротивление котрое идет с ноги 19 NC и куда оно идет и какой номинел если не затруднит отпишитесь
#38 сообщение от анатолий 26.02.2015
Добрый день! у вас на схеме не указанно сопротивление котрое идет с ноги 19 NC и куда оно идет и какой номинел если не затруднит отпишитесь
#37 сообщение от Игорь 10.02.2015
Спасибо за помощь.Avrdude справился.
#36 сообщение от Вячеслав 09.02.2015
Есть универсальное правило.Считываем фьюзы с нового мк,и смотрим фьюз RSTDISBL-если на нем нет галочки(как в пони прог), то выставляем фьюзы как на картинке, если есть- то инверсно.
#35 сообщение от admin 09.02.2015
Для usbasp есть софт avrdude, там можно шить и память и фьюзы.. только обратите внимание, что на скрине в пони инверсное отображение битов фьюзов, т.е. галка=0
#34 сообщение от Игорь 09.02.2015
Мой программатор Usbasp не дружит с Ponyprog, и как результат настройка фьюзов не доступна. Чем поможете?
#33 сообщение от Артем 04.02.2015
извиняюсь за беспокойство! нашел причину! замыкание между 16 и 17 ногами МК, видимо плохо протравилась плата. Спасибо за схему!!!
#32 сообщение от Артем 04.02.2015
прошивки пробовал обе так как не смог найти описание своего индикатора AECE 5261ag-1g. на данный момент прошивка spotter_005_ca перемычки наместе. не могу понять почему в цифре 8 все горит а в 2 не горит e-сигмент в 4,5,9-f. в 0 6 8 и e и f светятся(
 1   2   3   4   5   6   7   8   9   10   11   12   13   14 



Добавление комментария
Имя:
E-mail:
Сообщение: