Serg_el 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба Есть задача коммутации некоторой силовой цепи (12В, 10А) с помощью реле. Управляющий микроконтроллер обеспечивает включение реле на время не превышающее 5 секунд с последующим обязательным отключением. Необходимо гарантировать отключение реле максимум через 7 секунд даже при условии зависания микроконтроллера, отключения питания управляющей платы, нашествия инопланетян и т.п. Есть ли какие-либо классические решения данной задачи? Сейчас мне видится использование для управления электронным ключом, который запитывает обмотку реле, супервизора (TPS3808) с внешним сбросом с программируемой задержкой. Микроконтроллер "сбрасывает" супервизор, выходной сигнал которого активирует замыкание ключа, а далее через 7 секунд размыкает его принудительно, если микроконтроллер не в состоянии сделать это сам. Ну и заодно можно через 7 секунд дать RESET и самому микроконтроллеру. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба TPS3808 не подойдет. У нее максимально допустимое входное напряжение 7В. Дешевле будет сделать перезапускаемый одновибратор на LMC555 по классической схеме из даташита. Ее можно запитать от 12В, а выход нагрузить прямо на обмотку реле. Надеюсь реле у вас не 10А потребляет как указано, а не более 15мА? ;) Номиналы RC для выдержки 7 сек будут не слишком "супермаксимальными", вполне можно будет обойтись керамикой X7R на несколько мкФ и 2-3 МегаОмным резистором. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Слесарь 9 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба Классический вариант - два реле последовательно управляемых контроллером + сторожевой таймер. При проблеме с контактами уж какое-то реле то разомкнет. При проблеме с контроллером сразу перезапуск и инициализация портов управляющих реле Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serg_el 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба TPS3808 не подойдет. У нее максимально допустимое входное напряжение 7В. Дешевле будет сделать перезапускаемый одновибратор на LMC555 по классической схеме из даташита. Ее можно запитать от 12В, а выход нагрузить прямо на обмотку реле. Надеюсь реле у вас не 10А потребляет как указано, а не более 15мА? ;) Номиналы RC для выдержки 7 сек будут не слишком "супермаксимальными", вполне можно будет обойтись керамикой X7R на несколько мкФ и 2-3 МегаОмным резистором. TPS3808 будет управлять лишь логическим входом силового ключа (от Infineon), поэтому входного напряжения за глаза. У нее есть версия HiRel, пишут, что для Aerospace, Medical и т.п. Также расширенный температурный диапазон (до +125С). 555 конечно же проверенная десятилетиями микросхема, но все же хочется при использовании микросхемы гарантий производителя в ее надежности. PS 10А будет коммутировать силовая обмотка реле, а обмотка управления конечно же требует миллиамперы. Классический вариант - два реле последовательно управляемых контроллером + сторожевой таймер. При проблеме с контактами уж какое-то реле то разомкнет. При проблеме с контроллером сразу перезапуск и инициализация портов управляющих реле А если к примеру микроконтроллер с тяжелой ОС, которая требует длительной загрузки, то уже потребуется второй МК с быстрым перезапуском. Вот поэтому хочется, чтобы реле размыкалось по команде от независимого устройства без программы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Слесарь 9 12 апреля, 2011 Опубликовано 12 апреля, 2011 (изменено) · Жалоба Как это. В моих системах инициализация портов это первое дело. Но я никогда не использовал ОС Изменено 24 апреля, 2011 пользователем Herz Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serg_el 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба Как это. В моих системах инициализация портов это первое дело. Но я никогда не использовал ОС Это как пример того, почему я хочу использовать именно независимую железку, которая параллельно будет обеспечивать надежность отключения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Слесарь 9 12 апреля, 2011 Опубликовано 12 апреля, 2011 (изменено) · Жалоба Я сам сейчас прибалеваю повышением отказоустойчивости кипятильника Изменено 12 апреля, 2011 пользователем Слесарь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба 555 конечно же проверенная десятилетиями микросхема, но все же хочется при использовании микросхемы гарантий производителя в ее надежности.Извиняюсь за любопытство, а вы случайно не для АЭС чего-то там разрабатываете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Слесарь 9 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба А я все мечтаю собрать статистику отказов контроллера при правильной разводке платы и правильном БП. Каждый раз как приезжаю на производство, спрашиваю, как работают мои самоделки (специально не задействую сторожевой таймер в некоторых), не слова о зависах, когда стоит правильный БП. Дома, один агрегат бывает виснет, но там неправильный БП и куча обвязки среди искрящего железа. Но опять же, когда заземлил на корпус устройства минус плохого БП, не могу дождаться зависа. Когда говорят о сверхнадежности МК я обычно верю. Проблема обычно в его использовани Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
wla 3 13 апреля, 2011 Опубликовано 13 апреля, 2011 (изменено) · Жалоба У меня в таких случаях процессор генерит импульсы, которые через конденсатор, диод и RC-цепь открывают управляющий транзистор реле. Если МК завис в 0 или 1, то импульсы не поддерживают открытое состояние транзистора и он закрывается, отключая реле. Просто и надежно.. Изменено 13 апреля, 2011 пользователем wla Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Слесарь 9 13 апреля, 2011 Опубликовано 13 апреля, 2011 · Жалоба Помнится, у меня при зависаниях, ШИМ продолжах генерить в той же поре, то есть, для предложенного варианта нельзя применять внутренние независимые генераторы. Как понимаю, необходимо для этой задачи использовать целый отдельный таймер и обработчик в прерывании. Пока незнаю, может ли программа зависнуть в основном цикле, но продолжать крутиться в обработчике прерывания по переполнениям независимых таймеров.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
wla 3 13 апреля, 2011 Опубликовано 13 апреля, 2011 · Жалоба Помнится, у меня при зависаниях, ШИМ продолжах генерить в той же поре, то есть, для предложенного варианта нельзя применять внутренние независимые генераторы. Как понимаю, необходимо для этой задачи использовать целый отдельный таймер и обработчик в прерывании. Пока незнаю, может ли программа зависнуть в основном цикле, но продолжать крутиться в обработчике прерывания по переполнениям независимых таймеров.. У меня программа генерила импульсы в основном цикле.. Это было в системе по управлению инкубатором. Там 16000 оплдотворенных куриных яиц ( а они значительно дороже тех, которые продают в магазине). Поэтому любое отклонение от нормы должно было вызывать сигнализацию, которая по умолчанию была включена и отключалась только при нормальном течении процесса длительностью 22 суток. Система подразумевала сеть из 200 таких инкубаторов. Прерывания не проходят. т. к процессор мог зависнуть, при этом прерывания работали. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Слесарь 9 13 апреля, 2011 Опубликовано 13 апреля, 2011 · Жалоба Понятно. То есть, это для системы контролирующей всего один процесс. Используюшей программные задержки в работе, не таймеры. Пусть даже поочередно контролируется множество датчиков. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Serg_el 0 13 апреля, 2011 Опубликовано 13 апреля, 2011 · Жалоба Извиняюсь за любопытство, а вы случайно не для АЭС чего-то там разрабатываете? Ни в коем случае, я не считаю себя достаточно квалифицированным для решения таких задач. В моем случаем некорректное срабатывание реле может привести к повреждению механизма, конструкцию которого я не определяю. Когда говорят о сверхнадежности МК я обычно верю. Проблема обычно в его использовани Вот именно, я как раз волнуюсь за качество софта. Я хочу аппаратно компенсировать потенциальные ошибки в управляющей программе. У меня программа генерила импульсы в основном цикле.. А если проц постоянно зависает, срабатывает WDT и порт меняет состояние с 1 в 0 и наоборот? Если мы используем прерывания таймера для переключения состояния порта, то представьте ситуацию, когда в основном цикле глобально запрещают прерывания для выполнения какой-либо функции, а потом зависают или еще что-нибудь? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tanya 4 13 апреля, 2011 Опубликовано 13 апреля, 2011 · Жалоба ... а потом зависают или еще что-нибудь? Проще, дешевле, надежнее и минималистичнее всего - поставить второй контроллер, который только измеряет время включения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться