Например TDA7294

РадиоКот > Схемы > Цифровые устройства > Бытовая техника

Многофункциональный брелок.

Автор - Баталов Алексей aka Alex72.
http://www.mcuprojects.narod.ru
Опубликовано 19.03.2009.

Изначально данное устройство задумывалось только как электронный ключ на ИК лучах опять же для электронного дверного замка (тоже собственного изготовления). Но потом я захотел, чтобы устройство было более универсальным. В результате получился компактный брелок, выполняющий несколько функций:
1. Термометр в диапазоне от -55°С. до 125°С. с шагом 0,1°С;
2. Считыватель и эмулятор электронных ключей - таблеток DS1990 (память на 10 штук);
3. Дистанционный пульт управления на ИК лучах (реализована только команда "Сделать снимок") для цифровых фотокамер "Pentax";
4. Светодиодный фонарик.

Вспомогательные функции:
1. Контроль напряжения батареи питания;
2. Цифровая регулировка яркости индикатора;
3. Протокол MODBUS-RTU для связи с ПК.

Выбор эмуляции данного класса устройств Touch memory и пульта ДУ был сделан исходя из того, что домофон и фотокамера у меня соответствующие.
Примечание: Поскольку здесь устройство представлено как самостоятельное, то в данной версии функция электронного ключа для замка отсутствует. Вместо неё введена команда "Выключение брелка". Интерфейс для связи с ПК я ввёл для того, чтобы можно было просматривать и редактировать ключи, наблюдать температуру и т. п., но наружу я его не вывел и управляющей программы пока нет.

Устройство построено на микроконтроллере АТmega8-16AU, но лучше использовать АТmega8L-8AI(U). Для индикации используется трехразрядный светодиодный семисегментный индикатор с общим анодом и четыре дискретных светодиода (два красных, желтый и зелёный - по одному). В качестве температурного датчика использован DS18B20. Управление осуществляется двумя кнопками, одна из которых сдвоенная (используется также для включения устройства, на схеме А1 и А2 разнесены для удобства). Разъем J1 предназначен для внутрисхемного программирования МК., J2 - для связи с ПК через адаптер TTL/RS-232.
Ниже приведена конструкция собранной платы с двух сторон.

Фото 1
Фото 2
Фото 3

При установке элементов питания схема обесточена. При коротком нажатии на кнопку "A" происходит подача питания через пару контактов сдвоенной кнопки. Затем питание брелка удерживается открытыми транзисторами Q7, Q6. Если в течении 16 секунд не была нажата ни одна кнопка, то эти транзисторы закрываются и схема обесточивается. При этом ток потребления не превышает 0,5 мкА. При нахождении в режиме "Пульт ДУ" этот интервал составляет 30 сек., а при включенном фонарике - 1 минуту.
На плате много перемычек, просто не хотелось делать её двухсторонней.
Подключается программатор к разъёму J1 (стандартный шестиконтактный разъём для внутрисхемного программирования). При этом удобнее прошивать без батареек, но чтобы питание поступало от программатора.

FUSE-биты микроконтроллера DD1 должны быть запрограммированы следующим образом:
CKSEL3...0 = 0011 - тактирование от внутреннего RC осциллятора 4 МГц;
SUT1...0 =10 - Start-up time: 6 CK + 64 ms;
CKOUT = 1 - Output Clock on CKOUT запрещен;
BODLEVEL = 1 - пороговый уровень для схемы контроля напряжения питания 2,7В;
BODEN = 0 монитор питания включён;
EESAVE = 0 - стирание EEPROM при программировании кристалла запрещено;
WDTON = 1 - Нет постоянного включения Watchdog Timer;
Остальные FUSE - биты лучше не трогать. FUSE-бит запрограммирован, если установлен в "0".
Необходимо прочитать из МК калибровочный байт для внутреннего RC осциллятора на 4 МГц и записать его в последнюю ячейку флэш памяти (1FFFh)
В первых ячейках EEPROM размещается настроечные параметры устройства. В приведённой ниже таблице описывается их назначение, которые можно менять в разумных пределах.

Адрес ячейки EEPROM

Назначение

Параметр

Примечание

1

$0000-$0001

Величина напряжения батареи, при которой происходит сигнал о его низком уровне

360($168)
(3,6V)

1 ед = 10mV

2

$0002-$0003

Коэффициент для коррекции значения измеренного напряжения батареи

800...1200

 

3

$0004

Интервал времени на отключение питания

20($14)

x0,8 сек

4

$0005

Интервал времени на отключение питания при включенном фонарике

75($4B)

x0,8 сек

5

$0006

Интервал времени на отключение питания при нахождении в режиме ДУ для фотокамеры

40($28)

x0,8 сек

6

$10-$5F

Здесь хранятся номера IButton ключей

 

10 штук

Небольшие пояснения по пунктам таблицы:
1. Здесь указывается величина напряжения на батарее, при которой загорится светодиод, сигнализирующий о её низком значении. Я поставил 3,6V (параметр - 360). Если нужно другое, например 3,35V, то надо записать 335($14F). В ячейку по адресу $0000 заносится младший байт, соответственно в $0001 - старший.
2. Поскольку я не установил на плату переменный резистор для подстройки точности измерения напряжения батареи ввиду отсутствия у меня такового малых размеров, то я ввел программную коррекцию. Порядок калибровки для точного измерения следующий: вначале в ячейки EEPROM необходимо записать число 1024($0400), затем включить устройство, посмотреть на индикаторе напряжение, которое измерил брелок и тут же замерить вольтметром реальное напряжение на батарее. Коэффициент коррекции вычисляется по формуле: K=Uр/Uи*1024 где Uр - реальное напряжение, измеренное вольтметром, Uи - напряжение которое, измерил брелок. После подсчёта коэффициента "K" его заносят в EEPROM. В ячейку по адресу $0002 заносится младший байт, соответственно в $0003 - старший. После калибровки у меня погрешность не превысила 3%.
3. Здесь задается параметр времени, через которое брелок отключится, если не происходят нажатия на кнопки. У меня стоит 20 (20*0,8=16 сек.) Если допустим надо, чтобы отключалось через 30 сек, то надо записать 30/0,8 = ~38($26). В 4 и 5 пунктах аналогично.
6. По адресу $10 хранится код семейства нулевого ключа, затем его 48 битный номер и CRC. И так 10 ключей последовательно.

Устройство питается от трех дисковых элементов A76 (LR44, G13, 357), суммарное напряжение 4,5V. Ток потребления при макcимальной яркости составляет около 30 мА, но я для экономии батареи установил на среднюю. Плата разработана под корпус брелка промышленного производства под названием "КР-3", но можно использовать другой подходящий по размеру корпус.
Эмуляция ключей проверена на домофонах "VIZIT". Инструкция по эксплуатации находится в прилагаемых файлах.
Внешний вид устройства:

Фото 4

С левой стороны расположен термодатчик, заключённый в медную трубку. С правой стороны контакты считывателя/эмулятора в виде двух винтов, выступающих на разную высоту. Тот что короче - земля, а длиннее - данные. Рядом с ними располагаются светодиоды фонарика и ИК-пульта.

Файлы:
Печатная плата в формате SL 5.0.
Прошивка МК.
Барахло для Proteus.
Юзер-гат - инструкция по эксплуатации.

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


ID: 260

Как вам эта статья?

 Нравится
 Так себе
 Не нравится

Заработало ли это устройство у вас?

 Заработало сразу
 Заработало после плясок с бубном
 Не заработало совсем

10 1 1