ГОСТ Р МЭК 61131-3—2016
Секунды
Миллисекунды
Микросекунды
Наносекунды
Daytime
Day_Hour
Day_Mmute
Day_Second
Год
Месяц
День
Date_And_Time
Часы: ( Fix_Point’h’)| ( Unsignedjnt h
’ ? )? Минуты?;
Минуты: ( Fix_Point’m’)|( Unsignedjnt m’
? )? Секунды ?;
: ( Fix_Point s’) |<Unsignedjnt ’s’ *_*? )?Миллисекунды?;
: ( Fix_Point’ms’) | ( Unsigned_lnt ’ms’’_’ ? )? Микросекунды?;
: ( Fix_Point’us’)| ( Unsigned_lnt us’*_’? )? Наносекунды?;
: Fix_Point ’ns’;
Time_Of_Day: ( Tod_Type_Name |’LTIME_OF_DAY’)Daytime:
: Day_HourDay_MinuteDay_Second;
: Unsigned_lnt;
: Unsignedjnt;
: Fix_Point;
Дата: ( Date_Type_Name |’O’ | LD’)’#’ Date_Literal;
DateJJteral; ГодМесяц День:
: Unsignedjnt;
: Unsignedjnt;
: Unsignedjnt;
: ( DT_Type_Name | LDATE_AND_TIME’) ’ft’ DateJJteralDaytime;
//Таблица 10 — Элементарные типы данных
Data_Type_Access
Elem_Type_Name
Numeric_TypeJ\lame
lnt_Type_Name
Sign_lnt_Type_Name
Uns»gn_lnt_Type_Name
Real_TypeJMame
String_Type_Name
Time_Type_Name
Date_Type_Name
Tod_Type_Name
DT_Type_Name
Brt_Str_Type_Name
Bool_Type_Name
Multibits_Type_Name
: Elem_Type_Name |Derived_Type_Access;
; Numeric_Type_Name | Bit_Str_Type_Name
|String_Type_Name | Date_Type_Name|Time_Type_Name;
lnt_Type_Name |Real_Type_Name;
SignJnt_Type_Name | Uns*gn_lnt_Type_Name:
SINT | INT | ’DINT | ’LINT;
USINT’ | UINT’ | UDINT’ |’ULINT’;
REAL’ | LREAL’;
STRING’ (T Unsigned_lnt’]’)? | WSTRING’ (’[’ Unsignedjnt’]’)? |’CHAR’ | WCHAR’;
TIME’ |’LTIME’;
DATE-1LDATE’;
TIME_OF_DAY’ | ’TOD’ | LTOO’;
DATE_AND_TIME’ | DT | LDT;
Bool_Type_Name |Mullibits_Type_Name:
’BOOL’:
’BYTE’ | WORD’ | DWORD’ | ’LWORD’:
//Таблица 11— Объявление определяемых пользователем типов данных и инициализации
Derived_Type_Access: Singte_Elem_Type_Access |A^ay_Type_Access | Stnjct_Type_Access
| String_Type_Access | Class_Type_Access |Ref_Type_Access
| lnterface_Type_Access;
String_Type_Access; ( Namespace_Name )* String_Type_Name;
Single_Elem_Type_Access: Simple_Type_Access |Subrange_Type_Access
| Enum_Type_Access;
Simple_Type_Access: { NamespaceJ4ame)* Simple_Type_Name;
: ( Namespace Name )* Subrange_Type_Name;
: { Namespace Name ’.’)* Enum_Type_Name;
Subrange_Type_Aocess
Enum_Type_Access
216