Все верно. Потому что структуры нужно объявлять в особом месте, читаем справку Codesys :
PHP код:
Структуры 
Структуры создаются на вкладке  Типы данных Организатора Объектов
Объявление должно начинаться с ключевых слов TYPE и STRUCT и заканчиваться строками END_STRUCT и END_TYPE.

Синтаксис:

TYPE <Имя _структуры>:

STRUCT

 
<Объявление переменной 1>

 .

 .

 <
Объявление переменной n>

END_STRUCT

END_TYPE

<Имя _структурыобразует новый тип данныхкоторый может быть использован в любой части проекта наряду с базовыми типами.

Вложенные структуры допускаютсяЕдинственное ограничение заключается в запрете размещения элементов структуры по прямым адресам (AT объявления недопустимы!).

Пример объявления структуры по имени Polygonline:

TYPE Polygonline:

STRUCT

 Start
:ARRAY [1..2OF INT;

 
Point1:ARRAY [1..2OF INT;

 
Point2:ARRAY [1..2OF INT;

 
Point3:ARRAY [1..2OF INT;

 
Point4:ARRAY [1..2OF INT;

 
End:ARRAY [1..2OF INT;

END_STRUCT

END_TYPE

 

Пример инициализации структуры
:

Poly_1:polygonline := ( Start:=3,3Point1 =5,2Point2:=7,3Point3:=8,5Point4:=5,7End := 3,5);

Для доступа к элементам структуры используется следующий синтаксис:

<
Имя_структуры>.<Имя_компонента>

Напримерструктура "Week" содержит компонент "Monday"обращение к которому будет выглядеть так:

Week.Monday