Практические задания Задание 1. Постановка задачи Необходимо написать собственный блок, реализующий следующий алгоритм: – на выход Y выводится сумма входов a и b; – если на входе En (Enable, Разрешить) значение False, то на выходе Y всегда ноль (не зависимо от a и b). !!! Переменные a, b и Y имеют тип REAL, а переменная En имеет тип BOOL Примечание: для составления программы использовать язык ST Практическое задание Включение резервных насосов в группе на CFC Имеется 2 группы насосов по 2 насоса (n1, n2, n3, n4). В каждой группе первый насос работает в штатном режиме, а второй насос включается, если 2 из 3 аварийных датчиков сработают. Чтобы отслеживать срабатывание аварийных датчиков d1, d2, d3 нужно сконфигурировать дискретные входы ПЛК. А для того чтобы, была возможность переключать режимы работы насосов необходимо настроить 4 дискретных выхода, каждый из которых будет соответствовать 1 насосу. Чтобы проверять выполнение условия включения резервных насосов в каждой группе взамен основных, нужно формировать сигнал, срабатывающий при условии включения 2-х датчиков из трех. Данную пользовательскую функцию можно написать на языке CFC (рис.1). Функция состоит из следующих элементов: 3-х элементов AND (логическое умножение) с 2-я входами и 1 элемента OR (логическое ИЛИ) с 3-мя входами. Рис.2. Пользовательская функция включения резерва Для управления парой насосов напишем пользовательский функциональный блок на языке CFC (рис.2). Он состоит из одного входа «in», одного элемента NOT и 2-х выходов «out1» и «out2», второй из которых инверсный. Рис.3. Пользовательский функциональный блок Сама программа на CFC, использующая 1 пользовательскую функцию и 2 пользовательских функциональных блока изображена ниже (рис.4). Рис.4. Программа на CFC Визуализация включения резерва при срабатывании 2-х датчиков показана на рис. 5.