Управление миксером с помощью ПЛК | Ручной и автоматический режимы с возможностью выбора рецепта,...
Автор: PLC Automation Courses
Загружено: 2025-12-31
Просмотров: 282
В этом видео мы демонстрируем промышленный миксер с ПЛК-управлением, запрограммированный в TIA Portal с использованием структурированного текста.
Система включает в себя как ручной, так и автоматический режимы, последовательность действий на основе рецептов и обработку аварийных сигналов для безопасной работы.
Функции, рассматриваемые в этом видео:
✔ Ручное управление заливочным клапаном, двигателем миксера и сливным клапаном
✔ Автоматическая последовательность: Заполнение → Смешивание (таймер) → Слив
✔ Смешивание на основе таймера с использованием TON
✔ Контроль уровня с помощью датчиков высокого и низкого уровня
✔ Логика автоматического запуска/остановки
✔ Пошаговый конечный автомат
✔ Готовая к сигнализации структура для промышленного использования
✔ Разработано для интеграции с HMI (KTP700 / KTP900)
Идеально подходит для:
Программистов ПЛК
Инженеров по автоматизации
Студентов, изучающих TIA Portal
Разработчиков систем промышленного управления
Автоматизации процессов смешивания и пакетной обработки
Используемые технологии:
Siemens TIA Portal
Структурированный текст (ST)
Логика пошаговой последовательности ПЛК
Промышленная автоматизация
Готовая к HMI конструкция
Этот проект демонстрирует реальный промышленный процесс смешивания, широко используемый в:
Пищевой промышленности
Химической промышленности Смешивание
Дозирование порошков и жидкостей
Автоматизация процессов
Подписывайтесь на канал, чтобы получать больше уроков по ПЛК, ЧМИ и автоматизации!
Ручной режим (прямое управление)
ЕСЛИ Ручной режим ТОГДА
Шаг := 0;
Ошибка := FALSE;
Клапан заполнения := ManFill;
Двигатель смешивания := ManMix;
Сливной клапан := ManDrain;
tm(IN := FALSE, PT := tMix);
RETURN;
КОНЕЦ_ЕСЛИ;
Если не в автоматическом режиме, все выключено
ЕСЛИ НЕ в автоматическом режиме ТОГДА
Шаг := 0;
Клапан заполнения := FALSE;
Двигатель смешивания := FALSE;
Сливной клапан := FALSE;
tm(IN := FALSE, PT := tMix);
RETURN;
КОНЕЦ ЕСЛИ;
Автоматическая остановка сбрасывает последовательность
ЕСЛИ Автоматическая остановка ТОГДА
Шаг := 0;
КОНЕЦ ЕСЛИ;
Автоматическая последовательность с использованием CASE Шаг
Шаг 0 — Простой / ожидание запуска
0:
Клапан заполнения := FALSE; Миксер := FALSE; Сливной клапан := FALSE;
tm(IN := FALSE, PT := tMix);
ЕСЛИ Автозапуск ТОГДА Шаг := 1; КОНЕЦ ЕСЛИ;
Все выходы ВЫКЛ
Таймер остановлен/сброшен
Если оператор нажимает Автозапуск → перейти к Шагу 1
Шаг 1 — Заполнение до высокого уровня
1:
Клапан заполнения := TRUE; Миксер := FALSE; Сливной клапан := FALSE;
ЕСЛИ Уровень высокий ТОГДА
Клапан заполнения := FALSE;
Шаг := 2;
КОНЕЦ_ЕСЛИ;
Открыть заливной клапан
Дождаться, пока LevelHigh = TRUE (бак заполнен)
Когда будет достигнут высокий уровень:
закрыть заливной клапан
перейти к шагу 2 (смешивание)
Шаг 2 — Смешивание в течение фиксированного времени (tMix)
2:
Заливной клапан := FALSE; Двигатель смешивания := TRUE; Сливной клапан := FALSE;
tm(IN := TRUE, PT := tMix);
ЕСЛИ tm.Q ТОГДА
tm(IN := FALSE, PT := tMix);
Шаг := 3;
КОНЕЦ_ЕСЛИ;
Двигатель миксера ВКЛ
Запуск таймера TON с предустановленным временем tMix (по умолчанию 8 с)
По завершении работы таймера (tm.Q = TRUE):
вход таймера выключен (сбросьте его)
перейдите к шагу 3 (слив)
а теперь код:
FUNCTION_BLOCK FB_MixerAutoManual
VAR_INPUT
AutoMode : Bool;
ManualMode : Bool;
ManFill : Bool;
ManMix : Bool;
ManDrain : Bool;
AutoStart : Bool;
AutoStop : Bool;
LevelHigh : Bool;
LevelLow : Bool;
tMix : Time := T8s;
END_VAR
VAR_OUTPUT
FillValve : Bool;
MixMotor : Bool;
DrainValve : Bool;
Шаг : Целое число;
Ошибка : Логическое значение;
КОНЕЦ ПЕРЕМЕННОЙ
ПЕРЕМЕННАЯ
tm : TON;
КОНЕЦ ПЕРЕМЕННОЙ
// Прямое управление в ручном режиме
ЕСЛИ Ручной режим ТОГДА
Шаг := 0;
Ошибка := FALSE;
Клапан заполнения := ManFill;
Миксерный двигатель := ManMix;
Сливной клапан := ManDrain;
tm(IN := FALSE, PT := tMix);
ВОЗВРАТ;
КОНЕЦ ЕСЛИ;
// Последовательность в автоматическом режиме
ЕСЛИ НЕ Автоматический режим ТОГДА
Шаг := 0;
Клапан заполнения := FALSE;
Миксерный двигатель := FALSE;
Сливной клапан := FALSE;
tm(IN := FALSE, PT := tMix);
ВОЗВРАТ;
КОНЕЦ ЕСЛИ;
ЕСЛИ Автоостановка ТОГДА
Шаг := 0;
КОНЕЦ ЕСЛИ;
СЛУЧАЙ Шаг ИЗ
0:
Клапан заполнения := FALSE; Миксер := FALSE; Сливной клапан := FALSE;
tm(IN := FALSE, PT := tMix);
ЕСЛИ Автозапуск ТОГДА Шаг := 1; КОНЕЦ ЕСЛИ;
1: // заполнение до высокого уровня
Клапан заполнения := TRUE; Миксер := FALSE; Сливной клапан := FALSE;
ЕСЛИ Уровень высокий ТОГДА
Клапан заполнения := FALSE;
Шаг := 2;
КОНЕЦ ЕСЛИ;
2: // перемешивание по времени
Клапан заполнения := FALSE; Миксер := TRUE; Сливной клапан := FALSE;
tm(IN := TRUE, PT := tMix);
IF tm.Q THEN
tm(IN := FALSE, PT := tMix);
Step := 3;
END_IF;
3: // слив до низкого уровня
FillValve := FALSE; MixMotor := FALSE; DrainValve := TRUE;
IF LevelLow THEN
DrainValve := FALSE;
Step := 0;
END_IF;
END_CASE;
END_FUNCTION_BLOCK
Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: