Автоматическая перезагрузка компьютера при зависании
Рис.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", а то может сгореть транзистор. Резисторы достаточно
поставить минимальной мощности (0,125 Вт). Заменять диоды можно без проблем на
однотипные: у меня стоят КД521. |