Function blocks (FB) for process control - Part 2: Specification of FB concept and Electronic Device Description Language (EDDL)

applies to Function Blocks (FB) for process control and specifies the Electronic Device Description Language (EDDL). This Pre-standard IEC 61804-2 specifies FB by using the result of a harmonization work as regards several elements.

General Information

Status
Replaced
Publication Date
16-Oct-2002
Technical Committee
SC 65C - Industrial networks
Current Stage
DELPUB - Deleted Publication
Start Date
14-May-2004
Completion Date
13-Feb-2026

Relations

Effective Date
05-Sep-2023
Technical specification

IEC PAS 61804-2:2002 - Function blocks (FB) for process control - Part 2: Specification of FB concept and Electronic Device Description Language (EDDL) Released:10/17/2002 Isbn:2831865999

English language
349 pages
sale 15% off
Preview
sale 15% off
Preview

Get Certified

Connect with accredited certification bodies for this standard

BSI Group

BSI (British Standards Institution) is the business standards company that helps organizations make excellence a habit.

UKAS United Kingdom Verified

National Aerospace and Defense Contractors Accreditation Program (NADCAP)

Global cooperative program for special process quality in aerospace.

ANAB United States Verified

CARES (UK Certification Authority for Reinforcing Steels)

UK certification for reinforcing steels and construction.

UKAS United Kingdom Verified

Sponsored listings

Frequently Asked Questions

IEC PAS 61804-2:2002 is a technical specification published by the International Electrotechnical Commission (IEC). Its full title is "Function blocks (FB) for process control - Part 2: Specification of FB concept and Electronic Device Description Language (EDDL)". This standard covers: applies to Function Blocks (FB) for process control and specifies the Electronic Device Description Language (EDDL). This Pre-standard IEC 61804-2 specifies FB by using the result of a harmonization work as regards several elements.

applies to Function Blocks (FB) for process control and specifies the Electronic Device Description Language (EDDL). This Pre-standard IEC 61804-2 specifies FB by using the result of a harmonization work as regards several elements.

IEC PAS 61804-2:2002 is classified under the following ICS (International Classification for Standards) categories: 25.040.40 - Industrial process measurement and control; 35.240.50 - IT applications in industry. The ICS classification helps identify the subject area and facilitates finding related standards.

IEC PAS 61804-2:2002 has the following relationships with other standards: It is inter standard links to IEC 61804-2:2004. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.

IEC PAS 61804-2:2002 is available in PDF format for immediate download after purchase. The document can be added to your cart and obtained through the secure checkout process. Digital delivery ensures instant access to the complete standard document.

Standards Content (Sample)


IEC/PAS 61804-2
Edition 1.0
2002-10
PRE-STANDARD
Function blocks (FB)
for process control –
Part 2:
Specification of FB concept and
Electronic Device Description Language
(EDDL)
PUBLICLY AVAILABLE SPECIFICATION

IN TE RNA TI ONA L
Reference number
ELECTROTEC HNICAL
COM M IS SION IEC/PAS 61804-2

IEC/PAS 61804-2
Edition 1.0
2002-10
PRE-STANDARD
Function blocks (FB)
for process control –
Part 2:
Specification of FB concept and
Electronic Device Description Language
(EDDL)
PUBLICLY AVAILABLE SPECIFICATION

IN TE RNA TI ONA L
Reference number
ELECTROTEC HNICAL
COM M IS SION IEC/PAS 61804-2

– 2 – Copyright  IEC, 2002
CONTENTS
FOREWORD.21

INTRODUCTION.22

1 Scope .24

2 Normative references .26

3 Terms and definitions .27

3.1 Definitions .27

3.2 Abbreviated terms and acronyms .33

3.3 Conventions for lexical structures .33
4 General Function Block (FB) definition and EDD model .35
4.1 Device structure (device model) .35
4.1.1 Device model description .35
4.1.2 FB type.39
4.1.3 FB execution.40
4.1.4 Reference between IEC 61499 and IEC 61804 models.41
4.1.5 UML specification of the device model.41
4.1.6 Classification of the algorithms.43
4.1.7 Algorithm description .43
4.1.8 Input and Output variables and Parameter definition .44
4.1.9 Choice of variables and parameters.45
4.1.10 Mode, Status and Diagnosis.45
4.2 Block combinations.45
4.2.1 Measurement channel .45
4.2.2 Actuation channel .46
4.2.3 Application.47
4.3 EDD and EDDL model .48
4.3.1 Overview of EDD and EDDL .48
4.3.2 EDD architecture .48
4.3.3 Concepts of EDD .48
4.3.4 Principles of the EDD development process.49
4.3.5 Interrelations between the lexical structure and formal definitions .50
4.3.6 Builtins .50
4.3.7 Profiles .50

5 Detailed block definition.51
5.1 Application FBs .51
5.1.1 Measurement (Input) FB.51
5.1.2 Analog Actuation (Output) FB.52
5.1.3 Discrete Input FB .54
5.1.4 On/Off Actuation (Output) FB .56
5.1.5 Calculation FB .57
5.1.6 Control FB .58
5.2 Component FBs.60
5.3 Technology Block .60
5.3.1 Temperature Technology Block .60
5.3.2 Pressure Technology Block .63
5.3.3 Modulating Actuation Technology Block.65
5.3.4 On/Off Actuation Technology Block .68

Copyright  IEC, 2002 – 3 –
5.4 Device (Resource) Block.70

5.4.1 Identification .70

5.4.2 Device state.71

5.4.3 Message.72

5.4.4 Initialisation .73

5.5 Algorithms common to all blocks .73

5.5.1 Data Input/Data Output status .73

5.5.2 Restart Initialisation .73

5.5.3 Fail-safe .73

5.5.4 Remote Cascade Initialisation .74

6 FB Environment.74
7 Mapping to System Management .74
8 Mapping to Communication.75
9 Electronic Device Description Language .77
9.1 Overview .77
9.1.1 EDDL features .77
9.1.2 Syntax representation .77
9.1.3 EDD language elements.77
9.1.4 Basic construction elements .77
9.1.5 Common attributes.82
9.1.6 Special elements .83
9.1.7 Rules for instances .83
9.1.8 Rules for list of VARIABLEs .83
9.2 EDD identification information.83
9.2.1 General structure .83
9.2.2 Specific attributes .84
9.3 BLOCK.86
9.3.1 BLOCK_A .86
9.3.2 BLOCK_B .90
9.4 COLLECTION.92
9.4.1 General structure .92
9.4.2 Specific attributes - item-type .92
9.5 COMMAND.93
9.5.1 General structure .93
9.5.2 Specific attributes .94
9.6 CONNECTION.98
9.6.1 General structure .98
9.6.2 Specific attribute - APPINSTANCE .98
9.7 DOMAIN.99
9.7.1 General structure .99
9.7.2 Specific attribute - HANDLING.99
9.8 EDIT_DISPLAY .100
9.8.1 General structure .100
9.8.2 Specific attributes .100
9.9 IMPORT .101
9.9.1 General structure .101
9.9.2 Specific attributes – attribute-redefinition.103
9.10 LIKE.109

– 4 – Copyright  IEC, 2002
9.11 MENU .110

9.11.1 General structure .110

9.11.2 Specific attributes .111

9.11.3 Sequence diagrams for actions .115

9.12 METHOD.119

9.12.1 General structure .119

9.12.2 Specific attributes .119

9.13 PROGRAM .120

9.13.1 General structure .120

9.13.2 Specific attributes - ARGUMENT .120

9.14 RECORD.121
9.15 REFERENCE_ARRAY .121
9.15.1 General structure .121
9.15.2 Specific attributes - ELEMENTS .122
9.16 Relations.122
9.16.1 General structure .122
9.16.2 REFRESH.122
9.16.3 UNIT.123
9.16.4 WRITE_AS_ONE .123
9.17 RESPONSE_CODES .123
9.18 VALUE_ARRAY.124
9.18.1 General structure .124
9.18.2 Specific attributes .124
9.19 VARIABLE.125
9.19.1 General structure .125
9.19.2 Specific attributes .126
9.20 VARIABLE_LIST.139
9.21 Common attributes .139
9.21.1 DEFINITION .139
9.21.2 HELP.140
9.21.3 LABEL .140
9.21.4 MEMBERS.140
9.21.5 RESPONSE_CODES .141
9.22 Output redirection (OPEN and CLOSE) .141
9.23 Conditional expression .142

9.24 Referencing.143
9.24.1 Referencing an EDD instance.143
9.24.2 Referencing members of a RECORD .143
9.24.3 Referencing elements of a VALUE_ARRAY .144
9.24.4 Referencing members of a COLLECTION .144
9.24.5 Referencing elements of a REFERENCE_ARRAY.144
9.24.6 Referencing members of a VARIABLE_LISTS.145
9.24.7 Referencing elements of BLOCK_A PARAMETERS .145
9.24.8 Referencing elements of BLOCK_A PARAMETER_LISTS .146
9.24.9 Referencing BLOCK_A CHARACTERISTICS .146
9.25 Strings .147
9.25.1 Specifying a string as a string literal .147
9.25.2 Specifying a string as a string variable .147
9.25.3 Specifying a string as an enumeration value .147

Copyright  IEC, 2002 – 5 –
9.25.4 Specifying a string as a dictionary reference.147

9.25.5 Referencing HELP and LABEL attributes of EDD instances.148

9.25.6 String operations.148

9.26 Expression .148

9.26.1 General structure .148

9.26.2 Primary expressions.149

9.26.3 Unary expressions .149

9.26.4 Binary expressions.150

9.27 Text dictionary.153

10 Conformance Statement .153

Annex A (informative) Parameter description .154
Annex B (normative) IEC 61804 Conformance Declaration.160
Annex C (normative) EDDL Formal Definition .161
C.1 EDDL Preprocessor .161
C.1.1 General structure.161
C.1.2 Directives .161
C.1.3 Predefined macros.164
C.1.4 Newline characters .164
C.1.5 Comments.164
C.2 Conventions .164
C.2.1 Integer constants.164
C.2.2 Floating point constants.165
C.2.3 String literals .165
C.2.4 Using language codes in string constants.166
C.3 Operators.166
C.4 Keywords .168
C.5 Terminals .169
C.6 Formal EDDL syntax.171
C.6.1 General .171
C.6.2 EDD identification information .171
C.6.3 BLOCK_A and BLOCK_B .172
C.6.4 COLLECTION .175
C.6.5 COMMAND .176
C.6.6 CONNECTION .180

C.6.7 DOMAIN .180
C.6.8 EDIT_DISPLAY.181
C.6.9 IMPORT .182
C.6.10 LIKE .183
C.6.11 MENU.185
C.6.12 METHOD .188
C.6.13 PROGRAM .189
C.6.14 RECORDS.190
C.6.15 REFERENCE_ARRAY.190
C.6.16 Relations .192
C.6.17 RESPONSE_CODES .193
C.6.18 VALUE_ARRAY .193
C.6.19 VARIABLE .194
C.6.20 VARIABLE_LIST .202

– 6 – Copyright  IEC, 2002
C.6.21 Common attributes.203

C.6.22 OPEN, CLOSE.205

C.6.23 Expression.205

C.6.24 C-Grammer.206

C.6.25 Redefinition .211

C.6.26 References .222

Annex D (normative) EDDL Builtin Library .224

D.1 General .224

D.2 Conventions for Builtin descriptions .224

D.3 Builtin abort.224
D.4 Builtin abort_on_all_comm_errors .225
D.5 Builtin ABORT_ON_ALL_COMM_STATUS .225
D.6 Builtin ABORT_ON_ALL_DEVICE_STATUS .226
D.7 Builtin ABORT_ON_ALL_RESPONSE_CODES .226
D.8 Builtin abort_on_all_response_codes .227
D.9 Builtin abort_on_comm_error .227
D.10 Builtin ABORT_ON_COMM_ERROR .228
D.11 Builtin ABORT_ON_COMM_STATUS .228
D.12 Builtin ABORT_ON_DEVICE_STATUS .229
D.13 Builtin ABORT_ON_NO_DEVICE .229
D.14 Builtin ABORT_ON_RESPONSE_CODE.230
D.15 Builtin abort_on_response_code .231
D.16 Builtin ACKNOWLEDGE .231
D.17 Builtin acknowledge .231
D.18 Builtin add_abort_method (version A).232
D.19 Builtin add_abort_method (version B).232
D.20 Builtin assign.233
D.21 Builtin assign_double.233
D.22 Builtin assign_float .234
D.23 Builtin assign_int .234
D.24 Builtin assign_var .234
D.25 Builtin atof.235

D.26 Builtin atoi .235
D.27 Builtin dassign .235
D.28 Builtin DELAY.236
D.29 Builtin delay .236
D.30 Builtin DELAY_TIME.237
D.31 Builtin delayfor .237
D.32 Builtin DICT_ID.237
D.33 Builtin discard_on_exit.238
D.34 Builtin display .238
D.35 Builtin display_builtin_error.239
D.36 Builtin display_comm_error.239
D.37 Builtin display_comm_status .240

Copyright  IEC, 2002 – 7 –
D.38 Builtin display_device_status .240

D.39 Builtin display_dynamics.240

D.40 Builtin display_message .241

D.41 Builtin display_response_code .242

D.42 Builtin display_response_status .242

D.43 Builtin display_xmtr_status .243

D.44 Builtin edit_device_value .243

D.45 Builtin edit_local_value .244

D.46 Builtin ext_send_command .245
D.47 Builtin ext_send_command_trans.245
D.48 Builtin fail_on_all_comm_errors .246
D.49 Builtin fail_on_all_response_codes .246
D.50 Builtin fail_on_comm_error .247
D.51 Builtin fail_on_response_code .247
D.52 Builtin fassign.248
D.53 Builtin fgetval .248
D.54 Builtin float_value .248
D.55 Builtin fsetval.249
D.56 Builtin ftoa.249
D.57 Builtin fvar_value.249
D.58 Builtin get_acknowlegement.250
D.59 Builtin get_comm_error.250
D.60 Builtin get_comm_error_string .251
D.61 Builtin get_date .251
D.62 Builtin get_date_value .252
D.63 Builtin get_dds_error .252
D.64 Builtin GET_DEV_VAR_VALUE.253
D.65 Builtin get_dev_var_value .253
D.66 Builtin get_dictionary_string .254
D.67 Builtin get_double.254
D.68 Builtin get_double_value.255

D.69 Builtin get_float .255
D.70 Builtin get_float_value .256
D.71 Builtin GET_LOCAL_VAR_VALUE .256
D.72 Builtin get_local_var_value .257
D.73 Builtin get_more_status .257
D.74 Builtin get_resolve_status .258
D.75 Builtin get_response_code.258
D.76 Builtin get_response_code_string.259
D.77 Builtin get_signed .259
D.78 Builtin get_signed_value .260
D.79 Builtin get_status_code_string .260
D.80 Builtin get_status_string.261

– 8 – Copyright  IEC, 2002
D.81 Builtin get_stddict_string.261

D.82 Builtin get_string.262

D.83 Builtin get_string_value.262

D.84 Builtin GET_TICK_COUNT.263

D.85 Builtin get_unsigned .263

D.86 Builtin get_unsigned_value .264

D.87 Builtin iassign .264

D.88 Builtin igetval.265

D.89 Builtin IGNORE_ALL_COMM_STATUS .265
D.90 Builtin IGNORE_ALL_DEVICE_STATUS .265
D.91 Builtin IGNORE_ALL_RESPONSE_CODES.266
D.92 Builtin IGNORE_COMM_ERROR .266
D.93 Builtin IGNORE_COMM_STATUS .267
D.94 Builtin IGNORE_DEVICE_STATUS .267
D.95 Builtin IGNORE_NO_DEVICE .268
D.96 Builtin IGNORE_RESPONSE_CODE.268
D.97 Builtin int_value.269
D.98 Builtin is_NaN.269
D.99 Builtin isetval.269
D.100 Builtin ITEM_ID .270
D.101 Builtin itoa .270
D.102 Builtin ivar_value .270
D.103 Builtin lassign .271
D.104 Builtin lgetval.271
D.105 Builtin LOG_MESSAGE .271
D.106 Builtin long_value .272
D.107 Builtin lsetval.272
D.108 Builtin lvar_value .272
D.109 Builtin MEMBER_ID.273
D.110 Builtin method_abort.273
D.111 Builtin process_abort .274

D.112 Builtin put_date .274
D.113 Builtin put_date_value .274
D.114 Builtin put_double.275
D.115 Builtin put_double_value.275
D.116 Builtin put_float .276
D.117 Builtin put_float_value .276
D.118 Builtin PUT_MESSAGE.277
D.119 Builtin put_message .277
D.120 Builtin put_signed .278
D.121 Builtin put_signed_value .278
D.122 Builtin put_string.279
D.123 Builtin put_string_value.279

Copyright  IEC, 2002 – 9 –
D.124 Builtin put_unsigned .280

D.125 Builtin put_unsigned_value .281

D.126 Builtin READ_COMMAND .281

D.127 Builtin read_value.282

D.128 Builtin remove_abort_method (version A) .282

D.129 Builtin remove_abort_method (version B) .283

D.130 Builtin remove_all_abort_methods .283

D.131 Builtin resolve_array_ref .283

D.132 Builtin resolve_block_ref.284
D.133 Builtin resolve_param_list_ref .284
D.134 Builtin resolve_param_ref .285
D.135 Builtin resolve_record_ref .285
D.136 Builtin retry_on_all_comm_errors.286
D.137 Builtin RETRY_ON_ALL_COMM_STATUS .286
D.138 Builtin RETRY_ON_ALL_DEVICE_STATUS .287
D.139 Builtin RETRY_ON_ALL_RESPONSE_CODES.287
D.140 Builtin retry_on_all_response_codes .288
D.141 Builtin RETRY_ON_COMM_ERROR .288
D.142 Builtin retry_on_comm_error .289
D.143 Builtin RETRY_ON_COMM_STATUS .289
D.144 Builtin RETRY_ON_DEVICE_STATUS .290
D.145 Builtin RETRY_ON_NO_DEVICE .290
D.146 Builtin RETRY_ON_RESPONSE_CODE.291
D.147 Builtin retry_on_response_code .291
D.148 Builtin rspcode_string .292
D.149 Builtin save_on_exit.292
D.150 Builtin save_values.293
D.151 Builtin SELECT_FROM_LIST .293
D.152 Builtin select_from_list.293
D.153 Builtin select_from_menu.294
D.154 Builtin send .295

D.155 Builtin send_all_values .295
D.156 Builtin send_command.296
D.157 Builtin send_command_trans .296
D.158 Builtin send_on_exit .297
D.159 Builtin send_trans.297
D.160 Builtin send_value .298
D.161 Builtin SET_NUMBER_OF_RETRIES .298
D.162 Builtin VARID .299
D.163 Builtin vassign .299
D.164 Builtin WRITE_COMMAND.299
D.165 Builtin XMTR_ABORT_ON_ALL_COMM_STATUS.300
D.166 Builtin XMTR_ABORT_ON_ALL_DEVICE_STATUS.300

– 10 – Copyright  IEC, 2002
D.167 Builtin XMTR_ABORT_ON_ALL_RESPONSE_CODES .301

D.168 Builtin XMTR_ABORT_ON_COMM_ERROR.301

D.169 Builtin XMTR_ABORT_ON_COMM_STATUS.302

D.170 Builtin XMTR_ABORT_ON_DATA .302

D.171 Builtin XMTR_ABORT_ON_DEVICE_STATUS.
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...