Отказ срабатывания |
Ответить |
Автор | |
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 08 Сентябрь 2003 Категория: Russian Federation Online Status: Offline Публикации: 178 |
Опубликовано: 25 Октябрь 2003 15:26 |
Вопрос по мотивам темы "Средство для программирования контроллера"
А что народ делает в случае несрабатывания какого-либо клапана/реле etc. ? В случае, если идет работа с оператором, то по идее можно "все бросать" и сообщать оператору, но во многих случаях хорошо программно попытаться повторить операцию - и в случае автопилотного режима, и в случае работы с оператором. Я, например, делаю что-то вроде rc = PowerOnOff(0); if(rc) //проблема - высокое напряжение не отключилось { t0 = clock(); //засекаем время do { rc = PowerOnOff(0); if(!rc) break; //таки отключилось DosSleep(1); //поспать 1мс - может все пройдет ? /* как вариант с залипанием реле - можно пробовать PowerOnOff(1); DosSleep(1); //поспать 1мс - пусть установится напряжение */ } while(clock() - t0 < 5000); //ждать 5000 мс if(rc) { //выключаем все что можно //включаем сирену ErrorMessage("Полный пердимонокль"); //делаем харакири } } Практика показывает, что для всяких реле, клапанов и эффектов от кратковременных наводок это помогает |
|
SY,
EK |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 09 Сентябрь 2003 Категория: Russian Federation Online Status: Offline Публикации: 247 |
|
Тут действительно большая наука идет... стратегий разных
может быть куча, глаза разбегаются... В основном проблема (как мне это представляется) заключается в филососфском вопросе: если состояние клапана не соответствует ожидаемому, то чем это вызвано поломкой клапана или поломкой датчика положения клапана? :-) Вообще же схема контроля у нас выполняется примерно по такой схеме: включается клапан, если он не включился за специфицированное время - отказ, диагностика, "ломка" алгоритма и т.д. если включился, то запускается процесс контроля отказа включения (если он должен быть включен) или выключения (если мы его выключали)... контролируется как состояние клапана, так и управляющий сигнал... это все штатаное для каждого типа клапанов, хорошо копируется (тепмлейтится) и проблем со сложностью не вызывает. Ну, плюс, когда это нужно вводятся специфические контролирующие процессы... например при контроле герметичности вакуумируемой полости контролируется отсутствие сквозных "дырок" через клапаны вакуумной системы от объекта к атмосфере... тут уже в случае появления "дырки" запускается процесс упреждения аварии... допустимо использование двойного контроль, т.е. контролируется не только состояние клапана, но и давление... ну и т.д. сильно крутую логику не накручиваем, т.к. оператору потом не разобраться будет... с другой стороны, и автоматическим прекращение процесса не злоупотребляем, некоторые аварии допускают снятие противоаварийной реакции системы оператором... типа возникла аварийная ситуация: система оператору бубнит: "отсутствует вода в магистрали такой-то системы охлаждения", "до Отмены 2 минуты"... прошла минута - система бубнит (как в фильмах про "Чужого") "до Отмены одна минута"... а Оператор может либо ускорить противоаварийный процесс - стукнув по "Красной кнопке", либо сбегать и устранить неисправность, либо оттянуть Отмену попытавшись остановить обратный отсчет (правда если неполадка не устранена, отсчет снова пойдет)... |
|
Владимир Е. Зюбин
Язык Рефлекс -- Си-подобный язык программирования ПЛК http://reflex-language.narod.ru/ |
|
Ответить |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |