Каталог статей

Главная » Все схемы » Схемы устройств на микроконтроллерах » Устройства на микроконтроллерах

Выбранная схема!!!


3272
Велосигнализация.

Автор - Инженер
Опубликовано 15.09.2010.
Участник Конкурса "Поздравь Кота по-человечески 2010"

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

Через 10 дней аккумулятор питавший устройство полностью разрядился. Оказалось микроконтроллер установленный там потребляет в режиме ожидания 0,8мА и за 10 дней разряжает аккумулятор крона на 0,8*24*10=192мА*ч то есть полностью. Кому-то это покажется глупым (разве сложно подзаряжать аккумулятор раз в 10 дней ) но конструкция устройства специально спроектирована так чтобы нельзя было вынуть элемент питания не снимая устройство с велосипеда. (если бы это было не так предполагаемый вор просто вынимал бы батарейку чтобы выключить сигнализацию) Разобрав устройство и убедившись что там нет никаких бракованных конденсаторов или грязных дорожек через которые мог разряжаться аккумулятор я решил заменить контроллер на tiny13 написав программу выполняющую функционал оригинала но с меньшим потреблением.

Транзисторы можно поставить КТ3102. Где транзистор Q1 не спрашивайте - не знаю )) я нумеровал как на печатной плате. U2 линейный стабилизатор на 3В. С 7805 тоже будет работать.

Я специально выбрал tiny13 так как он по габаритам аналогичен установленному контроллеру, правда не совпадают ножки питания но это исправить проще чем ставить МК в совершенно другом корпусе. При попытке собрать это устройство с нуля возникает 3 проблемы - корпус, трансформатор (для повышения напряжения подаваемого на пьезоизлучатель) и датчик вибрации.

Датчик вибрации представляет собой небольшой пьезо элемент с закрепленной коробочкой сбоку. В коробочке находиться металлический шарик который там свободно болтается. При изменении ориентации в пространстве (вибрации) шарик ударяется о пьезоэлемент и тот формирует импульс. Коробочка напоминает пивную крышку, это для того чтобы перекатываясь по окружности шарик стучал по пьезоэлементу. Трансформатор намотан на ферите в виде гирьки. Индуктивность первичной обмотки 1,8мГн, вторичной 64мГн. Исходя из этого коэффициент трансформации 35. 

Описание работы устройства: 
1. Предустановленный заводской :>) код CCСC 
2. Изменение кода - нажмите кнопку А на 2 сек., прозвучит одиночный сигнал, введите старый код, прозвучит длинный одиночный сигнал в случае, если код введен неправильно, и, тройной сигнал, если правильно. Затем введите Ваш новый код, прозвучит тройной сигнал, означающий, что новый код установлен* 
* или одиночный длинный сигнал означающий что батарейка села настолько что не удается произвести запись в EEPROM, однако код будет изменен, но после перезапуска питания будет восстановлен старый код хранящийся в EEPROM. (во избежание проблем старайтесь не менять код когда чувствуете что батарейка села) 
3. Сигнализация блокируется на 1,5 минуты в случае ввода неправильного кода 3 раза подряд. (при этом она орет) 
4. Постановка на сигнализацию: нажмите кнопку В на 2 сек., прозвучит длинный одиночный сигнал о срабатывании, и, через 3 сек. сигнализация будет установлена. 
5. Чтобы снять сигнализацию, введите Ваш 4-х значный код, прозвучит тройной сигнал, оповещающий об остановке сигнализации. Или длинный одиночный означающий что код не верен. 
6. При срабатывании сигнализации, прозвучит 3-кратный сигнал, затем, при повторном срабатывании в течение 25 секунд, сигнал будет звучать непрерывно в течении 2х минут. 
7. Можно изменять уровень чувствительности сигнализации. Есть 3 уровня; для перехода с одного на другой надо нажать С и удерживать 2-3 сек. Сначала прозвучит текущий уровень далее через каждые 2 секунды будет производиться переключение (1-2-3-1...) 
1 "пик" - низкий уровень чувствительности 
2 "пика" - средний, 
3 "пика" -. высокий 

Чем моя программа лучше заводской 
1. Потребляет 0,4мА в режиме охраны и 40мкА а режиме ожидания (0,8мА исходное потребление) 
2. Код запоминается в энергонезависимой памяти и не сбрасывается при смене батарейки 
3. Добавлен универсальный код BCBA отключения сигнализации (который вы можете поменять или отключить в исходнике) Но им нельзя поменять код. 
4. Добавлен универсальный код ААACBA отключения режима блокировки (который вы можете поменять или отключить в исходнике) Дело в том что заводская версия при троекратном ошибочном вводе кода, в режиме охраны, блокируется, орет и не реагирует на нажатия кнопок. Для меня, как хозяина, это очень неприятно. Набор кода в этом режиме никак себя не выдает сигнализация просто орет и кажется что не реагирует на нажатия клавиш. Код нужно вводить быстро, не более 2 сек между нажатиями кнопок, поскольку после 2х секунд прошедших с последней нажатой кнопки набранный код обнуляется (чтобы можно было набирать заново)
5. Уровень чувствительности настраивается на самом деле. В заводской прошивке меняется время блокировки 3, 15, 30 мин. и число попыток ввода перед блокировкой 4, 3, 2 

Как поменять универсальные коды в прошивке 
1. Установите AVR studio (в адресе установки и адресе открываемого проекта не должно быть русских букв) Откройте проект. Придумайте 4х и 6ти значные коды 
2. Замените А=01, В=10, С=11 (например ААACBA= 010101111001, BCBA=10111001) 
3. К 6ти значному коду допишите 4 нуля слева (например ААACBA= 0000010101111001) 
4. Найдите в исходнике на первой странице строчки 
.equ unikey1=0b10111001
.equ unikey2L=0b01111001 
.equ unikey2H=0b00000101 
После 0b в первой строчке подставьте цифры получившиеся от 4х значного кода 
Во второй строчке после 0b подставьте правые 8 цифр получившиеся от 6ти значного кода 
В третей строчке после 0b подставьте левые 8 цифр получившиеся от 6ти значного кода (после точек с запятой можно ничего не менять это просто комментарии) 
Для отключения 4х кода после 0b в первой строчке подставьте 11000000 
Для отключения 6х кода во второй строчке после 0b подставьте 11000000 
Нажмите F7 в AVR студио и проект будет скомпилирован. AVR studio в нижнем окне напишет Assembly complete, 0 errors. 32 warnings. Файл watchdog.hex в папке с проектом обновиться.

Файлы:
Прошивка МК с исходником.

Вопросы, как всегда в Форум.




Источник: http://radiokot.ru/circuit/digital/security/06/
Категория: Устройства на микроконтроллерах | Добавил: brys99 (20.11.2011)
Просмотров: 4971 | Теги: Велосигнализация. | Рейтинг: 5.0/2


Всего комментариев: 0

Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов! Подробно тут!
Жалоба

Пожалуйста оставьте свои комментарии !!!!

Имя *:
Email:
Код *:


ElectroTOP - Рейтинг сайтов
Copyright Zloy Soft (Company) © 2008 - 2016