Вариант 1

3. Задание.

Конфликта сигналов нет.

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

Свойства детали распознаются при установке детали в приемник.

После нажатия кнопки START могут произойти следующие события:

-Цилиндр 2A выталкивает деталь из приемника, если деталь из металла или пластмассовая черного цвета.

-Лампа Н3 горит, если деталь красная из пластика. Лампа гаснет при нажатии кнопки STOP.

Цилиндры 1A, 3A и 4A и их датчики не используются в управлении.

Способ решения – аналитический.

 


Рис. 3. Световой -, индуктивный - и емкостной дискретные датчики.

3.1 Исходная позиция приводов.

Подъемник 1A находится внизу.

Выталкивающий цилиндр 2A задвинут.

 

3.2 Таблица 2. Структура программы.

Nr

Адрес

Пояснение

1

OB100

Стартовый блок B100 выполняется в первую очередь один раз при запуске режима RUN.

В этом блоке устанавливаются все привода в исходную позицию, а все переменные сбрасываются на «0».

2

OB1

Из основной программы вызывается без условий рабочий блок FC1

3

FC1

Рабочий блок. Управление устройством.

3.3 Стартовый блок B100.

В этом блоке устанавливаются все переменные (выходы Q) в исходную позицию путем сброса состояния всех электромагнитов на «0» с помощью операции RESET, RESET_BF или MOVE без условий.

Возможность 1. С помощью операции MOVЕ производится копирование данных со входа IN (в данном случае это „0” ) в адрес, указанный в OUT1. Операнд QB0 в формате Byte содержит 8 ячеек блока выхода. После выполнения этой операции всем битам, начиная с Q0.0 до Q0.7 присваивается значение «0».


Рис 4. Обнуление с помощью операции MOV.

Возможность 2. Операцией RESET_BF производится одновременный сброс (установка на «0») нескольких n битов.

Рис. 5. Установка и сброс 8 битов, начиная с адреса Q0.0 (Q0.0; Q0.1 … Q0.7).

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

3.4 Организационный блок OB1. Организует вызов рабочего блока FC1 без условий. Это традиционная структура разветвленной программы, однако, содержимое блока FC1 можно выполнить и в организационном блоке.

Рис. 6. Вызов блока FC1 из организационного блока ОВ1 без условий.

3.5 Рабочий блок FC1.

Внутри блока можно использовать как глобальные переменные (доступные в любом другом блоке) так и локальные (доступны только внутри данного блока). Локальные переменные необходимо декларировать в таблице Interface, указав символ и формат данных. Значение переменным присваивается в блоке вызова.

Рис. 7. Пример декларирования переменных в таблице Interface.

Таблица 3. Добавить адреса переменных.

Символ

Адрес

Комментарий

Входы

1

S1


START, н.о. Включает одиночный или автоматический режимы, в зависимости от положения кнопки S3

2

S2


STOP, н.о. Устройство завершает выполнение рабочего цикла до достижения исходной позиции

3

2B1


Цилиндра 2A выдвинутая позиция

4

B5


Индуктивный датчик

5

B6


Емкостной датчик

6

B7


Световой датчик

Выходы

1

2Y1


Выталкивает деталь

2

H3


Горит в аварийном режиме

Переменные (область памяти M), выбрать произвольно

1

Металл

M0.2

Деталь из металла

2

Красная

M0.3

Деталь из пластмассы красная

3

Черная

M0.4

Деталь из пластмассы черная

Аналитическое описание.

Металл

Металл = 1 , если B5 and B6 and B7

Красная

Красная = 1 , если noB5 and B6 and B7

Черная

Черная = 1 , если noB5 and B6 and noB7

Цилиндр 2A

Цилиндр 2A выдвигается (set 2Y1), если S1 and (Черная or Металл)

Цилиндр 2A задвигается (reset 2Y1), если 2B1

H3

set H3, если S1 and Красная

reset H3, если S2

3.6 Написать программу, загрузить и проверить в работе. Ошибки исправить.