Перейти к содержанию
    

Обеспечение гарантированного отключения реле

Есть задача коммутации некоторой силовой цепи (12В, 10А) с помощью реле. Управляющий микроконтроллер обеспечивает включение реле на время не превышающее 5 секунд с последующим обязательным отключением. Необходимо гарантировать отключение реле максимум через 7 секунд даже при условии зависания микроконтроллера, отключения питания управляющей платы, нашествия инопланетян и т.п. Есть ли какие-либо классические решения данной задачи? Сейчас мне видится использование для управления электронным ключом, который запитывает обмотку реле, супервизора (TPS3808) с внешним сбросом с программируемой задержкой. Микроконтроллер "сбрасывает" супервизор, выходной сигнал которого активирует замыкание ключа, а далее через 7 секунд размыкает его принудительно, если микроконтроллер не в состоянии сделать это сам. Ну и заодно можно через 7 секунд дать RESET и самому микроконтроллеру.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

TPS3808 не подойдет. У нее максимально допустимое входное напряжение 7В. Дешевле будет сделать перезапускаемый одновибратор на LMC555 по классической схеме из даташита. Ее можно запитать от 12В, а выход нагрузить прямо на обмотку реле. Надеюсь реле у вас не 10А потребляет как указано, а не более 15мА? ;) Номиналы RC для выдержки 7 сек будут не слишком "супермаксимальными", вполне можно будет обойтись керамикой X7R на несколько мкФ и 2-3 МегаОмным резистором.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Классический вариант - два реле последовательно управляемых контроллером + сторожевой таймер. При проблеме с контактами уж какое-то реле то разомкнет. При проблеме с контроллером сразу перезапуск и инициализация портов управляющих реле

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

TPS3808 не подойдет. У нее максимально допустимое входное напряжение 7В. Дешевле будет сделать перезапускаемый одновибратор на LMC555 по классической схеме из даташита. Ее можно запитать от 12В, а выход нагрузить прямо на обмотку реле. Надеюсь реле у вас не 10А потребляет как указано, а не более 15мА? ;) Номиналы RC для выдержки 7 сек будут не слишком "супермаксимальными", вполне можно будет обойтись керамикой X7R на несколько мкФ и 2-3 МегаОмным резистором.

 

TPS3808 будет управлять лишь логическим входом силового ключа (от Infineon), поэтому входного напряжения за глаза. У нее есть версия HiRel, пишут, что для Aerospace, Medical и т.п. Также расширенный температурный диапазон (до +125С). 555 конечно же проверенная десятилетиями микросхема, но все же хочется при использовании микросхемы гарантий производителя в ее надежности.

 

PS 10А будет коммутировать силовая обмотка реле, а обмотка управления конечно же требует миллиамперы.

 

Классический вариант - два реле последовательно управляемых контроллером + сторожевой таймер. При проблеме с контактами уж какое-то реле то разомкнет. При проблеме с контроллером сразу перезапуск и инициализация портов управляющих реле

 

А если к примеру микроконтроллер с тяжелой ОС, которая требует длительной загрузки, то уже потребуется второй МК с быстрым перезапуском. Вот поэтому хочется, чтобы реле размыкалось по команде от независимого устройства без программы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как это. В моих системах инициализация портов это первое дело. Но я никогда не использовал ОС

 

348079.jpg348080.jpg

 

348081.jpg348082.jpg

 

348083.jpg348084.jpg

Изменено пользователем Herz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как это. В моих системах инициализация портов это первое дело. Но я никогда не использовал ОС

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я сам сейчас прибалеваю повышением отказоустойчивости кипятильника

Изменено пользователем Слесарь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

555 конечно же проверенная десятилетиями микросхема, но все же хочется при использовании микросхемы гарантий производителя в ее надежности.
Извиняюсь за любопытство, а вы случайно не для АЭС чего-то там разрабатываете?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А я все мечтаю собрать статистику отказов контроллера при правильной разводке платы и правильном БП. Каждый раз как приезжаю на производство, спрашиваю, как работают мои самоделки (специально не задействую сторожевой таймер в некоторых), не слова о зависах, когда стоит правильный БП.

Дома, один агрегат бывает виснет, но там неправильный БП и куча обвязки среди искрящего железа. Но опять же, когда заземлил на корпус устройства минус плохого БП, не могу дождаться зависа.

Когда говорят о сверхнадежности МК я обычно верю. Проблема обычно в его использовани

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня в таких случаях процессор генерит импульсы, которые через конденсатор, диод и RC-цепь открывают управляющий транзистор реле. Если МК завис в 0 или 1, то импульсы не поддерживают открытое состояние транзистора и он закрывается, отключая реле. Просто и надежно..

Изменено пользователем wla

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

У меня программа генерила импульсы в основном цикле.. Это было в системе по управлению инкубатором. Там 16000 оплдотворенных куриных яиц ( а они значительно дороже тех, которые продают в магазине). Поэтому любое отклонение от нормы должно было вызывать сигнализацию, которая по умолчанию была включена и отключалась только при нормальном течении процесса длительностью 22 суток. Система подразумевала сеть из 200 таких инкубаторов. Прерывания не проходят. т. к процессор мог зависнуть, при этом прерывания работали.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извиняюсь за любопытство, а вы случайно не для АЭС чего-то там разрабатываете?

Ни в коем случае, я не считаю себя достаточно квалифицированным для решения таких задач. В моем случаем некорректное срабатывание реле может привести к повреждению механизма, конструкцию которого я не определяю.

 

Когда говорят о сверхнадежности МК я обычно верю. Проблема обычно в его использовани

 

Вот именно, я как раз волнуюсь за качество софта. Я хочу аппаратно компенсировать потенциальные ошибки в управляющей программе.

 

У меня программа генерила импульсы в основном цикле..

 

А если проц постоянно зависает, срабатывает WDT и порт меняет состояние с 1 в 0 и наоборот? Если мы используем прерывания таймера для переключения состояния порта, то представьте ситуацию, когда в основном цикле глобально запрещают прерывания для выполнения какой-либо функции, а потом зависают или еще что-нибудь?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... а потом зависают или еще что-нибудь?

Проще, дешевле, надежнее и минималистичнее всего - поставить второй контроллер, который только измеряет время включения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...