Описание
Структура (STRUCT) в языке Structured Text (ST) — это пользовательский тип данных,
который объединяет несколько переменных (полей) в одну логическую сущность.
STRUCT позволяет группировать связанные данные, что упрощает работу с ними.
Основные свойства структур:
STRUCT позволяет группировать связанные данные, что упрощает работу с ними.
Основные свойства структур:
- Содержит набор полей с разными типами данных
- Используется как отдельный тип данных (DUT)
- Доступ к полям осуществляется через оператор «.»
Примечание:
Поля структуры могут быть как простыми типами (INT, BOOL), так и сложными (ARRAY, ENUM, другие STRUCT, FUNCTION_BLOCK).
Поля структуры могут быть как простыми типами (INT, BOOL), так и сложными (ARRAY, ENUM, другие STRUCT, FUNCTION_BLOCK).
Важно!
Порядок полей в структуре влияет на размещение данных в памяти.
Порядок полей в структуре влияет на размещение данных в памяти.
Пример реализации
Пример объявления структуры:
Пример использования:
TYPE FAN : STRUCT
IsOn : BOOL := FALSE; // Включен ли вентилятор
Speed : UINT := 0; // Скорость (например, 0–100)
Temperature : REAL := 25.0; // Температура, при которой работает
END_STRUCT
END_TYPE
IsOn : BOOL := FALSE; // Включен ли вентилятор
Speed : UINT := 0; // Скорость (например, 0–100)
Temperature : REAL := 25.0; // Температура, при которой работает
END_STRUCT
END_TYPE
Пример использования:
VAR
myFan : FAN;
END_VAR
myFan.IsOn := TRUE;
myFan.Speed := 75;
myFan.Temperature := 36.5;
myFan : FAN;
END_VAR
myFan.IsOn := TRUE;
myFan.Speed := 75;
myFan.Temperature := 36.5;
Назначение
STRUCT рекомендуется использовать в следующих случаях:
- Группировка логически связанных данных
- Описание сложных объектов (например, параметры устройства)
- Упрощение передачи данных между функциями и блоками
Внимание!
Чрезмерно большие структуры могут усложнять поддержку и снижать читаемость кода.
Чрезмерно большие структуры могут усложнять поддержку и снижать читаемость кода.
Создание STRUCT в Полигон 2
Последовательность действий для создания структуры:
Видео-инструкция
- В библиотеке проекта или отдельной библиотеки в группе типов вызовите контекстное меню и выберите «Создать».
- В открывшемся окне задайте имя структуры, выберите «тип данных (DUT)», затем в списке выберите «структура ST».
- Выберите созданный тип структуры в дереве проекта.
- Вызовите контекстное меню и выберите «Создать» для добавления поля структуры.
- В открывшемся окне задайте имя поля и его тип данных.
- Повторите добавление для всех необходимых полей структуры.
- Используйте редактор кода для проверки корректности сгенерированной структуры.
Видео-инструкция
Примечание:
Имена полей структуры должны быть уникальными в пределах одной структуры.
Имена полей структуры должны быть уникальными в пределах одной структуры.