http://www.forum.getchip.net/

Регистратор
http://www.forum.getchip.net/viewtopic.php?f=9&t=76
Страница 1 из 2

Автор:  SVN [ 30 июл 2011, 15:53 ]
Заголовок сообщения:  Регистратор

Здравствуйте.
Написал пробный вариант регистратора дискретных сигналов, пока двухканальный (тестовый вариант).
Так как в программировании не силён, алгоритм получился наверняка не оптимальный.
Что применяется из железа в данный момент (основа): Контроллер ATmega 8535 (SEM0007M-8535-16) частота 4мГц – задействован внутренний генератор, дисплей MT-16S2D-3YLG (2 строки по 16 символов) – подключен по четырёхбитной шине данных, пять кнопок с НР-контактами, часы-календарь DS1307 со стандартной обвязкой. Устройство живёт пока на отладочной плате.
Краткое описание устройства:
Как Вы уже заметили, девайс имеет часы реального времени, это основа устройства. В данном варианте задействованы два дискретных канала контроля с внутренними подтягивающими резисторами (это только в тестовом варианте, для удобства). При замыкании любого канала на общий провод (GND) более 1 секунды, в EEPROM записывается номер текущего канала, время (часы, минуты), дата (число, месяц), количественный номер записанного сообщения, индикация о записанном сообщении и адрес последней записанной ячейки энергонезависимой памяти. При этом звучит зуммер в течении 1,5 секунды, сигнализируя о новом записанном сообщении. На индикаторе отображается номер канала, мигающий символ (динамик) и порядковый номер записанного сообщения.
В данном варианте девайса, максимальное количество записанных сообщений равняется 100 (используется EEPROM контроллера).
Устройство имеет в базовом варианте пять кнопок управления: вверх, вниз, вправо, влево, ОК.
В дежурном состоянии на дисплее показано текущее время, номер последнего записанного в память канала, индикатор записанного сообщения, индикатор будильника, индикатор напряжения батареи часов (в данном варианте пока не реализовано), день недели, дата, месяц, год и количество записанных сообщений.
Дисплей.gif
Дисплей.gif [ 8.15 КБ | Просмотров: 19947 ]

Описание алгоритма:
При первом запуске программы, устройство автоматически уходит в режим установки дня недели, даты, месяца, года, часов, минут, секунды просто обнуляются при записи установок с помощью кнопки «ОК». Установка осуществляется кнопкой «Вверх», а сохранение выбранного значения кнопкой «ОК». Повторно зайти в этот режим можно из дежурного режима с помощью кнопки «Вниз».
Из дежурного режима с помощью кнопки «Вверх» попадаем в режим установки будильника. Включение и выключение будильника осуществляется с помощью кнопки «ОК»
В режим просмотра записанных сообщений заходим с помощью кнопки «Вправо». На экране отображается информация последнего записанного сообщения (секунды и день недели не отображаются). С помощью кнопок «Влево» и «Вправо» просматриваем все сообщения. Если хотим попасть сразу на первое записанное сообщение, то необходимо сперва нажать кнопку «Влево», а потом кнопку «Вверх». Возврат в дежурный режим осуществляется с помощью кнопки «ОК». При этом индикатор записанных сообщений и индикация количества сообщений, обнуляется. Повторно из дежурного состояния просмотреть старую запись невозможно.
Если не просматривать записанного сообщения до полного заполнения EEPROM, то при полностью заполненной памяти, на дисплее появляется надпись «Память заполнена на 100%». В этом режиме регистратор игнорирует сообщения от каналов контроля. Выход из этого режима осуществляется с помощью кнопки «ОК», при этом происходит переход не в дежурный режим, а в режим просмотра сообщений.

Тестовый вариант пока живёт на отладочной плате.

3.jpg
3.jpg [ 35.12 КБ | Просмотров: 19947 ]

Данный регистратор после доработки можно применять, к примеру, в охранных устройствах.
Registrator.rar [30.06 КБ]
Скачиваний: 843

Автор:  SVN [ 30 июл 2011, 16:03 ]
Заголовок сообщения:  Re: Регистратор

Вот схема, не прикрепившаяся к первому посту.
Схема устройства.gif
Схема устройства.gif [ 13.02 КБ | Просмотров: 19943 ]

Примерное расположение кнопок.
Кнопки.gif
Кнопки.gif [ 3.25 КБ | Просмотров: 19942 ]

Автор:  ewgeny [ 30 июл 2011, 17:18 ]
Заголовок сообщения:  Re: Регистратор

Ну вот, а кричал что "ничего не умею" :)
Зачётное навороченное устройство сделал.
Библиотеки сам писал?

Автор:  GetChiper [ 30 июл 2011, 18:30 ]
Заголовок сообщения:  Re: Регистратор

Устройство хорошее - можно с толком применить!
(Особенно полезно для контроля доступа, посещений, прихода-ухода ...)

Автор:  SVN [ 30 июл 2011, 18:43 ]
Заголовок сообщения:  Re: Регистратор


Автор:  SVN [ 22 авг 2011, 20:20 ]
Заголовок сообщения:  Re: Регистратор

Не много, поправил программу. Тест в течении месяца показал неплохую работу задуманного устройства. Используется контроллер ATmega32. Количество записанных сообщений = 200. Теперь можно думать о корпусе и количестве контролируемых каналов. :D

Вложения:
Registrator V2.rar [30.08 КБ]
Скачиваний: 918

Автор:  nikola_man [ 12 июл 2015, 13:15 ]
Заголовок сообщения:  Re: Регистратор

SVN, не могли бы вы модифицировать прошивку под распространный экран WC1602, WH1602, символы латинские, и под датчики NC ( нормально замкнутые контакты), при событии т.е когда сработал датчик был выход на исполнительное устройство ( программируемый по времени) ,остальное как в оригинальной прошивке т.е с часами, с просмотром записанных событий.
на даче имеется несколько строений контролируются GSM сигналкой, хаотически происходят ложные срабатывания, т.е может сработать через день, может через месяц, хотелось бы понять в каком месте "крыса" завелась.

Автор:  SVN [ 12 июл 2015, 14:02 ]
Заголовок сообщения:  Re: Регистратор

Вообще, это был тестовый вариант, для практического изучения и приобретения опыта. Данный вариант нуждается в доработке.
Можно и для WH1602… но 1/3 символов у WH1602 отсутствует… надо будет выбрать что-то на их замену.

Но на скорую переделку не рассчитывайте, так как времени свободного у меня, в плоть до зимы, не предвидится.

Автор:  nikola_man [ 12 июл 2015, 14:07 ]
Заголовок сообщения:  Re: Регистратор

Спасибо, подожду

Автор:  SVN [ 12 июл 2015, 14:12 ]
Заголовок сообщения:  Re: Регистратор


Страница 1 из 2 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/