LAB599.RU — интернет-магазин средств связи
EN FR DE CN JP
QRZ.RU > Каталог схем и документации > Схемы наших читателей > Компьютерные технологии > Автоматическая перезагрузка компьютера при зависании watchdog

Автоматическая перезагрузка компьютера при зависании watchdog

Автоматическая перезагрузка компьютера при зависании (Watchdog)

Вариант 1

Признаком нормальной работы компьютера в данном случае служит наличие сигнала на выходе TxD одного из COM портов. Защищаемая от "зависания" программа должна постоянно выводить в него данные. Какие - значения не имеет. Это может быть полезная информация, предназначенная для подключённого к порту устройства, либо другая, лишь бы сигнал на выходе TxD не прерывался на длительное время.

Значения выпрямленного диодами VD1 и VD2 напряжения на конденсаторах C2 и C3 равны по абсолютной величине (~10 В), но противоположны по знаку. В результате напряжение на базе транзистора VT1 близко к нулю и он закрыт. После прекращения сигнала TxD конденсатор C3 разряжается быстрее, чем C2, ёмкость которого в несколько раз больше. Напряжение на базе транзистора VT1 становится положительным и открывает его. Цепь "Сброс" компьютера соединяется с общим проводом до полной разрядки конденсатора C2.

В результате компьютер начнёт работу с загрузки операционной системы и выполнения команд Autoexec.bat. Среди них не должно быть команд, требующих оператора (например, ввод пароля). Только загрузка необходимых резидентных драйверов и вызов рабочей программы. В течении всего перезапуска "сторож" не оказывает влияния на работу компьютера, т.к. сигнал TxD отсутствует, конденсаторы разряжены, а транзистор закрыт. С появлением сигнала первым заряжается конденсатор C3, затем C2, и устройство готово к работе.

Список необходимых радиодеталей:
C1 - 1мк
C2 - 10мк x 16В
C3 - 2,2мк
R1 - 47кОм
R2 - 47кОм
VD1 - КД522А
VD2 - КД522А
VD3 - КД522А
VT1 - КТ3102Е

До того, как опробовал у себя эту схему, я и не подозревал, что Винда настолько глюченая. С другими ОСями никаких проблем (DOS, Linux). Под Widows надо делать большую задержку. Обязательно точно разберитесь с подключением на "Reset", а то IMHO может сгореть транзистор. Резисторы достаточно поставить минимальной мощности (0,125 Ват). Заменять диоды можно без проблем на однотипные: у меня стоят КД521.

Вариант 2

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

Алгоритм ее работы прост. На таймерное прерывание вешается обработчик, делающий две вещи. Во-первых он выдает импульс в порт 100h по линии D0, а во-вторых инкрементирует внутренний счетчик, который сбрасывается файловыми функциями 21h прерывания и нажатиями на клавиши. Если 10 минут не возникало таких ситуаций, происходит перезагрузка.

Теперь о схеме. Ее основой является ждущий мультивибратор с повторным запуском. После первого запускающего импульса одновибратор начинает формирование временной задержки. Каждый следующий импульс возобновляет эту задержку. Если поступление запускающих импульсов прекратится, одновибратор закончит формирование импульса, определяемого постоянной времени C1R2 и запустит второй одновибратор, который собственно и формирует сигнал сброса. Кроме того можно программно сформировать сбрасывающий импульс по линии D1порта 100h. Выводы Reset и Gnd подключаются параллельно кнопке сброса выводом Gnd к нулю. Элементы D2 и D3 образуют дешифратор, а D1 - четырехбитный порт, у которого два разряда остаются резервными.

www.iceinet.ru

 

Партнеры