
О книге
© Садыков Ленар, 2026. Все права защищены.
Книга подготовлена как учебно-практическое руководство. Материал ориентирован на инженеров АСУТП, КИПиА, начинающих программистов PLC и специалистов по эксплуатации.
Аннотация
Практический курс по программированию промышленных логических контроллеров от создания проекта до диагностики, HMI, PROFINET, аналоговых сигналов, приводов, PID-регулирования и итоговых учебных задач. Материал построен по принципу «понять → повторить → проверить → применить» и ориентирован на начинающих программистов ПЛК, инженеров АСУТП и специалистов КИПиА.
Примечание о товарных обозначениях. В тексте книги названия программных средств, контроллеров и протоколов приводятся для идентификации рассматриваемых технологий. Настоящее издание является независимым учебно-практическим материалом и не является официальным изданием или учебным курсом производителя оборудования.
Важное замечание
Названия меню, доступные функции и конкретные диапазоны сигналов могут отличаться в зависимости от версии TIA Portal, CPU, прошивки и модулей. При реальной эксплуатации необходимо руководствоваться проектной документацией, руководствами Siemens и требованиями предприятия. Учебный пример не заменяет проект безопасности или технологический регламент.
Содержание
1. Знакомство с TIA Portal
2. Основы ПЛК
3. S7—1200 и S7—1500
4. Создание проекта
5. Аппаратная конфигурация
6. Переменные PLC
7. LAD с нуля
8. FBD
9. SCL
10. OB, FC, FB и DB
11. Таймеры и счётчики
12. Дискретные сигналы
13. Аналоговые сигналы 4–20 мА
14. Масштабирование аналоговых величин
15. Управление электродвигателем
16. Частотный преобразователь
17. Насосная станция
18. Автоматический и ручной режим
19. Аварии и блокировки
20. HMI
21. PROFINET
22. Онлайн-диагностика
23. PID-регулирование
24. Структура промышленного проекта
25. Типовые ошибки новичков
26. Практический проект: насосная станция
27. Практический проект: котельная
28. Практический проект: вентиляция
29. Подготовка проекта к загрузке
30. Пусконаладка и испытания
31. Диагностика отказов
32. Безопасность и изменения программы
33. Как читать чужую программу
34. Стандартизация
35. Экзамен и практикум
Приложение A. Практический банк заданий
Приложение B. Чек-лист загрузки PLC
Приложение C. Глоссарий
1. Знакомство с TIA Portal
TIA Portal — инженерная среда Siemens для проектирования систем автоматизации. В одном проекте можно работать с контроллером, распределённым вводом-выводом, сетями, визуализацией и диагностикой. Для начинающего специалиста важно сразу разделить три понятия: аппаратная конфигурация, программа PLC и визуализация HMI.
Ключевые темы
— Создание проекта и структура дерева проекта
— Добавление CPU и модулей
— Компиляция и проверка проекта
— Переход от офлайн-проекта к онлайн-диагностике
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «1. Знакомство с TIA Portal»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 1. знакомство с tia portal. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
2. Основы ПЛК
Программируемый логический контроллер выполняет программу циклически, обрабатывает входные данные, вычисляет логику и формирует выходные воздействия. В практической работе нельзя считать PLC просто «компьютером»: цикл, приоритеты задач, аппаратные ограничения и диагностика непосредственно влияют на поведение установки.
Ключевые темы
— Понятие цикла PLC
— Входы, выходы и память
— OB, FC, FB и DB
— Время цикла и диагностика
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «2. Основы ПЛК»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 2. основы плк. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
3. S7—1200 и S7—1500
S7—1200 обычно применяют в компактных и средних задачах автоматизации, а S7—1500 — в более масштабных системах, где важны производительность, диагностика, коммуникации и расширяемость. Конкретные возможности зависят от CPU, версии прошивки и состава модулей.
Ключевые темы
— Как выбрать CPU
— Сигнальные модули и технологические объекты
— Память и производительность
— Совместимость аппаратуры
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «3. S7—1200 и S7—1500»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 3. s7—1200 и s7—1500. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
4. Создание проекта
Новый проект начинается с имени, структуры и выбора устройств. Полезно заранее принять правила именования: объект, агрегат, сигнал, тип данных. Хорошее имя переменной должно позволять понять её назначение без просмотра комментария.
Ключевые темы
— Имя проекта
— Добавление устройства
— Настройка CPU
— Сохранение версий проекта
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «4. Создание проекта»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 4. создание проекта. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
5. Аппаратная конфигурация
В конфигурации задаются CPU, модули сигналов, коммуникационные устройства и параметры интерфейсов. Адреса входов и выходов не следует переносить из чужого проекта без проверки: они зависят от конкретной конфигурации оборудования.
Ключевые темы
— Проверка модулей
— Адреса I/O
— Диагностика модуля
— Ошибки конфигурации
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «5. Аппаратная конфигурация»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 5. аппаратная конфигурация. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
6. Переменные PLC
Переменные связывают технологический процесс с программой. Рекомендуется разделять физические сигналы, внутренние состояния, команды оператора и расчётные величины. Это упрощает поиск неисправностей и последующую модернизацию.
Ключевые темы
— BOOL, INT, DINT, REAL
— TIME и DATE_AND_TIME
— Массивы и структуры
— Таблица PLC tags
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «6. Переменные PLC»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 6. переменные plc. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
7. LAD с нуля
LAD удобен для дискретной логики, блокировок и алгоритмов, которые должны быть легко читаемы электромехаником или инженером КИПиА. Начинать следует с простых цепочек: разрешение, пуск, самоподхват, останов и аварийное отключение.
Ключевые темы
— Контакты и катушки
— Последовательная и параллельная логика
— Самоподхват
— Разбор типовой цепи пуска
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «7. LAD с нуля»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 7. lad с нуля. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
8. FBD
FBD представляет алгоритм как набор функциональных блоков. Такой подход удобен для математических операций, таймеров, сравнений и обработки аналоговых сигналов. Главное правило — не превращать сеть в нечитаемый набор блоков.
Ключевые темы
— Блоки AND/OR/NOT
— Сравнение величин
— Таймеры
— Структурирование сетей
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «8. FBD»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 8. fbd. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
9. SCL
SCL основан на текстовом описании алгоритма и особенно удобен для расчётов, массивов, циклов и сложной последовательной логики. Для обучения полезно сначала реализовать небольшой алгоритм в LAD, а затем переписать его на SCL и сравнить читаемость.
Ключевые темы
— IF/ELSIF/ELSE
— CASE
— FOR и WHILE
— Работа со структурами
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «9. SCL»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 9. scl. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
10. OB, FC, FB и DB
Организация программы определяет её сопровождаемость. OB отвечает за выполнение задач контроллера, FC — за функцию без собственной статической памяти, FB — за экземпляр с памятью, DB — за хранение данных. Конкретный набор доступных блоков зависит от семейства CPU и версии среды.
Ключевые темы
— Циклический OB
— Функции
— Функциональные блоки
— Экземплярные DB
— Глобальные DB
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «10. OB, FC, FB и DB»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 10. ob, fc, fb и db. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
11. Таймеры и счётчики
Таймеры позволяют реализовать задержку включения, задержку отключения, импульс и другие временные алгоритмы. Важно учитывать тип данных времени и условия сброса. Счётчики применяются для подсчёта циклов, изделий, импульсов и событий.
Ключевые темы
— TON
— TOF
— TP
— Счётчик изделий
— Антидребезг сигнала
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «11. Таймеры и счётчики»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 11. таймеры и счётчики. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
12. Дискретные сигналы
Дискретный сигнал следует рассматривать не только как 0 или 1. В реальной установке важны нормальное состояние, аварийное состояние, обрыв цепи, дребезг, задержка и диагностика канала. В проекте полезно явно определить смысл каждого состояния.
Ключевые темы
— NO/NC логика
— Аварийные цепи
— Дребезг
— Диагностика входов
Практика
Создайте отдельную учебную копию проекта и выполните действие сначала офлайн.
После изменения выполните компиляцию и проверьте диагностические сообщения.
Запишите ожидаемое состояние входов, выходов и внутренних переменных.
Проверьте аварийные условия отдельно от нормального режима.
Добавьте комментарии к нестандартным решениям.
Контрольные вопросы
— Что является входом, а что выходом в задаче «12. Дискретные сигналы»?
— Какие условия должны разрешать работу алгоритма?
— Что произойдёт при потере обратной связи?
— Как оператор увидит неисправность?
— Какие данные нужно сохранить перед изменением программы?
Мини-кейс
Представьте технологический узел, для которого требуется реализовать 12. дискретные сигналы. Сначала составьте перечень сигналов, затем определите состояния оборудования, после чего реализуйте основную логику и только затем добавляйте диагностику. Такой порядок помогает отделить технологический алгоритм от интерфейса оператора.
13. Аналоговые сигналы 4–20 мА
Для аналогового канала нужно знать диапазон измерения, тип модуля, параметры конфигурации и формат представления значения в CPU. Универсального числового диапазона для всех модулей Siemens нет — масштабирование должно выполняться по документации конкретного модуля.
Ключевые темы
— 4–20 мА
— 0–10 В
— Нормирование
— Масштабирование
— Контроль выхода за диапазон
Практика
Бесплатный фрагмент закончился.
Купите книгу, чтобы продолжить чтение.