Безопасные двери, или продолжаем проектировать АСУ ТП

Привет, Хабр!

Поскольку НЛО позволило мне писать статьи, продолжаем истории о проектировании. С придумыванием заголовков у меня беда. На этот раз речь пойдет о дверях безопасности. Надеюсь читатель простит мне вольный перевод термина Safety (или Protective) Door.

Говоря о безопасности на производстве, я подразумеваю аварийный останов или аварийное отключение для предотвращения аварии. Есть целый ряд технологий и устройств, позволяющих сделать жизнь ответственного за ТБ безоблачной и спокойной, а рабочим завода обеспечить сохранность жизни и конечностей.

Эти устройства применяются для выполнения следующих задач:

— кнопки аварийного останова и отключения, о которых я писал чуть раньше;
— мониторинг дверей безопасности;
— контроль рабочей зоны лазерными сканерами;
— контроль доступа с помощью световых барьеров;
— контроль безопасной скорости вращения и движения;
— контроль выполнения работы двумя руками (да, переводчик из меня абсолютно точно никакой).

Может, список неполный, но достаточный на сегодня. Итак, говорим о дверях.
Давайте взглянем на картинку, оценим симпатичную желтую калитку на переднем плане и позавидуем ребятам в халатах, которые так доверяют этой самой калитке, что даже не носят каски. В принципе, если один из ребят зайдет в дверь, не оснащенную системой мониторинга, робот на заднем плане может доставить массу дискомфорта и неприятных моментов.

f665eb12109147ce9efb0133038936f6.jpg

Для того, чтобы избежать таких ситуаций, и исключить простой оборудования из-за внепланового вызова уборщиц, опасную зону огораживают и ставят на дверь специальные концевые выключатели. Например такие (232–0HC05):

670ce17470514e9d94c8f9face0feb86.JPG

Принцип работы прост: когда дверь закрыта, концевые выключатели находятся в одном положении, если приоткрыть — в другом. В зависимости от нужд, выключатели бывают механические или бесконтактные с технологией RFID. В своем примере я буду использовать нормально-замкнутые контакты обычных механических выключателей S7/S8, как показано на этой схеме:

1b6d17a0adf347cda40746e182dec4ab.jpg

Оговорюсь, что для одной зоны и одной двери совсем не обязательно использовать такую мощную аппаратную конфигурацию как у меня, а достаточно использовать простое реле безопасности (конечно должным образом сертифицированное). Внешний вид моего железа есть в прошлой статье, давайте взглянем на конфигурацию в Step7:

eef7807f8ee9454e8df1172b5243f4bd.JPG

Итак, наши концевики подключены в модуль 4/8 FDI (Failsafe Discrete/Digital Input) как два одноканальных датчика с оценкой 1оо1 и имеют адреса I19.1, I19.5. Можно приступать к программированию.

Поскольку failsafe совсем не про импровизацию, будем использовать стандартный библиотечный блок FB 217 «F_SFDOOR»: Safety Door Monitoring, который входит в пакет Distributed Safety. Справка для этого блока выглядит вот так:

8669b524d1304695b0caa8df0a877c15.JPG

Переводить ее целиком я не буду (задайте пожалуйста вопрос, если нужно что-то пояснить), но вкратце работает блок так: выход Q нашего блока сбросится в 0, как только пропадет единица на одном из входов IN1/IN2. Для того, чтобы блок завелся, необходимо полностью открыть дверь (сбросить входы IN1/IN2), полностью закрыть дверь (взвести входы IN1/IN2), установить в единицу вход ACK.
Вызов блока в программе:

23efffbb07104e8e840445608538f256.JPG

Сохраним, скомпилируем и зальем наш блок в контроллер.
Готово! Теперь при любом сбое, обрыве одного из кабелей, или даже провисании петель на двери, контакт разомкнется и контроллер остановит нашего робота с первой картинки.

В следующий раз попробую рассказать о световых барьерах и лазерных сканерах, если конечно это интересно.

© Habrahabr.ru