fixik_papus (fixik_papus) wrote,
fixik_papus
fixik_papus

А если что-то пойдет не так?

На вспоминание этой истории натолкнул шедевр, обнаруженный во френд-ленте.

-----------
Оригинал взят у _nette_nata_ в Что европейцу хорошо, то русскому - смерть)))
В Штутгарте малая нужда заставила зайти вечером в уличный общественный биотуалет. Одноместная кабинка, очень аккуратная,блестящая, чистая, напичкан датчиками и управляется компьютером. Бросаешь в прорезь двери монетку 2 евро, двери автоматически открываются, зажигается свет,заходишь, двери закрываются. Клаустрофобией не страдаю, но так как всю жизнь занимаюсь электроникой и компьютерными программами, немного напрягает.
Ну сделал я свои дела, нужно выходить, а кнопки для открытия двери никакой нет. Инструкций тоже. Что тупой что ли, инструкцию по пользованию сортиром тебе писать? Включаю свою логику, как немцы программу управления написали, зашёл - поднял крышку унитаза, слил воду, закрыл крышку. Может датчик какой заело? Повторяю процесс. Дверь не открывается. Может на крышку сесть надо, потом встать, потом слив воды? Повторяю процесс. Дверь не открывается. Так. Что забыл? Может руки помыть?Ещё раз повторяю процесс сначала. Подношу руку к крану, датчик срабатывает, вода течёт, потом автоматически выключается, в надежде и с грустью смотрю на дверь -не открывается.
Перспектива ночевать в навороченном немецком толчке меня не вдохновила. Кричу своему товарищу, оставшемуся снаружи (везунчик): "Женя,эта зараза меня не выпускает!" Он пытается дать взятку туалету, засовывая монетку в прорезь. Автомат не умолим, не берёт, и всё. На пинки и удары тоже не реагирует. Женя кричит: "Держись, сейчас полицию вызову!" От нечего делать, повторяю процесс, умываю руки, включаю фен... фен выключается, дверь открывается.

P.S. Лично такоего не встречала, всегда есть кнопка открытия дверей, так что больше похоже на байку, но смешную)))
----------

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

Пуско-наладка новой линии.
По технологии, на одном участке продукт нужно выдержать определенное время при пониженной температуре в холодильном туннеле. Продукт едет на формах; чтобы туннель был покороче - перед ним стоит устройство, именуемое стакер. Которое собирает формы на конвейере в стопочку из 12 штук. Штуковина несложная: форма на конвейере доезжает до стопора; пневмоцилиндр ее поднимает, под нее заезжает следующая форма; пневмоцилиндр опускается. И так далее, пара секунд на форму. Как набирается 12 штук - стопор отводится и стопка заезжает в туннель. После чего счетчик обнуляется и цикл повторяется.

Все было хорошо, пока однажды из-за мелкой механической проблемы стопка форм в туннель не заехала, ее слегка заклинило на полдороги.
Наладчик, недолго думая, вытащил стопку, поправил направляющую и поставил стопку на место.
При этом датчик наличия стопки - на короткое время открылся.
Соответственно, контроллер стакера решил, что стопка уехала, а то, что приехало - это очередная форма и нужно набрать еще 11 их.
И набрал. В результате получилась стопка несколько побольше, из 23 форм - И поехала в туннель. Поместиться в туннеле стопка удвоенной высоты не может физически, посему она врубилась в него, развалилась, и все формы посыпались.... правильно, на наладчика. А весит каждая форма с продуктом - килограмма полтора.... Ладно, хоть высота небольшая, и отделался синяками и шишками.

- Слушай - говорю, - у меня тут свой датчик наличия форм на входе в тоннель есть. Давай, я тебе его статус перешлю, чтобы по двум датчикам тебе корректно факт загрузки форм в туннель определять.
Сказано - сделано. Тестируем, уже вдвоем. Воспроизвели застревание - все хорошо, все остановилось с ошибкой.
Запускаемся после этого - стакер невозмутимо начинает набирать формы выше двенадцатой...
Пока наладчик смотрит в программатор и соображает, в чем дело - за минуту набирается стопка где-то из сорока форм, после чего ее перекашивает и формы сыплются.... правильно, на наладчика. Который получает очередную порцию синяков и шишек.

В чем дело? Счетчик до двенадцати - сбрасывается, когда стопка уехала в туннель. Поскольку встали по ошибке - ничего никуда не уехало и счетчик не сбросился. Зато секвенсор стакера - сбросился и начал снова пытаться досчитать до двенадцати. Получится это у него... когда целая переменная счетчика дойдет до 65535, прокрутится в ноль и дойдет снова до двенадцати. Правда, стопка рассыпалась несколько раньше, чем достигла количества в 65547 форм.

После этого наконец сообразили поставить датчик высоты. Но вместо того, чтобы использовать его как аварийный - выбросили вообще счетчик до 12 и определяли высоту стопки до этому датчику. Как сработал - так и едем в туннель.
Все было хорошо, пока через несколько дней датчик тот не свернули чутка, так, что он перестал видеть формы.
Разумеется, снова начала копиться стопка в 20-30-и далее форм.
Наладчик быстро понял, в чем дело, подошел и подвинул датчик в правильное положение...
Датчик увидел формы, которых было больше тридцати уже, и тут же дал команду "ехать в тоннель". Поместиться в туннеле стопка такой высоты не может физически...

Только после третьй порции синяков и шишек от рассыпавшихся форм - был выработан правильный, надежный алгоритм: считать до двенадцати + аварийный датчик превышения высоты стопки.

Так что при разработке любой логики управления - нужно думать не только о том, когда все работает "как нужно", а еще и о том, как все будет работать, "если что-то пойдет не так".
Причем на отработку поведения в аварийных ситуациях уходит куда больше времени. Исходя из моего опыта - процентов 70 от всей работы, пожалуй.
Tags: Байки наладчика, Байки от коллег
Subscribe

Posts from This Journal “Байки наладчика” Tag

Buy for 10 tokens
Buy promo for minimal price.
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 106 comments
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →