Iec 61131-3 Second edition 2003-01 Programmable controllers – Part 3: Programming languages


Download 1.35 Mb.
Pdf ko'rish
bet125/158
Sana17.06.2023
Hajmi1.35 Mb.
#1528208
1   ...   121   122   123   124   125   126   127   128   ...   158
Bog'liq
ourdev 569653

B.1.5 Program organization units
B.1.5.1 Functions
PRODUCTION RULES:
function_name ::= standard_function_name | derived_function_name
standard_function_name ::=
derived_function_name ::= identifier
function_declaration ::=
'FUNCTION' derived_function_name ':'
(elementary_type_name | derived_type_name)
{ io_var_declarations | function_var_decls }
function_body
'END_FUNCTION'
io_var_declarations ::= input_declarations | output_declarations |
input_output_declarations
function_var_decls ::= 'VAR' ['CONSTANT']
var2_init_decl ';' {var2_init_decl ';'} 'END_VAR'
function_body ::= ladder_diagram | function_block_diagram
| instruction_list | statement_list |
var2_init_decl ::= var1_init_decl | array_var_init_decl
| structured_var_init_decl | string_var_declaration
SEMANTICS: see 2.5.1.
NOTE 1 This syntax does not reflect the fact that each function must have at least one input
declaration.
NOTE 2 This syntax does not reflect the fact that edge declarations, function block references and
invocations are not allowed in function bodies.
NOTE 3 Ladder diagrams and function block diagrams are graphically represented as defined in
Clause 4. The non-terminals instruction_list and statement_list are defined in
B.2.1 and B.3.2, respectively.
Copyright International Electrotechnical Commission 
Provided by IHS under license with IEC
Not for Resale
No reproduction or networking permitted without license from IHS
--``````-`-`,,`,,`,`,,`---


61131-3 
 IEC:2003(E)
– 155 –
B.1.5.2 Function blocks
PRODUCTION RULES:
function_block_type_name ::= standard_function_block_name
| derived_function_block_name
standard_function_block_name ::=
derived_function_block_name ::= identifier
function_block_declaration ::=
'FUNCTION_BLOCK' derived_function_block_name
{ io_var_declarations | other_var_declarations }
function_block_body
'END_FUNCTION_BLOCK'
other_var_declarations ::= external_var_declarations | var_declarations
| retentive_var_declarations | non_retentive_var_declarations
| temp_var_decls | incompl_located_var_declarations
temp_var_decls ::=
'VAR_TEMP'
temp_var_decl ';'
{temp_var_decl ';'}
'END_VAR'
non_retentive_var_decls ::=
'VAR' 'NON_RETAIN'
var_init_decl ';'
{var_init_decl ';'}
'END_VAR'
function_block_body ::= sequential_function_chart | ladder_diagram
| function_block_diagram | instruction_list | statement_list
|
SEMANTICS: see 2.5.2.
NOTE 1 Ladder diagrams and function block diagrams are graphically represented as defined in
clause 4.
NOTE 2 The non-terminals sequential_function_chart, instruction_list, and
statement_list are defined in B.1.6, B.2.1, and B.3.2, respectively.
Copyright International Electrotechnical Commission 
Provided by IHS under license with IEC
Not for Resale
No reproduction or networking permitted without license from IHS
--``````-`-`,,`,,`,`,,`---


– 156 –
61131-3 
 IEC:2003(E)

Download 1.35 Mb.

Do'stlaringiz bilan baham:
1   ...   121   122   123   124   125   126   127   128   ...   158




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling