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

Синтаксис:

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

STRUCT

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

 .

 .

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

END_STRUCT

END_TYPE

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

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

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

TYPE Polygonline:

STRUCT

 Start
:ARRAY [1..2] OF INT;

 
Point1:ARRAY [1..2] OF INT;

 
Point2:ARRAY [1..2] OF INT;

 
Point3:ARRAY [1..2] OF INT;

 
Point4:ARRAY [1..2] OF INT;

 
End:ARRAY [1..2] OF INT;

END_STRUCT

END_TYPE

 

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

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

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

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

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

Week.Monday