Проект из серии "Максимум от Тини" - attiny45
Moderator: Shaos
-
- Fanat
- Posts: 85
- Joined: 20 Sep 2015 02:50
Проект из серии "Максимум от Тини" - attiny45
Доброго времени суток.
Данный проект начал 2013, а завершил в феврале 2019.
Желание проверить идеи, навешать функционал на тини по максимуму и добиться работоспособности от "таракана".
Как вариант - 3 Канальная тревожная сигнализация ATtiny45.
Реализованный функционал.
Постановка/снятие тревожной сигнализации - электронный ключ DS1990A.
Программирование через перемычки JP1,JP2,JP3 и кнопки "SET".
CMD1 - JP1 + Key "SET" - Добавление новых ключей (max 10).
CMD2 - JP2 + Key "SET" - Время включения РЕЛЕ оповещения, приращение по 1 сек.
CMD3 - JP3 + Key "SET" - Время задержки РЕЛЕ оповещения Вход/Выход LINE1, приращение по 1 сек.
CMD4 - JP1 + JP2 + Key "SET" - Режим работы РЕЛЕ оповещения - Одновибраторб на время включения.
CMD5 - JP2 + JP3 + Key "SET" - Режим работы РЕЛЕ оповещения - Меандр, на время включения.
CMD6 - JP1 + JP3 + Key "SET" - Резерв.
CMD7 - JP1 + Jp2 + JP3 + Key "SET" - Стирание всех ключей, время включения РЕЛЕ=5сек.задержка Вход/выход 15 сек.
Перемычки Jp1,Jp2,Jp3 - логика работы входных линий
JP4 - "Открыт" - (LINE1 NO) нормально разомкнут, "Закрыт" - (LINE1 NC) нормально замкнут.
JP5 - "Открыт" - (LINE2 NO) нормально разомкнут, "Закрыт" - (LINE2 NC) нормально замкнут.
JP6 - "Открыт" - (LINE3 NO) нормально разомкнут, "Закрыт" - (LINE3 NC) нормально замкнут.
;
Светодиоды R, G, Y - отражают состояние тревожной сигнализации.
Число-импульсным мигание (одно две и три вспышки)
R - тревога по линиям 1,2,3
G - готовность по линиям 1,2,3
Y - неисправность по линиям 1,2,3
Звуковое "Пьезо"
Реле оповещения.
Исходники, схема и прошивка.
Данный проект начал 2013, а завершил в феврале 2019.
Желание проверить идеи, навешать функционал на тини по максимуму и добиться работоспособности от "таракана".
Как вариант - 3 Канальная тревожная сигнализация ATtiny45.
Реализованный функционал.
Постановка/снятие тревожной сигнализации - электронный ключ DS1990A.
Программирование через перемычки JP1,JP2,JP3 и кнопки "SET".
CMD1 - JP1 + Key "SET" - Добавление новых ключей (max 10).
CMD2 - JP2 + Key "SET" - Время включения РЕЛЕ оповещения, приращение по 1 сек.
CMD3 - JP3 + Key "SET" - Время задержки РЕЛЕ оповещения Вход/Выход LINE1, приращение по 1 сек.
CMD4 - JP1 + JP2 + Key "SET" - Режим работы РЕЛЕ оповещения - Одновибраторб на время включения.
CMD5 - JP2 + JP3 + Key "SET" - Режим работы РЕЛЕ оповещения - Меандр, на время включения.
CMD6 - JP1 + JP3 + Key "SET" - Резерв.
CMD7 - JP1 + Jp2 + JP3 + Key "SET" - Стирание всех ключей, время включения РЕЛЕ=5сек.задержка Вход/выход 15 сек.
Перемычки Jp1,Jp2,Jp3 - логика работы входных линий
JP4 - "Открыт" - (LINE1 NO) нормально разомкнут, "Закрыт" - (LINE1 NC) нормально замкнут.
JP5 - "Открыт" - (LINE2 NO) нормально разомкнут, "Закрыт" - (LINE2 NC) нормально замкнут.
JP6 - "Открыт" - (LINE3 NO) нормально разомкнут, "Закрыт" - (LINE3 NC) нормально замкнут.
;
Светодиоды R, G, Y - отражают состояние тревожной сигнализации.
Число-импульсным мигание (одно две и три вспышки)
R - тревога по линиям 1,2,3
G - готовность по линиям 1,2,3
Y - неисправность по линиям 1,2,3
Звуковое "Пьезо"
Реле оповещения.
Исходники, схема и прошивка.
You do not have the required permissions to view the files attached to this post.
Last edited by kuber on 14 Mar 2019 01:50, edited 2 times in total.
-
- Maniac
- Posts: 325
- Joined: 15 Jan 2019 15:48
- Location: Украина, Луганская обл.
Re: Проект из серии "Максимум от Тини" - attiny45
Есть что усовершенствовать в вашей схеме, если это интересно конечно.
Шунтирование аналоговых входов светодиодом - МСМ не правильно, скорее всего будут искажения замеров. Rвх > 10 Мом.
В принципе, количество занятых ног можно еще сократить, на 2 как минимум.
Также не понятно как происходит индикация программирования. То есть перемычки поставил, кнопку нажал, а как увидеть что именно воспринял контроллер ?

Шунтирование аналоговых входов светодиодом - МСМ не правильно, скорее всего будут искажения замеров. Rвх > 10 Мом.
В принципе, количество занятых ног можно еще сократить, на 2 как минимум.
Также не понятно как происходит индикация программирования. То есть перемычки поставил, кнопку нажал, а как увидеть что именно воспринял контроллер ?
-
- Fanat
- Posts: 85
- Joined: 20 Sep 2015 02:50
Re: Проект из серии "Максимум от Тини" - attiny45
Доброго времени суток.
Значения с АЦП я усредняю, потом каждому режиму применяю диапазон значений АЦП.
Резисторный делитель на входах АЦП с стабилизатором в 3.3 вольта ограничивает напряжение в ~1.7 вольт, для светодиода это маловато чтобы он открылся.
По поводу программирования "перемычки поставил, кнопку нажал" по вспышкам соответствующих режиму программирования светодиодов и бипером.
Временные параметры "Время работы Реле и задержка на Вход/Выход" при программировании начинает отсчёт значений с 1, при удерживании кнопки идёт приращение (отслеживается свето/звуковыми сигналами) при отпускании кнопки в памяти фиксируется соответсвующее значение.
При занесении ключей в память - один звуковой сигнал, ключ записан, два ключ уже в памяти.
Интересно было бы посмотреть как можно сократить данную схему на 2 ножки ,с сохранением функционала.
В исходниках есть скудные коменты.
Значения с АЦП я усредняю, потом каждому режиму применяю диапазон значений АЦП.
Резисторный делитель на входах АЦП с стабилизатором в 3.3 вольта ограничивает напряжение в ~1.7 вольт, для светодиода это маловато чтобы он открылся.
По поводу программирования "перемычки поставил, кнопку нажал" по вспышкам соответствующих режиму программирования светодиодов и бипером.
Временные параметры "Время работы Реле и задержка на Вход/Выход" при программировании начинает отсчёт значений с 1, при удерживании кнопки идёт приращение (отслеживается свето/звуковыми сигналами) при отпускании кнопки в памяти фиксируется соответсвующее значение.
При занесении ключей в память - один звуковой сигнал, ключ записан, два ключ уже в памяти.
Интересно было бы посмотреть как можно сократить данную схему на 2 ножки ,с сохранением функционала.
В исходниках есть скудные коменты.
-
- Maniac
- Posts: 325
- Joined: 15 Jan 2019 15:48
- Location: Украина, Луганская обл.
Re: Проект из серии "Максимум от Тини" - attiny45
= удалено =
Last edited by Konstantin18 on 13 Mar 2019 08:42, edited 1 time in total.
-
- Fanat
- Posts: 85
- Joined: 20 Sep 2015 02:50
Re: Проект из серии "Максимум от Тини" - attiny45
Konstantin18 Что то мне не очень понятно с Вашей идеей.
В моей схеме порт PB5 используется для управления считыванием перемычек и переключателей программирования, если PB5 = 1 то считывается тремя входами АЦП значение соответсвующее значением перемычек(No/Nc), если PB5 = 0 считывается тремя входами АЦП значение соответсвующее значением переключателей программирования, при PB5 = Z состояния использую для оцифровки входных линий и управлений светодиодами RGY.
Если можно рисунок блок-схемку.
В моей схеме порт PB5 используется для управления считыванием перемычек и переключателей программирования, если PB5 = 1 то считывается тремя входами АЦП значение соответсвующее значением перемычек(No/Nc), если PB5 = 0 считывается тремя входами АЦП значение соответсвующее значением переключателей программирования, при PB5 = Z состояния использую для оцифровки входных линий и управлений светодиодами RGY.
Если можно рисунок блок-схемку.
-
- Maniac
- Posts: 325
- Joined: 15 Jan 2019 15:48
- Location: Украина, Луганская обл.
Re: Проект из серии "Максимум от Тини" - attiny45
Я не внимательно просмотрел вашу схему.
Поэтому выдал ошибочные предложения.
Предыдущий свой пост удалю, как не верный.
По схеме мне все равно не нравится, что нажатая кнопка создает шлейф ( проводимость ) между аналоговыми входами. То есть залипшая кнопка блокирует устройство.
ПС. По экономии ног навскидку:
Можно вообще исключить JP4 - JP6 чисто программным решением.
Режим JP1 + JP3 + KEY - резерв использовать для настройки шлейфов NO / NC. То есть входы устанавливаются в НЕтревожное состояние, а затем выбирается этот режим. Данные состояния входов запоминаются как НОРМАЛЬНЫЕ.
Если после этого кнопку KEY подключить к PB0, то PB5 - освобождается.
Поэтому выдал ошибочные предложения.
Предыдущий свой пост удалю, как не верный.
По схеме мне все равно не нравится, что нажатая кнопка создает шлейф ( проводимость ) между аналоговыми входами. То есть залипшая кнопка блокирует устройство.
ПС. По экономии ног навскидку:
Можно вообще исключить JP4 - JP6 чисто программным решением.
Режим JP1 + JP3 + KEY - резерв использовать для настройки шлейфов NO / NC. То есть входы устанавливаются в НЕтревожное состояние, а затем выбирается этот режим. Данные состояния входов запоминаются как НОРМАЛЬНЫЕ.
Если после этого кнопку KEY подключить к PB0, то PB5 - освобождается.

-
- Fanat
- Posts: 85
- Joined: 20 Sep 2015 02:50
Re: Проект из серии "Максимум от Тини" - attiny45
В принципе переключатели и кнопку "SET" можно посадить на землю, в первой версии так и было.
Получается что в режиме "охрана" переключатели программирования при нажатии кнопки "SET" нарушают работу системы.
Для этого я с помощью PB5 в режиме "охрана" переводу порт PB5 в Z состояние, тем самым отключаю переключатели и перемычки от схемы.
Если исключить коллизии то без PB5 можно использовать .
Использовать для управления PB0 вместо PB5 не получится, у меня на PB0 кроме РЕЛЕ подключен Пьезик . Частоту формирую таймером "OC0A".
Длительность звучания Пьезика выверена что бы реле не успевало срабатывать.
Логику входных линий поменять используя резервный режим JP1 + JP3 + KEY можно.
Например: Раз нажал включил инверсию ВСЕХ входных линий, ещо раз нажал поменял на противоположную опять же всех. Теряется гибкость.
Получается что в режиме "охрана" переключатели программирования при нажатии кнопки "SET" нарушают работу системы.
Для этого я с помощью PB5 в режиме "охрана" переводу порт PB5 в Z состояние, тем самым отключаю переключатели и перемычки от схемы.
Если исключить коллизии то без PB5 можно использовать .
Использовать для управления PB0 вместо PB5 не получится, у меня на PB0 кроме РЕЛЕ подключен Пьезик . Частоту формирую таймером "OC0A".
Длительность звучания Пьезика выверена что бы реле не успевало срабатывать.
Логику входных линий поменять используя резервный режим JP1 + JP3 + KEY можно.
Например: Раз нажал включил инверсию ВСЕХ входных линий, ещо раз нажал поменял на противоположную опять же всех. Теряется гибкость.
-
- Maniac
- Posts: 325
- Joined: 15 Jan 2019 15:48
- Location: Украина, Луганская обл.
Re: Проект из серии "Максимум от Тини" - attiny45
Да не теряется гибкость.
Сначала на линиях выставляем ноли или единицы.
Можно даже вашими джамперами.
На каждой линии НУЖНОЕ состояние, которое соответствует отсутствию ТРЕВОГИ.
Потом по нажатию кнопки запоминается состояние всех трех линий как нормальное
и изменение этих состояний будет вызывать тревогу.
То есть версий для трех линий будет ровно восемь.
" Для этого я с помощью PB5 в режиме "охрана" переводу порт PB5 в Z состояние, тем самым отключаю переключатели и перемычки от схемы. "
PB4 - JP2 - диод - КНОПКА - диод - JP4 - PB2
если U PB4 > 0,4V + U PB2 - то по цепи течет ток ....
переключатели и перемычки от схемы НЕ ОТКЛЮЧАЮТСЯ.
ВОПРОС: не могу понять зачем в эмиттере ВС846 резисторы и конденсатор на плюс ???
Сначала на линиях выставляем ноли или единицы.
Можно даже вашими джамперами.
На каждой линии НУЖНОЕ состояние, которое соответствует отсутствию ТРЕВОГИ.
Потом по нажатию кнопки запоминается состояние всех трех линий как нормальное
и изменение этих состояний будет вызывать тревогу.
То есть версий для трех линий будет ровно восемь.

" Для этого я с помощью PB5 в режиме "охрана" переводу порт PB5 в Z состояние, тем самым отключаю переключатели и перемычки от схемы. "
PB4 - JP2 - диод - КНОПКА - диод - JP4 - PB2
если U PB4 > 0,4V + U PB2 - то по цепи течет ток ....
переключатели и перемычки от схемы НЕ ОТКЛЮЧАЮТСЯ.
ВОПРОС: не могу понять зачем в эмиттере ВС846 резисторы и конденсатор на плюс ???
-
- Fanat
- Posts: 85
- Joined: 20 Sep 2015 02:50
Re: Проект из серии "Максимум от Тини" - attiny45
Считывание в режиме программирования всех логических уровней невозможно из за того что переключатели (JP1, JP3) шунтируют два входа ADC1, ADC3.
Про резисторы и конденсатор в эмитере транзистора ВС846.
Конденсатор накапливает энергию с рабочим напряжением срабатывания реле - 12вольт, а резисторы ограничивают ток , достаточный для удержания РЕЛЕ (если паспортные РЕЛЕ неизвестны, подобрать ограничивающие резисторы.
Такой метод сильно экономит энергопотребление системой.
Про резисторы и конденсатор в эмитере транзистора ВС846.
Конденсатор накапливает энергию с рабочим напряжением срабатывания реле - 12вольт, а резисторы ограничивают ток , достаточный для удержания РЕЛЕ (если паспортные РЕЛЕ неизвестны, подобрать ограничивающие резисторы.
Такой метод сильно экономит энергопотребление системой.
-
- Maniac
- Posts: 325
- Joined: 15 Jan 2019 15:48
- Location: Украина, Луганская обл.
Re: Проект из серии "Максимум от Тини" - attiny45
конденсатор подключенный к ЭМИТТЕРУ и плюсу питания .
Как он может влиять на срабатывание реле ?
Когда транзистор закрыт, конденсатор полностью заряжен.
А что с ним происходит когда транзистор открывается ?
я про емкость С 107.
Как он может влиять на срабатывание реле ?
Когда транзистор закрыт, конденсатор полностью заряжен.
А что с ним происходит когда транзистор открывается ?
я про емкость С 107.
-
- God
- Posts: 1388
- Joined: 02 Jan 2006 02:28
- Location: Abakan
Re: Проект из серии "Максимум от Тини" - attiny45
На мой скромный взгляд - очень спорное решение. В момент программирования шлейф может находиться в "тревоге", а потом будешь бегать и искать, почему не ставится на охрану. А если ещё и извещатель какой-нибудь глючит - вообще труба, хрен найдёшь причину нестабильной работы.Konstantin18 wrote: Потом по нажатию кнопки запоминается состояние всех трех линий как нормальное
и изменение этих состояний будет вызывать тревогу.

-
- Fanat
- Posts: 85
- Joined: 20 Sep 2015 02:50
Re: Проект из серии "Максимум от Тини" - attiny45
В режиме Включения РЕЛЕ (транзистор открыт) накопленная энергия напряжением 12 вольт подаётся на реле,
а когда накопленная энергия в конденсаторе кончится, то ток реле будут ограничивать резисторы.
Емкость конденсатора у меня 100мкф 25 вольт, вполне хватает на срабатывание реле.
Резисторы подбирают по чуть больше чем минимальный ток удержания реле.
Джамперы JP4,JP5,JP6 определяющие логику входных линий можно убрать из схемы,
В дополнение к написанному выше Konstantin18 нужно добавить, что программировать логику только при отключённых от шлейфов линиях,(Снято с охраны) с установленными резисторами, исходя из того что все линии NO. Результат заносится в EEprom тини, и используется уже от туда.
а когда накопленная энергия в конденсаторе кончится, то ток реле будут ограничивать резисторы.
Емкость конденсатора у меня 100мкф 25 вольт, вполне хватает на срабатывание реле.
Резисторы подбирают по чуть больше чем минимальный ток удержания реле.
Джамперы JP4,JP5,JP6 определяющие логику входных линий можно убрать из схемы,
В дополнение к написанному выше Konstantin18 нужно добавить, что программировать логику только при отключённых от шлейфов линиях,(Снято с охраны) с установленными резисторами, исходя из того что все линии NO. Результат заносится в EEprom тини, и используется уже от туда.
-
- Maniac
- Posts: 325
- Joined: 15 Jan 2019 15:48
- Location: Украина, Луганская обл.
Re: Проект из серии "Максимум от Тини" - attiny45
Все таки я считаю, что рациональнее было бы убрать и резисторы и конденсатор, а
изменения в питании реле реализовать параметрами ШИМа.
Вначале больше +Duty ( 100 миллисекунд), потом поменьше...
Ну и РВ5 освободить также можно.
Сделать прерывание по таймеру и в нем реализовать и ШИМ и опрос кнопки.
ПС. Я не цепляюсь. Вы же сами назвали тему "МАКСИМУМ от Тини"
изменения в питании реле реализовать параметрами ШИМа.
Вначале больше +Duty ( 100 миллисекунд), потом поменьше...
Ну и РВ5 освободить также можно.
Сделать прерывание по таймеру и в нем реализовать и ШИМ и опрос кнопки.
ПС. Я не цепляюсь. Вы же сами назвали тему "МАКСИМУМ от Тини"

-
- Maniac
- Posts: 325
- Joined: 15 Jan 2019 15:48
- Location: Украина, Луганская обл.
Re: Проект из серии "Максимум от Тини" - attiny45
На момент программирования шлейфы гарантировано выставляются в не тревожное состояние, например перемычками.jdigreze wrote:На мой скромный взгляд - очень спорное решение. В момент программирования шлейф может находиться в "тревоге", а потом будешь бегать и искать, почему не ставится на охрану. А если ещё и извещатель какой-нибудь глючит - вообще труба, хрен найдёшь причину нестабильной работы.
-
- Fanat
- Posts: 85
- Joined: 20 Sep 2015 02:50
Re: Проект из серии "Максимум от Тини" - attiny45
Шим для реле хорошая идея, Но как быть с Бипером, так мы его теряем.
В первых версия у меня переключатели и кнопка "SET" сидела на земле и не было JP4,JP5,JP6 определяющие логику входных линий. PB5 я использовал как тестовый вывод UART для отладки.
Всё прекрасно работало.
Не нравилось только то что если система находится на охране нажимая на "SET" если переключатели не "OFF", вызывалась тревога по не исправности шлейфа.
В первых версия у меня переключатели и кнопка "SET" сидела на земле и не было JP4,JP5,JP6 определяющие логику входных линий. PB5 я использовал как тестовый вывод UART для отладки.
Всё прекрасно работало.
Не нравилось только то что если система находится на охране нажимая на "SET" если переключатели не "OFF", вызывалась тревога по не исправности шлейфа.