сайт практикующего электронщика-эмбеддера  
Вернуться   сайт практикующего электронщика-эмбеддера > Открытые проекты
Регистрация Магазин Коммерческие проекты Открытые проекты

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 14.08.2013, 20:32
Admin Admin вне форума
Администратор
 
Регистрация: 04.08.2013
Адрес: Odessa
Сообщений: 1,817
Отправить сообщение для Admin с помощью ICQ Отправить сообщение для Admin с помощью Skype™
По умолчанию Универсальный двухканальный микропроцессорный таймер.

. . . Общее описание.
. . . Устройство является универсальным прибором производственно-технического и бытового назначения, предназначено для формирования точно заданных пользователем, относительно времени, сигналов. В основе прибора применён микроконтроллер, имеющий достаточную точность для установки длительности каких-либо процессов в промышленном производстве, на транспорте, в связи, научных исследованиях. Устройство имеет два канала и может работать в одном из режимов - таймер, генератор сигналов, ждущий мультивибратор, частотомер. Интервалы временных задержек и режим работы таймера программируются пользователем. Минимальное время задержки - 1мсек, максимальное время задержки - 99999секунд (27,7часов). Максимальная погрешность выдержки установленных интервалов - не более 3 секунд в сутки. Напряжение питания - 8…30 вольт. Ток потребления - 20 мА. Устройство имеет 2 выхода отрицательной полярности и вход для режима ждущего мультивибратора или частотомера. Выходы допускают нагрузку с током до 0,5А. Вход имеет подтяжку к питанию 5 вольт, рабочий фронт - низкий, ток потребления - 0,5 мА.

. . . Внешний вид готового устройства, электрическая схема и распиновка разъёма:



. . . Режимы работы устройства.
. . . 1. Таймер однофазный. После подачи питания включается второй канал. Через время периода 1 второй канал отключается, а первый включается.


. . . 2. Таймер двухфазный. После подачи питания включается первый канал через время периода 1 с последующим отключением через время периода 2. Второй канал работает в режиме инвертирования первого канала.


. . . 3. Таймер трёхфазный. После подачи питания включается первый канал на время периода 1, затем отключается. Через время периода 2, после отключения первого канала, включается второй канал на время периода 2.


. . . 4. Таймер трёхфазный в инверте. После подачи питания включается второй канал. Через время периода 1 включается первый канал. Через время периода 2, после включения первого канала, отключается второй канал на время периода 2.


. . . 5. Генератор. Выдаёт бесконечную серию сигналов после подачи питания на устройство, начиная с низкого. Период 1 соответствует времени высокого сигнала, период 2 соответствует времени низкого сигнала. Второй канал работает в режиме инвертирования первого канала.


. . . 6.Ждущий покоя таймер однофазный. После подачи питания включается второй канал. Изменение фронта входного сигнала сбрасывает счётчик отсчёта периода 1. После полного отсчёта времени периода 1 включается первый канал, отключается второй.


. . . 7.Ждущий покоя таймер двухфазный. Изменение фронта входного сигнала сбрасывает счётчик отсчёта периода 1. После полного отсчёта времени периода 1 включается первый канал, отключается второй, на время периода 2. Второй канал работает в режиме инвертирования первого канала.


. . . 8.Ждущий покоя таймер трёхфазный. После подачи питания, включается первый канал. Изменение фронта входного сигнала сбрасывает счётчик отсчёта периода 1. После полного отсчёта времени периода 1 первый канал отключается. Через время периода 2 после отключения первого канала, включается второй канал на время периода 2.


. . . 9.Ждущий покоя таймер трёхфазный в инверте. После подачи питания, включается второй канал. Изменение фронта входного сигнала сбрасывает счётчик отсчёта периода 1. После полного отсчёта времени периода 1 первый канал включается. Через время периода 2 после включения первого канала, отключается второй канал на время периода 2.


. . . 10.Ждущий низкого сигнала таймер однофазный. После подачи питания включается второй канал. После низкого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого включается первый канал, отключается второй.


. . . 11.Ждущий низкого сигнала таймер двухфазный. После низкого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого включается первый канал на время периода 2. Второй канал работает в режиме инвертирования первого канала.


. . . 12.Ждущий низкого сигнала таймер трёхфазный. После подачи питания, включается первый канал. После низкого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого первый канал отключается. Через время периода 2 после отключения первого канала, включается второй канал на время периода 2.


. . . 13.Ждущий низкого сигнала таймер трёхфазный в инверте. После подачи питания, включается второй канал. После низкого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого включается первый канал. Через время периода 2 после включения первого канала, отключается второй канал на время периода 2.


. . . 14.Ждущий высокого сигнала таймер однофазный. После подачи питания включается второй канал. После высокого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого включается первый канал, отключается второй.


. . . 15.Ждущий высокого сигнала таймер двухфазный. После высокого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого включается первый канал на время периода 2. Второй канал работает в режиме инвертирования первого канала.


. . . 16.Ждущий высокого сигнала таймер трёхфазный. После подачи питания, включается первый канал. После высокого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого первый канал отключается. Через время периода 2 после отключения первого канала, включается второй канал на время периода 2.


. . . 17.Ждущий высокого сигнала таймер трёхфазный в инверте. После подачи питания, включается второй канал. После высокого фронта входного сигнала запускается таймер отсчёта времени периода 1, по окончании которого включается первый канал. Через время периода 2 после включения первого канала, отключается второй канал на время периода 2.


. . . 18.частотомер 1. При достижении сигнала до частоты 1, включаем первый канал, отключаем второй. При достижении сигнала до частоты 2, включаем второй канал, отключаем первый.


. . . 19.частотомер 2. Если частота сигнала больше записанной частоты 1, включается первый канал. Если частота сигнала меньше записанной частоты 1, первый канал отключается. Если частота сигнала больше записанной частоты 2, включается второй канал. Если частота сигнала меньше записанной частоты 2, второй канал отключается.


. . . 20.фронтовый таймер. Положительный фронт сигнала включает 1 канал на время периода 1. Отрицательный фронт сигнала включает 2 канал на время периода 1.



. . . Программирование.
. . . Для входа в режим программирования нужно нажать кнопку на модуле таймера и удерживая её включить питание. Светодиод выдаст 20 вспышек за 2 секунды, сигнализируя о входе в режим программирования. Следующие длинные вспышки с периодом 1 и паузой между сериями 2 секунды информируют о номере разряда программирования. Короткие нажатия на кнопку инкрементируют счётчик с номером разряда. Всего 17 разрядов, Первый разряд отвечает за режим работы таймера (1-таймер однофазный, 2-таймер двухфазный, 3-таймер трёхфазный, 4-таймер трёхфазный в инверте, 5-генератор, 6-ждущий покоя таймер однофазный, 7-ждущий покоя таймер двухфазный, 8-ждущий покоя таймер трёхфазный, 9-ждущий покоя таймер трёхфазный в инверте, 10-ждущий низкого сигнала таймер однофазный, 11-ждущий низкого сигнала таймер двухфазный, 12-ждущий низкого сигнала таймер трёхфазный, 13-ждущий низкого сигнала таймер трёхфазный в инверте, 14-ждущий высокого сигнала таймер однофазный, 15-ждущий высокого сигнала таймер двухфазный, 16-ждущий высокого сигнала таймер трёхфазный, 17-ждущий высокого сигнала таймер трёхфазный в инверте, 18-частотомер 1, 19-частотомер 2, 20-фронтовый таймер.) , следующие 5 разрядов - секунды первого периода, 3 разряда тысячные секунды первого периода, следующие 5 разрядов - секунды второго периода, 3 разряда - тысячные секунды второго периода. Для редактирования текущего разряда нужно длительно нажать на клавишу. Светодиод выдаст серию коротких вспышек, сигнализируя о входе в режим редактирования текущего разряда. Следующие короткие вспышки с периодом 1 и паузой между сериями 2 секунды информируют о текущем состоянии разряда. Перебор единиц разряда осуществляется короткими нажатиями на клавишу. Для выхода с режима редактирования текущего разряда нужно длительно нажать на клавишу. Светодиод выдаст серию коротких вспышек, сигнализируя о выходе из режима редактирования текущего разряда. Изменение любого регистрами автоматически записывается в энергонезависимую память микроконтроллера.
. . . Программа поддерживает функцию сброса всех регистров, сброс происходит при удержании кнопки на 5 секунд после подачи питания на устройство.


. . . Примеры, отображающие возможности устройства.
. . . 1. Ограничитель оборотов двигателя.

. . . Устройство установлено на модернизированный для ралли по бездорожью УАЗ. Кроме переделки ходовой части заменен силовой агрегат на дизель. В движении по труднопроходимым дорогам на низших передачах двигатель работает на предельных режимах работы. Устройство отключает клапан топливоподачи дизельного ТНВД если частота вращения выходит за предельно-допустимую. Отсечка происходит с гистерезисом 100 обр/мин. Программа устройства работает в режиме частотомера, на вход которого подаётся переменный сигнал с обмотки генератора. Выход устройства нагружен обмоткой реле управления клапаном топливоподачи. Схема подключения приведена ниже.



. . . Архив с схемой можно скачать здесь

. . . Обсуждение проекта ниже.


Ответить с цитированием
  #2  
Старый 30.11.2014, 00:45
ur5got ur5got вне форума
Новичок
 
Регистрация: 30.11.2014
Адрес: City
Сообщений: 6
По умолчанию

Здравствуйте.
Отличный таймер. А может у Вас есть версия прошивки в которой таймер запускался по второму импульсу (положительному или отрицательному) на входе? То есть, первый игнорируется, а запуск по второму.
Ответить с цитированием
  #3  
Старый 30.11.2014, 02:48
Admin Admin вне форума
Администратор
 
Регистрация: 04.08.2013
Адрес: Odessa
Сообщений: 1,817
Отправить сообщение для Admin с помощью ICQ Отправить сообщение для Admin с помощью Skype™
По умолчанию

Нет, с перламутровыми пуговицами сегодня нет). Лучше расскажите, для чего это нужно, может что-то посоветую.
Ответить с цитированием
  #4  
Старый 01.12.2014, 03:11
ur5got ur5got вне форума
Новичок
 
Регистрация: 30.11.2014
Адрес: City
Сообщений: 6
По умолчанию

Здравствуйте.
Нужен вот для такого механизма.
Релюшка подает питание на моторчик, который толкает деталь. Если деталь упала - сработал датчик наличия детали и моторчик отключается. А если не упала то через 6 секунд моторчик отключается. Затем пауза 2 секунды. Вторая попытка. Третья попытка.
Хотелось бы сделать так, что если первая попытка не удалась, то при появлении первой паузы срабатывал таймер и скажем на 4 секунды инвертировал питание моторчика. Тогда во время второй попытки моторчик 2 секунды будет тянуть деталь назад (центровка), а оставшиеся 4 - снова толкать вперед. А третья попытка - только вперед.
В принципе, должен подойти Ваш 20. фронтовый таймер. Но он сработает и в паузе после второй попытки, если она не удалась. И третья снова начнется с реверса.
Вот такие перламутровые пуговицы...
Ответить с цитированием
  #5  
Старый 01.12.2014, 15:22
Admin Admin вне форума
Администратор
 
Регистрация: 04.08.2013
Адрес: Odessa
Сообщений: 1,817
Отправить сообщение для Admin с помощью ICQ Отправить сообщение для Admin с помощью Skype™
По умолчанию

Для вашей задачи нужно писать программу, в которой будут выполнятся алгоритмы при разных условиях (деталь упала или нет). На универсальном таймере это будет сложнее сделать.
Ответить с цитированием
  #6  
Старый 01.12.2014, 20:40
ur5got ur5got вне форума
Новичок
 
Регистрация: 30.11.2014
Адрес: City
Сообщений: 6
По умолчанию

Собрал сегодня на макетке унитаймер. Залил прошивку 20 (фронтовый таймер) и ... Почему то у меня алгоритм работы не соответствует описанному Вами. Алгоритм:
После включения оба канала выключены. При подаче высокого уровня (ВУ) на вход управления включается первый канал (К1) и если ВУ удерживать на входе управления, то выключение К1 происходит через Т1. Но стоит убрать ВУ со входа сразу после включения К1 как тут же происходит отключение К1 и включение К2. Если же ВУ убрать через, например 3с, то К1 сразу отключается, включается К2, а вот отключение К2 происходит не через Т1, а через Т1-3с. То-есть время включения К2 зависит от времени удержания ВУ на входе и равно разности.
И еще. В EEPROM режим работы прописывается в hex (20 это должно быть записано 14)?
Ответить с цитированием
  #7  
Старый 03.12.2014, 12:24
Admin Admin вне форума
Администратор
 
Регистрация: 04.08.2013
Адрес: Odessa
Сообщений: 1,817
Отправить сообщение для Admin с помощью ICQ Отправить сообщение для Admin с помощью Skype™
По умолчанию

Алгоритм соответствует. В условии время положительного сигнала управления должно быть больше, чем период Т1. Если время сигнала меньше, чем период Т1, условие будет нарушено, и алгоритм выполняется не корректно. 20=0х14
Ответить с цитированием
  #8  
Старый 03.12.2014, 21:51
ur5got ur5got вне форума
Новичок
 
Регистрация: 30.11.2014
Адрес: City
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Admin Посмотреть сообщение
В условии время положительного сигнала управления должно быть больше, чем период Т1....
Здравствуйте.
Это я уже понял, когда экспериментировал на макетке. А можно чуток подправить прошивку вот так:
- при подаче питания каналы выключены;
- по отрицательному фронту включается канал 1 до следующего отрицательного фронта (эффект триггера - смена состояния выхода по каждому отрицательному фронту входного сигнала) и включается канал 2 на время Т1 которое можно задать (включается по первому перепаду и не сбрасывается пока не закончится Т1, независимо от сигнала на входе).
Думаю, что такой режим таймера полностью решит мою задачу.
Ответить с цитированием
  #9  
Старый 04.12.2014, 00:20
Admin Admin вне форума
Администратор
 
Регистрация: 04.08.2013
Адрес: Odessa
Сообщений: 1,817
Отправить сообщение для Admin с помощью ICQ Отправить сообщение для Admin с помощью Skype™
По умолчанию

Сейчас свободного времени нет, чтоб программу подправить. Много заказов, 4 неделя без выходных...
Ответить с цитированием
  #10  
Старый 04.12.2014, 00:39
ur5got ur5got вне форума
Новичок
 
Регистрация: 30.11.2014
Адрес: City
Сообщений: 6
По умолчанию


Придется тогда временно состряпать на связке D-триггер+таймер555
Ответить с цитированием
  #11  
Старый 15.12.2014, 15:17
ur5got ur5got вне форума
Новичок
 
Регистрация: 30.11.2014
Адрес: City
Сообщений: 6
По умолчанию

Здравствуйте.
Собрал два таймера под третий режим работы. Период 1 выставил 5 секунд. Так вот При их одновременном запуске второй отрабатывает на полторы секунды больше чем первый. Подумалось, что из-за отличия номиналов в платках. переставил местами ПИКи. Теперь стало наоборот. Разные ПИКи в одной и той же платке отсчитывают по разному. Что бы это значило? Прошивки и fuse биты одинаковые. OSCCAL в последней ячейке программы для каждого ПИКа свой.
Ответить с цитированием
  #12  
Старый 16.12.2014, 03:21
Admin Admin вне форума
Администратор
 
Регистрация: 04.08.2013
Адрес: Odessa
Сообщений: 1,817
Отправить сообщение для Admin с помощью ICQ Отправить сообщение для Admin с помощью Skype™
По умолчанию

Нужно перекалибровать OSCCAL или внести поправку в периоде.
Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Текущее время: 21:45. Часовой пояс GMT +3.

Нажмите здесь, если заметили неисправности сайта, или сообщите о спамер-аккаунтах, для их блокирования.

Copyright 2000-2024, Pugachov Sergiy       Внимание! Использование любых материалов моего сайта разрешаю только при условии указания ссылки на эту страницу.