Ansi c12.19 2008 for Utility Industry End Device Data Tables

ANSI C12.19-2008 Draft for Review 01-31-08 American National Standard For UTILITY INDUSTRY END DEVICE DATA TABLES Sec

Views 50 Downloads 0 File size 3MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

  • Author / Uploaded
  • ralof
Citation preview

ANSI C12.19-2008

Draft for Review 01-31-08

American National Standard For UTILITY INDUSTRY END DEVICE DATA TABLES

Secretariat:

National Electrical Manufacturers Association IEEE Number: 1377-2008 Measurement Canada Number: MC1219-2008 Approved Month ??, 200? WG2 Last updated: January 31, 2008

American National Standards Institute, Inc.

ANSI C12.19-2008 NOTICE AND DISCLAIMER The information in this publication was considered technically sound by the consensus of persons engaged in the development and approval of the document at the time it was developed. Consensus does not necessarily mean that there is unanimous agreement among every person participating in the development of this document. NEMA standards and guideline publications, of which the document contained herein is one, are developed through a voluntary consensus standards development process. This process brings together volunteers and/or seeks out the views of persons who have an interest in the topic covered by this publication. While NEMA administers the process and establishes rules to promote fairness in the development of consensus, it does not write the document and it does not independently test, evaluate, or verify the accuracy or completeness of any information or the soundness of any judgments contained in its standards and guideline publications. NEMA disclaims liability for any personal injury, property, or other damages of any nature whatsoever, whether special, indirect, consequential, or compensatory, directly or indirectly resulting from the publication, use of, application, or reliance on this document. NEMA disclaims and makes no guaranty or warranty, express or implied, as to the accuracy or completeness of any information published herein, and disclaims and makes no warranty that the information in this document will fulfill any of your particular purposes or needs. NEMA does not undertake to guarantee the performance of any individual manufacturer or seller’s products or services by virtue of this standard or guide. In publishing and making this document available, NEMA is not undertaking to render professional or other services for or on behalf of any person or entity, nor is NEMA undertaking to perform any duty owed by any person or entity to someone else. Anyone using this document should rely on his or her own independent judgment or, as appropriate, seek the advice of a competent professional in determining the exercise of reasonable care in any given circumstances. Information and other standards on the topic covered by this publication may be available from other sources, which the user may wish to consult for additional views or information not covered by this publication. NEMA has no power, nor does it undertake to police or enforce compliance with the contents of this document. NEMA does not certify, test, or inspect products, designs, or installations for safety or health purposes. Any certification or other statement of compliance with any health or safety–related information in this document shall not be attributable to NEMA and is solely the responsibility of the certifier or maker of the statement.

AMERICAN NATIONAL STANDARD

Approval of an American National Standard requires verification by ANSI that the requirements for due process, consensus, and other criteria for approval have been met by the standards developer. Consensus is established when, in the judgment of the ANSI Board of Standards Review, substantial agreement has been reached by directly and materially affected interests. Substantial agreement means much more than a simple majority, but not necessarily unanimity. Consensus requires that all views and objections be considered, and that a concerted effort be made toward their resolution. The use of American National Standards is completely voluntary; their existence does not in any respect preclude anyone, whether he has approved the standards or not, from manufacturing, marketing, purchasing, or using products, processes, or procedures not conforming to the standards. The American National Standards Institute does not develop standards

ii

ANSI C12.19-2008 and will in no circumstances give an interpretation of any American National Standard. Moreover, no person shall have the right or authority to issue an interpretation of an American National Standard in the name of the American National Standards Institute. Requests for interpretations should be addressed to the secretariat or sponsor whose name appears on the title page of this standard. Caution Notice: This American National Standard may be revised or withdrawn at any time. The procedures of the American National Standards Institute require that action be taken periodically to reaffirm, revise, or withdraw this standard. Purchasers of American National Standards may receive current information on all standards by calling or writing the American National Standards Institute. Published by

National Electrical Manufacturers Association 1300 North 17th Street, Rosslyn, VA 22209 

Copyright 2008 by National Electrical Manufacturers Association All rights reserved including translation into other languages, reserved under the Universal Copyright Convention, the Berne Convention for the Protection of Literary and Artistic Works, and the International and Pan American Copyright Conventions. No part of this publication may be reproduced in any form, in an electronic retrieval system or otherwise, without the prior written permission of the publisher.

Printed in the United States of America

iii

ANSI C12.19-2008

This page intentionally left blank.

iv

ANSI C12.19-2008

Contents Page

1 SCOPE..................................................................................................................................................... 1 2 REFERENCES......................................................................................................................................... 1 2.1 NORMATIVE.......................................................................................................................................... 1 2.2 OTHER................................................................................................................................................ 2 3 DEFINITIONS........................................................................................................................................... 3 3.1 ACT............................................................................................................................................... 3 3.2 ADDRESS............................................................................................................................................. 3 3.3 ADVANCED METERING INFRASTRUCTURE (AMI).....................................................................................3 3.4 ALIAS.................................................................................................................................................. 3 3.5 ARRAY.......................................................................................................................................... 3 3.6 BIT FIELD (BFLD)........................................................................................................................ 3 3.7 BLOCK................................................................................................................................................ 3 3.8 CHANNEL............................................................................................................................................. 3 3.9 CLOCK................................................................................................................................................ 3 3.10 COUNT............................................................................................................................................... 3 3.11 CUMULATIVE DEMAND........................................................................................................................ 3 3.12 CUSTOMER........................................................................................................................................ 4 3.13 DATA ENCRYPTION............................................................................................................................. 4 3.14 DECADE............................................................................................................................................. 4 3.15 DEFAULT SET..................................................................................................................................... 4 3.16 DEMAND............................................................................................................................................ 4 3.17 DEMAND, BLOCK................................................................................................................................ 4 3.18 DEMAND, MAXIMUM........................................................................................................................... 4 3.19 DEMAND, MINIMUM............................................................................................................................. 4 3.20 DEMAND, PRESENT............................................................................................................................ 4 3.21 DEMAND, SLIDING WINDOW (ROLLING-INTERVAL).................................................................................4 3.22 DEPRECATED..................................................................................................................................... 4 3.23 DIM............................................................................................................................................. 4 3.24 DOCUMENT T YPE DEFINITION (DTD)................................................................................................... 4 3.25 ELEMENT........................................................................................................................................... 4 3.26 ELEMENT, ATOMIC............................................................................................................................. 5 3.27 ELEMENT-COUNT................................................................................................................................ 5 3.28 ELEMENT, FINAL................................................................................................................................ 5 3.29 ELEMENT, VOLATILE........................................................................................................................... 5 3.30 END DEVICE....................................................................................................................................... 5 3.31 END-DEVICE AGENT............................................................................................................................ 5 3.32 EVENT............................................................................................................................................... 5 3.33 EVENT INSTANCE................................................................................................................................ 5 3.34 EVENT, CALL..................................................................................................................................... 5 3.35 EVENT, CHANGE................................................................................................................................ 5 3.36 EVENT, SIGNAL.................................................................................................................................. 5 3.37 EVENT, T IME...................................................................................................................................... 6 3.38 EVENT LOGGER DATA........................................................................................................................ 6 3.39 EVENT LOGGER RECORD.................................................................................................................... 6 3.40 EXCHANGE DATA LANGUAGE (EDL)................................................................................................... 6 3.41 EXTENSIBLE MARKUP LANGUAGE (XML)............................................................................................ 6 3.42 INDEX................................................................................................................................................ 6 3.43 INTERHARMONICS............................................................................................................................... 6 3.44 LOAD PROFILE................................................................................................................................... 6 3.45 METER.............................................................................................................................................. 6

v

ANSI C12.19-2008 3.46 METROLOGICAL ADJUSTMENT............................................................................................................. 6 3.47 MODE, FACTORY................................................................................................................................ 7 3.48 MODE, METERING.............................................................................................................................. 7 3.49 MODE, METER SHOP.......................................................................................................................... 7 3.50 MODE, T EST...................................................................................................................................... 7 3.51 OBJECT............................................................................................................................................. 7 3.52 OBJECT, T ABLE................................................................................................................................. 7 3.53 OBJECT, ELEMENT............................................................................................................................. 7 3.54 OCTET............................................................................................................................................... 7 3.55 OFFSET............................................................................................................................................. 7 3.56 OVERRIDE.......................................................................................................................................... 7 3.57 PACKED RECORD...................................................................................................................... 7 3.58 PROCEDURE....................................................................................................................................... 7 3.59 PROCEDURE, MANUFACTURER............................................................................................................ 7 3.60 PROCEDURE, METROLOGICAL............................................................................................................. 7 3.61 PROCEDURE, STANDARD..................................................................................................................... 8 3.62 QUADRANT........................................................................................................................................ 8 3.63 REDEFINE.......................................................................................................................................... 8 3.64 REGISTER.......................................................................................................................................... 8 3.65 REGISTER, SECURED.......................................................................................................................... 9 3.66 REPLACE........................................................................................................................................... 9 3.67 RESERVED......................................................................................................................................... 9 3.68 SEAL................................................................................................................................................. 9 3.69 SEAL, PHYSICAL................................................................................................................................ 9 3.70 SEAL, LOGICAL (EVENT LOGGABLE)................................................................................................... 9 3.71 SEALABLE PARAMETER...................................................................................................................... 9 3.72 SEASON............................................................................................................................................. 9 3.73 SECURED READ................................................................................................................................. 9 3.74 SELF READ...................................................................................................................................... 10 3.75 SET........................................................................................................................................... 10 3.76 SIGNATURE...................................................................................................................................... 10 3.77 STRICT............................................................................................................................................ 10 3.78 STRING..................................................................................................................................... 10 3.79 SUB-ELEMENT.................................................................................................................................. 10 3.80 T ABLE............................................................................................................................................. 10 3.81 T ABLE DEFINITION LANGUAGE (TDL)................................................................................................ 10 3.82 T ABLE, EXTENDED USER-DEFINED (EUDT).......................................................................................10 3.83 T ABLE, USER-DEFINED (UDT).......................................................................................................... 10 3.84 T ABLE, FUNCTION LIMITING CONTROL (FLC)....................................................................................10 3.85 T ABLE, MANUFACTURER................................................................................................................... 10 3.86 T ABLE, METROLOGICAL.................................................................................................................... 11 3.87 T ABLE, PENDING.............................................................................................................................. 11 3.88 T ABLE, PROGRAM............................................................................................................................ 11 3.89 T ABLE, STANDARD........................................................................................................................... 11 3.90 T ABLE, SECURED............................................................................................................................. 11 3.91 T ARIFF............................................................................................................................................. 11 3.92 T IER................................................................................................................................................ 11 3.93 T IME-OF-USE (TOU) METERING....................................................................................................... 11 3.94 UNDEFINED...................................................................................................................................... 11 3.95 UTILITY............................................................................................................................................ 11 4 GENERAL.............................................................................................................................................. 12 4.1 STANDARD T ABLES............................................................................................................................ 12 4.1.1 Standard Tables Grouping................................................................................................ 12 4.1.2 Standard Tables Properties............................................................................................... 12 4.1.3 Standard Procedure Properties........................................................................................ 13 4.2 MANUFACTURER T ABLES.................................................................................................................... 14

vi

ANSI C12.19-2008 4.2.1 Manufacturer Tables Grouping......................................................................................... 14 4.2.2 Manufacturer Tables Properties.......................................................................................14 4.2.3 Manufacturer Procedure Properties.................................................................................14 4.3 PACKED RECORD, BIT FIELD AND ELEMENT PROPERTIES....................................................................15 4.4 EXTENDED USER-DEFINED T ABLES PROPERTIES..................................................................................15 5 SYNTAX................................................................................................................................................. 16 5.1 DESCRIPTIVE SYNTAX......................................................................................................................... 16 6 SPECIAL DATA TYPES......................................................................................................................... 16 6.1 CHARACTER SET SELECTION.............................................................................................................. 16 6.2 NON-INTEGER FORMATS..................................................................................................................... 17 6.2.1 STRING Numbers............................................................................................................... 17 6.3 DATE AND T IME FORMATS.................................................................................................................. 18 6.3.1 HTIME_DATE, LTIME_DATE, STIME_DATE, TIME, STIME, HTIME types......................19 6.3.2 RDATE type......................................................................................................................... 23 6.3.3 DATE Type.......................................................................................................................... 25 6.4 COMMON TABLE OR PROCEDURE IDENTIFIER FORMATS.........................................................................25 6.4.1 TABLE_IDA_BFLD bit field................................................................................................ 25 6.4.2 TABLE_IDB_BFLD bit field................................................................................................ 26 6.4.3 TABLE_IDC_BFLD bit field................................................................................................ 27 6.4.4 SOURCE_SEL_RCD bit field............................................................................................. 28 7 COMPLIANCE & COMPATIBILITY....................................................................................................... 30 7.1 COMPLIANCE...................................................................................................................................... 30 7.2 BACKWARD AND FORWARD COMPATIBILITY.......................................................................................... 30 8 TABLE TRANSPORTATION ISSUES.................................................................................................... 32 8.1 MINIMUM SERVICES AND PARAMETERS............................................................................................... 32 8.1.1 Read Service....................................................................................................................... 32 8.1.2 Write Service....................................................................................................................... 33 8.1.3 Partial Table Access Using the Index/element-count Method.......................................35 8.1.4 Partial Table Access Using the Offset/octet-count Method...........................................37 8.1.5 Index Count Access Method Examples...........................................................................38 8.2 PENDING EVENT DESCRIPTION............................................................................................................ 38 8.3 LIST MANAGEMENT DESCRIPTION....................................................................................................... 41 9 TABLES................................................................................................................................................. 43 9.1 DECADE 0: GENERAL CONFIGURATION T ABLES...................................................................................43 9.1.1 Table 00 General Configuration Table..............................................................................43 9.1.2 Table 01 General Manufacturer Identification Table.......................................................50 9.1.3 Table 02 Device Nameplate Table.....................................................................................52 9.1.4 Table 03 End Device Mode Status Table..........................................................................60 9.1.5 Table 04 Pending Status Table......................................................................................... 63 9.1.6 Table 05 Device Identification Table.................................................................................66 9.1.7 Table 06 Utility Information Table.....................................................................................67 9.1.8 Table 07 Procedure Initiate Table.....................................................................................70 9.1.9 Table 08 Procedure Response Table................................................................................74 9.1.10 Standard Procedures......................................................................................................... 77 9.1.10.1 9.1.10.2 9.1.10.3 9.1.10.4 9.1.10.5 9.1.10.6 9.1.10.7 9.1.10.8

Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure

00 01 02 03 04 05 06 07

Cold Start.............................................................................................................78 Warm Start...........................................................................................................78 Save Configuration.............................................................................................78 Clear Data............................................................................................................78 Reset List Pointers.............................................................................................78 Update Last Read Entry.....................................................................................79 Change End Device Mode..................................................................................80 Clear Standard Status Flags..............................................................................81

vii

ANSI C12.19-2008 9.1.10.9 9.1.10.10 9.1.10.11 9.1.10.12 9.1.10.13 9.1.10.14 9.1.10.15 9.1.10.16 9.1.10.17 9.1.10.18 9.1.10.19 9.1.10.20 9.1.10.21 9.1.10.22 9.1.10.23 9.1.10.24 9.1.10.25 9.1.10.26 9.1.10.27 9.1.10.28 9.1.10.29 9.1.10.30 9.1.10.31 9.1.10.32 9.1.10.33

Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure Procedure

08 Clear Manufacturer Status Flags......................................................................81 09 Remote Reset......................................................................................................82 10 Set Date and/or Time..........................................................................................83 11 Execute Diagnostics Procedure........................................................................85 12 Activate All Pending Tables...............................................................................85 13 Activate Specific Pending Table(S)...................................................................85 14 Clear All Pending Tables....................................................................................86 15 Clear Specific Pending Table(S)........................................................................86 16 Start Load Profile................................................................................................86 17 Stop Load Profile................................................................................................86 18 Log In................................................................................................................... 87 19 Log Out................................................................................................................ 87 20 Initiate an Immediate Call..................................................................................87 21 Direct Load Control............................................................................................88 22 Modify Credit.......................................................................................................89 23 Reserved..............................................................................................................90 24 Reserved..............................................................................................................90 25 Reserved..............................................................................................................90 26 Reserved..............................................................................................................90 27 Clear Pending Call Status..................................................................................90 28 Start Quality of Service Monitors.....................................................................90 29 Stop Quality of Service Monitors......................................................................90 30 Start Secured Registers.....................................................................................90 31 Stop Secured Registers.....................................................................................92 32 Set Precision Date and/or Time.........................................................................94

9.2 DECADE 1: DATA SOURCE T ABLES..................................................................................................... 96 9.2.1 Table 10 Data Source Dimension Limits Table................................................................97 9.2.2 Table 11 Actual Data Sources Limiting Table................................................................100 9.2.3 Table 12 Units of Measure Entry Table...........................................................................102 9.2.4 Table 13 Demand Control Table......................................................................................110 9.2.5 Table 14 Data Control Table............................................................................................ 112 9.2.6 Table 15 Constants Table................................................................................................113 9.2.7 Table 16 Source Definition Table....................................................................................118 9.2.8 Table 17 Transformer Loss Compensation Table.........................................................120 9.3 DECADE 2: REGISTER T ABLES.......................................................................................................... 122 9.3.1 Table 20 Register Dimension Limits Table....................................................................122 9.3.2 Table 21 Actual Register Limiting Table.........................................................................126 9.3.3 Table 22 Data Selection Table......................................................................................... 129 9.3.4 Table 23 Current Register Data Table.............................................................................131 9.3.5 Table 24 Previous Season Data Table............................................................................133 9.3.6 Table 25 Previous Demand Reset Data Table................................................................134 9.3.7 Table 26 Self-read Data Table.......................................................................................... 135 9.3.8 Table 27 Present Register Selection Table....................................................................137 9.3.9 Table 28 Present Register Data Table.............................................................................138 9.4 DECADE 3: LOCAL DISPLAY T ABLES................................................................................................. 139 9.4.1 Table 30 dimension display table...................................................................................139 9.4.2 Table 31 actual display table........................................................................................... 141 9.4.3 Table 32 display source table......................................................................................... 143 9.4.4 Table 33 primary display list table..................................................................................144 9.4.5 Table 34 secondary display list table.............................................................................146 9.5 DECADE 4: SECURITY T ABLES.......................................................................................................... 148 9.5.1 Table 40 Security Dimension Limits Table.....................................................................148 9.5.2 Table 41 Actual Security Limiting Table.........................................................................150 9.5.3 Table 42 Security Table................................................................................................... 151 9.5.4 Table 43 Default Access Control Table...........................................................................153 9.5.5 Table 44 Access Control Table........................................................................................ 155 9.5.6 Table 45 Key Table........................................................................................................... 157 9.5.7 Table 46 Reserved............................................................................................................ 158 9.6 DECADE 5: T IME-OF-USE T ABLES..................................................................................................... 159 9.6.1 Table 50 Dimension Time and TOU Table......................................................................160 viii

ANSI C12.19-2008 9.6.2 Table 51 Actual Time and TOU Table..............................................................................164 9.6.3 Table 52 Clock Table........................................................................................................ 167 9.6.4 Table 53 Time Offset Table.............................................................................................. 169 9.6.5 Table 54 Calendar Table.................................................................................................. 170 9.6.6 Table 55 Clock State Table.............................................................................................. 176 9.6.7 Table 56 Time Remaining Table......................................................................................178 9.6.8 Table 57 Precision Clock State Table.............................................................................178 9.7 DECADE 6: LOAD PROFILE T ABLES................................................................................................... 180 9.7.1 Table 60 Load Profile Dimension Limits Table..............................................................180 9.7.2 Table 61 Actual Load Profile Limiting Table..................................................................186 9.7.3 Table 62 Load Profile Control Table...............................................................................190 9.7.4 Table 63 Load Profile Status Table.................................................................................194 9.7.5 Table 64 Load Profile Data Set One Table.....................................................................197 9.7.6 Table 65 Load Profile Data Set Two Table.....................................................................202 9.7.7 Table 66 Load Profile Data Set Three Table...................................................................205 9.7.8 Table 67 Load Profile Data Set Four Table....................................................................208 9.8 DECADE 7: HISTORY & EVENT LOGS................................................................................................. 211 9.8.1 Table 70 Log Dimension Limits Table............................................................................213 9.8.2 Table 71 Actual Log Limiting Table................................................................................216 9.8.3 Table 72 Events Identification Table..............................................................................219 9.8.4 Table 73 History Log Control Table................................................................................220 9.8.5 Table 74 History Log Data Table.....................................................................................222 9.8.6 Table 75 Event Log Control Table..................................................................................225 9.8.7 Table 76 Event Log Data Table........................................................................................ 227 9.8.8 Table 77 Event Log and Signatures Enable Table........................................................230 9.8.9 Table 78 End Device Program State Table.....................................................................233 9.8.10 Table 79 Event Counters Table.......................................................................................237 9.9 DECADE 8: USER-DEFINED T ABLES................................................................................................... 238 9.9.1 Table 80 User-defined Tables Dimension Limits Table.................................................238 9.9.2 Table 81 Actual User-defined Tables Limiting Table.....................................................240 9.9.3 Table 82 User-defined Tables List Table........................................................................241 9.9.4 Table 83 User-defined Tables Selections Table.............................................................244 9.9.5 Table 84 User-defined Table Zero...................................................................................244 9.9.6 Table 85 User-defined Table One....................................................................................245 9.9.7 Table 86 User-defined Table Two....................................................................................245 9.9.8 Table 87 User-defined Table Three.................................................................................247 9.9.9 Table 88 User-defined Table Four...................................................................................247 9.9.10 Table 89 User-defined Table Five....................................................................................247 9.10 DECADE 9: T ELEPHONE CONTROL T ABLES......................................................................................249 9.10.1 Table 90 Dimension Telephone Table............................................................................249 9.10.2 Table 91 Actual Telephone Table....................................................................................252 9.10.3 Table 92 Global Parameters Table..................................................................................254 9.10.4 Table 93 Originate Parameters Table..............................................................................256 9.10.5 Table 94 Originate Schedule Table.................................................................................259 9.10.6 Table 95 Answer Parameters........................................................................................... 262 9.10.7 Table 96 Call Purpose...................................................................................................... 264 9.10.8 Table 97 Call Status......................................................................................................... 266 9.10.9 Table 98 Originate Status................................................................................................ 268 9.11 DECADE 10: EXTENDED SOURCE T ABLES........................................................................................ 270 9.11.1 Table 100 Dimension Extended Source Limiting Table................................................273 9.11.2 Table 101 Actual Extended Source Limiting Table.......................................................275 9.11.3 Table 102 Source Information Table...............................................................................277 9.11.4 Table 103 External Scaling Table....................................................................................284 9.11.5 Table 104 Demand Control Table....................................................................................285 9.11.6 Table 105 Transformer Loss Compensation..................................................................287 9.11.7 Table 106 Gas Constant AGA3........................................................................................ 287 9.11.8 Table 107 Gas Constant AGA7........................................................................................ 287

ix

ANSI C12.19-2008 9.12 DECADE 11: LOAD CONTROL AND PRICING T ABLES.........................................................................288 9.12.1 Table 110 Dimension Load Control................................................................................289 9.12.2 Table 111 Actual Load Control Limiting Table...............................................................292 9.12.3 Table 112 Load Control Status........................................................................................ 294 9.12.4 Table 113 Load Control Configuration...........................................................................296 9.12.5 Table 114 Load Control Schedule...................................................................................298 9.12.6 Table 115 Load Control Conditions................................................................................301 9.12.7 Table 116 Prepayment Status.......................................................................................... 305 9.12.8 Table 117 Prepayment Control........................................................................................ 307 9.12.9 Table 118 Billing Control................................................................................................. 308 9.13 DECADE 12: RESERVED.................................................................................................................. 311 9.14 DECADE 13: RESERVED.................................................................................................................. 312 9.15 DECADE 14: EXTENDED USER-DEFINED T ABLES..............................................................................313 9.15.1 Table 140 Extended User-defined Tables Function Limiting Table.............................314 9.15.2 Table 141 Extended User-defined Tables Actual Limits Table.....................................316 9.15.3 Table 142 Extended User-defined Selections Table......................................................318 9.15.4 Table 143 Extended User-defined Constants Table......................................................326 9.16 DECADE 15: QUALITY OF SERVICE.................................................................................................. 327 9.16.1 Table 150 Quality of Service Dimension Limits Table..................................................330 9.16.2 Table 151 Actual Quality of Service Limiting Table......................................................339 9.16.3 Table 152 Quality of Service Control Table...................................................................346 9.16.4 Table 153 Quality of Service Incidents Table................................................................362 9.16.5 Table 154 Quality of Service Log Table..........................................................................365 9.16.6 Table 155 Asynchronous Time-Domain Waveforms Table...........................................367 9.16.7 Table 156 Asynchronous Frequency-Domain Spectrum Table....................................371 9.16.8 Table 157 Periodic Time Domain Waveforms Table......................................................375 9.16.9 Table 158 Periodic Frequency-Domain Spectrum Table..............................................378 9.17 DECADE 16: ONE-WAY DEVICES...................................................................................................... 381 9.17.1 Table 160 Dimension One-way........................................................................................ 381 9.17.2 Table 161 actual One-way table......................................................................................385 9.17.3 Table 162 One-way Control Table...................................................................................388 9.17.4 Table 163 One-way Data Table........................................................................................ 391 9.17.5 Table 164 One-way Commands/Responses/Extended User-defined Tables Table....394 ANNEX A: RESERVED CLASSES FOR METER EQUIPMENT MANUFACTURERS IMPLEMENTING ANSI C12.19-1997 DEVICES.................................................................................................................. 396 ANNEX B: HISTORY & EVENT LOG CODES.......................................................................................397 B.1 CODES............................................................................................................................................ 397 B.2 LOGGER ARGUMENTS IMPLEMENTATION DETAILS..............................................................................399 B.3 LOGGER CODES INTERPRETATION DETAILS.......................................................................................403 ANNEX C: DEFAULT SETS FOR DECADE TABLES............................................................................408 ANNEX D: INDICES FOR PARTIAL TABLE READ/WRITE ACCESS...................................................415 ANNEX E: EVENT LOGGER IMPLEMENTATION.................................................................................417 E.1 BACKGROUND.................................................................................................................................. 417 E.2 SIGNATURE ALGORITHM.................................................................................................................... 418 ANNEX F: LOCATING AND COMPUTING THE KWH ACCUMULATOR VALUE FROM AN END DEVICE................................................................................................................................................... 420 ANNEX G: TRANSFORMER LOSSES COMPENSATION....................................................................422 G.1 T RANSFORMER LOSSES CONSIDERATION.......................................................................................... 422 G.1.1 No-Load Loss and Exciting Current...................................................................................422

x

ANSI C12.19-2008 G.1.2 Load Loss............................................................................................................................. 422 G.1.3 Transformer Losses Compensation...................................................................................422 G.2 T RANSFORMER LOSS COMPENSATION CALCULATIONS [2].................................................................423 G.3 T RANSFORMER LOSS COMPENSATION CALCULATION EXAMPLE.........................................................423 G.4 REFERENCES.................................................................................................................................. 424 ANNEX H: DOCUMENT-FORM DESCRIPTIVE SYNTAX.....................................................................425 H.1 GENERAL NOTES ON SYMBOLS, RULES AND THEIR MEANING BELOW:..................................................425 H.2 EXTENDED BNF SYMBOLS AND MEANING......................................................................................... 425 H.3 FLOW OF INFORMATION.................................................................................................................... 431 H.4 IDENTIFIERS..................................................................................................................................... 432 H.5 BASIC DATA TYPES.......................................................................................................................... 438 H.5.1 Basic data type definitions.................................................................................................. 440 H.5.2 Data types handling.............................................................................................................. 442 H.5.2.1 H.5.2.2 H.5.2.3 H.5.2.4

Signed integers................................................................................................................................ 442 Characters and Strings................................................................................................................... 443 Non-integer numbers.......................................................................................................................443 Date and time formats..................................................................................................................... 443

H.6 REFERENCES TO T YPES CONSTANTS AND VALUES............................................................................443 H.6.1 Scoping Rules....................................................................................................................... 444 H.6.1.1 Predefined STD and TDL Scopes...................................................................................................444 H.6.1.2 Container scopes............................................................................................................................. 445

H.6.2 References to values............................................................................................................ 447 H.6.3 Value...................................................................................................................................... 450 H.7 CONDITIONALS................................................................................................................................. 452 H.7.1 IF statements......................................................................................................................... 452 H.7.2 SWITCH statements.............................................................................................................. 452 H.8 BIT FIELD........................................................................................................................................ 452 H.9 SET................................................................................................................................................ 454 H.10 ARRAY.......................................................................................................................................... 454 H.11 PACKED RECORD........................................................................................................................... 455 H.12 CONSTANTS................................................................................................................................... 455 H.13 T ABLES......................................................................................................................................... 456 H.14 PROCEDURES................................................................................................................................ 457 H.15 SINGLE LINE MATH EXPRESSIONS.................................................................................................. 458 H.16 PROPERTIES.................................................................................................................................. 461 H.17 DOCUMENT FORM STARTING PRODUCTION RULE............................................................................462 ANNEX I: DATE-TIME ELEMENTS CONVERSION ALGORITHM (TM_FORMAT=3 AND TM_FORMAT=4)..................................................................................................................................... 463 ANNEX J: XML FILE FORMAT OF TDL AND EDL FILES.....................................................................464 J.1 OVERVIEW OF THE TDL/EDL XML DOCUMENT FRAMEWORK.............................................................464 J.1.1 TDL/EDL Files and Terminology.......................................................................................... 464 J.2 TDL XML FILE FORMAT OF THE TDL DOCUMENT.............................................................................468 J.2.1 Root Element............................................................................................................... 468 J.2.1.1 DTD........................................................................................................................................... 468 J.2.1.2 Attributes................................................................................................................................. 469 J.2.1.3 Document Form...................................................................................................................... 470

J.2.2 element.......................................................................................................... 470 J.2.2.1 J.2.2.2 J.2.2.3 J.2.2.4 J.2.2.5 J.2.2.6 J.2.2.7 J.2.2.8 J.2.2.9

DTD............................................................................................................................ 470 Attributes..................................................................................................................470 Child Elements.........................................................................................................470 Child DTDs................................................................................................................471 Child Elements Summary.......................................................................................472

Attributes.................................................................................................................................... 473 Attributes.................................................................................................................. 473 Attributes................................................................................................................................... 473

    Attributes................................................................................................................................... 474

    xi

    ANSI C12.19-2008 J.2.2.10 and
      sub-element usage................................................................................................474 J.2.2.11 and sub-element usage of ..................................................................................474 J.2.2.12 Document Form.....................................................................................................474 J.2.2.13 Element...................................................................................................................... 475 J.2.2.14 DTD............................................................................................................................. 475 J.2.2.15 Attributes...................................................................................................................475 J.2.2.16 Document Form........................................................................................................475

      J.2.3 Element................................................................................................................... 475 J.2.3.1 DTD (named)..................................................................................................................... 475 J.2.3.2 Attributes........................................................................................................................... 476

      J.2.4 Element......................................................................................................... 476 J.2.4.1 DTD (named)............................................................................................................476 J.2.4.2 Attributes (named)..................................................................................................477 J.2.4.3 Document Form (named).......................................................................................480

      J.2.5 element of (named)................................................................480 J.2.5.1 DTD.............................................................................................................................. 480 J.2.5.2 DTD (un-named)......................................................................................................480 J.2.5.3 Document Form.........................................................................................................481

      J.2.6 Element (Child of )..........................................................................481 J.2.6.1 DTD...................................................................................................................................... 481 J.2.6.2 Attributes............................................................................................................................ 481 J.2.6.3 Document Form................................................................................................................. 481

      J.2.7 element (Child of element).........................................................483 J.2.7.1 DTD.................................................................................................................................... 483 J.2.7.2 Attributes..........................................................................................................................483 J.2.7.3 Document Form...............................................................................................................484

      J.2.8 Element.................................................................................................... 484 J.2.8.1 DTD....................................................................................................................... 484 J.2.8.2 Attributes.............................................................................................................484 J.2.8.3 Document Form..................................................................................................487

      J.2.9 Element (Child of ).................................................................487 J.2.9.1 DTD.................................................................................................................................. 487 J.2.9.2 Attributes........................................................................................................................488 J.2.9.3 Document Form.............................................................................................................489

      J.2.10 Element (Child of )....................................................................490 J.2.10.1 DTD..................................................................................................................................... 490 J.2.10.2 Attributes...........................................................................................................................490 J.2.10.3 Document Form................................................................................................................491

      J.2.11 Element (Child of element).........................................................492 J.2.11.1 DTD........................................................................................................................................ 492 J.2.11.2 Attributes............................................................................................................................... 492 J.2.11.3 Document Form.................................................................................................................... 494

      J.2.12 Element (Child of )..........................................................................494 J.2.12.1 J.2.12.2 J.2.12.3 J.2.12.4 J.2.12.5 J.2.12.6 J.2.12.7

      DTD (Child of )............................................................................................494 Attributes (Child of )..................................................................................494 Document Form......................................................................................................................495 Element (Child of /)........................................................................495 DTD...................................................................................................................................... 495 Attributes............................................................................................................................ 495 Document Form................................................................................................................. 495

      J.2.13 Element (Child of /)..............................................................495 J.2.13.1 DTD...................................................................................................................................... 495 J.2.13.2 Attributes.............................................................................................................................495 J.2.13.3 Document Form..................................................................................................................495

      J.2.14 Element (Child of ).................................................................497 J.2.14.1 J.2.14.2 J.2.14.3 J.2.14.4 J.2.14.5 J.2.14.6 J.2.14.7

      xii

      DTD.................................................................................................................................. 497 Attributes........................................................................................................................ 497 Document Form.............................................................................................................497 Element (Child of /)..............................................................497 DTD..................................................................................................................................... 497 Attributes............................................................................................................................498 Document Form.................................................................................................................498

      ANSI C12.19-2008 J.2.14.8 element (Child of /)...........................................................498 J.2.14.9 DTD................................................................................................................................. 498 J.2.14.10 Attributes...................................................................................................................... 498 J.2.14.11 Document Form...........................................................................................................498

      J.2.15 element............................................................................................................... 499 J.2.15.1 DTD................................................................................................................................ 499

      J.2.16 Attributes........................................................................................................... 500 J.2.16.1 Document Form............................................................................................................502

      J.2.17 Element (Child of )....................................................................503 J.2.17.1 DTD......................................................................................................................... 503 J.2.17.2 Attributes...............................................................................................................504 J.2.17.3 Document Form Equivalent.................................................................................505

      J.2.18 Element (Child of )......................................................................................505 J.2.18.1 DTD........................................................................................................................................... 506 J.2.18.2 Attributes................................................................................................................................. 506 J.2.18.3 Document Form......................................................................................................................506

      J.2.19 Element (Child of /).........................................................................506 J.2.19.1 DTD...................................................................................................................................... 506 J.2.19.2 Attributes......................................................................................................................................... 506 J.2.19.3 Document Form................................................................................................................. 506

      J.2.20 Element (Child of /).........................................................................506 J.2.20.1 DTD definition....................................................................................................................506 J.2.20.2 Attributes.............................................................................................................................507 J.2.20.3 Document Form..................................................................................................................507

      J.2.21 Element (Child of ).............................................................................507 J.2.21.1 DTD.................................................................................................................................. 507 J.2.21.2 Attributes........................................................................................................................ 507 J.2.21.3 Document Form.............................................................................................................507

      J.2.22 Element (Child of /)................................................................507 J.2.22.1 DTD..................................................................................................................................... 507 J.2.22.2 Attributes............................................................................................................................508 J.2.22.3 Document Form.................................................................................................................508

      J.2.23 Element (Child of /)............................................................508 J.2.23.1 DTD................................................................................................................................. 508 J.2.23.2 Attributes........................................................................................................................ 508 J.2.23.3 Document Form.............................................................................................................508

      J.2.24 Element (Child of )....................................................................................508 J.2.24.1 DTD................................................................................................................................. 508 J.2.24.2 Attributes....................................................................................................................... 509 J.2.24.3 Document Form............................................................................................................509

      J.2.25 Element (Child of or )..................................................................510 J.2.25.1
      DTD..................................................................................................................................... 510 J.2.25.2
      Attributes...........................................................................................................................510 J.2.25.3
      Document Form................................................................................................................512

      J.2.26 Element (Child of or ).........................................................514 J.2.26.1 DTD............................................................................................................................514 J.2.26.2 Attributes.................................................................................................................. 515 J.2.26.3 Document Form.......................................................................................................516

      J.2.27 Element (Child of )........................................................................517 J.2.27.1 DTD definition................................................................................................................517 J.2.27.2 Attributes........................................................................................................................518 J.2.27.3 Document Form.............................................................................................................518

      J.2.28 Element (Child of ).....................................................................................518 J.2.28.1 DTD.................................................................................................................................. 519 J.2.28.2 Attributes........................................................................................................................519 J.2.28.3 Document Form.............................................................................................................519

      J.2.29
      element (Child of element)...................................................................519 J.2.29.1
      DTD definition................................................................................................................... 519 J.2.29.2
      Attributes...........................................................................................................................519

      J.2.30 Element (Child of )........................................................................520 J.2.30.1 DTD............................................................................................................................520 J.2.30.2 Attributes.................................................................................................................. 520

      xiii

      ANSI C12.19-2008 J.2.31 Element (Child of )............................................................................520 J.2.31.1 DTD................................................................................................................................520 J.2.31.2 Attributes...................................................................................................................... 521

      J.2.32 Element (Child of ).................................................................521 J.2.32.1 DTD.....................................................................................................................521 J.2.32.2 Attributes......................................................................................................................................... 522

      J.2.33 Element (Child of )............................................................................522 J.2.33.1 DTD................................................................................................................................ 522 J.2.33.2 Attributes....................................................................................................................... 522

      J.2.34 Element (Child of )...............................................................................522 J.2.34.1 DTD................................................................................................................................... 522 J.2.34.2 Attributes.........................................................................................................................522

      J.3 EDL XML FORMAT.......................................................................................................................... 524 J.3.1 Overview................................................................................................................................ 524 J.3.2 Root Element............................................................................................................... 524 J.3.2.1 DTD.......................................................................................................................................... 524 J.3.2.2 Attributes................................................................................................................................. 525 J.3.2.3 Document Form.....................................................................................................................525

      J.3.3 Element (Child of )..............................................................................526 J.3.3.1 DTD............................................................................................................................ 526 J.3.3.2 Document Form.......................................................................................................526

      J.3.4 Pseudo Element Names........................................................................................................ 526 J.3.5 Resolving Second Edition XML Schema Constraints........................................................527 J.3.5.1 The Schema Constraints Problem..................................................................................................527 J.3.5.2 Resolution of The Schema Constraints Problem.........................................................................527

      J.3.6 Element............................................................................................. 528 J.3.6.1 DTD...............................................................................................................528

      J.3.7 Element (Child of )................................................................................528 J.3.7.1 DTD..............................................................................................................................528 J.3.7.2 Attributes.................................................................................................................... 528 J.3.7.3 Document Form.........................................................................................................529

      J.3.8 Element (Child of ).................................................531 J.3.8.1 DTD..........................................................................................................531 J.3.8.2 Attributes.................................................................................................531 J.3.8.3 Document Form......................................................................................531

      J.3.9 Element (Child of ).......................................................................................... 531 J.3.9.1 DTD........................................................................................................................................ 532 J.3.9.2 Document Form...................................................................................................................532

      J.3.10 Element.................................................................................................... 532 J.3.10.1 DTD...................................................................................................................... 532 J.3.10.2 Attributes............................................................................................................532 J.3.10.3 Document Form..................................................................................................533

      J.3.11 Element............................................................................................... 533 J.3.11.1 DTD.................................................................................................................533 J.3.11.2 Attributes.......................................................................................................533 J.3.11.3 Document Form............................................................................................533

      J.3.12 Element.................................................................................................................. 534 J.3.12.1 DTD..................................................................................................................................... 534 J.3.12.2 Attributes...........................................................................................................................534 J.3.12.3 Document Form................................................................................................................535

      J.3.13 element................................................................................................. 536 J.3.13.1 DTD...................................................................................................................536 J.3.13.2 Document Form..............................................................................................537

      J.4 EDL XML FORM ENCODING OF FINAL ELEMENT VALUES..................................................................538 ANNEX K: UNIVERSAL IDENTIFIER..................................................................................................... 540 ANNEX L: ANSI/IEEE/MC OID OVERSIGHT GROUP AND CERTIFIED REGISTRARS.....................541 ANNEX M: HISTORICAL BACKGROUND............................................................................................. 542

      xiv

      ANSI C12.19-2008 M.1 FOREWORD OF AMERICAN NATIONAL STANDARD C12.19-1997.........................................................542

      xv

      ANSI C12.19-2008

      Foreword (This Foreword is not part of American National Standard C12.19-2008.) The ANSI C12.19 standard provides a common data structure for use in transferring data to and from utility End Devices, typically meters. It has been approved after considerable cooperative effort among utilities, meter manufacturers, automated meter reading service companies, ANSI, Measurement Canada (for Industry Canada), NEMA, IEEE, Utilimetrics and other interested parties. The standard data structure is defined as sets of tables. The tables are grouped together into segments called decades. Each decade pertains to a particular feature-set and related function such as Time-ofuse, Load Profile, etc. Table data is transferred from or to the End Device by reading from or writing to a particular table or portion of a table. The second release of the standard represents a philosophical departure from the first release. This release of the standard is intended to accommodate the concept of an advanced metering infrastructure such as that identified by the Office of Electricity Delivery and Energy Reliability of the US Department of Energy; the Smart Metering Initiative of the Ontario Ministry of Energy (Canada) and the stated requirements of Measurement Canada for the approval of a metering device for use in Canada. This standard covers a broader range of functionality relative to its previous version; however, it does not follow that implementations of this standard need to be large or complex. Implementers are encouraged to choose an appropriate subset that is suitable for their needs. Therefore, it is very unlikely for any one End Device to embed all tables or even the majority of the tables described herein. Thereby, implementers are encouraged to deploy their desired functionalities using complete and consistent suites of standard tables from standard decades to the largest extent practical. Readers that are acquainted with ANSI C12.19-1997 will discover that the new version contains many changes. The changes may be categorized as follows: 1. Additions of new features or new functionality through the introduction of new tables, decades or syntax. 2. Extensions or improvements to pre-existing functionality in support of contemporary and anticipated industry needs. 3. Corrections of errors and provision of clarifications that address known deficiencies and documents the accepted or anticipated industry practice. 4. Introduction of XML based table description language (TDL/EDL) and documentation of services supporting the needs expressed by initiatives such as Smart Metering, Advanced Metering Infrastructure and alike. 5. Removal of features that were found undesirable. 6. Provision of guidelines for implementers of this standard and developers of future versions of the standard on backward compatibility and planned phase-out of obsolete features. Some of the many new features introduced in this revision of the standard include:      

      xvi

      Addition of new data types in support of high-precision sub-second timestamps, such as HTIME_DATE and HTIME. Creation of new syntax for the aggregation of transmitted characters into strings, STRING. Creation of new syntax for the aggregation of transmitted octets into opaque blobs, BINARY. Addition of new decade 9, Telephone tables. This decade imports and supersedes the tables and syntax defined in ANSI C12.21. Creation of new decade 10, Extended Source Tables under a new metering data model selection (MODEL_SELECT) to enable a uniformly consistent implementation for the conversion of readings to engineering units. Creation of new decade 11, Load Control and Pricing Tables. This decade provides for demandside management capabilities, including load control, demand response, prepayment and direct customer billing functions.

      ANSI C12.19-2008    

      Addition of decade 12, Network Control Tables and decade 13, Relay Control Tables. These are references to tables defined by ANSI C12.22. Creation of decade 14, Extended User-defined Tables. This decade provides capability for transmitting and receiving a contiguous stream of element and sub-elements data. The data are referenced methodically to the legitimate and formal C12.19 data element. Creation of decade 15, Quality of Service. This decade provides control, capture and logging of high precision quality of service performance indicators, such as power quality, and the inclusion of detailed waveforms, power spectra and related information. Creation of decade 16, One-way Devices. This decade provides control and management tables in support of one-way (talk-only) End Devices.

      Some extensions or improvements to pre-existing functionality include: 

      Table 0, General Configuration Table, retains its original form and it is backward compatible with ANSI C12.19-1997. However, a few notable control elements were modified: i. ii. iii. iv.

      Extended CHAR_FORMAT in support of 8-, 16- or 32-bit character sets. Extended MODEL_SELECT in support of 16-bit source selections. Replaced MANUFACTURER element with DEVICE_CLASS element to facilitate a more dynamic End Device data model recognition. Extended TM_FORMAT in support of high precision, sub-second, timestamps.

      End devices implementing CHAR_FORMAT 4 or 5 (UTF16 or UTF32), or MODEL_SELECT 1 (16-bit extended sources) are not backward compatible with ANSI C12.19-1997 end-device reading apparatus, because the size of the affected table elements is different than that defined in the first version of this standard. End devices implementing CHAR_FORMAT 3 (UTF8), or TM_FORMAT 4 may not be backward compatible with ANSI C12.19-1997 end-device reading apparatus due to a difference in interpretation of the related table elements.  Changed all data source selections in all tables (e.g., Table 22) from UINT8 to SOURCE_SELECT_RCD. This increases the number of data sources from 255 to 65535 and it enables use and reuse of engineering units of measure based on the context where they are used. This form is backward compatible with ANSI C12.19-1997 when MODEL_SELECT is 0.  Table 3, End Device Mode Status Table, incorporates the changes proposed in ANSI C12.21.  Table 7, Procedure Initiate Table, and Table 8, Procedure Response Table, were updated and extended to provide procedures in support of new functionality that is needed by: i. decade 7, History and Event Log Tables; ii. decade 9, Telephone Control Tables; iii. decade 11, Load Control and Pricing Tables; iv. decade 12, Network Control Tables and v. decade+ 15 Quality of Service Tables.     

      Table 12, Unit of Measure Entry table, was expanded with new UOMs. Table 18, Transformer Loss Compensation, was added to decade 1. Extended the event log tables to provide a new capability to manage and detect program changes through the life of the End Device. Extended the event log tables to provide a new capability to manage, authenticate and verify the integrity of data read from an end-device service point by any receiving client application that may reside across any communication system. Extended the table type that can be transmitted to include up to 2040 extended user defined tables via TABLE_IDA_BFLD. Also introduced a new decade 14, Extended User-defined Tables, to manage the collation of table elements, down to the bit level, into extended user defined tables.

      xvii

      ANSI C12.19-2008 Major corrections of errors and provision of clarifications include:   

      Section 7.0, Compliance, was updated to reduce variations in the implementation of the standard. Section 8.0, Table Transportation Issues, was updated to include the “Errata to ANSI Standard C12.19-1997, Utility Industry Data Tables” published in 2001. It also updated to harmonize this standard with ANSI C12.18, ANSI C12.21 and ANSI C12.22. Table 7, Procedure Initiate Table, and Table 8, Procedure Response Table, indices calculations were completely rewritten in order to eliminate a fatal error in the production of unique indices for procedure parameters when using index/count access methods.

      Removal of features that were found undesirable include: 

      Section 5.0, Syntax, no longer supports two-dimensional arrays. Appropriate corrections were applied wherever this syntax was used. This does not impact the offset/count data access methods.

      The reader is encouraged to review the descriptive text as it brings significant clarifications and examples of use where appropriate. Suggestions for improvement to this Standard are welcome. They should be sent to: National Electrical Manufacturers Association Vice President of Engineering 1300 North 17th Street Suite 1752 Rosslyn, VA 22209 The Secretariat of the Accredited Standards Committee on Electricity Metering, C12, is held by the National Electrical Manufacturers Association (NEMA) and the National Institute of Standards and Technology. At the time this standard was processed and approved, the C12 Committee had the following members: Tom Nelson, Chairman Paul Orr, Secretary Organizations Represented:

      Name of Representative:

      Austin Energy Center for Neighborhood Technology Duke Power Company Elster Electricity L.L.C. Florida Power & Light Co. Future DOS R&D, Inc. General Electric Itron, Inc. Landis+Gyr Inc. NIST Pacific Gas & Electric Company Pacificorp Public Service Electric & Gas Schweitzer Engineering Labs Tucker Engineering Associates Inc. Underwriters Laboratory

      Herman Millican Larry Kotewa Tim Morgan Scott Weikel John McEvoy Avygdor Moise Curt Crittenden Aaron Snyder John Voisine Tom Nelson D. Young Nguyen Lauren Pananen Dave Ellis Bob Hughes Richard Tucker Ron Breschini

      xviii

      ANSI C12.19-2008 The following members of Working Group 2 of Subcommittee 17 worked on the development of this revision of the standard since its first publication: Avygdor Moise, Chairman Michael Anderson, Past Chairman Richard D. Tucker, Vice Chairman Terry L. Penn, Editor Paul Orr, Secretary Organizations Represented:

      Name of Representative:

      American Innovations Ltd.

      John Taylor

      Austin International, Inc. Badger Meter Center for Neighborhood Technology C-MAC Consultant for Itron, Inc. Datamatic Energy Systems Distribution Control Systems, Inc.

      William Beverly Greg Gomez Lawrence Kotewa Raymond Gaudreault William Buckley Robert McMichael Mark Iacoviello Peter Martin David Wiseman Wesley Ray Edward J. Beroset Avygdor Moise Virginia Zinkowski Jack Pazdon Kendall Smith Jean Joly Martin Burns William Rush Ron Begley William Mazza Don Grundhauser Aaron Snyder Chris Schafer Janice Jennings Ken Gilmer Bin Qiu Michael Anderson Stuart Garland Thomas Chen Vuong Nguyen Dan Nordell, Shawn Bagley Alex Lunycz John Newbury Richard Stetler Gregory Bray Brian Seal Marc Purc Norbert Balko Terry L. Penn Keith Martin

      Duke Energy Corp. Elster Electricity, LLC Future DOS R&D, Inc. General Electric Hexagram, Inc. Hydro-Québec Hypertek Inc. for EPRI IGT IntraLynx Canada Invensys Metering Systems Itron, Inc.

      Landis+Gyr Inc. Lucent Technologies, Bell Labs Main Street Networks Measurement Canada Northern States Power Co. Ontario Hydro Services Co. Open University Power Measurement Rochester Instrument Systems Schlumberger Sensus Metering Systems Southern Company Tantalus Systems Corp.

      xix

      ANSI C12.19-2008 Organizations Represented:

      Name of Representative:

      Terasen Gas THY Consulting, Inc. Trilliant Networks

      David Taylor Ted York Michel Veillette Paul Aubin Richard D. Tucker

      Tucker Engineering Associates Inc.

      xx

      ANSI C12.19-2008

      This page intentionally left blank.

      xxi

      ANSI C12.19-2008

      AMERICAN NATIONAL STANDARD

      ANSI C12.19-2008

      Utility Industry End Device Data Tables 1 Scope This Standard defines a Table structure for utility application data to be passed between an End Device and any other device. It neither defines device design criteria nor specifies the language or protocol used to transport that data.

      2 References 2.1 Normative ANSI C12.10-2004

      American National Standard for Physical Aspects of Watthour Meters-Safety Standard, (or latest version).

      ANSI X9.31-1998

      Public Key Cryptography Using Reversible Algorithms for the Financial Services Industry (rDSA), 1998.

      ANSI/IEEE 100-2000

      The Authoritative Dictionary of IEEE Standards Terms, Seventh Edition (New York, New York, IEEE Press, 2000, ISBN 0-7381-2601-2).

      AS 4140-1995

      Australian Standard, Metering and Utility Information Exchange – Glossary of Terms.

      CAN/CSA ISO/IEC-10118-1: 2000 Information Technology – Security techniques – Hash-functions – Part 1: General. CAN/CSA ISO/IEC-10118-2: 2000 Information Technology – Security techniques – Hash-functions – Part 2: Hash-Functions Using an n-bit Block Cipher. ECMA 94 (1996)

      8-Bit Single-Byte Coded Graphic Character Sets - Latin Alphabets No. 1 to No. 4-2nd Edition..

      IEEE Std 519-1992

      IEEE Recommended Practices and Requirements for Harmonic Control in Electrical Power Systems.

      IEEE Std 754-1985

      IEEE Standard for Binary Floating-Point Arithmetic.

      IEEE Std 1159-1995 (R2001)

      IEEE Recommended Practice for Monitoring Electric Power Quality.

      IEEE Std C57.123-2002

      IEEE Guide for Transformer Loss Measurement.

      IEC 62053-23 (2003-01)

      Electricity metering equipment (a.c.) – Particular requirements – Part 23: Static meters for reactive energy (classes 2 and 3).

      IEC/TR 61000-2-1 (1990-05), Electromagnetic compatibility (EMC) - Part 2: Environment - Section 1: Description of the environment - Electromagnetic environment for lowfrequency conducted disturbances and signalling in public power supply

      1

      ANSI C12.19-2008 systems. ISO 8859-1: 1998

      Information Technology – 8-bit single-byte coded graphic character sets – Part 1: Lating Alphabet No 1.

      ISO/IEC 646: 1991

      Information technology - ISO 7-bit coded character set for information interchange.

      ISO/IEC 7498-1: 1996

      Information technology - Open Systems Interconnection - Basic Reference Model: The Basic Model.

      ISO/IEC 10646: 2003

      Information Technology—Universal Multiple-Octet Coded Character Set (UCS).

      2.2 Other Algorithm for Computing and Programming Transformer Loss Constants in Solid-State Meters, A. Hannah, “in Proc. 1998 Rural Electric Power Conference, pp. B3-1-17. Handbook for Electricity Metering, 10th Edition (Washington, District of Columbia, Edison Electric Institute, 2002, ISBN 0-931032-52-0). IEEE IAM : 11/12 2003,

      S. Y. Merritt and S. D. Chaitkin, “No-load versus load loss,” IEEE Industry Applications Magazine, pp. 21-28, Nov./Dec. 2003.

      ISBN 0-201-30998-X

      The Unified Modeling Language Reference Manual (The Addison-Wesley Object Technology Series, 1999, ISBN 0-201-30998-X)

      ISBN 0-321-18578-1

      The Unicode Consortium. The Unicode Standard, Version 4.0.0, defined by: The Unicode Standard, Version 4.0 (Boston, Massachusetts, AddisonWesley, 2003. ISBN 0-321-185781).http://www.unicode.org/versions/Unicode4.0.0/

      ISBN 0-321-24562-8

      The Unified Modeling Language Reference Manual, Second Edition (Upper Saddle River, New Jersey, Addison-Wesley, 2005, ISBN 0-321-24562-8).

      ISBN 0-8493-0628-0

      CRC Standard Mathematical Tables, 28th Edition (CRC Press, Inc.,1987, Boca Raton,Florida, ISBN 0-8493-0628-0).

      IS-E-01-E

      Specifications Relating to Event Loggers for Electricity Metering Devices and Systems (Measurement Canada, IS-E-01-E, 2003)

      L. L. Grigsby, Ed.

      The Electric Power Engineering Handbook, CRC Press and IEEE Press, 2000, Section 3, “Transformers”, J.H. Harlow, Ed.

      MCPSMTD : 1999

      Principles for Sealing Meters and Trade Devices (Measurement Canada, 1999-07-26)

      UG : 2005

      Utility Industry Standard Tables User’s Guide (Measurement Canada, Revised Version 3.2, 2005)

      2

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      3 Definitions The definitions used in this Standard have been derived from the sources cited in Section 2, References, with the exception of those introduced in this Standard revision, labeled “[New]”.

      3.1 ACT Abbreviation for "ACTUAL"; the programmed functional capabilities of an End Device. [ANSI C12.191997]

      3.2 Address Those inputs whose states select a particular cell or group of cells. [IEEE 100-2000]

      3.3 Advanced Metering Infrastructure (AMI) AMI is defined as the communications hardware and software and associated system and data management software that creates a network between advanced meters and utility business systems and which allows collection and distribution of information to customers and other parties such as competitive retail providers, in addition to providing it to the utility itself. [Federal Energy Regulatory Commission, FERC-727 and FERC-728, OMB Control Nos. 1902-0214 & 1902-0213 Glossary, Survey on Demand Response, Time-Based Rate Programs/Tariffs and Advanced Metering Infrastructure]

      3.4 Alias An alternate name of a Table, Procedure, Element or a derived type. An alias name can be used as an alternative when making references to Tables, Procedures, Elements or derived types. Example: Table 0 of ANSI C12.19-1997 contains the Element MANUFACTURER, whereas this Standard renamed it to DEVICE_CLASS, and defined it to be an aliased it to MANUFACTURER for backward compatibility. All references to MANUFACTURER and DEVICE_CLASS refer to the same Element.

      3.5 ARRAY In text form, “Array” or “array,” a grouping of repetitions of the same data type, used to describe a single Element. [New]

      3.6 BIT FIELD (BFLD) In text form, “Bit Field” or “bit field” is a collection of data sub-elements, each spanning one or more of bits, that may not be aligned on an Octet boundary nor span an integral multiple of Octets. Multiple occurrences of these sub-elements are grouped (packed) together so that the entire collection of bits ends on an Octet boundary. For purposes of transmission, the entire group of bits is treated as an Atomic Element having the type of unsigned integer. [New]

      3.7 Block A collection of interval-based Register values spanning one or more channels. [New]

      3.8 Channel A single path for the collection of interval-based Register values over a period of time. [New]

      3.9 Clock A device that generates periodic signals used for synchronization. A device that measures and indicates time. A register whose content changes at regular intervals in such a way as to measure time. [ANSI C12.19-1997]

      3.10 Count The number of Octets selected when using the offset/octet-count partial Table access method. [ANSI C12.19-1997]

      3.11 Cumulative Demand Summation of Maximum Demands during the preceding periods is indicated during the period after the meter has had a demand reset performed and before it has been reset again. Note: The maximum demand for any one demand interval is equal or proportional to the difference between the accumulated readings before and after reset. [IEEE 100-2000]

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      3

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      3.12 Customer The purchaser/user of a product or service supplied by a service provider or utility. [AS4140-1995]

      3.13 Data Encryption The changing of the form of a data stream such that only the intended recipient can read or alter the information and detect unauthorized messages. [ANSI C12.19-1997]

      3.14 Decade A functional grouping of Tables by application into groups of ten. The Tables are numbered “X0” through “X9”, with “X” representing the Decade number. [ANSI C12.19-1997]

      3.15 Default Set Element-values provided when FLC Tables or FLC+1 Tables of any Decade are not used by the End Device. This Standard provides Default Set Element-values for all FLC and FLC+1 Table-elements. End Device vendors may provide Default Set Element-values for any Manufacturer defined Decades FLC and FLC+1 using EDL. [New]

      3.16 Demand The consumption (e.g., energy, volume) recorded during the integration time period divided by the integration time period. [ANSI C12.19-1997]

      3.17 Demand, Block An average value (e.g., Watthours/hours) occurring over a Demand period specified by the End Device. This value may be used by the End Device for maximum or minimum registration computation. [ANSI C12.19-1997]

      3.18 Demand, Maximum The highest Demand measured over a selected period of time. Also referred to as “Peak Demand.” [ANSI C12.19-1997]

      3.19 Demand, Minimum The lowest Demand measured over a selected period of time. [ANSI C12.19-1997]

      3.20 Demand, Present Demand occurring during the present Demand interval or subinterval (e.g., Watts or VA). [ANSI C12.191997]

      3.21 Demand, Sliding Window (Rolling-Interval) The Block Demand calculated over an integration period which includes sub-intervals of previous Demand calculations. [ANSI C12.19-1997]

      3.22 Deprecated A feature or attribute that has been outdated by newer constructs. Deprecated syntax, Tables or Elements are defined in the Standard or Manufacturer reference documentation of the End Device (TDL) and are clearly marked in the document.

      3.23 DIM Abbreviation for "DIMENSION"; the maximum functional capability designed into an End Device. See definition of “Function Limiting Control Table”. [ANSI C12.19-1997]

      3.24 Document Type Definition (DTD) The XML document type declaration contains or points to markup declarations that provide a grammar for a class of documents. This grammar is known as a document type definition, or DTD. The document type declaration can point to an external subset (a special kind of external entity) containing markup declarations, or can contain the markup declarations directly in an internal subset, or can do both. The DTD for a document consists of both subsets taken together. [W3C Recommendation, Extensible Markup Language (XML) 1.1 (Second Edition)]

      3.25 Element The union of all of the Atomic Elements which share the same index prefix. An Element can be any type, a set, an array or a selection from an array. [ANSI C12.19-1997]

      4

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      3.26 Element, Atomic A restricted subset of an Element that is the smallest component of an Element that can be transmitted as an integral number of Octets without loss of its meaning or interpretation during transmission, in accordance with Octet ordering and bit packing. [New]

      3.27 Element-count The number of Elements selected when using the index/element-count partial Table access method. The Elements selected are derived from the serialization of all Elements, starting with the one identified by the index, sequentially, which share part or all of the selection index prefix. [ANSI C12.19-1997]

      3.28 Element, Final An inner-most expression of an Atomic Element or a Sub-element. This expression can be used to retrieve a single value. Only Final Elements can be used in calculations. Decade names, Table names, Procedure names and constants are also Final Elements, when used in a calculation. The value returned by Decade, Table, and Procedure names is their corresponding number. The value returned by a constant is the constant’s assigned value. [New]

      3.29 Element, Volatile A Table Element whose values may change asynchronously by means other than reading or writing Tables. Two consecutive reads of the same Table Element may yield different values due to real-time changes to the End Device Register, sensed values, state or status. [New]

      3.30 End Device The closest device to the sensor or control point within a metering application communication system which is compliant with the Utility Industry End Device Data Tables. [ANSI C12.19-1997]

      3.31 End-device Agent The entity responsible for managing the End Device operations and programs. It is capable of affecting change to the End Device program. It is also responsible for keeping a record of all End Device programming parameters, constants, change history and event logger records. The End-device Agent is also responsible for maintaining and demonstrating continuity between metrological data records and End Device programs, exclusively through the use of Utility Industry End Device Data Tables. [ANSI C12.19-1997]

      3.32 Event A noteworthy occurrence that has a location in time and space, and does not have duration. Event parameters include information about the state of the End Device before the Event, after the Event, the Event time and related Event-identifying information. Event parameters can be made available for inspection directly or indirectly through a calculable derivative. [Adopted from ANSI C12.19-1997 and ISBN 0-201-30998-X, The Unified Modeling Reference Language Manual]

      3.33 Event Instance A specific occurrence of an Event. Each Event Instance is characterized by a set of Event parameters There are four kinds of Event Instances: Call Event, Change Event, Signal Event and Time Event. [Adopted from ANSI C12.19-1997 and ISBN 0-201-30998-X, The Unified Modeling Reference Language Manual]

      3.34 Event, Call An Event Instance caused by a receipt of an explicit synchronous request (e.g., a request to write a Table by a communication protocol). [Adopted from ISBN 0-201-30998-X, The Unified Modeling Reference Language Manual]

      3.35 Event, Change An Event Instance caused by change in the value of a Boolean expression ( e.g., tamper detect, change in metering mode). [Adopted from ISBN 0-201-30998-X, The Unified Modeling Reference Language Manual]

      3.36 Event, Signal An Event Instance caused by explicitly named asynchronous communication among Objects (e.g., advancing list pointers as a result of execution of an advance list pointers procedure). [Adopted from

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      5

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      ISBN 0-201-30998-X, The Unified Modeling Reference Language Manual]

      3.37 Event, Time An Event Instance caused by the occurrence of an absolute time or the passage of a relative amount of time (e.g., time-of-use schedule invoking a self-read). [Adopted from ISBN 0-201-30998-X, The Unified Modeling Reference Language Manual]

      3.38 Event Logger Data The entire content of all Tables designated as Program Tables, all associated pointers and all signatures that are expressed by or implied by Event Logger Record for a specific Event. The Event Logger Data originates initially inside the End Device, but it may extend into the End Device Agent record-keeping system. [ANSI C12.19-1997]

      3.39 Event Logger Record The pointers and signatures that are expressed by or implied by EVENT_LOG_DATA_TBL.EVENT_LOG_RCD and EVENT_LOG_DATA_TBL.EVENT_ENTRY_RCD to define the Event Logger Data for a specific Event. [New]

      3.40 Exchange Data Language (EDL) Exchange Data Language is for encoding, import and export of Default Sets defined by this Standard, Table Element values retrieved from an End Device, Table Element values to be stored in an End Device, Manufacturer constant Element-values and Utility or Customer site-specific constant Elementvalues that need to be known by application. The Exchange Data Language Element-values are encoded using XML. [New]

      3.41 Extensible Markup Language (XML) Extensible Markup Language is a recommendation for a lexical grammar produced by the World Wide Web Consortium (W3C). The Extensible Markup Language, abbreviated XML, describes a class of data objects called XML documents and partially describes the behavior of computer programs which process them. XML is an application profile or restricted form of SGML, the Standard Generalized Markup Language [ISO 8879]. By construction, XML documents are conforming SGML documents. [ Adopted from W3C Recommendation, Extensible Markup Language (XML) 1.1 (Second Edition)]

      3.42 Index A unique sequence of numbers used to select a Table Element. An Index may be represented in dotnotation format (text transmission form) or as in binary array (binary transmission form). An Index may reference any Table Element. [ANSI C12.19-1997]

      3.43 Interharmonics Frequencies between the harmonics of the power frequency voltage and current that can be observed but are not an integer multiple of the fundamental frequency. They can appear as discrete frequencies or as a wide-band spectrum. [Adapted from IEC/TR 61000-2-1 and IEEE 100-2000]

      3.44 Load Profile The recording, storage and analysis of consumption data over a period of time for a particular installation. [ANSI C12.19-1997]

      3.45 Meter A device which measures and records the consumption or usage of the product/service. [ANSI C12.191997]

      3.46 Metrological Adjustment Any physical means or methods designed or used, whether directly or indirectly, whether intentionally or un-intentionally, to alter or correct the measurement characteristics of an End Device or any of its subsystems that are used for trade measurement purposes. This includes altering or replacing Registers, components, connections or internal working parts of the End Device. It also includes the alteration of any Metrological Parameter that would be made available from the End Device or any of its outputs. Metrological Adjustments manifest themselves in changes to Metrological Tables. [Adopted from Measurement Canada IS-E-01-E and Utility Industry Standard Tables User’s Guide].

      6

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      3.47 Mode, Factory A superset of Meter Shop Mode where, in addition, manufacturer limited functions and parameters are also available for modification. [New]

      3.48 Mode, Metering The operating state of the End Device wherein measured or input quantities are accumulated for the purpose of revenue metering. [New]

      3.49 Mode, Meter Shop The operating state of the End Device where revenue metering is prohibited. The entry state and the exit state of the End Device may be unrelated and untraceable. An exit from Meter Shop Mode represents a new initial state for the End Device. While operating in Meter Shop Mode, all operational safeguards such as logging, security and accumulation may be disabled. [New]

      3.50 Mode, Test The operating state of the End Device wherein the Metering Mode state parameters are saved prior to entry and restored upon exit. [New, Adopted from ANSI C12.1-2001]

      3.51 Object A Table Object or an Element Object [Revised]

      3.52 Object, Table A Table and all the Elements it contains that can be described, encoded or communicated according to this Standard. When the Table referenced is a Pending Table, then the Table Object includes the Pending Header. [New]

      3.53 Object, Element An Atomic Element, an Element, Sub-element or a Final Element of a Table that can be described, encoded or communicated using this Standard. [New]

      3.54 Octet A sequence of eight bits. [ANSI C12.19-1997]

      3.55 Offset The number of Octets, relative to the beginning of a Table, that precede the desired Element. When the Table is a Pending Table, then Offset zero (0) is the first Element at beginning of the Table following the Pending Table header. [ANSI C12.19-1997]

      3.56 Override In the context of declaration of type. A relaxed variation of the Replace attribute in that Overridden types have different Offsets and Indices from those of the referenced Elements, and thus can expose additional detail to internal structure of Elements that were otherwise opaque. [New]

      3.57 PACKED RECORD In text form, “Packed Record”, or any variation thereof, a group of Element types, anyElementType, created as a new derived data type. [New]

      3.58 Procedure An action that can be performed by the End Device. A Procedure is initiated by writing to Standard Table 07 and the result may be retrieved by reading Standard Table 08. [New]

      3.59 Procedure, Manufacturer A Procedure whose structure and actions are defined by an individual End Device manufacturer. [New]

      3.60 Procedure, Metrological A Procedure whose action causes a change to a Metrological Parameter or results in a Metrological Adjustment. [New]

      3.61 Procedure, Standard A Procedure whose structure and actions are defined by this Standard. [New]

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      7

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      3.62 Quadrant Divisions of the plane formed by the representation of active power (watts), reactive power (VAR) and vector apparent power (voltamperes) in a Cartesian coordinate system. In this standard, the convention used is that the vectors rotate counter clockwise and the quadrants are numbered as shown in the diagram below. For clarity, the diagram includes both the Handbook definition and the IEC terminology in parentheses. It should be noted that the ANSI terms are with respect to the utility (e.g. “delivered” means delivered by the utility) and the IEC 62053 terms are with respect to the consumer (e.g. “imported” means imported by the consumer). [Adapted from the Handbook for Electricity Metering, IEC 62053-23: 2003, and the CRC Standard Mathematical Tables] Delivered VAR (Q+, Import ReactivePower)

      Quadrant 2 Leading current Capacitive

      Quadrant 1 Lagging current Inductive

      Received Watts (P-, Export Power)

      Delivered Watts (P+, Import Power) Quadrant 3 Lagging current Inductive

      Quadrant 4 Leading current Capacitive

      Received VAR (Q-, Export ReactivePower)

      3.63 Redefine In the context of declaration of type. The new type definition is constrained by the referenced type definition whereby the new definition shall have identical Element content, types, Indices and Offsets to those found in the referenced type. The referenced type is left unaffected. This feature is useful when defining ACT Tables, then reusing only the Element types (not the Element names or descriptions) of the DIM Tables to define actual limits Tables. The local redefinition feature is subject to the following constraints: 1. A type can be Redefined any number of times. Redefinition of a type that has already been previously redefined elsewhere is possible. 2. New types based on Redefined types can be defined in the same TDL document that defines the referenced type. 3. Redefinition of a Replaced packed record is possible. 4. Redefinitions are processed after Replacements and Overrides.

      3.64 Register A device for use with a meter that indicates or records units of the delivered commodity or other quantity measured. Registers in End Devices are often spoken of according to the units involved, such as accumulation (energy, volume, mass), Demand, Time-of-use (TOU), instantaneous values or other(s) as appropriate. [New, portions adopted from ANSI C12.1-2001 and ANSI C12.19-1997]

      3.65 Register, Secured A Volatile Element whose transmitted value can be encoded by the End Device as a one-way hash in

      8

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      response to a Read Service request from an initiator. The purpose of the encoding is to detect whether the value transmitted was subsequently altered and to enable the receiver to verify the authenticity of the value in a manner that is independent from the transport protocol used. The Reading of a Secured Register may generate a Read Secured Register or Read Secured Table event within the End Device. [New]

      3.66 Replace The action whereby the older type definition shall be replaced by (i.e. mapped to) a new type definition. Any reference to the old definition shall resolve to the new definition. This feature enables one Standard to be derived from another Standard and for a manufacturers of End Devices to define (thus document) opaque fields that are defined by the referenced Standard and implemented in the End Device. The replacement feature is subject to the following constraints: 1. A referenced type can be Replaced only once in any one instance of an End Device TDL definition; therefore, Replacement of a type that has already been previously replaced elsewhere is not possible. 2. The Replaced type cannot be defined in the same TDL document that defines the original type. 3. Replaced types have identical Element Offsets and Indices as those of the referenced Elements; however they can expose additional detail to internal structure of Element that were otherwise opaque. 4. A Replaced type cannot be Overridden in the same TDL document. [New]

      3.67 Reserved Qualifier applied to one or more Elements or values indicating they are not available for use with this Standard. The use of a Reserved Element or value shall render an application non-compliant with this Standard. [New]

      3.68 Seal An item or process that has the purpose of providing marketplace integrity and confidence against End Device tampering and as such it has three main functions: (1) To secure an End Device so that access or changes to Metrological Adjustments and Sealable Parameters will be detectable. (2) To identify the date and organization which verified the End Device. This information is necessary for the administration and enforcement of legislation, for complaint or dispute investigation purposes, and also for seal period and seal extension purposes. (3) To act as a deterrent to the unauthorized access or changing of metrologically sensitive adjustments and Sealable Parameters. Seals may be implemented as Physical Seals and/or Logical Seals. [Adopted from Measurement Canada, 1999-07-26 Principles for Sealing Meters and Trade Devices]

      3.69 Seal, Physical A physical mechanism that is used to secure access to an End Device’s Metrological Adjustments and Sealable Parameters. [New]

      3.70 Seal, Logical (Event Loggable) A Seal that is comprised of firmware and software mechanisms that work together to secure access to an End Device’s Metrological Adjustments and Sealable Parameters. This Standard provides Event Log Tables for the management of Seals. [New]

      3.71 Sealable Parameter A Metrological Parameter that is secured or protected from alteration by a Seal. [New]

      3.72 Season A calendar-specified period used for activation of rate schedules. [ANSI C12.19-1997]

      3.73 Secured Read Reading of a Secured Register from an End Device that is capable of generating an End Device Secured Register event, and provided that this capability was enabled in the End Device. [New]

      3.74 Self Read A copy of Elements from one Table to another Table inside of an End Device, often at periodic intervals, triggered by an Event. [New]

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      9

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      3.75 SET A collection of Booleans, eight Booleans per Octet. Element. [New]

      Each Boolean member of the SET is a Final

      3.76 Signature Often referred to as a hash-code; an n-bit sequence that is generated using an algorithm on the content of an End Device Table or a group of End Device Tables. The resulting sequence of bits is truncated to a small number of bits (e.g., 128 bits). A good hash function will enable (a) detection of file (or table) content corruption (unauthorized change), and (b), authentication of the End Device Agent who created the file (or Table). [ANSI C12.19-1997]

      3.77 Strict In the context of declaration of type. When a type is created and the Replace, Redefine or the Override attribute is used and strictness is asserted (TRUE), then the search rule for the target type shall be strictly applied. A strict search requires that the implied or explicit target scope contains the Replaced, Redefined or Overridden type. A non-strict search requires that the implied or explicit target scope is where the search starts in the End Device TDL document scope hierarchy. This search is carried in such a manner that the first encounter of the target type within any of the parent scopes will be considered a match for the sought Replaced or Redefined type. [New]

      3.78 STRING An Atomic Array of characters Octets to be interpreted as characters dependent upon CHAR_FORMAT. See Section 6.1, “Character Set Selection”(CHARs). [New]

      3.79 Sub-element A subset of an Atomic Element, which is a single bit of a SET or a member of a BIT FIELD. [ANSI C12.19-1997]

      3.80 Table Functionally related utility application data Elements, grouped together into a single data structure for transport. [ANSI C12.19-1997]

      3.81 Table Definition Language (TDL) Syntax used for detailing the Standard’s or an End Device’s Table structure, defined types and constraints in a machine-readable format. The Table Definition Language is encoded using XML. [new]

      3.82 Table, Extended User-defined (EUDT) An extension on UDTs to add up to 2040 virtual Tables that can select from, or reference into, Standard Tables and Manufacturer Tables. Extended User-defined Tables shall not refer to, or select from, Extended User-defined Tables. [New]

      3.83 Table, User-defined (UDT) A Table whose Elements values that are derived from references (for writing) or Element values (for reading) into a temporary common area, which enables applications to make references to Tables and Table Elements that are present or implied to be present in an End Device.. The Elements gathered may then be retrieved, and the Elements referenced may be written, as if the Standard provided an explicit Table and descriptive syntax to express the resulting User-defined Table structure. [New]

      3.84 Table, Function Limiting Control (FLC) The first Table in each Decade. This Table specifies the limits designed into an End Device with respect to variables used within that Decade. [ANSI C12.19-1997]

      3.85 Table, Manufacturer A Table whose structure is defined by an individual End Device manufacturer. [New]

      3.86 Table, Metrological A Table that contains at least one Element that is also a Metrological Parameter. [New]

      3.87 Table, Pending Tables that have yet to be activated through conditions specified by the EVENT_CODE and trigger conditions in the EVENT_STORAGE_RCD in the Pending Event Description of the End Device. [New]

      10

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      3.88 Table, Program An End Device Table that contains setup, configuration or general product or record keeping information about the End Device. Programming Tables shall not contain sensory information, End Device state information or End Device logs that are volatile and change in the normal course of operation of the End Device. [New]

      3.89 Table, Standard A Table whose structure is defined by this Standard. [New]

      3.90 Table, Secured A Table that contains Secured Registers. [New]

      3.91 Tariff A published list of rate schedules and terms and conditions. [ANSI C12.19-1997]

      3.92 Tier A consumption-based or time-based rate range for the commodity. [New]

      3.93 Time-Of-Use (TOU) Metering The use of metering equipment to separately record metered or measured quantities according to a time schedule. [ANSI C12.19-1997]

      3.94 Undefined Qualifier applied to one or more Elements or values that is not defined by this Standard. The use of an Undefined Element or value shall not affect compliance with this Standard; however, the outcome is indeterminate. [New]

      3.95 Utility A provider of electricity, gas, water, telecommunications or related services to a community. [ANSI C12.19-1997]

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      11

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      4 General 4.1 Standard Tables Standard Tables are those whose structures are specified by this Standard. They should be used for both End Device programming and reading. The Tables provide control Tables as well as data Tables for a wide variety of functions to be implemented in addition to those presently defined. This Standard provides for a total of 2040 Standard Tables, although not all are defined. 4.1.1

      Standard Tables Grouping

      The Standard Tables are grouped together in Decades, with each Decade covering a general area of functionality. The first Table of each Decade, beginning with the tens Decade, is referred to as a Function Limiting Control (FLC) Table. The purpose of the FLC Table is to specify the designed DIMENSION (DIM) limits (maximum limits) for variables used within the Decade for the End Device. If present, the Table immediately following an FLC table is called the FLC+1 Table. The FLC+1 Table defines the ACTUAL (ACT) limits used for variables in the current configuration of the End Device. If the FLC+1 Table is not present, the ACTUAL (ACT) limits are identical to the designed DIMENSION (DIM) limits specified in the FLC Table. If the FLC and FLC+1 Tables are not used in a Decade, then the limits are defined by a default set of values. The default sets for a particular Decade are defined within this Standard in Annex C, “Default Sets for Decade Tables”. Possible combinations of FLC, FLC+1 and Decade Tables are defined in Figure 4.1.

      A B C D E F G H

      FLC Table

      FLC+1 Table

      FLC+N Table

      Where ACT Values Are Found

      Not Used Not Used Not Used Not Used Used Used Used Used

      Not Used Not Used Used Used Not Used Not Used Used Used

      Not Used Used Not Used Used Not Used Used Not Used Used

      None - Decade not used Default set, per Standard Decade FLC+1 Table** Decade FLC+1 Table Decade FLC Table** Decade FLC Table Decade FLC+1 Table** Decade FLC+1 Table

      ** Not recommended practice.

      Figure 4.1 – Possible Combinations of FLC, FLC+1, and Decade Tables 4.1.2

      Standard Tables Properties

      All Standard Tables assume a set of properties that are defined by this Standard. Listed below are the Tables’ default properties to be assumed when not explicitly qualified by this Standard. The default Table properties are shown in the Figure below: Table Property* name number label type role

      12

      Global Default Table Property Value FLC+1 Table FLC+n Table (n>1)

      Required

      FLC Table

      Yes Yes No Yes No

      TABLE name

      Table name

      Table name

      “LIMITING”

      “ACTUAL”

      “UNDEFINED”

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Global Default Table Property Value FLC+1 Table FLC+n Table (n>1)

      Table Property* associate

      Required

      FLC Table

      No

      atomic accessibility deprecated metrological volatile** class***

      No No No No No No

      Scope of the Decade where defined “false” “READONLY” “false” “false” “AUTO_AS_PER_ROLE” “STD”

      Scope of the Decade where defined “false” “READWRITE” “false” “false” “AUTO_AS_PER_ROLE” “STD”

      Scope of the Decade where defined “false” “READWRITE” “false” “false” “AUTO_AS_PER_ROLE” “STD”

      * For more information see Annex J.2.25, “
      Element (Child of or )”. ** When the volatile attribute is set to “AUTO_AS_PER_ROLE” then the values shall be assumed for Table volatility base on their assumed role as follows: role = “UNDEFINED” implies volatility is “true”. role = “LIMITING” implies volatility is “false”. role = “ACTUAL” implies volatility is “false”. role = “CONTROL” implies volatility is “false”. role = “DATA” implies volatility is “true”. role = “PRIVATE” implies volatility is “true”.. *** A tag that identifies an application run-time class (module) that should be used to manage this Table. Standard classes defined are STD.UDT, STD.EUDT and STD.

      Figure 4.2 – Default Standard Tables Properties 4.1.3

      Standard Procedure Properties

      All Standard Procedures (Table 7, Table 8 and procedures defined within) assume a set of properties that are defined by this Standard. Listed below are the default properties to be assumed when not explicitly qualified by this Standard. The default Procedure properties are shown in the Figure below: Procedure Property* name number label type role associate

      Required

      atomic accessibility deprecated metrological volatile class target

      No No No No No No Yes

      strict

      No

      Yes Yes No Yes No No

      Global Default Procedure Property Value Table 7 / Procedure Request Table 8 / Procedure Response

      TABLE name / Procedure Name

      TABLE name / Procedure Name

      “CONTROL” Scope of Procedure where defined then PROC_INITIATE_TBL. STD_PARM_RCD then its parents’ scope. “true” “READWRITE” “false” “false” “AUTO_AS_PER_ROLE” “STD” Not Applicable / “PROC_INITIATE_TBL. STD_PARM_RCD” Not applicable / “true”

      “DATA” Scope of Procedure where defined then PROC_RESPONSE_TBL. STD_RESP_RCD then its parents’ scope. “true” “READONLY” “false” “false” “AUTO_AS_PER_ROLE” “STD” Not Applicable / “PROC_RESPONSE_TBL. STD_RESP_RCD” Not applicable / “true”

      * For more information see Annex J.2.26, “ Element (Child of or )”.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      13

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Figure 4.3 – Default Standard Tables 7,8 and Procedures Properties

      4.2 Manufacturer Tables Manufacturer Tables are those structures specified by individual End Device vendors. They should be used to introduce innovations or to provide customer-requested data structures that are not defined by this Standard. It is noted that the Standard also provides for the latter to be accomplished in a limited manner through user-defined Tables (Decade 8) and extended user-defined Tables (Decade 14). Manufacturer Tables also provide a path for new functions to evolve into a Standard Table. 4.2.1

      Manufacturer Tables Grouping

      This Standard provides access for a total of 2040 Manufacturer Tables. When Manufacturer Tables may introduce new Decades, then the implementation guidance enumerated in Figure 4.1 shall be followed. When Manufacturer Tables are introduced singly (i.e., as FLC+N Tables), they shall be associated with an existing Decade. More details are found in Annex J.2, “TDL XML File Format of the TDL Document” and more specifically see the associate attribute described in Annex J.2.25, “
      Element (Child of or )”. 4.2.2

      Manufacturer Tables Properties

      All Manufacturer Tables assume a set of properties that are defined by this Standard. Listed below are the Tables’ default properties to be assumed when not explicitly qualified by the manufacturer’s TDL. The default Manufacturer Table properties are shown in the Figure below: Mfg Table Property* name number label type role associate

      Required

      atomic accessibility deprecated metrological volatile Class*

      No No No No No No

      Yes Yes No Yes No No

      Global Default Table Property Value

      Table name “UNDEFINED” Scope of the TDL or Decade where defined “false” “READWRITE” “false” “false” “AUTO_AS_PER_ROLE” “STD”

      * A tag that identifies an application run-time class (module) that should be used to manage this Manufacturer Table. STD signifies that the Standards Table-read and Table-write and TDL rules apply, with no additional assumptions for interpretation. Other predefined algorithms are STD.UDT and STD.EUDT.

      Figure 4.4 – Default Manufacturer Tables Properties 4.2.3

      Manufacturer Procedure Properties

      All Manufacturer Procedures share, buy default, a set of properties that are defined by this Standard. Listed below are the default properties to be assumed when not explicitly qualified by the Manufacturer’s TDL. The default Procedure properties are shown in the Figure below:

      14

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      Procedure Property name number label extend role associate

      Required

      atomic accessibility deprecated metrological volatile class target

      No No No No No No Yes

      strict

      No

      Yes Yes No Yes No No

      ANSI

      Global Default Procedure Property Value MFG Procedure Request MFG Procedure Response

      Procedure Name

      Procedure Name

      “CONTROL” Scope of Procedure where defined then PROC_INITIATE_TBL. MFG_PARM_RCD then its parents’ scope. “true” “READWRITE” “false” “false” “AUTO_AS_PER_ROLE” “STD” “PROC_INITIATE_TBL. MFG_PARM_RCD” “true”

      “DATA” Scope of Procedure where defined then PROC_RESPONSE_TBL. MFG_RESP_RCD then its parents’ scope. “true” “READWRITE” “false” “false” “AUTO_AS_PER_ROLE” “STD” “PROC_RESPONSE_TBL. MFG_RESP_RCD” “true”

      Figure 4.5 – Default Manufacturer Procedures Properties

      4.3 Packed Record, Bit Field and Element Properties Packed Records, Bit Fields and the contained Element definitions also have default properties. These default properties are fully described in Annex J, “XML File Format of TDL and EDL Files”.

      4.4 Extended User-defined Tables Properties Extended User-defined Tables default properties are identical to the properties shown in Section 4.1.2, “Standard Tables properties”, except for the class=“STD.EUDT”. The class “STD.EUDT” invokes the Standard’s processing requirements for Extended User-defined Tables.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      15

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      5 Syntax 5.1 Descriptive syntax Describing data definitions is usually accomplished within the confines of a given language and the grammar rules of that language. Since the data-definitions embodied within this document are meant to be independent of a specific language and capable of being implemented within the confines of any language, a method for describing the data definitions has been adopted. The descriptive syntax is expressed using the Extended BNF definitions defined in Annex H, "Document-form Descriptive Syntax”. The definition syntax is a merge between the traditional Backus Naur Format and XML simple BNF as described in http://www.w3.org/TR/2000/REC-xml-20001006 Extensible Markup Language (XML) 1.0, Second Edition, with extensions that facilitate the binding of production rules needed for the definition of the published pseudo PASCAL text (Section 9.0) and the machine readable XML based TDL. In addition, the Extended BNF syntax provides definitions for constraints on binary transmission and interpretation of types.

      6 Special Data Types In order to add flexibility to the definition of some of the data types used within the tables, special data types are provided. Their definition, once selected within the GEN_CONFIG_TBL (Table 00), remains consistent throughout all of the remaining used tables. In this section we use italicized text to refer to the ‘BNF’.LHS of a construction elements that shall used to define the encoding used to transmit the special data type. All special data types, just like built-in types, are Atomic.

      6.1 Character Set Selection This selection is used to determine the encoding of characters that are used in the Tables. GEN_CONFIG_TBL.FORMAT_CONTROL_1.CHAR_FORMAT is the controlling selector for the encoding of CHAR, STRING, FLOAT_CHAR6, FLOAT_CHAR12 and FLOAT_CHAR21. Value of CHAR_FORMAT

      16

      Definition of encoding

      0

      Reserved.

      1

      ISO 7-bit coded ISO646, a fixed-width encoding using an 8-bit as its base unit for length calculations and UINT8 as the base unit for transmission.

      2

      ISO 8-bit coded character as per ISO8859, a fixed-width encoding using an 8-bit as its base unit for length calculations and UINT8 as the base unit for transmission.

      3

      UTF-8 as per utf8., variable-width encoding using an 8bit as its base unit for length calculations and UINT8 as the base unit for transmission. This type maximizes compatibility with CHAR_FORMATs 1 and 2.

      4

      UTF-16 as per utf16, a variable-width encoding using an 16-bit as its base unit for length calculations and UINT16 as the base unit for transmission.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      5

      UTF-32 as per utf32, a variable-width encoding using a 32-bit as its base unit for length calculations and UINT32 as the base unit for transmission.

      6..7

      Reserved.

      6.2 Non-integer Formats This selection is used to determine the structure of non-integer numbers used in the Tables. The Table Elements GEN_CONFIG_TBL.FORMAT_CONTROL_3.NI_FORMAT1 and GEN_CONFIG_TBL. FORMAT_CONTROL_3.NI_FORMAT2 are the controlling selectors for the built-in types NI_FMAT1 and NI_FMAT2. They provide the final associations between anyFloat non-integer data types and the actual atomic encoding used to transmit NI_FMAT1 and NI_FMAT2 data items as defined below. Value of NI_FORMAT1 (or NI_FORMAT2)

      6.2.1

      Definition of NI_FMAT1 (or NI_FMAT2)

      0

      FLOAT64

      1

      FLOAT32

      2

      FLOAT_CHAR12 (A STRING Number)

      3

      FLOAT_CHAR6 (A STRING Number)

      4

      INT32 (Implied decimal point between fourth and fifth digits from least significant digit. For example 0.0001 is represented as 1)

      5

      FIXED_BCD6

      6

      FIXED_BCD4

      7

      INT24

      8

      INT32

      9

      INT40

      10

      INT48

      11

      INT64

      12

      FIXED_BCD8

      13

      FLOAT_CHAR21 (A STRING Number)

      14..15

      Reserved

      STRING Numbers

      When STRING is used and GEN_CONFIG_TBL.FORMAT_CONTROL_3.NI_FORMAT1 or GEN_CONFIG_TBL.FORMAT_CONTROL_3.NI_FORMAT2 has a value of 2 or 3, the number shall be represented according to floatingPointStringNumber. For example when the non-integer number, NI_FMAT1, encoding maps to a FLOAT_CHAR6 and GEN_CONFIG_TBL.FORMAT_CONTROL_1. CHAR_FORMAT equals to four (4) then the total number of octets transmitted shall be twelve (12), and

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      17

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      these shall be encoded for transmission as an array of six (6) pairs of UINT16, where the anyNumber portion of the floatingPointStringNumber shall be placed at lower array indices than stringExponent. A STRING number (floatingPointStringNumber) representation can have any number of leading spaces; followed by an optional plus or minus sign; followed by a mandatory one or more digits; followed by an optional period and zero or more digits; followed by an optional exponent. An exponent is composed of the letter “E”, “e”; followed by an optional plus or minus sign; followed by a mandatory one or more digits. Any number of spaces can lead or follow the floatingPointStringNumber, but spaces shall not be embedded within. This format ensures that clear identification of any floatingPointStringNumber is possible in a stream (sequence) of floatingPointStringNumber+, using the space character as a separator. Examples: Valid production based on floatingPointStringNumber ‘+1.0E-7’ ‘123.6478e+03’ ‘1.2345’ ‘-1.e3’ ‘e3’ Invalid production based on floatingPointStringNumber ‘.5’ ‘1.0E-3’ ‘e+03’

      6.3 Date and Time Formats This selection is used to determine the structure of dates and times used in the tables. The Element GEN_CONFIG_TBL.FORMAT_CONTROL_2.TM_FORMAT is the controlling selector for HTIME_DATE, LTIME_DATE, STIME_DATE, TIME, STIME and HTIME. In general TM_FORMAT

      Data type used

      0

      No clock in the End Device.

      1

      BCD with discrete fields for year, month, day, hour, minute seconds and fractional seconds.

      2

      UINT8 with discrete fields for year, month, day, hour, minute seconds and fractional seconds.

      3

      UINT32 counters relative to a date and time as referenced by either CLOCK_TBL (Table 52) or CLOCK_STATE_TBL (Table 55), with discrete fields for minutes and fraction of a minute.

      4

      UINT32 counters relative to a date and time as referenced by either CLOCK_TBL (Table 52) or CLOCK_STATE_TBL (Table 55) ), with discrete fields for seconds and fraction of a second.

      5..7

      Reserved.

      The date and time structures are described next as packed records, but are transmitted as Atomic Table Elements.

      18

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 6.3.1

      ANSI

      HTIME_DATE, LTIME_DATE, STIME_DATE, TIME, STIME, HTIME types

      TYPE HTIME_DATE_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0 : NIL : NIL; CASE 1 : YEAR : BCD; MONTH : BCD; DAY : BCD; HOUR : BCD; MINUTE : BCD; SECOND : BCD; BCD_SEC_FRACTION : BCD(3); CASE 2 : YEAR : UINT8; MONTH : UINT8; DAY : UINT8; HOUR : UINT8; MINUTE : UINT8; SECOND : UINT8; UINT_SEC_FRACTION: UINT24; CASE 3 : U_TIME : UINT32; SECOND : UINT8; UINT_SEC_FRACTION: UINT24; CASE 4 : U_TIME_SEC : UINT32; U_SEC_FRACTION : UINT32; END; END; TYPE LTIME_DATE_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0 : NIL : NIL; CASE 1 : YEAR : BCD; MONTH : BCD; DAY : BCD; HOUR : BCD; MINUTE : BCD; SECOND : BCD; CASE 2 : YEAR : UINT8; MONTH : UINT8; DAY : UINT8; HOUR : UINT8; MINUTE : UINT8; SECOND : UINT8; CASE 3 : U_TIME : UINT32; SECOND : UINT8 CASE 4 : U_TIME_SEC : UINT32; END; END; TYPE STIME_DATE_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0 : NIL : NIL; CASE 1 : YEAR : BCD; MONTH : BCD; DAY : BCD; HOUR : BCD; MINUTE : BCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      19

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      CASE 2 :

      CASE 3 : CASE 4 :

      YEAR MONTH DAY HOUR MINUTE U_TIME U_TIME_SEC

      : UINT8; : UINT8; : UINT8; : UINT8; : UINT8; : UINT32; : UINT32;

      END; END; TYPE HTIME_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0 : NIL : NIL; CASE 1 : HOUR : BCD; MINUTE : BCD; SECOND : BCD; BCD_SEC_FRACTION : BCD(3); CASE 2 : HOUR : UINT8; MINUTE : UINT8; SECOND : UINT8; UINT_SEC_FRACTION: UINT24; CASE 3 : D_TIME : UINT32; U_SEC_FRACTION : UINT32; CASE 4 : D_TIME : UINT32; U_SEC_FRACTION : UINT32; END; END; TYPE TIME_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0 : NIL : NIL; CASE 1 : HOUR : BCD; MINUTE : BCD; SECOND : BCD; CASE 2 : HOUR : UINT8; MINUTE : UINT8; SECOND : UINT8; CASE 3 : D_TIME : UINT32; CASE 4 : D_TIME : UINT32; END; END; TYPE STIME_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0 : NIL : NIL; CASE 1 : HOUR : BCD; MINUTE : BCD; CASE 2 : HOUR : UINT8; MINUTE : UINT8; CASE 3 : D_TIME : UINT32; CASE 4 : D_TIME : UINT32; END; END;

      20

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 Identifier

      Value

      HTIME_DATE_RCD

      ANSI

      Definition High-precision (sub-second) timestamp. This is the prototype definition of the built-in type HTIME_DATE.

      YEAR

      00..89 90..99 > 100

      Years 2000..2089. Years 1990..1999. Reserved.

      MONTH

      0 1..12 > 12

      Reserved. Month of year. Reserved.

      DAY

      0 1..31 > 31

      Unassigned. Day of month. Reserved.

      HOUR

      00..23 > 23

      Hour of day, 24 hour basis. Reserved.

      MINUTE

      00..59 > 59

      Minute of hour. Reserved.

      SECOND

      00..59 > 59

      Seconds of minute. Reserved.

      BCD_SEC_FRACTION

      0..999999

      The sub-minute portion of SECOND expressed in units of 1 / 1000000 of a second.

      UINT_SEC_FRACTION

      0..16777215

      The sub-minute portion of SECOND expressed in units of 1 / 16777216 of a second.

      U_TIME

      0.. 4294967295 Time in minutes since 01/01/1970 @ 00:00:00 GMT.

      U_TIME_SEC

      0..4294967295 Time in seconds since 01/01/1970 @ 00:00:00 GMT.

      U_SEC_FRACTION

      0..4294967295 The sub-second portion of U_TIME_SEC expressed in units of 1 / 4294967296 of a second.

      LTIME_DATE_RCD

      Normal-precision (seconds) timestamp. This is the prototype definition of the built-in type LTIME_DATE.

      YEAR

      00..89 90..99 > 100

      Years 2000..2089. Years 1990..1999. Reserved.

      MONTH

      0 1..12 > 12

      Reserved. Month of year. Reserved.

      DAY

      0 1..31

      Unassigned. Day of month.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      21

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que > 31

      Reserved.

      HOUR

      00..23 > 23

      Hour of day, 24 hour basis. Reserved.

      MINUTE

      00..59 > 59

      Minute of hour. Reserved.

      SECOND

      00..59 > 59

      Seconds of minute. Reserved.

      U_TIME

      0.. 4294967295 Time in minutes since 01/01/1970 @ 00:00:00 GMT.

      U_TIME_SEC

      0..4294967295 Time in seconds since 01/01/1970 @ 00:00:00 GMT.

      STIME_DATE_RCD

      Low-precision (minutes) timestamp. This is the prototype definition of the built-in type STIME_DATE.

      YEAR

      00..89 90..99 > 100

      Years 2000..2089. Years 1990..1999. Reserved.

      MONTH

      0 1..12 > 12

      Reserved. Month of year. Reserved.

      DAY

      0 1..31 > 31

      Unassigned. Day of month. Reserved.

      HOUR

      00..23 > 23

      Hour of day, 24 hour basis. Reserved.

      MINUTE

      00..59 > 59

      Minute of hour. Reserved.

      U_TIME

      0.. 4294967295 Time in minutes since 01/01/1970 @ 00:00:00 GMT.

      HTIME_RCD

      22

      High-precision (sub-second) time interval or localized time. This is the prototype definition of the built-in type HTIME.

      HOUR

      00..23 > 23

      Hour of day, 24 hour basis. Reserved.

      MINUTE

      00..59 > 59

      Minute of hour. Reserved.

      SECOND

      00..59 > 59

      Seconds of minute. Reserved.

      BCD_SEC_FRACTION

      0..999999

      The sub-minute portion of SECOND expressed in units of 1 / 1000000 of a second.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 UINT_SEC_FRACTION

      0..16777215

      D_TIME

      0.. 4294967295 Time in seconds since 00:00:00 localized time.

      U_SEC_FRACTION

      0..4294967295 The sub-second portion of D_TIME expressed in units of 1 / 4294967296 of a second.

      TIME_RCD

      The sub-minute portion of SECOND expressed in units of 1 / 16777216 of a second.

      Normal-precision (seconds) time interval or localized time. This is the prototype definition of the built-in type TIME.

      HOUR

      00..23 > 23

      Hour of day, 24 hour basis. Reserved.

      MINUTE

      00..59 > 59

      Minute of hour. Reserved.

      SECOND

      00..59 > 59

      Seconds of minute. Reserved.

      D_TIME

      0.. 4294967295 Time in seconds since 00:00:00 localized time.

      STIME_RCD

      6.3.2

      ANSI

      Low-precision (minutes) time interval or localized time. This is the prototype definition of the built-in type STIME.

      HOUR

      00..23 > 23

      Hour of day, 24 hour basis. Reserved.

      MINUTE

      00..59 > 59

      Minute of hour. Reserved.

      D_TIME

      0.. 4294967295 Time in seconds since 00:00:00 localized time.

      RDATE type

      This type defines a recurrent date. This recurrence can be yearly, monthly, or weekly, based on a constant cycle of days or minutes. TYPE RDATE_BFLD = BIT FIELD OF UINT16 MONTH : UINT(0..3); SWITCH MONTH OF CASE 0 : PERIOD_IN_MINUTES : CASE 1..13 : OFFSET WEEKDAY DAY CASE 14 : FILLER1 WEEKDAY FILLER2 CASE 15 : PERIOD_IN_DAYS DELTA

      : UNIT(4..15); : UINT(4..7); : UINT(8..10); : UINT(11..15); : FILL(4..7); : UINT(8..10); : FILL(11..15); : UINT(4..9); : UINT(10..15);

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      23

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END; END; Identifier

      Value

      RDATE_BFLD MONTH

      This is the prototype definition of the built-in type RDATE. 0 1..12 13 14 15

      OFFSET

      0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

      6.3.3

      Definition

      Action is repeated each PERIOD_IN_MINS. The starting date and time shall be supplied separately. Month of year Action is repeated monthly Action is repeated weekly Action is repeated each PERIOD_IN_DAYS referenced by an ANCHOR_DATE plus DELTA. The ANCHOR_DATE shall be supplied separately. No offset Advance to WEEKDAY before date entered. Postpone to the first WEEKDAY on or after date entered. Postpone to the second WEEKDAY on or after date entered. Postpone to the third WEEKDAY on or after date entered. Postpone to the fourth WEEKDAY on or after date entered. Postpone to the last WEEKDAY of the MONTH on or after date entered. Observe on date entered as well as day following date entered. Postpone to Monday if Sunday. Advance to Friday if Sunday. Postpone to Monday if Saturday. Advance to Friday if Saturday. Postpone to Monday if Sunday or Saturday. Advance to Friday if Sunday or Saturday. Postpone to Monday if Sunday, advance to Friday if Saturday. Do not observe date entered. Observe on day following date entered.

      WEEKDAY

      0..6 7

      Sunday to Saturday. Reserved.

      PERIOD_IN_MINS

      0..4095

      0 to 4095 minutes (or 68 hours).

      PERIOD_IN_DAYS

      0..63

      0 to 63 days.

      DELTA

      0..63

      0 to 63 days.

      DATE Type

      This type defines a non recurrent date in the localized time using a field having the same size as the

      24

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      recurrent date type "RDATE". TYPE DATE_BFLD = BIT FIELD OF UINT16 YEAR : UINT(0..6); MONTH : UINT(7..10); DAY : UINT(11..15); END; Identifier

      Value

      Definition

      YEAR

      00..89 90..99 > 100

      This is the prototype definition of the built-in type DATE. Years 2000..2089. Years 1990..1999. Reserved.

      MONTH

      0 1..12 > 12

      Reserved. Month of year. Reserved.

      DAY

      0 1-31

      Reserved. Day of month.

      DATE_BFLD

      6.4 Common table or procedure identifier formats These types are provided to ease the specification of table access parameters and provide consistent specification of these table access parameters throughout the document. 6.4.1

      TABLE_IDA_BFLD bit field

      Type TABLE_IDA_BFLD provides the table or procedure number; a flag indicating standard or manufacturer table or procedure; a flag indicating pending status; a flag indicating extended user defined table and two additional fields for definition and use within the defining data structure. When the EUDT_FLAG flag is set then STD_VS_MFG_FLAG shall be set to zero. TYPE TABLE_IDA_BFLD = BIT FIELD OF UINT16 TBL_PROC_NBR : UINT(0..10); STD_VS_MFG_FLAG : BOOL(11); PENDING_FLAG : BOOL(12); EUDT_FLAG : BOOL(13); FLAG2 : BOOL(14); FLAG3 : BOOL(15); END; Identifier

      Value

      Definition

      TABLE_IDA_BFLD TBL_PROC_NBR

      0..203947

      Table number or Procedure number selected or identified.

      FALSE

      The Table or Procedure selected or identified by TBL_PROC_NBR is defined by this standard. The Table or Procedure selected or identified by TBL_PROC_NBR is defined by the End Device manufacturer.

      STD_VS_MFG_FLAG

      TRUE

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      25

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      PENDING_FLAG

      FALSE TRUE

      EUDT_FLAG

      FALSE

      TRUE

      FLAG1

      The entity selected or identified by TBL_PROC_NBR shall be an instance of a Table within the End Device. This table shall be listed in one of the sets GEN_CONFIG_TBL.STD_TBLS_USED or GEN_CONFIG_TBL.MFG_TBLS_USED. The entity selected or identified by TBL_PROC_NBR shall be an instance of an extended user defined Table of the End Device.

      FALSE TRUE

      General purpose flag to be Redefined where used. As defined where used. As defined where used.

      FALSE TRUE

      General purpose flag to be Redefined where used. As defined where used. As defined where used.

      FLAG2

      6.4.2

      The Table or Procedure selected or identified by TBL_PROC_NBR is an active instance of a Table or Procedure of the End Device. The Table or Procedure selected or identified by TBL_PROC_NBR is an pending (deferred) instance of a Table or Procedure of the End Device.

      TABLE_IDB_BFLD bit field

      Type TABLE_IDB_BFLD provides the table or procedure number; a flag indicating standard or manufacturer table or procedure; and a four bit unsigned integer for definition and use within the defining data structure. TYPE TABLE_IDB_BFLD = bIT BIT FIELD OF UINT16 TBL_PROC_NBR : UINT(0..10); STD_VS_MFG_FLAG : BOOL(11); SELECTOR : UINT(12..15); END; Identifier

      Value

      Definition

      TABLE_IDB_BFLD TBL_PROC_NBR

      0..203947

      Table number or Procedure number selected or identified. This reference number shall be to an active Table or Procedure of the End Device. i.e. it shall not reference a pending Table, pending Procedure or extended user defined Table.

      FALSE

      The Table or Procedure selected or identified by TBL_PROC_NBR is defined by this standard. The Table or Procedure selected or identified by TBL_PROC_NBR is defined by the End Device manufacturer.

      STD_VS_MFG_FLAG

      TRUE

      26

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 SELECTOR

      6.4.3

      0..15

      ANSI

      A general purpose selector that is encoded as an enumerated Sub-element which shall be Redefined where used.

      TABLE_IDC_BFLD bit field

      Type TABLE_IDC_BFLD provides the table or procedure number; a flag indicating standard or manufacturer; a flag indicating table or procedure; and three additional fields for definition and use within the defining data structure. TYPE TABLE_IDC_BFLD = BIT FIELD OF UINT16 TBL_PROC_NBR : UINT(0..10); STD_VS_MFG_FLAG : BOOL(11); PROC_FLAG : BOOL(12); FLAG1 : BOOL(13); FLAG2 : BOOL(14); FLAG3 : BOOL(15); END; Identifier

      Value

      Definition

      TABLE_IDC_BFLD TBL_PROC_NBR

      0..203947

      Table number or Procedure number selected or identified. This reference number shall be to an active Table or Procedure of the End Device. i.e. it shall not reference a pending Table, pending Procedure or extended user defined Table.

      FALSE TRUE

      The Table or Procedure selected or identified by TBL_PROC_NBR is defined by this standard. The Table or Procedure selected or identified by TBL_PROC_NBR is defined by the End Device manufacturer.

      FALSE TRUE

      The TBL_PROC_NBR is a table number. The TBL_PROC_NBR is a procedure number

      FALSE TRUE

      General purpose flag to be Redefined where used. As defined where used. As defined where used.

      FALSE TRUE

      General purpose flag to be Redefined where used. As defined where used. As defined where used.

      FALSE TRUE

      General purpose flag to be Redefined where used. As defined where used. As defined where used.

      STD_VS_MFG_FLAG

      PROC_FLAG FLAG1

      FLAG2

      FLAG3

      6.4.4

      SOURCE_SEL_RCD bit field

      Type SOURCE_SEL_RCD provides a data source selection index and related qualifiers that describe the

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      27

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      data source completely and unambiguously used in selections of data sources in control areas. This data type is used each time a measurement needs to be selected as source defined either in Decade 1 or Decade 10. The uses of both source decades are mutually exclusive according to the value set for MODEL_SELECT Element of General Configuration Table (Table 0). Decade 1 shall be used when MODEL_SELECT is set to 0 and Decade 10 when MODEL_SELECT is set to 1. TYPE SOURCE_QUALIFIER_BFLD = BIT FIELD OF UINT8 QUALIFIER : UINT(0..3); ACCOUNTABILITY : UINT(4..7); END; TYPE SOURCE_SELECT_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.MODEL_SELECT OF CASE 0 : SOURCE_INDEX : UINT8; CASE 1 : SOURCE_INDEX : UINT16; SOURCE_QUALIFIER : SOURCE_QUALIFIER_BFLD; END; END; Identifier SOURCE_QUALIFIER_BFLD QUALIFIER

      ACCOUNTABILITY

      Value

      Definition

      0 1 2 3 4 5 6 7 8 9 10 11 12 13

      Further qualify the selected measurement Summation Consumption Instantaneous value Minimum instantaneous value Maximum instantaneous value Average instantaneous value Period based value Minimum period based value Maximum period based value Average period based value Demand Minimum demand Maximum demand Average demand

      0 1 2 3 4 5 6 7 8 9

      SOURCE_SELECT_RCD SOURCE_INDEX

      28

      Delivered - received (All quadrants) Delivered + received (All quadrants) Delivered (Quadrant 1 and 4 for (Quadrant 1 and 2 for Reactive Received (Quadrant 2 and 3 for (Quadrant 3 and 4 for Reactive Quadrant 1 and 3 Quadrant 2 and 4 Quadrant 1 only Quadrant 2 only Quadrant 3 only Quadrant 4 only

      Energy, energy) Energy, energy)

      When MODEL_SELECT is set to 0, this index selects a source defined in decade 1. Indexes into each decade 1 tables are based on the content of the Source Definition Table (Table

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      16). When MODEL_SELECT is set to 1, this index selects a source defined in the Source Information Table (Table 102). SOURCE_QUALIFIER

      See SOURCE_QUALIFIER_BFLD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      29

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      7 Compliance & Compatibility 7.1 Compliance An End Device is considered to be in compliance with this Standard if all of the following conditions are met: a

      Two-way communicating End Devices shall accept and act upon all services defined in Section 8.0, Table Transportation Issues.

      b

      The DEVICE_CLASS field in GEN_CONFIG_TBL (Table 00) shall contain a relative universal object identifier relative to the End Device class registered root context.

      c

      Two-way communicating End Devices shall transmit GEN_CONFIG_TBL (Table 00) on request.

      d

      One-way communicating End Devices shall include the DEVICE_CLASS field in each of their transmissions. In addition, these End Devices shall be registered using the TDL file format. This file shall contain the definition of the corresponding Table 00 and any other Tables necessary to understand all possible valid unsolicited messages.

      e

      Any Table transported between an End Device and any other device shall be either a Standard Table as defined by this Standard or a Manufacturer Table defined by the End Device manufacturer. All Standard and Manufacturer Tables supported for the current End Device implementation shall be specified in GEN_CONFIG_TBL (Table 00). A Table shall be considered to be supported if and only if it is specified in GEN_CONFIG_TBL (Table 00).

      f

      Any procedure written to the End Device shall be either a procedure as defined by this Standard or a manufacturer procedure defined by the device manufacturer. All standard and manufacturer procedures supported for the current End Device implementation shall be specified in GEN_CONFIG_TBL (Table 00).

      g

      Some Standard Tables contain data structures that can be collapsed by a control flag. The control flag shall be determinable based on this Standard. Collapsed Elements shall not be transported. An array of zero (0) Elements is a collapsed Element.

      h

      An End Device is not required to use every data structure within a Table; however, it shall transport all non-collapsed data structures within a Table. Unused fields are considered in compliance if byte Count and format are correct and if manufacturers identify unused fields. It is recommended that unused fields be filled with zeros or spaces.

      i

      This Standard specifies variable formats for some data structures. The variable formats shall be consistent with the format as specified in GEN_CONFIG_TBL (Table 00). Refer to Section 5, “Syntax,” and Section 6, “Special Data Types,” for details.

      j

      Function Limiting Tables (FLC) and Actual Function Limiting Tables (FLC+1) specify the designed and usable limits for variables used within a given Decade. The permissible combinations of these Tables are listed in Figure 4.1.

      7.2 Backward and Forward Compatibility Any future revision of this Standard shall be backward compatible with the previous two (2) revisions of the Standard according to the governing Standard's revision cycle requirement. It is recommended that new implementations of the Standard avoid using Deprecated Elements and attributes whenever practical. Forward compatibility is not assured as Deprecated Elements may become obsolete in future versions of the Standard or End Device.

      30

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Element extensions to the tail end of the Tables of the previous versions of this Standard are defined in a manner that does not change the structure of the Tables Elements defined by the previous Standard version. Also, when Element fields were modified, the changes do not impact on the interoperation of those Elements according to the previous Standard version.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      31

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      8 Table Transportation Issues The effective transport of Table structures is dependent only on the presence of basic Read and Write services (e.g., those as defined in ANSI C12.18, ANSI C12.21 and ANSI C12.22). While the marketplace may dictate the incorporation of more sophisticated services, it is left to the implementers of specific protocol stacks to select the specific Read and Write services to be included.

      8.1 Minimum Services and Parameters 8.1.1

      Read Service

      The Read Service causes the transfer of data from the initiating device to the target device and is required for two-way communications. Read Service Request

      Identifier

      The Read Service Request shall be capable of both a complete and a partial Table read. This is accomplished by one required parameter and optional parameters. The required parameter is a Table Identifier. Optional parameters define partial Table retrieval. Value

      Table Identifier

      Definition This parameter has a range of 0 to 65535 and is further subdivided.

      0..2039

      Provides access to Standard Tables 00 to 2039.

      2048..4087

      Provides access to Manufacturer Tables 00 to 2039.

      4096..6135

      Provides access to Standard Pending Tables 00 to 2039.

      6144-8183

      Provides access to Tables 00 to 2039.

      8192..10231

      Provides access to User-defined Tables 00 to 2039.

      12288..14327

      Provides access to User-defined Pending Tables 00 to 2039.

      Manufacturer

      Pending

      All others values are Reserved. The maximum number of Decades supported is 204 (10 Tables per Decade) resulting in the Standard supporting a maximum of 2040 tables in each of the Standard, Standard Pending, Manufacturer, and Manufacturer Pending groups of Tables. The User-defined Tables do not use the Decade structure since they represent a sequential set of views of selections from other Tables.

      32

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Partial Table Retrieval

      The retrieval of a portion of a Table, a partial Table, is possible through the use of one of two methods, the index/element count method and offset/octet count method. The absence of either of these methods implies the entire Table shall be read.

      Index/Element-Count Method

      The index/element-count method is based upon accommodating a minimum of five (5) indices relative to the beginning of the Table data structure, and optionally a count of the number of elements to read starting at that index. Each index shall range from zero (0) to a maximum of 65535. The range of the count of the number of elements read from that index point is zero (0) to a maximum of 65535 elements. A zero for the count value or the absence of the count value shall cause the remaining portion of the table to be read starting at the stated index value (for additional details see section 8.1.3).

      Offset/Octet-Count Method

      The offset/octet-count method is based upon supplying an offset from the beginning of the selected Table and, optionally, a count of the number of Octets to read from the offset point. The range of the offset from the beginning of the Table is zero (0) to a maximum of 65535 Octets. The range of the count of the number of Octets to read from the offset point is zero (0) to a maximum of 65535 Octets. A zero for the count value or the absence of the count value shall cause the remaining portion of the Table to be read starting at the offset point (for additional details, see section 8.1.5). The count does not include the pending header length for pending Tables.

      Read Service Response Data

      The Read Service Response shall contain as a minimum the Table data selected by the aforementioned parameters supplied with the Read Service Request. When the Read Service Request Table Identifier specifies a Pending Table, a six-octet pending event description precedes the requested information. The pending event description parameters are described in Section 8.2, Pending Event Description.

      8.1.2

      Write Service

      The Write Service causes the transfer of un-requested data to a target device from the initiating device and is required for both one and two way communications.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      33

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Write Service Request

      Identifier

      The Write Service Request shall be capable of both a complete and a partial Table write. This is accomplished by one required parameter and partial Table Identifiers and the write data field. The required parameter is a Table Identifier. Optional parameters define partial Table write. Value

      Table Identifier

      Definition This parameter has a range of 0 to 65535 and is further subdivided as follows:

      0..2039

      Provides access to Standard Tables 00 to 2039.

      2048..4087

      Provides access to Manufacturer Tables 00 to 2039.

      4096..6135

      Provides access to Standard Pending Tables 00 to 2039. Several additional parameters are required for writing to a Pending Table. These parameters are appended to the front of the Table data to be written. These parameters are described in Section 8.2, “Pending Event Description.”

      6144..8183

      Provides access to Manufacturer Pending Tables 00 to 2039. Several additional parameters are required for writing to a Pending Table. These parameters are appended to the front of the Table data to be written as a pending event description. The pending event description parameters are described in Section 8.2, “Pending Event Description.”

      8192..10231

      Provides access to User-defined Tables 00 to 2039.

      12288..14327

      Provides access to User-defined pending Tables 00 to 2039. All other values are Reserved. The maximum number of Decades supported is 204 (10 Tables per Decade) resulting in the Standard supporting a maximum of 2040 Tables in each of the Standard, Standard Pending, Manufacturer, and Manufacturer Pending groups of Tables. The User-defined Tables do not use the Decade structure since they represent a sequential set of views of selections from other Tables.

      Partial Table Identifier

      34

      The writing of a portion of a Table, a partial Table, is possible through the use of one of two methods, the index/element-count method and offset/octet-count method. The absence of either

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      of these methods implies the entire Table shall be written. Index/Element-count Method

      The Index/Element-count Method is based upon accommodating a minimum of five indices relative to the beginning of the Table data structure and, optionally, a count of the number of elements to write starting at the index point. Each index shall range from zero (0) to a maximum of 65535. The range of the count of the number of elements to write shall range from zero (0) to a maximum of 65535. A zero for the count value or the absence of the count value shall imply writing the remaining portion of the Table from the index point (for additional details, see section 8.1.3).

      Offset/Octet-Count Method

      The offset/octet-count method is based upon supplying an offset from the beginning of the selected Table and, optionally, a count of the number of Octets to write to the offset point. The range of the offset from the beginning of the Table is zero (0) to a maximum of 65535 octets. The range of the count of the number of Octets to write to the offset point is zero (0) to a maximum of 65535 octets. A zero for the count value or the absence of the count value shall cause the remaining portion of the Table to be written from the offset point (for additional details, see Section 8.1.5).

      Data

      The data field contains the information to write. When the Write Service Request Table Identifier specifies a Pending Table, a six-octet pending event description precedes the information in the data field.

      Write Service Response 8.1.3

      No response is required to the Write Service Request.

      Partial Table Access Using the Index/element-count Method

      1. An index sets up a start of selection into a table object relative to the beginning of the table as follows: 

      Each member of a PACKED RECORD gets a unique number.



      The positional number of the first element of a PACKED RECORD is assigned the value zero.



      The positional number of subsequent elements in the same PACKED RECORD are incremented by one for each subsequent element in the PACKED RECORD.



      Each sub element of a BIT FIELD is assigned a unique positional number.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      35

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que



      The positional number of the first sub element of a BIT FIELD is assigned the value zero.



      The positional number of subsequent sub elements in the same BIT FIELD are incremented by one for each subsequent sub element in the BIT FIELD, independent of the bit range assigned to the sub element.



      Positional numbers are assigned independently of any IF or CASE statements that may be present inside PACKED RECORDs or BIT FIELDs, as if the elements or sub-elements where not enclosed within any IF or SWITCH statements.



      For non final elements one level of index is appended to the index of the parent’s element index for use in selections.



      Selection to Boolean members within a SET are reference like array members of a single dimensional array.



      For elements of an ARRAY one level of index is appended to the index of the array’s element for each dimension (as per BNF.dim) for use in selections into entries of the ARRAY.

      2. Selection based on an index method using element count=1 will deliver the whole selected element. 3. For the purpose of binary transmission, index cannot select into a sub-element or final elements that are not atomic, with the exception of SETs, where the first octet selected for transmission is that computed by integer division of the atomic index number requested by eight (8), and the number of elements is the number of bits requested 4. For the purpose of transmission, an index selection into a non-existing element shall result in an "Inappropriate Action Requested" error. However, it is allowed to append zeros at the end of an index to indicate the desired access level of an index selection within the table element hierarchy. 5. When element-count > 1, the application shall return up to element-count elements at the same or higher hierarchical level of the index used to initiated the request traversing all element types serially. 6. When element-count > (number of elements available for transmission), the number of elements transmitted will be limited to the maximum number elements available at the same or higher hierarchical level of the index used to initiated the request. The response element-count shall be adjusted to reflect the actual number of elements transferred in the response. 7. The number of numeric segments that make up the index (using trailing zero segments if necessary) defines the initial hierarchical level for element-serialization and for element-count interpretation. 8. For the purpose of transmission, as a part of a request, element-count = 0 shall be interpreted as all data to be written or all data requested. 9. For the purpose of transmission, as a part of a response, element-count = 0 shall be interpreted as no data was written, or no data was received. 10. For the purpose of transmission, as a part of a write request, element-count shall correctly represent the actual number of elements requested to be written, at the hierarchical level of the selection start index.

      36

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      11. For the purpose of transmission, as a part of a read request, element-count represents the maximum number of elements requested. 12. For the purpose of transmission, the counter shall not count elements that are not present in the table by virtue of the elements being excluded from the data stream through the use of the IF or CASE conditional statements 13. For the purpose of transmission, the counter shall not count elements that are not present in the table by virtue of them being excluded from the data stream through the use of zero length arrays, sets, strings, binaries or bcd. 14. Generally, for the purpose of transmission, any element whose size is zero shall not be a candidate for transmission and not be counted. 15. The element-count counts elements and not octets. 16. If the respondent application does not support the transmission elements at the requested index level, or the respondent application cannot deliver the element requested from an ARRAY the respondent application shall assert the error condition "Inappropriate Action Requested". The requester may then attempt a retry of the read/write request on an index of an element that is higher or lower in hierarchy relative to the index of the failed attempt. 8.1.4

      Partial Table Access Using the Offset/octet-count Method

      1. An offset sets up a start of selection into a table object relative to the beginning of the table. 2. Offset zero (0) is the octet offset to the first octet of the first object in the table as prescribed by the object data type and the value of DATA_ORDER, found in the GEN_CONFIG_TBL (Table 00). 3. When count > 1, the application shall return up to count octets from offset used to initiate the request traversing all element types serially, where each element will be transferred according to its type and the value of DATA_ORDER, found in the GEN_CONFIG_TBL (Table 00). 4. When count > (number of octets available for transmission), the number of octets transmitted will be limited to the maximum number octets available. The response count shall be adjusted to reflect the actual number of octets transferred in the response. 5. For the purpose of transmission, as a part of a request, count = 0 shall be interpreted as all data to be written or all data requested. 6. For the purpose of transmission, as a part of a response, count = 0 shall be interpreted as no data was written, or no data was received. 7. For the purpose of transmission, as a part of a write request, octet count shall correctly represent the actual number of octets requested to be written starting at the table offset requested. 8. For the purpose of transmission, as a part of a read request, count represents the maximum number of octets requested. 9. For the purpose of transmission, the counter shall not count elements that are not present in the table by virtue of them being excluded from the data stream through the use of zero length arrays, sets, strings, binaries or bcd. 10. Generally, for the purpose of transmission, any element whose size is zero shall not be a candidate for transmission and not be counted.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      37

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      11. The octet counter counts octets and not elements. 12. If the respondent application does not support the transmission octets at the requested offset if the respondent application shall assert the error condition "Inappropriate Action Requested. 8.1.5

      Index Count Access Method Examples

      The following are examples for the use of the Index/Element-Count method to select data. Example 1 Index = 1.0 Element-Count = 2

      0 1.0 1.1 1.2 2 3.0 3.1.0 3.1.1 3.2 4

      8.2

      (Selected) (Selected)

      Example 2 Index = 1, Element-Count = 2 or Index = 1.0, Element-Count = 4 0 1.0 (Selected) 1.1 (Selected) 1.2 (Selected) 2 (Selected) 3.0 3.1.0 3.1.1 3.2 4

      Example 3 Index = 1.2.0, Element-Count = 4

      0 1.0 1.1 1.2 2 3.0 3.1.0 3.1.1 3.2 4

      (Selected) (Selected) (Selected) (Selected)

      Example 4 Index = 1.2, Element-Count = 4 or Index = 1.2.0, Element-Count = 5 0 1.0 1.1 1.2 (Selected) 2 (Selected) 3.0 (Selected) 3.1.0 (Selected) 3.1.1 (Selected) 3.2 4

      Pending Event Description

      This Standard supports the transmission of a set of shadow Tables, known as Pending Tables. Data read from or written to a Pending Table is identical in format to the data read from or written to regular Tables (Standard Tables or Manufacturer Tables), except for the addition of the fixed length Pending Event Description that is placed ahead of the Table data during transmission, defined below. TYPE STATUS_BFLD = BIT FIELD OF UINT8 EVENT_CODE : UINT(0..3); SELF_READ_FLAG : BOOL(4); DEMAND_RESET_FLAG : BOOL(5); RESERVED : FILL(6..7); END; TYPE PE_STIME_DATE_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0: RESERVED : ARRAY[5] of FILL8; CASE 1: YEAR : BCD; MONTH : BCD; DAY : BCD; HOUR : BCD; MINUTE : BCD; CASE 2: YEAR : UINT8; MONTH : UINT8; DAY : UINT8; HOUR : UINT8; MINUTE : UINT8; CASE 3: U_TIME : UINT32; FILL : FILL8;

      38

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 CASE 4:

      ANSI

      U_TIME_SEC :UINT32; FILL : FILL8;

      END; END; TYPE EVENT_STORAGE_RCD = PACKED RECORD SWITCH STATUS_BFLD.EVENT_CODE OF CASE 0: PE_STIME_DATE : PE_STIME_DATE_RCD; CASE 1: WEEKS : UINT8; DAYS : UINT8; HOURS : UINT8; MINUTES : UINT8; SECONDS : UINT8; CASE 2: MFG_CODE : ARRAY[4] OF UINT8; MFG_EVENT_CODE : UINT8; END; END; TYPE PENDING_EVENT_DESC_RCD = PACKED RECORD EVENTS_SELECTOR : STATUS_BFLD; EVENT_STORAGE : EVENT_STORAGE_RCD; END; MEMBER PENDING_EVENT_DESC = PENDING_EVENT_DESC_RCD; Identifier

      Value

      STATUS_BFLD

      Selectors indicating action to be performed upon activation of selected Pending Table.

      EVENT_CODE

      Variable that specifies the condition upon which the Pending Table shall be made active. The trigger condition is stored in the EVENT_STORAGE record. 0

      1 2 3..15 SELF_READ_FLAG

      FALSE TRUE

      DEMAND_RESET_FLAG

      Definition

      FALSE TRUE

      Pending Table is activated based on an absolute time contained in the EVENT_STORAGE record. The time is interpreted as SDATE_TIME. Pending Table is activated based on a relative time contained in the EVENT_STORAGE record. Pending Table is activated based on a non-time associated trigger contained in the EVENT_STORAGE record. Reserved. Do not perform a Self-read before Pending Table is activated. Perform a Self-read, if capable, before Pending Table is activated. Do not perform a demand reset before Pending Table is activated. Perform a demand reset, if capable, before Pending Table is activated.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      39

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      RESERVED

      Reserved.

      PE_STIME_DATE_RCD

      Fields and interpretation of the pending event short time and date format is identical to that of STIME_DATE, except that the data structure length is fixed in length.

      EVENT_STORAGE_RCD

      Pending event trigger condition that causes a Pending Table to become active. The size of EVENT_STORAGE_RCD always occupies five Octets and is transmitted as ARRAY[5] of UINT8. The actual interpretation of this record is controlled by the content of EVENTS_SELECTOR.EVENT_CODE as follows: 0

      PE_STIME_DATE_RCD, year, month, day, hour, and minute, in the format of STIME_DATE, padded to fill an ARRAY[5] of UINT8. The STIME_DATE occupies the low index array elements.

      1

      WEEKS, DAYS, HOURS, MINUTES and SECONDS represented as a UINT8 (0..255).

      2

      Four-byte manufacturer code as per GEN_CONFIG_TBL.DEVICE_CLASS, followed by a one-byte manufacturer-specific event code (MFG_EVENT_CODE).

      PENDING_EVENT_DESC_RCD

      40

      EVENTS_SELECTOR

      Status bits indicating various associated with a Pending Table.

      conditions

      EVENT_STORAGE

      Trigger condition that causes a Pending Table to become active, as defined in EVENT_STORAGE_RCD.EVENT_STORAGE always occupies five Octets and is transmitted as ARRAY[5] of UINT8.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      8.3 List Management Description The following declarations are of value to any list management system that requires a capability for issuing an advance warning or notification when a list is about to overflow or when a list contains a minimum number of events. TYPE LIST_OVERFLOW_CONTROL_BFLD = BIT FIELD OF UINT8 PERCENT_OR_VALUE_FLAG : BOOL(0); LOW_OVERFLOW_INDICATION_FLAG : BOOL(1); HIGH_OVERFLOW_INDICATION_FLAG : BOOL(2); REPEAT_OVERFLOW_INDICATION_FLAG : BOOL(3); FILLER : FILL(4..7); END; TYPE LIST_OVERFLOW_CONTROL_RCD LIST_OVERFLOW_ENABLE : STD.LIST_OVERFLOW_CONTROL_BFLD; IF .LIST_OVERFLOW_ENABLE.LOW_OVERFLOW_INDICATION_FLAG == TRUE THEN LOW_THRESHOLD : UINT16; END; IF .LIST_OVERFLOW_ENABLE.HIGH_OVERFLOW_INDICATION_FLAG == TRUE THEN HIGH_THRESHOLD : UINT16; IF .LIST_OVERFLOW_ENABLE.REPEAT_OVERFLOW_INDICATION_FLAG == TRUE THEN REPEAT_INTERVAL : UINT16; MAX_REPEATS : UINT16; END; END; END; Identifier Value LIST_OVERFLOW_CONTROL_BFLD PERCENT_OR_VALUE_FLAG

      FALSE TRUE

      LOW_OVERFLOW_INDICATION_FLAG FALSE

      TRUE

      HIGH_OVERFLOW_INDICATION_FLAG

      Definition A bit field which contains selections and enabling mechanisms for list overflow management. A selector that provides an interpretation for the controlling values of the limiting values exposed by LOW_OVERFLOW_INDICATION_FLAG, HIGH_OVERFLOW_INDICATION_FLAG, and REPEAT_OVERFLOW_INDICATION_FLAG. Number of entries. The controlling value is the number of entries in the list. Percent of full list. The controlling value is expressed in percent of full list size. A selector for low limit list overflow threshold. Low threshold value indication is not available. List management warnings, such as notification on overflow, are not possible based on low threshold value. Low threshold value indication is available. List management warnings, such as notification on overflow, are not possible based on low threshold value. A selector for high limit list overflow threshold.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      41

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que FALSE

      TRUE

      REPEAT_OVERFLOW_INDICATION_FLAG FALSE

      TRUE

      LIST_OVERFLOW_CONTROL_RCD LIST_OVERFLOW_ENABLE

      42

      High threshold value indication is not available. List management warnings, such as notification on overflow, are not possible based on low threshold value. High threshold value indication is available. List management warnings, such as notification on overflow, are possible based on low threshold value. A selector for repeat interval following the issuance of a high limit list overflow indication. Repeat threshold value not available. List management, such as notification on overflow, is not possible following initial high threshold report. Repeat threshold value available. List management, such as notification on overflow, is possible following initial high threshold report. A general list management control element used by End Devices to manage the action taken as a result of list overflows. See STD.LIST_OVERFLOW_CONTROL_BFLD.

      LOW_THRESHOLD

      The low threshold value or percent of full list size (See by .LIST_OVERFLOW_ENABLE. PERCENT_OR_VALUE_FLAG) used to sense a possible list overflow.

      HIGH_THRESHOLD

      The high threshold value or percent of full list size (See by .LIST_OVERFLOW_ENABLE. PERCENT_OR_VALUE_FLAG) used to sense a possible list overflow.

      REPEAT_INTERVAL

      The repeat threshold value or percent of full list size (See by .LIST_OVERFLOW_ENABLE. PERCENT_OR_VALUE_FLAG) used re-trigger a sense a possible list overflow, following an initial trigger based on HIGH_THRESHOLD.

      MAX_REPEATS

      The maximum number of time an overflow condition shall re-trigger following detection if not serviced and cleared.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9 Tables 9.1 Decade 0: General Configuration Tables Decade 0 Name GEN_CONFIG_DEC Decade 0 Data Description This decade contains tables associated with End Device configuration, identification, procedures and responses, and information required for data manipulation due to hardware configurations. 9.1.1

      Table 00 General Configuration Table

      Table 00 Data Description GEN_CONFIG_TBL (Table 00) contains general End Device configuration information. It also establishes the total set of tables, procedures, and the selection of special types used in the End Device. If a default set is used, it is indicated by this table. Global Default Table Property Overrides: atomic = “true”, role=“CONTROL”, accessibility=“READONLY” Table 00 Type Definitions TYPE FORMAT_CONTROL_1_BFLD DATA_ORDER CHAR_FORMAT MODEL_SELECT FILLER END;

      = BIT FIELD OF UINT8 : UINT(0..0); : UINT(1..3); : UINT(4..6); : FILL(7);

      TYPE FORMAT_CONTROL_2_BFLD TM_FORMAT DATA_ACCESS_METHOD ID_FORM INT_FORMAT END;

      = BIT FIELD OF UINT8 : UINT(0..2); : UINT(3..4); : UINT(5..5); : UINT(6..7);

      TYPE FORMAT_CONTROL_3_BFLD = BIT FIELD OF UINT8 NI_FORMAT1 : UINT(0..3); NI_FORMAT2 : UINT(4..7); END; TYPE GEN_CONFIG_RCD = PACKED RECORD FORMAT_CONTROL_1 : FORMAT_CONTROL_1_BFLD; FORMAT_CONTROL_2 : FORMAT_CONTROL_2_BFLD; FORMAT_CONTROL_3 : FORMAT_CONTROL_3_BFLD; DEVICE_CLASS : BINARY(4); NAMEPLATE_TYPE : UINT8; DEFAULT_SET_USED : UINT8; MAX_PROC_PARM_LENGTH : UINT8; MAX_RESP_DATA_LEN : UINT8; STD_VERSION_NO : UINT8; STD_REVISION_NO : UINT8;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      43

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      DIM_STD_TBLS_USED DIM_MFG_TBLS_USED DIM_STD_PROC_USED DIM_MFG_PROC_USED DIM_MFG_STATUS_USED NBR_PENDING STD_TBLS_USED MFG_TBLS_USED STD_PROC_USED MFG_PROC_USED STD_TBLS_WRITE MFG_TBLS_WRITE

      : UINT8; : UINT8; : UINT8; : UINT8; : UINT8; : UINT8; : SET(GEN_CONFIG_TBL.DIM_STD_TBLS_USED); : SET(GEN_CONFIG_TBL.DIM_MFG_TBLS_USED); : SET(GEN_CONFIG_TBL.DIM_STD_PROC_USED); : SET(GEN_CONFIG_TBL.DIM_MFG_PROC_USED); : SET(GEN_CONFIG_TBL.DIM_STD_TBLS_USED); : SET(GEN_CONFIG_TBL.DIM_MFG_TBLS_USED);

      END; TABLE 0 GEN_CONFIG_TBL = GEN_CONFIG_RCD; Table 00 Element Descriptions Identifier

      Value

      Definition

      0 1

      Variable to define order of multi-byte numeric data transfer. Least significant byte first. Most significant byte first.

      FORMAT_CONTROL_1_BFLD DATA_ORDER

      CHAR_FORMAT 0 1 2 3

      4

      5

      44

      See character Set Selection in Special Data Types, Section 6.1. Unsigned binary code where: Reserved. ISO 7-bit coded character set for information interchange, per ISO/IEC 646: 1991. ISO 8859/1 or ECMA-94 Latin 1 character set. As per Section 2.5, “Encoding Forms / UTF-8” and Section 15.9, “Specials“ of “The Unicode Standard”, Version 4.0. In UTF-8 the byte order mark, BOM, corresponds to the byte sequence [#xEF] [#xBB] [#xBF]. The BOM of UTF-8 shall be permitted only when it can be accommodated by the size of the element that is of type UTF-8 whose size is at least three octets, but it shall be ignored (not produce displayable text) by the processing application. As per Section 2.5 and Section 15.9, “Specials“ “Encoding Forms / UTF-16” of “The Unicode Standard”, Version 4.0. The BOM, [#xFEFF], of UTF-16 shall be permitted. It shall count for one sixteen-bit element space (one character), but it shall be ignored (not produce displayable text) by the processing application. For the purpose of transmission each sixteen-bit character shall be transmitted as a UINT16 and as implied by DATA_ORDER. As per Section 2.5 and Section 15.9, “Specials“ “Encoding Forms / UTF-32” of “The Unicode Standard”, Version 4.0. The BOM, [#x0000FEFF], of UTF-32 shall be permitted. It

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      6..7 MODEL_SELECT 0

      ANSI

      shall count for one thirty-two-bit element space, but it shall be ignored (not produce displayable text) by the processing application. For the purpose of transmission each thirty-two-bit character shall be transmitted as a UINT32 and as implied by DATA_ORDER. Reserved. Unsigned binary code indicating the decade to be used for selecting the data sources as follows: A code indicating the data source selection model selects sources as an 8-bit index into the SOURCES_TBL (Table 16).

      1

      A code indicating the data source selection model selects sources using a STD.SOURCE_SEL_RCD in conjunction with the tables in Decade 10, Extended Source Tables.

      2..7

      Reserved.

      FORMAT_CONTROL_2_BFLD TM_FORMAT

      Data representation format selector for use by HTIME_DATE, LTIME_DATE, STIME_DATE, TIME, STIME and HTIME. 0 1 2 3

      4

      5..7 DATA_ACCESS_METHOD

      No clock in the End Device BCD type with discrete fields for year, month, day, hour, minute seconds and fractional seconds. UINT8 type with discrete fields for year, month, day, hour, minute seconds and fractional seconds. UINT32 counters where HTIME_DATE, LTIME_DATE and STIME_DATE types are encoded relative to 01/01/1970 @ 00:00:00 UTC, with discrete fields for minutes and fraction of a minute. UINT32 counters where HTIME_DATE, LTIME_DATE and STIME_DATE types are encoded relative to 01/01/1970 @ 00:00:00 UTC), with discrete fields for seconds and fraction of a second. Reserved Variable to designate method of passing the table data after GEN_CONFIG_TBL (Table 00) has been interrogated. Note: All data access methods support complete table access.

      0 1 2

      Full table access only. No partial table access supported. Offset-count access method is supported. Index-count method is supported.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      45

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que 3

      ID_FORM 0 1 INT_FORMAT 0 1 2 3 FORMAT_CONTROL_3_BFLD NI_FORMAT1

      NI_FORMAT2

      GEN_CONFIG_RCD FORMAT_CONTROL_1 FORMAT_CONTROL_2 FORMAT_CONTROL_3 DEVICE_CLASS

      Both methods 1 and 2 of data access method are supported. Indicates the format of the defined in decade 00. STRING. BCD.

      identifier fields

      Indicates the format of signed integer types. Signed integer types are represented in twos complement format. Signed integer types are represented in ones complement format. Signed integer types are represented in sign/magnitude format. Reserved. Indicates the type of non-integer value used throughout the tables where specified as NI_FMAT1. Refer to Section 6.2, Non-integer Formats, for details. Indicates the type of non-integer value throughout the tables where shown as NI_FMAT2. Refer to Section 6.2, Non-integer Formats, for details. See FORMAT_CONTROL_1_BFLD. See FORMAT_CONTROL_2_BFLD. See FORMAT_CONTROL_3_BFLD. A group of End Devices sharing the same table structure. This field contains a relative universal object identifier with the following structure: . The is registered in a manner that it shall be unique among all C12.19 implementations, within a registered root context. This numeric sequence is encoded according to ISO 8825-1-1997 “Basic Encoding Rules”. Example: = 35 DEVICE_CLASS = 23H 00H 00H 00H Relative UID ASN.1 Encoding = 0DH 01H 23H Refer to Annex A, “Reserved Classes for Meter Equipment Manufacturers Implementing ANSI C12.19-1997 Devices”. Alias: MANUFACTURER.

      46

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 NAMEPLATE_TYPE 0 1 2 3..255 DEFAULT_SET_USED

      ANSI

      Entry used to select the nameplate record structure to be used in DEVICE_NAMEPLATE_TBL (Table 02). Gas Water Electric Reserved Indicates which, if any, default sets are used. See Annex C, “Default Sets for Decade Tables”, for the default set definitions.

      0 1 2 3 4 5..255

      No default values in use. See Section 4.1, Standard Tables, Figure 4.1, conditions C through H for more detail. Default set #1, Simple Meter Register, in use. Default set #2, Simple Demand Meter, in use. Default set #3, Simple TOU Meter, in use. Default set #4, Simple Profile Recorder, in use. Reserved for default table value sets.

      MAX_PROC_PARM_LENGTH

      Manufacturer defined maximum length for argument parameters passed to procedures in PROC_INITIATE_TBL (Table 07).

      MAX_RESP_DATA_LEN

      Manufacturer defined maximum length representing length returned by procedures in PROC_RESPONSE_TBL (Table 08).

      STD_VERSION_NO

      Unsigned binary number designating the version of the particular industry set of standard tables. Pre-release or informal release document. Original Standard Table Set, first release of the standard, C12.19-1997. If the Decade 9 tables are implemented, this implies the use of C12.21-1999. Second Standard Table Set, second release of the standard as defined by this document. Reserved for Standards Committee use only.

      0 1

      2 3..255 STD_REVISION_NO

      Unsigned binary number that designates a minor change to a version of this standard. Within a given version of this standard, all revisions with a lower revision number shall be backward compatible. If this is not true then a new version number shall be required. Currently, zero (0) for both STD_VERSION_NO = 1 and STD_VERSION_NO = 2.

      DIM_STD_TBLS_USED

      Octets required to represent the set of standard tables used in GEN_CONFIG_TBL.STD_TBLS_USED (Table 00). This is a mechanism to allow the table identifier set to expand in size from simple devices to complex devices.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      47

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      DIM_MFG_TBLS_USED

      Octets required to represent the set of manufacturer tables used in GEN_CONFIG_TBL.MFG_TBLS_USED (Table 00). This is a mechanism to allow the table identifier set to expand in size from simple devices to complex devices.

      DIM_STD_PROC_USED

      Octets required to represent the set of standard procedures used in GEN_CONFIG_TBL.STD_PROC_USED (Table 00). This is a mechanism to allow the standard defined procedure identifier set to expand in size.

      DIM_MFG_PROC_USED

      Octets required to represent the set of manufacturer procedures used in GEN_CONFIG_TBL.MFG_PROC_USED (Table 00). This is a mechanism to allow the manufacturer defined procedure identifier set to expand in size.

      DIM_MFG_STATUS_USED

      48

      0..255

      The number of octets allocated for indicating manufacturer specific status flags.

      NBR_PENDING

      Number of pending status sets PENDING_STATUS_TBL (Table 04).

      in

      STD_TBLS_USED

      This set variable indicates which of the Standard Tables are implemented by the device. Tables are represented by bits 0 through (8*DIM_STD_TBLS_USED-1), with a 1 representing a TRUE or implemented condition and a 0 representing a FALSE or not implemented condition.

      MFG_TBLS_USED

      This set variable indicates which of the Manufacturer Tables are implemented by the device. Tables are represented by bits 0 through (8*DIM_MFG_TBLS_USED-1), with a 1 representing a TRUE or implemented condition and a 0 representing a FALSE or not implemented condition.

      STD_PROC_USED

      This set variable indicates which of the Standard Procedures are implemented by the device. Procedures are represented by bits 0 through (8*DIM_STD_PROC_USED-1), with a 1 representing a TRUE or implemented condition and a 0 representing a FALSE or not implemented condition.

      MFG_PROC_USED

      This set variable indicates which of the Manufacturer's Procedures are implemented by the device. Procedures are represented by bits 0 through (8*DIM_MFG_PROC_USED-1), with a 1 representing a TRUE or implemented

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      condition and a 0 representing a FALSE or not implemented condition. STD_TBLS_WRITE

      This set variable indicates which of the standard tables are capable of being rewritten. Tables are represented by bits 0 through (8*DIM_STD_TBLS_USED-1), with a 1 representing a writable table and a zero representing a table that cannot be written.

      MFG_TBLS_WRITE

      This set variable indicates which of the standard tables are capable of being rewritten. Tables are represented by bits 0 through (8*DIM_MFG_TBLS_USED-1), with a 1 representing a writable table and a zero representing a table that cannot be written.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      49

      ANSI C12.19-2008 aparezca aquí.

      9.1.2

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 01 General Manufacturer Identification Table

      Table 01 Data Description GENERAL_MFG_ID_TBL (Table 01) is a general manufacturer identification data table for Water, Gas, and Electric Utility End Devices. The values of the data items shall be set up by the manufacturer and left unchanged since they are determined by the functionality of the device. Global Default Table Property Overrides: Role=“CONTROL”, Accessibility=“READONLY” Table 01 Type Definitions TYPE MANUFACTURER_IDENT_RCD = PACKED RECORD MANUFACTURER : STRING(4); ED_MODEL : STRING(8); HW_VERSION_NUMBER : UINT8; HW_REVISION_NUMBER : UINT8; FW_VERSION_NUMBER : UINT8; FW_REVISION_NUMBER : UINT8; IF GEN_CONFIG_TBL.ID_FORM THEN MFG_SERIAL_NUMBER : BCD(8); ELSE MFG_SERIAL_NUMBER : STRING(16); END; END; TABLE 1 GENERAL_MFG_ID_TBL = MANUFACTURER_IDENT_RCD; Table 01 Element Descriptions Identifier

      Value

      MANUFACTURER_IDENT_RCD MANUFACTURER

      Acronym for the manufacturer name.

      ED_MODEL

      50

      Definition

      Model identifier of the End Device left justified. For example 'ENG M3 '.

      HW_VERSION_NUMBER

      0..255

      Manufacturer's hardware Implies functional changes.

      version

      number.

      HW_REVISION_NUMBER

      0..255

      Manufacturer's hardware revision number. Implies product corrections or improvements. Recommended use of '0' to designate prototyping device.

      FW_VERSION_NUMBER

      0..255

      Manufacturer's firmware version number. Changes in value imply functional differences.

      FW_REVISION_NUMBER

      0..255

      Manufacturer's firmware revision number. Changes in value imply product corrections or improvements. Recommend use of '0' to designate preproduction or prototyping software.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 MFG_SERIAL_NUMBER

      ANSI

      Manufacturer's serial number for the End Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      51

      ANSI C12.19-2008 aparezca aquí.

      9.1.3

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 02 Device Nameplate Table

      Table 02 Data Description DEVICE_NAMEPLATE_TBL (Table 02) is the nameplate data table. This table contains a record structure for each type of End Device (e.g. water, gas, electric). The structure to be used is specified in GEN_CONFIG_TBL.NAMEPLATE_TYPE (Table 00). This table presently has nameplate structures defined for an electric meter, a gas meter and a water meter. Global Default Table Property Overrides: Role=“CONTROL” Table 02 Type Definitions {water device structures} TYPE W_WATER_DEVICE_BFLD = BIT FIELD OF UINT16 W_ED_TYPE : UINT(0..2); W_FLUID_TYPE : UINT(3..6); W_ED_DRIVE : UINT(7..10); W_ED_PIPE_SIZE : UINT(11..15); END; {gas device structures} TYPE G_ED_TYPE_BFLD = BIT FIELD OF UINT8 G_ED_TYPE : UINT(0..2); G_MECH_FORM : UINT(3..5); G_ENG_METRIC : UINT(6..6); FILLER : FILL(7..7); END; TYPE G_PRESSURE_RCD = PACKED RECORD G_MAX_PRESS : NI_FMAT2; G_UOM_PRESS : UINT8; END; TYPE G_FLOW_RCD = PACKED RECORD G_MAX_FLOW : NI_FMAT2; G_UOM_FLOW : UINT8; END; TYPE G_SIZE_BFLD = BIT FIELD OF UINT8 G_GEAR_DRIVE : UINT(0..2); G_INPUT_OUTPUT_PIPE : UINT(3..7); END; TYPE G_COMPENSATION_BFLD = BIT FIELD OF UINT8 G_COMP_TEMP : UINT(0..4); G_COMP_PRESS : UINT(5..7); END; TYPE G_GAS_DEVICE_RCD = PACKED RECORD G_ED_TYPE : G_ED_TYPE_BFLD; G_MAX_PRESS : G_PRESSURE_RCD; G_FLOW : G_FLOW_RCD; G_GEAR_PIPE_SIZE : G_SIZE_BFLD; G_COMPENSATION : G_COMPENSATION_BFLD;

      52

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      END; {electric device structures} TYPE E_ELEMENTS_BFLD = BIT FIELD OF UINT16 E_FREQ : UINT(0..2); E_NO_OF_ELEMENTS : UINT(3..5); E_BASE_TYPE : UINT(6..9); E_ACCURACY_CLASS : UINT(10..15); END; TYPE E_VOLTS_BFLD = BIT FIELD OF UINT8 E_ELEMENTS_VOLTS : UINT(0..3); E_ED_SUPPLY_VOLTS : UINT(4..7); END; TYPE E_AMPS_RCD = PACKED RECORD E_CLASS_MAX_AMPS : STRING(6); E_TA : STRING(6); END; TYPE E_ELECTRIC_DEVICE_RCD = E_KH E_KT E_INPUT_SCALAR E_ED_CONFIG E_ELEMENTS E_VOLTS E_AMPS END;

      PACKED RECORD : STRING(6); : STRING(6); : UINT8; : STRING(5); : E_ELEMENTS_BFLD; : E_VOLTS_BFLD; : E_AMPS_RCD;

      TYPE DEVICE_DEFINITION_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.NAMEPLATE_TYPE OF CASE 0 : G_GAS_DEVICE : G_GAS_DEVICE_RCD; CASE 1 : W_WATER_DEVICE : W_WATER_DEVICE_BFLD; CASE 2 : E_ELECTRIC_DEVICE : E_ELECTRIC_DEVICE_RCD; CASE 3..255 : RESERVED : NIL; END; END; TABLE 2 DEVICE_NAMEPLATE_TBL = DEVICE_DEFINITION_RCD; Table 02 Water Data Description The following structures are generally associated with Water Utility End Devices. The values of the data items shall be set up by the manufacturer and left unchanged since they are determined by the functionality of the device. Table 02 Water Element Descriptions Identifier

      Value

      Definition

      0 1 2 3

      Code representing water End Device type. Meter Valve Pressure Regulator Pressure gauge

      W_WATER_DEVICE_BFLD W_ED_TYPE

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      53

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que 4 5 6-7

      W_FLUID_TYPE 0 1 2 3 4 5 6 7

      Code representing type of fluid measured by water End Device. Potable water Hot water Non-potable water Sewage primary water Sewage secondary water Sewage tertiary water Other Reserved

      0 1 2 3 4 5 6 7 8 9 10 11 12 13 14..15

      Code representing water End Device drive. Piston Disc Multi-jet Turbine Compound Propeller Ultra-sonic Magnetic-coupled Differential pressure Mass Variable area Open channel Oscillatory Other Reserved

      0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

      Code representing End Device pipe size. English Metric 1/2" 13 mm 5/8" 15 mm 3/4” 20 mm 1" 25 mm 1 1/2" 40 mm 2" 50 mm 3" 80 mm 4" 100 mm 6" 160 mm 8" 200 mm 10" 250 mm 12" 300 mm 14" 350 mm 16" 400 mm 18" 450 mm 20" 500 mm 22" Not standard 24" 600 mm 26" Not standard 28" Not standard 30" Not standard 32" 800 mm 34" Not standard

      W_ED_DRIVE

      W_ED_PIPE_SIZE

      54

      Backflow Other Reserved

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 23 24 25 26..31

      36" 40” 48” Reserved

      ANSI

      900 mm 1000 mm 1200 mm

      Table 02 Gas Data Description The following structures are generally associated with Gas Utility End Devices. The values of the data items shall be set up by the manufacturer and left unchanged since they are determined by the functionality of the device. Table 02 Gas Element Descriptions Identifier

      Value

      Definition

      0 1 2 3 4 5 6..7

      Code representing gas End Device type. Unclassified Gas meter Gas pressure regulator Sensor Load shed device Cathodic protection unit Reserved

      G_ED_TYPE_BFLD G_ED_TYPE

      G_MECH_FORM

      Unsigned binary number identifying the primary mechanical design principle of the device depending upon value of G_ED_TYPE. 0 1 2 3 4 5 6..7

      For G_ED_TYPE = 1. Unclassified Bellows meter Rotary Turbine meter Fluidic oscillator Anemometer Reserved

      0 1 2..7

      For G_ED_TYPE = 2. Unclassified Diaphragm Reserved

      0 1 2 3 4 5..7

      For G_ED_TYPE = 3. Unclassified Physical parameter to voltage Physical parameter to current Physical parameter to frequency Open/closed switch Reserved

      0 1 2 3..7

      For G_ED_TYPE = 5. Unclassified Pipe to soil Impedance Reserved

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      55

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      G_ENG_METRIC

      0 1

      G_PRESSURE_RCD G_MAX_PRESS

      End Device maximum design pressure.

      G_UOM_PRESS

      See field ID_CODE in UOM_ENTRY_TBL (Table 12).

      G_FLOW_RCD G_MAX_FLOW

      End Device maximum design flow rate.

      G_UOM_FLOW

      See field ID_CODE in UOM_ENTRY_TBL (Table 12).

      G_SIZE_BFLD G_GEAR_DRIVE 0 1 2 3 4 5 6 7

      Code representing gas meter gear drive size. English Metric None None 1/2 ft3 0.01 or 0.015 m 3 3 1 ft 0.02 m 3 3 2 ft 0.05 m 3 3 5 ft 0.1 m 3 3 10 ft 0.2 m 3 3 100 ft 1.0 m 3 3 1000 ft 10 m 3

      0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24..31

      Code representing gas meter internal pipe diameter (ID). English Metric None None 1/2" 13 mm 5/8" 15 mm 3/4" 20 mm 1" 25 mm 1 1/2" 40 mm 2" 50 mm 4" 100 mm 6" 150 mm 8" 200 mm 10" 250 mm 12" 300 mm 14" 350 mm 16" 400 mm 18" 450 mm 20" 500 mm 22" Not standard 24" 600 mm 26" Not standard 28" Not standard 30" 750 mm 32" Not standard 34" Not standard 36" 900 mm Reserved

      G_INPUT_OUTPUT_PIPE

      56

      English Metric

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 G_COMPENSATION_BFLD G_COMP_TEMP

      ANSI

      0 1 2 3..31

      Code representing the gas meter temperature compensation type. Uncompensated Mechanical Sensor Reserved

      0 1 2 3..7

      Code representing the gas meter pressure compensation type. Uncompensated Mechanical Sensor Reserved

      G_COMP_PRESS

      Table 02 Electric Data Description The following structures are generally associated with Electric Utility End Devices. The values of the data items shall be set up by the manufacturer and left unchanged since they are determined by the functionality of the device. Table 02 Electric Element Descriptions Identifier

      Value

      E_ELEMENTS_BFLD

      Definition Contains binary codes physically describing the End Device.

      E_FREQ 0 1 2 3 4 5 6 7

      Power frequency rating code. The codes are: DC 25 Hz 50 50 or 60 Hz 60 Hz 400 Hz Reserved Unclassified

      0 1 2 3 4 5 6 7

      Number of commodity measuring elements per measuring input to the End Device. This code indicates the number of elements as follows: None 1 element 2 element 2.5 element 3 element 6 element 1.5 elements Reserved.

      E_NO_OF_ELEMENTS

      E_BASE_TYPE

      Indicates the type of meter base as follows: 0 1 2 3 4

      None S-base (socket) A-base (ANSI bottom connected) K-base IEC bottom connected

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      57

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que 5 6 7 8 9..15

      E_ACCURACY_CLASS

      Reserved for future ANSI solid state meter standard accuracy class definitions.

      E_VOLTS_BFLD

      Contains binary codes describing meter RMS voltages.

      E_ELEMENTS_VOLTS 0 1 2 3 4 5 6 7 8 9 10 11 12..15

      Meter element voltage code. This binary code indicates the meter voltage class as follows; None 69.3 72 120 208 240 277 480 120 thru 277 120 thru 480 347 600 Reserved

      0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

      External supply voltage code. This value identifies the meter supply voltage as follows: Internal 69.3 AC 72 AC 120 AC 208 AC 240 AC 277 AC 480 AC 120 thru 277 AC 120 thru 480 AC 48 DC 125 DC 250 DC 347 AC 600 AC Reserved

      E_ED_SUPPLY_VOLTS

      E_AMPS_RCD E_CLASS_MAX_AMPS E_TA

      E_ELECTRIC_DEVICE_RCD E_KH

      58

      switchboard rack mount B-base P-base (Canadian Standard) Reserved

      End Device class or IEC max amp rating. The RMS amperage test amps (TA) specified by the manufacturer for the main test and/or adjustment of the meter. Watt-hours per revolution. (May be represented as unit-hours per equivalent revolution).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      E_KT

      The commodity amount selected for the test pulse output.

      E_INPUT_SCALAR

      Divisor by which to scale input values. For example if input consists of pulses, an INPUT_SCALAR value of 2 would cause the pulse stream to be divided by 2.

      E_ED_CONFIG

      Form number per ANSI C12.10. characters.

      DEVICE_DEFINITION_RCD

      G_GAS_DEVICE W_WATER_DEVICE E_ELECTRIC_DEVICE

      This is full device nameplate data structure configured as a case statement for selection of water, gas or electric End Devices. The selection variable is GEN_CONFIG_TBL.NAMEPLATE_TYPE (Table 00). Element present when the End Device is a gas meter. See G_GAS_DEVICE_RCD for details. Element present when the End Device is a water meter. See W_WATER_DEVICE_BFLD for details. Element present when the End Device is an electricity meter. See E_ELECTRIC_DEVICE_RCD for details.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      59

      ANSI C12.19-2008 aparezca aquí.

      9.1.4

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 03 End Device Mode Status Table

      Table 03 Data Description ED_MODE_STATUS_TBL (Table 03) provides the current operating mode and status of various conditions in the End Device. It allows for both standard and manufacturer specific status definitions. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 03 Type Definitions TYPE ED_MODE_BFLD = BIT FIELD OF UINT8 METERING_FLAG : BOOL(0); TEST_MODE_FLAG : BOOL(1); METER_SHOP_MODE_FLAG : BOOL(2); FACTORY_FLAG : BOOL(3); FILLER : FILL(4..7); END; TYPE ED_STD_STATUS1_BFLD = BIT FIELD UNPROGRAMMED_FLAG CONFIGURATION_ERROR_FLAG SELF_CHK_ERROR_FLAG RAM_FAILURE_FLAG ROM_FAILURE_FLAG NONVOL_MEM_FAILURE_FLAG CLOCK_ERROR_FLAG MEASUREMENT_ERROR_FLAG LOW_BATTERY_FLAG LOW_LOSS_POTENTIAL_FLAG DEMAND_OVERLOAD_FLAG POWER_FAILURE_FLAG TAMPER_DETECT_FLAG REVERSE_ROTATION_FLAG FILLER END;

      OF UINT16 : BOOL(0); : BOOL(1); : BOOL(2); : BOOL(3); : BOOL(4); : BOOL(5); : BOOL(6); : BOOL(7); : BOOL(8); : BOOL(9); : BOOL(10); : BOOL(11); : BOOL(12); : BOOL(13); : FILL(14..15);

      TYPE ED_STD_STATUS2_BFLD = BIT FIELD OF UINT8 FILLER : FILL(0..7); END; TYPE ED_MFG_STATUS_RCD = PACKED RECORD ED_MFG_STATUS : SET(GEN_CONFIG_TBL.DIM_MFG_STATUS_USED); END; TYPE ED_MODE_STATUS_RCD = PACKED RECORD ED_MODE : ED_MODE_BFLD; ED_STD_STATUS1 : ED_STD_STATUS1_BFLD; ED_STD_STATUS2 : ED_STD_STATUS2_BFLD; ED_MFG_STATUS : ED_MFG_STATUS_RCD; END; TABLE 3 ED_MODE_STATUS_TBL = ED_MODE_STATUS_RCD; Table 03 Element Descriptions

      60

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 Identifier

      ANSI

      Value

      Definition

      FALSE TRUE

      End Device is not in Metering Mode. End Device is in Metering Mode. The METER SHOP FLAG cannot be true while this flag is true.

      TEST_FLAG

      FALSE TRUE

      End Device is not in Test Mode. End Device is in Test Mode.

      METER_SHOP_FLAG

      FALSE TRUE

      End Device is not in Meter Shop Mode. End Device is in Meter Shop Mode. The METERING FLAG cannot be true while this flat is true.

      FACTORY_FLAG

      FALSE TRUE

      End Device is not in Factory Mode. End Device is in Factory Mode.

      FALSE TRUE

      End Device is programmed. End Device is not programmed or it is in a factory default state.

      ED_MODE_BFLD METERING_FLAG

      ED_STD_STATUS1_BFLD UNPROGRAMMED_FLAG

      CONFIGURATION_ERROR_FLAG FALSE TRUE

      End Device did not detect a configuration error. End Device did detect a configuration error.

      SELF_CHK_ERROR_FLAG

      FALSE TRUE

      End Device did not detect a self check error. End Device did detect a self check error.

      RAM_FAILURE_FLAG

      FALSE

      End Device did not detect a RAM Memory failure. End Device did detect a RAM Memory failure.

      TRUE ROM_FAILURE_FLAG

      FALSE TRUE

      NONVOL_MEM_FAILURE_FLAG FALSE TRUE CLOCK_ERROR_FLAG

      FALSE TRUE

      MEASUREMENT_ERROR_FLAG FALSE TRUE LOW_BATTERY_FLAG

      FALSE

      End Device did not detect a ROM memory failure. End Device did detect a ROM Memory failure. End Device did not detect a nonvolatile memory failure. End Device did detect a nonvolatile memory failure. End Device did not detect a clock error. End Device did detect a clock error. End Device did not detect a measurement element error. End Device did detect a measurement element error. End Device did not detect a low battery error.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      61

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que TRUE

      LOW_LOSS_POTENTIAL_FLAG FALSE TRUE DEMAND_OVERLOAD_FLAG FALSE TRUE

      End Device did detect a low battery error. End Device did not detect a potential that is below a predetermined value. End Device did detect a device potential that is below a predetermined value. End Device did not detect a demand threshold overload. End Device did detect a demand threshold overload.

      POWER_FAILURE_FLAG

      FALSE TRUE

      End Device did not detect a power failure. End Device did detect a power failure.

      TAMPER_DETECT_FLAG

      FALSE TRUE

      End Device did not detect tamper activity. End Device did detect tamper activity.

      REVERSE_ROTATION_FLAG FALSE TRUE

      End Device did not detect reverse rotation. End Device did detect reverse rotation.

      ED_STD_STATUS2_BFLD

      Standard status code bit field 2 is a place holder for future expansion.

      ED_MFG_STATUS_RCD

      Set containing the manufacturer specific status flags.

      ED_MODE_STATUS_RCD ED_MODE ED_STD_STATUS1 ED_STD_STATUS2 ED_MFG_STATUS

      62

      See ED_MODE_BFLD. See ED_STD_STATUS1_BFLD. See ED_STD_STATUS2_BFLD. See ED_MFG_STATUS_RCD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.1.5

      ANSI

      Table 04 Pending Status Table

      Table 04 Data Description PENDING_STATUS_TBL (Table 04) is established to provide an indication of the tables present in the End Device with a pending status. Information contained within this table includes table number, manufacturer or standard table indicator, conditions (events) upon which activation of a pending table is to occur, self-read or demand reset upon activation indicators and several additional status variables. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 04 Type Definitions TYPE PE_STATUS_BFLD = BIT FIELD OF UINT8 EVENT_CODE : UINT(0..3); SELF_READ_FLAG : BOOL(4); DEMAND_RESET_FLAG : BOOL(5); RESERVED : FILL(6..7); END; TYPE PE_STIME_DATE_RCD = PACKED RECORD SWITCH GEN_CONFIG_TBL.TM_FORMAT OF CASE 0: RESERVED : ARRAY[5] OF FILL8; CASE 1: YEAR : BCD; MONTH : BCD; DAY : BCD; HOUR : BCD; MINUTE : BCD; CASE 2: YEAR : UINT8; MONTH : UINT8; DAY : UINT8; HOUR : UINT8; MINUTE : UINT8; CASE 3: U_TIME : UINT32; FILLER : FILL8; CASE 4: U_TIME_SEC :UINT32; FILLER : FILL8; END; END; TYPE EVENT_STORAGE_RCD = PACKED RECORD SWITCH .EVENT_SELECTOR.EVENT_CODE OF CASE 0: PE_STIME_DATE : PE_STIME_DATE_RCD; CASE 1: WEEKS : UINT8; DAYS : UINT8; HOURS : UINT8; MINUTES : UINT8; SECONDS : UINT8; CASE 2: MFG_CODE : BINARY(4); MFG_EVENT_CODE : UINT8; END; END; TYPE EVENT_RCD = PACKED RECORD

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      63

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      EVENT_SELECTOR EVENT_STORAGE

      : PE_STATUS_BFLD; : EVENT_STORAGE_RCD;

      END; TYPE ENTRY_ACTIVATION_RCD = PACKED RECORD EVENT : EVENT_RCD; TABLE_SELECTOR : TABLE_IDA_BFLD; END; TYPE PENDING_ACTIVATION_RCD = PACKED RECORD STANDARD_PENDING : SET(GEN_CONFIG_TBL.DIM_STD_TBLS_USED); MANUFACT_PENDING : SET(GEN_CONFIG_TBL.DIM_MFG_TBLS_USED); LAST_ACTIVATION_DATE_TIME : STIME_DATE; NBR_PENDING_ACTIVATION : UINT8; PENDING_TABLES : ARRAY[GEN_CONFIG_TBL.NBR_PENDING] OF ENTRY_ACTIVATION_RCD; END; TABLE 4 PENDING_STATUS_TBL = PENDING_ACTIVATION_RCD; Table 04 Element Descriptions Identifier

      Value

      PE_STATUS_BFLD EVENT_CODE

      0 1 2 3..15 SELF_READ_FLAG

      FALSE TRUE

      DEMAND_RESET_FLAG

      FALSE TRUE

      RESERVED PE_STIME_DATE_RCD

      64

      Definition Selectors indicating action to be performed upon activation of selected table. Variable that specifies the condition upon which the pending table shall be made active. The trigger condition is stored in the EVENT_STORAGE variable. The pending table is activated based on an absolute time contained in the EVENT_STORAGE variable. The pending table is activated based on a relative time contained in the EVENT_STORAGE variable. The pending table is activated based on a nontime associated trigger contained in the EVENT_STORAGE variable. Reserved. Do not perform a self read before pending table is activated. Perform a self read, if capable, before pending table is activated. Do not perform a demand reset before pending table is activated. Perform a demand reset, if capable, before pending table is activated. Reserved for future use. The fields and interpretation of the pending event short time and date format is identical to that of STIME_DATE, except that the data structure length is fixed in length.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 EVENT_STORAGE_RCD

      EVENT_RCD EVENTS_SELECTOR EVENT_STORAGE ENTRY_ACTIVATION_RCD EVENT TABLE_SELECTOR

      PENDING_ACTIVATION_RCD STANDARD_PENDING

      ANSI

      The pending event trigger condition that causes a pending table to become active. The EVENT_STORAGE_RCD always occupies five octets and is transmitted as BINARY(5). The actual interpretation of this record is controlled by the content of EVENTS_SELECTOR.EVENT_CODE. In the case where EVENT_SELECTOR.EVENT_CODE = 2, this structure contains a four-byte manufacturer code (MFG_CODE) as per GEN_CONFIG_TBL .DEVICE_CLASS followed by a one-byte manufacturer-defined event code (MFG_EVENT_CODE). Status bits indicating various associated with a pending table.

      conditions

      Variable for storage of the trigger condition that causes a pending table to become active. Details of the event that triggers pending table activation(s). Variable containing the table number, the standard or manufacturer flag and the pending flag. The pending flag, if set, indicates that the associated table has not been activated. This set variable indicates which of the standard tables are capable of being written with a pending status.

      MANUFACT_PENDING

      This set variable indicates which of the manufacturer tables are capable of being written with a pending status.

      LAST_ACTIVATION_DATE_TIME

      Date and time of the last pending table activated.

      NBR_PENDING_ACTIVATION

      Number of activation events in the PENDING_STATUS_TBL structure that have yet to be activated.

      PENDING_TABLES

      List of pending tables and associated activation triggers.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      65

      ANSI C12.19-2008 aparezca aquí.

      9.1.6

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 05 Device Identification Table

      Table 05 Data Description DEVICE_IDENT_TBL (Table 05) This table provides the unique identifier for the device as specified by the user. Global Default Table Property Overrides: Role=“CONTROL” Table 05 Type Definitions TYPE IDENT_RCD = PACKED RECORD IF GEN_CONFIG_TBL.ID_FORM != 0 THEN IDENTIFICATION : BCD(10); ELSE IDENTIFICATION : STRING(20); END; END; TABLE 5 DEVICE_IDENT_TBL = IDENT_RCD; Table 05 Element Descriptions Identifier

      Value

      IDENT_RCD IDENTIFICATION

      66

      Definition String of 20 characters or 20 BCD digits used to uniquely identify the device. This Element is the same as UTIL_INFO_TBL.DEVICE_ID when they both are available.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.1.7

      ANSI

      Table 06 Utility Information Table

      Table 06 Data Description UTIL_INFO_TBL (Table 06) is for utility use in providing additional End Device identifying or tracking information. Global Default Table Property Overrides: Role=“CONTROL” Table 06 Type Definitions TYPE UTIL_INFO_RCD = PACKED RECORD OWNER_NAME : STRING(20); UTILITY_DIV : STRING(20); IF GEN_CONFIG_TBL.MFG_SER_NUMBER_FLAG == FALSE THEN IF GEN_CONFIG_TBL.ID_FORM THEN SERVICE_POINT_ID : BCD(10); ELEC_ADDR : BCD(10); DEVICE_ID : BCD(10); UTIL_SER_NO : BCD(10); CUSTOMER_ID : BCD(10); ELSE SERVICE_POINT_ID : STRING(20); ELEC_ADDR : STRING(20); DEVICE_ID : STRING(20); UTIL_SER_NO : STRING(20); CUSTOMER_ID : STRING(20); END; END; COORDINATE_1 : BINARY(10); COORDINATE_2 : BINARY(10); COORDINATE_3 : BINARY(10); TARIFF_ID : STRING(8); EX1_SW_VENDOR : STRING(4); EX1_SW_VERSION_NUMBER : UINT8; EX1_SW_REVISION_NUMBER : UINT8; EX2_SW_VENDOR : STRING(4); EX2_SW_VERSION_NUMBER : UINT8; EX2_SW_REVISION_NUMBER : UINT8; PROGRAMMER_NAME : STRING(10); MISC_ID : STRING(30); IF GEN_CONFIG_TBL.VERSION_NO >= 2 THEN IF GEN_CONFIG_TBL.TM_FORMAT != 0 THEN FW_LOAD_DATE : DATE; END; END; END; TABLE 6 UTIL_INFO_TBL = UTIL_INFO_RCD; Table 06 Element Descriptions Identifier

      Value

      Definition

      UTIL_INFO_RCD

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      67

      ANSI C12.19-2008 aparezca aquí.

      68

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      OWNER_NAME

      Up to 20 characters. All printable characters are valid.

      UTILITY_DIV

      Utility division number. Up to 16 characters. All printable characters are valid.

      SERVICE_POINT_ID

      Up to 20 characters or BCD digits. ID number attached to the service point.

      ELEC_ADDR

      End device logical electrical address for mapping and study purposes. This is used by the utility as information only.

      DEVICE_ID

      The ID attached to the hardware. 20 characters or 20 BCD digits. This DEVICE_ID shall have the same value and interpretation as DEVICE_IDENT_TBL.IDENTIFICATION.

      UTIL_SER_NO

      Utility specified serial number. Up to 20 characters or 20 BCD digits.

      CUSTOMER_ID

      Up to 20 characters or 20 BCD digits. All printable characters are valid if characters.

      COORDINATE_1

      Generalized mapping coordinate x.

      COORDINATE_2

      Generalized mapping coordinate y.

      COORDINATE_3

      Generalized mapping coordinate z.

      TARIFF_ID

      Identification of the billing tariff.

      EX1_SW_VENDOR

      Name of manufacturer that configuration/programming software.

      EX1_SW_VERSION_NUMBER 0..255

      Configuration/programming software version number, unsigned binary number. Changes in value imply functional differences.

      EX1_SW_REVISION_NUMBER0..255

      Configuration/programming software revision number, unsigned binary number. Changes in value imply product corrections or improvements. Recommend use of '0' to designate preproduction or prototyping software.

      EX2_SW_VENDOR

      Name of the manufacturer that configuration/programming software.

      EX2_SW_VERSION_NUMBER 0..255

      Configuration/programming software version number. Changes in value imply functional differences.

      EX2_SW_REVISION_NUMBER0..255

      Configuration/programming software revision number, unsigned binary number. Changes in value imply product corrections or improvements. Recommend use of '0' to designate preproduction or prototyping software.

      provided

      provided

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      PROGRAMMER_NAME

      Name of the last programmer or programming device.

      MISC_ID

      Thirty characters, free form. All printable characters are allowed. This could be used to contain approval number, verification number, bar code, etc.

      FW_LOAD_DATE

      Date of the last End Device firmware loading in the field. The initial value, if the End Device was not updated yet in the field, shall be left to the discretion of the Manufacturer. This may be used to track End Devices that have suspect firmware, as an example.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      69

      ANSI C12.19-2008 aparezca aquí.

      9.1.8

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 07 Procedure Initiate Table

      Table 07 Data Description PROC_INITIATE_TBL (Table 07) allows for the execution of commands using the table structure. To execute a command a procedure identifier (PROC), a sequence number (SEQ_NBR), and an optional parameter list (PARM) are written into this table. The response to the command is placed in PROC_RESPONSE_TBL (Table 08) and is available to be read. As a minimum response, all commands shall produce an echo of the procedure identifier (PROC), an echo of the sequence number (SEQ_NBR), and a result code in procedure response table (Table 08). When the End Device supports more than one concurrent session or association, then the binding between procedure initiation and procedure response shall be limited to the session or association which initiated the procedure. The processing of procedure initiates and procedure responses of any session or association shall not interfere with another concurrent session or association. If a procedure initiate request is followed by another procedure initiate request, the procedure response for the first procedure initiate request may be lost. Note that the scope of the Procedure request parameters (defined in section “Standard Procedures” below) needs to be specified absolutely when referenced in syntax within the context of PROC_INITIATE_TBL (Table 7), since the scope of the Procedure Initiate Table is different than the scope of any one Procedure definition. Global Default Table Property Overrides: Atomic = “true”, Role=“CONTROL” Table 07 Type Definitions TYPE STD_PARM_RCD = PACKED RECORD IF PROC.TABLE_PROC_NBR == COLD_START_PROC THEN PROC_DATA_0 : NIL; END; IF PROC.TABLE_PROC_NBR == WARM_START_PROC THEN PROC_DATA_1 : NIL; END; IF PROC.TABLE_PROC_NBR == SAVE_CONFIGURATION_PROC THEN PROC_DATA_2 : NIL; END; IF PROC.TABLE_PROC_NBR == CLEAR_DATA_PROC THEN PROC_DATA_3 : NIL; END; IF PROC.TABLE_PROC_NBR == RESET_LIST_POINTERS_PROC THEN PROC_DATA_4 : RESET_LIST_POINTERS_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == UPDATE_LAST_READ_ENTRY_PROC THEN PROC_DATA_5 : UPDATE_LAST_READ_ENTRY_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == CHANGE_END_DEVICE_MODE_PROC THEN PROC_DATA_6 : CHANGE_END_DEVICE_MODE_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == CLEAR_STANDARD_STATUS_FLAGS_PROC THEN PROC_DATA_7 : NIL;

      70

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      END; IF PROC.TABLE_PROC_NBR == CLEAR_MANUFACTURER_STATUS_FLAGS_PROC THEN PROC_DATA_8 : NIL; END; IF PROC.TABLE_PROC_NBR == REMOTE_RESET_PROC THEN PROC_DATA_9 : REMOTE_RESET_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == SET_DATE_TIME_PROC THEN PROC_DATA_10 : SET_DATE_TIME_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == EXECUTE_DIAGNOSTICS_PROC THEN PROC_DATA_11 : NIL; END; IF PROC.TABLE_PROC_NBR == ACTIVATE_ALL_PENDING_TABLES_PROC THEN PROC_DATA_12 : NIL; END; IF PROC.TABLE_PROC_NBR == ACTIVATE_SPECIFIC_PENDING_TABLE_PROC THEN PROC_DATA_13 : ACTIVATE_SPECIFIC_PENDING_TABLE_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == CLEAR_ALL_PENDING_TABLES_PROC THEN PROC_DATA_14 : NIL; END; IF PROC.TABLE_PROC_NBR == CLEAR_SPECIFIC_PENDING_TABLE_PROC THEN PROC_DATA_15 : CLEAR_SPECIFIC_PENDING_TABLE_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == START_LOAD_PROFILE_PROC THEN PROC_DATA_16 : NIL; END; IF PROC.TABLE_PROC_NBR == STOP_LOAD_PROFILE_PROC THEN PROC_DATA_17 : NIL; END; IF PROC.TABLE_PROC_NBR == LOGIN_PROC THEN PROC_DATA_18 : LOGIN_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == LOGOUT_PROC THEN PROC_DATA_19 : NIL; END; IF PROC.TABLE_PROC_NBR == INITIATE_AN_IMMEDIATE_CALL_PROC THEN PROC_DATA_20 : INITIATE_AN_IMMEDIATE_CALL_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == DIRECT_LOAD_CONTROL_PROC THEN PROC_DATA_21 : DIRECT_LOAD_CONTROL_PROC.PARM_DATA_RCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      71

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END; IF PROC.TABLE_PROC_NBR == MODIFY_CREDIT_PROC THEN PROC_DATA_22 : MODIFY_CREDIT_PROC.PARM_DATA_RCD; END; { Procedures 23-26 are reserved. } IF PROC.TABLE_PROC_NBR == CLEAR_PENDING_CALL_STATUS_PROC THEN PROC_DATA_27 : NIL; END; IF PROC.TABLE_PROC_NBR == START_QUALITY_SERVICE_PROC THEN PROC_DATA_28 : NIL; END; IF PROC.TABLE_PROC_NBR == STOP_QUALITY_SERVICE_PROC THEN PROC_DATA_29 : NIL; END; IF PROC.TABLE_PROC_NBR == START_SECURED_REGISTERS_PROC THEN PROC_DATA_30 : START_SECURED_REGISTERS_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == STOP_SECURED_REGISTERS_PROC THEN PROC_DATA_31 : STOP_SECURED_REGISTERS_PROC.PARM_DATA_RCD; END; IF PROC.TABLE_PROC_NBR == SET_HTIME_DATE_PROC THEN PROC_DATA_32 : SET_HTIME_DATE_PROC.PARM_DATA_RCD; END; END; TYPE PARM_RCD = PACKED RECORD IF PROC.STD_VS_MFG_FLAG == FALSE THEN STANDARD: STD_PARM_RCD; END; IF PROC.STD_VS_MFG_FLAG == TRUE THEN MANUFACTURER: MFG_PARM_RCD; END; END; TYPE PROC_FORMAT_RCD = PACKED RECORD PROC : TABLE_IDB_BFLD; SEQ_NBR : UINT8; PARM : PARM_RCD; END; TABLE 7 PROC_INITIATE_TBL = PROC_FORMAT_RCD; Table 07 Element Descriptions Identifier

      Value

      Definition

      TABLE_IDB_BFLD TBL_PROC_NBR

      0..2047

      Redefines: STD.TABLE_IDB_BFLD. Procedure number to be executed.

      72

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 STD_VS_MFG_FLAG

      FALSE TRUE

      SELECTOR 0 1 2 3

      4..15 PROC_FORMAT_RCD PROC

      SEQ_NBR

      PARM

      ANSI

      Procedure selected by TBL_PROC_NBR is a standard defined procedure. Procedure selected by TBL_PROC_NBR is a manufacturer defined procedure. Describes how the response to the procedure is handled. Post response in PROC_RESPONSE_TBL (Table 08) on completion. Post response in PROC_RESPONSE_TBL (Table 08) on exception. Do not post response in PROC_RESPONSE_TBL (Table 08). Post response in PROC_RESPONSE_TBL (Table 08) immediately and post another response in PROC_RESPONSE_TBL (Table 08) on completion. Reserved. Bit field indicating procedure number to be executed and whether the procedure is a standard defined procedure or a manufacturer defined procedure. It also describes the response method.

      0..255

      The sequence number is supplied by initiator of the procedure. It shall be returned with procedure response in PROC_RESPONSE_TBL (Table 08) as a means of coordination. Argument for procedure as defined for individual procedures in section 9.1.8.1 and sub-sections.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      73

      ANSI C12.19-2008 aparezca aquí. 9.1.9

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 08 Procedure Response Table

      Table 08 Data Description PROC_RESPONSE_TBL (Table 08) is a complementary table to PROC_INITIATE_TBL (Table 07). This table contains a response, which gets posted to Table 08 as a result of a write to PROC_INITIATE_TBL (Table 07). When the End Device supports more than one concurrent session or association then the binding between procedure initiation and procedure response shall be limited to the session or association which initiated the procedure. If a procedure initiate request is followed by another procedure initiate request (within a session or association), the procedure response for the first initiated procedure may be lost. However, receipt of the first sequence number (SEQ_NBR) instead of a later sequence number indicates that one or more reads of Table 08 may be required to recover the related procedure response. Also the content of the procedure response table following termination of session or association is not defined by this Standard. Note that the scope of the Procedure response parameters (defined in section “Standard Procedures” above) needs to be specified absolutely when referenced in syntax within the context of PROC_RESPONSE_TBL (Table 08), since the scope of the Procedure Response Table is different than the scope of any one Procedure definition. Global Default Table Property Overrides: Atomic = “true”, Role=“DATA” Table 08 Type Definitions TYPE STD_RESP_RCD = PACKED RECORD IF PROC.TABLE_PROC_NBR == COLD_START_PROC THEN PROC_DATA_0 : NIL ; END ; IF PROC.TABLE_PROC_NBR == WARM_START_PROC THEN PROC_DATA_1 : NIL ; END ; IF PROC.TABLE_PROC_NBR == SAVE_CONFIGURATION_PROC THEN PROC_DATA_2 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_DATA_PROC THEN PROC_DATA_3 : NIL ; END ; IF PROC.TABLE_PROC_NBR == RESET_LIST_POINTERS_PROC THEN PROC_DATA_4 : NIL ; END ; IF PROC.TABLE_PROC_NBR == UPDATE_LAST_READ_ENTRY_PROC THEN PROC_DATA_5 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CHANGE_END_DEVICE_MODE_PROC THEN PROC_DATA_6 : CHANGE_END_DEVICE_MODE_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_STANDARD_STATUS_FLAGS_PROC THEN PROC_DATA_7 : CLEAR_STANDARD_STATUS_FLAGS_PROC.RESP_DATA_RCD ; END ;

      74

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      IF PROC.TABLE_PROC_NBR == CLEAR_MANUFACTURER_STATUS_FLAGS_PROC THEN PROC_DATA_8 : CLEAR_MANUFACTURER_STATUS_FLAGS_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == REMOTE_RESET_PROC THEN PROC_DATA_9 : REMOTE_RESET_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == SET_DATE_TIME_PROC THEN PROC_DATA_10 : SET_DATE_TIME_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == EXECUTE_DIAGNOSTICS_PROC THEN PROC_DATA_11 : NIL ; END ; IF PROC.TABLE_PROC_NBR == ACTIVATE_ALL_PENDING_TBL_PROC THEN PROC_DATA_12 : NIL ; END ; IF PROC.TABLE_PROC_NBR == ACTIVATE_SPECIFIC_PENDING_TBL_PROC THEN PROC_DATA_13 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_ALL_PENDING_TBL_PROC THEN PROC_DATA_14 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_SPECIFIC_PENDING_TBL_PROC THEN PROC_DATA_15 : NIL ; END ; IF PROC.TABLE_PROC_NBR == START_LOAD_PROFILE_PROC THEN PROC_DATA_16 : NIL ; END ; IF PROC.TABLE_PROC_NBR == STOP_LOAD_PROFILE_PROC THEN PROC_DATA_17 : NIL ; END ; IF PROC.TABLE_PROC_NBR == LOGIN_PROC THEN PROC_DATA_18 : NIL ; END ; IF PROC.TABLE_PROC_NBR == LOGOUT_PROC THEN PROC_DATA_19 : NIL ; END ; IF PROC.TABLE_PROC_NBR == INITIATE_IMMEDIATE_CALL_PROC THEN PROC_DATA_20 : NIL ; END ; IF PROC.TABLE_PROC_NBR == DIRECT_LOAD_CONTROL_PROC THEN PROC_DATA_21 : NIL ; END ; IF PROC.TABLE_PROC_NBR == MODIFY_CREDIT_PROC THEN PROC_DATA_22 : MODIFY_CREDIT_PROC. RESP_DATA_RCD ;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      75

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END ; { Procedures 23-26 are reserved. } IF PROC.TABLE_PROC_NBR == CLEAR_PENDING_CALL_STATUS_PROC THEN PROC_DATA_27 : NIL ; END ; IF PROC.TABLE_PROC_NBR == START_QUALITY_SERVICE_PROC THEN PROC_DATA_28 : NIL ; END ; IF PROC.TABLE_PROC_NBR == STOP_QUALITY_SERVICE_PROC THEN PROC_DATA_29 : NIL ; END ; IF PROC.TABLE_PROC_NBR == START_SECURED_REGISTERS_PROC THEN PROC_DATA_30 : START_SECURED_REGISTERS_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == STOP_SECURED_REGISTERS_PROC THEN PROC_DATA_31 : STOP_SECURED_REGISTERS_PROC.RESP_DATA_RCD ; END IF PROC.TABLE_PROC_NBR == SET_HTIME_DATE_PROC THEN PROC_DATA_32 : SET_HTIME_DATE_PROC.RESP_DATA_RCD ; END END ; TYPE MFG_RESP_RCD = PACKED RECORD { NO PROCEDURES DEFINED } END ; TYPE RESP_DATA_RCD = PACKED RECORD IF PROC.STD_VS_MFG_FLAG == FALSE THEN STANDARD : STD_RESP_RCD; END; IF PROC.STD_VS_MFG_FLAG == TRUE THEN MANUFACTURER : MFG_RESP_RCD; END; END; TYPE PROC_RESPONSE_RCD = PACKED RECORD PROC : TABLE_IDB_BFLD; SEQ_NBR : UINT8; RESULT_CODE : UINT8; RESP_DATA : RESP_DATA_RCD; END; TABLE 8 PROC_RESPONSE_TBL = PROC_RESPONSE_RCD; Table 08 Element Descriptions Identifier

      Value

      Definition

      TABLE_IDB_BFLD TBL_PROC_NBR

      0..2047

      Redefines: STD.TABLE_IDB_BFLD. Procedure number executed by End Device.

      76

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 STD_VS_MFG_FLAG

      FALSE TRUE

      SELECTOR

      defined

      Not used in PROC_RESPONSE_TBL (Table 08). See PROC_INITIATE_TBL (Table 07).

      PROC_RESPONSE_RCD PROC

      SEQ_NBR

      Procedure was a standard procedure. Procedure was a manufacturer procedure.

      ANSI

      Bit field indicating procedure number executed and whether the procedure was a standard defined or a manufacturer defined. 0..255

      RESULT_CODE 0 1 2 3 4 5 6 7..255 RESP_DATA_RCD

      Supplied by initiator of the procedure PROC_INITIATE_TBL (Table 07). Returned with response as a means of coordination. Code which identifies the status of the procedure execution. The codes are defined as follows: Procedure completed. Procedure accepted but not fully completed. Invalid parameter for known procedure, procedure was ignored. Procedure conflicts with current device setup, procedure was ignored. Timing constraint, procedure was ignored. No authorization for requested procedure, procedure was ignored. Un-recognized procedure, procedure was ignored. Reserved. Procedure response record as defined for individual procedures in PROC_INITIATE_TBL (Table 07). RESP_DATA_RCD is posted if procedure was successfully completed (RESULT_CODE = 0) and SELECTOR in PROC_INITIATE_TBL (Table 07) is not set to a value of 2.

      9.1.10 Standard Procedures The following procedures are defined as standard procedures by this document. STD_VS_MFG_FLAG shall be set to FALSE.

      9.1.10.1

      Procedure 00 Cold Start

      Procedure 00 Data Description This procedure causes the End Device to return to a manufacturer default known state. All data values, programs and conditions may be lost. Communication may be broken. If an Event Log exists, an attempt shall be made to retain it. Procedure 00 Type Definitions

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      77

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      PROCEDURE 0 COLD_START_PROC;

      9.1.10.2

      Procedure 01 Warm Start

      Procedure 01 Data Description This procedure causes the End Device to return to a "power-up" state. Communication may be broken. Procedure 01 Type Definitions PROCEDURE 1 WARM_START_PROC;

      9.1.10.3

      Procedure 02 Save Configuration

      Procedure 02 Data Description This procedure causes the End Device to save its active configuration. Procedure 02 Type Definitions PROCEDURE 2 SAVE_CONFIGURATION_PROC;

      9.1.10.4

      Procedure 03 Clear Data

      Procedure 03 Data Description This procedure causes the End Device to purge generated data fields but retain programming fields. Data fields to be purged are specified by the device manufacturer. Procedure 03 Type Definitions PROCEDURE 3 CLEAR_DATA_PROC;

      9.1.10.5

      Procedure 04 Reset List Pointers

      Procedure 04 Data Description When this procedure is invoked, the End Device attempts to reset list control variables to their initial state. To execute this procedure, the initiator shall in addition be required to have access permission to the procedure and write access permission to the table containing the selected list(s). Procedure 04 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD LIST : UINT8; END; PROCEDURE 4 RESET_LIST_POINTERS_PROC REQUEST = PARM_DATA_RCD; Procedure 04 Element Descriptions Identifier

      Value

      Definition

      PARM_DATA_RCD LIST

      0

      Reserved

      78

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 1 2 3 4 5 6 7

      8 9 10 11 12 13 14..127 128..254 255

      9.1.10.6

      ANSI

      EVENT_LOG_TBL (Table 76) SELF_READ_DATA_TBL (Table 26) LP_DATA_SET1_TBL (Table 64) LP_DATA_SET2_TBL (Table 65) LP_DATA_SET3_TBL (Table 66) LP_DATA_SET4_TBL (Table 67) LP_DATA_SET1_TBL (Table 64) and LP_DATA_SET2_TBL (Table 65) and LP_DATA_SET3_TBL (Table 66) and LP_DATA_SET4_TBL (Table 67) HISTORY_LOG_TBL (Table 74) QUALITY_LOG_TBL (Table 154) TD_ASYNC_TBL (Table 155) FD_ASYNC_TBL (Table 156) TIME_DOMAIN_TBL (Table 157) FD_SPECTRA_TBL (Table 158) Reserved Reserved for Manufacturer’s Lists All lists except EVENT_LOG_TBL (Table 76)

      Procedure 05 Update Last Read Entry

      Procedure 05 Data Description When this procedure is invoked, the End Device attempts to reduce the list variable NBR_UNREAD_ENTRIES by the value specified. To execute this procedure, the initiator shall in addition be required to have access to the procedure and write access to the table containing the selected list(s). Procedure 05 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD LIST : UINT8; ENTRIES_READ : UINT16; END; PROCEDURE 5 UPDATE_LAST_READ_ENTRY_PROC REQUEST = PARM_DATA_RCD; Procedure 05 Element Descriptions Identifier PARM_DATA_RCD LIST

      Value

      Definition

      0 1 2 3 4 5 6 7

      Reserved EVENT_LOG_TBL (Table 76) SELF_READ_DATA_TBL (Table 26) LP_DATA_SET1_TBL (Table 64) LP_DATA_SET2_TBL (Table 65) LP_DATA_SET3_TBL (Table 66) LP_DATA_SET4_TBL (Table 67) LP_DATA_SET1_TBL (Table 64) and LP_DATA_SET2_TBL (Table 65) and LP_DATA_SET3_TBL (Table 66) and LP_DATA_SET4_TBL (Table 67) HISTORY_LOG_TBL (Table 74) QUALITY_LOG_TBL (Table 154)

      8 9

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      79

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      ENTRIES_READ

      9.1.10.7

      10 11 12 13 14..127 128..254 255

      TD_ASYNC_TBL (Table 155) FD_ASYNC_TBL (Table 156) TIME_DOMAIN_TBL (Table 157) FD_SPECTRA_TBL (Table 158) Reserved Reserved for Manufacturer’s Lists All lists except EVENT_LOG_TBL (Table 76)

      0..65535

      Number of entries confirmed.

      Procedure 06 Change End Device Mode

      Procedure 06 Data Description This procedure changes the operational modes of the End Device. Procedure 06 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD ED_MODE : ED_MODE_STATUS_TBL.ED_MODE_BFLD; END; TYPE RESP_DATA_RCD = PACKED RECORD ED_MODE : ED_MODE_STATUS_TBL.ED_MODE_BFLD; END; PROCEDURE 6 CHANGE_END_DEVICE_MODE_PROC REQUEST = PARM_DATA_RCD RESPONSE = RESP_DATA_RCD; Procedure 06 Element Descriptions Identifier

      Value

      PARM_DATA_RCD ED_MODE

      RESP_DATA_RCD ED_MODE

      9.1.10.8

      Definition See ED_MODE_STATUS_TBL.ED_MODE (Table 03). This Element contains the desired mode. See ED_MODE_STATUS_TBL.ED_MODE (Table 03). This Element contains the mode resulting from the execution of this Procedure.

      Procedure 07 Clear Standard Status Flags

      Procedure 07 Data Description When invoked, this procedure causes the End Device to attempt to clear all standard status flags. Procedure 07 Type Definitions TYPE RESP_DATA_RCD = PACKED RECORD ED_STD_STATUS_1 : ED_MODE_STATUS_TBL.ED_STD_STATUS1_BFLD; ED_STD_STATUS_2 : ED_MODE_STATUS_TBL.ED_STD_STATUS2_BFLD; END;

      80

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      PROCEDURE 7 CLEAR_STANDARD_STATUS_FLAGS_PROC RESPONSE = RESP_DATA_RCD; Procedure 07 Element Descriptions Identifier

      Value

      RESP_DATA_RCD

      The End Device resulting status flags following the execution of this Procedure. See ED_MODE_STATUS_TBL.ED_STD_STATUS1 _BFLD (Table 03). See ED_MODE_STATUS_TBL.ED_STD_STATUS2 _BFLD (Table 03).

      ED_STD_STATUS_1 ED_STD_STATUS_2

      9.1.10.9

      Definition

      Procedure 08 Clear Manufacturer Status Flags

      Procedure 08 Data Description When invoked, the End Device attempts to clear all manufacturer status flags. Procedure 08 Type Definitions TYPE RESP_DATA_RCD = PACKED RECORD ED_MFG_STATUS : ED_MODE_STATUS_TBL.ED_MFG_STATUS_RCD; END; PROCEDURE 8 CLEAR_MANUFACTURER_STATUS_FLAGS_PROC RESPONSE = RESP_DATA_RCD; Procedure 08 Element Descriptions Identifier

      Value

      RESP_DATA_RCD ED_MFG_STATUS

      Definition See ED_MODE_STATUS_TBL.ED_MFG_STATUS_ RCD (Table 03).

      9.1.10.10 Procedure 09 Remote Reset Procedure 09 Data Description When invoked, this procedure attempts to perform the specified combination of resets. The following resets are supported: Self Read, Demand Reset, and Season Change. Procedure 09 Type Definitions TYPE ACTION_FLAG_BFLD = BIT FIELD OF UINT8 DEMAND_RESET_FLAG : BOOL(0); SELF_READ_FLAG : BOOL(1); SEASON_CHANGE_FLAG : BOOL(2); NEW_SEASON : UINT(3..6); FILLER : FILL(7..7);

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      81

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END; TYPE PARM_DATA_RCD = PACKED RECORD ACTION_FLAG : ACTION_FLAG_BFLD; END; TYPE RESP_DATA_RCD = PACKED RECORD SUCCESS_FLAG : ACTION_RESPONSE_FLAG_BFLD; END; PROCEDURE 9 REMOTE_RESET_PROC REQUEST = PARM_DATA_RCD RESPONSE = RESP_DATA_RCD; Procedure 09 Element Descriptions Identifier

      Value

      Definition

      FALSE TRUE

      Do not perform a demand reset. Perform a demand reset.

      SELF_READ_FLAG

      FALSE TRUE

      Do not perform a self read. Perform a self read.

      SEASON_CHANGE_FLAG

      FALSE

      Do not perform a change to the new season specified Perform a change to the new season specified.

      ACTION_FLAG_BFLD DEMAND_RESET_FLAG

      TRUE NEW_SEASON

      0..15

      Season to change to if SEASON_CHANGE bit is set.

      PARM_DATA_RCD ACTION_FLAG

      Bit mask denotes the reset actions to perform.

      ACTION_RESPONSE_FLAG_BFLD

      Redefines: ACTION_FLAG_BFLD.

      DEMAND_RESET_FLAG

      FALSE TRUE

      Did not perform a demand reset. Performed a demand reset.

      SELF_READ_FLAG

      FALSE TRUE

      Did not perform a self read. Performed a self read.

      SEASON_CHANGE_FLAG

      FALSE

      Did not perform a change to the new season specified Performed a change to the new season specified.

      TRUE NEW_SEASON

      0..15

      RESP_DATA_RCD SUCCESS_FLAG

      The season number the End Device changed to if SEASON_CHANGE bit was set. Indicates which "resets" were successful by setting corresponding bits.

      9.1.10.11 Procedure 10 Set Date and/or Time Procedure 10 Data Description

      82

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      This procedure is used to set the date and/or time in the End Device. It is important to note that the new date time field within this procedure REQUEST (DATE_TIME) might be transported using a different time reference (End Device operational time, Standard time or UTC) from the one published by the Clock Table (Table 52), Clock State Table (Table 55) or Precision Clock State Table (Table 57). See the introduction of Decade 5 for more information. Procedure 10 Type Definitions TYPE SET_MASK_BFLD = BIT FIELD OF UINT8 SET_TIME_FLAG : BOOL(0); SET_DATE_FLAG : BOOL(1); SET_TIME_DATE_QUAL : BOOL(2); FILLER : FILL(3..7); END; TYPE PARM_DATA_RCD = PACKED RECORD SET_MASK : SET_MASK_BFLD; DATE_TIME : LTIME_DATE; TIME_DATE_QUAL : CLOCK_TBL.TIME_DATE_QUAL_BFLD; END; TYPE RESP_DATA_RCD = PACKED RECORD DEV_DATE_TIME_BEFORE : LTIME_DATE; DEV_DATE_TIME_AFTER : LTIME_DATE; END; PROCEDURE 10 SET_DATE_TIME_PROC REQUEST = PARM_DATA_RCD RESPONSE = RESP_DATA_RCD; Procedure 10 Element Descriptions Identifier

      Value

      Definition

      FALSE TRUE

      Do not set time. Set time.

      SET_DATE_FLAG

      FALSE TRUE

      Do not set date. Set date.

      SET_TIME_DATE_QUAL

      FALSE TRUE

      Do not set time date qualifier. Set time date qualifier.

      SET_MASK_BFLD SET_TIME_FLAG

      PARM_DATA_RCD SET_MASK

      Bit mask denotes the actions to perform.

      DATE_TIME

      New date and time.

      TIME_DATE_QUAL

      See CLOCK_TBL.TIME_DATE_QUAL_BFLD.

      TIME_DATE_QUAL_BFLD DAY_OF_WEEK

      0

      Current day of the week. Redefines: CLOCK_TBL.TIME_DATE_QUAL_BFLD.DAY_ OF_WEEK_ENUM. Sunday

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      83

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      DST_FLAG

      1 2 3 4 5 6 7

      Monday Tuesday Wednesday Thursday Friday Saturday Do not set DAY_OF_WEEK.

      FALSE

      The DATE_TIME Element is not within a daylight saving time period. The DATE_TIME Element is within a daylight saving time period.

      TRUE GMT_FLAG

      FALSE TRUE

      TM_ZN_APPLIED_FLAG

      FALSE TRUE DST_APPLIED_FLAG

      FALSE TRUE

      DST_SUPPORTED_FLAG RESP_DATA_RCD DEV_DATE_TIME_BEFORE

      DEV_DATE_TIME_AFTER

      FALSE TRUE

      Reserved. Shall be set to true. This field and the following one (DST_APPLIED_FLAG) define the time reference (End Device operational time, Standard time or UTC time) used during the transport of the new date time field (DATE_TIME) The DATE_TIME Element does not include time zone offset adjustment. The DATE_TIME Element includes time zone offset adjustment. The DATE_TIME Element does not include daylight savings adjustment. The DATE_TIME Element includes daylight savings adjustment. Disable Daylight Saving Time tracking. Enable Daylight Saving Time tracking. Date and time in the End Device just before set date time procedure was executed. This field is transported according to TIME_DATE_QUAL found in any one of Clock table (Table 52), Clock State Table (Table 55) or Precision Clock State Table (Table 57). Date and time in the End Device just after set date time procedure was executed. This field is transported according to TIME_DATE_QUAL in any one of the Clock table (Table 52), Clock State Table (Table 55) and Precision Clock State Table (Table 57).

      9.1.10.12 Procedure 11 Execute Diagnostics Procedure Procedure 11 Data Description This procedure initiates an End Device diagnostic procedure.

      84

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Procedure 11 Type Definitions PROCEDURE 11 EXECUTE_DIAGNOSTICS_PROC;

      9.1.10.13 Procedure 12 Activate All Pending Tables Procedure 12 Data Description This procedure causes the End Device to immediately activate all pending tables regardless of activation trigger(s). Procedure 12 Type Definitions PROCEDURE 12 ACTIVATE_ALL_PENDING_TABLES_PROC;

      9.1.10.14 Procedure 13 Activate Specific Pending Table(S) Procedure 13 Data Description This procedure causes the End Device to immediately activate any pending table(s) with the specified activation trigger. Procedure 13 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD EVENT : PENDING_STATUS_TBL.EVENT_RCD; END; PROCEDURE 13 ACTIVATE_SPECIFIC_PENDING_TABLE_PROC REQUEST = PARM_DATA_RCD; Procedure 13 Element Descriptions Identifier PARM_DATA_RCD EVENT

      Value

      Definition See PENDING_STATUS_TBL.EVENT_RCD (Table 04).

      9.1.10.15 Procedure 14 Clear All Pending Tables Procedure 14 Data Description This procedure causes the End Device to immediately clear the pending state of all pending tables. Procedure 14 Type Definitions PROCEDURE 14 CLEAR_ALL_PENDING_TABLES_PROC;

      9.1.10.16 Procedure 15 Clear Specific Pending Table(S) Procedure 15 Data Description This procedure causes the End Device to immediately clear the pending status of all pending table(s) with the specified activation trigger. Procedure 15 Type Definitions

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      85

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      TYPE PARM_DATA_RCD = PACKED RECORD EVENT : PENDING_STATUS_TBL.EVENT_RCD; END; PROCEDURE 15 CLEAR_SPECIFIC_PENDING_TABLE_PROC REQUEST = PARM_DATA_RCD; Procedure 15 Element Descriptions Identifier

      Value

      PARM_DATA_RCD EVENT

      Definition See PENDING_STATUS_TBL.EVENT_RCD (Table 04).

      9.1.10.17 Procedure 16 Start Load Profile Procedure 16 Data Description This procedure starts all defined load profile sets. Procedure 16 Type Definitions PROCEDURE 16 START_LOAD_PROFILE_PROC;

      9.1.10.18 Procedure 17 Stop Load Profile Procedure 17 Data Description This procedure stops all active load profile sets. Procedure 17 Type Definitions PROCEDURE 17 STOP_LOAD_PROFILE_PROC;

      9.1.10.19 Procedure 18 Log In Procedure 18 Data Description When invoked, this procedure establishes the active USER_ID that is used in the HISTORY_LOG_TBL (Table 74) and in the EVENT_LOG_TBL (Table 76) and supplies a password. Procedure 18 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD USER_ID : UINT16; PASSWORD : BINARY(20); END; PROCEDURE 18 LOGIN_PROC REQUEST = PARM_DATA_RCD; Procedure 18 Element Descriptions Identifier

      86

      Value

      Definition

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 PARM_DATA_RCD USER_ID

      0..65535

      ANSI

      ID associated with current user. Note: USER_ID of zero and USER_ID of one should be avoided since it represents an End Device initiated event and manually initiated event respectively in the loggers.

      PASSWORD

      Password supplied. The first octet of the password shall be placed in the lowest index position of the Element.

      9.1.10.20 Procedure 19 Log Out Procedure 19 Data Description Deactivates the USER_ID and password. Procedure 19 Type Definitions PROCEDURE 19 LOGOUT_PROC;

      9.1.10.21 Procedure 20 Initiate an Immediate Call Procedure 20 Data Description This procedure causes the End Device to immediately initiate a call with the phone number specified. Call windows are ignored. TBL_PROC_NBR PARM_RCD RESP_DATA_RCD

      20

      Procedure number. Defined below. Not used.

      Parameters Procedure 20 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD PHONE_NUMBER_INDEX : UINT8; END; PROCEDURE 20 INITIATE_AN_IMMEDIATE_CALL_PROC REQUEST = PARM_DATA_RCD; Procedure 20 Element Descriptions Identifier

      Value

      Definition

      PARM_DATA_RCD PHONE_NUMBER_INDEX

      0..6

      Selection of which phone number to use for the call originating procedure. This value is an index to the PHONE_NUMBERS array in table ORIGINATE_PARAMETERS_TBL (Table 93).

      9.1.10.22 Procedure 21 Direct Load Control

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      87

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Procedure 21 Data Description This procedure provides direct load control through a communication link. The load control directive data structure used by this procedure is shared by all other methods supported in the load control decade. Procedure 21 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD NEW_LEVEL : UINT8; TO_SET : SET(ACT_LOAD_CONTROL_TBL.NBR_OF_CONTROL_POINT); IF ACT_LOAD_CONTROL_TBL.DURATION_SUPPORTED THEN DURATION : TIME; END; IF ACT_LOAD_CONTROL_TBL.RANDOMIZATION_SUPPORTED THEN RANDOMIZATION_PERIOD : TIME; END; END; PROCEDURE 21 DIRECT_LOAD_CONTROL_PROC REQUEST = PARM_DATA_RCD; Procedure 21 Element Descriptions Identifier

      Value

      PARM_DATA_RCD TO_SET FALSE TRUE NEW_LEVEL

      0..100

      Definition List of control points selected. This control point is not affected by this load control directive. This control point is affected by this load control directive. New level (0% to 100%) requested for the selected control points. For control points that don’t support level, where LEVEL_SUPPORTED in the Load control status table (Table 112) = FALSE, NEW_LEVEL lower than 50% means OFF and greater than or equal to means ON.

      DURATION

      Period of time before automatically restoring the original state of the selected control points. Duration set to 00:00:00 means no duration and produces a permanent state change.

      RANDOMIZATION_PERIOD

      The upper bound allowable for the randomization period in minutes. The requested load control directive shall be asserted within 0 to RANDOMIZATION_PERIOD minutes, based on a random value computed by some means.

      9.1.10.23 Procedure 22 Modify Credit Procedure 22 Data Description This procedure is used to modify the PREPAYMENT_STATUS_TBL.REMAINING_CREDIT as defined in

      88

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      table “Prepayment status table” (Table 116). Procedure 22 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD OPERATION : UINT8; VALUE : NI_FMAT1; END; TYPE RESP_DATA_RCD = PACKED RECORD NEW_REMAINING_CREDIT : NI_FMAT1; END; PROCEDURE 22 MODIFY_CREDIT_PROC REQUEST = PARM_DATA_RCD RESPONSE = RESP_DATA_RCD; Procedure 22 Element Descriptions Identifier

      Value

      Definition

      0 1 2 3..255

      Operation requested on the PREPAYMENT_STATUS_TBL. REMAINING_CREDIT value. Add to credit Subtract from credit Adjust credit Reserved.

      PARM_DATA_RCD OPERATION

      VALUE RESP_DATA_RCD NEW_REMAINING_CREDIT

      Parameter of this operation. PREPAYMENT_STATUS_TBL. REMAINING_CREDIT available processing this request.

      after

      9.1.10.24 Procedure 23 Reserved Reserved.

      9.1.10.25 Procedure 24 Reserved Reserved.

      9.1.10.26 Procedure 25 Reserved Reserved.

      9.1.10.27 Procedure 26 Reserved Reserved.

      9.1.10.28 Procedure 27 Clear Pending Call Status Procedure 27 Data Description This procedure causes the End Device to immediately clear all pending call reasons in Table 98 Originate Status. Procedure 27 Type Definitions PROCEDURE 27 CLEAR_PENDING_CALL_STATUS_PROC;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      89

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.1.10.29 Procedure 28 Start Quality of Service Monitors Procedure 28 Data Description This procedure starts all quality of service reporting. Procedure 28 Type Definitions PROCEDURE 28 START_QUALITY_SERVICE_PROC;

      9.1.10.30 Procedure 29 Stop Quality of Service Monitors Procedure 29 Data Description This procedure stops all active quality of service reporting. Procedure 29 Type Definitions PROCEDURE 29 STOP_QUALITY_SERVICE_PROC;

      9.1.10.31 Procedure 30 Start Secured Registers Procedure 30 Data Description This procedure enables event logging (if implemented) of secure register reads (if implemented) and volatile data freezing (if implemented), in Event Log Data Table (Table 76), to facilitate End Device reading. Procedure 30 Type Definitions TYPE SECURED_READ_REQ_BFLD = BIT FIELD OF UINT16 SECURED_REGISTER_FLAG : BOOL(0); DATA_FREEZE_FLAG : BOOL(1); RESERVED : FILL(2..15); END; TYPE PARM_DATA_RCD = PACKED RECORD READ_ENABLE : SECURED_READ_REQ_BFLD; SECURED_READ_MAX : UINT16; END; TYPE SECURED_READ_RESP_BFLD = BIT FIELD OF UINT16 SECURED_REGISTER_FLAG : BOOL(0); DATA_FREEZE_FLAG : BOOL(1); RESERVED : FILL(2..15); END; TYPE RESP_DATA_RCD = PACKED RECORD READ_ENABLE : SECURED_READ_RESP_BFLD; SECURED_READ_MAX : UINT16; END; PROCEDURE 30 START_SECURED_REGISTERS_PROC REQUEST = PARM_DATA_RCD RESPONSE = RESP_DATA_RCD; Procedure 30 Element Descriptions

      90

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 Identifier

      Value

      SECURED_READ_REQ_BFLD

      ANSI

      Definition Bit field use to indicate the secured read related operational parameters being enabled.

      SECURED_REGISTER_FLAG FALSE TRUE

      DATA_FREEZE_FLAG

      FALSE TRUE

      PARM_DATA_RCD READ_ENABLE SECURED_READ_MAX 0 1..65535 SECURED_READ_RESP_BFLD

      The operational state of the secured register read is left un-changed. Begin secured read operations. The End Device shall generate End Device secured register events (Read Secured Register or Read Secured Table) following the transfer of a secured register Table or Element to an EndDevice reader, provided that this feature is implemented by the End device. Event-logging of secured-register reads shall cease immediately upon invocation of the “Stop Secured Registers” procedure, termination of the communication session that invoked the “Start Secured Registers” procedure, or upon reaching the maximum number of secured read operations that were permitted for this session or association. The operation state of the data freeze is left unchanged. Create a frozen (unchanging) copy of all volatile End Device data values. Following acceptance of this optional capability all values read from the End device shall be non-changing and coincident. The data shall remain frozen while the number of active sessions plus active communication associations that initiated a data freeze is greater than zero (0). See request SECURED_READ_REQ_BFLD. The maximum number of Event Log entries estimated as needed to report the upcoming secured read events. Reserved The maximum number of events requested. Bit field used to indicate the secured read related operations enabled status. Redefines SECURED_READ_REQ_BFLD.

      SECURED_REGISTER_FLAG

      DATA_FREEZE_FLAG

      FALSE TRUE

      Secured read Event Logging is disabled. Secured read Event Logging is enabled.

      FALSE

      End Device Table data is not frozen (the End Device shall report real-time data values). End Device Table data is frozen (the End Device shall continue normal data processing in the background to prevent loss of data).

      TRUE

      RESP_DATA_RCD

      Procedure response data.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      91

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      READ_ENABLE SECURED_READ_MAX 0 1..65535

      Redefines: PARM_DATA_RCD. See response SECURED_READ_RESP_BFLD. The maximum number of Event Log entries available to report the upcoming secured read events. The maximum number of secured register reading events has been reached. The remaining number of secured register reading events that can be recorded.

      9.1.10.32 Procedure 31 Stop Secured Registers Procedure 31 Data Description This procedure disables event logging (if implemented) of secure register reads (if implemented) and volatile data freezing (if implemented), in Event Log Data Table (Table 76), to reinstate non-secured End Device reading. Procedure 31 Type Definitions TYPE SECURED_READ_REQ_BFLD = BIT FIELD OF UINT16 SECURED_REGISTER_FLAG : BOOL(0); DATA_FREEZE_FLAG : BOOL(1); RESERVED : FILL(2..15); END; TYPE PARM_DATA_RCD = PACKED RECORD READ_DISABLE : SECURED_READ_REQ_BFLD; END; TYPE SECURED_READ_RESP_BFLD = BIT FIELD OF UINT16 SECURED_REGISTER_FLAG : BOOL(0); DATA_FREEZE_FLAG : BOOL(1); RESERVED : FILL(2..15); END; TYPE RESP_DATA_RCD = PACKED RECORD READ_DISABLE : SECURED_READ_RESP_BFLD; END; PROCEDURE 31 STOP_SECURED_REGISTERS_PROC REQUEST = PARM_DATA_RCD RESPONSE = RESP_DATA_RCD; Procedure 31 Element Descriptions Identifier

      Value

      SECURED_READ_REQ_BFLD

      Definition Bit field used to indicate the secured read related operations parameters being disabled. Redefines START_SECURED_REGISTERS_PROC. SECURED_READ_REQ_BFLD.

      SECURED_REGISTER_FLAG

      92

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 FALSE TRUE DATA_FREEZE_FLAG

      FALSE TRUE

      PARM_DATA_RCD READ_DISABLE

      ANSI

      The operational state of the secured register read is left unchanged. Stop secured read operations. The operational state of the data freeze is left unchanged. Unfreeze all volatile End Device data values. See request SECURED_READ_REQ_BFLD.

      SECURED_READ_RESP_BFLD

      Bit field used to indicate the secured read related operations completion status. Redefines START_SECURED_REGISTERS_PROC. SECURED_READ_RESP_BFLD.

      SECURED_REGISTER_FLAG

      DATA_FREEZE_FLAG

      FALSE TRUE

      Secured read Event Logging is disabled. Secured read Event Logging is enabled.

      FALSE

      End Device Table data not frozen (the End Device shall report real-time data values). End Device Table data copy is frozen (the End Device shall continue normal data processing in the background to prevent loss of data).

      TRUE

      RESP_DATA_RCD

      Procedure response data.

      READ_ENABLE SECURED_READ_MAX

      0 1..65535

      Redefines: PARM_DATA_RCD. See response SECURED_READ_RESP_BFLD. The total number of Event Log entries created to report the secured read events since the last initiation of the Stop Secured Registers procedure in Event Log Data Table (Table 76). No events recorded. The actual number of secured register reading events recorded.

      9.1.10.33 Procedure 32 Set Precision Date and/or Time Procedure 32 Data Description This procedure is used to set the date and/or time in the End Device with higher precision than that provided by Procedure 10, SET_DATE_TIME_PROC. It is important to note that the new date time field within this procedure REQUEST (DATE_TIME) can be transported using a different time reference (End Device operational time, Standard time or UTC) from the one published by the Clock Table (Table 52), Clock State Table (Table 55) or Precision Clock State Table (Table 57). See the introduction of Decade 5 for more information. Procedure 32 Type Definitions TYPE PARM_DATA_RCD = PACKED RECORD SET_MASK : SET_DATE_TIME_PROC.SET_MASK_BFLD; DATE_TIME : HTIME_DATE; TIME_DATE_QUAL : CLOCK_TBL.TIME_DATE_QUAL_BFLD; END; TYPE RESP_DATA_RCD = PACKED RECORD DEV_DATE_TIME_BEFORE : HTIME_DATE;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      93

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      DEV_DATE_TIME_AFTER

      : HTIME_DATE;

      END; PROCEDURE 32 SET_HTIME_DATE_PROC REQUEST = PARM_DATA_RCD; RESPONSE = RESP_DATA_RCD; Procedure 32 Element Descriptions Identifier

      Value

      PARM_DATA_RCD SET_MASK

      Bit mask denotes the actions to perform. See SET_DATE_TIME_PROC.SET_MASK_BFLD

      TIME_DATE_QUAL

      See CLOCK_TBL.TIME_DATE_QUAL_BFLD.

      DATE_TIME

      New date and time.

      RESP_DATA_RCD DEV_DATE_TIME_BEFORE

      DEV_DATE_TIME_AFTER

      94

      Definition

      Date and time in the End Device just before set date time procedure was executed. This field is transported according to TIME_DATE_QUAL found in any one of Clock table (Table 52), Clock State Table (Table 55) or Precision Clock State Table (Table 57). Date and time in the End Device just after set date time procedure was executed. This field is transported according to TIME_DATE_QUAL in any one of the Clock table (Table 52), Clock State Table (Table 55) and Precision Clock State Table (Table 57).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.1.11 Table 08 Procedure Response Table Table 08 Data Description PROC_RESPONSE_TBL (Table 08) is a complementary table to PROC_INITIATE_TBL (Table 07). This table contains a response, which gets posted to Table 08 as a result of a write to PROC_INITIATE_TBL (Table 07). When the End Device supports more than one concurrent session or association then the binding between procedure initiation and procedure response shall be limited to the session or association which initiated the procedure. If a procedure initiate request is followed by another procedure initiate request (within a session or association), the procedure response for the first initiated procedure may be lost. However, receipt of the first sequence number (SEQ_NBR) instead of a later sequence number indicates that one or more reads of Table 08 may be required to recover the related procedure response. Also the content of the procedure response table following termination of session or association is not defined by this Standard. Note that the scope of the Procedure response parameters (defined in section “Standard Procedures” above) needs to be specified absolutely when referenced in syntax within the context of PROC_RESPONSE_TBL (Table 08), since the scope of the Procedure Response Table is different than the scope of any one Procedure definition. Global Default Table Property Overrides: Atomic = “true”, Role=“DATA” Table 08 Type Definitions TYPE STD_RESP_RCD = PACKED RECORD IF PROC.TABLE_PROC_NBR == COLD_START_PROC THEN PROC_DATA_0 : NIL ; END ; IF PROC.TABLE_PROC_NBR == WARM_START_PROC THEN PROC_DATA_1 : NIL ; END ; IF PROC.TABLE_PROC_NBR == SAVE_CONFIGURATION_PROC THEN PROC_DATA_2 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_DATA_PROC THEN PROC_DATA_3 : NIL ; END ; IF PROC.TABLE_PROC_NBR == RESET_LIST_POINTERS_PROC THEN PROC_DATA_4 : NIL ; END ; IF PROC.TABLE_PROC_NBR == UPDATE_LAST_READ_ENTRY_PROC THEN PROC_DATA_5 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CHANGE_END_DEVICE_MODE_PROC THEN PROC_DATA_6 : CHANGE_END_DEVICE_MODE_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_STANDARD_STATUS_FLAGS_PROC THEN PROC_DATA_7 : CLEAR_STANDARD_STATUS_FLAGS_PROC.RESP_DATA_RCD ; END ;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      95

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      IF PROC.TABLE_PROC_NBR == CLEAR_MANUFACTURER_STATUS_FLAGS_PROC THEN PROC_DATA_8 : CLEAR_MANUFACTURER_STATUS_FLAGS_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == REMOTE_RESET_PROC THEN PROC_DATA_9 : REMOTE_RESET_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == SET_DATE_TIME_PROC THEN PROC_DATA_10 : SET_DATE_TIME_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == EXECUTE_DIAGNOSTICS_PROC THEN PROC_DATA_11 : NIL ; END ; IF PROC.TABLE_PROC_NBR == ACTIVATE_ALL_PENDING_TBL_PROC THEN PROC_DATA_12 : NIL ; END ; IF PROC.TABLE_PROC_NBR == ACTIVATE_SPECIFIC_PENDING_TBL_PROC THEN PROC_DATA_13 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_ALL_PENDING_TBL_PROC THEN PROC_DATA_14 : NIL ; END ; IF PROC.TABLE_PROC_NBR == CLEAR_SPECIFIC_PENDING_TBL_PROC THEN PROC_DATA_15 : NIL ; END ; IF PROC.TABLE_PROC_NBR == START_LOAD_PROFILE_PROC THEN PROC_DATA_16 : NIL ; END ; IF PROC.TABLE_PROC_NBR == STOP_LOAD_PROFILE_PROC THEN PROC_DATA_17 : NIL ; END ; IF PROC.TABLE_PROC_NBR == LOGIN_PROC THEN PROC_DATA_18 : NIL ; END ; IF PROC.TABLE_PROC_NBR == LOGOUT_PROC THEN PROC_DATA_19 : NIL ; END ; IF PROC.TABLE_PROC_NBR == INITIATE_IMMEDIATE_CALL_PROC THEN PROC_DATA_20 : NIL ; END ; IF PROC.TABLE_PROC_NBR == DIRECT_LOAD_CONTROL_PROC THEN PROC_DATA_21 : NIL ; END ; IF PROC.TABLE_PROC_NBR == MODIFY_CREDIT_PROC THEN PROC_DATA_22 : MODIFY_CREDIT_PROC. RESP_DATA_RCD ;

      96

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      END ; { Procedures 23-26 are reserved. } IF PROC.TABLE_PROC_NBR == CLEAR_PENDING_CALL_STATUS_PROC THEN PROC_DATA_27 : NIL ; END ; IF PROC.TABLE_PROC_NBR == START_QUALITY_SERVICE_PROC THEN PROC_DATA_28 : NIL ; END ; IF PROC.TABLE_PROC_NBR == STOP_QUALITY_SERVICE_PROC THEN PROC_DATA_29 : NIL ; END ; IF PROC.TABLE_PROC_NBR == START_SECURED_REGISTERS_PROC THEN PROC_DATA_30 : START_SECURED_REGISTERS_PROC.RESP_DATA_RCD ; END ; IF PROC.TABLE_PROC_NBR == STOP_SECURED_REGISTERS_PROC THEN PROC_DATA_31 : STOP_SECURED_REGISTERS_PROC.RESP_DATA_RCD ; END IF PROC.TABLE_PROC_NBR == SET_HTIME_DATE_PROC THEN PROC_DATA_32 : SET_HTIME_DATE_PROC.RESP_DATA_RCD ; END END ; TYPE MFG_RESP_RCD = PACKED RECORD { NO PROCEDURES DEFINED } END ; TYPE RESP_DATA_RCD = PACKED RECORD IF PROC.STD_VS_MFG_FLAG == FALSE THEN STANDARD : STD_RESP_RCD; END; IF PROC.STD_VS_MFG_FLAG == TRUE THEN MANUFACTURER : MFG_RESP_RCD; END; END; TYPE PROC_RESPONSE_RCD = PACKED RECORD PROC : TABLE_IDB_BFLD; SEQ_NBR : UINT8; RESULT_CODE : UINT8; RESP_DATA : RESP_DATA_RCD; END; TABLE 8 PROC_RESPONSE_TBL = PROC_RESPONSE_RCD; Table 08 Element Descriptions Identifier

      Value

      Definition

      TABLE_IDB_BFLD TBL_PROC_NBR

      0..2047

      Redefines: STD.TABLE_IDB_BFLD. Procedure number executed by End Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      97

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      STD_VS_MFG_FLAG

      FALSE TRUE

      SELECTOR

      Bit field indicating procedure number executed and whether the procedure was a standard defined or a manufacturer defined. 0..255

      RESULT_CODE 0 1 2 3 4 5 6 7..255 RESP_DATA_RCD

      98

      defined

      Not used in PROC_RESPONSE_TBL (Table 08). See PROC_INITIATE_TBL (Table 07).

      PROC_RESPONSE_RCD PROC

      SEQ_NBR

      Procedure was a standard procedure. Procedure was a manufacturer procedure.

      Supplied by initiator of the procedure PROC_INITIATE_TBL (Table 07). Returned with response as a means of coordination. Code which identifies the status of the procedure execution. The codes are defined as follows: Procedure completed. Procedure accepted but not fully completed. Invalid parameter for known procedure, procedure was ignored. Procedure conflicts with current device setup, procedure was ignored. Timing constraint, procedure was ignored. No authorization for requested procedure, procedure was ignored. Un-recognized procedure, procedure was ignored. Reserved. Procedure response record as defined for individual procedures in PROC_INITIATE_TBL (Table 07). RESP_DATA_RCD is posted if procedure was successfully completed (RESULT_CODE = 0) and SELECTOR in PROC_INITIATE_TBL (Table 07) is not set to a value of 2.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.2 Decade 1: Data Source Tables Decade 1 Name DATA_SOURCE_DEC Decade 1 Data Description The role of a Data Source is to provide information about the different measurements supported by the End Device such as the Unit Of Measure, accountability, scalars and to allows control and configuration of these measurements. This decade and decade 10 propose two different approaches to data sources and can’t be used simultaneously because of the different requirements on source selectors. When decade 1 is used, the MODEL_SELECT field defined in the General Configuration Table (Table 0) shall be set to 0. Algorithm The following set of equations defines how data retrieved for the End Device, by example from table 23 or 64, is converted to the following representations:  engineering: physical value measured (on the secondary side of the transformer if any)  primary: engineering value on the primary side of the measurement transformer when used  raw: value reported by the sensor This algorithm show how information is converted between the different representations. The input to this algorithm is a “value” as received by the End Device. IF (value retrieved from 64, 65, 66, 67 and SCALAR_DIVISOR_FLAG_SETx = true) value = value / LP_CTRL_TBL.SCALARS_SETx[y] * LP_CTRL_TBL.DIVISORS_SETx[y] IF (retrieved from 155, 156, 157, 158 and TD_SCALAR_DIVISOR_FLAG = true) value = value / QUALITY_CONTROL_TBL.SCALAR * QUALITY_CONTROL_TBL.DIVISOR IF SOURCES_TBL.CONSTANT_TO_BE_APPLIED = true value += CONSTANTS_TBL.OFFSET value *= CONSTANTS_TBL.MULTIPLIER IF SOURCES_TBL.SET1_PRESENT_FLAG = true and SET1_CONSTANTS.SET_FLAGS.SET_APPLIED_FLAG = true value /= SET1_CONSTANTS.RATIO_F1 * SET1_CONSTANTS.RATIO_P1 IF SOURCES_TBL.SET2_PRESENT_FLAG = true and SET2_CONSTANTS.SET_FLAGS.SET_APPLIED_FLAG = true value /= SET1_CONSTANTS.RATIO_F1 * SET1_CONSTANTS.RATIO_P1 raw = value / CONSTANTS_TBL.MULTIPLIER engineering = value IF SOURCES_TBL.SET1_PRESENT_FLAG = true primary = value* SET1_CONSTANTS.RATIO_F1 * SET1_CONSTANTS.RATIO_P1 IF SOURCES_TBL.SET2_PRESENT_FLAG = true primary = value* SET2_CONSTANTS.RATIO_F1 * SET2_CONSTANTS.RATIO_P1 Note: The primary representation is not available when both SET1_PRESENT_FLAG and SET2_PRESENT_FLAG are both set to false.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      99

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Decade 1 Type Definitions None. Decade 1 Element Descriptions Identifier

      Value

      Definition

      DATA_SOURCE_DEC

      1

      Implicit numerical constant designation for Data Source Tables Decade number.

      100

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.2.1

      ANSI

      Table 10 Data Source Dimension Limits Table

      Table 10 Data Description DIM_SOURCES_LIM_TBL (Table 10) contains maximum dimensions and End Device capabilities for establishing data sources. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 10 Type Definitions TYPE SOURCE_FLAGS_BFLD = BIT PF_EXCLUDE_FLAG RESET_EXCLUDE_FLAG BLOCK_DEMAND_FLAG SLIDING_DEMAND_FLAG THERMAL_DEMAND_FLAG SET1_PRESENT_FLAG SET2_PRESENT_FLAG FILLER END;

      FIELD OF UINT8 : BOOL(0); : BOOL(1); : BOOL(2); : BOOL(3); : BOOL(4); : BOOL(5); : BOOL(6); : FILL(7..7);

      TYPE SOURCE_RCD = PACKED RECORD SOURCE_FLAGS NBR_UOM_ENTRIES NBR_DEMAND_CTRL_ENTRIES DATA_CTRL_LENGTH NBR_DATA_CTRL_ENTRIES NBR_CONSTANTS_ENTRIES CONSTANTS_SELECTOR NBR_SOURCES END;

      : SOURCE_FLAGS_BFLD; : UINT8; : UINT8; : UINT8; : UINT8; : UINT8; : UINT8; : UINT8;

      TABLE 10 DIM_SOURCES_LIM_TBL = SOURCE_RCD; Table 10 Element Descriptions Identifier

      Value

      SOURCE_FLAGS_BFLD PF_EXCLUDE_FLAG FALSE TRUE RESET_EXCLUDE_FLAG FALSE TRUE BLOCK_DEMAND_FLAG

      FALSE TRUE

      Definition Power fail exclusion is defined as ignoring demand for maximum calculations for some period immediately after a power failure. End device is not capable of power fail exclusion. End device is capable of power fail exclusion. Reset exclusion is defined as inhibiting demand reset for some period after a reset. Reset exclusion is not supported by the End Device. Reset exclusion is supported by the End Device. Block demand is not supported by the End Device. Block demand is supported by the End Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      101

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      SLIDING_DEMAND_FLAG

      FALSE TRUE

      THERMAL_DEMAND_FLAG

      FALSE TRUE

      SET1_PRESENT_FLAG

      FALSE TRUE

      SET2_PRESENT_FLAG

      FALSE TRUE

      SOURCE_RCD SOURCE_FLAGS

      NBR_UOM_ENTRIES

      Thermal demand is not supported by the End Device. Thermal demand is supported by the End Device. The End Device does not support the first set of optional constants in the electric record of the CONSTANTS_TBL (Table 15). The End Device does support the first set of optional constants in the electric record of the CONSTANTS_TBL (Table 15). The End Device does not support the second set of optional constants in the electric record of the CONSTANTS_TBL (Table 15). The End Device does support the second set of optional constants in the electric record of the CONSTANTS_TBL (Table 15). Bit fields that indicate what demand and TOU register functions the End Device is capable of performing.

      0..255

      Maximum number of UOM_ENTRY_TBL (Table 12).

      entries

      in

      NBR_DEMAND_CTRL_ENTRIES

      0..255 Maximum number of entries in the DEMAND_CONTROL_TBL (Table 13).

      DATA_CTRL_LENGTH

      Manufacturer supplied value that determines the width in octets of an entry in the first array of the DATA_CONTROL_TBL (Table 14).

      0..255

      NBR_DATA_CTRL_ENTRIES 0..255

      Maximum number of entries DATA_CONTROL_TBL (Table 14).

      in

      the

      NBR_CONSTANTS_ENTRIES 0..255

      Maximum number of entries CONSTANTS_TBL (Table 15).

      in

      the

      CONSTANTS_SELECTOR

      This value is the selector for the record structure used in the CONSTANTS_TBL (Table 15). GAS_CONSTANTS_AGA3_RCD data structure selected. GAS_CONSTANTS_AGA7_RCD data structure selected. ELECTRIC_CONSTANTS_RCD data structure selected. Reserved for future use.

      0 1 2 3..255 NBR_SOURCES

      102

      Sliding demand is not supported by the End Device. Sliding demand is supported by the End Device.

      0..255 Maximum number of entries in the SOURCES_TBL (Table 16).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.2.2

      ANSI

      Table 11 Actual Data Sources Limiting Table

      Table 11 Data Description ACT_SOURCES_LIM_TBL (Table 11) contains the actual parameters of Table 10 the End Device has been configured with. Global Default Table Property Overrides: Role=“ACTUAL” Table 11 Type Definitions TABLE 11 ACT_SOURCES_LIM_TBL = SOURCE_RCD; Table 11 Element Descriptions Identifier

      Value

      Definition

      FALSE TRUE

      Redefines: DIM_SOURCES_LIM_TBL. SOURCE_FLAGS_BFLD. Power fail exclusion is defined as ignoring demand for maximum calculations for some period immediately after a power failure. Power fail exclusion is not active. Power fail exclusion is active.

      FALSE TRUE

      Reset exclusion is defined as inhibiting demand reset for some period after a reset. Reset exclusion is not in use by the End Device. Reset exclusion is in use by the End Device.

      BLOCK_DEMAND_FLAG

      FALSE TRUE

      Block demand is not in use by the End Device. Block demand is in use by the End Device.

      SLIDING_DEMAND_FLAG

      FALSE TRUE

      Sliding demand is not in use by the End Device. Sliding demand is in use by the End Device.

      THERMAL_DEMAND_FLAG

      FALSE

      Thermal demand is not in use by the End Device. Thermal demand is in use by the End Device.

      SOURCE_FLAGS_BFLD PF_EXCLUDE_FLAG

      RESET_EXCLUDE_FLAG

      TRUE SET1_PRESENT_FLAG

      FALSE TRUE

      SET2_PRESENT_FLAG

      FALSE TRUE

      The End Device is not using the first set of optional constants in the electric record of the CONSTANTS_TBL (Table 15). The End Device is using the first set of optional constants in the electric record of the CONSTANTS_TBL (Table 15). The End Device is not using the second set of optional constants in the electric record of the CONSTANTS_TBL (Table 15). The End Device is using the second set of optional constants in the electric record of the CONSTANTS_TBL (Table 15).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      103

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      SOURCE_RCD

      Redefines: DIM_SOURCES_LIM_TBL. SOURCE_RCD. Bit fields that indicate what demand and TOU register functions are in use by the End Device as configured.

      SOURCE_FLAGS

      NBR_UOM_ENTRIES

      0..255

      NBR_DEMAND_CTRL_ENTRIES

      0..255 Actual number of entries in DEMAND_CONTROL_TBL (Table 13).

      DATA_CTRL_LENGTH

      Manufacturer defined number of octets in an element of the array of the DATA_CONTROL_TBL (Table 14).

      0..255

      the

      NBR_DATA_CTRL_ENTRIES 0..255

      Actual number of entries DATA_CONTROL_TBL (Table 14).

      in

      the

      NBR_CONSTANTS_ENTRIES 0..255

      Actual number of entries CONSTANTS_TBL (Table 15).

      in

      the

      CONSTANTS_SELECTOR

      This value is the selector for the record structure used in the CONSTANTS_TBL (Table 15). GAS_CONSTANTS_AGA3_RCD data structure selected. GAS_CONSTANTS_AGA7_RCD data structure selected. ELECTRIC_CONSTANTS_RCD data structure selected. Reserved for future use.

      0..255 0 1 2 3..255

      NBR_SOURCES

      104

      Actual number of entries in UOM_ENTRY_TBL (Table 12).

      0..255 Actual number of SOURCES_TBL (Table 16).

      entries

      in

      the

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.2.3

      ANSI

      Table 12 Units of Measure Entry Table

      Table 12 Data Description UOM_ENTRY_TBL (Table 12) provides a method for describing data attributes. It may be used to tag data sources. Global Default Table Property Overrides: Role=“CONTROL” Table 12 Type Definitions TYPE UOM_ENTRY_BFLD = BIT FIELD OF UINT32 ID_CODE : UINT(0..7); TIME_BASE : UINT(8..10); MULTIPLIER : UINT(11..13); Q1_ACCOUNTABILITY : BOOL(14); Q2_ACCOUNTABILITY : BOOL(15); Q3_ACCOUNTABILITY : BOOL(16); Q4_ACCOUNTABILITY : BOOL(17); NET_FLOW_ACCOUNTABILITY : BOOL(18); SEGMENTATION : UINT(19..21); HARMONIC : BOOL(22); RESERVED : FILL(28..30); NFS : BOOL(31); ID_RESOURCE : UINT(23..27); END; TYPE UOM_ENTRY_RCD = PACKED RECORD UOM_ENTRY : ARRAY[ACT_SOURCES_LIM_TBL.NBR_UOM_ENTRIES] OF UOM_ENTRY_BFLD; END; TABLE 12 UOM_ENTRY_TBL = UOM_ENTRY_RCD; Table 12 Element Descriptions Identifier

      Value

      UOM_ID_CODES_ENUM

      Definition The following are the Unit of Measure codes used throughout this Standard. {Electric Industry units}

      0 1 2

      3 4 5 6

      Power: Active power - W Reactive power - VAR Result of Irms x Vrms Apparent power - VA Direct measurement, e.g. by lagging the current waveform by 90˚ relative to the voltage waveform) Phasor power - VA = sqrt(W 2+VAR2) Quantity power - Q(60) Quantity power - Q(45) Phasor Reactive Power. This is computed as square root (VA2 - W 2), where W is associated

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      105

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      8 9 10 11

      with UOM.ID_CODE 0 and VA is associated with UOM.ID_CODE 2. This terms (UOM.ID_CODE 6) includes the distortion volt-amperes quantity D defined by VA2 = W 2 + VAR2 + D2 Distortion volt-amperes. Defined as VA2 = W 2 + VAR2 + D2, where VA is selected by UOM.ID_CODE 2 (Vrms x Irms), W is selected by UOM.ID_CODE 0 and VAR is selected by UOM.ID_CODE 1. Also add Note: D can also be computed (when D is not reported directly by the meter via (new) UOM.ID_CODE 7) from UOM.ID_CODE 2 and UOM.ID_CODE 3 as follows: D2 = VA2 (UOM 2) - VA2 (UOM 3). Voltage: RMS Volts Average Volts (average of |V|) RMS Volts Squared (V2) Instantaneous volts

      12 13 14 15

      Current: RMS Amps Average Current (average of |I|) RMS Amps Squared (I2) Instantaneous current

      7

      16 17 18 19

      26 27 28

      Phase Angle: V-VA, Voltage phase angle Vx -Vy, where x and y are phases defined in phase selector. I-VA, Current phase angle Ix -Iy, where x and y are phases defined in phase selector. Power factor computed using apparent power, ID_CODE=2. Power factor computed using phasor power, ID_CODE=3. Average Power Factor.Reserved Reserved Reserved

      29 30 31 32 33 34 35

      Time: Time of day Date Time of day and Date Interval timer Frequency Counter Sense input (T/F)

      20 21 22 23 24 25

      106

      Percent Total Harmonic Distortion: T.H.D. V (IEEE—Institute of Electrical and Electronics Engineers) T.H.D. I (IEEE) T.H.D. V (IC—Industry Canada) T.H.D. I (IC)

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      36 37 38 39

      Pulse output Form A Pulse output Form B Pulse output Form C Zero Flow Duration (Condition which is normally timed for diagnostics

      40 41 42 43 44 45 46 47 48 49

      Voltage sag Voltage swells Power outage (system mains) Voltage excursion low Voltage excursion high Normal voltage level Voltage unbalance Voltage T.H.D. excess Current T.H.D. excess Power outage(End Device) device may be powered separately from power being monitored Event Codes:

      50 51 52 53 54 55 56 57 58 59 60 61 62 63

      Power outages Number of demand resets Number of times programmed Number of minutes on battery carryover Inversion Tamper Removal Tamper Reprogramming Tamper Power Loss Tamper Reverse Rotation Tamper Physical Tamper Encoder Tamper Watchdog timeouts- recoveries the End Device has encountered Diagnostic alarm Reserved {Gas Industry units}

      64 65 66 67 68 69 70 71 72 73 74 75

      Cubic meter gas (volume un-corrected , meter index reading) per Hr. Cor cubic meter gas (volume corrected to base conditions) per Hr. Cor cubic meter gas(volume corrected to pressure base, without supercompressibility per Hr. Cubic feet gas (volume corrected, meter index reading) per Hr. Cor cubic feet gas(volume corrected to base conditions) per Hr. Pcor cubic feet gas(volume corrected to pressure base, without supercompressibility per Hr. Dry bulb temp degree C Wet bulb temp degree C Dry bulb temp degree F Wet bulb temp degree F Dry bulb temp degree K Wet bulb temp degree K

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      107

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93..127

      Joules per Hr Therm per Hr Static pascal Differential pascal Static pound per square inch Differential pound per square inch Gram cm 2 Meter HG column Inch HG column Inch H2O column Bar % relative humidity Parts per million odorant Absolute pressure (PSIA) Degree Rankine Mole % Calories Reserved {Water Industry units}

      128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146..189

      Cubic meter liquid per Hr Cubic feet liquid per Hr US gallons per Hr IMP gallons per Hr Acre feet per Hr Parts per million lead Turbidity Parts per million chlorine PH factor Corrosion Ionization Parts per million SO_2 Liters Cubic feet liquid Pounds per sq. ft differential Inches of Water Feet of water Atmospheres Reserved {Generic industry units}

      190 191 192 193 194 195 196 197 198 199 200 201..209

      108

      Local currency (e.g. $0.01) Inch Foot Meter Differential value (diff val=x2-x1) dBm(Receive Signal Strength Indicator) % Capacity Second(s) Angle in degrees Frequency in hertz Bandwidth in hertz Reserved

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      {HVAC Industry} 210 211 212 213 214 215 216 217 218 219 220 220 221..255 UOM_ENTRY_RCD ID_CODE

      Return Air Temp Return Air Flow (Cubic feet) Return Humidity Supply Air Temp Supply Air Humidity DischargeSuction Line Pressure Discharge Line Temp Ambient Temperature Ambient Humidity SuctionDischarge Line Temp Suction Line PressureLiquid Line Temp Suction Line Temp Reserved The UOM ID_CODE identifies the physical quantity of interest (equivalent to physical units in the field of physics as used for dimensional analysis). The standard defines entries for use by the Water, Gas, or Electrical Utilities and provides for generic entries for description of internal data items. The defined units of measure have been grouped solely for readability purposes. Note that because the unit of measure record includes a time base indicator some of the units have an extra time factor that is canceled out by the unit of measure record time base indicator. For example, ID_CODE 77, Therm per Hr is actually Therm once the time base indicator is properly set. See UOM_ID_CODES_ENUM.

      TIME_BASE 0

      1 2 3 4

      5

      This field describes the measurement method with respect to time. Bulk Quantity of Commodity (Dial Reading). Quantity of commodity; integral of commodity usage rate. Values have the units stated in the ID_CODE x Hour. (Energy units). Instantaneous (Sampled). This is the fastest rate at which a measurement is acquired. Period based. This is a time period based upon the period of a fundamental frequency. (Power, RMS). Sub-block Average Demand. Sub-block Average Demand values are the most recent averaging demand subinterval values. (Demand). Block Average Demand. Block Average Demand values may be either the average over a number of Sub-block Average Demand subintervals or the average over a single interval. The averaging period is typically greater or equal to the Sub-block Average Demand period. (Demand). Net Bulk Quantity of Commodity (Relative Dial Reading). Quantity of commodity; integral of

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      109

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      6 7 MULTIPLIER

      0 1 2 3 4 5 6 7

      The multiplier identifies the scaling value to apply to the reported value after delivery of the tagged item; e.g. if the ID_CODE = 0 and MULTIPLIER = 2 then the UOM represents kW (other flags are assumed to have been set accordingly). 100 102 103 106 109 10-2 10-3 10-6

      FALSE TRUE

      Indication that tagged quantity lies in Quadrant 1 (See Quadrant definition). Tagged item is not in quadrant 1. Tagged item is in quadrant 1.

      FALSE TRUE

      Indication that tagged quantity lies in Quadrant 2 (See Quadrant definition). Tagged item is not in quadrant 2. Tagged item is in quadrant 2.

      FALSE TRUE

      Indication that tagged quantity lies in Quadrant 3 (See Quadrant definition). Tagged item is not in quadrant 3. Tagged item is in quadrant 3.

      FALSE TRUE

      Indication that tagged quantity lies in Quadrant 4 (See Quadrant definition). Tagged item is not in quadrant 4. Tagged item is in quadrant 4.

      Q1_ACCOUNTABILITY

      Q2_ACCOUNTABILITY

      Q3_ACCOUNTABILITY

      Q4_ACCOUNTABILITY

      NET_FLOW_ACCOUNTABILITY FALSE

      TRUE

      110

      commodity usage rate over a specified period of time T1 to T2. T1 and T2 are quite arbitrary and defined by mechanisms and table driven schedules. Values have the units stated in the ID_CODE x Hour, e.g. W x h = Wh (Energy) Thermal quantity. (Demand) Event quantity. (Number of occurrences of an identified item.)

      This bit is required to identify the manner in which the quadrants specified are being summed. Absolute power or commodity per time unit delivered through selected quadrants, i.e. power or commodity per hour is added positively regardless of direction of flow. Net of delivered - received, where Watts are delivered in quadrants 1 & 4, received in quadrants 2 & 3; and VARs are delivered in quadrants 1 & 2, received in quadrants 3 & 4. Other commodities, ie. Water in gallons per time unit are delivered in 1 and received in

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      quadrant 2. Note that Electricity must be measured by vectorial summation, requiring the use of all four (4) quadrants, 1 through 4. Commodity measurement such as water and gas require only two accumulators to segregate delivered and received amounts. To utilize the accountability tools available, commodities such as water and gas are assigned to 1 and 2 (describing 0 to 180 degrees) for delivered and received quantities per time unit respectively. SEGMENTATION 0 1 2 3 4 5 6 7

      HARMONIC 0 1

      When the ID_CODE field represents the electric utility industry unit of measures this bit indicates phase measurement associations. Measurement is not a phase related or no phase information is applicable. e.g. All phases on a polyphase End Device. Phase A to B. i.e. A-B Phase B to C. i.e. B-C Phase C to A. i.e. C-A Neutral to ground, or no phase information. e.g. Neutral current in a 4Y wire system. Phase A to Neutral. i.e. A-N Phase B to Neutral. i.e. B-N Phase C to Neutral. i.e. C-N When the ID_CODE does not represent an electric utility unit of measure then this field represents an as yet to be defined quantity, except for the value 0, which stands for all sources and flows. This identifies harmonic related quantities. The identified ID_CODE is the entire signal unfiltered. The identified ID_CODE is a harmonic component of an associated source.

      RESERVED

      Reserved.

      NSF

      Not Standard Flag used to indicate that this unit of measure entry does not follow the unit of measure definition in some manner. Alias: NFS.

      ID_RESOURCE

      A descriptive code identifying to the reader the resource used to generated the commodity selected by ID_CODE. This field was specifically requested by the REA Research Institute for the express desire to tabulate “Green Power”. The metering and instrumentation utilizing this UOM is not limited to but intended to be used for the generation facilities of the interested region or power system. 0 1

      Unspecified or unknown resource. Green Source.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      111

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que 2 3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 21 22 23 24 25..31

      UOM_ENTRY_RCD UOM_ENTRY

      112

      Nuclear, U235 fission. Nuclear U238 breeder. Hydro. Hydro-pump storage. Coal fired fossil. Natural gas turbine. MSW (Municipal Solid Waste) gasification Methane turbine. Animal waste gasification Methane turbine. Coal gasification Methane turbine. Wind horizontal vanes. Wind vertical vanes. Solar electric-panels. Solar steam turbines. Ethanol engine generation. Bio-diesel fuel engine generation. Automobile tire reclaimed diesel engine generation. Geothermal steam turbine. Hydro-tidal storage generation. Wave action generation. Fuel cells. Plug In Hybrid Electric Vehicle. Plant Biomass methane gasification Methane turbine. Reserved. Each of the entries in this array is associated to an entry in the SOURCES_TBL (Table 16). This array contains one entry for each SOURCES_TBL (Table 16) entry having the UOM_ENTRY_FLAG set. The order of the parameters in this array corresponds to the order of the sources in table SOURCES_TBL (Table 16).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.2.4

      ANSI

      Table 13 Demand Control Table

      Table 13 Data Description DEMAND_CONTROL_TBL (Table 13) contains information pertaining to the application of rates and global rate controls. Global Default Table Property Overrides: Role=“CONTROL” Table 13 Type Definitions TYPE INT_CONTROL_RCD = PACKED RECORD IF ACT_SOURCES_LIM_TBL.SLIDING_DEMAND_FLAG THEN SUB_INT : UINT8; INT_MULTIPLIER : UINT8; ELSE INT_LENGTH : UINT16; END; END; TYPE DEMAND_CONTROL_RCD = PACKED RECORD IF ACT_SOURCES_LIM_TBL.RESET_EXCLUDE_FLAG THEN RESET_EXCLUSION : UINT8; END; IF ACT_SOURCES_LIM_TBL.PF_EXCLUDE_FLAG THEN P_FAIL_RECOGNTN_TM : UINT8; P_FAIL_EXCLUSION : UINT8; COLD_LOAD_PICKUP : UINT8; END; INTERVAL_VALUE : ARRAY[ACT_SOURCES_LIM_TBL. NBR_DEMAND_CTRL_ENTRIES] OF INT_CONTROL_RCD; END; TABLE 13 DEMAND_CONTROL_TBL = DEMAND_CONTROL_RCD; Table 13 Element Descriptions Identifier

      Value

      Definition

      INT_CONTROL_RCD SUB_INT

      0..255

      The number of minutes in the subinterval.

      INT_MULTIPLIER

      0..255

      The multiplier by which the SUB_INT is multiplied.

      INT_LENGTH

      0..65535

      The length of the demand interval in minutes.

      0..255

      Number of minutes after demand reset to exclude additional reset action.

      0..255

      Number of seconds after a power failure occurs until a valid power failure is recorded and a specified action is initiated.

      DEMAND_CONTROL_RCD RESET_EXCLUSION P_FAIL_RECOGNTN_TM

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      113

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      P_FAIL_EXCLUSION

      0..255

      Number of minutes after a valid power failure occurs to inhibit demand calculations.

      COLD_LOAD_PICKUP

      0..255

      Number of minutes after a valid power failure occurs to provide cold load pickup functions.

      INTERVAL_VALUE

      114

      Each of the entries in this array is associated to an entry in the SOURCES_TBL (Table 16). This array contains one entry for each SOURCES_TBL (Table 16) entry having the DEMAND_CTRL_FLAG set. The order of the parameters in this array corresponds to the order of the sources in table SOURCES_TBL (Table 16).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.2.5

      ANSI

      Table 14 Data Control Table

      Table 14 Data Description DATA_CONTROL_TBL (Table 14) contains the data source information that serves as data input sources for the following tables. This table serves as an interface between areas of the End Device considered manufacturer specific and the areas of the End Device to be standardized. Each entry in the table is manufacturer defined. Examples of entries into this table are: entry contains address of data to be processed; or entry contains data to be processed. Global Default Table Property Overrides: Role=“CONTROL” Table 14 Type Definitions TYPE DATA_RCD = PACKED RECORD SOURCE_ID : ARRAY[ACT_SOURCES_LIM_TBL.DATA_CTRL_LENGTH] OF UINT8; END; TYPE DATA_CONTROL_RCD = PACKED RECORD SOURCES_ID : ARRAY[ACT_SOURCES_LIM_TBL.NBR_DATA_CTRL_ENTRIES] OF DATA_RCD; END; TABLE 14 DATA_CONTROL_TBL = DATA_CONTROL_RCD; Table 14 Element Descriptions Identifier DATA_RCD SOURCE_ID

      DATA_CONTROL_RCD SOURCES_ID

      Value

      Definition Each entry in this array is defined by the manufacturer as to length and content. The length is identical for all entries. Each of the entries in this array is associated to an entry in the SOURCES_TBL (Table 16). This array contains one entry for each SOURCES_TBL (Table 16) entry having the DATA_CTRL_FLAG set. The order of the parameters in this array corresponds to the order of the sources in table SOURCES_TBL (Table 16).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      115

      ANSI C12.19-2008 aparezca aquí. 9.2.6

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 15 Constants Table

      Table 15 Data Description CONSTANTS_TBL (Table 15) contains the record structures supporting constants for application to the sources. This table has been designed for easy inclusion of new constants structures. Global Default Table Property Overrides: Role=“CONTROL” Table 15 Type Definitions {gas industry constants} TYPE GAS_PRESS_RCD = PACKED RECORD GAS_PRESS_ZERO : NI_FMAT2; GAS_PRESS_FULLSCALE : NI_FMAT2; BASE_PRESSURE : NI_FMAT2; END; TYPE GAS_TEMP_RCD = PACKED RECORD GAS_TEMP_ZERO : NI_FMAT2; GAS_TEMP_FULLSCALE : NI_FMAT2; BASE_TEMP : NI_FMAT2; END; TYPE GAS_DP_RCD = PACKED RECORD GAS_DP_ZERO : NI_FMAT2; GAS_DP_FULLSCALE : NI_FMAT2; END; TYPE PIPE_ORIF_DIA_RCD = PACKED RECORD PIPE_DIA : NI_FMAT2; ORIF_DIA : NI_FMAT2; END; TYPE GAS_AGA3_CORR_RCD = PACKED RECORD AUX_CORR_FCTR : NI_FMAT2; GAS_AGA3_CORR_FCTR : NI_FMAT2; PIPE_ORIF_DIA : PIPE_ORIF_DIA_RCD; TAP_UP_DN : UINT8; GAS_PRESS_PARM : GAS_PRESS_RCD; GAS_TEMP_PARM : GAS_TEMP_RCD; END; TYPE GAS_AGA7_CORR_RCD = PACKED RECORD GAS_PRESS_PARM : GAS_PRESS_RCD; GAS_TEMP_PARM : GAS_TEMP_RCD; AUX_CORR_FCTR : NI_FMAT2; GAS_AGA7_CORR : NI_FMAT2; END; TYPE GAS_ENERGY_RCD = PACKED RECORD GAS_ENERGY_ZERO : NI_FMAT2; GAS_ENERGY_FULL : NI_FMAT2; END;

      116

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      TYPE GAS_DP_SHUTOFF_RCD = PACKED RECORD GAS_SHUTOFF : NI_FMAT2; END; {Constant selector 0} TYPE GAS_CONSTANTS_AGA3_RCD = PACKED RECORD GAS_DP_PARM : GAS_DP_RCD; GAS_DP_SHUTOFF : GAS_DP_SHUTOFF_RCD; GAS_PRESS_PARM : GAS_PRESS_RCD; GAS_AGA3_CORR : GAS_AGA3_CORR_RCD; GAS_ENERGY : GAS_ENERGY_RCD; END; {Constant selector 1} TYPE GAS_CONSTANTS_AGA7_RCD = PACKED RECORD GAS_AGA7_CORR : GAS_AGA7_CORR_RCD; GAS_ENERGY : GAS_ENERGY_RCD; END; {Constant selector 2} TYPE SET_CTRL_BFLD = BIT FIELD OF UINT8 SET_APPLIED_FLAG : BOOL(0); FILLER : FILL(1..7); END; TYPE SET_APPLIED_RCD = PACKED RECORD SET_FLAGS : SET_CTRL_BFLD; RATIO_F1 : NI_FMAT1; RATIO_P1 : NI_FMAT1; END; TYPE ELECTRIC_CONSTANTS_RCD = PACKED RECORD MULTIPLIER : NI_FMAT1; OFFSET : NI_FMAT1; IF ACT_SOURCES_LIM_TBL.SET1_PRESENT_FLAG THEN SET1_CONSTANTS : SET_APPLIED_RCD; END; IF ACT_SOURCES_LIM_TBL.SET2_PRESENT_FLAG THEN SET2_CONSTANTS : SET_APPLIED_RCD; END; END; {Constants record structure selection} TYPE CONSTANTS_RCD = PACKED RECORD SWITCH ACT_SOURCES_LIM_TBL.CONSTANTS_SELECTOR OF CASE 0 : GAS_CONSTANTS_AGA3 : GAS_CONSTANTS_AGA3_RCD; CASE 1 : GAS_CONSTANTS_AGA7 : GAS_CONSTANTS_AGA7_RCD; CASE 2 : ELECTRIC_CONSTANTS : ELECTRIC_CONSTANTS_RCD; CASE 3..255 : RESERVED : NIL; END; END;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      117

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      TYPE CONSTANT_SELECTION_RCD = PACKED RECORD SELECTION : ARRAY[ACT_SOURCES_LIM_TBL.NBR_CONSTANTS_ENTRIES] OF CONSTANTS_RCD; END; TABLE 15 CONSTANTS_TBL = CONSTANT_SELECTION_RCD; Table 15 Element Descriptions Identifier

      Value

      GAS_PRESS_RCD GAS_PRESS_ZERO

      Flow pressure calibration zero offset.

      GAS_PRESS_FULLSCALE

      Flow pressure calibration full scale.

      BASE_PRESSURE

      Pressure for base condition this value is absolute base pressure.

      GAS_TEMP_RCD GAS_TEMP_ZERO

      Flow temperature calibration zero offset.

      GAS_TEMP_FULLSCALE

      Flow temperature calibration full scale.

      BASE_TEMP

      Temperature for base condition.

      GAS_DP_RCD GAS_DP_ZERO

      Flow Differential pressure calibration zero offset. (used for AGA 3 only)

      GAS_DP_FULLSCALE

      Flow Differential pressure calibration full scale. (used for AGA 3 only)

      PIPE_ORIF_DIA_RCD PIPE_DIA

      The pipe diameter of an orifice meter. (used for AGA 3 only)

      ORIF_DIA

      The orifice diameter of an orifice meter. (used for AGA 3 only)

      GAS_AGA3_CORR_RCD AUX_CORR_FCTR

      Factor to provide other possible correction to the gas corrected volume.

      GAS_AGA3_CORR_FCTR

      Factor is used to correct the uncorrected gas volume using AGA3 (used for AGA3 only).

      PIPE_ORIF_DIA

      Record structure from above.

      TAP_UP_DN 0 1 2 3 4 5..255 GAS_PRESS_PARM

      118

      Definition

      Tap configuration (used for AGA3 only). No tap or flange. Up stream flange. Down stream flange. Upstream pipe. Down stream pipe. Reserved. Refer to GAS_PRESS_RCD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 GAS_TEMP_PARM

      ANSI

      Refer to GAS_TEMP_RCD.

      GAS_AGA7_CORR_RCD GAS_PRESS_PARM

      Refer to GAS_PRESS_RCD.

      GAS_TEMP_PARM

      Refer to GAS_TEMP_RCD.

      AUX_CORR_FCTR

      Factor to provide other possible correction to the gas corrected volume.

      GAS_AGA7_CORR_FCTR

      Factor is used to correct the uncorrected gas volume using AGA7 (used for AGA7 only).

      GAS_ENERGY_RCD GAS_ENERGY_ZERO

      Energy calibration zero offset.

      GAS_ENERGY_FULL

      Energy calibrations full scale.

      GAS_DP_SHUTOFF_RCD GAS_DP_SHUTOFF

      This parameter is used to disable the AGA3 flow calculations when differential pressure is below the value indicated by this parameter. (used for AGA 3 only)

      GAS_CONSTANTS_AGA3_RCD GAS_DP_PARM GAS_DP_SHUTOFF GAS_PRESS_PARM GAS_AGA3_CORR_FCTR GAS_ENERGY

      When Constants selector is 0 Refer to GAS_DP_RCD. Refer to GAS_DP_SHUTOFF_RCD. Refer to GAS_PRESS_RCD. Refer to GAS_AGA3_CORR_RCD. Refer to GAS_ENERGY_RCD.

      GAS_CONSTANTS_AGA7_RCD GAS_AGA7_CORR_FCTR GAS_ENERGY

      When Constants selector is 1 Refer to GAS_AGA7_CORR_RCD. Refer to GAS_ENERGY_RCD.

      SET_CTRL_BFLD SET_APPLIED_FLAG

      FALSE TRUE

      SET_APPLIED_RCD SET_FLAGS

      When Constants selector is 2. The RATIO_F1 and RATIO P1 represented by this flag have not been applied to the associated source. The RATIO_P1 and RATIO F1 represented by this flag have been applied to the associated source. See SET_CTRL_BFLD above.

      RATIO_F1

      Ratio of intermediary device to allow interface of commodity flow to utility meters. For example, electric utilities use a current transformer to reduce the current at the meter. Transforming 2000 amps to 5 amps is a ratio of 400.

      RATIO_P1

      Ratio of intermediary device to allow interface of commodity pressure to utility meters. For example, electric utilities use a voltage transformer to reduce the voltage at the meter.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      119

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que Transforming 7200 volts to 120 volts is a ratio of 60.

      ELECTRIC_CONSTANTS_RCD MULTIPLIER

      Storage for a value multiplication/division adjustment.

      used

      in

      OFFSET

      Storage for a value used in addition/subtraction adjustment.

      SET1_CONSTANTS

      Storage variable for the first set of constants and associated flags.

      SET2_CONSTANTS

      Storage variable for the second set of constants and associated flags.

      CONSTANTS_RCD

      Structure that selects the constant record structure to use.

      CONSTANT_SELECTION_RCD

      Each of the entries in this array is associated to an entry in the SOURCES_TBL (Table 16). This array contains one entry for each SOURCES_TBL (Table 16) entry having the CONSTANTS_FLAG set. The order of the parameters in this array corresponds to the order of the sources in table SOURCES_TBL (Table 16).

      120

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.2.7

      ANSI

      Table 16 Source Definition Table

      Table 16 Data Description SOURCES_TBL (Table 16) contains the information regarding the sources selected by the other tables. Global Default Table Property Overrides: Role=“CONTROL” Table 16 Type Definitions TYPE SOURCE_LINK_BFLD = BIT FIELD OF UINT8 UOM_ENTRY_FLAG : BOOL(0); DEMAND_CTRL_FLAG : BOOL(1); DATA_CTRL_FLAG : BOOL(2); CONSTANTS_FLAG : BOOL(3); PULSE_ENGR_FLAG : BOOL(4); CONSTANT_TO_BE_APPLIED : BOOL(5); FILLER : FILL(6..7); END; TYPE SOURCE_LINK_RCD = PACKED RECORD SOURCES_LINK : ARRAY[ACT_SOURCES_LIM_TBL.NBR_SOURCES] OF SOURCE_LINK_BFLD; END; TABLE 16 SOURCES_TBL = SOURCE_LINK_RCD; Table 16 Element Descriptions Identifier

      Value

      Definition

      SOURCE_LINK_BFLD UOM_ENTRY_FLAG

      FALSE

      A UOM_ENTRY_TBL (Table 12) entry does not exist for this source. A UOM_ENTRY_TBL (Table 12) entry is associated with this source. It is recommended that the UOM entries reflect the source as it is referenced or transported by other tables.

      TRUE

      DEMAND_CTRL_FLAG

      FALSE TRUE

      DATA_CTRL_FLAG

      FALSE TRUE

      CONSTANTS_FLAG

      FALSE TRUE

      PULSE_ENGR_FLAG

      FALSE TRUE

      A DEMAND_CONTROL_TBL (Table 13) entry does not exist for this source. A DEMAND_CONTROL_TBL (Table 13) entry is associated with this source. A DATA_CONTROL_TBL (Table 14) entry does not exist for this source. A DATA_CONTROL_TBL (Table 14) entry is associated with this source. A CONSTANTS_TBL (Table 15) entry does not exist for this source. A CONSTANTS_TBL (Table 15) entry is associated with this source. The source is in pulse units. The source is in engineering units.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      121

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      CONSTANT_TO_BE_APPLIED FALSE

      TRUE

      122

      The entry in the CONSTANTS_TBL (Table 15) if present, has been applied to the source. Examine CONSTANTS_TBL (Table 15) SET_APPLIED_FLAG to determine if constants have been applied. The entry in the CONSTANTS_TBL (Table 15) if present, has not been applied to the source. Examine CONSTANTS_TBL (Table 15) SET_APPLIED_FLAG to determine if constants have been applied.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.2.8

      ANSI

      Table 17 Transformer Loss Compensation Table

      Table 17 Data Description TLC_TBL (Table 17) provides the electrical End Device with information for accounting for transformer related losses. This table shows total no-load losses and load losses calculated by the End Device. It also contains the Watt losses and VAR losses constants. See Annex G, “Transformer Losses Compensation”, for a detailed discussion on the implementation model assumed by this Standard. Global Default Table Property Overrides: Role=“CONTROL” Table 17 Type Definitions TYPE TLC_COEFFICIENTS_RCD = PACKED RECORD KWCU : NI_FMAT1; KVCU : NI_FMAT1; KWFE : NI_FMAT1; KVFE : NI_FMAT1; DELIVERED_PCT : UINT8; RECEIVED_PCT : UINT8; END; TYPE TLC_INFORMATION_RCD = PACKED RECORD DELIVERED_WATT_CU : NI_FMAT1; DELIVERED_VAR_CU : NI_FMAT1; DELIVERED_WATT_FE : NI_FMAT1; DELIVERED_VAR_FE : NI_FMAT1; RECEIVED_WATT_CU : NI_FMAT1; RECEIVED_VAR_CU : NI_FMAT1; RECEIVED_WATT_FE : NI_FMAT1; RECEIVED_VAR_FE : NI_FMAT1; END; TYPE TLC_RCD = PACKED RECORD TR_CONFIGURE : UINT8; TLC_CONSTANTS : TLC_COEFFICIENTS_RCD; TLC_SUM : TLC_INFORMATION_RCD; END; TABLE 17 TLC_TBL = TLC_RCD; Table 17 Element Descriptions Identifier TLC_COEFFICIENTS_RCD KWCU

      Value

      Definition Copper coefficient used in determining watt losses of the transformer due to load (Copper) losses

      KVCU

      Copper coefficient used in determining var losses of the transformer due to load (Copper) losses.

      KWFE

      Iron coefficient used in determining watt losses of the transformer due to no-load (Iron) losses

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      123

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      KVFE

      Iron coefficient used in determining VAR losses of the transformer due to no-load (Iron) losses.

      DELIVERED_PCT

      0..100

      Percentage of losses in the delivered direction.

      RECEIVED_PCT

      0..100

      Percentage of losses in the received direction. Note: when directionality is not available this Element shall be set to zero (0).

      TLC_INFORMATION_RCD

      This record delivers the compensation calculations.

      loss

      DELIVERED_WATT_CU

      Delivered total Watt copper loss accumulator.

      DELIVERED_VAR_CU

      Delivered total VAR copper loss accumulator.

      DELIVERED_WATT_FE

      Delivered total Watt iron loss accumulator.

      DELIVERED_VAR_FE

      Delivered total VAR iron loss accumulator.

      RECEIVED_WATT_CU

      Received Watt copper loss accumulator.

      RECEIVED_VAR_CU

      Received VAR copper loss accumulator.

      RECEIVED_WATT_FE

      Received Watt iron loss accumulator.

      RECEIVED_VAR_FE

      Received VAR iron loss accumulator.

      TLC_RCD TR_CONFIGURE

      0 1 2…255

      124

      transformer

      The billing point is on the high voltage side of a transformer, the meter is located on the low voltage side of the transformer. The billing point is on the low voltage side of a transformer, the meter is located on the high voltage side of the transformer. Reserved.

      TLC_CONSTANTS

      See TLC_COEFFICIENTS_RCD.

      TLC_SUM

      See TLC_INFORMATION_RCD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.3 Decade 2: Register Tables Decade 2 Name REGISTER_DEC This Decade contains Tables associated with Registers for measured values. These Registers can be accumulating (energy), demand, TOU, instantaneous or other(s) as appropriate. 9.3.1

      Table 20 Register Dimension Limits Table

      Table 20 Data Description DIM_REGS_TBL (Table 20) specifies the maximum dimensional values for measured values Registers. The constants defined are used for setting the absolute maximum limits of Arrays used in the transport of these values. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 20 Type Definitions TYPE REG_FUNC1_BFLD = BIT FIELD OF UINT8 SEASON_INFO_FIELD_FLAG : BOOL(0); DATE_TIME_FIELD_FLAG : BOOL(1); DEMAND_RESET_CTR_FLAG : BOOL(2); DEMAND_RESET_LOCK_FLAG : BOOL(3); CUM_DEMAND_FLAG : BOOL(4); CONT_CUM_DEMAND_FLAG : BOOL(5); TIME_REMAINING_FLAG : BOOL(6); FILLER : FILL(7..7); END; TYPE REG_FUNC2_BFLD = BIT FIELD OF UINT8 SELF_READ_INHIBIT_OVERFLOW_FLAG SELF_READ_SEQ_NBR_FLAG DAILY_SELF_READ_FLAG WEEKLY_SELF_READ_FLAG SELF_READ_DEMAND_RESET FILLER END;

      : BOOL(0); : BOOL(1); : BOOL(2); : BOOL(3); : UINT(4..5); : FILL(6..7);

      TYPE REGS_RCD = PACKED RECORD REG_FUNC1_FLAGS : REG_FUNC1_BFLD; REG_FUNC2_FLAGS : REG_FUNC2_BFLD; NBR_SELF_READS : UINT8; NBR_SUMMATIONS : UINT8; NBR_DEMANDS : UINT8; NBR_COIN_VALUES : UINT8; NBR_OCCUR : UINT8; NBR_TIERS : UINT8; NBR_PRESENT_DEMANDS : UINT8; NBR_PRESENT_VALUES : UINT8; END; TABLE 20 DIM_REGS_TBL = REGS_RCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      125

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 20 Element Descriptions Identifier

      Value

      Definition

      FALSE

      End Device is not capable of reporting the representative season in Tables in this decade. End Device is capable of reporting the representative season in Tables in this decade

      REG_FUNC1_BFLD SEASON_INFO_FIELD_FLAG TRUE DATE_TIME_FIELD_FLAG

      FALSE TRUE

      End Device is not capable of providing the date and time in Tables in this decade. End Device is capable of providing the date and time in Tables in this decade.

      DEMAND_RESET_CTR_FLAG FALSE TRUE DEMAND_RESET_LOCK_FLAG FALSE TRUE CUM_DEMAND_FLAG

      FALSE TRUE

      End Device is not capable of counting the number of activations of demand resets. End Device is capable of counting the number of activations of demand resets. Demand reset lockout is not supported by the End Device. Demand reset lockout is supported by the End Device. Cumulative Demand is not supported by the End Device. Cumulative Demand is supported by the End Device.

      CONT_CUM_DEMAND_FLAG FALSE TRUE TIME_REMAINING_FLAG

      FALSE TRUE

      Continuous Cumulative Demand is not supported by the End Device. Continuous Cumulative Demand is supported by the End Device. End Device is not capable of reporting the time remaining in the Demand interval. End Device is capable of reporting the time remaining in the Demand interval.

      REG_FUNC2_BFLD SELF_READ_INHIBIT_OVERFLOW_FLAG FALSE TRUE SELF_READ_SEQ_NBR_FLAG FALSE TRUE

      126

      End Device is not capable of inhibiting Selfreads once an overflow occurs. End Device is capable of inhibiting Self-reads once an overflow occurs. End Device is not capable of providing a Selfread sequential number for each entry. End Device is capable of providing a Self-read sequential number.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 DAILY_SELF_READ_FLAG

      ANSI

      FALSE TRUE

      Indicates whether daily Self-reads are supported. These readings are taken at 00:00:00. Daily Self-reads are not supported. Daily Self-reads are supported.

      FALSE TRUE

      Indicates whether weekly self-reads are supported. These readings are taken at 00:00:00 on Sunday. Weekly Self-reads are not supported. Weekly Self-reads are supported.

      WEEKLY_SELF_READ_FLAG

      SELF_READ_DEMAND_RESET

      0 1 2 3

      Specifies whether the End Device is capable of performing a Self-read whenever a Demand reset (by any method) is performed and whether the End Device is capable of performing a Demand reset whenever a Self-read (by any method) is performed. End Device is not capable of performing either a Self-read on every Demand reset or a Demand reset on every Self-read. End Device is capable of performing only a Self-read on every Demand reset. End Device is capable of performing only a Demand reset on every Self-read. End Device is capable of performing a Self-read on every Demand reset and a Demand reset on every Self-read.

      REGS_RCD REG_FUNC1_FLAGS

      See REG_FUNC1_BFLD.

      REG_FUNC2_FLAGS

      See REG_FUNC2_BFLD.

      NBR_SELF_READS

      0..255

      Maximum number of Self-reads supported by the End Device.

      NBR_SUMMATIONS

      0..255

      Maximum number of summation Registers in each data block.

      NBR_DEMANDS

      0..255

      Maximum number of Demand Registers in each data block.

      NBR_COIN_VALUES

      0..255

      Maximum number of coincident values saved concurrently in each data block.

      NBR_OCCUR

      0..255

      Maximum number of occurrences stored for a particular selection.

      NBR_TIERS

      0..255

      Maximum number of tiers for data storage.

      NBR_PRESENT_DEMANDS

      0..255

      Maximum number of present demand values that can be stored.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      127

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_PRESENT_VALUES

      128

      0..255

      Maximum number of present values that can be stored.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.3.2

      ANSI

      Table 21 Actual Register Limiting Table

      Table 21 Data Description ACT_REGS_TBL (Table 21) contains actual limiting values for Registers. Global Default Table Property Overrides: Role=“ACTUAL” Table 21 Type Definitions TABLE 21 ACT_REGS_TBL = REGS_RCD; Table 21 Element Descriptions Identifier

      Value

      REG_FUNC1_BFLD

      Definition Redefines: REG_FUNC1_BFLD.

      DIM_REGS_TBL.

      SEASON_INFO_FIELD_FLAG FALSE TRUE DATE_TIME_FIELD_FLAG

      FALSE TRUE

      End Device is not reporting the representative season in Tables in this Decade. End Device is reporting the representative season in Tables in this Decade End Device is not providing the date and time in Tables in this Decade. End Device is providing the date and time in Tables in this Decade.

      DEMAND_RESET_CTR_FLAG FALSE TRUE DEMAND_RESET_LOCK_FLAG FALSE TRUE CUM_DEMAND_FLAG

      FALSE TRUE

      End Device is not counting the number of activations of Demand resets. End Device is counting the number of activations of Demand resets. Demand reset lockout is not enabled. Demand reset lockout is enabled. Cumulative Demand is not in use by the End Device. Cumulative Demand is in use by the End Device.

      CONT_CUM_DEMAND_FLAG FALSE TRUE TIME_REMAINING_FLAG

      FALSE TRUE

      Continuous Cumulative Demand is not in use by the End Device. Continuous Cumulative Demand is in use by the End Device. End Device does not report the time remaining in Demand interval. End Device reports the time remaining in Demand interval.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      129

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      REG_FUNC2_BFLD

      Redefines: REG_FUNC2_BFLD.

      SELF_READ_INHIBIT_OVERFLOW_FLAG FALSE TRUE SELF_READ_SEQ_NBR_FLAG FALSE TRUE DAILY_SELF_READ_FLAG

      End Device is not inhibiting Self-reads once an overflow occurs. End Device is inhibits Self-reads once an overflow occurs. End Device is not providing a Self-read sequential number for each entry. End Device is providing a Self-read sequential number.

      FALSE TRUE

      Indicates whether daily self-reads are in use. These readings are taken at 00:00:00. Daily Self-reads are not in use. Daily Self-reads are in use.

      FALSE TRUE

      Indicates whether weekly Self-reads are in use. These readings are taken at 00:00:00 on Sunday. Weekly Self-reads are not in use. Weekly Self-reads are in use.

      WEEKLY_SELF_READ_FLAG

      SELF_READ_DEMAND_RESET

      0 1 2 3

      REGS_RCD

      130

      DIM_REGS_TBL.

      Specifies whether the End Device will perform a Self-read whenever a Demand reset (by any method) is performed and whether the End Device will perform a Demand reset whenever a self-read (by any method) is performed. End Device shall not perform either a Self-read on every Demand reset or a Demand reset on every Self-read. End Device shall perform a Self-read on every Demand reset. End Device shall perform a Demand reset on every Self-read. End Device shall perform a Self-read on every Demand reset and a Demand reset on every Self-read. Redefines: DIM_REGS_TBL.REGS_RCD.

      REG_FUNC1_FLAGS

      See REG_FUNC1_BFLD.

      REG_FUNC2_FLAGS

      See REG_FUNC2_BFLD.

      NBR_SELF_READS

      Number of Self-reads in use.

      NBR_SUMMATIONS

      0..255

      Number of summation Registers in each data block.

      NBR_DEMANDS

      0..255

      Number of Demand Registers in each data block.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      NBR_COIN_VALUES

      0..255

      Number of coincident values saved in each data block.

      NBR_OCCUR

      0..255

      Number of occurrences stored for a particular selection.

      NBR_TIERS

      0..255

      Number of tiers in use.

      NBR_PRESENT_DEMANDS

      0..255

      Number of present demand values that are stored.

      NBR_PRESENT_VALUES

      0..255

      Number of present values that are stored.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      131

      ANSI C12.19-2008 aparezca aquí. 9.3.3

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 22 Data Selection Table

      Table 22 Data Description DATA_SELECTION_TBL (Table 22) contains grouped lists of source indices. These indices point towards Array elements in SOURCES_TBL (Table 16) when Table 22 is present. These lists are used to build the Table that contains the data to be captured. The groupings are described below. Global Default Table Property Overrides: Role=“CONTROL” Table 22 Type Definitions TYPE DATA_SELECTION_RCD = PACKED RECORD SUMMATION_SELECT : ARRAY[ACT_REGS_TBL.NBR_SUMMATIONS] OF STD.SOURCE_SELECT_RCD; DEMAND_SELECT : ARRAY[ACT_REGS_TBL.NBR_DEMANDS] OF STD.SOURCE_SELECT_RCD; MIN_OR_MAX_FLAGS : SET((ACT_REGS_TBL.NBR_DEMANDS+7)/8); COINCIDENT_SELECT : ARRAY[ACT_REGS_TBL.NBR_COIN_VALUES] OF STD.SOURCE_SELECT_RCD; COIN_DEMAND_ASSOC : ARRAY[ACT_REGS_TBL.NBR_COIN_VALUES] OF UINT8; END; TABLE 22 DATA_SELECTION_TBL = DATA_SELECTION_RCD; Table 22 Element Descriptions Identifier

      Value

      Definition

      DATA_SELECTION_RCD SUMMATION_SELECT

      List of source selector that groups together bulk/energy/summation that are associated with the SUMMATIONS defined in this decade. In the context of MODEL_SELECT one, the only acceptable QUALIFIER is 0 (Summation) and at least the SUMMATION_SUPP of the selected source shall be set to TRUE.

      DEMAND_SELECT

      List of source selector that groups together demand sources that are associated with DEMANDS defined in this decade. In the context of MODEL_SELECT one, acceptable QUALIFIERs are 11 (Minimum demand), 12 (Maximum demand) and 13 (Average demand).

      MIN_OR_MAX_FLAGS

      SET of bit flags, each corresponding to an entry in DEMAND_SELECT. Indicates that the associated DEMAND_SELECT entry is a minimum. Indicates that the associated DEMAND_SELECT entry is a maximum.

      FALSE TRUE COINCIDENT_SELECT

      132

      Data source selectors to be placed in the COINCIDENTS array of the Current Register Data Table (Table 23). In the context of

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      MODEL_SELECT one, all QUALIFIERs are acceptable in this context. COIN_DEMAND_ASSOC

      Each entry corresponds to an entry in COINCIDENT_SELECT and provides an index into DEMAND_SELECT identifying the Demand for which this coincident value is taken.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      133

      ANSI C12.19-2008 aparezca aquí. 9.3.4

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 23 Current Register Data Table

      Table 23 Data Description CURRENT_REG_DATA_TBL (Table 23) contains the current Register data. “Current” is with respect to the previous demand reset, season or self read. Table 23 is intended for billing purposes. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 23 Type Definitions TYPE COINCIDENTS_RCD = PACKED RECORD COINCIDENT_VALUES : ARRAY[ACT_REGS_TBL.NBR_OCCUR] OF NI_FMAT2; END; TYPE DEMANDS_RCD = PACKED RECORD IF ACT_REGS_TBL.DATE_TIME_FIELD_FLAG THEN EVENT_TIME : ARRAY[ACT_REGS_TBL.NBR_OCCUR] OF STIME_DATE; END; IF ACT_REGS_TBL.CUM_DEMAND_FLAG THEN CUM_DEMAND : NI_FMAT1; END; IF ACT_REGS_TBL.CONT_CUM_DEMAND_FLAG THEN CONT_CUM_DEMAND : NI_FMAT1; END; DEMAND : ARRAY[ACT_REGS_TBL.NBR_OCCUR] OF NI_FMAT2; END; TYPE DATA_BLK_RCD = PACKED RECORD SUMMATIONS : ARRAY[ACT_REGS_TBL.NBR_SUMMATIONS] OF NI_FMAT1; DEMANDS : ARRAY[ACT_REGS_TBL.NBR_DEMANDS] OF DEMANDS_RCD; COINCIDENTS : ARRAY[ACT_REGS_TBL.NBR_COIN_VALUES] OF COINCIDENTS_RCD; END; TYPE REGISTER_DATA_RCD = PACKED RECORD IF ACT_REGS_TBL.DEMAND_RESET_CTR_FLAG THEN NBR_DEMAND_RESETS : UINT8; END; TOT_DATA_BLOCK : DATA_BLK_RCD; TIER_DATA_BLOCK : ARRAY[ACT_REGS_TBL.NBR_TIERS] OF DATA_BLK_RCD; END; TABLE 23 CURRENT_REG_DATA_TBL = REGISTER_DATA_RCD; Table 23 Element Descriptions Identifier

      Value

      Definition

      COINCIDENTS_RCD

      134

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 COINCIDENT_VALUES DEMANDS_RCD EVENT_TIME

      ANSI

      Coincident values selected by DATA_SELECTION_TBL.COINCIDENT_SELE CT (Table 22). Array that contains the date and time of each minimum or maximum recorded. Entry in position zero (0) corresponds to the entry in position zero (0) of the DEMAND Array. The presence of this field is dependent on capability flag in the ACT_REG_TBL.DATE_TIME_FIELD_FLAG (Table 21).

      CUM_DEMAND

      Value of the cumulative Demand register.

      CONT_CUM_DEMAND

      Value of the Continuous Cumulative Demand register.

      DEMAND

      Array that contains the minimums or maximums values. The value in position zero (0) is the smallest minimum or largest maximum. In position one (1) is the second smallest minimum or the second largest maximum and so on until the end of the Array is reached.

      DATA_BLK_RCD SUMMATIONS

      Array that contains the values of the selected summation measurements.

      DEMANDS

      Array that contains the values of the selected min/max Demand measurements.

      COINCIDENTS

      Array that contains the values of the selected measurement coincident to the selected minimum/maximum Demands.

      REGISTER_DATA_RCD NBR_DEMAND_RESETS

      Number of Demand resets executed by the End Device.

      TOT_DATA_BLOCK

      Data block independent of Time-of-Use structures or other means of selection.

      TIER_DATA_BLOCK

      Data block dependent on Time-of-Use structures or other means of selection.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      135

      ANSI C12.19-2008 aparezca aquí. 9.3.5

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 24 Previous Season Data Table

      Table 24 Data Description PREVIOUS_SEASON_DATA_TBL (Table 24) contains a snapshot of the current Register data taken at the last season change. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 24 Type Definitions TYPE REGISTER_INFO_RCD = PACKED RECORD IF ACT_REGS_TBL.DATE_TIME_FIELD_FLAG THEN END_DATE_TIME : STIME_DATE; END; IF ACT_REGS_TBL.SEASON_INFO_FIELD_FLAG THEN SEASON : UINT8; END; END; TYPE PREVIOUS_SEASON_DATA_RCD = PACKED RECORD REGISTER_INFO : REGISTER_INFO_RCD; PREV_SEASON_REG_DATA : REGISTER_DATA_RCD; END; TABLE 24 PREVIOUS_SEASON_DATA_TBL = PREVIOUS_SEASON_DATA_RCD; Table 24 Element Descriptions Identifier

      Value

      Definition

      REGISTER_INFO_RCD END_DATE_TIME

      End Eevice time when the snapshot of the current Register data occurred.

      SEASON

      Current season value when the snapshot of the current Register data occurred.

      PREVIOUS_SEASON_DATA_RCD

      136

      REGISTER_INFO

      See REGISTER_INFO_RCD.

      PREV_SEASON_REG_DATA

      Snapshot of the CURRENT_DATA_REG_TBL (Table 23) stored at the time of the last season change. See CURRENT_DATA_REG_TBL (Table 23).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.3.6

      ANSI

      Table 25 Previous Demand Reset Data Table

      Table 25 Data Description PREVIOUS_DEMAND_RESET_DATA_TBL (Table 25) contains a snapshot of the current Register data taken at the time of the last Demand reset. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 25 Type Definitions TYPE PREV_DEMAND_RESET_DATA_RCD = PACKED RECORD REGISTER_INFO : REGISTER_INFO_RCD; PREV_DEMAND_RESET_DATA : REGISTER_DATA_RCD; END; TABLE 25 PREVIOUS_DEMAND_RESET_DATA_TBL = PREV_DEMAND_RESET_DATA_RCD; Table 25 Element Descriptions Identifier

      Value

      Definition

      PREV_DEMAND_RESET_DATA_RCD REGISTER_INFO

      Snapshot of Register information included with previous Demand reset register data.

      PREV_DEMAND_RESET_DATA

      Snapshot of the CURRENT_DATA_REG_TBL (Table 23) stored at the time of the last Demand reset.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      137

      ANSI C12.19-2008 aparezca aquí. 9.3.7

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 26 Self-read Data Table

      Table 26 Data Description SELF_READ_DATA_TBL (Table 26) contains Self-read data. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 26 Type Definitions TYPE SELF_READ_DATA_RCD = PACKED RECORD IF ACT_REGS_TBL.SELF_READ_SEQ_NBR_FLAG THEN SELF_READ_SEQ_NBR : UINT16; END; REGISTER_INFO : REGISTER_INFO_RCD; SELF_READ_REGISTER_DATA : REGISTER_DATA_RCD; END; TYPE LIST_STATUS_BFLD = BIT FIELD OF UINT8 ORDER_FLAG : BOOL(0); OVERFLOW_FLAG : BOOL(1); LIST_TYPE_FLAG : BOOL(2); INHIBIT_OVERFLOW_FLAG : BOOL(3); FILLER : FILL(4..7); END; TYPE SELF_READ_LIST_RCD = PACKED RECORD LIST_STATUS : LIST_STATUS_BFLD; NBR_VALID_ENTRIES : UINT8; LAST_ENTRY_ELEMENT : UINT8; LAST_ENTRY_SEQ_NBR : UINT16; NBR_UNREAD_ENTRIES : UINT8; SELF_READS_ENTRIES : ARRAY[ACT_REGS_TBL.NBR_SELF_READS] OF SELF_READ_DATA_RCD; END; TABLE 26 SELF_READ_DATA_TBL = SELF_READ_LIST_RCD; Table 26 Element Descriptions Identifier

      Value

      SELF_READ_DATA_RCD SELF_READ_SEQ_NBR

      138

      Definition Sequence number assigned to the Self-read measurement. This number is set to zero (0) when the End Device is configured. This number is incremented with each Self-read occurrence.

      REGISTER_INFO

      Snapshot of Register data taken at the time of the Self-read.

      SELF_READ_REGISTER_DATA

      Snapshot of current Register data taken when requested by any means offered by the End Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 LIST_STATUS_BFLD ORDER_FLAG

      FALSE TRUE

      ANSI

      Self-reads are transported in ascending order (N is older than N+1). Self-reads are transported in descending order (N is newer than N+1).

      OVERFLOW_FLAG

      FALSE TRUE

      Overflow has not occurred. An attempt was made to enter a Self-read such that the number of unread Self-reads would have exceeded the actual number of possible entries in the log.

      LIST_TYPE_FLAG

      FALSE

      FIFO (First In First Out), as placed in Self-read list. Circular list, as placed in Self-read list.

      TRUE INHIBIT_OVERFLOW_FLAG

      The same value as ACT_REG_TBL.SELF_READ_INHIBIT_OVER FLOW (Table 21).

      SELF_READ_LIST_RCD LIST_STATUS

      See LIST_STATUS_BFLD above.

      NBR_VALID_ENTRIES

      0..255

      Number of valid Self-reads stored in the Selfreads Array. The range is zero (0), meaning no self-reads in the Array, to the actual dimension of the number of Self-reads.

      LAST_ENTRY_ELEMENT

      0..65535

      Array element number of the newest valid entry in the Self-read Array. This field is valid only if NBR_VALID_ENTRIES is greater than zero (0).

      LAST_ENTRY_SEQ_NBR

      0..65535

      Sequence number of the last element in the Self-read array.

      NBR_UNREAD_ENTRIES

      0..255

      Number of Self-read entries that have not been read. This number shall only updated by a procedure.

      SELF_READS_ENTRIES

      Array of snapshots of Register data taken at a prescribed instance in time.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      139

      ANSI C12.19-2008 aparezca aquí. 9.3.8

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 27 Present Register Selection Table

      Table 27 Data Description PRESENT_REGISTER_SELECT_TBL (Table 27) provides selections to sources of present demands and present values. These indices point towards array elements in SOURCES_TBL (Table 16) when Table 16 is present. The values selected are available in PRESENT_REGISTER_DATA_TBL (Table 28). Table 27 is used to select sources for Table 28, which is continually updated. Global Default Table Property Overrides: Role=“CONTROL” Table 27 Type Definitions TYPE PRESENT_REGISTER_SELECT_RCD = PACKED RECORD PRESENT_DEMAND_SELECT : ARRAY[ACT_REGS_TBL.NBR_PRESENT_DEMANDS] OF STD.SOURCE_SELECT_RCD; PRESENT_VALUE_SELECT : ARRAY[ACT_REGS_TBL.NBR_PRESENT_VALUES] OF STD.SOURCE_SELECT_RCD; END; TABLE 27 PRESENT_REGISTER_SELECT_TBL = PRESENT_REGISTER_SELECT_RCD; Table 27 Element Descriptions Identifier

      Value

      Definition

      PRESENT_REGISTER_SELECT_RCD

      140

      PRESENT_DEMAND_SELECT

      Array that contains data source selectors used to measure present demand. The present demand values shall be reported at the same index position in PRESENT_REGISTER_DATA_TBL. PRESENT_DEMAND (Table 28). In the context of MODEL_SELECT one, the only acceptable QUALIFIER is 10 (Demand).

      PRESENT_VALUE_SELECT

      Array that contains data source selectors used to measure present value. The present values shall be reported at the same index position in PRESENT_REGISTER_DATA_TBL.PRESENT _VALUES (Table 28). In the context of MODEL_SELECT one, acceptable QUALIFIERs are 0 (Summation), 2 (Instantaneous value) and 6 (Period based value).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.3.9

      ANSI

      Table 28 Present Register Data Table

      Table 28 Data Description PRESENT_REGISTER_DATA_TBL (Table 28) contains the present demand and values as selected by the PRESENT_REGISTER_SELECT_TBL (Table 27). These indices point towards array elements in SOURCES_TBL (Table 16) when Table 16 is present. Table 28 is continually updated. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 28 Type Definitions TYPE PRESENT_DEMAND_RCD = PACKED RECORD IF ACT_REGS_TBL.TIME_REMAINING_FLAG THEN TIME_REMAINING : TIME; END; DEMAND_VALUE : NI_FMAT2; END; TYPE PRESENT_REGISTER_DATA_RCD = PACKED RECORD PRESENT_DEMAND : ARRAY[ACT_REGS_TBL.NBR_PRESENT_DEMANDS] OF PRESENT_DEMAND_RCD; PRESENT_VALUE : ARRAY[ACT_REGS_TBL.NBR_PRESENT_VALUES] OF NI_FMAT1; END; TABLE 28 PRESENT_REGISTER_DATA_TBL = PRESENT_REGISTER_DATA_RCD; Table 28 Element Descriptions Identifier

      Value

      Definition

      PRESENT_DEMAND_RCD TIME_REMAINING

      Time remaining to the end of the present demand interval

      DEMAND_VALUE

      Present demand value.

      PRESENT_REGISTER_DATA_RCD PRESENT_DEMAND

      Array that contains present demand selected by PRESENT_REGISTER_SELECT_TBL.PRESE NT_DEMAND_SELECT (Table 27).

      PRESENT_VALUE

      Array that contains present value selected by PRESENT_REGISTER_SELECT_TBL.PRESE NT_VALUE_SELECT (Table 27).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      141

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.4 Decade 3: Local Display Tables Decade 3 Name LOCAL_DISPLAY_DEC This decade contains tables associated with the transport of information required to establish a local display. 9.4.1

      Table 30 dimension display table

      Table 30 Data Description DIM_DISP_TBL (Table 30) specifies the maximum dimensional values for local display operation in an End Device. The constants defined are used for setting the absolute maximum limits of display array sizes. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 30 Type Definitions TYPE DISP_FLAG_BFLD = BIT FIELD OF UINT8 ON_TIME_FLAG : BOOL(0); OFF_TIME_FLAG : BOOL(1); HOLD_TIME_FLAG : BOOL(2); FILLER : FILL(3..7); END; TYPE DISP_RCD = PACKED RECORD DISPLAY_CTRL NBR_DISP_SOURCES WIDTH_DISP_SOURCES NBR_PRI_DISP_LIST_ITEMS NBR_PRI_DISP_LISTS NBR_SEC_DISP_LIST_ITEMS NBR_SEC_DISP_LISTS END;

      : DISP_FLAG_BFLD; : UINT16; : UINT8; : UINT16; : UINT8; : UINT16; : UINT8;

      TABLE 30 DIM_DISP_TBL = DISP_RCD; Table 30 Element Descriptions Identifier

      Value

      Definition

      DISP_FLAG_BFLD ON_TIME_FLAG

      FALSE

      Programmable on time is not supported by the End Device. Programmable on time is supported by the End Device.

      TRUE OFF_TIME_FLAG

      FALSE TRUE

      HOLD_TIME_FLAG

      142

      FALSE

      Programmable off time is not supported by the End Device. Programmable off time is supported by the End Device. Programmable hold time is not supported by the End Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 TRUE DISP_RCD DISPLAY_CTRL

      ANSI

      Programmable hold time is supported by the End Device. See DISP_FLAG_BFLD above.

      NBR_DISP_SOURCES

      0..65535

      Maximum number of display sources. A number representing the maximum number of manufacturer defined display sources, described in DISP_SOURCE_TBL (Table 32), and which may be used for the creation of display lists.

      WIDTH_DISP_SOURCES

      0..255

      Maximum number of octets a manufacturer may use to define the row width of all entries in DISP_SOURCE_TBL (Table 32).

      0..65535

      Maximum number of primary display items per display list defined in PRI_DISP_LIST_TBL (Table 33). The maximum number of items in all primary display lists shall not exceed this value.

      0..255

      Maximum number of primary display lists defined in PRI_DISP_LIST_TBL (Table 33).

      0..65535

      Maximum number of secondary display items per display list defined in SEC_DISP_LIST_TBL (Table 34). The maximum number of items in all secondary display lists shall not exceed this value.

      0..255

      Maximum number of secondary display lists defined in SEC_DISP_LIST_TBL (Table 34).

      NBR_PRI_DISP_LIST_ITEMS

      NBR_PRI_DISP_LISTS NBR_SEC_DISP_LIST_ITEMS

      NBR_SEC_DISP_LISTS

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      143

      ANSI C12.19-2008 aparezca aquí. 9.4.2

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 31 actual display table

      Table 31 Data Description ACT_DISP_TBL (Table 31) specifies the actual dimensional values for local display operation in an End Device. The dimensions defined are used for setting the actual limits of display array sizes. Global Default Table Property Overrides: Role=“ACTUAL” Table 31 Type Definitions TABLE 31 ACT_DISP_TBL = DISP_RCD; Table 31 Element Descriptions Identifier

      Value

      Definition

      ON_TIME_FLAG

      FALSE TRUE

      Redefines: DIM_DISP_TBL. DISP_FLAG_BFLD. On time is not programmable in the End Device. On time is programmable in the End Device.

      OFF_TIME_FLAG

      FALSE TRUE

      Off time is not programmable in the End Device. Off time is programmable in the End Device.

      HOLD_TIME_FLAG

      FALSE

      Hold time is not programmable in the End Device. Hold time is programmable in the End Device.

      DISP_FLAG_BFLD

      TRUE DISP_RCD DISPLAY_CTRL

      Redefines: DIM_DISP_TBL. DISP_RCD. See DISP_FLAG_BFLD above.

      NBR_DISP_SOURCES

      0..65535

      Actual number of display sources. A number representing the actual number of manufacturer defined display sources, described in DISP_SOURCE_TBL (Table 32), and which should be used for the creation of display lists.

      WIDTH_DISP_SOURCES

      0..255

      Actual number of octets a manufacturer uses to define the row width of all entries in DISP_SOURCE_TBL (Table 32).

      0..65535

      Actual number of primary display items per display list defined in PRI_DISP_LIST_TBL (Table 33). The total number of items in all primary display lists shall not exceed this value.

      0..255

      Actual number of primary display lists defined in PRI_DISP_LIST_TBL (Table 33).

      0..65535

      Actual number of secondary display items per display list defined in SEC_DISP_LIST_TBL (Table 34). The total number of items in all

      NBR_PRI_DISP_LIST_ITEMS

      NBR_PRI_DISP_LISTS NBR_SEC_DISP_LIST_ITEMS

      144

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      secondary display lists shall not exceed this value. NBR_SEC_DISP_LISTS

      0..255

      Actual number of secondary display lists defined in SEC_DISP_LIST_TBL (Table 34).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      145

      ANSI C12.19-2008 aparezca aquí. 9.4.3

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 32 display source table

      Table 32 Data Description DISP_SOURCE_TBL (Table 32) defines the dimensions and size of manufacturer defined display identifications and format characteristics. Although manufacturer specific, this table’s designation and dimensions (ACT_DISP_TBL.WIDTH_DISP_SOURCES by ACT_DISP_TBL.NBR_DISP_SOURCES) (Table 31), permit the protocol to deposit local display description information. The actual interpretation of each display entry is not defined by this standard. The entry offsets to individual items in this table are used in display scroll sequences entered in tables PRI_DISP_LIST_TBL (Table 33) and SEC_DISP_LIST_TBL (Table 34). Global Default Table Property Overrides: Role=“CONTROL” Table 32 Type Definitions TYPE DISP_SOURCE_DESC_RCD = PACKED RECORD DISPLAY_SOURCE : ARRAY[ACT_DISP_TBL.WIDTH_DISP_SOURCES] OF UINT8; END; TYPE DISPLAY_SOURCE_RCD = PACKED RECORD DISPLAY_SOURCES : ARRAY[ACT_DISP_TBL.NBR_DISP_SOURCES] OF DISP_SOURCE_DESC_RCD; END; TABLE 32 DISP_SOURCE_TBL = DISPLAY_SOURCE_RCD; Table 32 Element Descriptions Identifier

      Value

      DISP_SOURCE_DESC_RCD DISPLAY_SOURCE

      DISPLAY_SOURCE_RCD DISPLAY_SOURCES

      146

      Definition Manufacturer defined display description entry.

      0..255

      These entries make up the DISP_SOURCE_TBL (Table 32). Indices to these entries (starting with 0) are used in subsequent display scrolling sequences. Manufacturer entries.

      defined

      display

      description

      This array contains the manufacturer defined display description entries.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.4.4

      ANSI

      Table 33 primary display list table

      Table 33 Data Description PRI_DISP_LIST_TBL (Table 33) contains a list of operational parameters and references into the table, DISP_SOURCE_TBL, (Table 32) necessary for programming the primary display lists, timing, and scroll sequences. Global Default Table Property Overrides: Role=“CONTROL” Table 33 Type Definitions TYPE DISP_SCROLL1_BFLD = BIT FIELD OF UINT8 ON_TIME : UINT(0..3); OFF_TIME : UINT(4..7); END; TYPE DISP_SCROLL2_BFLD = BIT FIELD OF UINT8 HOLD_TIME : UINT(0..3); DEFAULT_LIST : UINT(4..7); END; TYPE DISP_LIST_DESC_RCD = PACKED RECORD DISP_SCROLL1 : DISP_SCROLL1_BFLD; DISP_SCROLL2 : DISP_SCROLL2_BFLD; NBR_LIST_ITEMS : UINT8; END; TYPE PRI_DISP_LIST_RCD = PACKED RECORD PRI_DISP_LIST : ARRAY[ACT_DISP_TBL.NBR_PRI_DISP_LISTS] OF DISP_LIST_DESC_RCD; PRI_DISP_SOURCES : ARRAY[ACT_DISP_TBL.NBR_PRI_DISP_LIST_ITEMS] OF UINT16; END; TABLE 33 PRI_DISP_LIST_TBL = PRI_DISP_LIST_RCD; Table 33 Element Descriptions Identifier

      Value

      Definition

      DISP_SCROLL1_BFLD ON_TIME

      0..15

      The number of seconds each display item is displayed.

      0..15

      The number of seconds display is blank between display items. 0 = No deliberate OFF Time.

      0..15

      The number of minutes to wait before automatically restarting the normal display scroll after hold has been initiated.

      OFF_TIME DISP_SCROLL2_BFLD HOLD_TIME

      DEFAULT_LIST

      Associates this display list with a standard display list type. The "normal" display list

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      147

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que scrolling resumes after HOLD_TIME has expired. The following values are recognized: 0 1 2 3 4..15

      DISP_LIST_DESC_RCD DISP_SCROLL1

      This contains the ON_TIME and OFF_TIME values for the associated list.

      DISP_SCROLL2 NBR_LIST_ITEMS

      PRI_DISP_LIST_RCD PRI_DISP_LIST PRI_DISP_SOURCES

      Display selectable via communication link only, Normal display Alternate Display Test Display Unassigned.

      This contains the HOLD_TIME and DEFAULT_LIST values for the associated list. 0..255

      Number of items in this display list. The total number of items (list entries) in all display lists of this table shall not exceed ACT_DISP_TBL.NBR_PRI_DISP_LIST_ITEM (Table 31). An array of list descriptor records. Ordered list of references to display items contained in DISP_SOURCE_TBL (Table 32). This list establishes the order of the primary display. This standard does not preclude additional items from popping up or being displayed out of sequence as a result of an End Device error condition or an End Device status report being generated.

      148

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.4.5

      ANSI

      Table 34 secondary display list table

      Table 34 Data Description SEC_DISP_LIST_TBL (Table 34) contains a list of operational parameters and references into the table, DISP_SOURCE_TBL, (Table 32) necessary for programming the secondary display lists, timing, and scroll sequences. Global Default Table Property Overrides: Role=“CONTROL” Table 34 Type Definitions TYPE SEC_DISP_LIST_RCD = PACKED RECORD SEC_DISP_LIST : ARRAY[ACT_DISP_TBL.NBR_SEC_DISP_LISTS] OF DISP_LIST_DESC_RCD; SEC_DISP_SOURCES : ARRAY[ACT_DISP_TBL.NBR_SEC_DISP_LIST_ITEMS] OF UINT16; END; TABLE 34 SEC_DISP_LIST_TBL = SEC_DISP_LIST_RCD; Table 34 Element Descriptions Identifier

      Value

      Definition

      DISP_SCROLL1_BFLD ON_TIME

      0..15

      The number of seconds each display item is displayed.

      0..15

      The number of seconds display is blank between display items. 0 = No deliberate OFF Time.

      0..15

      The number of minutes to wait before automatically restarting the normal display scroll after hold has been initiated.

      OFF_TIME

      DISP_SCROLL2_BFLD HOLD_TIME

      DEFAULT_LIST

      Associates this display list with a standard display list type. The "normal" display list scrolling resumes after HOLD_TIME has expired. The following values are recognized: 0 1 2 3 4..15

      DISP_LIST_DESC_RCD DISP_SCROLL1 DISP_SCROLL2

      Display selectable via communication link only, Normal display Alternate Display Test Display Unassigned. This contains the ON_TIME and OFF_TIME values for the associated list. This contains the HOLD_TIME and DEFAULT_LIST values for the associated list.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      149

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_LIST_ITEMS

      SEC_DISP_LIST_RCD SEC_DISP_LIST SEC_DISP_SOURCES

      0..255

      Number of items in this display list. The total number of items (list entries) in all display lists of this table shall not exceed ACT_DISP_TBL.NBR_PRI_DISP_LIST_ITEM (Table 31). An array of list descriptor records. Ordered list of references to display items contained in DISP_SOURCE_TBL (Table 32). This list establishes the order of the secondary display. This standard does not preclude additional items from popping up or being displayed out of sequence as a result of an End Device error condition or an End Device status report being generated.

      150

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.5 Decade 4: Security Tables Decade 4 Name SECURITY_DEC The security tables provide holding areas for the placement of End Device passwords and Encryption/Authentication keys used to establish group access permissions. Access permissions are used to limit table read or write access and procedure execute permissions to groups of users based on the interpretation of the password and encryption/authentication fields. The exact means for granting access are not defined by this standard. 9.5.1

      Table 40 Security Dimension Limits Table

      Table 40 Data Description DIM_SECURITY_LIMITING_TBL (Table 40) defines the maximum number of passwords and security access level entries supported by the End Device. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 40 Type Definitions TYPE SECURITY_RCD = PACKED RECORD NBR_PASSWORDS : UINT8; PASSWORD_LEN : UINT8; NBR_KEYS : UINT8; KEY_LEN : UINT8; NBR_PERM_USED : UINT16; END; TABLE 40 DIM_SECURITY_LIMITING_TBL = SECURITY_RCD; Table 40 Element Descriptions Identifier

      Value

      Definition

      SECURITY_RCD NBR_PASSWORDS

      0

      Access levels cannot be established using the Standard password mechanism. Maximum number of passwords this End Device is capable of supporting.

      1..255 PASSWORD_LEN

      1..20 21..255

      Maximum length of passwords in octets this End Device is capable of supporting. Invalid.

      NBR_KEYS

      0..255

      Maximum number of keys for authentication/encryption this End Device is capable of supporting.

      KEY_LEN

      0..255

      Maximum length of keys in octets this End Device is capable of supporting.

      NBR_PERM_USED

      0..65535

      Maximum number of user defined security access entries this End Device supports in

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      151

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que addition to those defined through default access permissions.

      152

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.5.2

      ANSI

      Table 41 Actual Security Limiting Table

      Table 41 Data Description ACT_SECURITY_LIMITING_TBL (Table 41) defines the actual number of passwords and security access level entries supported by the End Device. Global Default Table Property Overrides: Role=“ACTUAL” Table 41 Type Definitions TABLE 41 ACT_SECURITY_LIMITING_TBL = SECURITY_RCD; Table 41 Element Descriptions Identifier

      Value

      SECURITY_RCD NBR_PASSWORDS

      0 1..255

      PASSWORD_LEN

      1..20 21..255

      Definition Redefines: DIM_SECURITY_LIMITING_TBL. SECURITY_RCD. Actual access levels are not established through the Standard password mechanism. Actual number of passwords used by this End Device. Actual length of passwords in octets this End Device is supporting. Invalid.

      NBR_KEYS

      0..255

      Actual number of keys this End Device is supporting.

      KEY_LEN

      0..255

      Actual length of keys in octets this End Device is supporting.

      NBR_PERM_USED

      0..65535

      Actual number of user defined security access entries this End Device supports in addition to those defined through default access permissions.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      153

      ANSI C12.19-2008 aparezca aquí. 9.5.3

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 42 Security Table

      Table 42 Data Description SECURITY_TBL (Table 42) stores actual End Device passwords. It is used to associate passwords with read, write and procedure execute access permission bits. Any table or procedure whose access control bits match with respect to position at least one of the group access permissions bits, as defined in SECURITY_TBL (Table 42) for the supplied password, can become a candidate for data transfers. Notes: 1. Although it may be possible to read the security table, the values reported (read back) are not defined by this standard. 2. When access permissions are given to a procedure that accesses or modifies table data, then the invoker of that procedure shall in addition be required to have read or write access to the table that is read or modified. 3. When access permissions are given to a User-defined table, which accesses or modifies other tables, then the invoker of that User-defined table shall in addition be required to have read or write access to the tables indirectly read or written. Global Default Table Property Overrides: Role=“CONTROL”, Accessibility=“WRITEONLY” Table 42 Type Definitions TYPE ACCESS_PERMISSION_BFLD GROUP_PERM_0_FLAG GROUP_PERM_1_FLAG GROUP_PERM_2_FLAG GROUP_PERM_3_FLAG GROUP_PERM_4_FLAG GROUP_PERM_5_FLAG GROUP_PERM_6_FLAG GROUP_PERM_7_FLAG END;

      = BIT FIELD OF UINT8 : BOOL(0); : BOOL(1); : BOOL(2); : BOOL(3); : BOOL(4); : BOOL(5); : BOOL(6); : BOOL(7);

      TYPE SECURITY_ENTRY_RCD = PACKED RECORD PASSWORD : ARRAY[ACT_SECURITY_LIMITING_TBL.PASSWORD_LEN] OF UINT8; ACCESS_PERMISSIONS : ACCESS_PERMISSION_BFLD; END; TYPE SECURITY_RCD = PACKED RECORD SECURITY_ENTRIES : ARRAY[ACT_SECURITY_LIMITING_TBL.NBR_PASSWORDS] OF SECURITY_ENTRY_RCD; END; TABLE 42 SECURITY_TBL = SECURITY_RCD; Table 42 Element Descriptions Identifier

      154

      Value

      Definition

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 ACCESS_PERMISSIONS_BFLD GROUP_PERM_0_FLAG

      FALSE TRUE

      GROUP_PERM_1_FLAG

      FALSE TRUE

      GROUP_PERM_2_FLAG

      FALSE TRUE

      GROUP_PERM_3_FLAG

      FALSE TRUE

      GROUP_PERM_4_FLAG

      FALSE TRUE

      GROUP_PERM_5_FLAG

      FALSE TRUE

      GROUP_PERM_6_FLAG

      FALSE TRUE

      GROUP_PERM_7_FLAG

      FALSE TRUE

      SECURITY_ENTRY_RCD PASSWORD ACCESS_PERMISSIONS SECURITY_RCD SECURITY_ENTRIES

      ANSI

      Group 0 privileges are not granted by this password. Group 0 privileges are granted by this password. Group 1 privileges are not granted by this password. Group 1 privileges are granted by this password. Group 2 privileges are not granted by this password. Group 2 privileges are granted by this password. Group 3 privileges are not granted by this password. Group 3 privileges are granted by this password. Group 4 privileges are not granted by this password. Group 4 privileges are granted by this password. Group 5 privileges are not granted by this password. Group 5 privileges are granted by this password. Group 6 privileges are not granted by this password. Group 6 privileges are granted by this password. Group 7 privileges are not granted by this password. Group 7 privileges are granted by this password. Password to be matched and be associated with group access permission bits. Group access password.

      permissions

      bits

      for

      this

      Array containing a list of security limiting parameters.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      155

      ANSI C12.19-2008 aparezca aquí. 9.5.4

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 43 Default Access Control Table

      Table 43 Data Description DEFAULT_ACCESS_CONTROL_TBL (Table 43) is used to establish default table and procedure access permissions. These permissions are applied to any table that is not included in the ACCESS_CONTROL_TABLE (Table 44). Global Default Table Property Overrides: Role=“CONTROL” Table 43 Type Definitions TYPE DEFAULT_ACCESS_TABLE_DEF_BFLD = BIT FIELD OF UINT16 RESERVED : FILL(0..12); ANY_READ_FLAG : BOOL(13); ANY_WRITE_FLAG : BOOL(14); FILL2 : FILL(15..15); END; TYPE DEFAULT_ACCESS_CONTROL_RCD = PACKED RECORD ACCESS_TABLE_DEFAULT : DEFAULT_ACCESS_TABLE_DEF_BFLD; READ : ACCESS_PERMISSION_BFLD; WRITE : ACCESS_PERMISSION_BFLD; END; TYPE DEFAULT_ACCESS_RCD = PACKED RECORD TABLE_DEFAULT : DEFAULT_ACCESS_CONTROL_RCD; PROCEDURE_DEFAULT : DEFAULT_ACCESS_CONTROL_RCD; END; TABLE 43 DEFAULT_ACCESS_CONTROL_TBL = DEFAULT_ACCESS_RCD; Table 43 Element Descriptions Identifier

      Value

      DEFAULT_ACCESS_TABLE_DEF_BFLD RESERVED ANY_READ_FLAG

      FALSE TRUE

      ANY_WRITE_FLAG

      FALSE TRUE

      DEFAULT_ACCESS_CONTROL_ENTRY_RCD ACCESS_TABLE_DEF

      156

      Definition Reserved. See Section 6.4 Common Table or Procedure Identifier Formats. Any unrecognized user does not have read access permission to any tables. Any unrecognized user has read access permission to any table not defined in ACCESS_CONTROL_TBL (Table 44). Any unrecognized user does not have write access permission to any tables. Any unrecognized user has write access permission to any table not defined in ACCESS_CONTROL_TBL (Table 44). Read and write access permissions unrecognized users as defined above.

      for

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      READ

      Group security access permission bits for users that have been recognized and request read access to tables that are not listed in the ACCESS_CONTROL_TBL (Table 44).

      WRITE

      Group security access permission bits for users that have been recognized and request write access to tables that are not listed in the ACCESS_CONTROL_TBL (Table 44).

      DEFAULT_ACCESS_RCD TABLE_DEFAULT PROCEDURE_DEFAULT

      Default access control for all tables, except the PROC_INITIATE_TBL (Table 07). Default access control for all procedures using PROC_INITIATE_TBL (Table 07).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      157

      ANSI C12.19-2008 aparezca aquí. 9.5.5

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 44 Access Control Table

      Table 44 Data Description ACCESS_CONTROL_TBL (Table 44) establishes table and procedure access permissions on a tableby-table and a procedure-by-procedure basis for those not using the default access level. Global Default Table Property Overrides: Role=“CONTROL” Table 44 Type Definitions TYPE ACCESS_CONTROL_ENTRY_RCD = PACKED RECORD ACCESS_TABLE_DEF : TABLE_IDC_BFLD; READ : ACCESS_PERMISSION_BFLD; WRITE : ACCESS_PERMISSION_BFLD; END; TYPE ACCESS_CONTROL_RCD = PACKED RECORD ACCESS_CONTROL : ARRAY[ACT_SECURITY_LIMITING_TBL.NBR_PERM_USED] OF ACCESS_CONTROL_ENTRY_RCD; END; TABLE 44 ACCESS_CONTROL_TBL = ACCESS_CONTROL_RCD; Table 44 Element Descriptions Identifier

      Value

      Definition

      TABLE_IDC_BFLD TBL_PROC_NBR

      0..2047

      Table or procedure number associated with this access permission entry.

      STD_VS_MFG_FLAG

      FALSE TRUE

      Entry is a Standard table or Standard procedure. Entry is a manufacturer table or manufacturer procedure.

      PROC_FLAG

      FALSE TRUE

      Numeric ID is a table number. Numeric ID is a procedure number.

      FLAG1

      FALSE

      Associated table or procedure requires read access control bits. Only approved group members may access the associated table or procedure. Associated table or procedure has unrestricted read access. Any user may read the associated table or procedure.

      TRUE

      FLAG2

      FALSE

      TRUE

      158

      Associated table or procedure requires write access control bits. Only approved group members may write to the associated table or execute the associated procedure. Associated table or procedure has unrestricted write or execute permission. Any user may write into the associated table or execute the associated procedure.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 FLAG3 ACCESS_CONTROL_ENTRY_RCD ACCESS_TABLE_DEF

      ANSI

      Reserved. Table identification and public access control.

      READ

      Group read access control bits. See SECURITY_TBL. ACCESS_PERMISSION_BFLD (Table 42).

      WRITE

      Group write access control bits See SECURITY_TBL. ACCESS_PERMISSION_BFLD (Table 42).

      ACCESS_CONTROL_RCD ACCESS_CONTROL

      Array containing access permission for specific table or procedure.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      159

      ANSI C12.19-2008 aparezca aquí. 9.5.6

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 45 Key Table

      Table 45 Data Description KEY_TBL (Table 45) is a table established to contain authentication and/or encryption keys. Note: Although it may be possible to read the KEY_TBL (Table 45), the values reported (read back) are not defined by this standard. Global Default Table Property Overrides: Role=“CONTROL”, Accessibility=“WRITEONLY” Table 45 Type Definitions TYPE KEY_ENTRY_RCD = PACKED RECORD KEY : BINARY(ACT_SECURITY_LIMITING_TBL.KEY_LEN); END; TYPE KEY_RCD = PACKED RECORD KEY_ENTRIES : ARRAY[ACT_SECURITY_LIMITING_TBL.NBR_KEYS] OF KEY_ENTRY_RCD; END; TABLE 45 KEY_TBL = KEY_RCD; Table 45 Element Descriptions Identifier

      Value

      KEY_ENTRY_RCD KEY

      KEY_RCD KEY_ENTRIES

      160

      Definition A key to be applied in the authentication and/or encryption processes. the use of the key is not defined by this standard. An array of keys used to authentication and/or encryption.

      establish

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.5.7

      ANSI

      Table 46 Reserved

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      161

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.6 Decade 5: Time-of-Use Tables Decade 5 Name TIME_OF_USE_DEC The tables in this decade provide information related to the End Device date and time as well as the Time-of-use (TOU) scheduler and event trigger operations. The rules governing the transport of date, time and time stamps Elements within this Decade and their influence the transport of Elements from other Decades are defined below. Date-time Elements Representation During Transport (HTIME_DATE, LTIME_DATE and STIME_DATE) When the End Device is programmed to transport time related information according to representation indicated by GEN_CONFIG_TBL.TM_FORMAT then HTIME_DATE, LTIME_DATE and STIME_DATE Elements can be represented as:  End Device operational time : Date and time the End Device has been set to operate. This time is used by the End Device for doing its normal operations such as: o Scheduling o Display o Triggers such as call back, load control, …  Standard time: date and time at the location where the End Device has been set to operate; without daylight saving time adjustment.  UTC time: Universal Time Coordinated, international time standard also known as Greenwich Meridian Time (GMT) In general terms:  Standard time = UTC time + Time zone offset  End Device operational time = Standard time + Daylight Saving Time offset Knowledge about the representation used by an End Device is found in the Clock Table (Table 52), Clock State Table (Table 55) or Precision Clock State Table (Table 57), Elements DST_APPLIED_FLAG and TM_ZN_APPLIED_FLAG. When these Tables are present, all common Element shall be identical in value. At least one of these Tables shall be present when a End Device supports time (as indicated by the Final Element GEN_CONFIG_TBL.TM_FORMAT). The relation between the time representation and the DST_APPLIED_FLAG and TM_ZN_APPLIED_FLAG Final Elements is as follows: Transported Timestamp End Device operational time Standard time UTC time

      TM_ZN_APPLIED_FLAG True True False

      DST_APPLIED_FLAG True False False

      When implemented using TM_FORMAT=3 or TM_FORMAT=4, HTIME_DATE, LTIME_DATE and STIME_DATE Elements shall be transported in UTC, being number of minutes (or seconds as per selected data type) since 01/01/1970 @ 00:00:00 UTC. This implies that when these implementations are used, DST_APPLIED_FLAG and TM_ZN_APPLIED_FLAG shall be set to FALSE; also ACT_TIME_TOU_TBL.CAP_TM_ZN_OFFSET_FLAG shall be set to TRUE. For a code example on how date time Elements can be converted to a Gregorian calendar date, see ANNEX I, “Date-time Element Conversion Algorithm (TM_FORMAT=3 and TM_FORMAT=4)”. In all cases, and subject to the above conditions, the following algorithms can be used to convert transported date time Elements to an End Device operational time or to UTC. The Elements DST_APPLIED_FLAG and TM_ZN_APPLIED_FLAG shall be retrieved from Clock Table (Table 52), Clock State Table (Table 55) or Precision Clock State Table (Table 57). In the following algorithms, it is

      162

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      assumed that Clock Table (Table 52) is being used. Algorithm for converting from transported End Device time to End Device operational time dateTimeField = HTIME_DATE, LTIME_DATE or STIME_DATE Element of interest if (CLOCK_TBL.TM_ZN_APPLIED_FLAG == false) dateTimeField = dateTimeField + TIME_OFFSET_TBL.TIME_ZONE_OFFSET if (dateTimeField within a Daylight Saving Time period and CLOCK_TBL.DST_APPLIED_FLAG == false) dateTimeField = dateTimeField + TIME_OFFSET_TBL.DST_TIME_AMT dateTimeField is the End Device operational time. Algorithm for converting from transported End Device time to UTC dateTimeField = HTIME_DATE, LTIME_DATE or STIME_DATE Element of interest if (CLOCK_TBL.TM_ZN_APPLIED_FLAG == true) dateTimeField = dateTimeField - TIME_OFFSET_TBL.TIME_ZONE_OFFSET if (dateTimeField within a Daylight Saving Time period and CLOCK_TBL.DST_APPLIED_FLAG == true) dateTimeField = dateTimeField - TIME_OFFSET_TBL.DST_TIME_AMT dateTimeField is in UTC Date-only and Time-only Element Representation for Transport RDATE, DATE, TIME, STIME and HTIME Elements within Tables shall always be transported in End Device operational time. 9.6.1

      Table 50 Dimension Time and TOU Table

      Table 50 Data Description DIM_TIME_TOU_TBL (Table 50) defines the maximum capabilities for Date and Time clock control and Time of Use (TOU) control for the End Device. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 50 Type Definitions TYPE TIME_FUNC_FLAG1_BFLD = BIT FIELD OF UINT8 TOU_SELF_READ_FLAG : BOOL(0); SEASON_SELF_READ_FLAG : BOOL(1); SEASON_DEMAND_RESET_FLAG : BOOL(2); SEASON_CHNG_ARMED_FLAG : BOOL(3); SORT_DATES_FLAG : BOOL(4); ANCHOR_DATE_FLAG : BOOL(5); FILLER : FILL(6..7); END; TYPE TIME_FUNC_FLAG2_BFLD = BIT FIELD OF UINT8 CAP_DST_AUTO_FLAG : BOOL(0); SEPARATE_WEEKDAYS_FLAG : BOOL(1); SEPARATE_SUM_DEMANDS_FLAG : BOOL(2); SORT_TIER_SWITCHES_FLAG : BOOL(3); CAP_TM_ZN_OFFSET_FLAG : BOOL(4); FILLER : FILL(5..7); END;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      163

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      TYPE CALENDAR_BFLD = BIT FIELD OF UINT8 NBR_SEASONS : UINT(0..3); NBR_SPECIAL_SCHED : UINT(4..7); END; TYPE TIME_TOU_RCD = PACKED RECORD TIME_FUNC_FLAG1 : TIME_FUNC_FLAG1_BFLD; TIME_FUNC_FLAG2 : TIME_FUNC_FLAG2_BFLD; CALENDAR_FUNC : CALENDAR_BFLD; NBR_NON_RECURR_DATES : UINT8; NBR_RECURR_DATES : UINT8; NBR_TIER_SWITCHES : UINT16; CALENDAR_TBL_SIZE : UINT16; END; TABLE 50 DIM_TIME_TOU_TBL = TIME_TOU_RCD; Table 50 Element Descriptions Identifier

      Value

      Definition

      TIME_FUNC_FLAG1_BFLD TOU_SELF_READ_FLAG

      FALSE

      End Device is not capable of TOU triggered self-reads. End Device is capable of TOU triggered selfreads.

      TRUE SEASON_SELF_READ_FLAG FALSE TRUE SEASON_DEMAND_RESET_FLAG FALSE TRUE SEASON_CHNG_ARMED_FLAG FALSE TRUE

      SORT_DATES_FLAG

      FALSE

      TRUE

      164

      Self read with season change capability does not exist. Self read with season change capability exists. Automatic demand reset with season change capability does not exist. Automatic demand reset with season change capability exists. Season change arming capability does not exist. Season change arming capability exists. That is, the End Device is only armed to do a season change as a result of an indicated change of season. The actual season change does not occur until the next demand reset occurs (by manual or other means). End Device does not require the CALENDAR_TBL.NON_RECURR_DATES (Table 54) be presorted by date (Year, Month, Day) when received. End Device requires the CALENDAR_TBL.NON_RECURR_DATES (Table 54) be presorted by date (Year, Month, Day) when received. Non-recurring dates starting with 1990 and ending with 2089 shall

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      occur in that order. No sorting of recurring dates, if present, is assumed. ANCHOR_DATE_FLAG

      FALSE TRUE

      TIME_FUNC_FLAG2_BFLD CAP_DST_AUTO_FLAG

      FALSE TRUE

      SEPARATE_WEEKDAYS_FLAG FALSE TRUE SEPARATE_SUM_DEMANDS_FLAG FALSE TRUE SORT_TIER_SWITCHES_FLAG FALSE TRUE

      CAP_TM_ZN_OFFSET_FLAG FALSE TRUE CALENDAR_BFLD NBR_SEASONS NBR_SPECIAL_SCHED

      End Device is not capable of accepting an anchor date for the Period/Delta RDATE type (recurring date). End Device is capable of accepting an Anchor Date for the Period/Delta RDATE type (recurring date). End Device is not capable of handling daylight saving time changes independently of dates supplied by the CALENDAR_TBL (Table 54). End Device is capable of handling daylight saving time changes independently of dates supplied by the CALENDAR_TBL (Table 54). End Device is not capable of having a different schedule for each of the five weekdays. End Device is capable of having a different schedule for each of the five weekdays. End Device is not capable of switching summation and demands independently. End Device is capable of switching summation and demands independently. End Device does not require that CALENDAR_TBL.TIER_SWITCHES (Table 54) be presorted. End Device requires that CALENDAR_TBL.TIER_SWITCHES (Table 54) be presorted. Reserved. TIME_ZONE_OFFSET is present in Time Offset Table (Table 53).

      0..15

      Maximum number of seasons supported by this End Device.

      0..11

      Maximum number of special supported by this End Device. Reserved.

      12..15 TIME_TOU_RCD TIME_FUNC_FLAG1 TIME_FUNC_FLAG2 CALENDAR_FUNC NBR_NON_RECURR_DATES 0..255

      schedules

      See TIME_FUNC_FLAG1_BFLD above. See TIME_FUNC_FLAG2_BFLD above. See CALENDAR_BFLD above. Maximum number of non-recurring dates supported by the End Device calendar. Each entry allows the control of one or more events

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      165

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que like demand reset, self read, daylight saving time, season change and special schedule.

      166

      NBR_RECURR_DATES

      0..255

      Maximum number of recurring dates supported by the End Device calendar. Each entry allows the definition of a recurring event like demand reset, self read, daylight saving time, season change and special schedule.

      NBR_TIER_SWITCHES

      0..65535

      Maximum number of tier switches supported by the End Device calendar. This number comprises the total collection of tier switches for all day types in the CALENDAR_TBL.DAILY_SCHEDULE_ID_MATRIX (Table 54).

      CALENDAR_TBL_SIZE

      0..65535

      Maximum octets of data transported by CALENDAR_TBL (Table 54). This includes recurring dates, non-recurring dates and tier switches. Anchor date is counted even if it is unused.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.6.2

      ANSI

      Table 51 Actual Time and TOU Table

      Table 51 Data Description ACT_TIME_TOU_TBL (Table 51) defines the actual capabilities for Date and Time clock control limits as well as the Time of Use (TOU) control limits for the End Device. The data structure of this table is identical to DIM_TIME_TOU_TBL (Table 50). Elements are defined below. Global Default Table Property Overrides: Role=“ACTUAL” Table 51 Type Definitions TABLE 51 ACT_TIME_TOU_TBL = TIME_TOU_RCD; Table 51 Element Descriptions Identifier

      Value

      TIME_FUNC_FLAG1_BFLD TOU_SELF_READ_FLAG

      FALSE TRUE

      SEASON_SELF_READ_FLAG FALSE TRUE SEASON_DEMAND_RESET_FLAG FALSE TRUE SEASON_CHNG_ARMED_FLAG FALSE TRUE

      SORT_DATES_FLAG

      FALSE

      TRUE

      Definition Redefines: DIM_TIME_TOU_TBL. TIME_FUNC_FLAG1_BFLD. End Device TOU triggered self-read function is disabled. End Device TOU triggered self-read function is enabled. Self read with season change capability function is disabled. Self read with season change capability function is enabled. Automatic demand function is disabled. Automatic demand function is enabled.

      reset

      season

      change

      reset

      season

      change

      Season change arming function is disabled. Season change arming function is enabled. That is, the End Device is only armed to do a season change as a result of an indicated change of season. The actual season change does not occur until the next demand reset occurs (by manual or other means). End Device does not require the CALENDAR_TBL.NON_RECURR_DATES (Table 54) to be presorted by date (Year, Month, Day) when received. End Device requires the CALENDAR_TBL.NON_RECURR_DATES (Table 54) be presorted by date (Year, Month, Day) when received. Non-recurring dates starting with 1990 and ending with 2089 shall be sorted in that order. No sorting of recurring dates, if present, is required.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      167

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      ANCHOR_DATE_FLAG

      FALSE TRUE

      TIME_FUNC_FLAG2_BFLD CAP_DST_AUTO_FLAG

      FALSE TRUE

      SEPARATE_WEEKDAYS_FLAG FALSE TRUE SEPARATE_SUM_DEMANDS_FLAG FALSE TRUE SORT_TIER_SWITCHES_FLAG FALSE TRUE

      CAP_TM_ZN_OFFSET_FLAG FALSE TRUE CALENDAR_BFLD NBR_SEASONS

      0..15

      NBR_SPECIAL_SCHED

      0..11 12..15

      TIME_TOU_RCD TIME_FUNC_FLAG1 TIME_FUNC_FLAG2 CALENDAR_FUNC NBR_NON_RECURR_DATES 0..255

      168

      End Device does not accept an anchor date for the Period/Delta RDATE type (recurring date). End Device accepts an anchor date for the Period/Delta RDATE type (recurring date). Redefines: DIM_TIME_TOU_TBL. TIME_FUNC_FLAG2_BFLD. End Device is not handling daylight saving time changes independently of dates supplied by the CALENDAR_TBL (Table 54). End Device is handling daylight saving time changes independently of dates supplied by the CALENDAR_TBL (Table 54). End Device is not using a different schedule for each of the five weekdays. End Device is using a different schedule for each of the five weekdays. End Device is not switching summation and demands independently. End Device is switching summation and demands independently. End Device does not require that CALENDAR_TBL.TIER_SWITCHES (Table 54) be presorted. End Device requires that CALENDAR_TBL.TIER_SWITCHES (Table 54) be presorted. Reserved. TIME_ZONE_OFFSET is present in Time Offset Table (Table 53). Redefines: DIM_TIME_TOU_TBL. CALENDAR_BFLD. Actual number of seasons in use by the End Device. Actual number of special schedules in use by the End Device. Reserved. Redefines: DIM_TIME_TOU_TBL. TIME_TOU_RCD. See TIME_FUNC_FLAG1_BFLD above. See TIME_FUNC_FLAG2_BFLD above. See CALENDAR_BFLD above. Actual number of non-recurring dates supported by the End Device calendar. Each entry allows the control of one or more events like demand

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      reset, self read, daylight saving time, season change and special schedule. NBR_RECURR_DATES

      0..255

      Actual number of recurring dates supported by the End Device calendar. Each entry allows the definition of a recurring event like demand reset, self read, daylight saving time, season change and special schedule.

      NBR_TIER_SWITCHES

      0..65535

      Actual number of tier switches supported by the End Device calendar. This number comprises the total collection of tier switches for all day types in the CALENDAR_TBL.DAILY_SCHEDULE_ID_MATRIX (Table 54).

      CALENDAR_TBL_SIZE

      0..65535

      Actual octets of data transported by CALENDAR_TBL (Table 54). This includes the recurring dates, non-recurring dates and tier switches.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      169

      ANSI C12.19-2008 aparezca aquí. 9.6.3

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 52 Clock Table

      Table 52 Data Description CLOCK_TBL (Table 52) provides the End Device real time clock information. This table provides a subset of the information available for reading from CLOCK_STATE_TBL (Table 55) or PRECISION_CLOCK_STATE_TBL (Table 57). Global Default Table Property Overrides: Atomic = “true”, Role=“DATA”, Accessibility=“READONLY” Table 52 Type Definitions TYPE TIME_DATE_QUAL_BFLD = BIT FIELD OF UINT8 DAY_OF_WEEK : UINT(0..2); DST_FLAG : BOOL(3); GMT_FLAG : BOOL(4); TM_ZN_APPLIED_FLAG : BOOL(5); DST_APPLIED_FLAG : BOOL(6); DST_SUPPORTED_FLAG : BOOL(7); END; TYPE CLOCK_STATE_RCD = PACKED RECORD CLOCK_CALENDAR : LTIME_DATE; TIME_DATE_QUAL : TIME_DATE_QUAL_BFLD; END; TABLE 52 CLOCK_TBL = CLOCK_STATE_RCD; Table 52 Element Descriptions Identifier

      Value

      TIME_DATE_QUAL_BFLD DAY_OF_WEEK 0 1 2 3 4 5 6 7 DST_FLAG

      FALSE TRUE GMT_FLAG

      170

      FALSE

      Definition Status qualifying the End Device time. Current day of the week. Sunday Monday Tuesday Wednesday Thursday Friday Saturday DAY_OF_WEEK is undefined, this field is not supported by the End Device Daylight saving time status. When DST_APPLIED_FLAG is false, there is no expectation that the state of this flag is meaningful. To determine if this flag tracks DST, see DST_SUPPORTED_FLAG. End Device operational time is not in daylight saving time. End Device operational time is in daylight saving time. Reserved.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 TRUE TM_ZN_APPLIED_FLAG

      FALSE TRUE DST_APPLIED_FLAG

      FALSE TRUE

      DST_SUPPORTED_FLAG

      FALSE TRUE

      CLOCK_STATE_RCD CLOCK_CALENDAR TIME_DATE_QUAL

      ANSI

      TIME_ZONE_OFFSET in Time Offset Table (Table 53) is relative to GMT. This flag and the following one (DST_APPLIED_FLAG) define the time representation (End Device operational time, Standard time or UTC time) used during the transport of date time Elements. Time zone offset is not applied by the End Device to date time Elements prior to transport. Time zone offset is applied by the End Device to date time Elements prior to transport. Daylight saving adjustment is not applied by the End Device to date time Elements prior to transport. Daylight saving adjustment is applied by the End Device to date time Elements prior to transport. The End Device does not implement the DST_FLAG value. The DST_FLAG value shall be ignored. The End Device supports the DST_FLAG. The DST_FLAG returned is meaningful. Current End Device time. See DATE_TIME_QUAL_BFLD above.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      171

      ANSI C12.19-2008 aparezca aquí. 9.6.4

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 53 Time Offset Table

      Table 53 Data Description TIME_OFFSET_TBL (Table 53) provides time zone offset and daylight saving time information for the End Device. Global Default Table Property Overrides: Role=“CONTROL” Table 53 Type Definitions TYPE TIME_OFFSET_RCD = PACKED RECORD DST_TIME_EFF : TIME; DST_TIME_AMT : UINT8; IF ACT_TIME_TOU_TBL.CAP_TM_ZN_OFFSET_FLAG || GEN_CONFIG_TBL.STD_VERSION_NO > 1 THEN TIME_ZONE_OFFSET : INT16; END; IF GEN_CONFIG_TBL.STD_VERSION_NO > 1 THEN STD_TIME_EFF : TIME; END; END; TABLE 53 TIME_OFFSET_TBL = TIME_OFFSET_RCD; Table 53 Element Descriptions Identifier

      Value

      TIME_OFFSET_RCD DST_TIME_EFF

      The time of day the End Device shifts to daylight saving time. The date of occurrence is based on entries in the CALENDAR_TBL (Table 54) and the ACT_TIME_TOU_TBL.CAP_DST_AUTO_FLA G (Table 51) flag. This time represents the standard time just prior to the shift.

      DST_TIME_AMT

      0..255

      End Device daylight saving time adjustment specified in minutes.

      TIME_ZONE_OFFSET

      -720..780

      Time zone offset is geographical displacement in minutes from GMT to the End Device standard time. It does not vary over the calendar year. It represents the number of 1 minute segments relative to Greenwich Mean Time, negative number means West of Greenwich Mean Time. Reserved. Reserved.

      -32368..-721 781..32767 STD_TIME_EFF

      172

      Definition

      The time of day the End Device shifts from daylight saving time. The date of occurrence is based on entries in the CALENDAR_TBL (Table 54) and the ACT_TIME_TOU_TBL.CAP_DST_AUTO_FLA

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      G (Table 51) flag. This time represents the daylight saving time just prior to the shift. 9.6.5

      Table 54 Calendar Table

      Table 54 Data Description CALENDAR_TBL (Table 54) is the schedule definition table for TOU metering activities. Global Default Table Property Overrides: Role=“CONTROL” Table 54 Type Definitions TYPE CALENDAR_ACTION_BFLD = BIT FIELD OF UINT8 CALENDAR_CTRL : UINT(0..4); DEMAND_RESET_FLAG : BOOL(5); SELF_READ_FLAG : BOOL(6); FILLER : FILL(7..7); END; TYPE RECURR_DATE_RCD = PACKED RECORD RECURR_DATE : RDATE; CALENDAR_ACTION : CALENDAR_ACTION_BFLD; END; TYPE NON_RECURR_DATE_RCD = PACKED RECORD NON_RECURR_DATE : DATE; CALENDAR_ACTION : CALENDAR_ACTION_BFLD; END; TYPE TIER_SWITCH_BFLD = BIT FIELD OF UINT16 NEW_TIER : UINT(0..2); IF ACT_TIME_TOU_TBL.SEPARATE_SUM_DEMANDS_FLAG THEN SUMMATION_SWITCH_FLAG : BOOL(3); DEMANDS_SWITCH_FLAG : BOOL(4); ELSE FILLER : FILL(3..4); END; SWITCH_MIN : UINT(5..10); SWITCH_HOUR : UINT(11..15); END; TYPE TIER_SWITCH_RCD = PACKED RECORD TIER_SWITCH : TIER_SWITCH_BFLD; DAY_SCH_NUM : UINT8; END; TYPE SCHEDULE_RCD = PACKED RECORD SUNDAY_SCHEDULE : UINT8; MONDAY_SCHEDULE : UINT8; TUESDAY_SCHEDULE : UINT8; WEDNESDAY_SCHEDULE : UINT8; THURSDAY_SCHEDULE : UINT8; FRIDAY_SCHEDULE : UINT8; SATURDAY_SCHEDULE : UINT8; SPECIAL_SCHEDULE

      :

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      173

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que ARRAY[ACT_TIME_TOU_TBL.NBR_SPECIAL_SCHED] OF UINT8;

      END; TYPE WEEKDAYS_SCHEDULE_RCD = PACKED RECORD SATURDAY_SCHEDULE : UINT8; SUNDAY_SCHEDULE : UINT8; WEEKDAY_SCHEDULE : UINT8; SPECIAL_SCHEDULE : ARRAY[ACT_TIME_TOU_TBL.NBR_SPECIAL_SCHED] OF UINT8; END; TYPE CALENDAR_RCD = PACKED RECORD IF ACT_TIME_TOU_TBL.ANCHOR_DATE_FLAG THEN ANCHOR_DATE : DATE; END; NON_RECURR_DATES : ARRAY[ACT_TIME_TOU_TBL.NBR_NON_RECURR_DATES] OF NON_RECURR_DATE_RCD; RECURR_DATES : ARRAY[ACT_TIME_TOU_TBL.NBR_RECURR_DATES] OF RECURR_DATE_RCD; TIER_SWITCHES : ARRAY[ACT_TIME_TOU_TBL.NBR_TIER_SWITCHES] OF TIER_SWITCH_RCD; IF ACT_TIME_TOU_TBL.SEPARATE_WEEKDAYS_FLAG THEN DAILY_SCHEDULE_ID_MATRIX : ARRAY[ACT_TIME_TOU_TBL.NBR_SEASONS] OF SCHEDULE_RCD; ELSE DAILY_SCHEDULE_ID_MATRIX : ARRAY[ACT_TIME_TOU_TBL.NBR_SEASONS] OF WEEKDAY_SCHEDULE_RCD; END; END; TABLE 54 CALENDAR_TBL = CALENDAR_RCD; Table 54 Element Descriptions Identifier

      Value

      CALENDAR_ACTION_BFLD CALENDAR_CTRL 0 1 2 3 4 . . . 18 19 20 . .

      174

      Definition Number specifying the calendar action that takes place on the date specified. The actions and their codes are defined as follows: No Action. Daylight Saving Time On Daylight Saving Time Off Select Season 0 Select Season 1

      Select Season 15 Special Schedule 0 Special Schedule 1

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 . 30 31

      ANSI

      Special Schedule 11 End Of List Daylight Saving Time On/Off Daylight Saving Time On and Off actions causes a time adjustment to be made at TIME_OFFSET_TBL.DST_TIME_EFF (Table 53) time. If TIME_OFFSET_TBL (Table 53) is not supported, the time adjustment is made at 02:00 A.M. and the time adjustment equals one (1) hour. If ACT_TIME_TOU_TBL.CAP_DST_AUTO_FLA G (Table 51) = TRUE then Daylight Saving Time On/Off actions in this table are ignored. Season Changes If ACT_TIME_TOU_TBL.SEASON_CHNG_ARM ED_FLAG (Table 51) = FALSE, a season change action causes a season change to occur at 00:00 A.M. hours on the date specified. If ACT_TIME_TOU_TBL.SEASON_CHNG_ARM ED_FLAG (Table 51) = TRUE, a season change action "arms" a season change, but the season change will not occur until the next demand reset. If ACT_TIME_TOU_TBL.SEASON_DEMAND_R ESET_FLAG (Table 51) = TRUE, a season change causes a demand reset to occur automatically. A self read of the current register data is saved in the SELF_READ_DATA_TBL (Table 26) if ACT_TIME_TOU_TBL.SEASON_SELF_READ _FLAG (Table 51) = TRUE when the season change occurs. If GEN_CONFIG_TBL.STD_TBLS_USED.PREVIOUS_SEASON_DATA_TBL (Table 00) = TRUE, a season change causes a copy of the current register data to be saved in the PREVIOUS_SEASON_DATA_TBL (Table 24) Special Schedules Special schedules are used for holidays or other special daily schedules. These schedules take effect at midnight (00:00 A.M.) and end 24 hours later (23:59 P.M.). The special schedule takes precedence over the normal day of week schedule. End of List

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      175

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que End of List Action is to notify the utility that the CALENDAR_TBL (Table 54) entries are approaching expiration. Notification is by history message, display, or other means defined by the device manufacturer.

      DEMAND_RESET_FLAG

      FALSE TRUE

      Demand reset shall not occur. Demand reset shall occur at 00:00 A.M. on the date specified. If GEN_CONFIG_TBL.STD_TBLS_USED. PREVIOUS_DEMAND_RESET_DATA_TBL (Table 00) = TRUE, a Demand Reset causes data to be saved in PREVIOUS_DEMAND_RESET_DATA_TBL (Table 25). If ACT_REGS_TBL.SELF_READ_DEMAND_RE SET_FLAG (Table 21) = 1 or 3, a self read shall occur in conjunction with the demand reset.

      SELF_READ_FLAG

      FALSE TRUE

      Self read shall not occur. Self read shall occur at 00:00 A.M. on the date specified. If ACT_REGS_TBL.SELF_READ_DEMAND_RE SET_FLAG (Table 21) = 2 or 3, a demand reset shall occur in conjunction with the self read.

      RECURR_DATE_RCD RECURR_DATE

      Date definition of a recurring event. The recurrence can be yearly, monthly, or weekly. The recurring event is referenced to midnight. Defined action that shall take place on this date. See CALENDAR_ACTION_BFLD above.

      CALENDAR_ACTION NON_RECURR_DATE_RCD NON_RECURR_DATE

      Non-recurring event date. Action shall occur at midnight. Defined action that shall take place on this date. See CALENDAR_ACTION_BFLD above.

      CALENDAR_ACTION TIER_SWITCH_BFLD NEW_TIER

      0..7

      SUMMATION_SWITCH_FLAG

      FALSE TRUE DEMANDS_SWITCH_FLAG

      176

      Identifies the tier number that becomes effective at the time specified in the tier switch on the daily schedule type defined by the DAILY_SCHEDULE_ID_MATRIX. Specifies whether or not this tier switch selects a new tier for summations. Only used when ACT_TIME_TOU_TBL.SEPARATE_SUM_DEM ANDS_FLAG (Table 51) = TRUE. Tier switch is not specified for summations. Tier switch is specified for summations. Specifies whether or not this tier switch selects a new tier for demands. Only used when

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      SWITCH_MIN SWITCH_HOUR

      FALSE TRUE 0..59 60..63 0..23 24..31

      TIER_SWITCH_RCD TIER_SWITCH DAY_SCH_NUM

      0..255

      ANSI

      ACT_TIME_TOU_TBL.SEPARATE_SUM_DEM ANDS_FLAG (Table 51) = TRUE. Tier switch is not specified for demands. Tier switch is specified for demands. Minute when the tier switch occurs. Invalid. Hour when the tier switch occurs. Invalid. Defines a switch point for a certain day type defined by the DAILY_SCHEDULE_ID_MATRIX. Specifies the daily schedule type associated with the tier switch. All identifiers are stored in the DAILY_SCHEDULE_ID_MATRIX.

      SCHEDULE_RCD SUNDAY_SCHEDULE MONDAY_SCHEDULE TUESDAY_SCHEDULE WEDNESDAY_SCHEDULE

      0..255 0..255 0..255 0..255

      THURSDAY_SCHEDULE FRIDAY_SCHEDULE SATURDAY_SCHEDULE SPECIAL_SCHEDULE

      0..255 0..255 0..255 0..255

      Daily schedule type programmed for Sunday. Daily schedule type programmed for Monday. Daily schedule type programmed for Tuesday. Daily schedule type programmed for Wednesday. Daily schedule type programmed for Thursday. Daily schedule type programmed for Friday. Daily schedule type programmed for Saturday. Daily schedule type programmed for each special schedule.

      WEEKDAYS_SCHEDULE_RCD SATURDAY_SCHEDULE SUNDAY_SCHEDULE WEEKDAY_SCHEDULE

      0..255 0..255 0..255

      SPECIAL_SCHEDULE

      0..255

      CALENDAR_RCD ANCHOR_DATE

      Daily schedule type programmed for Saturday. Daily schedule type programmed for Sunday. Daily schedule type programmed for Monday to Friday. Daily schedule type programmed for each special schedule. Anchor date is only used in conjunction with an RDATE type recurring date using the PERIOD/OFFSET mechanism. See Section 6.3.2, RDATE Type. If specified, any recurring date using the PERIOD/OFFSET type shall use this date as a starting date.

      NON_RECURR_DATES

      Array containing non-recurring dates.

      RECURR_DATES

      Array containing recurring dates.

      TIER_SWITCHES

      Array that contains the tier switches.

      DAILY_SCHEDULE_ID_MATRIX

      An array containing daily schedule type identifiers. Each entry in the array consists of a vector of UNIT8 type identifier value. The identifier is used to tie tier switch entries to specific daily schedules. An example of a daily

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      177

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que schedule is Special Schedule 1 in Season 2 or Saturday Day Type in Season 1. The assignment of identifier codes is left to the utility’s discretion.

      0 1 2 3 4 5 6 7 . . . n

      0 1 2 3 . . . n

      178

      If ACT_TIME_TOU_TBL.SEPARATE_WEEKD AYS_FLAG = TRUE, the End Device is programmed with a different schedule for each of the five weekdays. In this case, day types and special schedule definitions are: Sunday Monday Tuesday Wednesday Thursday Friday Saturday Special schedule 1

      Last special schedule supported If ACT_TIME_TOU_TBL.SEPARATE_WEEKDAY S_FLAG = FALSE, the End Device has the same schedule for each of the five weekdays, and day type and special schedules definitions are Saturday Sunday Weekday Special schedule 1 (if supported)

      Last special schedule supported

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.6.6

      ANSI

      Table 55 Clock State Table

      Table 55 Data Description CLOCK_STATE_TBL (Table 55) provides the End Device real time clock information that is accurate to the nearest second. For highest real-time clock precision reading see PRECISION_CLOCK_STATE_TBL (Table 57). Global Default Table Property Overrides: Atomic = “true”, Role=“DATA”, Accessibility=“READONLY” Table 55 Type Definitions TYPE STATUS_BFLD = BIT FIELD OF UINT16 IF ACT_TIME_TOU_TBL.SEPARATE_SUM_DEMANDS_FLAG THEN CURR_SUMM_TIER : UINT(0..2); CURR_DEMAND_TIER : UINT(3..5); ELSE CURR_TIER : UINT(0..2); FILLER : FILL(3..5); END; TIER_DRIVE : UINT(6..7); SPECIAL_SCHD_ACTIVE : UINT(8..11); SEASON : UINT(12..15); END; TYPE CLOCK_STATE_RCD = CLOCK_CALENDAR TIME_DATE_QUAL STATUS END;

      PACKED RECORD : LTIME_DATE; : CLOCK_TBL.TIME_DATE_QUAL_BFLD; : STATUS_BFLD;

      TABLE 55 CLOCK_STATE_TBL = CLOCK_STATE_RCD; Table 55 Element Descriptions Identifier

      Value

      TIME_DATE_QUAL_BFLD STATUS_BFLD

      Definition See CLOCK_TBL.TIME_DATE_QUAL_BFLD.

      Array of status entries of each TOU set. Each set contains:

      CURR_SUMM_TIER

      0..7

      Active tier corresponding to summations. This variable is only used when the capability flag ACT_TIME_TOU_TBL.SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE.

      CURR_DEMAND_TIER

      0..7

      Active tier corresponding to demands. This variable is only used when the capability flag ACT_TIME_TOU_TBL.SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE.

      CURR_TIER

      0..7

      Number representing the tier that is currently active in the End Device. This variable is only used when the capability flag

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      179

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que ACT_TIME_TOU_TBL.SEPARATE_SUM_DEMANDS_FLAG 51) = FALSE.

      TIER_DRIVE

      1..3

      Tier drive source. Tier selection is controlled by CALENDAR_TBL.TIER_SWITCHES (Table 54). Tier selection is not controlled by this Standard.

      SPECIAL_SCHD_ACTIVE

      0..11 12..14 15

      Active special schedule number. Reserved. No special schedule active.

      SEASON

      0..15

      Number representing the season currently active in the End Device.

      0

      CLOCK_STATE_RCD CLOCK_CALENDAR

      180

      (Table

      that

      is

      Current End Device date and time.

      TIME_DATE_QUAL

      See CLOCK_TBL.TIME_DATE_QUAL_BFLD.

      STATUS

      See STATUS_BFLD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.6.7

      ANSI

      Table 56 Time Remaining Table

      Table 56 Data Description TIME_REMAIN_TBL (Table 56) provides predictive time quantities. Global Default Table Property Overrides: Atomic = “true”, Role=“DATA”, Accessibility=“READONLY” Table 56 Type Definitions TYPE TIME_REMAIN_RCD = PACKED RECORD IF ACT_TIME_TOU_TBL.SEPARATE_SUM_DEMANDS_FLAG THEN SUMM_TIER_TIME_REMAIN : UINT16; DEMAND_TIER_TIME_REMAIN : UINT16; ELSE TIER_TIME_REMAIN : UINT16; END; SELF_READ_DAYS_REMAIN : UINT8; END; TABLE 56 TIME_REMAIN_TBL = TIME_REMAIN_RCD; Table 56 Element Descriptions Identifier

      Value

      TIME_REMAIN_RCD SUMM_TIER_TIME_REMAIN 0..65535

      Minutes remaining until the next tier change which affects summations. Used when the capability flag ACT_TIME_TOU_TBL. SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE.

      DEMAND_TIER_TIME_REMAIN 0..65535

      Minutes remaining before the next tier change which affects demands. Used when the capability flag ACT_TIME_TOU_TBL. SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE.

      TIER_TIME_REMAIN

      Minutes, remaining before the next tier change.

      0..65535

      SELF_READ_DAYS_REMAIN 0..255 9.6.8

      Definition

      Days remaining before the next scheduled self read.

      Table 57 Precision Clock State Table

      Table 57 Data Description PRECISION_CLOCK_STATE_TBL (Table 57) provides the End Device real time clock information with increased time precision using the HTIME_DATE data type. It is identical to CLOCK_STATE_TBL (Table 55) except for the extra sub-second precision capability offered. Global Default Table Property Overrides: Atomic = “true”, Role=“DATA”, Accessibility=“READONLY” Table 57 Type Definitions

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      181

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      TYPE CLOCK_STATE_RCD = CLOCK_CALENDAR TIME_DATE_QUAL STATUS END;

      PACKED RECORD : HTIME_DATE; : CLOCK_TBL.TIME_DATE_QUAL_BFLD; : CLOCK_STATE_TBL.STATUS_BFLD;

      TABLE 57 PRECISION_CLOCK_STATE_TBL = CLOCK_STATE_RCD; Table 57 Element Descriptions Identifier

      Value

      CLOCK_STATE_RCD CLOCK_CALENDAR

      182

      Definition Current End Device high-precision date and time.

      TIME_DATE_QUAL

      See CLOCK_TBL.TIME_DATE_QUAL_BFLD.

      STATUS

      See CLOCK_STATE_TBL.STATUS_BFLD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.7 Decade 6: Load Profile Tables Decade 6 Name LOAD_PROFILE_DEC Decade 6 Data Description These Tables provide structures for Load Profile data. 9.7.1

      Table 60 Load Profile Dimension Limits Table

      Table 60 Data Description DIM_LP_TBL (Table 60) specifies the maximum dimensional values and control selectors and options for Load Profile data. This Decade provides for up to four independent sets of Load Profile data. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 60 Type Definitions TYPE LP_FLAGS_BFLD = BIT FIELD OF UINT16 LP_SET1_INHIBIT_OVF_FLAG : BOOL(0); LP_SET2_INHIBIT_OVF_FLAG : BOOL(1); LP_SET3_INHIBIT_OVF_FLAG : BOOL(2); LP_SET4_INHIBIT_OVF_FLAG : BOOL(3); BLK_END_READ_FLAG : BOOL(4); BLK_END_PULSE_FLAG : BOOL(5); SCALAR_DIVISOR_FLAG_SET1 : BOOL(6); SCALAR_DIVISOR_FLAG_SET2 : BOOL(7); SCALAR_DIVISOR_FLAG_SET3 : BOOL(8); SCALAR_DIVISOR_FLAG_SET4 : BOOL(9); EXTENDED_INT_STATUS_FLAG : BOOL(10); SIMPLE_INT_STATUS_FLAG : BOOL(11); BLK_END_RP_INDICATOR_FLAG : BOOL(12); FILLER : FILL (13..15); END; TYPE LP_FMATS_BFLD = BIT FIELD OF UINT8 INV_UINT8_FLAG : BOOL(0); INV_UINT16_FLAG : BOOL(1); INV_UINT32_FLAG : BOOL(2); INV_INT8_FLAG : BOOL(3); INV_INT16_FLAG : BOOL(4); INV_INT32_FLAG : BOOL(5); INV_NI_FMAT1_FLAG : BOOL(6); INV_NI_FMAT2_FLAG : BOOL(7); END; TYPE LP_SET_RCD = PACKED RECORD LP_MEMORY_LEN : UINT32; LP_FLAGS : LP_FLAGS_BFLD; LP_FMATS : LP_FMATS_BFLD; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET1_TBL] THEN NBR_BLKS_SET1 NBR_BLK_INTS_SET1

      : UINT16; : UINT16;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      183

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_CHNS_SET1 MAX_INT_TIME_SET1

      : UINT8; : UINT8;

      END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET2_TBL] THEN NBR_BLKS_SET2 : UINT16; NBR_BLK_INTS_SET2 : UINT16; NBR_CHNS_SET2 : UINT8; MAX_INT_TIME_SET2 : UINT8; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET3_TBL] THEN NBR_BLKS_SET3 : UINT16; NBR_BLK_INTS_SET3 : UINT16; NBR_CHNS_SET3 : UINT8; MAX_INT_TIME_SET3 : UINT8; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET4_TBL] THEN NBR_BLKS_SET4 : UINT16; NBR_BLK_INTS_SET4 : UINT16; NBR_CHNS_SET4 : UINT8; MAX_INT_TIME_SET4 : UINT8; END; END; TABLE 60 DIM_LP_TBL = LP_SET_RCD; Table 60 Element Descriptions Identifier

      Value

      LP_FLAGS_BFLD

      This bit field specifies management capabilities.

      LP_SET1_INHIBIT_OVF_FLAG FALSE TRUE LP_SET2_INHIBIT_OVF_FLAG FALSE TRUE LP_SET3_INHIBIT_OVF_FLAG FALSE TRUE LP_SET4_INHIBIT_OVF_FLAG FALSE TRUE

      184

      Definition Load

      Profile

      list

      End Device is not capable of inhibiting Load Profile set 1 once an overflow occurs. End Device is capable of inhibiting Load Profile set 1 once an overflow occurs. End Device is not capable of inhibiting Load Profile set 2 once an overflow occurs. End Device is capable of inhibiting Load Profile set 2 once an overflow occurs. End Device is not capable of inhibiting Load Profile set 3 once an overflow occurs. End Device is capable of inhibiting Load Profile set 3 once an overflow occurs. End Device is not capable of inhibiting Load Profile set 4 once an overflow occurs. End Device is capable of inhibiting Load Profile set 4 once an overflow occurs.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 BLK_END_READ_FLAG

      FALSE TRUE

      BLK_END_PULSE_FLAG

      FALSE TRUE

      SCALAR_DIVISOR_FLAG_SET1 FALSE TRUE SCALAR_DIVISOR_FLAG_SET2 FALSE TRUE

      SCALAR_DIVISOR_FLAG_SET3 FALSE TRUE

      SCALAR_DIVISOR_FLAG_SET4 FALSE TRUE

      EXTENDED_INT_STATUS_FLAG FALSE TRUE SIMPLE_INT_STATUS_FLAG FALSE TRUE BLK_END_RP_INDICATOR_FLAG FALSE TRUE

      ANSI

      End Device is not capable of providing blockend Register reading information. The End Device is capable of providing blockend Register reading information. End Device is not capable of providing blockend pulse accumulator data. The End Device is capable of providing blockend pulse accumulator data. End Device is not capable of having scalars and divisors associated with set 1 Load Profile interval data. End Device is capable of having scalars and divisors associated with set 1 Load Profile interval data. End Device is not capable of having scalars and divisors associated with set 2 Load Profile interval data. End Device is capable of having scalars and divisors associated with set 2 Load Profile interval data. End Device is not capable of having scalars and divisors associated with set 3 Load Profile interval data. End Device is capable of having scalars and divisors associated with set 3 Load Profile interval data. End Device is not capable of having scalars and divisors associated with set 4 Load Profile interval data. End Device is capable of having scalars and divisors associated with set 4 Load Profile interval data. End Device is not capable of returning extended interval status with Load Profile interval data. End Device is capable of returning extended interval status with Load Profile interval data. End Device is not capable of returning simple interval status with Load Profile interval data. End Device is capable of returning simple interval status with Load Profile interval data. Block-end readings (END_READINGS) are cumulative across all blocks. Block-end readings (END_READINGS) are only across the associated block.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      185

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      LP_FMATS_BFLD

      INV_UINT8_FLAG

      This set of booleans specifies the format(s) acceptable for use in DIM_LP_TBL (Table 60) and ACT_LP_TBL (Table 61). FALSE TRUE

      INV_UINT16_FLAG

      FALSE TRUE

      INV_UINT32_FLAG

      FALSE TRUE

      INV_INT8_FLAG

      FALSE TRUE

      INV_INT16_FLAG

      FALSE TRUE

      INV_INT32_FLAG

      FALSE TRUE

      INV_NI_FMAT1_FLAG

      FALSE TRUE

      INV_NI_FMAT2_FLAG

      FALSE TRUE

      LP_SET_RCD LP_MEMORY_LEN

      UINT8 format for intervals is not capable of being used. An interval format of UINT8 is capable of being used. UINT16 format for intervals is not capable of being used. An interval format of UINT16 is capable of being used. UINT32 format for intervals is not capable of being used. An interval format of UINT32 is capable of being used. INT8 format for intervals is not capable of being used. An interval format of INT8 is capable of being used. INT16 format for intervals is not capable of being used. An interval format of INT16 is capable of being used. INT32 format for intervals is not capable of being used. An interval format of INT32 is capable of being used. NI_FMAT1 format for intervals is not capable of being used. An interval format of NI_FMAT1 is capable of being used. NI_FMAT2 format for intervals is not capable of being used. An interval format of NI_FMAT2 is capable of being used. This record contains information defining how each set of Load Profile information works.

      0..4294967295 Maximum number of octets of storage available for Load Profile data. This reflects the combined sizes of tables LP_DATA_SET1_TBL (Table 64), LP_DATA_SET2_TBL (Table 65), LP_DATA_SET3_TBL (Table 66), and LP_DATA_SET4_TBL (Table 67).

      LP_FLAGS

      186

      See LP_FLAGS_BFLD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 LP_FMATS

      ANSI

      See LP_FMATS_BFLD.

      NBR_BLKS_SET1

      0..65535

      Maximum number of blocks which can be contained in LP_DATA_SET1_TBL (Table 64).

      NBR_BLK_INTS_SET1

      0..65535

      Maximum number of intervals per block which can be contained in LP_DATA_SET1_TBL (Table 64).

      NBR_CHNS_SET1

      0..255

      Maximum number of channels of Load Profile data which can be contained in LP_DATA_SET1_TBL (Table 64).

      MAX_INT_TIME_SET1

      0..255

      Maximum time in minutes for Load Profile interval duration which can be contained in LP_DATA_SET1_TBL (Table 64).

      NBR_BLKS_SET2

      0..65535

      Maximum number of blocks which can be contained in LP_DATA_SET2_TBL (Table 65).

      NBR_BLK_INTS_SET2

      0..65535

      Maximum number of intervals per block which can be contained in LP_DATA_SET2_TBL (Table 65).

      NBR_CHNS_SET2

      0..255

      Maximum number of channels of Load Profile data which can be contained in LP_DATA_SET2_TBL (Table 65).

      MAX_INT_TIME_SET2

      0..255

      Maximum time in minutes for Load Profile interval duration which can be contained in LP_DATA_SET2_TBL (Table 65).

      NBR_BLKS_SET3

      0..65535

      Maximum number of blocks which can be contained in LP_DATA_SET3_TBL (Table 66).

      NBR_BLK_INTS_SET3

      0..65535

      Maximum number of intervals per block which can be contained in LP_DATA_SET3_TBL (Table 66).

      NBR_CHNS_SET3

      0..255

      Maximum number of channels of Load Profile data which can be contained in LP_DATA_SET3_TBL (Table 66).

      MAX_INT_TIME_SET3

      0..255

      Maximum time in minutes for Load Profile interval duration which can be contained in LP_DATA_SET3_TBL (Table 66).

      NBR_BLKS_SET4

      0..65535

      Maximum number of blocks which can be contained in LP_DATA_SET4_TBL (Table 67).

      NBR_BLK_INTS_SET4

      0..65535

      Maximum number of intervals per block which can be contained in LP_DATA_SET4_TBL (Table 67).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      187

      ANSI C12.19-2008 aparezca aquí.

      188

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_CHNS_SET4

      0..255

      Maximum number of channels of Load Profile data which can be contained in LP_DATA_SET4_TBL (Table 67).

      MAX_INT_TIME_SET4

      0..255

      Maximum time in minutes for Load Profile interval duration which can be contained in LP_DATA_SET4_TBL (Table 67).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.7.2

      ANSI

      Table 61 Actual Load Profile Limiting Table

      Table 61 Data Description ACT_LP_TBL (Table 61) contains actual dimensions for Load Profile data. This Decade provides for up to four independent sets of Load Profile data. Global Default Table Property Overrides: Role=“ACTUAL” Table 61 Type Definitions TABLE 61 ACT_LP_TBL = LP_SET_RCD; Table 61 Element Descriptions Identifier

      Value

      LP_FLAGS_BFLD

      This bit field specifies Load Profile list management capabilities. Redefines: DIM_LP_TBL.LP_FLAGS_BFLD.

      LP_SET1_INHIBIT_OVF_FLAG FALSE TRUE LP_SET2_INHIBIT_OVF_FLAG FALSE TRUE LP_SET3_INHIBIT_OVF_FLAG FALSE TRUE LP_SET4_INHIBIT_OVF_FLAG FALSE TRUE BLK_END_READ_FLAG

      FALSE TRUE

      BLK_END_PULSE_FLAG

      Definition

      FALSE

      End Device is not inhibiting Load Profile set 1 once an overflow occurs. End Device is inhibiting Load Profile set 1 once an overflow occurs. End Device is not inhibiting Load Profile set 2 once an overflow occurs. End Device is inhibiting Load Profile set 2 once an overflow occurs. End Device is not inhibiting Load Profile set 3 once an overflow occurs. End Device is inhibiting Load Profile set 3 once an overflow occurs. End Device is not inhibiting Load Profile set 4 once an overflow occurs. End Device is inhibiting Load Profile set 4 once an overflow occurs. End Device is not providing block-end register reading information. End Device is providing block-end register reading information. Although it is possible for BLK_END_READ_FLAG and BLK_END_PULSE_FLAG to both be set to TRUE, this capability is Deprecated. End Device does not have block-end pulse accumulator data.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      189

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que TRUE

      SCALAR_DIVISOR_FLAG_SET1 FALSE TRUE SCALAR_DIVISOR_FLAG_SET2 FALSE TRUE SCALAR_DIVISOR_FLAG_SET3 FALSE TRUE SCALAR_DIVISOR_FLAG_SET4 FALSE TRUE EXTENDED_INT_STATUS_FLAG FALSE TRUE SIMPLE_INT_STATUS_FLAG FALSE TRUE BLK_END_RP_INDICATOR_FLAG

      FALSE TRUE LP_FMATS_BFLD

      INV_UINT8_FLAG

      190

      End Device has block-end pulse accumulator data. Although it is possible for BLK_END_READ_FLAG and BLK_END_PULSE_FLAG to both be set to TRUE, this capability is Deprecated. End Device does not have scalars and divisors associated with set 1 Load Profile interval data. End Device does have scalars and divisors associated with set 1 Load Profile interval data. End Device does not have scalars and divisors associated with set 2 Load Profile interval data. The End Device has scalars and divisors associated with set 2 Load Profile interval data. End Device does not have scalars and divisors associated with set 3 Load Profile interval data. End Device does have scalars and divisors associated with set 3 Load Profile interval data. End Device does not have scalars and divisors associated with set 4 Load Profile interval data. End Device does have scalars and divisors associated with set 4 Load Profile interval data. End Device does not return extended interval status with Load Profile interval data. End Device returns extended interval status with Load Profile interval data. End Device does not return simple interval status with Load Profile interval data. End Device returns simple interval status with Load Profile interval data. The end block reading flag. When DIM_LP_TBL (Table 60) and ACT_LP_TBL (Table 61) are both presnet then they shall have identical values for BLK_END_RP_INDICATOR_FLAG. Block-end readings (END_READINGS) are cumulative across all blocks. Block-end readings (END_READINGS) are only across the associated block. This set of Booleans specifies the format(s) in use in LP_CTRL_TBL (Table 62). Redefines: DIM_LP_TBL.LP_FMATS_BFLD.

      FALSE TRUE

      UINT8 format can not be in use. An interval format of UINT8 is being used.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      INV_UINT16_FLAG

      FALSE TRUE

      UINT16 format can not be in use. An interval format of UINT16 is being used.

      INV_UINT32_FLAG

      FALSE TRUE

      UINT32 format can not be in use. An interval format of UINT32 can be used.

      INV_INT8_FLAG

      FALSE TRUE

      INT8 format can not be in use. An interval format of INT8 is being used.

      INV_INT16_FLAG

      FALSE TRUE

      INT16 format can not be in use. An interval format of INT16 is being used.

      INV_INT32_FLAG

      FALSE TRUE

      INT32 format can not be in use. An interval format of INT32 is being used.

      INV_NI_FMAT1_FLAG

      FALSE TRUE

      NI_FMAT1 format can not be in use. An interval format of NI_FMAT1 is being used.

      INV_NI_FMAT2_FLAG

      FALSE TRUE

      NI_FMAT2 format can not be in use. An interval format of NI_FMAT2 is being used.

      LP_SET_RCD

      LP_MEMORY_LEN

      This record contains information defining each set of Load Profile information. Redefines: DIM_LP_TBL.LP_SET_RCD. 0..4294967295 Current number of octets of storage being used for Load Profile data. This reflects the combined sizes of LP_DATA_SET1_TBL (Table 64), LP_DATA_SET2_TBL (Table 65), LP_DATA_SET3_TBL (Table 66), and LP_DATA_SET4_TBL (Table 67).

      LP_FLAGS

      See LP_FLAGS_BFLD.

      LP_FMATS

      See LP_FMATS_BFLD.

      NBR_BLKS_SET1

      0..65535

      Actual number of blocks in LP_DATA_SET1_TBL (Table 64).

      NBR_BLK_INTS_SET1

      0..65535

      Actual number of intervals per block contained in LP_DATA_SET1_TBL (Table 64).

      NBR_CHNS_SET1

      0..255

      Actual number of channels of Load Profile data contained in LP_DATA_SET1_TBL (Table 64).

      MAX_INT_TIME_SET1

      0..255

      Actual interval duration in minutes for Load Profile contained in LP_DATA_SET1_TBL (Table 64).

      NBR_BLKS_SET2

      0..65535

      Actual number of blocks in LP_DATA_SET2_TBL (Table 65).

      NBR_BLK_INTS_SET2

      0..65535

      Actual number of intervals per block contained in LP_DATA_SET2_TBL (Table 65).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      use

      use

      in

      in

      191

      ANSI C12.19-2008 aparezca aquí.

      192

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_CHNS_SET2

      0..255

      Actual number of channels of Load Profile data contained in LP_DATA_SET2_TBL (Table 65).

      MAX_INT_TIME_SET2

      0..255

      Actual interval duration in minutes for Load Profile contained in LP_DATA_SET2_TBL (Table 65).

      NBR_BLKS_SET3

      0..65535

      Actual number of blocks in LP_DATA_SET3_TBL (Table 66).

      NBR_BLK_INTS_SET3

      0..65535

      Actual number of intervals per block contained in LP_DATA_SET3_TBL (Table 66).

      NBR_CHNS_SET3

      0..255

      Actual number of channels of Load Profile data contained in LP_DATA_SET3_TBL (Table 66).

      MAX_INT_TIME_SET3

      0..255

      Actual interval duration in minutes for Load Profile contained in LP_DATA_SET3_TBL (Table 66).

      NBR_BLKS_SET4

      0..65535

      Actual number of blocks in LP_DATA_SET4_TBL (Table 67).

      NBR_BLK_INTS_SET4

      0..65535

      Actual number of intervals per block contained in LP_DATA_SET4_TBL (Table 67).

      NBR_CHNS_SET4

      0..255

      Actual number of channels of Load Profile data contained in LP_DATA_SET4_TBL (Table 67).

      MAX_INT_TIME_SET4

      0..255

      Actual interval duration in minutes for Load Profile contained in LP_DATA_SET4_TBL (Table 67).

      use

      use

      in

      in

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.7.3

      ANSI

      Table 62 Load Profile Control Table

      Table 62 Data Description LP_CTRL_TBL (Table 62) defines the data sources and formats used in the collection of Load Profile data. Global Default Table Property Overrides: Role=“CONTROL” Table 62 Type Definitions TYPE LP_CTRL_FLAGS_BFLD = BIT FIELD OF UINT8 END_RDG_FLAG : BOOL(0); FILLER : FILL(1..7); END; TYPE LP_SOURCE_SEL_RCD = PACKED RECORD CHNL_FLAG : LP_CTRL_FLAGS_BFLD; LP_SOURCE_SELECT : STD.SOURCE_SELECT_RCD; END_BLK_RDG_SOURCE_SELECT : STD.SOURCE_SELECT_RCD; END; TYPE DATA_SELECTION_RCD = PACKED RECORD IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET1_TBL] THEN LP_SEL_SET1 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET1] LP_SOURCE_SEL_RCD; INT_FMT_CDE1 : UINT8; IF ACT_LP_TBL.SCALAR_DIVISOR_FLAG_SET1 THEN SCALARS_SET1 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET1] UINT16; DIVISOR_SET1 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET1] UINT16; END; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET2_TBL] THEN LP_SEL_SET2 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET2] LP_SOURCE_SEL_RCD; INT_FMT_CDE2 : UINT8; IF ACT_LP_TBL.SCALAR_DIVISOR_FLAG_SET2 THEN SCALARS_SET2 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET2] UINT16; DIVISOR_SET2 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET2] UINT16; END; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET3_TBL] THEN LP_SEL_SET3 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET3] LP_SOURCE_SEL_RCD; INT_FMT_CDE3 : UINT8; IF ACT_LP_TBL.SCALAR_DIVISOR_FLAG_SET3 THEN SCALARS_SET3 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET3] UINT16; DIVISOR_SET3 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET3] UINT16; END;

      OF

      OF OF

      OF

      OF OF

      OF

      OF OF

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      193

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET4_TBL] THEN LP_SEL_SET4 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET4] OF LP_SOURCE_SEL_RCD; INT_FMT_CDE4 : UINT8; IF ACT_LP_TBL.SCALAR_DIVISOR_FLAG_SET4 THEN SCALARS_SET4 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET4] OF UINT16; DIVISOR_SET4 : ARRAY[ACT_LP_TBL.NBR_CHNS_SET4] OF UINT16; END; END; END; TABLE 62 LP_CTRL_TBL = DATA_SELECTION_RCD; Table 62 Element Descriptions Identifier

      Value

      Definition

      FALSE

      Channel does not have an associated end reading. Channel does have an associated end reading.

      LP_CTRL_FLAGS_BFLD END_RDG_FLAG

      TRUE LP_SOURCE_SEL_RCD CHNL_FLAG

      Flags associated with a particular channel.

      INT_SOURCE_SELECT

      Data source selector of the interval data for a specific channel. In the context of MODEL_SELECT one1, all QUALIFIERs are acceptable.

      END_BLK_RDG_SOURCE_SELECT

      Data source selector of the block end reading for a specific channel. In the context of MODEL_SELECT one, acceptable QUALIFIER in is 0 (Summation) and 1 (Consumption). When the QUALIFIER is set to 0, the BLOCK_END_READ of the current block minus the BLOCK_END_READ of the previous block should equal the summation of all intervals for this channel within the block. When the QUALIFIER is set to 1, the BLOCK_END_READ should equal the summation of all intervals for this channel within the block.

      INT_FMT_ENUM 1 2 4 8 16

      194

      Code identifying the format of interval data. UINT8 UINT16 UINT32 INT8 INT16

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 32 64 128

      ANSI

      INT32 NI_FMAT1 NI_FMAT2 All other code values are Reserved.

      DATA_SELECTION_RCD

      This record stores all information concerning each of the selected channels.

      LP_SEL_SET1

      Array of records that identifies sources of data for each channel of interval data in LP_DATA_SET1_TBL (Table 64).

      INT_FMT_CDE1

      Single code selecting the format for all interval data in LP_DATA_SET1_TBL (Table 64). See INT_FMT_ENUM.

      SCALARS_SET1

      Array of scalars applied to interval data before recording pulse data in Load Profile set 1.

      DIVISORS_SET1

      Array of divisors applied to interval data before recording pulse data in Load Profile set 1.

      LP_SEL_SET2

      An array of records that identifies sources of data for each channel of interval data in LP_DATA_SET2_TBL (Table 65).

      INT_FMT_CDE2

      Single code selecting the format for all interval data in LP_DATA_SET2_TBL (Table 65). See INT_FMT_ENUM.

      SCALARS_SET2

      Array of scalars applied to interval data before recording pulse data in Load Profile set 2.

      DIVISORS_SET2

      Array of divisors applied to interval data before recording pulse data in Load Profile set 2.

      LP_SEL_SET3

      Array of records that identifies sources of data for each channel of interval data in LP_DATA_SET3_TBL (Table 66).

      INT_FMT_CDE3

      Single code selecting the format for all interval data in LP_DATA_SET3_TBL (Table 66). See INT_FMT_ENUM.

      SCALARS_SET3

      Array of scalars applied to interval data before recording pulse data in Load Profile set 3.

      DIVISORS_SET3

      Array of divisors applied to interval data before recording pulse data in Load Profile set 3.

      LP_SEL_SET4

      Array of records that identifies sources of data for each channel of interval data in LP_DATA_SET4_TBL (Table 67).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      195

      ANSI C12.19-2008 aparezca aquí.

      196

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      INT_FMT_CDE4

      Single code selecting the format for all interval data in LP_DATA_SET4_TBL (Table 67). See INT_FMT_ENUM.

      SCALARS_SET4

      Array of scalars applied to interval data before recording pulse data in Load Profile set 4.

      DIVISORS_SET4

      Array of divisors applied to interval data before recording pulse data in Load Profile set 4.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.7.4

      ANSI

      Table 63 Load Profile Status Table

      Table 63 Data Description LP_STATUS_TBL (Table 63) contains the status of each Load Profile data set. Global Default Table Property Overrides: Atomic = “true”, Role=“DATA”, Accessibility=“READONLY” Table 63 Type Definitions TYPE LP_SET_STATUS_BFLD = BIT FIELD OF UINT8 BLOCK_ORDER : UINT(0..0); OVERFLOW_FLAG : BOOL(1); LIST_TYPE : UINT(2..2); BLOCK_INHIBIT_OVERFLOW_FLAG : BOOL(3); INTERVAL_ORDER : UINT(4..4); ACTIVE_MODE_FLAG : BOOL(5); TEST_MODE : UINT(6..6); FILLER : FILL(7..7); END; TYPE LP_SET_STATUS_RCD = PACKED RECORD LP_SET_STATUS_FLAGS : LP_SET_STATUS_BFLD; NBR_VALID_BLOCKS : UINT16; LAST_BLOCK_ELEMENT : UINT16; LAST_BLOCK_SEQ_NBR : UINT32; NBR_UNREAD_BLOCKS : UINT16; NBR_VALID_INT : UINT16; END; TYPE LP_STATUS_RCD = PACKED RECORD IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET1_TBL] LP_STATUS_SET1 : LP_SET_STATUS_RCD; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET2_TBL] LP_STATUS_SET2 : LP_SET_STATUS_RCD; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET3_TBL] LP_STATUS_SET3 : LP_SET_STATUS_RCD; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[LP_DATA_SET4_TBL] LP_STATUS_SET4 : LP_SET_STATUS_RCD; END; END;

      THEN THEN THEN THEN

      TABLE 63 LP_STATUS_TBL = LP_STATUS_RCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      197

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 63 Element Descriptions Identifier

      Value

      Definition

      0

      Blocks of Load Profile data are transported in ascending order (N is older than N+1). Blocks of Load Profile data are transported in descending order (N is newer than N+1).

      LP_SET_STATUS_BFLD BLOCK_ORDER

      1 OVERFLOW_FLAG

      FALSE TRUE

      Overflow has not occurred. An attempt was made to enter an interval in a new data block such that the number of unread blocks exceeded the actual number of possible blocks in Load Profile storage.

      LIST_TYPE

      0

      FIFO (First In First Out) as placed in Load Profile storage. Circular list as placed in Load Profile storage.

      1 BLOCK_INHIBIT_OVERFLOW_FLAG

      The same value as ACT_LP_TBL.LP_SETn_INHIBIT_OVF_FLAG .

      INTERVAL_ORDER

      Intervals in each block of Load Profile are transported in ascending order (N is older than N+1). Intervals in each block of Load Profile are transported in descending order (N is newer than N+1).

      0 1

      ACTIVE_MODE_FLAG

      FALSE TRUE

      Data set is not collecting data. Data set is collecting data.

      TEST_MODE

      0 1

      Data set is collecting Metering Mode data. Data set is collecting Test Mode data.

      LP_SET_STATUS_RCD LP_SET_STATUS_FLAGS

      198

      See LP_SET_STATUS_BFLD.

      NBR_VALID_BLOCKS

      0..65535

      Number of valid Load Profile data blocks in Load Profile data tables LP_DATA_SET1_TBL (Table 64), LP_DATA_SET2_TBL (Table 65), LP_DATA_SET3_TBL (Table 66), and LP_DATA_SET4_TBL (Table 67), Load Profile block arrays. The range is zero (meaning no data blocks in Load Profile Data Table) to the actual dimension of the number of Load Profile data blocks. The block is considered valid when at least one interval is written.

      LAST_BLOCK_ELEMENT

      0..65535

      Array element of the newest valid data block in the Load Profile data array. This field is valid only if NBR_VALID_BLOCKS is greater than zero.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 LAST_BLOCK_SEQ_NBR

      ANSI

      0..4294967295 Sequence number (LP_SEQ_NBR) of the last element (LAST_BLOCK_ELEMENT) in the Load Profile data array.

      NBR_UNREAD_BLOCKS

      0..65535

      Number of Load Profile blocks that have not been read. This number is only updated through a procedure.

      NBR_VALID_INT

      0..65535

      Number of valid intervals stored in the last Load Profile block array. The range is zero (meaning no interval in the array) to the actual dimension of the number of intervals per block.

      LP_STATUS_RCD LP_STATUS_SET1

      Status information for profile data set 1.

      LP_STATUS_SET2

      Status information for profile data set 2.

      LP_STATUS_SET3

      Status information for profile data set 3.

      LP_STATUS_SET4

      Status information for profile data set 4.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      199

      ANSI C12.19-2008 aparezca aquí.

      9.7.5

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 64 Load Profile Data Set One Table

      Table 64 Data Description LP_DATA_SET1_TBL (Table 64) contains information on Load Profile data set one. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 64 Type Definitions TYPE INT_FMT1_RCD = PACKED RECORD SWITCH LP_CTRL_TBL.INT_FMT_CDE1 OF CASE 1 : ITEM : UINT8; CASE 2 : ITEM : UINT16; CASE 4 : ITEM : UINT32; CASE 8 : ITEM : INT8; CASE 16 : ITEM : INT16; CASE 32 : ITEM : INT32; CASE 64 : ITEM : NI_FMAT1; CASE 128 : ITEM : NI_FMAT2; END; END; TYPE EXTENDED_STATUS_BFLD = BIT FIELD OF UINT8 { This bit field is expected to be used as an entry of an array. The interpretation of the nibbles of each UINT8 member of the array depends on its position index being the first in the collection (.lastIndex == 0) or not being the first (.lastIndex > 0). } IF .lastIndex == 0 THEN { The index value of this bit field (i.e. the first UINT8) in the containing array is 0, implying that this UINT8 contains the extended common status flags (bits 4..7) and the extended channel status of channel 1 (bits 0..3). } COMMON_DST_CHANGE_FLAG COMMON_POWER_FAIL_FLAG COMMON_SHORT_INTERVAL_FLAG COMMON_LONG_INTERVAL_FLAG

      : BOOL(4); : BOOL(5); : BOOL(6); : BOOL(7);

      ELSE { This is the description of the extended status array indices that are greater than zero. Each UINT8 contains data for of even channel 2,4,6 and odd channels 3,5,7 … through channel NBR_CHNS_SETn, where n the load profile set number. The last CHANNEL_STATUS_ODD bits are FILL bits, when the number of channels is odd. } CHANNEL_STATUS_EVEN END; CHANNEL_STATUS_ODD

      : UINT(4..7); : UINT(0..3);

      END; TYPE INT_SET1_RCD = PACKED RECORD IF ACT_LP_TBL.EXTENDED_INT_STATUS_FLAG THEN EXTENDED_INT_STATUS : ARRAY[(ACT_LP_TBL.NBR_CHNS_SET1/2)+1] OF EXTENDED_STATUS_BFLD; END; INT_DATA : ARRAY[ACT_LP_TBL.NBR_CHNS_SET1] OF INT_FMT1_RCD; END;

      200

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      TYPE READINGS_RCD = PACKED RECORD IF ACT_LP_TBL.BLK_END_READ_FLAG THEN BLOCK_END_READ : NI_FMAT1; END; IF ACT_LP_TBL.BLK_END_PULSE_FLAG THEN BLOCK_END_PULSE : UINT32; END; END; TYPE LP_BLK1_DAT_RCD = PACKED RECORD BLK_END_TIME : STIME_DATE; END_READINGS : ARRAY[ACT_LP_TBL.NBR_CHNS_SET1] OF READINGS_RCD; IF ACT_LP_TBL.SIMPLE_INT_STATUS_FLAG THEN SIMPLE_INT_STATUS : SET((ACT_LP_TBL.NBR_BLK_INTS_SET1+7)/8); END; LP_INT : ARRAY[ACT_LP_TBL.NBR_BLK_INTS_SET1] OF INT_SET1_RCD; END; TYPE LP_DATA_SET1_RCD = PACKED RECORD LP_DATA_SETS1 : ARRAY[ACT_LP_TBL.NBR_BLKS_SET1] OF LP_BLK1_DAT_RCD; END; TABLE 64 LP_DATA_SET1_TBL = LP_DATA_SET1_RCD; Table 64 Element Descriptions Identifier

      Value

      Definition

      INT_FMT1_RCD

      Selector for the format of the channel data. Also See LP_CTRL_TBL.INT_FMT_ENUM.

      CHANNEL_STATUS_ENUM

      The contents of the even and odd channel status nibbles. See EXTENDED_STATUS_BFLD. 0 1 2 3 4 5 6 7

      8..15

      No exception status indicated. Numeric overflow condition detected. Partial interval due to common state. The cause is indicated in the common status flags. Long interval due to common state. The cause is indicated in the common status flags. Skipped interval due to common state. The cause is indicated in the common status flags. The INT_DATA shall be set to zero (0). The interval contains test mode data. The configuration changed during this interval. Load profile recording stopped. If the stoppage condition spans an entire interval duration then the value of INT_DATA shall be set to zero (0) in all applicable intervals of the affected block until the recorded is restarted or the block is closed, whichever occurs first. Reserved.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      201

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      EXTENDED_INT_STATUS_BFLD

      This bit field is expected to be used as an entry of an array. The interpretation of the nibbles of each UINT8 member of the array depends on its position index being the first in the collection (.lastIndex == 0) or not being the first (.lastIndex > 0).

      COMMON_DST_CHANGE_FLAG FALSE TRUE COMMON POWER_FAIL_FLAG

      FALSE

      Daylight savings time status changed during or at the start of this interval. Power fail detection flag. If the power fail condition spans an entire interval duration then the value of INT_DATA shall be set to zero (0) in all applicable intervals of the affected block until the power is restored or the block is closed, whichever occurs first. Power fail did not occur during or at the start of this interval.

      TRUE

      Power fail occurred during or at the start of this interval.

      COMMON SHORT_INTERVAL_FLAG

      Clock set forward indication flag. Setting the clock forward may cause intervals and blocks to be partial or skipped. A time reset during an active interval will close that interval and flag it as a partial interval (2). Time reset across a block boundary shall result in the closure that active block and setting all remaining interval INT_DATA to zero (0) asserting the COMMON SHORT_INTERVAL_FLAG repeatedly to TRUE and the channel’s status to skipped interval due to common state (4). The clock did not change during or at the start of this interval.

      FALSE TRUE COMMON LONG_INTERVAL_FLAG FALSE TRUE

      202

      Daylight saving time status change flag. Daylight saving time status did not changed during or at the start of this interval.

      The clock was set forward during or at start of this interval The interval may be short. Clock set backward indication flag. The clock did not change during or at the start of this interval. The clock was set backward during or at start of this interval The interval may be long.

      CHANNEL_STATUS_EVEN

      The contents of the even channel status nibble. See CHANNEL_STATUS_ENUM.

      CHANNEL_STATUS_ODD

      The contents of the odd channel status nibble See CHANNEL_STATUS_ENUM.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 INT_SET1_RCD EXTENDED_INT_STATUS

      ANSI

      This is one or more single octets of interval status conditions provided for all channels. One nibble (4 bits) of status information is provided for each channel in the set., plus one extra nibble is provided for status conditions common to all channels. This common status nibble is always the first nibble of the set. (That is, the high order 4 bits of the first octet of EXTENDED_INT_STATUS). Since EXTENDED_INT_STATUS is an integral number of octets in length, this field contains one nibble of FILL if the number of channels in the set is even. This fill field, when present always occupies the last nibble of EXTENDED_INT_STATUS. (That is, the low order 4 bits of the last octet of EXTENDED_INT_STATUS).

      INT_DATA

      Array of interval values for each channel in the block, recorded at a single time. Channels are presented in the same order. The order of the channels matches their definition in LP_CTRL_TBL (Table 62).

      READINGS_RCD BLOCK_END_READ BLOCK_END_PULSE

      End-of-block data reading. 0..65355

      End-of-block pulse accumulator value.

      LP_BLK1_DAT_RCD BLK_END_TIME

      Parameter containing the ending date and time of the last interval of data entered in this data block. This shall only contain the expected endof-interval value (for example, if a one-hour interval starting at 10:00 terminates prematurely at 10:15, the BLK_END_TIME shall indicate 11:00). When the block is closed (it is no longer the active block) for any reason the BLK_END_TIME shall be set to the block’s starting time + NBR_BLK_INTS_SET1 * MAX_INT_TIME_SET1.

      END_READINGS

      Array of readings of the end reading sources, taken at the interval end time of the last interval of data entered in the block. One end reading is provided for each channel in the block. The order of the readings matches their definition in LP_CTRL_TBL (Table 62). The format is controlled by READING_RCD.

      SIMPLE_INT_STATUS

      Set of status bits, one per interval, that specifies whether the corresponding interval is valid.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      203

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      LP_INT

      LP_DATA_SETS_RCD LP_DATA_SETS1

      204

      Array of interval records in the block. Intervals are stored in an chronological order, specified by INTERVAL_ORDER, with the oldest reading set appearing in the first record. This is an array of Load Profile data blocks. Array containing the function limiting information about this Load Profile data set.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.7.6

      ANSI

      Table 65 Load Profile Data Set Two Table

      Table 65 Data Description LP_DATA_SET2_TBL (Table 65) contains information on Load Profile data set two. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 65 Type Definitions TYPE INT_FMT2_RCD = PACKED RECORD SWITCH LP_CTRL_TBL.INT_FMT_CDE2 OF CASE 1 : ITEM : UINT8; CASE 2 : ITEM : UINT16; CASE 4 : ITEM : UINT32; CASE 8 : ITEM : INT8; CASE 16 : ITEM : INT16; CASE 32 : ITEM : INT32; CASE 64 : ITEM : NI_FMAT1; CASE 128 : ITEM : NI_FMAT2; END; END; TYPE INT_SET2_RCD = PACKED RECORD IF ACT_LP_TBL.EXTENDED_INT_STATUS_FLAG THEN EXTENDED_INT_STATUS : ARRAY[(ACT_LP_TBL.NBR_CHNS_SET2 / 2)+1] OF LP_DATA_SET1_TBL.EXTENDED_STATUS_BFLD; END; INT_DATA

      : ARRAY[ACT_LP_TBL.NBR_CHNS_SET2] OF INT_FMT2_RCD;

      END; TYPE READINGS_RCD = PACKED RECORD IF ACT_LP_TBL.BLK_END_READ_FLAG THEN BLOCK_END_READ : NI_FMAT1; END; IF ACT_LP_TBL.BLK_END_PULSE_FLAG THEN BLOCK_END_PULSE : UINT32; END; END; TYPE LP_BLK2_DAT_RCD = PACKED RECORD BLK_END_TIME : STIME_DATE; END_READINGS : ARRAY[ACT_LP_TBL.NBR_CHNS_SET2] OF READINGS_RCD; IF ACT_LP_TBL.SIMPLE_INT_STATUS_FLAG THEN SIMPLE_INT_STATUS : SET((ACT_LP_TBL.NBR_BLK_INTS_SET2+7)/8); END; LP_INT : ARRAY[ACT_LP_TBL.NBR_BLK_INTS_SET2] OF INT_SET2_RCD; END; TYPE LP_DATA_SET2_RCD = PACKED RECORD LP_DATA_SETS2 : ARRAY[ACT_LP_TBL.NBR_BLKS_SET2] OF LP_BLK2_DAT_RCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      205

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END; TABLE 65 LP_DATA_SET2_TBL = LP_DATA_SET2_RCD; Table 65 Element Descriptions Identifier

      Value

      INT_FMT2_RCD

      Definition Selector for the format of the channel data. Also See LP_CTRL_TBL.INT_FMT_ENUM.

      INT_SET2_RCD EXTENDED_INT_STATUS

      An array of extended status and flags per LP_DATA_SET1. EXTENDED_INT_STATUS_BFLD. For additional details see LP_DATA_SET1. INT_SET1_RCD.EXTENDED_INT_STATUS.

      INT_DATA

      Array of interval values for each channel in the block, recorded at a single time. Channels are presented in the same order. The order of the channels matches their definition in LP_CTRL_TBL (Table 62).

      READINGS_RCD BLOCK_END_READ BLOCK_END_PULSE

      End-of-block data reading. 0..65355

      End-of-block pulse accumulator value.

      LP_BLK2_DAT_RCD

      206

      BLK_END_TIME

      Parameter containing the ending date and time of the last interval of data entered in this data block. This shall only contain the expected endof-interval value (for example, if a one-hour interval starting at 10:00 terminates prematurely at 10:15, the BLK_END_TIME shall indicate 11:00). When the block is closed (it is no longer the active block) for any reason the BLK_END_TIME shall be set to the block’s starting time + NBR_BLK_INTS_SET2 * MAX_INT_TIME_SET2.

      END_READINGS

      Array of readings of the end reading sources, taken at the interval end time of the last interval of data entered in the block. One end reading is provided for each channel in the block. The order of the readings matches their definition in LP_CTRL_TBL (Table 62). The format is controlled by READING_RCD.

      SIMPLE_INT_STATUS

      Set of status bits, one per interval, that specifies whether the corresponding interval is valid.

      LP_INT

      Array of interval records in the block. Intervals are stored in an chronological order, specified

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      by INTERVAL_ORDER, with the oldest reading set appearing in the first record. LP_DATA_SETS_RCD LP_DATA_SETS2

      Array of Load Profile data blocks. Array containing the function limiting information about this Load Profile data set.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      207

      ANSI C12.19-2008 aparezca aquí.

      9.7.7

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 66 Load Profile Data Set Three Table

      Table 66 Data Description LP_DATA_SET3_TBL (Table 66) contains information on Load Profile data set three. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 66 Type Definitions TYPE INT_FMT3_RCD = PACKED RECORD SWITCH LP_CTRL_TBL.INT_FMT_CDE3 OF CASE 1 : ITEM : UINT8; CASE 2 : ITEM : UINT16; CASE 4 : ITEM : UINT32; CASE 8 : ITEM : INT8; CASE 16 : ITEM : INT16; CASE 32 : ITEM : INT32; CASE 64 : ITEM : NI_FMAT1; CASE 128 : ITEM : NI_FMAT2; END; END; TYPE INT_SET3_RCD = PACKED RECORD IF ACT_LP_TBL.EXTENDED_INT_STATUS_FLAG THEN EXTENDED_INT_STATUS : ARRAY[(ACT_LP_TBL.NBR_CHNS_SET3 / 2)+1] OF LP_DATA_SET1_TBL.EXTENDED_STATUS_BFLD; END; INT_DATA : ARRAY[ACT_LP_TBL.NBR_CHNS_SET3] OF INT_FMT3_RCD; END; TYPE READINGS_RCD = PACKED RECORD IF ACT_LP_TBL.BLK_END_READ_FLAG THEN BLOCK_END_READ : NI_FMAT1; END; IF ACT_LP_TBL.BLK_END_PULSE_FLAG THEN BLOCK_END_PULSE : UINT32; END; END; TYPE LP_BLK3_DAT_RCD = PACKED RECORD BLK_END_TIME : STIME_DATE; END_READINGS : ARRAY[ACT_LP_TBL.NBR_CHNS_SET3] OF READINGS_RCD; IF ACT_LP_TBL.SIMPLE_INT_STATUS_FLAG THEN SIMPLE_INT_STATUS : SET((ACT_LP_TBL.NBR_BLK_INTS_SET3+7)/8); END; LP_INT : ARRAY[ACT_LP_TBL.NBR_BLK_INTS_SET3] OF INT_SET3_RCD; END; TYPE LP_DATA_SET3_RCD = PACKED RECORD LP_DATA_SETS3 : ARRAY[ACT_LP_TBL.NBR_BLKS_SET3] OF LP_BLK3_DAT_RCD; END;

      208

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      TABLE 66 LP_DATA_SET3_TBL = LP_DATA_SETS_RCD; Table 66 Element Descriptions Identifier

      Value

      INT_FMT3_RCD

      Definition Selector for the format of the channel data. Also See LP_CTRL_TBL.INT_FMT_ENUM.

      INT_SET3_RCD EXTENDED_INT_STATUS

      An array of extended status and flags per LP_DATA_SET1. EXTENDED_INT_STATUS_BFLD. For additional details see LP_DATA_SET1. INT_SET1_RCD.EXTENDED_INT_STATUS.

      INT_DATA

      Array of interval values for each channel in the block, recorded at a single time. Channels are presented in the same order. The order of the channels matches their definition in LP_CTRL_TBL (Table 62).

      READINGS_RCD BLOCK_END_READ BLOCK_END_PULSE

      End-of-block data reading. 0..65355

      End-of-block pulse accumulator value.

      LP_BLK3_DAT_RCD BLK_END_TIME

      Parameter containing the ending date and time of the last interval of data entered in this data block. This shall only contain the expected endof-interval value (for example, if a one-hour interval starting at 10:00 terminates prematurely at 10:15, the BLK_END_TIME shall indicate 11:00). When the block is closed (it is no longer the active block) for any reason the BLK_END_TIME shall be set to the block’s starting time + NBR_BLK_INTS_SET3 * MAX_INT_TIME_SET3.

      END_READINGS

      Array of readings of the end reading sources, taken at the interval end time of the last interval of data entered in the block. One end reading is provided for each channel in the block. The order of the readings matches their definition in LP_CTRL_TBL (Table 62). The format is controlled by READING_RCD.

      SIMPLE_INT_STATUS

      Set of status bits, one per interval, that specifies whether the corresponding interval is valid.

      LP_INT

      Array of interval records in the block. Intervals are stored in an chronological order, specified

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      209

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que by INTERVAL_ORDER, with the oldest reading set appearing in the first record.

      LP_DATA_SETS_RCD LP_DATA_SETS3

      210

      Array of Load Profile data blocks. Array containing the function limiting information about this Load Profile data set.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      9.7.8

      ANSI

      Table 67 Load Profile Data Set Four Table

      Table 67 Data Description LP_DATA_SET4_TBL (Table 67) contains information on Load Profile data set four. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 67 Type Definitions TYPE INT_FMT4_RCD = PACKED RECORD SWITCH LP_CTRL_TBL.INT_FMT_CDE4 OF CASE 1 : ITEM : UINT8; CASE 2 : ITEM : UINT16; CASE 4 : ITEM : UINT32; CASE 8 : ITEM : INT8; CASE 16 : ITEM : INT16; CASE 32 : ITEM : INT32; CASE 64 : ITEM : NI_FMAT1; CASE 128 : ITEM : NI_FMAT2; END; END; TYPE INT_SET4_RCD = PACKED RECORD IF ACT_LP_TBL.EXTENDED_INT_STATUS_FLAG THEN EXTENDED_INT_STATUS : ARRAY[(ACT_LP_TBL.NBR_CHNS_SET4 / 2)+1] OF LP_DATA_SET1_TBL.EXTENDED_STATUS_BFLD; END; INT_DATA

      : ARRAY[ACT_LP_TBL.NBR_CHNS_SET4] OF INT_FMT4_RCD;

      END; TYPE READINGS_RCD = PACKED RECORD IF ACT_LP_TBL.BLK_END_READ_FLAG THEN BLOCK_END_READ : NI_FMAT1; END; IF ACT_LP_TBL.BLK_END_PULSE_FLAG THEN BLOCK_END_PULSE : UINT32; END; END; TYPE LP_BLK4_DAT_RCD = PACKED RECORD BLK_END_TIME : STIME_DATE; END_READINGS : ARRAY[ACT_LP_TBL.NBR_CHNS_SET4] OF READINGS_RCD; IF ACT_LP_TBL.SIMPLE_INT_STATUS_FLAG THEN SIMPLE_INT_STATUS : SET((ACT_LP_TBL.NBR_BLK_INTS_SET4+7)/8); END; LP_INT : ARRAY[ACT_LP_TBL.NBR_BLK_INTS_SET4] OF INT_SET4_RCD; END; TYPE LP_DATA_SET4_RCD = PACKED RECORD LP_DATA_SETS4 : ARRAY[ACT_LP_TBL.NBR_BLKS_SET4] OF LP_BLK4_DAT_RCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      211

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END; TABLE 67 LP_DATA_SET4_TBL = LP_DATA_SET4_RCD; Table 67 Element Descriptions Identifier

      Value

      INT_FMT4_RCD

      Definition Selector for the format of the channel data. Also See LP_CTRL_TBL.INT_FMT_ENUM.

      INT_SET4_RCD EXTENDED_INT_STATUS

      An array of extended status and flags per LP_DATA_SET1. EXTENDED_INT_STATUS_BFLD. For additional details see LP_DATA_SET1. INT_SET1_RCD.EXTENDED_INT_STATUS.

      INT_DATA

      Array of interval values for each channel in the block, recorded at a single time. Channels are presented in the same order. The order of the channels matches their definition in LP_CTRL_TBL (Table 62).

      READINGS_RCD BLOCK_END_READ BLOCK_END_PULSE

      End-of-block data reading. 0..65355

      End-of-block pulse accumulator value.

      LP_BLK4_DAT_RCD

      212

      BLK_END_TIME

      Parameter containing the ending date and time of the last interval of data entered in this data block. This shall only contain the expected endof-interval value (for example, if a one-hour interval starting at 10:00 terminates prematurely at 10:15, the BLK_END_TIME shall indicate 11:00). When the block is closed (it is no longer the active block) for any reason the BLK_END_TIME shall be set to the block’s starting time + NBR_BLK_INTS_SET4 * MAX_INT_TIME_SET4.

      END_READINGS

      Array of readings of the end reading sources, taken at the interval end time of the last interval of data entered in the block. One end reading is provided for each channel in the block. The order of the readings matches their definition in LP_CTRL_TBL (Table 62). The format is controlled by READING_RCD.

      SIMPLE_INT_STATUS

      Set of status bits, one per interval, that specifies whether the corresponding interval is valid.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 LP_INT

      LP_DATA_SETS_RCD LP_DATA_SETS4

      ANSI

      Array of interval records in the block. Intervals are stored in an chronological order, specified by INTERVAL_ORDER, with the oldest reading set appearing in the first record. Array of Load Profile data blocks. Array contains the function limiting information about this Load Profile data set.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      213

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.8 Decade 7: History & Event Logs Decade 7 Name HISTORY_EVENT_DEC Decade 7 Data Description This decade contains the tables associated with the maintenance of the History and Event Logs. Although very similar in design, the role of the History Log Data (Table 74) is significantly distinguished from that of the Event Log Data (Table 76). The Event Log Data (Table 76) was designed in a manner to facilitate the establishment and maintenance of consumer confidence in the End Device operation. For that reason the event logger implementation needs to adhere to strict guidelines and uniform rules that are consistent with the implementation of an audit trail that is capable of tracking securely all End Device changes to entities of metrological importance. On the other hand, the history logger provides for monitoring any end-device activity or events which may be of general interest to the operator, utility or technician (e.g. communication access logs, debugging information, clock drift data, demand reset tracking, etc.). Both history logger and event logger (secured audit trail) may be coexist in an End Device. Decade 7 Type Definitions { Enumerator EVENT_CODES_ENUM } Decade 7 Element Descriptions Identifier

      Value

      EVENT_CODES_ENUM

      The following are the Standard event codes that may be entered into the history-log and eventlog tables. For more information on their use See ANNEX B, “History & Event Log Codes” and ANNEX E, “Event Logger Implementation”. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

      214

      Definition

      No Event. Primary Power Down. Primary Power Up. Time Changed (Time-stamp is old time). Time Changed (Time-stamp is new time). Time Changed (Time-stamp is old time in STIME_DATE format). Time Changed (Time-stamp new time in STIME_DATE format). End Device Accessed for Read. End Device Accessed for Write. Procedure Invoked. Table Written To. End Device Programmed. Communication Terminated Normally. Communication Terminated Abnormally. Reset List Pointers. Updated List Pointers. History Log Cleared. History Log Pointers Updated. Event Log Cleared. Event Log Pointers Updated.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74

      ANSI

      Demand Reset Occurred. Self Read Occurred. Daylight Saving Time On. Daylight Savings Time Off. Season Changed. Rate Change. Special Schedule Activated. Tier Switch / Change Pending Table Activated. Pending Table Activation Cleared. Metering mode started. Metering mode stopped. Test mode started. Test mode stopped. Meter shop mode started. Meter shop mode stopped. End Device reprogrammed. Configuration error detected. Self check error detected. RAM failure detected. ROM failure detected. Nonvolatile memory failure detected. Clock error detected. Measurement error detected. Low battery detected. Low loss potential detected. Demand overload detected. Tamper attempt detected. Reverse rotation detected. Control point changed by a command. Control point changed by the schedule. Control point changed by a condition. Control point changed for the prepayment. Added to remaining credit. Subtracted from remaining credit. Adjusted the remaining credit. End Device sealed. End Device unsealed. Procedure Invoked (with values). Table Written To (with values). End Device Programmed (with values). End Device sealed (with values). End Device unsealed (with values). Procedure Invoked (with signature). Table Written To (with signature). End Device Programmed (with signature). End Device sealed (with signature). End Device unsealed (with signature). Procedure Invoked (with signature and values). Table Written To(with signature and values). End Device Programmed (with signature and values). End Device sealed(with signature and values). End Device unsealed(with signature and values). Read Secured Table. Read Secured Register.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      215

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que 75 76 77.. 2047

      9.8.1

      Read Secured Table (with values). Read Secured Register (with values). Reserved.

      Table 70 Log Dimension Limits Table

      Table 70 Data Description DIM_LOG_TBL (Table 70) defines the maximum size and capabilities of the History and Event Log decade. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 70 Type Definitions TYPE LOG_FLAGS_BFLD = BIT FIELD OF UINT8 EVENT_NUMBER_FLAG : BOOL(0); HIST_DATE_TIME_FLAG : BOOL(1); HIST_SEQ_NBR_FLAG : BOOL(2); HIST_INHIBIT_OVF_FLAG : BOOL(3); EVENT_INHIBIT_OVF_FLAG : BOOL(4); FILLER : FILL(5..7); END; TYPE EXT_LOG_FLAGS_BFLD = BIT FIELD OF UINT8 METROLOGICAL_SIG_FLAG : BOOL(0); PROGRAM_SIG_FLAG : BOOL(1); ALTERNATE_SIG_FLAG : BOOL(2); SECURED_REGISTERS_FLAG : BOOL(3); FILLER : FILL(4..7); END; TYPE LOG_RCD = PACKED RECORD LOG_FLAGS : LOG_FLAGS_BFLD; NBR_STD_EVENTS : UINT8; NBR_MFG_EVENTS : UINT8; HIST_DATA_LENGTH : UINT8; EVENT_DATA_LENGTH : UINT8; NBR_HISTORY_ENTRIES : UINT16; NBR_EVENT_ENTRIES : UINT16; IF GEN_CONFIG_TBL.STD_VERSION_NO > 1 THEN EXT_LOG_FLAGS : EXT_LOG_FLAGS_BFLD; NBR_PROGRAM_TABLES : UINT16; END; END; TABLE 70 DIM_LOG_TBL = LOG_RCD; Table 70 Element Descriptions Identifier

      Value

      Definition

      LOG_FLAGS_BFLD EVENT_NUMBER_FLAG

      FALSE

      A common event number can not be maintained in the History & Event Logs. A common event number can be maintained in the History & Event Logs.

      TRUE

      216

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 HIST_DATE_TIME_FLAG

      FALSE TRUE

      HIST_SEQ_NBR_FLAG

      FALSE TRUE

      HIST_INHIBIT_OVF_FLAG

      FALSE TRUE

      EVENT_INHIBIT_OVF_FLAG FALSE TRUE EXT_LOG_FLAGS_BFLD

      ANSI

      Date & time can not be maintained in the History Log. Date & time can be maintained in the History Log. A sequence number can not be transported through the History Log. A sequence number can be transported through the History Log. History Log is not capable of inhibiting overflow. History Log is capable of inhibiting overflow. Event Log is not capable of inhibiting overflow. Event Log is capable of inhibiting overflow. Additional flags that were introduced in revision 2 of this Standard in support of audit trail management.

      METROLOGICAL_SIG_FLAG FALSE TRUE

      The End Device is not capable of including the METROLOGICAL_SIG field in the End Device program state table (Table 78). The End Device is capable of including the METROLOGICAL_SIG field in the End Device program state table (Table 78).

      PROGRAM_SIG_FLAG FALSE TRUE

      The End Device is not capable of including the PROGRAM_SIG field in the End Device program state table (Table 78). The End Device is capable of including the PROGRAM_SIG field in the End Device program state table (Table 78).

      ALTERNATE_SIG_FLAG FALSE TRUE

      SECURED_REGISTERS_FLAG FALSE TRUE LOG_RCD LOG_FLAGS

      The End Device is not capable of including the ALTERNATE_SIG field in the End Device program state table (Table 78). The End Device is capable of including the ALTERNATE_SIG field in the End Device program state table (Table 78). The End Device secured register read events capability flag. The End Device is not capable of generating an End Device secured register event (Read Secured Register or Read Secured Table). The End Device is capable of generating an End Device secured register event (Read Secured Register or Read Secured Table). See LOG_FLAGS_BFLD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      217

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_STD_EVENTS

      0..255

      Maximum number of octets in the set EVENTS_SUPPORTED_TBL.STD_EVENTS_S UPPORTED (Table 72).

      NBR_MFG_EVENTS

      0..255

      Maximum number of octets in the set EVENTS_SUPPORTED_TBL.MFG_EVENTS_ SUPPORTED (Table 72).

      HIST_DATA_LENGTH

      0..255

      Maximum number of octets in the HISTORY_LOG_DATA_TBL.HISTORY_ARGU MENT (Table 74).

      EVENT_DATA_LENGTH

      0..255

      Maximum number of octets in the EVENT_LOG_DATA_TBL.EVENT_ARGUMEN T (Table 76).

      NBR_HISTORY_ENTRIES

      0..65535

      Maximum number of entries in the History Log in HISTORY_LOG_DATA_TBL (Table 74).

      NBR_EVENT_ENTRIES

      0..65535

      Maximum number of entries in the Event Log in EVENT_LOG_DATA_TBL (Table 76).

      EXT_LOG_FLAGS NBR_PROGRAM_TABLES

      218

      See EXT_LOG_FLAGS_BFLD. 0..65535

      Maximum number of tables that can be included in the TABLE_LIST of the End Device program state (Table 78).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.8.2

      ANSI

      Table 71 Actual Log Limiting Table

      Table 71 Data Description ACT_LOG_TBL (Table 71) defines the actual size and capabilities of the History and Event Log Decade. Global Default Table Property Overrides: Role=“ACTUAL” Table 71 Type Definitions TABLE 71 ACT_LOG_TBL = LOG_RCD; Table 71 Element Descriptions Identifier

      Value

      LOG_FLAGS_BFLD EVENT_NUMBER_FLAG

      FALSE TRUE

      HIST_DATE_TIME_FLAG

      FALSE TRUE

      HIST_SEQ_NBR_FLAG

      FALSE TRUE

      Definition Redefines: DIM_LOG_TBL.LOG_FLAGS_BFLD. A common event number is not maintained in the History & Event Logs. A common event number is maintained in the History & Event Logs. A date & time is not maintained in the History Log. A date & time is maintained in the History Log. A sequence number is not transported through the History Log. A sequence number is transported through the History Log.

      HIST_INHIBIT_OVF_FLAG FALSE TRUE

      History Log is not inhibiting new entries when an overflow condition exists. History Log is inhibiting new entries when an overflow condition exists.

      EVENT_INHIBIT_OVF_FLAG FALSE TRUE

      Event Log is not inhibiting new entries when an overflow condition exists. Event Log is inhibiting new entries when an overflow condition exists.

      METROLOGICAL_SIG_FLAG FALSE TRUE EXT_LOG_FLAGS_BFLD

      METROLOGICAL_SIG field is not included in the End Device program state table (Table 78). METROLOGICAL_SIG field is included in the End Device program state table (Table 78). Additional flags that were introduced in revision 2 of this Standard in support of audit trail management. Redefines: DIM_LOG_TBL.LOG_FLAGS_BFLD.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      219

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      PROGRAM_SIG_FLAG FALSE TRUE

      PROGRAM_SIG field is not included in the End Device program state table (Table 78). PROGRAM_SIG field is included in the End Device program state table (Table 78).

      ALTERNATE_SIG_FLAG FALSE TRUE SECURED_REGISTERS_FLAG FALSE TRUE

      LOG_RCD LOG_FLAGS

      220

      ALTERNATE_SIG field is not included in the End Device program state table (Table 78). ALTERNATE_SIG field is included in the End Device program state table (Table 78). The End Device secured register read events enabling flag. The End Device shall not generate End Device secured register events (Read Secured Register or Read Secured Table). The End Device shall generate End Device secured register events (Read Secured Register or Read Secured Table) following the transfer of a secured registers table or elements to an enddevice reader; provided that this capability was enabled by a successful invocation of the “Start Secured Registers” procedure. Event-logging of secured-registers reads shall cease immediately upon invocation of the “Stop Secured Registers” procedure, termination of the communication session (which invoked the “Start Secured Registers” procedure), or upon reaching the maximum number of secured read operations that were permitted (for this session or association). Redefines: DIM_LOG_TBL.LOG_RCD. See LOG_FLAG_BFLD.

      NBR_STD_EVENTS

      0..255

      Actual number of octets in the set EVENTS_SUPPORTED_TBL.STD_EVENTS_S UPPORTED (Table 72).

      NBR_MFG_EVENTS

      0..255

      Actual number of octets in the set EVENTS_SUPPORTED_TBL.MFG_EVENTS_ SUPPORTED (Table 72).

      HIST_DATA_LENGTH

      0..255

      Actual number of octets in the HISTORY_LOG_DATA_TBL.HISTORY_ARGU MENT (Table 74).

      EVENT_DATA_LENGTH

      0..255

      Actual number of octets in the EVENT_LOG_DATA_TBL.EVENT_ARGUMEN T (Table 76).

      NBR_HISTORY_ENTRIES

      0..65535

      Actual maximum number of entries in the History Log.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 NBR_EVENT_ENTRIES

      0..65535

      EXT_LOG_FLAGS NBR_PROGRAM_TABLES

      ANSI

      Actual maximum number of entries in the Event Log. See EXT_LOG_FLAGS_BFLD.

      0..65535

      Actual number of tables included in the TABLE_LIST of the End Device program state (Table 78).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      221

      ANSI C12.19-2008 aparezca aquí. 9.8.3

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 72 Events Identification Table

      Table 72 Data Description EVENTS_ID_TBL (Table 72) contains the events that are supported by the End Device. Any of these events may be expressed in the History Log Data (Table 74) and the Event Log Data (Table 76). Global Default Table Property Overrides: Role=“CONTROL” Table 72 Type Definitions TYPE EVENTS_SUPPORTED_RCD = PACKED RECORD STD_EVENTS_SUPPORTED : SET(ACT_LOG_TBL.NBR_STD_EVENTS); MFG_EVENTS_SUPPORTED : SET(ACT_LOG_TBL.NBR_MFG_EVENTS); END; TABLE 72 EVENTS_ID_TBL = EVENTS_SUPPORTED_RCD; Table 72 Element Descriptions Identifier

      Value

      EVENTS_SUPPORTED_RCD STD_EVENTS_SUPPORTED

      MFG_EVENTS_SUPPORTED

      222

      Definition This set variable indicates which of the standard events are supported in the Event Log. See Annex B, “History & Event Log Codes”, for standard event codes. Event codes are represented by bits 0 through (8 * ACT_LOG_TBL.NBR_STD_EVENTS - 1), with a 1 representing a TRUE or implemented condition and a 0 representing a FALSE or not implemented condition. This set variable indicates which of the manufacturer events are supported in the Event Log. Events are enabled by bits 0 through (8 * ACT_LOG_TBL.NBR_MFG_EVENTS - 1), with a 1 representing a TRUE or implemented condition and a 0 representing a FALSE or not implemented condition.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.8.4

      ANSI

      Table 73 History Log Control Table

      Table 73 Data Description HISTORY_LOG_CTRL_TBL (Table 73) defines the History Log codes to be written to the History Log Data (Table 74). It also defines which specific procedures and or table writes that are to be acknowledged in the History Log Data (Table 74). For a specific procedure or table to be acknowledged, three independent tests shall all be true: 1) The procedure or table shall be used in the End Device, per the GEN_CONFIG_TBL (Table 00). 2) The appropriate History Log code shall be used, per this table. 3) The procedure or table shall be requested to be acknowledged, per this table. This table (Table 73) and its associated data logger table (Table 74) can be used to monitor any End Device activity that may be of interest to the operator, utility or technician. The monitored events may include communication events, debugging information or any other useful information that may be of general interest. When there is an expressed need to establish and maintain consumer confidence in the End Device metrology the reliable audit trail (Event Logger Data Table 76) shall be implemented. Global Default Table Property Overrides: Role=“CONTROL” Table 73 Type Definitions TYPE HISTORY_CTRL_RCD = PACKED RECORD STD_EVENTS_MONITORED_FLAGS : SET(ACT_LOG_TBL.NBR_STD_EVENTS); MFG_EVENTS_MONITORED_FLAGS : SET(ACT_LOG_TBL.NBR_MFG_EVENTS); STD_TBLS_MONITORED_FLAGS : SET(GEN_CONFIG_TBL.DIM_STD_TBLS_USED); MFG_TBLS_MONITORED_FLAGS : SET(GEN_CONFIG_TBL.DIM_MFG_TBLS_USED); STD_PROC_MONITORED_FLAGS : SET(GEN_CONFIG_TBL.DIM_STD_PROC_USED); MFG_PROC_MONITORED_FLAGS : SET(GEN_CONFIG_TBL.DIM_MFG_PROC_USED); END; TABLE 73 HISTORY_LOG_CTRL_TBL = HISTORY_CTRL_RCD; Table 73 Element Descriptions Identifier

      Value

      HISTORY_CTRL_RCD STD_EVENTS_MONITORED_FLAGS FALSE TRUE MFG_EVENTS_MONITORED_FLAGS FALSE TRUE STD_TBLS_MONITORED_FLAGS FALSE

      Definition Bit position is linearly associated with corresponding standard event code. Turns off event recording for associated event code. Turns on event recording for associated event code. Bit position is linearly associated with corresponding manufacturer event code. Turns off event recording for associated event code. Turns on event recording for associated event code. Bit position is linearly associated with corresponding standard table number. Turns off event recording for associated table.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      223

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que TRUE

      MFG_TBLS_MONITORED_FLAGS FALSE TRUE STD_PROC_MONITORED_FLAGS FALSE TRUE MFG_PROC_MONITORED_FLAGS FALSE TRUE

      224

      Turns on event recording for associated table. Bit position is linearly associated with corresponding manufacturer table number. Turns off event recording for associated table. Turns on event recording for associated table. Bit position is linearly associated with corresponding standard procedure number. Turns off event recording for associated procedure. Turns on event recording for associated procedure. Bit position is linearly associated with corresponding manufacturer procedure number. Turns off event recording for associated procedure. Turns on event recording for associated procedure.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.8.5

      ANSI

      Table 74 History Log Data Table

      Table 74 Data Description HISTORY_LOG_DATA_TBL (Table 74) provides the History Log Data that is controlled by Table 73, History Log Control Table. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 74 Type Definitions TYPE HISTORY_ENTRY_RCD = PACKED RECORD IF ACT_LOG_TBL.HIST_DATE_TIME_FLAG THEN HISTORY_TIME : LTIME_DATE; END; IF ACT_LOG_TBL.EVENT_NUMBER_FLAG THEN EVENT_NUMBER : UINT16; END; IF ACT_LOG_TBL.HIST_SEQ_NBR_FLAG THEN HISTORY_SEQ_NBR : UINT16; END; USER_ID : UINT16; HISTORY_CODE : TABLE_IDB_BFLD; HISTORY_ARGUMENT : BINARY(ACT_LOG_TBL.HIST_DATA_LENGTH); END; TYPE HISTORY_LOG_RCD = PACKED RECORD HIST_FLAGS : LIST_STATUS_BFLD; NBR_VALID_ENTRIES : UINT16; LAST_ENTRY_ELEMENT : UINT16; LAST_ENTRY_SEQ_NBR : UINT32; NBR_UNREAD_ENTRIES : UINT16; ENTRIES : ARRAY[ACT_LOG_TBL.NBR_HISTORY_ENTRIES] OF HISTORY_ENTRY_RCD; END; TABLE 74 HISTORY_LOG_DATA_TBL = HISTORY_LOG_RCD; Table 74 Element Descriptions Identifier

      Value

      LIST_STATUS_BFLD ORDER

      0 1

      OVERFLOW_FLAG

      FALSE TRUE

      Definition Redefines: SELF_READ_DATA_TBL. LIST_STATUS_BFLD. History-log entries are transported in ascending order (N is older than N+1). History-log entries are transported in descending order (N is newer than N+1). Overflow has not occurred. An attempt was made to enter a history event such that the number of unread events entries would have exceeded the actual number of possible entries in the log.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      225

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      LIST_TYPE

      0 1

      INHIBIT_OVERFLOW_FLAG TABLE_IDB_BFLD TBL_PROC_NBR

      STD_VS_MFG_FLAG

      FIFO (First In First Out) ordered entries are placed in history-log list, HISTORY_LOG_DATA_TBL.ENTRIES. Circular list, entries are placed in history-log list, HISTORY_LOG_DATA_TBL.ENTRIES. Shall have the same value as ACT_LOG_TBL. HIST_INHIBIT_OVF_FLAG (Table 71).

      0..2047

      FALSE TRUE

      SELECTOR

      Redefines: STD.TABLE_IDB_BFLD. Event number logged. See EVENT_CODES_ENUM for Standard values (STD_VS_MFG_FLAG == TRUE). Event number is standard defined. Event number is manufacturer defined. Not Used.

      HISTORY_ENTRY_RCD HISTORY_TIME

      Date and time of History Log entry.

      EVENT_NUMBER

      0..65535

      Event number common to both the History and Event Logs.

      HISTORY_SEQ_NBR

      0..65535

      Sequence number associated with the History Log only.

      USER_ID

      0..65535

      The User ID associated with this History Log entry. It comes from the Log In Procedure or from a communication session initiation sequence. A USER_ID of zero (0) means the End Device initiated the event. A USER_ID of one (1) means the event was manually initiated. USER_ID values in the range of 57344 (E000 H) through 65535 (FFFF H) are used for devices attached to the device.

      HISTORY_CODE HISTORY_ARGUMENT

      Event code logged. See TABLE_IDB_BFLD. Argument associated with a specific entry. For standard event arguments, refer to Annex B, “History & Event Log Codes”.

      HISTORY_LOG_RCD HIST_FLAGS

      See LIST_STATUS_BFLD.

      NBR_VALID_ENTRIES

      0..65535

      Number of valid entries in the log. The range is from zero (0) (meaning the log is empty) to the actual dimension of the log.

      LAST_ENTRY_ELEMENT

      0..65535

      The array element number of the newest valid entry in the log.

      LAST_ENTRY_SEQ_NBR

      0..4294967295 The sequence number of the newest valid entry in the log.

      226

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 NBR_UNREAD_ENTRIES

      ENTRIES

      0..65535

      ANSI

      The number of entries in the log that have not yet been read. It is only changed through a procedure. Array of History Log entries.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      227

      ANSI C12.19-2008 aparezca aquí. 9.8.6

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 75 Event Log Control Table

      Table 75 Data Description EVENT_LOG_CTRL_TBL (Table 75) defines the Event Log codes to be written to the Event Log. It also defines which specific procedures and or table writes that are to be acknowledged in the Event Log. For a specific procedure or table to be acknowledged, three independent tests shall all be true: 1) The procedure or table shall be used in the End Device, per the GEN_CONFIG_TBL (Table 00). 2) The appropriate Event code shall be used, per Table 75. 3) The procedure or table shall be requested to be acknowledged, per Table 75. This data structure is identical to the structure in HISTORY_LOG_CTRL_TBL (Table 73). The associated table (Event Log Data Table 76) shall be used when there is an expressed need to establish and maintain consumer confidence in the End Device metrology using a reliable audit trail. Elements are defined below. Global Default Table Property Overrides: Role=“CONTROL” Table 75 Type Definitions TABLE 75 EVENT_LOG_CTRL_TBL = HISTORY_CTRL_RCD; Table 75 Element Descriptions Identifier

      Value

      EVENT_CTRL_RCD STD_EVENTS_MONITORED_FLAGS FALSE TRUE MFG_EVENTS_MONITORED_FLAGS FALSE TRUE STD_TBLS_MONITORED_FLAGS FALSE TRUE MFG_TBLS_MONITORED_FLAGS FALSE TRUE STD_PROC_MONITORED_FLAGS FALSE

      228

      Definition Bit position is linearly associated with corresponding standard event code. Turns off event recording for associated event code. Turns on event recording for associated event code. Bit position is linearly associated with corresponding manufacturer event code. Turns off event recording for associated event code. Turns on event recording for associated event code. Bit position is linearly associated with corresponding standard table number. Turns off event recording for associated table. Turns on event recording for associated table. Bit position is linearly associated with corresponding manufacturer table number. Turns off event recording for associated table. Turns on event recording for associated table. Bit position is linearly associated with corresponding standard procedure number. Turns off event recording for associated procedure.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 TRUE MFG_PROC_MONITORED_FLAGS FALSE TRUE

      Turns on event procedure.

      recording

      for

      ANSI

      associated

      Bit position is linearly associated with corresponding manufacturer procedure number. Turns off event recording for associated procedure. Turns on event recording for associated procedure.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      229

      ANSI C12.19-2008 aparezca aquí. 9.8.7

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 76 Event Log Data Table

      Table 76 Data Description EVENT_LOG_DATA_TBL (Table 76) provides the Event Log Data that is controlled by Table 75, Event Log Control Table. The event logger table is a secured audit trail tool capable of recording metrological signatures (See Table 78), secured register reading signatures and event-check signatures. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 76 Type Definitions TYPE EVENT_ENTRY_RCD = PACKED RECORD EVENT_TIME : LTIME_DATE; IF ACT_LOG_TBL.EVENT_NUMBER_FLAG THEN EVENT_NUMBER : UINT16; END; EVENT_SEQ_NBR : UINT16; USER_ID : UINT16; EVENT_CODE : TABLE_IDB_BFLD; EVENT_ARGUMENT : BINARY(ACT_LOG_TBL.EVENT_DATA_LENGTH); END; TYPE EVENT_LOG_RCD = PACKED RECORD EVENT_FLAGS : LIST_STATUS_BFLD; NBR_VALID_ENTRIES : UINT16; LAST_ENTRY_ELEMENT : UINT16; LAST_ENTRY_SEQ_NBR : UINT32; NBR_UNREAD_ENTRIES : UINT16; ENTRIES : ARRAY[ACT_LOG_TBL.NBR_EVENT_ENTRIES] OF EVENT_ENTRY_RCD; END; TABLE 76 EVENT_LOG_DATA_TBL = EVENT_LOG_RCD; Table 76 Element Descriptions Identifier

      Value

      LIST_STATUS_BFLD ORDER

      0 1

      230

      Definition Redefines: SELF_READ_DATA_TBL. LIST_STATUS_BFLD. Event-log entries are transported in ascending order (N is older than N+1). Event-log entries are transported in descending order (N is newer than N+1).

      OVERFLOW_FLAG

      FALSE TRUE

      Overflow has not occurred. An attempt was made to enter an event-log entry such that the number of unread events entries would have exceeded the actual number of possible entries in the log.

      LIST_TYPE

      0

      FIFO (First In First Out) ordered entries are placed in event-log list, EVENT_LOG_DATA_TBL.ENTRIES.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 1 INHIBIT_OVERFLOW_FLAG TABLE_IDB_BFLD TBL_PROC_NBR

      STD_VS_MFG_FLAG

      ANSI

      Circular list, entries are placed in history-log list, EVENT_LOG_DATA_TBL.ENTRIES. Shall have the same value as ACT_LOG_TBL. EVENT_INHIBIT_OVF_FLAG (Table 71).

      0..2047

      Event code number logged. See EVENT_CODES_ENUM for Standard values (STD_VS_MFG_FLAG == TRUE).

      FALSE TRUE

      Event code is standard defined. Event code is manufacturer defined.

      SELECTOR

      Not Used.

      EVENT_ENTRY_RCD EVENT_TIME

      Date and time of Event Log entry.

      EVENT_NUMBER

      0..65535

      Event number common to both the History and Event Logs.

      EVENT_SEQ_NBR

      0..65535

      Sequence number associated with the Event Log only.

      USER_ID

      0..65535

      The User ID associated with this Event Log entry. It comes from the Log In Procedure or from a communication session initiation sequence. A USER_ID of zero (0) means the End Device initiated the event. A USER_ID of one (1) means the event was manually initiated. USER_ID values in the range of 57344 (E000 H) through 65535 (FFFF H) are used for devices attached to the device.

      EVENT_CODE

      Event code logged. See TABLE_IDB_BFLD.

      EVENT_ARGUMENT

      Argument associated with a specific entry. Refer to Annex B, “History & Event Log Codes”, for details.

      EVENT_LOG_RCD EVENT_FLAGS

      See LIST_STATUS_BFLD above.

      NBR_VALID_ENTRIES

      0..65535

      Number of valid entries in the log. The range is zero (0) (meaning the log is empty) to the actual dimension of the log.

      LAST_ENTRY_ELEMENT

      0..65535

      The array element number of the newest valid entry in the log.

      LAST_ENTRY_SEQ_NBR

      0..4294967295 The sequence number of the newest valid entry in the log.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      231

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_UNREAD_ENTRIES

      ENTRIES

      232

      0..65535

      The number of entries in the log that have not yet been read. It is only changed through a procedure. Array of Event Log entries.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.8.8

      ANSI

      Table 77 Event Log and Signatures Enable Table

      Table 77 Data Description SIG_ENABLE_TBL (Table 77) contains three collections of Standard and Manufacturer Table-set selectors that identify which tables are included in the computation of the METROLOGICAL_SIG, PROGRAM_SIG and ALTERNATE_SIG signature found in the Signature table (Table 78). A fourth collection of Table-set selectors is used to identify which tables need to be logged in the Event Log data table (Table 76). A fifth collection of Table-set selectors is used to identify which tables are Secured Registers Tables. Only tables identified within shall be recorded in the Signatures Table and only those Tables identified in the EVENTLOG_SEL shall trigger a Table-changed event entry in the Event Log data table (Table 76). Also only those Tables identified in the SECURED_REGISTER_SEL may trigger a Read Secured Table or Read Secured Register event entry in the Event Log data table (Table 76), when this capability is enabled by the end-device reader. Global Default Table Property Overrides: Role=“CONTROL” Table 77 Type Definitions TYPE TABLE_SEL_RCD = PACKED RECORD STD_TBLS_SEL : SET(GEN_CONFIG_TBL.DIM_STD_TBLS_USED); MFG_TBLS_SEL : SET(GEN_CONFIG_TBL.DIM_MFG_TBLS_USED); END; TYPE SIG_ENABLE_RCD = PACKED RECORD IF ACT_LOG_TBL.METROLOGICAL_SIG_FLAG THEN METROLOGICAL_SEL : TABLE_SEL_RCD; EVENTLOG_SEL : TABLE_SEL_RCD; END; IF ACT_LOG_TBL.PROGRAM_SIG_FLAG THEN PROGRAM_SEL : TABLE_SEL_RCD; END; IF ACT_LOG_TBL.ALTERNATE_SIG_FLAG THEN ALTERNATE_SEL : TABLE_SEL_RCD; END; IF ACT_LOG_TBL.SECURED_REGISTERS_FLAG THEN SECURED_REGISTER_SEL : TABLE_SEL_RCD; END; END; TABLE 77 SIG_ENABLE_TBL = SIG_ENABLE_RCD; Table 77 Element Descriptions Identifier

      Value

      TABLE_SEL_RCD

      Definition Identification of the Standard and Manufacturer Tables that may trigger table change, securedregisters read events or may be signed.

      STD_TBLS_SEL

      This SET indicates which of the Standard tables are selected. Tables are represented by bits 0 through (8*DIM_STD_TBLS_USED-1). FALSE

      No action is required for this table.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      233

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que TRUE

      MFG_TBLS_SEL

      This SET indicates which of the Manufacturer tables are selected. Tables are represented by bits 0 through (8*DIM_STD_TBLS_USED-1). FALSE TRUE

      SIG_ENABLE_RCD METROLOGICAL_SEL

      234

      When the corresponding table is modified, the action requested shall be performed.

      No action is required for this table. When this table is modified, requested shall be performed.

      the

      action

      Identifies the Tables which contain metrological elements and shall be included in the computation of the METROLOGICAL_SIG. Indirect changes to these Tables (through Userdefined Tables, Extended User-defined Tables or other means) shall also cause the computation of the METROLOGICAL_SIG of all affected Tables.

      EVENTLOG_SEL

      Indicates which of the Tables shall trigger “Table Written To” event (Event 10, 59, 64 or 69) or alternatively “End Device Programmed” event (Event 11, 60, 65 or 70) in the Event Log data table (Table 76). Tables that are not selected within, but are identified in METROLOGICAL_SEL, shall trigger a reverification (End Device unsealed) event upon change. Indirect changes to these Tables (through User-defined Tables, Extended Userdefined Tables or other means) shall also generate an Event Log entry, as if the referenced tables were modified or accessed directly, however the table identifier (TABLE_IDA_BFLD) recorded in the EVENT_ARGUMENT shall be that of the Userdefined Table or the Extended User-defined Table that triggered that event, when the change or access was carried through a user defined or extended user defined table (see Annex B for more details). A compliant implementation shall set all of corresponding bits of EVENT_LOG_CTRL_TBL.STD_TBLS_MONIT ORED_FLAGS and EVENT_LOG_CTRL_TBL.MFG_TBLS_MONIT ORED_FLAGS to TRUE if there were also set to TRUE in the EVENTLOG_SEL. STD_TBLS_SEL and EVENTLOG_SEL.MFG_TBLS_SEL respectively for this trigger to be enabled.

      PROGRAM_SEL

      Identifies the Tables which contain program elements and will be included in the computation of the PROGRAM_SIG.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      ALTERNATE_SEL

      Identifies the Tables which contain metrological elements and will be included in the computation of the ALTERNATE_SIG.

      SECURED_REGISTER_SEL

      Identifies the Tables that contain secured registers, sensors or status elements that shall be included in the computation of the SECURED_REGISTER_SIG (see Annex B) and trigger Read Secured Table event (Event 7, 73 or 75) or Read Secured Register event (Event 74 or 76) subject to the value of ACT_LOG_TBL.SECURED_REGISTERS_FLA G and enabling by Start Secured Registers” procedure. A compliant implementation shall set all of corresponding bits of EVENTLOG_SEL to TRUE if there were also set to TRUE in SECURED_REGISTER_SEL.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      235

      ANSI C12.19-2008 aparezca aquí. 9.8.9

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Table 78 End Device Program State Table

      Table 78 Data Description PROGRAM_STATE_TBL (Table 78) contains a list of table identifiers and their corresponding signature. This table provides information that can be used to validate the integrity of the Event Logger itself (EVENT_CHECK_SIG). This table also lists the tables that were modified hence need to be downloaded when the Event Logger is downloadable (MODIFIED_FLAG). It also provides assist technology for improved field programming and program change detection in real-time (PROGRAM_SIG and ALTERNATE_SIG). There are a number of variations of signatures. Global signatures that represent the programming state of a selection of Tables: METROLOGICAL_SIG, PROGRAM_SIG and ALTERNATE_SIG; and audit trail signatures that cover the programming history of the End Device, EVENT_CHECK_SIG. When Table 78 is not implemented its conceptual implementation logic shall be used to derive the event check signature, EVENT_CHECK_SIG, used in the Event Log data table (Table 76). Background information and description of the process required to generate these signatures is described in Annex E of this document. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 78 Type Definitions TYPE TABLE_IDA_BFLD = BIT FIELD OF UINT16 TBL_PROC_NBR : UINT(0..10); STD_VS_MFG_FLAG : BOOL(11); MODIFIED_FLAG : BOOL(12); METROLOGICAL_FLAG : BOOL(13); LOGGABLE_FLAG : BOOL(14); ALTERNATE_FLAG : BOOL(15); END; TYPE TABLE_LIST_RCD = PACKED RECORD TABLE_ID : TABLE_IDA_BFLD; TABLE_SIG : BINARY(16); END; TYPE SIGNATURE_RCD = PACKED RECORD IF ACT_LOG_TBL.METROLOGICAL_SIG_FLAG THEN METROLOGICAL_SIG : BINARY(16); EVENT_CHECK_SIG : BINARY(16); END; IF ACT_LOG_TBL.PROGRAM_SIG_FLAG THEN PROGRAM_SIG : BINARY(16); END; IF ACT_LOG_TBL.ALTERNATE_SIG_FLAG THEN ALTERNATE_SIG : BINARY(16); END; TABLE_LIST : ARRAY[ACT_LOG_TBL.NBR_PROGRAM_TABLES] OF TABLE_LIST_RCD; END; TABLE 78 SIGNATURE_TBL = SIGNATURE_RCD; Table 78 Element Descriptions

      236

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Identifier

      Value

      Definition

      TABLE_IDA_BFLD TBL_PROC_NBR

      0..2039

      Redefines: STD.TABLE_IDA_BFLD. Table ID.

      STD_VS_MFG_FLAG

      FALSE TRUE

      Standard table. Manufacturer table.

      MODIFIED_FLAG

      FALSE

      This table was not changed since the last invocation of the Update Last Read Entries procedure (Procedure 5). Invocation of the Cold Start procedure (Procedure 0), or the Reset List Pointers procedure (Procedure 4) or Update Last Read Entries procedure (Procedure 5), shall set this flag to FALSE. This table was changed since the last invocation of the Update Last Read Entries procedure (Procedure 5).

      TRUE

      METROLOGICAL_FLAG

      FALSE TRUE

      This table does not contain metrological parameters and it shall not be included in the computation of the METROLOGICAL_SIG. This table does contain metrological parameters and it shall be included in the computation of the METROLOGICAL_SIG.

      LOGGABLE_FLAG

      FALSE TRUE

      This table is not event loggable. This table is event loggable. Changes to this table shall result in the creation of an Event Log entry in the Event Log data table (Table 76). Also if this table was marked as a “secured registers” table this bit shall be also set.

      ALTERNATE_FLAG

      FALSE

      This table shall not be included in the computation of the ALTERNATE_SIG. This table shall be included in the computation of the ALTERNATE_SIG.

      TRUE TABLE_CONFIGURATION_RCD TABLE_ID TABLE_SIG

      CONFIGURATION_RCD METROLOGICAL_SIG

      Identification number of the table. Active table signature. The signature is used to detect changes made to this Table. This signature is computed using the MD5 algorithm applied to the entire binary content of the Table. The resulting signature becomes available as input in the computation of the PROGRAM_SIG, EVENT_CHECK_SIG or the ALTERNATE_SIG. A signature that captures the active metrological state of a End Device. It is the digest of all tables with METROLOGICAL_FLAG set to TRUE.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      237

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que The algorithm digests each TABLE_SIG in order of increasing index, starting with Standard Tables followed by Manufacturer Tables.

      EVENT_CHECK_SIG

      A signature that is used to detect event-log discontinuity for the life of the End Device. This signature is created by the repeated application of the MD5 algorithm to applied to the new EVENT_ENTRY_RCD entries that are being added to the Event Log data table (Table 76). The processing logic for the creation of EVENT_CHECK_SIG in this table and in Table 76 is as follows: 1. Update TABLE_SIGs to reflect the changes to all metrological tables. 2. Update the signature element METROLOGICAL_SIG to reflect the changes to metrological tables. The METROLOGICAL_SIG value is the result of the use of the MD5 algorithm to digest the concatenated signatures produced in step 1 above. Only signatures of metrological tables shall be included in the computation. These shall be ordered for processing in increasing table numbers starting with Standard Tables followed by Manufacturer Tables. 3. Create a new event entry in Table 76, Event Log Data Table, and initialize its EVENT_ARGUMENT elements to binary 00H. 4. Fill in the EVENT_TIME, the optional EVENT_NUMBER, the required EVENT_SEQ_NBR, USER_ID and EVENT_CODE and all EVENT_ARGUMENT elements except for EVENT_CHECK_SIG (if present). 5. Using the MD5 algorithm digest the newly created event information that was placed in the EVENT_ENTRY_RCD. This includes all elements of the EVENT_ARGUMENT, but excludes (skip) the EVENT_CHECK_SIG element. For example, when EVENT_CODE=65, the EVENT_ARGUMENT will not be digested; when EVENT_CODE=64, only the TABLE_IDA_BFLD field of the EVENT_ARGUMENT will be digested; when EVENT_CODE=70, then all octets starting at offset 16 to offset ACT_LOG_TBL.EVENT_DATA_LENGTH-1 of the EVENT_ARGUMENT will be digested. 6. Append to the EVENT_ENTRY_RCD’s signature (computed in step 5 above) the

      238

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      previous event-log entry EVENT_CHECK_SIG (or use a signature of binary 0’s if this is the first event entry being created) then append the metrological signature (computed in step 2) and finally digest the three concatenated signatures, using the MD5 algorithm to, produce the Event Logger entry’s signature. 7. Place the result into (to replace) the EVENT_CHECK_SIG in this table. Also copy it into the EVENT_CHECK_SIG of the EVENT_ARGUMENT of Table 76 (if applicable). The Event Logger’s (Table 76) most recent signature shall be identical to the most recent EVENT_CHECK_SIG element of Table 78 at all times. PROGRAM_SIG

      A signature that captures the active programmed state of an End Device. It is the digest of all Tables listed in TABLE_LIST using the MD5 algorithm. The algorithm digests each TABLE_SIG in order of increasing index. This signature can provide assist values for an external device in the caching of meter configuration state.

      ALTERNATE_SIG

      A signature that captures the active state of an End Device, subject to (alternate unspecified by this standard) application requirements. It is the digest of all tables with ALTERNATE_FLAG set to TRUE. The algorithm digests each TABLE_SIG in order of increasing index. A typical use of this signature is the collection of end-device ID independent programming table, which can be used to compare and validate the program state of a population of deployed End Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      239

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.8.10 Table 79 Event Counters Table Table 79 Data Description EVENT_COUNTER_TBL (Table 79) contains Event Counters used to detect modification to calibration, programming or metrological parameters. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 79 Type Definitions TYPE EVENT_COUNTER_RCD = PACKED RECORD CALIBRATION_COUNTER : UINT16; PROGRAM_COUNTER : UINT16; END; TABLE 79 EVENT_COUNTER_TBL = EVENT_COUNTER_RCD; Table 79 Element Descriptions Identifier

      Value

      Definition

      EVENT_COUNTER_RCD CALIBRATION_COUNTER

      0..65535

      Incremented by one each time one or multiple calibration parameters are modified. Incremented by one each time one or multiple programming or metrological parameters are modified. This counter may be used by upstream devices to trigger an update to the configuration information stored (caching of static information) for this device.

      PROGRAM_COUNTER

      240

      0..65535

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.9 Decade 8: User-defined Tables Decade 8 Name USER_DEFINED_TABLES_DEC Decade 8 Data Description These tables provide the capability for the End Device user to build custom tables using selections from the tables available in an End Device. The selections are bi-directional in the sense that any change to a value of a selected table element will manifest itself in the user defined table that contains that selection; and any change to a selected identifier from the user defined table shall result in a corresponding change in the selected table identifier. All event-log, change events and security constraints shall operate to maintain coherence between the user defined tables and the table identifiers they point to. Support of writing to a user defined tables are optional at the manufacturer discretion on a per table basis. 9.9.1

      Table 80 User-defined Tables Dimension Limits Table

      Table 80 Data Description DIM_UDT_FUNC_LIM_TBL (Table 80) contains maximum values and control parameters for the user defined tables. These values set up to six independent sets of user defined tables. The length of user defined tables is a function of the tables defined in the GEN_CONFIG_TBL (Table 00). Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 80 Type Definitions TYPE UDT_CTRL_BFLD = BIT FIELD OF UINT8 NBR_UDTS : UINT(0..2); INSTANCE_FLAG : BOOL(3); DATA_ACCESS_METHOD : UINT(4..5); FILLER : FILL(6..7); END; TYPE UDT_FUNC_LIM_RCD = PACKED RECORD NBR_XFR_LIST_ITEMS : UINT16; UDT_FUNC_CTRL : UDT_CTRL_BFLD; MAX_INSTANCE : UINT8; IF GEN_CONFIG_TBL.STD_TBLS_USED[UDT_0_TBL] UDT_0_SIZE : UINT32; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[UDT_1_TBL] UDT_1_SIZE : UINT32; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[UDT_2_TBL] UDT_2_SIZE : UINT32; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[UDT_3_TBL] UDT_3_SIZE : UINT32; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[UDT_4_TBL] UDT_4_SIZE : UINT32; END; IF GEN_CONFIG_TBL.STD_TBLS_USED[UDT_5_TBL] UDT_5_SIZE : UINT32;

      THEN THEN THEN THEN THEN THEN

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      241

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      END; END; TABLE 80 DIM_UDT_FUNC_LIM_TBL = UDT_FUNC_LIM_RCD; Table 80 Element Descriptions Identifier

      Value

      Definition

      UDT_CTRL_BFLD NBR_UDTS

      0..6

      The maximum number of user defined tables, which can be defined concurrently by the list of data items. Reserved.

      7 INSTANCE_FLAG

      FALSE TRUE

      DATA_ACCESS_METHOD 0 1 2 3 DIM_UDT_FUNC_LIM_TBL NBR_XFR_LIST_ITEMS

      0..65535

      UDT_FUNC_CTRL

      Multiple table instances are not supported. Multiple instances are not supported. Ignore MAX_INSTANCE. Multiple table instances are supported. Element used to designate possible methods of selecting table entries for placement in a user defined table. Only complete tables can be mapped into user tables. Partial tables cannot be mapped. Offset-count access method is supported. Index-count access method is supported. Access methods 2 and 3 are supported. The maximum number of UINT16 entries used to make the list. These are the limiting capabilities for user defined tables selections. This defines the maximum number of user defined tables supported in this decade and the data access method, as defined by UDT_CTRL_BFLD.

      MAX_INSTANCE 0 1..255

      UDT_0_SIZE

      Reserved Maximum number of table sets supported by this End Device. If INSTANCE_FLAG is FALSE ignore.

      0..4294967295 Maximum number of octets used to size UDT_0_TBL (Table 84).

      UDT_1_SIZE

      0..4294967295 Maximum number of octets used to size UDT_1_TBL (Table 85).

      UDT_2_SIZE

      0..4294967295 Maximum number of octets used to size UDT_2_TBL (Table 86).

      242

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 UDT_3_SIZE

      ANSI

      0..4294967295 Maximum number of octets used to size UDT_3_TBL (Table 87).

      UDT_4_SIZE

      0..4294967295 Maximum number of octets used to size UDT_4_TBL (Table 88).

      UDT_5_SIZE

      0..4294967295 Maximum number of octets used to size UDT_5_TBL (Table 89).

      9.9.2

      Table 81 Actual User-defined Tables Limiting Table

      Table 81 Data Description ACT_UDT_FUNC_LIM_TBL (Table 81) contains actual limiting values for the user defined tables. These parameters define up to six independent sets of user defined tables definitions. The length of each user defined table is a function of the tables defined in the GEN_CONFIG_TBL (Table 00). Global Default Table Property Overrides: Role=“ACUTAL” Table 81 Type Definitions TABLE 81 ACT_UDT_FUNC_LIM_TBL = UDT_FUNC_LIM_RCD; Table 81 Element Descriptions Identifier

      Value

      UDT_CTRL_BFLD NBR_UDTS

      0..6 7

      INSTANCE_FLAG

      FALSE TRUE

      DATA_ACCESS_METHOD 0 1 2 3 UDT_FUNC_LIM_RCD NBR_XFR_LIST_ITEMS

      Definition Redefines: DIM_UDT_FUNC_LIM_TBL. UDT_CTRL_BFLD. The actual number of user defined tables, which are defined concurrently by the list of data items. Reserved. Multiple table sets are not used. Multiple instances are not supported. Ignore MAX_INSTANCE. Multiple table sets are in use. Designate the actual method of selecting table entries for placement in a user defined table. Complete tables are mapped into user tables. Partial table can not be mapped. Offset-count access method is used. Index-count access method is used. Reserved. Redefines: DIM_UDT_FUNC_LIM_TBL. UDT_FUNC_LIM_RCD.

      0.. 65535

      The actual number of UINT16 entries used in the list.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      243

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      UDT_FUNC_CTRL

      MAX_INSTANCE

      0 1..255

      UDT_0_SIZE

      0..4294967295

      UDT_1_SIZE

      UDT_2_SIZE

      UDT_3_SIZE

      UDT_4_SIZE

      UDT_5_SIZE

      9.9.3

      The actual method used for user defined tables selections. This identifies the actual number of user defined tables and the data access method used in this decade as defined by UDT_FLAGS_BFLD. Reserved. Actual number of table sets used by this End Device. If INSTANCE_FLAG is FALSE ignore.

      Actual number of octets UDT_0_TBL (Table 84)

      used

      to

      size

      Actual number of octets UDT_1_TBL (Table 85)

      used

      to

      size

      Actual number of octets UDT_2_TBL (Table 86)

      used

      to

      size

      Actual number of octets UDT_3_TBL (Table 87)

      used

      to

      size

      Actual number of octets UDT_4_TBL (Table 88)

      used

      to

      size

      Actual number of octets UDT_5_TBL (Table 89)

      used

      to

      size

      0..4294967295

      0..4294967295

      0..4294967295

      0..4294967295

      0..4294967295

      Table 82 User-defined Tables List Table

      Table 82 Data Description UDT_LIST_TBL (Table 82) defines data elements used in the generation of user defined tables for this decade. Global Default Table Property Overrides: Role=“CONTROL” Table 82 Type Definitions TYPE SOURCE_ITEM_RCD = PACKED RECORD TABLE_ID : TABLE_IDB_BFLD; IF ACT_UDT_FUNC_LIM_TBL.INSTANCE_FLAG THEN TABLE_INSTANCE : UINT16; END; SWITCH ACT_UDT_FUNC_LIM_TBL.DATA_ACCESS_METHOD OF CASE 0: NO_DATA : NIL; CASE 1: OFFSET : UINT16; CASE 2: INDEX : ARRAY[.TABLE_ID.SELECTOR] OF UINT16; END; COUNT : UINT16;

      244

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      END; TYPE UDT_LIST_SEL_RCD = PACKED RECORD UDT_LIST : ARRAY[ACT_UDT_FUNC_LIM_TBL.NBR_XFR_LIST_ITEMS] OF UINT16; END; TABLE 82 UDT_LIST_TBL = UDT_LIST_SEL_RCD; Table 82 Element Descriptions Identifier

      Value

      TABLE_IDB_BFLD TBL_PROC_NBR

      0..2039

      STD_VS_MFG_FLAG

      SELECTOR

      FALSE TRUE

      Standard table. Manufacturer table.

      0..15

      When ACT_UDT_FUNC_LIM_TBL. DATA_ACCESS_METHOD is zero (0) the table access method is used. SELECTOR shall be ignored. When the ACT_UDT_FUNC_LIM_TBL. DATA_ACCESS_METHOD is one (1) this field is the most significant 4 bits (bits 16..19) of the offset to the data element required to locate the data item in a table. When ACT_UDT_FUNC_LIM_TBL. DATA_ACCESS_METHOD is two (2) this is the number of indices is used to select an entry in a table.

      0..254 255..65535

      NO_DATA OFFSET

      Redefines: STD.TABLE_IDB_BFLD. Information source table number. Note: the corresponding implementation bit shall be set in GEN_CONFIG_TBL (Table 00). Identifies the data Element as originating from either the standard table or a manufacturer table.

      SOURCE_ITEM_RCD TABLE_ID TABLE_INSTANCE

      Definition

      Effective structure of a single entry in the UDT_LIST array. See TABLE_IDB_BFLD. Table set instance number. Reserved. Full table references are used.

      0..65535

      This field holds the least significant 16 bits of the offset to the data element required to locate the data item in a table.

      INDEX

      This is an array of indices, which combine to define the index to an item entry in a table.

      COUNT

      0..65535 Length of data item(s) in octets. When the value is zero it is the end of the list.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      245

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      UDT_LIST_SEL_RCD UDT_LIST

      9.9.4

      An array holding ACT_UDT_FUNC_LIM_TBL. NBR_XFR_LIST_ITEM UINT16 quantities. This space is mapped using SOURCE_ITEM_RCD into variable length records which select table or partial tables for access via the user defined tables.

      Table 83 User-defined Tables Selections Table

      Table 83 Data Description UDT_SEL_TBL (Table 83) specifies what data elements are used in user tables defined for this decade. Each array entry in this table corresponds to a specific table in this decade following this table. For example, the third entry in this array corresponds to Table 83 + 3 = Table 86. Global Default Table Property Overrides: Role=“CONTROL” Table 83 Type Definitions TYPE UDT_SET_RCD = PACKED RECORD FIRST_ITEM_NBR : UINT16; LAST_ITEM_NBR : UINT16; END; TYPE UDT_DATA_SETS_RCD = PACKED RECORD UDT_DATA_SETS : ARRAY[ACT_UDT_FUNC_LIM_TBL.NBR_UDTS] OF UDT_SET_RCD; END; TABLE 83 UDT_SEL_TBL = UDT_DATA_SETS_RCD; Table 83 Element Descriptions Identifier

      Value

      Definition

      UDT_SETS_RCD FIRST_ITEM_NBR

      0..65535

      This is item number in UDT_LIST_TBL (Table 82) specifying the first item in the user defined tables selected by this entry.

      0..65535

      This is item number in UDT_LIST_TBL (Table 82) specifying the last item in the user defined tables selected by this entry.

      LAST_ITEM_NBR UDT_DATA_SETS_RCD UDT_DATA_SETS

      9.9.5

      Array containing up to ACT_UDT_FUNC_LIM_TBL.NBR_UDTS (Table 81) entries. Each entry defines the source selections for a user destination user defined table.

      Table 84 User-defined Table Zero

      Table 84 Data Description This table is defined by the items in table UDT_LIST_TBL (Table 82) selected by the first entry in table UDT_SEL_TBL (Table 83).

      246

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Global Default Table Property Overrides: Class=“STD.UDT” Table 84 Type Definitions TYPE UDT_0_RCD = PACKED RECORD UDT_0_DATA : ARRAY[ACT_UDT_FUNC_LIM_TBL.UDT_0_SIZE] OF UINT8; END; TABLE 84 UDT_0_TBL = UDT_0_RCD; Table 84 Element Descriptions Identifier

      Value

      UDT_0_RCD

      9.9.6

      Definition Array containing ACT_UDT_FUNCT_LIM_TBL. UDT_0_SIZE octets holding data defined by the first entry in the list defined in UDT_SEL_TBL (Table 83).

      Table 85 User-defined Table One

      Table 85 Data Description This table is defined by the items in table UDT_LIST_TBL (Table 82) selected by the first entry in table UDT_SEL_TBL (Table 83). Global Default Table Property Overrides: Class=“STD.UDT” Table 85 Type Definitions TYPE UDT_1_RCD = PACKED RECORD UDT_1_DATA : ARRAY[ACT_UDT_FUNC_LIM_TBL.UDT_1_SIZE] OF UINT8; END; TABLE 85 UDT_1_TBL = UDT_1_RCD; Table 85 Element Descriptions Identifier

      Value

      UDT_1_RCD

      9.9.7

      Definition Array containing ACT_UDT_FUNCT_LIM_TBL. UDT_1_SIZE octets holding data defined by the second entry in the list defined in UDT_SEL_TBL (Table 83).

      Table 86 User-defined Table Two

      Table 86 Data Description This table is defined by the items in table UDT_LIST_TBL (Table 82) selected by the first entry in table UDT_SEL_TBL (Table 83). Global Default Table Property Overrides: Class=“STD.UDT” Table 86 Type Definitions TYPE UDT_2_RCD = PACKED RECORD

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      247

      ANSI C12.19-2008 aparezca aquí. UDT_2_DATA

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que : ARRAY[ACT_UDT_FUNC_LIM_TBL.UDT_2_SIZE] OF UINT8;

      END; TABLE 86 UDT_2_TBL = UDT_2_RCD; Table 86 Element Descriptions Identifier

      Value

      UDT_2_RCD

      248

      Definition Array containing ACT_UDT_FUNCT_LIM_TBL. UDT_2_SIZE octets holding data defined by the third entry in the list defined in UDT_SEL_TBL (Table 83).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 9.9.8

      ANSI

      Table 87 User-defined Table Three

      Table 87 Data Description This table is defined by the items in table UDT_LIST_TBL (Table 82) selected by the first entry in table UDT_SEL_TBL (Table 83). Global Default Table Property Overrides: Class=“STD.UDT” Table 87 Type Definitions TYPE UDT_3_RCD = PACKED RECORD UDT_3_DATA : ARRAY[ACT_UDT_FUNC_LIM_TBL.UDT_3_SIZE] OF UINT8; END; TABLE 87 UDT_3_TBL = UDT_3_RCD; Table 87 Element Descriptions Identifier

      Value

      UDT_3_RCD

      9.9.9

      Definition Array containing ACT_UDT_FUNCT_LIM_TBL. UDT_3_SIZE octets holding data defined by the fourth entry in the list defined in UDT_SEL_TBL (Table 83).

      Table 88 User-defined Table Four

      Table 88 Data Description This table is defined by the items in table UDT_LIST_TBL (Table 82) selected by the first entry in table UDT_SEL_TBL (Table 83). Global Default Table Property Overrides: Class=“STD.UDT” Table 88 Type Definitions TYPE UDT_4_RCD = PACKED RECORD UDT_4_DATA : ARRAY[ACT_UDT_FUNC_LIM_TBL.UDT_4_SIZE] OF UINT8; END; TABLE 88 UDT_4_TBL = UDT_4_RCD; Table 88 Element Descriptions Identifier

      Value

      UDT_4_RCD

      Definition Array containing ACT_UDT_FUNCT_LIM_TBL. UDT_4_SIZE octets holding data defined by the fifth entry in the list defined in UDT_SEL_TBL (Table 83).

      9.9.10 Table 89 User-defined Table Five Table 89 Data Description This table is defined by the items in table UDT_LIST_TBL (Table 82) selected by the first entry in table

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      249

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      UDT_SEL_TBL (Table 83). Global Default Table Property Overrides: Class=“STD.UDT” Table 89 Type Definitions TYPE UDT_5_RCD = PACKED RECORD UDT_5_DATA : ARRAY[ACT_UDT_FUNC_LIM_TBL.UDT_5_SIZE] OF UINT8; END; TABLE 89 UDT_5_TBL = UDT_5_RCD; Table 89 Element Descriptions Identifier

      Value

      UDT_5_RCD

      250

      Definition Array containing ACT_UDT_FUNCT_LIM_TBL. UDT_5_SIZE octets holding data defined by the sixth entry in the list defined in UDT_SEL_TBL (Table 83).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.10 Decade 9: Telephone Control Tables Decade 9 Name TELEPHONE_CONTROL_DEC This decade contains tables associated with the use of a telephone modem. 9.10.1 Table 90 Dimension Telephone Table Table 90 Data Description DIM_TELEPHONE_TBL (Table 90) specifies the maximum dimensional values for this decade. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” TYPE TELEPHONE_FLAGS_BFLD = BIT FIELD OF UINT8 ANSWER_FLAG : BOOL(0); S_ANCHOR_DATE_FLAG : BOOL(1); OFFHOOK_DETECT_FLAG : BOOL(2); BIT_RATE : UINT(3..4); ID_IN_PURPOSE : BOOL(5); NO_LOCKOUT_PARM : BOOL(6); EXTENDED_STATUS : BOOL(7); END; TYPE TELEPHONE_RCD = PACKED RECORD TELEPHONE_FLAGS : TELEPHONE_FLAGS_BFLD; NBR_ORIGINATE_WINDOWS : UINT8; NBR_SETUP_STRINGS : UINT8; SETUP_STRING_LENGTH : UINT8; PREFIX_LENGTH : UINT8; NBR_ORIGINATE_NUMBERS : UINT8; PHONE_NUMBER_LENGTH : UINT8; NBR_RECURRING_DATES : UINT8; NBR_NON_RECURRRING_DATES : UINT8; NBR_EVENTS : UINT8; NBR_WEEKLY_SCHEDULES : UINT8; NBR_ANSWER_WINDOWS : UINT8; NBR_CALLER_IDS : UINT8; CALLER_ID_LENGTH : UINT8; END; TABLE 90 DIM_TELEPHONE_TBL = TELEPHONE_RCD; Table 90 Element Descriptions Identifier

      Value

      Definition

      TELEPHONE_FLAGS_BFLD ANSWER_FLAG

      FALSE

      End Device is not capable of answering a phone call. End Device is capable of answering a phone call.

      TRUE

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      251

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      S_ANCHOR_DATE_FLAG

      FALSE TRUE

      OFFHOOK_DETECT_FLAG

      FALSE TRUE

      BIT_RATE

      0 1 2 3

      ID_IN_PURPOSE

      FALSE TRUE

      NO_LOCKOUT_PARM

      FALSE TRUE

      EXTENDED_STATUS

      FALSE TRUE

      TELEPHONE_RCD TELEPHONE_FLAGS

      252

      End Device is not capable of accepting a separate telephone schedule anchor date for the Period/Delta RDATE type (recurring date). End Device is capable of accepting a separate telephone schedule anchor date for the Period/Delta RDATE type (recurring date). End Device is not capable of detecting off hook conditions. End Device is capable of detecting off hook conditions. End Device is not capable of modifying its bit rate. End Device is capable of modifying globally its originating and answering bit rate. End Device is capable of modifying separately its originating and answering bit rate. Reserved. End Device is not capable of including an ID field in CALL_PURPOSE_TBL. End Device is capable of including an ID field in CALL_PURPOSE_TBL (Table 96). End Device is capable of supporting lockout parameters in table ANSWER_PARAMETERS_TBL (Table 95). End Device is not capable of supporting lockout parameters in table ANSWER_PARAMETERS_TBL (Table 95). End Device is not capable of including Last call purpose in the CALL_STATUS_TBL (Table 97) End Device is capable of including Last call purpose in the CALL_STATUS_TBL (Table 97). See definition above.

      NBR_ORIGINATE_WINDOWS 0..255

      Maximum number of originate time window descriptions supported by the End Device .

      NBR_SETUP_STRINGS

      0..255

      Maximum number of setup strings supported by the End Device .

      SETUP_STRING_LENGTH

      0..255

      Maximum length (in bytes) of setup strings supported by the End Device .

      PREFIX_LENGTH

      0..255

      Maximum length (in bytes) of phone number prefix supported by the End Device .

      NBR_ORIGINATE_NUMBERS 0..255

      Maximum number of originate phone numbers supported by the End Device .

      PHONE_NUMBER_LENGTH

      Maximum length (in bytes) of phone numbers supported by the End Device .

      0..255

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 NBR_RECURRING_DATES

      0..255

      ANSI

      Maximum number of recurring dates supported to create the origination schedule.

      NBR_NON_RECURRRING_DATES

      0..255 Maximum number of non-recurring dates supported to create the origination schedule.

      NBR_EVENTS

      0..255

      Maximum number of events supported to create the origination schedule.

      NBR_WEEKLY_SCHEDULES

      0..255

      Maximum number of weekly schedules supported to create the origination schedule.

      NBR_ANSWER_WINDOWS

      0..255

      Maximum number of answer time window descriptions supported by the End Device .

      NBR_CALLER_IDS

      0..255

      Maximum number of Caller ID strings supported by the End Device .

      CALLER_ID_LENGTH

      0..255

      Maximum length (in bytes) of Caller ID strings supported by the End Device .

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      253

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.10.2 Table 91 Actual Telephone Table Table 91 Data Description ACT_TELEPHONE_TBL (Table 91) contains actual dimension values for this decade. Global Default Table Property Overrides: Role=“ACUTAL” Table 91 Type Definitions TABLE 91 ACT_TELEPHONE_TBL = TELEPHONE_RCD; Table 91 Element Descriptions Identifier

      Value

      Definition

      ANSWER_FLAG

      FALSE TRUE

      Redefines: DIM_TELEPHONE_TBL. TELEPHONE_FLAGS_BFLD. End Device shall not answer a phone call. End Device may answer a phone call.

      S_ANCHOR_DATE_FLAG

      FALSE

      TELEPHONE_FLAGS_BFLD

      TRUE

      OFFHOOK_DETECT_FLAG

      FALSE TRUE

      BIT_RATE

      0 1 2

      3 ID_IN_PURPOSE

      FALSE TRUE

      NO_LOCKOUT_PARM

      FALSE TRUE

      254

      End Device does not accept a separate telephone schedule anchor date for the Period/Delta RDATE type (recurring date). End Device accepts a separate telephone schedule anchor date for the Period/Delta RDATE type (recurring date). End Device does not currently detect off hook conditions. End Device currently detects off hook conditions. Bit rate can not be controlled. Answering and originating bit rate can be controlled globally in GLOBAL_PARAMETERS_TBL (Table 92). Answering and originating bit rate can be controlled separately in ORIGINATE_PARAMETERS_TBL (Table 93) and ANSWER_PARAMETERS_TBL (Table 95). Reserved. End Device does not currently include an ID field in CALL_PURPOSE_TBL (Table 96). End Device currently includes an ID field in CALL_PURPOSE_TBL (Table 96). End Device currently includes lockout parameters in table ANSWER_PARAMETERS_TBL (Table 95). End Device does not currently include lockout parameters in table ANSWER_PARAMETERS_TBL (Table 95).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 EXTENDED_STATUS

      FALSE TRUE

      TELEPHONE_RCD

      ANSI

      End Device is not including last call purpose information in the CALL_STATUS_TBL (Table 97) End Device is including last call purpose information in the CALL_STATUS_TBL (Table 97) Redefines: DIM_TELEPHONE_TBL.TELEPHONE_RCD. See definition above.

      TELEPHONE_FLAGS NBR_ORIGINATE_WINDOWS 0..255

      Actual number of originate time descriptions used by the End Device .

      window

      NBR_SETUP_STRINGS

      0..255

      Actual number of setup strings used by the End Device .

      SETUP_STRING_LENGTH

      0..255

      Actual length (in bytes) of setup strings used by the End Device .

      PREFIX_LENGTH

      0..255

      Actual length (in bytes) of phone number prefix used by the End Device .

      NBR_ORIGINATE_NUMBERS 0..7

      Actual number of originate phone numbers used by the End Device .

      PHONE_NUMBER_LENGTH

      0..255

      Actual length (in bytes) of phone numbers used by the End Device .

      NBR_RECURRING_DATES

      0..255

      Actual number of recurring dates used to create the origination schedule.

      NBR_NON_RECURRRING_DATES 0..255

      Actual number of non-recurring dates used to create the origination schedule.

      NBR_EVENTS

      0..255

      Actual number of events used to create the origination schedule.

      NBR_WEEKLY_SCHEDULES 0..255

      Actual number of weekly schedules used to create the origination schedule.

      NBR_ANSWER_WINDOWS

      0..255

      Actual number of answer time descriptions used by the End Device .

      NBR_CALLER_IDS

      0..255

      Actual number of Caller ID strings used by the End Device .

      CALLER_ID_LENGTH

      0..255

      Actual length (in bytes) of Caller ID strings used by the End Device .

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      window

      255

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.10.3 Table 92 Global Parameters Table Table 92 Data Description GLOBAL_PARAMETERS_TBL (Table 92) defines general parameters used both for answering and originating a call. Global Default Table Property Overrides: Role=“CONTROL” Table 92 Type Definitions TYPE SETUP_STRING_RCD = PACKED RECORD SETUP_STRING : STRING(ACT_TELEPHONE_TBL.SETUP_STRING_LENGTH); END; TYPE GLOBAL_PARAMETERS_RCD = PACKED RECORD PSEM_IDENTITY : UINT8; IF ACT_TELEPHONE_TBL.BIT_RATE = 1 THEN BIT_RATE : UINT32; END; MODEM_SETUP_STRINGS : ARRAY[ACT_TELEPHONE_TBL.NBR_SETUP_STRINGS] OF SETUP_STRING_RCD; END; TABLE 92 GLOBAL_PARAMETERS_TBL = GLOBAL_PARAMETERS_RCD; Table 92 Element Descriptions Identifier

      Value

      SETUP_STRING_RCD SETUP_STRING GLOBAL_PARAMETERS_RCD PSEM_IDENTITY

      Definition Modem setup string used to configure the modem.

      0..255

      Value used by the field in Layer 2 of C12.21. {End Device (meter, etc.) identity. It identifies the End Device in both the request and response packets. In requests, this byte may be set to 00 H as a universal identity. All devices shall respond to this identifier value as a minimum. This value (00H) shall not be used in a multi-drop environment. The individual End Device identity must be in the range 01H to FEH. In requests, this byte may be set to FF H to target the calling party during an inbound call. Only the End Device that initiated the inbound call shall process packets with identity byte equal to FF H.

      256

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      The value FFH may be used in both single drop and multi-drop environments. The End Device shall use its own identity byte in the response for all requests. Including 00 H and FFH .} BIT_RATE

      Bit rate at which the End Device will originate or answer a call. Zero denotes an externally defined bit rate.

      MODEM_SETUP_STRINGS

      An array of Modem Setup Strings

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      257

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.10.4 Table 93 Originate Parameters Table Table 93 Data Description ORIGINATE_PARAMETERS_TBL (Table 93) defines originate configuration parameters. Originate refers to the End Device placing calls to a utility host. Global Default Table Property Overrides: Role=“CONTROL” Table 93 Type Definitions TYPE DAYS_BFLD = BIT SUNDAY MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY FILLER END;

      FIELD OF UINT8 : BOOL(0); : BOOL(1); : BOOL(2); : BOOL(3); : BOOL(4); : BOOL(5); : BOOL(6); : FILL(7..7);

      TYPE WINDOW_RCD = PACKED RECORD BEGIN_WINDOW_TIME : STIME; WINDOW_DURATION : STIME; WINDOW_DAYS : DAYS_BFLD; END; TYPE PHONE_NUMBER_RCD = PACKED RECORD PHONE_NUMBER : ARRAY[STRING(ACT_TELEPHONE_TBL.PHONE_NUMBER_LENGTH] OF CHAR); END; TYPE PHONE_NUMBERS_RCD = PACKED RECORD PREFIX : STRING(ACT_TELEPHONE_TBL.PREFIX_LENGTH); PHONE_NUMBERS : ARRAY[ACT_TELEPHONE_TBL.NBR_ORIGINATE_NUMBERS] OF PHONE_NUMBER_RCD; END; TYPE ORIGINATE_PARAMETERS_RCD = PACKED RECORD IF ACT_TELEPHONE_TBL.BIT_RATE = 2 THEN ORIGINATE_BIT_RATE : UINT32; END; DIAL_DELAY : UINT8; ORIGINATE_PHONE_NUMBERS : PHONE_NUMBERS_RCD; WINDOWS : ARRAY[ACT_TELEPHONE_TBL.NBR_ORIGINATE_WINDOWS] OF WINDOW_RCD; IF ACT_TELEPHONE_TBL.TELEPHONE_FLAGS.EXTENDED_STATUS ANSWER_TIMEOUT : UINT8; RETRY_INTERVAL : UNIT16; MAX_RETRIES : UINT8; END; END;

      258

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      TABLE 93 ORIGINATE_PARAMETERS_TBL = ORIGINATE_PARAMETERS_RCD; Table 93 Element Descriptions Identifier

      Value

      Definition

      FALSE TRUE

      This window does not start each Sunday. This window does start each Sunday.

      MONDAY

      FALSE TRUE

      This window does not start each Monday. This window does start each Monday.

      TUESDAY

      FALSE TRUE

      This window does not start each Tuesday. This window does start each Tuesday.

      WEDNESDAY

      FALSE TRUE

      This window does not start each Wednesday. This window does start each Wednesday.

      THURSDAY

      FALSE TRUE

      This window does not start each Thursday. This window does start each Thursday.

      FRIDAY

      FALSE TRUE

      This window does not start each Friday. This window does start each Friday.

      SATURDAY

      FALSE TRUE

      This window does not start each Saturday. This window does start each Saturday.

      DAYS_BFLD SUNDAY

      WINDOW_RCD BEGIN_WINDOW_TIME

      The time of day the window starts.

      WINDOW_DURATION

      The duration of the window.

      WINDOW_DAYS

      See DAYS_BFLD above. Defines the days that a window can start.

      PHONE_NUMBER_RCD PHONE_NUMBER

      Phone number to use to place a call.

      PHONE_NUMBERS_RCD PREFIX

      This number will be inserted at the beginning of every phone number before beginning dialing.

      PHONE_NUMBERS

      An array of originate phone numbers.

      ORIGINATE_PARAMETERS_RCD ORIGINATE_BIT_RATE DIAL_DELAY

      Bit rate at which the End Device will originate a call. Zero denotes an externally defined bit rate. 0..255

      Delay in seconds the End Device before dialing after going off-hook.

      ORIGINATE_PHONE_NUMBERS

      See PHONE_NUMBER_RCD above.

      WINDOWS

      An array of call originate windows.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      will wait

      259

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      ANSWER_TIMEOUT

      0..255

      Delay in seconds the End Device will wait after dialing before declaring no answer.

      RETRY_INTERVAL

      0..65535

      Delay in seconds the End Device will wait after a failed call before trying again. May include a random offset.

      MAX_RETRIES

      0..255

      Absolute maximum number of attempts. Same value used for all ORIGINATE_PHONE_NUMBERS. This value starts at zero for each unique call-out event.

      260

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.10.5 Table 94 Originate Schedule Table Table 94 Data Description ORIGINATE_SCHEDULE_TBL (Table 94) is used to configure when and why an End Device originates a call. Global Default Table Property Overrides: Role=“CONTROL” Table 94 Type Definitions TYPE CTRL_BFLD = BIT FIELD OF UINT8 PRIMARY_PHONE_NUMBER : UINT(0..2); FILLER : FILL(3..3); SECONDARY_PHONE_NUMBER : UINT(4..6); USE_WINDOWS : BOOL(7); END; TYPE RECURRING_DATES_RCD = PACKED RECORD ORIGINATE_DATE : RDATE; START_TIME : TIME; ORIGINATE_CTRL : CTRL_BFLD; END; TYPE NON_RECURRRING_DATES_RCD = PACKED RECORD ORIGINATE_DATE : DATE; START_TIME : TIME; ORIGINATE_CTRL : CTRL_BFLD; END; TYPE EVENTS_RCD = PACKED RECORD ED_STD_STATUS1 : ED_STD_STATUS1_BFLD; ED_STD_STATUS2 : ED_STD_STATUS2_BFLD; ED_MFG_STATUS : ED_MFG_STATUS_RCD; ORIGINATE_CTRL : CTRL_BFLD; END; TYPE WEEKLY_SCHEDULE_RCD = PACKED RECORD DAYS : DAYS_BFLD; START_TIME : TIME; ORIGINATE_CTRL : CTRL_BFLD; END; TYPE ORIGINATE_SCHEDULE_RCD = PACKED RECORD IF ACT_TELEPHONE_TBL.S_ANCHOR_DATE_FLAG THEN S_ANCHOR_DATE : DATE; END; RECURRING_DATES : ARRAY[ACT_TELEPHONE_TBL.NBR_RECURRING_DATES] OF RECURRING_DATES_RCD; NON_RECURING_DATES : ARRAY[ACT_TELEPHONE_TBL.NBR_NON_RECURRRING_DATES] OF NON_RECURRRING_DATES_RCD; EVENTS : ARRAY[ACT_TELEPHONE_TBL.NBR_EVENTS] OF EVENTS_RCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      261

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      WEEKLY_SCHEDULES : ARRAY[ACT_TELEPHONE_TBL.NBR_WEEKLY_SCHEDULES] OF WEEKLY_SCHEDULE_RCD; END; TABLE 94 ORIGINATE_SCHEDULE_TBL = ORIGINATE_SCHEDULE_RCD; Table 94 Element Descriptions Identifier

      Value

      CTRL_BFLD PRIMARY_PHONE_NUMBER 0..7

      Selection of the primary phone number to use to originate the call. This value is an index into the PHONE_NUMBERS array in the ORIGINATE_PARAMETERS_TBL (Table 93). Seven (7) indicates that no call should take place.

      SECONDARY_PHONE_NUMBER

      0..7 Selection of the secondary phone number to use to originate a call. This value is an index into the PHONE_NUMBERS array in the ORIGINATE_PARAMETERS_TBL (Table 93). Seven (7) indicates that no secondary number is provided.

      USE_WINDOWS

      FALSE

      An originate time window will not be used to restrict the period available to place this call. The call will be placed immediately.

      TRUE

      An Originate time window will be used to restrict the period available to place this call. Calls originating outside a window will be delayed until the next open window.

      RECURRING_DATES_RCD ORIGINATE_DATE

      Recurring date at which procedures should begin.

      call

      originate

      START_TIME

      Time at which call originate procedures should begin.

      ORIGINATE_CTRL

      See CTRL_BFLD above.

      NON_RECURRRING_DATES_RCD ORIGINATE_DATE

      Specific date at which a call originate procedure should begin.

      START_TIME

      Time at which a call originate procedure should begin.

      ORIGINATE_CTRL

      See CTRL_BFLD above.

      EVENTS_RCD ED_STD_STATUS1 FALSE

      262

      Definition

      Standard status events which initiate a call originate procedure. No call should take place for this status bit.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 TRUE ED_STD_STATUS2 FALSE TRUE ED_MFG_STATUS FALSE TRUE ORIGINATE_CTRL WEEKLY_SCHEDULE_RCD DAYS

      ANSI

      A call should take place if an event is detected for this status bit. Standard status events which initiate a call originate procedure. No call should take place for this status bit. A call should take place if an event is detected for this status bit. Manufacturer status events which initiate a call originate procedure. No call should take place for this status bit. A call should take place if an event is detected for this status bit. See CTRL_BFLD above. Days of the week in which the call originate procedure should begin.

      START_TIME

      Time at which the call originate procedure should begin.

      ORIGINATE_CTRL

      See CTRL_BFLD above.

      ORIGINATE_SCHEDULE_RCD S_ANCHOR_DATE

      A separate telephone schedule anchor date used with an RDATE recurring date using the PERIOD/OFFSET mechanism. If this table contains an anchor date it is used with RDATE.If not present, and an anchor date is provided in table 54 (CALENDAR_TBL) then RDATE will use that anchor date. If neither anchor date is present then the anchor date is defined by the manufacturer.

      RECURRING_DATES

      Array of recurring call origination dates.

      NON_RECURING_DATES

      Array of non recurring call origination dates.

      EVENTS

      Array of call origination trigger events.

      WEEKLY_SCHEDULES

      Array of call origination days.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      263

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.10.6 Table 95 Answer Parameters Table 95 Data Description ANSWER_PARAMETERS_TBL (Table 95) defines the answer configuration for receiving calls placed by a utility host. Global Default Table Property Overrides: Role=“CONTROL” Table 95 Type Definitions TYPE CALLER_ID_RCD = PACKED RECORD CALLER_ID : STRING(ACT_TELEPHONE_TBL.CALLER_ID_LENGTH); END; TYPE ANSWER_PARAMETERS_RCD = PACKED RECORD IF ACT_TELEPHONE_TBL.BIT_RATE = 2 THEN ANSWER_BIT_RATE : UINT32; END; IF NOT ACT_TELEPHONE_TBL.NO_LOCKOUT_PARM THEN LOCKOUT_DELAY : UINT8; RETRY_ATTEMPTS : UINT8; RETRY_LOCKOUT_TIME : UINT8; END; NBR_RINGS : UINT8; IF ACT_TELEPHONE_TBL.NBR_ANSWER_WINDOWS > 0 THEN NBR_RINGS_OUTSIDE : UINT8; END; CALLER_IDS

      : ARRAY[ACT_TELEPHONE_TBL.NBR_CALLER_ID] OF CALLER_ID_RCD; WINDOWS : ARRAY[ACT_TELEPHONE_TBL.NBR_ANSWER_WINDOWS] OF WINDOW_RCD; END; TABLE 95 ANSWER_PARAMETERS_TBL = ANSWER_PARAMETERS_RCD; Table 95 Element Descriptions Identifier

      Value

      CALLER_ID_RCD CALLER_ID ANSWER_PARAMETERS_RCD ANSWER_BIT_RATE

      LOCKOUT_DELAY

      264

      Definition Caller ID string. Incoming calls must have a valid caller ID for the call to be answered.

      0..232-1

      Bit rate at which the End Device will answer a call. Zero indicates an externally defined bit rate.

      0..255

      Number of minutes to lockout call answering after detecting a voice call.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      RETRY_ATTEMPTS

      0..255

      Maximum number of consecutive violations allowed before lockout.

      RETRY_LOCKOUT_TIME

      0..255

      Minutes to lockout logons after security retry attempts exceeded.

      NBR_RINGS

      0..255

      The number of rings to wait before answering while inside a time window. A value of 0 means do not answer.

      NBR_RINGS_OUTSIDE

      0..255

      The number of rings to answer while outside a time window. A value of 0 means do not answer.

      CALLER_IDS

      An array of caller IDs.

      WINDOWS

      An array of answer time windows.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      security

      265

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.10.7 Table 96 Call Purpose Table 96 Data Description CALL_PURPOSE_TBL (Table 96) indicates the purpose for the current call originated by the End Device. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 96 Type Definitions TYPE CALL_PURPOSE_BFLD = BIT FIELD OF UINT16 POWER_OUTAGE :BOOL(0); POWER_RESTORAL :BOOL(1); SCHEDULED_CALL :BOOL(2); STATUS_CALL :BOOL(3); IMMEDIATE_CALL :BOOL(4); FILLER :FILL(5..11); MANUFACTURER_PURPOSES :UINT(12..15); END; TYPE CALL_PURPOSE_RCD = PACKED RECORD CALL_PURPOSE : CALL_PURPOSE_BFLD; CALL_TRIGGER_STATUS : ED_MODE_STATUS_RCD; IF ACT_TELEPHONE_TBL.ID_IN_PURPOSE THEN IDENT : DEVICE_IDENT_TBL.IDENT_RCD; END; END; TABLE 96 CALL_PURPOSE_TBL = CALL_PURPOSE_RCD; Table 96 Element Descriptions Identifier

      Value

      CALL_PURPOSE_BFLD POWER_OUTAGE

      Definition This phone call was triggered by the detection of a power outage.

      POWER_RESTORAL

      This phone call was triggered by the detection of a power restoration.

      SCHEDULED_CALL

      This phone call is a normal call.

      STATUS_CALL

      This phone call was triggered by an change in the status record.

      IMMEDIATE_CALL

      This phone call was triggered by an immediate call procedure.

      MANUFACTURER_PURPOSES

      This field if non-zero indicates that the phone call was triggered by a manufacturer defined purpose.

      CALL_PURPOSE_RCD

      266

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 of

      ANSI

      CALL_PURPOSE

      See definitions above.

      CALL_PURPOSE_BFLD

      IDENT

      Identity of the call originating device (Table 5).

      CALL_TRIGGER_STATUS

      If the STATUS_CALL bit is TRUE then this field indicates which status bit change(s) caused the call. The field is in the image of ED_MODE_STATUS_TBL.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      267

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.10.8 Table 97 Call Status Table 97 Data Description CALL_STATUS_TBL (Table 97) indicates the status of the most recent call to each defined phone number. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 97 Type Definitions TYPE LAST_CALL_PURPOSE_RCD = PACKED RECORD CALL_STATUS : UINT8; IF ACT_TELEPHONE_TBL.TELEPHONE_FLAGS.EXTENDED_STATUS CALL_PURPOSE : CALL_PURPOSE_BFLD; CALL_TRIGGER_STATUS : ED_MODE_STATUS_RCD; LAST_CALL_TIME : LTIME_DATE; END; END; TYPE CALL_STATUS_RCD = PACKED RECORD CALL_STATUS_ARRAY : ARRAY[ACT_TELEPHONE_TBL.NBR_ORIGINATE_NUMBERS] OF LAST_CALL_PURPOSE_RCD; END; TABLE 97 CALL_STATUS_TBL = CALL_STATUS_RCD; Table 97 Element Descriptions Identifier

      Value

      LAST_CALL_PURPOSE_RCD CALL_STATUS

      Status or disposition of the most recent call to a phone number. Entries are defined as follows: 0 1 2 3 4 5 6 7 8 9 10 11

      CALL_PURPOSE

      CALL_TRIGGER_STATUS

      268

      Definition

      No phone call made Phone call in progress Dialing Waiting for a connection Communicating Completed normally Not completed Not completed, Line busy Not completed, No dial tone Not completed, Line cut Not completed, No connection Not completed, No modem response This field indicates the reason the most recent call was attempted. See CALL_PURPOSE_BFLD in Table 96 for definition. From Table 96. This field indicates the reason the most recent call was attempted. The field is

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      LAST_CALL_TIME CALL_STATUS_RCD CALL_STATUS_ARRAY

      ANSI

      in the image of ED_MODE_STATUS_RCD defined in Table 3. This field indicates the time and date the most recent call attempt was made. Status or disposition of the most recent call to each phone number.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      269

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.10.9 Table 98 Originate Status Table 98 Data Description ORIGINATE_STATUS_TBL (Table 98) indicates the status of the defined Originate Schedule. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 98 Type Definitions TYPE ORIGINATE_STATUS_RCD = PACKED RECORD IMMEDIATE_STATUS : SET((ACT_TELEPHONE_TBL.NBR_ORIGINATE_NUMBERS + 7)/ 8); RECURRING_STATUS : SET((ACT_TELEPHONE_TBL.NBR_RECURRING_DATES + 7)/ 8); NON_RECURRING_STATUS : SET((ACT_TELEPHONETBL.NBR_NON_RECURRING_DATES + 7)/ 8); WEEKLY_STATUS : SET((ACT_TELEPHONE_TBL.NBR_WEEKLY_SCHEDULES + 7)/ 8); CALL_TRIGGER_STATUS : ARRAY[ACT_TELEPHONE_TBL.NBR_EVENTS] OF ED_MODE_STATUS_RCD; WINDOW_STATUS : SET((ACT_TELEPHONE_TBL.NBR_ORIGINATE_WINDOWS + 7)/ 8); NEXT_RECURRING_DATE : ARRAY[ACT_TELEPHONE_TBL.NBR_RECURRING_DATES] OF LTIME_DATE_RCD; NEXT_WEEKLY_SCHEDULE : ARRAY[ACT_TELEPHONE_TBL.NBR_WEEKLY_SCHEDULES] OF LTIME_DATE_RCD; END; TABLE 98 ORIGINATE_STATUS_TBL = ORIGINATE_STATUS_RCD; Table 98 Element Descriptions Identifier

      Value

      ORIGINATE_STATUS_RCD IMMEDIATE_STATUS

      270

      Definition This is a SET of bits. Each bit is set when an immediate call is requested and is cleared when the call is completed.

      RECURRING_STATUS

      This is a SET of bits. Each bit is set when the recurring date occurs and is cleared when the call is completed.

      NON_RECURRING_STATUS

      This is a SET of bits. Each bit is set when the non-recurring date occurs and is cleared when the call is completed.

      WEEKLY_STATUS

      This is a SET of bits. Each bit is set when the Weekly Schedule occurs and is cleared when the call is completed.

      CALL_TRIGGER_STATUS

      A bit set in this record indicates that the corresponding status bit change has occurred and is configured as a call home reason. The bit is cleared when the call is complete.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      WINDOW_STATUS

      This is a SET of bits. Each bit is set when the corresponding window is open, cleared when it is closed.

      NEXT_RECURRING_DATE

      Array of actual dates for the next occurrence of each recurring date.

      NEXT_WEEKLY_SCHEDULE

      Array of actual dates for the next occurrence of each weekly schedule.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      271

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.11 Decade 10: Extended Source Tables Decade 10 Name EXTENDED_SOURCE_DEC This decade cover the same application space than decade 1 with the following differences: 1. This decade defines a data structure easier to understand both to developers and automated systems 2. This decade provides a well defined algorithm to convert transported information 3. This decade minimizes the number of tables transported 4. This decade provides indications on which context each source can be used 5. This decade allows reuse of sources in different context such as summation, demand, instantaneous 6. This decade allows external scaling sharing 7. This decade provides formatting hints used by upstream devices 8. This decade allows for a textual description of each source 9. This decade add support for the new power quality decade 10. This decade supports a REGISTER_DIVISOR constant which is required when registers are encoded using integral number. 11. This decade supports 65535 sources instead of 255 This decade and decade 1 can’t be used simultaneously because of the different requirements on source selectors. When this decade is used, the MODEL_SELECT field defined in the General Configuration Table (Table 0) shall be set to 1. Algorithm The following set of equations defines how data retrieved for the End Device, by example from table 23 or 64, is converted to the following representations:  engineering: physical value measured (on the secondary side of the transformer if any)  primary: engineering value on the primary side of the transformer  formatted: formatted value such as values reported by the local display  raw: value reported by the sensor This algorithm show how information is converted between the different representations. The input to this algorithm is a “value” as received by the End Device. IF (retrieved from 64, 65, 66, 67 and SCALAR_DIVISOR_FLAG_SETx = true) value = value / LP_CTRL_TBL.SCALARS_SETx[y] * LP_CTRL_TBL.DIVISORS_SETx[y] IF (retrieved from 155, 156, 157, 158 and TD_SCALAR_DIVISOR_FLAG = true) value = value / QUALITY_CONTROL_TBL.SCALAR * QUALITY_CONTROL_TBL.DIVISOR IF (value is a summation) value += REGISTER_OFFSET SWITCH (TRANSPORTED_VALUES) CASE 0: // raw raw = value engineering = raw * REGISTER_MULTIPLIER / REGISTER_DIVISOR primary = engineering * (F_RATIO * P_RATIO) CASE 1: // engineering engineering = value; raw = engineering / REGISTER_MULTIPLIER * REGISTER_DIVISOR primary = engineering * (F_RATIO * P_RATIO) CASE 2: // primary

      272

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      primary = value engineering = primary / (F_RATIO * P_RATIO) raw = engineering / REGISTER_MULTIPLIER * REGISTER_DIVISOR IF (FORMATTED_VALUES = engineering) formatted = engineering IF (FORMATTED_VALUES = primary) formatted = primary IF (value is a summation) formatted *= 10^SUM_SCALER IF (value is a cumulative demand) formatted *= 10^CUM_DMD_SCALER Formatting hints The following table summarizes the formatting hints based on the type of the measurement (value, summation, demand or cumulative demand) and its representation (raw, engineering, primary or formatted). Type Instantaneous or period based value Summation

      Demand

      Cumulative Demand

      Representation Raw Engineering Primary Formatted Raw Engineering Primary Formatted

      Hints No hints provided

      Raw Engineering Primary Formatted Raw Engineering Primary Formatted

      No hints provided

      MAX_TRAILING_DIGITS MAX_TRAILING_DIGITS – log10(F_RATIO * P_RATIO) TRAILING_DIGITS

      No hints provided MAX_TRAILING_DIGITS MAX_TRAILING_DIGITS – log10(F_RATIO * P_RATIO) SUM_LEADING_DIGITS SUM_TRAILING_DIGITS SUM_SUPPRESS_LEADING_ZEROS MAX_TRAILING_DIGITS MAX_TRAILING_DIGITS – log10(F_RATIO * P_RATIO) DMD_TRAILING_DIGITS

      No hints provided MAX_TRAILING_DIGITS MAX_TRAILING_DIGITS – log10(F_RATIO * P_RATIO) CUM_DMD_LEADING_DIGITS CUM_DMD_TRAILING_DIGITS CUM_DMD_SUPPRESS_LEADING_ZEROS

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      273

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      Use case This example represents a residential meter; the reading contains a single register reporting a kWh summation (delivered – received, net flow), the profiler contains a single channel reporting a kWh consumption (delivered – received, net flow), the Kh factor is .0072 kWh, the display multiplier is 10, the summation is formatted using 5 digits with no decimal digits, values are transported in raw value. Source definition: UOM UOM_SCALE PHASES QUADRANTS NET_FLOW TRANSPORTED_VALUES FORMATTED_VALUES MAX_TRAILING_DIGITS SUM_LEADING_DIGITS SUM_SUPP_LEADING_ZEROS SUM_TRAILING_DIGITS SUM_SCALE TRAILING_DIGITS CUM_DMD_LEADING_DIGITS CUM_DMD_SUPP_LEADING_ZEROS CUM_DMD_TRAILING_DIGITS CUM_DMD_SCALE DMD_TRAILING_DIGITS REGISTER_MULTIPLIER REGISTER_DIVISOR REGISTER_OFFSET F_RATIO P_RATIO

      = = = = = = = = = = = = = = = = = = = = = = =

      0 (W) 3 (103) 0 (Not phase related) 15 (All quadrants) 1 (True) 0 (Raw) 0 (Engenering) 4 5 0 (False) 0 1 3 na na na na na 72 10000 0 na na

      For example, if the reading reported equal 1419472. raw = 1419472 engineering

      = (raw + REGISTER_OFFSET) * REGISTER_MULTIPLIER / REGISTER_DIVISOR, formatted using MAX_TRAILING_DIGITS = (1419472 + 0) * 72 / 10000 = 10220.1984 kWh

      primary

      = not supported

      formatted

      = engineering * 10 ^ SUM_SCALE, formatted using SUM_TRAILING_DIGITS, SUM_LEADING_DIGITS and SUM_SUPP_LEADING_ZEROS = 10220.1984 / 10^1 = 1022.01984 formatted as 01022

      For example, if a consumption reported by the profiler equal 947. raw = 947 engineering

      = raw * REGISTER_MULTIPLIER / REGISTER_DIVISOR, formatted using MAX_TRAILING_DIGITS = 947 * 72 / 10000 = 6.8184 kWh

      primary

      = not supported

      formatted

      = engineering, formatted using LEADING_DIGITS = 6.8184 formatted as 6.818

      274

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.11.1 Table 100 Dimension Extended Source Limiting Table Table 100 Data Description DIM_EX_SOURCES_TBL (Table 100) contains maximum dimensions of this decade. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 100 Type Definitions TYPE DIM_EX_SOURCES_BFLD = BIT FIELD OF UINT8 FORMATTING_SUPPORTED : BOOL(0); DMD_FORMATTING_SUPPORTED : BOOL(1); USAGE_SUPPORTED : BOOL(2); REGISTER_SCALING_SUPPORTED : BOOL(3); RESET_EXCLUSION : BOOL(4); POWER_FAIL_EXCLUSION : BOOL(5); SLIDING_DEMAND : BOOL(6); FILLER : FILL(7..7); END; TYPE DIM_EX_SOURCE_RCD = PACKED RECORD SOURCE_FLAGS : DIM_EX_SOURCES_BFLD; NUMBER_OF_SOURCES : UINT16; DESCRIPTION_LENGTH : UINT8; NUMBER_OF_DEMAND_CTRL : UINT8; NUMBER_OF_EXTERNAL_SCALING : UINT8; END; TABLE 100 DIM_EX_SOURCES_TBL = DIM_EX_SOURCE_RCD; Table 100 Element Descriptions Identifier

      Value

      DIM_EX_SOURCES_BFLD FORMATTING_SUPPORTED FALSE TRUE

      DMD_FORMATTING_SUPPORTED FALSE TRUE

      USAGE_SUPPORTED

      FALSE TRUE

      Definition Formatting hints for summations and values are not supported by the Source information table (Table 102). Formatting hints for summations and values are supported by the Source information table (Table 102). Formatting hints for cumulative demands and demands are not supported by the Source information table (Table 102). Formatting hints for cumulative demands and demands are supported by the Source information table (Table 102). Usage indicators are not supported by the Source information table (Table 102). Usage indicators are supported by the Source information table (Table 102).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      275

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      REGISTER_SCALING_SUPPORTED FALSE

      TRUE RESET_EXCLUSION

      FALSE TRUE

      POWER_FAIL_EXCLUSION

      FALSE TRUE

      SLIDING_DEMAND

      FALSE TRUE

      Register scaling constants are not present in the Source information table (Table 102). Fields REGISTER_MULTIPLIER and REGISTER_DIVISOR are assumed to be 1 and REGISTER_OFFSET is assumed to be 0. Register scaling constants are present in the Source information table (Table 102). Reset exclusion is not supported by the End Device. Reset exclusion is supported by the End Device. End device is not capable of power fail exclusion. End device is capable of power fail exclusion. Sliding demand is not supported by the End Device. Sliding demand is supported by the End Device.

      DIM_EX_SOURCE_RCD NUMBER_OF_SOURCES

      0..255

      Maximum number of source supported by this End Device.

      DESCRIPTION_LENGTH

      0..255

      Maximum size of the DESCIPTION field in the Source information table (Table 102).

      NUMBER_OF_DEMAND_CTRL 0..255 NUMBER_OF_EXTERNAL_SCALING 0..255

      276

      Maximum number of entries in the Demand control table (Table 104). Maximum number of entries in the External scaling table (Table 103).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.11.2 Table 101 Actual Extended Source Limiting Table Table 101 Data Description ACT_EX_SOURCE_TBL (Table 101) specifies the actual dimensional values for this decade. Global Default Table Property Overrides: Role=“ACUTAL” Table 101 Type Definitions Table 101 ACT_EX_SOURCES_TBL = DIM_EX_SOURCE_RCD; Table 101 Element Descriptions Identifier

      Value

      DIM_EX_SOURCES_BFLD FORMATTING_SUPPORTED FALSE TRUE

      DMD_FORMATTING_SUPPORTED FALSE TRUE

      USAGE_SUPPORTED

      FALSE TRUE

      Definition Redefines: DIM_EX_SOURCES_TBL. DIM_EX_SOURCES_BFLD. Formatting hints for summations and values are not included by the Source information table (Table 102). Formatting hints for summations and values are included by the Source information table (Table 102). Formatting hints for cumulative demands and demands are not included by the Source information table (Table 102). Formatting hints for cumulative demands and demands are included by the Source information table (Table 102). Usage indicators are not included by the Source information table (Table 102). Usage indicators are included by the Source information table (Table 102).

      RESET_EXCLUSION

      FALSE TRUE

      Reset exclusion is not in use. Reset exclusion is in use.

      POWER_FAIL_EXCLUSION

      FALSE TRUE

      Power fail exclusion is not in use. Power fail exclusion is in use.

      SLIDING_DEMAND

      FALSE TRUE

      Sliding demand is not in use. Sliding demand is in use.

      NUMBER_OF_SOURCES

      0..255

      Redefines: DIM_EX_SOURCES_TBL. DIM_EX_SOURCE_RCD. Actual number of source supported.

      DESCRIPTION_LENGTH

      0..255

      DIM_EX_SOURCE_RCD

      Actual size of the DESCIPTION field in the Source information table (Table 102).

      NUMBER_OF_DEMAND_CTRL

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      277

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que 0..255

      NUMBER_OF_EXTERNAL_SCALING 0..255

      278

      Actual number of entries in the Demand control table (Table 104). Actual number of entries in the External scaling table (Table 103).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.11.3 Table 102 Source Information Table Table 102 Data Description SOURCE_INFORMATION_TBL (Table 102) provide the information required to scale, format, describe and used measurement sources available in the End Device. Global Default Table Property Overrides: Role=“CONTROL” Table 102 Type Definitions TYPE SOURCE_INFORMATION_ENTRY1_BFLD = BIT FIELD OF UINT16 ID_CODE : UINT(0..7); MULTIPLIER : INT(8..10); SEGMENTATION : UINT(11..14); TLC_COMPONENT : BOOL(15); END; TYPE SOURCE_INFORMATION_ENTRY2_BFLD = BIT FIELD OF UINT8 FORMATTED_VALUES: UINT(0..1); TRANSPORTED_VALUES : UINT(2..3); MAX_TRAILING_DIGITS : UINT(4..7); END; TYPE FORMATTING_HINTS_BFLD = BIT FIELD OF UINT16 SUM_LEADING_DIGITS : UINT(0..3); SUM_SUPP_LEADING_ZEROS : BOOL(4); SUM_TRAILING_DIGITS : UINT(5..7); SUM_SCALE : UINT(9..11); TRAILING_DIGITS : UINT(12..14); FILLER : FILL(15..15); END; TYPE DMD_FORMATTING_HINTS_BFLD = BIT FIELD OF UINT16 CUM_DMD_LEADING_DIGITS : UINT(0..3); CUM_DMD_SUPP_LEADING_ZEROS : BOOL(4); CUM_DMD_TRAILING_DIGITS : UINT(5..7); CUM_DMD_SCALE : UINT(9..11); DMD_TRAILING_DIGITS : UINT(12..14); FILLER : FILL(15..15); END; TYPE QUALIFIER_USAGE_BFLD = BIT FIELD OF UINT32 SUMMATION_SUPP : BOOL(0); CONSUMPTION_SUPP : BOOL(1); INSTANTANEOUS_SUPP : BOOL(2); MIN_INSTANTANEOUS_SUPP : BOOL(3); MAX_INSTANTANEOUS_SUPP : BOOL(4); AVG_INSTANTANEOUS_SUPP: BOOL(5); PERIOD_BASED_SUPP : BOOL(6); MIN_PERIOD_BASED_SUPP : BOOL(7); MAX_PERIOD_BASED_SUPP : BOOL(8); AVG_PERIOD_BASED_SUPP : BOOL(9); DEMAND_SUPP : BOOL(10); MIN_DEMAND_SUPP : BOOL(11); MAX_DEMAND_SUPP : BOOL(12);

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      279

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      AVG_DEMAND_SUPP FILLER

      : BOOL(13); : FILL(14..15);

      END; TYPE ACCONTABILITY_USAGE_BFLD = BIT FIELD OF UINT16 DELIVERED_PLUS_REC_SUPP : BOOL(0); DELIVERED_MINUS_REC_SUPP : BOOL(1); DELIVERED_SUPP : BOOL(2); RECEIVED_SUPP : BOOL(3); QUADRANT_1_AND_3_SUPP : BOOL(4); QUADRANT_2_AND_4_SUPP : BOOL(5); QUADRANT_1_SUPP : BOOL(6); QUADRANT_2_SUPP : BOOL(7); QUADRANT_3_SUPP : BOOL(8); QUADRANT_4_SUPP : BOOL(9); FILLER : FILL(10..15); END; TYPE REGISTER_SCALING_RCD = PACKED RECORD REGISTER_MULTIPLIER : NI_FMAT1; REGISTER_DIVISOR : NI_FMAT1; REGISTER_OFFSET : NI_FMAT1; END; TYPE SOURCE_INFORMATION_ENTRY_RCD = PACKED RECORD DESCRIPTION : ARRAY[STRING(ACT_EX_SOURCES_TBL.DESCRIPTION_LENGTH] OF CHAR); SOURCE_INFO1: SOURCE_INFORMATION_ENTRY1_BFLD; SOURCE_INFO2: SOURCE_INFORMATION_ENTRY2_BFLD; IF ACT_EX_SOURCES_TBL.USAGE_SUPPORTED THEN QUALIFIER_USAGE : QUALIFIER_USAGE_BFLD; ACCONTABILITY_USAGE : ACCONTABILITY_USAGE_BFLD; END; IF ACT_EX_SOURCES_TBL.FORMATTING_SUPPORTED THEN FORMATTING_HINTS : FORMATTING_HINTS_BFLD; END; IF ACT_EX_SOURCES_TBL.DMD_FORMATTING_SUPPORTED THEN DMD_FORMATTING_HINTS : DMD_FORMATTING_HINTS_BFLD; END; IF ACT_EX_SOURCES_TBL.REGISTER_SCALING_SUPPORTED THEN REGISTER_SCALING : REGISTER_SCALING_RCD; END; IF GEN_CONFIG_TBL.STD_TBLS_USED.103 THEN EXTERNAL_SCALING_INDEX : UINT8; END; IF GEN_CONFIG_TBL.STD_TBLS_USED.104 THEN DEMAND_CTRL_INDEX : UINT8; END; END; TYPE SOURCE_INFORMATION_RCD = PACKED RECORD

      280

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 SOURCES

      ANSI

      : ARRAY[ACT_EX_SOURCES_TBL.NUMBER_OF_SOURCES] OF SOURCE_INFORMATION_ENTRY_RCD;

      END; TABLE 102 SOURCE_INFORMATION_TBL = SOURCE_INFORMATION_RCD; Table 102 Element Descriptions Identifier

      Value

      SOURCE_INFORMATION_ENTRY1_BFLD ID_CODE MUILTIPLIER TLC_COMPONENT

      See ID_CODE field of Unit of measure table (Table 12). See MULTIPLIER field of Unit of measure table (Table 12).

      FALSE TRUE

      SEGMENTATION

      This source do not represent the transformer lost compensation component of the measurement. This source represents the transformer lost compensation component of the measurement. See SEGMENTATION field of Unit of measure table (Table 12).

      SOURCE_INFORMATION_ENTRY2_BFLD FORMATTED_VALUES 0 1 TRANSPORTED_VALUES 0 1 2 MAX_TRAILING_DIGITS

      FORMATTING_HINTS_BFLD SUM_LEADING_DIGITS

      Definition

      Engineering value Primary value This field defines the way information relative to this source is transported. Raw value, register constants are not applied Engineering value, register constants are already applied if exists. Primary engineering value, register constants and transformer ratios are already applied. Defines the number of digits after the point that contain meaningful information when the source is represented in engineering value. This field represents also the minimum precision required to compute information from this source without generating rounding errors.

      0..15

      SUM_SUPP_LEADING_ZEROS FALSE TRUE

      When summations produced by this source are formatted using these hints, this field defines the number of digit before the decimal point used. When summations produced by this source are formatted using these hints, this field indicate if the leading zero should be suppressed. Do not suppress leading zeros. Suppress leading zeros.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      281

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      SUM_TRAILING_DIGITS

      0..15

      When summations produced by this source are formatted using these hints, this field defines the number of digit after the decimal point used.

      SUM_SCALE

      -16..15

      When summations produced by this source are formatted using these hints, this field defines a signed power of 10 scale factor to be applied. Not used (Scale = 1)

      0 TRAILING_DIGITS

      0..15

      DMD_FORMATTING_HINTS_BFLD CUM_DMD_LEADING_DIGITS 0..15

      CUM_DMD_SUPP_LEADING_ZEROS

      FALSE TRUE CUM_DMD_TRAILING_DIGITS

      CUM_DMD_SCALE

      When cumulative demands or continuous cumulative demands produced by this source are formatted using these hints, this field indicate if the leading zero should be suppressed. Do not suppress leading zeros. Suppress leading zeros.

      -16..15

      When cumulative demands or continuous cumulative demands produced by this source are formatted using these hints, this field defines a signed power of 10 scale factor to be applied. Not used (Scale = 1)

      0..15

      When demands produced by this source are formatted using these hints, this field defines the number of digit after the decimal point used.

      FALSE TRUE

      Can not be qualified as a Summation. Can be qualified as a Summation.

      CONSUMPTION_SUPP

      FALSE TRUE

      Can not be qualified as a Consumption. Can be qualified as a Consumption.

      INSTANTANEOUS_SUPP

      FALSE TRUE

      Can not be qualified as an Instantaneous value. Can be qualified as an Instantaneous value.

      QUALIFIER_USAGE_BFLD SUMMATION_SUPP

      282

      When cumulative demands or continuous cumulative demands produced by this source are formatted using these hints, this field defines the number of digit before the decimal point used.

      0..15 When cumulative demands or continuous cumulative demands produced by this source are formatted using these hints, this field defines the number of digit after the decimal point used.

      0 DMD_TRAILING_DIGITS

      When values and consumptions produced by this source are formatted using these hints, this field defines the number of digit after the decimal point used.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 MIN_INSTANTANEOUS_SUPP FALSE TRUE MAX_INSTANTANEOUS_SUPP FALSE TRUE

      ANSI

      Can not be qualified as a Minimum instantaneous value. Can be qualified as a Minimum instantaneous value. Can not be qualified as a Maximum instantaneous value. Can be qualified as a Maximum instantaneous value.

      AVG_INSTANTANEOUS_SUPP FALSE TRUE PERIOD_BASED_SUPP

      FALSE TRUE

      MIN_PERIOD_BASED_SUPP FALSE TRUE MAX_PERIOD_BASED_SUPP FALSE TRUE AVG_PERIOD_BASED_SUPP FALSE TRUE

      Can not be qualified as an Average instantaneous value. Can be qualified as an Average instantaneous value. Can not be qualified as a Period based value. Can be qualified as a Period based value. Can not be qualified as a Minimum period based value. Can be qualified as a Minimum period based value. Can not be qualified as a Maximum period based value. Can be qualified as a Maximum period based value. Can not be qualified as an Average period based value. Can be qualified as an Average period based value.

      DEMAND_SUPP

      FALSE TRUE

      Can not be qualified as a Demand. Can be qualified as a Demand.

      MIN_DEMAND_SUPP

      FALSE TRUE

      Can not be qualified as a Minimum demand. Can be qualified as a Minimum demand.

      MAX_DEMAND_SUPP

      FALSE TRUE

      Can not be qualified as a Maximum demand. Can be qualified as a Maximum demand.

      AVG_DEMAND_SUPP

      FALSE TRUE

      Can not be qualified as an Average demand. Can be qualified as an Average demand.

      ACCONTABILITY_USAGE_BFLD DELIVERED_PLUS_REC_SUPP FALSE TRUE DELIVERED_MINUS_REC_SUPP FALSE

      Accountability can not be set to Delivered plus received. Accountability can be set to Delivered plus received. Accountability can not be set to Delivered minus received.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      283

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que TRUE

      Accountability can be set to Delivered minus received.

      DELIVERED_SUPP

      FALSE TRUE

      Accountability can not be set to delivered. Accountability can be set to delivered.

      RECEIVED_SUPP

      FALSE TRUE

      Accountability can not be set to received. Accountability can be set to received.

      QUADRANT_1_AND_3_SUPP FALSE TRUE

      Accountability can not be set to Quadrant 1 & 3. Accountability can be set to Quadrant 1 & 3.

      QUADRANT_2_AND_4_SUPP FALSE TRUE

      Accountability can not be set to Quadrant 2 & 4. Accountability can be set to Quadrant 2 & 4.

      QUADRANT_1_SUPP

      FALSE TRUE

      Accountability can not be set to Quadrant 1. Accountability can be set to Quadrant 1.

      QUADRANT_2_SUPP

      FALSE TRUE

      Accountability can not be set to Quadrant 2. Accountability can be set to Quadrant 2.

      QUADRANT_3_SUPP

      FALSE TRUE

      Accountability can not be set to Quadrant 3. Accountability can be set to Quadrant 3.

      QUADRANT_4_SUPP

      FALSE TRUE

      Accountability can not be set to Quadrant 4. Accountability can be set to Quadrant 4.

      REGISTER_SCALING_RCD REGISTER_MULTIPLIER

      REGISTER_DIVISOR

      Constant by which a raw value must be divided to produce values in unit as defined in Unit of measure table (Table 12).

      REGISTER_OFFSET

      Constant by which a raw value must be added to produce values in unit as defined in Unit of measure table (Table 12).

      SOURCE_INFORMATION_ENTRY_RCD DESCRIPTION

      284

      Constant by which a raw value must be multiplied to produce values in unit as defined in Unit of measure table (Table 12).

      Textual description of this source.

      SOURCE_INFO

      See SOURCE_INFORMATION_ENTRY_BFLD above.

      USAGE

      See USAGE_BFLD above.

      FORMATTING_HINTS

      See FORMATTING_HINTS_BFLD above.

      DMD_FORMATTING_HINTS

      Formatting hints use for demand or cumulative demand produced by this source.

      REGISTER_SCALING

      See REGISTER_SCALING_RCD above.

      EXTERNAL_SCALING_INDEX 0..255

      This byte is the index reference into the EXTERNAL_SCALING array defined in the

      a

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      External scaling table (table 103). A value of 255 indicates that no multiplier entry is to be applied. DEMAND_CTRL_INDEX

      0..255

      When this source is used as a demand source, this byte is an index into Demand control table (table 104). This field is ignored when the source is used for metering functions that are not related to demand. A value of 255 indicates that no demand entry applies to this source.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      285

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.11.4 Table 103 External Scaling Table Table 103 Data Description EXTERNAL_SCALING_TBL (Table 103) contains one or multiple set of External scaling constants (F_RATIO, P_RATIO). The association between a source and these constants is resolved by the EXTERNAL_SCALING_INDEX field defined in the Source Identification Table (Table 102). Global Default Table Property Overrides: Role=“CONTROL” Table 103 Type Definitions TYPE EXTERNAL_SCALING_ENTRY_RCD = PACKED RECORD F_RATIO : NI_FMAT1; P_RATIO : NI_FMAT1; END; TYPE EXTERNAL_SCALING_RCD = PACKED RECORD EXTERNAL_SCALING : ARRAY[ACTL_EX_SOURCES. NUMBER_OF_EXTERNAL_SCALING] OF EXTERNAL_SCALING_ENTRY_RCD; END; TABLE 103 EXTERNAL_SCALING_TBL = EXTERNAL_SCALING_RCD; Table 103 Element Descriptions Identifier

      Value

      EXTERNAL_SCALING_RCD F_RATIO

      P_RATIO

      EXTERNAL_SCALING_RCD EXTERNAL_SCALING

      286

      Definition Ratio of intermediary device to allow interface of commodity flow to utility meters. For example, electric utilities use a current transformer to reduce the current at the meter. Transforming 2000 amps to 5 amps is a ratio of 400. Ratio of intermediary device to allow interface of commodity pressure to utility meters. For example, electric utilities use a voltage transformer to reduce the voltage at the meter. Transforming 7200 volts to 120 volts is a ratio of 60. List of External scaling constants (F_RATIO, P_RATIO) available to be referenced by sources defined in the Source Information Table (Table 102).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.11.5 Table 104 Demand Control Table Table 104 Data Description DEMAND_CTRL_TBL (Table 104) is used to control how demands are computed. This table is equivalent in structure to the Demand control table (Table 13). Global Default Table Property Overrides: Role=“CONTROL” Table 104 Type Definitions TYPE DEMAND_CTRL_ENTRY_RCD = PACKED RECORD IF ACT_EX_SOURCES_TBL.SLIDING_DEMAND THEN SUB_INT : UINT8; INT_MULTIPLIER : UINT8; ELSE INT_LENGTH : UINT16; END; END; TYPE DEMAND_CTRL_RCD = PACKED RECORD IF ACT_EX_SOURCES_TBL.RESET_EXCLUSION THEN RESET_EXCLUSION : UINT8; END; IF ACT_EX_SOURCES_TBL.POWER_FAIL_EXCLUSION THEN P_FAIL_RECOGNTN_TM : UINT8; P_FAIL_EXCLUSION : UINT8; COLD_LOAD_PICKUP : UINT8; END; INTERVAL_VALUE : ARRAY[ACT_EX_SOURCES_TBL.NUMBER_OF_DEMAND_CTRL] OF DEMAND_CTRL_ENTRY_RCD; END; TABLE 104 DEMAND_CTRL_TBL = DEMAND_CTRL_RCD; Table 104 Element Descriptions Identifier

      Value

      Definition

      DEMAND_CTRL_ENTRY_RCD SUB_INT

      0..255

      Subinterval period in minutes.

      INT_MULTIPLIER

      0..255

      Number of subinterval (SUB_INT).

      INT_LENGTH

      0..65535

      Interval period in minutes.

      0..255

      Number of minutes after demand reset to exclude additional reset action.

      P_FAIL_RECOGNTN_TM

      0..255

      Number of seconds after a power failure occurs until a valid power failure is recorded and a specified action is initiated.

      P_FAIL_EXCLUSION

      0..255

      Number of minutes after a valid power failure occurs to inhibit demand calculations.

      DEMAND_CONTROL_RCD RESET_EXCLUSION

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      287

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      COLD_LOAD_PICKUP

      288

      0..255

      Number of minutes after a valid power failure occurs to provide cold load pickup functions.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.11.6 Table 105 Transformer Loss Compensation Table 105 Data Description TLC_TBL (Table 105) is identical to the table 18. For more information on this table, see table 18 description. Global Default Table Property Overrides: Role=“CONTROL” Table 105 Type Definitions TABLE 105 TRANSFORMER_LOSS_COMPENSATION_TBL = TLC_TBL.TLC_RCD;

      9.11.7 Table 106 Gas Constant AGA3 Table 106 Data Description GAS_CONSTANTS_AGA3_TBL (Table 106) is identical table 15 case 0. For more information on this table, see table 15 description. Global Default Table Property Overrides: Role=“CONTROL” Table 106 Type Definitions TABLE 106 GAS_CONSTANTS_AGA3_TBL = CONSTANTS_TBL.GAS_CONSTANTS_AGA3_RCD ;

      9.11.8 Table 107 Gas Constant AGA7 Table 107 Data Description GAS_CONSTANTS_AGA7_TBL (Table 107) is identical table 15 case 1. For more information on this table, see table 15 description. Global Default Table Property Overrides: Role=“CONTROL” Table 107 Type Definitions TABLE 107 GAS_CONSTANTS_AGA7_TBL = CONSTANTS_TBL.GAS_CONSTANTS_AGA7_RCD;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      289

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.12 Decade 11: Load Control and Pricing Tables Decade 11 Name LOAD_CONTROL_DEC This Decade contains Tables associated with load control operation. This Decade supports the management of up to 255 control points. The state of control points can be changed based on one of the following methods:    

      290

      Direct load control: a command is sent directly to the End Device across a communication link to modify the state of one or multiple control points. Schedule: the End Device is programmed to modify the state of one or multiple control points at specific dates, recurring dates, period of the week or event detection. Condition: the End Device is programmed to modify the state of one or multiple control points based on the magnitudes of metered quantities, price level (active tier), time of the day, period of the year or any other condition that can be construct by a Single Line Math expression. Prepayment: the End Device is programmed to modify the state of one or multiple control points based on a remaining credit.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.12.1 Table 110 Dimension Load Control Table 110 Data Description DIM_LOAD_CONTROL_TBL (Table 110) specifies the maximum dimensional limits for this Decade. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 110 Type Definitions TYPE DIM_LOAD_CONTROL_BFLD = BIT FIELD OF UINT16 DURATION_SUPPORTED_FLAG : BOOL(0); RANDOMIZATION_SUPPORTED_FLAG : BOOL(1); MANUAL_OVERRIDE_SUPPORTED_FLAG : BOOL(2); MANUAL_TURN_ON_SUPPORTED_FLAG : BOOL(3); STATE_VERIFICATION_SUPPORTED_FLAG : BOOL(4); ANCHOR_DATE_SUPPORTED_FLAG : BOOL(5); SOURCE_CONDITION_SUPPORTED_FLAG : BOOL(6); TIER_CONDITION_SUPPORTED_FLAG : BOOL(7); TIME_CONDITION_SUPPORTED_FLAG : BOOL(8); FILLER : FILL(9..15); END; TYPE DIM_LOAD_CONTROL_RCD = PACKED RECORD DIM_LOAD_CONTROL : DIM_LOAD_CONTROL_BFLD; NBR_OF_CONTROL_POINT : UINT8; NBR_RECURRING_DATES : UINT8; NBR_NON_RECURRING_DATES : UINT8; NBR_EVENTS : UINT8; NBR_OF_WEEKLY_SCHEDULES : UINT8; NBR_OF_CONDITIONS : UINT8; NBR_OF_CONSUMPTIONS : UINT8; SLM_CONDITION_LGN : UINT16; SLM_EQUATION_LGN : UINT16; END; TABLE 110 DIM_LOAD_CONTROL_TBL = DIM_LOAD_CONTROL_RCD; Table 110 Element Descriptions Identifier

      Value

      DIM_LOAD_CONTROL_BFLD DURATION_SUPPORTED_FLAG FALSE TRUE RANDOMIZATION_SUPPORTED_FLAG FALSE

      Definition

      End Device is not capable of processing a load control directive with a duration. End Device is capable of processing a load control directive with a duration. End Device is not capable of automatically randomizing a load control directive. TRUE End Device is capable of automatically randomizing a load control directive.

      MANUAL_OVERRIDE_SUPPORTED_FLAG

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      291

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que FALSE TRUE

      MANUAL_TURN_ON_SUPPORTED_FLAG FALSE TRUE

      End Device is not capable of supporting manual override of load control directives. End device is capable of supporting manual override of load control directives. End Device is not capable of supporting turn-on of its control points after each directive. End Device is capable of supporting turn-on of its control points after each directive.

      manual turn-on manual turn-on

      STATE_VERIFICATION_SUPPORTED_FLAG FALSE End Device is not capable of measuring the state of its control points. TRUE End Device is capable of measuring the state of its control points. ANCHOR_DATE_SUPPORTED_FLAG FALSE TRUE

      End Device is not capable of accepting a separate load control schedule anchor date for the Period/Delta RDATE type (recurring date). End Device is capable of accepting a separate load control schedule anchor date for the Period/Delta RDATE type (recurring date).

      SOURCE_CONDITION_SUPPORTED_FLAG FALSE Load Control Conditions Table (Table 115) cannot include a condition based on a source limit. TRUE Load Control Conditions Table (Table 115) can include a condition based on a source limit. TIER_CONDITION_SUPPORTED_FLAG FALSE TRUE TIME_CONDITION_SUPPORTED_FLAG FALSE TRUE

      DIM_LOAD_CONTROL_RCD NBR_OF_CONTROL_POINT NBR_RECURRING_DATES

      Load Control Conditions Table (Table 115) cannot include a condition based on the actual time of day and period of the year. Load Control Conditions Table (Table 115) can include a condition based on the actual time of day and period of the year.

      0..255

      Maximum number of control points supported.

      0..255

      Maximum number of recurring days supported in the Load Control Schedule Table (Table 114).

      NBR_NON_RECURRING_DATES 0..255

      292

      Load Control Conditions Table (Table 115) cannot include a condition based on the active tier. Load Control Conditions Table (Table 115) can include a condition based on the active tier.

      Maximum

      number

      of

      non-recurring

      days

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      supported in the Load Control Schedule Table (Table 114). NBR_EVENTS

      0..255

      NBR_OF_WEEKLY_SCHEDULES 0..255

      Maximum number of event schedules supported in the Load Control Schedule Table (Table 114). Maximum number of weekly schedules supported in the Load Control Schedule Table (Table 114).

      NBR_OF_CONDITIONS

      0..255

      Maximum number of conditions supported in the Load Control Conditions Table (Table 115).

      NBR_OF_CONSUMPTIONS

      0..255

      Maximum number of consumption history supported in the Prepayment Status Table (Table 116).

      SLM_CONDITION_LGN

      0..65535

      Maximum length of Single Line Math expressions (SLM) used to set load control conditions.

      SLM_EQUATION_LGN

      0..65535

      Maximum length of the Single Line Math expression (SLM) used to set a billing equation.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      293

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.12.2 Table 111 Actual Load Control Limiting Table Table 111 Data Description ACT_LOAD_CONTROL_TBL (Table 111) specifies the actual dimensional limits for this Decade. Global Default Table Property Overrides: Role=“ACUTAL” Table 111 Type Definitions TABLE 111 ACT_LOAD_CONTROL_TBL = DIM_LOAD_CONTROL_RCD; Table 111 Element Descriptions Identifier

      Value

      DIM_LOAD_CONTROL_BFLD

      Definition Redefines: DIM_LOAD_CONTROL_TBL. DIM_LOAD_CONTROL_BFLD.

      DURATION_SUPPORTED_FLAG FALSE TRUE RANDOMIZATION_SUPPORTED_FLAG FALSE TRUE MANUAL_OVERRIDE_SUPPORTED_FLAG FALSE TRUE MANUAL_TURN_ON_SUPPORTED_FLAG FALSE TRUE

      Load control directive does not include duration. Load control directive includes duration. End Device does not automatically randomize load control directives. End Device automatically randomizes load control directives. End Device does not support manual override of load control directives. End Device supports manual override of load control directives. End Device does not support manual turn-on of its control points after each turn-on directive. End Device supports manual turn-on of its control points after each turn-on directive.

      STATE_VERIFICATION_SUPPORTED_FLAG FALSE End Device does not provide the measurement of the state of its control points in the Load Control Status Table (Table 112). TRUE End Device provides the measurement of the state of its control points in the Load Control Status Table (Table 112). ANCHOR_DATE_SUPPORTED_FLAG FALSE TRUE

      294

      End Device does not accept a separate load control schedule anchor date for the Period/Delta RDATE type (recurring date). End Device accepts a separate load control schedule anchor date for the Period/Delta RDATE type (recurring date).

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      SOURCE_CONDITION_SUPPORTED_FLAG FALSE Load Control Conditions Table (Table 115) does not include a condition based on a source limit. TRUE Load Control Conditions Table (Table 115) includes a condition based on a source limit. TIER_CONDITION_SUPPORTED_FLAG FALSE TRUE TIME_CONDITION_SUPPORTED_FLAG FALSE TRUE

      DIM_LOAD_CONTROL_RCD NBR_OF_CONTROL_POINT

      0..255

      NBR_RECURRING_DATES

      0..255

      NBR_NON_RECURRING_DATES 0..255 NBR_EVENTS

      0..255

      NBR_OF_WEEKLY_SCHEDULES 0..255

      Load Control Conditions Table (Table 115) does not include a condition based on the active Tier. Load Control Conditions Table (Table 115) includes a condition based on the active Tier. Load Control Conditions Table (Table 115) does not include a condition based on the actual time of day and period of the year. Load Control Conditions Table (Table 115) includes a condition based on the actual time of day and period of the year. Redefines: DIM_LOAD_CONTROL_TBL. DIM_LOAD_CONTROL_RCD. Actual number of control points. Actual number of recurring days in the Load Control Schedule Table (Table 114). Actual number of non-recurring days supported in the Load Control Schedule Table (Table 114). Actual number of event schedules supported in the Load Control Schedule Table (Table 114). Actual number of weekly schedules supported in the Load Control Schedule Table (Table 114).

      NBR_OF_CONDITIONS

      0..255

      Actual number of conditions supported in the Load Control Conditions Table (Table 115).

      NBR_OF_CONSUMPTIONS

      0..255

      Actual number of consumption history records supported in the Prepayment Status Table (Table 116).

      SLM_CONDITION_LGN

      0..65535

      Actual length of Single Line Math expressions (SLM) used to set load control conditions.

      SLM_EQUATION_LGN

      0..65535

      Actual length of the Single Line Math expression (SLM) used to set a billing equation.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      295

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.12.3 Table 112 Load Control Status Table 112 Data Description LC_STATUS_TBL (Table 112) provides the actual status of each control point supported by the End Device. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 112 Type Definitions TYPE LC_STATUS_ENTRY_BFLD = BIT FIELD OF UINT8 LEVEL_SUPPORTED_FLAG : BOOL(0); IF ACT_LOAD_CONTROL_TBL.MANUAL_OVERRIDE_SUPPORTED THEN MANUALLY_OVERRIDDEN_FLAG : BOOL(1); END; IF ACT_LOAD_CONTROL_TBL.MANUAL_TURN_ON_SUPPORTED THEN WAITING_TO_BE_TURNED_ON_FLAG : BOOL(2); END; FILLER : FILL(3..7); END; TYPE LC_STATUS_ENTRY_RCD = PACKED RECORD NAME : STRING(20); REQUESTED_LEVEL : UINT8; OUTPUT_LEVEL : UINT8; IF ACT_LOAD_CONTROL_TBL.STATE_VERIFICATION_SUPPORTED THEN SENSED_LEVEL : UINT8; END; STATUS : LC_STATUS_ENTRY_BFLD; IF ACT_LOAD_CONTROL_TBL.DURATION_SUPPORTED THEN DURATION_COUNT_DOWN : TIME; END; IF ACT_LOAD_CONTROL_TBL.RANDOMIZATION_SUPPORTED THEN RANDOMIZATION_COUNT_DOWN : TIME; END; END; TYPE LC_STATUS_RCD = PACKED RECORD STATUS_ENTRIES : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_OF_CONTROL_POINT] OF LC_STATUS_ENTRY_RCD; END; TABLE 112 LC_STATUS_TBL = LC_STATUS_RCD; Table 112 Element Descriptions Identifier

      Value

      Definition

      FALSE

      Control points are controlled with a binary level only (Level < 50% means On and Level >= 50% means off). Control points are controlled with a percentage (0 to 100%).

      LC_STATUS_BFLD LEVEL_SUPPORTED_FLAG

      TRUE

      296

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 MANUALLY_OVERRIDDEN_FLAG FALSE TRUE WAITING_TO_BE_TURNED_ON_FLAG FALSE TRUE LC_STATUS_RCD NAME

      ANSI

      This control point is not actually manually overridden. This control point is actually manually overridden. This control point does not wait for a manual intervention before changing state. This control point waits for a manual intervention before changing state. Descriptive name for this control point.

      REQUESTED_LEVEL

      0..100

      The desired level of this control point according to the last load control directive.

      OUTPUT_LEVEL

      0..100

      The asserted level at the input of the load control device. The difference between OUTPUT_LEVEL and REQUESTED_LEVEL can be caused by randomization, manual override, manual turn on or an output control failure.

      SENSED_LEVEL

      0..100

      Actual level sensed at the output of this control device. A significant difference between this level and the OUTPUT_LEVEL indicates a physical problem with either the control point or its sensor.

      DURATION_COUNT_DOWN

      Actual countdown of the duration value received in the last control directive. When this value reaches zero (0), the control points return to their previous state (state before receiving this load control directive).

      RANDOMIZATION_COUNT_DOWN

      Actual countdown of the randomization period. This value is set to a random period when a load control directive is triggered. When this value reaches zero (0), the load control directive is applied, and if duration period is supported, the DURATION_COUNT_DOWN is set to the value received by this control directive.

      LC_STATUS_ENTRIES_RCD STATUS_ENTRIES

      Array that contains the actual status of each control point.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      297

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.12.4 Table 113 Load Control Configuration Table 113 Data Description LC_CONFIGURATION_TBL (Table 113) allows the configuration of the basic behavior of each control point available. Global Default Table Property Overrides: Role=“CONTROL” Table 113 Type Definitions TYPE LC_CONFIGURATION_ENTRY_BFLD = BIT FIELD OF UINT8 IF ACT_LOAD_CONTROL_TBL.MANUAL_OVERRIDE_SUPPORTED THEN MANUAL_OVERRIDE_ENABLE_FLAG : BOOL(0); END; IF ACT_LOAD_CONTROL_TBL.MANUAL_TURN_ON_SUPPORTED THEN MANUAL_TURN_ON_ENABLE_FLAG : BOOL(1); END; IF GEN_CONFIG_TBL.STD_PROC_USED.21 THEN DIRECT_CONTROL_ENABLE_FLAG : BOOL(2); END; FILLER : FILL(3..7); END; TYPE LC_CONFIGURATION_ENTRY_RCD = NAME MINIMUM_ON_TIME MINIMUM_OFF_TIME CONFIGURATION END;

      PACKED RECORD : STRING(20); : TIME; : TIME; : LC_CONFIGURATION_ENTRY_BFLD;

      TYPE LC_CONFIGURATION_RCD = PACKED RECORD CONFIGURATION : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_OF_CONTROL_POINT] OF LC_CONFIGURATION_ENTRY_RCD; END; TABLE 113 LC_CONFIGURATION_TBL = LC_CONFIGURATION_RCD; Table 113 Element Descriptions Identifier

      Value

      LC_CONFIGURATION_ENTRY_BFLD MANUAL_OVERRIDE_ENABLE_FLAG FALSE TRUE MANUAL_TURN_ON_ENABLE_FLAG FALSE TRUE

      Definition

      Control point directive cannot be manually overridden. Control point directive can be manually overridden. Turn on directive is applied without any manual intervention. Turn on directive is applied after a manual intervention.

      DIRECT_CONTROL_ENABLE_FLAG

      298

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 FALSE TRUE LC_CONFIGURATION_ENTRY_RCD NAME

      ANSI

      Control points can not be directly controlled by the “Direct load control procedure” (Procedure 21). Control points can be directly controlled by the “Direct load control procedure” (Procedure 21). Descriptive name for this control point.

      MINIMUM_ON_TIME

      Minimum period this control point shall be turned on before turning it off again.

      MINIMUM_OFF_TIME

      Minimum period this control point shall be turned off before turning it on again.

      CONFIGURATION

      Structure defined above.

      LC_CONFIGURATION_RCD CONFIGURATION

      Array that contains the configuration of each control point.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      299

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.12.5 Table 114 Load Control Schedule Table 114 Data Description LC_SCHEDULE_TBL (Table 114) implements the schedule-based method of load control. This method consists of programming the days of the week and time of day a load control directive is executed. Global Default Table Property Overrides: Role=“CONTROL” Table 114 Type Definitions TYPE LC_RECURRING_DATES_RCD = PACKED RECORD LC_DATE : RDATE; LC_TIME : TIME; DIRECTIVE : LC_DIRECTIVE_RCD; END; TYPE LC_NON_RECURRRING_DATES_RCD = PACKED RECORD LC_DATE : DATE; LC_TIME : TIME; DIRECTIVE : LC_DIRECTIVE_RCD; END; TYPE LC_EVENTS_RCD = PACKED RECORD ED_STD_STATUS1 : ED_MODE_STATUS_TBL.ED_STD_STATUS1_BFLD; ED_STD_STATUS2 : ED_MODE_STATUS_TBL.ED_STD_STATUS2_BFLD; ED_MFG_STATUS : ED_MODE_STATUS_TBL.ED_MFG_STATUS_RCD; DIRECTIVE : LC_DIRECTIVE_RCD; END; TYPE DAYS_BFLD = BIT FIELD OF UINT8 SUNDAY_FLAG : BOOL(0); MONDAY_FLAG : BOOL(1); TUESDAY_FLAG : BOOL(2); WEDNESDAY_FLAG : BOOL(3); THURSDAY_FLAG : BOOL(4); FRIDAY_FLAG : BOOL(5); SATURDAY_FLAG : BOOL(6); FILLER : FILL(7..7); END; TYPE LC_SCHEDULE_RCD = DAYS LC_TIME DIRECTIVE END;

      PACKED RECORD : DAYS_BFLD; : TIME; : LC_DIRECTIVE_RCD;

      TYPE LC_SCHEDULES_RCD = PACKED RECORD IF ACT_LOAD_CONTROL_TBL.ANCHOR_DATE_SUPPORTED THEN ANCHOR_DATE : DATE; END; RDATES : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_RECURRING_DATES] OF LC_RECURRING_DATES_RCD; DATES : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_NON_RECURRING_DATES] OF LC_NON_RECURRRING_DATES_RCD; EVENTS : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_EVENTS]

      300

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      OF LC_EVENTS_RCD; WEEKLY_SCHEDULES : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_OF_WEEKLY_SCHEDULES] OF LC_SCHEDULE_RCD; END; TABLE 114 LC_SCHEDULE_TBL = LC_SCHEDULES_RCD; Table 114 Element Descriptions Identifier

      Value

      LC_RECURRING_DATES_RCD LC_DATE

      Definition Recurring date at which this load control directive is triggered.

      LC_TIME

      Time at which this load control directive is triggered.

      DIRECTIVE

      Load control directive as defined in “Direct load control procedure” (Procedure 21).

      LC_NON_RECURRRING_DATES_RCD LC_DATE

      Date at which this load control directive is triggered.

      LC_TIME

      Time at which this load control directive is triggered.

      DIRECTIVE

      Load control directive as defined in “Direct load control procedure” (Procedure 21).

      LC_EVENTS_RCD ED_STD_STATUS1

      Standard status events on which a state change (from FALSE to TRUE) triggers a load control directive.

      ED_STD_STATUS2

      Standard status events on which a state change (from FALSE to TRUE) triggers a load control directive.

      ED_MFG_STATUS

      Manufacturer status events on which a state change (from FALSE to TRUE) triggers a load control directive.

      DIRECTIVE

      Load control directive as defined in “Direct load control procedure” (Procedure 21).

      LC_SCHEDULES_BFLD SUNDAY_FLAG

      FALSE TRUE

      Not triggered on Sunday. Triggered on Sunday.

      MONDAY_FLAG

      FALSE TRUE

      Not triggered on Monday. Triggered on Monday.

      TUESDAY_FLAG

      FALSE TRUE

      Not triggered on Tuesday. Triggered on Tuesday.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      301

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      WEDNESDAY_FLAG

      FALSE TRUE

      Not triggered on Wednesday. Triggered on Wednesday.

      THURSDAY_FLAG

      FALSE TRUE

      Not triggered on Thursday. Triggered on Thursday.

      FRIDAY_FLAG

      FALSE TRUE

      Not triggered on Friday. Triggered on Friday.

      SATURDAY_FLAG

      FALSE TRUE

      Not triggered on Saturday. Triggered on Saturday.

      LC_SCHEDULES_RCD DAYS LC_TIME

      Time at which this load control directive is triggered.

      DIRECTIVE

      Load control directive as defined in “Direct load control procedure” (Procedure 21).

      LC_SCHEDULES_RCD ANCHOR_DATE

      302

      Days on which this load control directive is triggered.

      A separate load control schedule anchor date used with an RDATE recurring date using the PERIOD/OFFSET mechanism. If this table contains an anchor date it is used with RDATE. If not present, and an anchor date is provided in Table 54 (CALENDAR_TBL) then RDATE will use that anchor date. If neither anchor date is present then the anchor date is defined by the manufacturer.

      RDATES

      Array of recurring time that trigger load control directive.

      DATES

      Array of non recurring time that trigger load control directive.

      EVENTS

      Array of directive.

      WEEKLY_SCHEDULES

      Array of weekly schedules that trigger load control directive.

      events that trigger load control

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.12.6 Table 115 Load Control Conditions Table 115 Data Description LC_CONDITIONS_TBL (Table 115) implements the condition-based method of load control. This method consists of programming conditions directly in the End Device that trigger control point directives. Conditions can be based on source limit, the active Tier, the time of the day, the period of the year or any other condition that can be construct using a Single Line Math expression. For example: IF (source > 12) AND (Between March 1 and October 1) THEN Turn control point 1 to 10%. Global Default Table Property Overrides: Role=“CONTROL” Table 115 Type Definitions TYPE SOURCE_CONDITION_RCD = SOURCE OPERATOR VALUE END;

      PACKED RECORD : STD. SOURCE_SELECT_RCD; : UINT8; : NI_FMAT1;

      TYPE TIER_CONDITION_RCD = PACKED RECORD OPERATOR : UINT8; VALUE : UINT8; END; TYPE DATE_CONDITION_BFLD = BIT FIELD OF UINT32 START_MONTH : UINT(0..3); START_DATE : UINT(4..8); END_MONTH : UINT(9..12); END_DATE : UINT(13..17); FILLER : FILL(18..31); END; TYPE TIME_CONDITION_RCD = PACKED RECORD ALLOWED_DAYS : DAYS_BFLD; START_TIME : STIME; END_TIME : STIME; END; TYPE LC_CONDITION_RCD = PACKED RECORD IF ACT_LOAD_CONTROL_TBL.SOURCE_CONDITION_SUPPORTED THEN SOURCE_CONDITION : SOURCE_CONDITION_RCD; END; IF ACT_LOAD_CONTROL_TBL.TIER_CONDITION_SUPPORTED THEN TIER_CONDITION : TIER_CONDITION_RCD; END; IF ACT_LOAD_CONTROL_TBL.TIME_CONDITION_SUPPORTED THEN DATE_CONDITION : DATE_CONDITION_BFLD; TIME_CONDITION : TIME_CONDITION_RCD; END; SLM_CONDITION : ARRAY[STRING(ACT_LOAD_CONTROL_TBL.SLM_CONDITION_LGN] OF CHAR); DIRECTIVE : LC_DIRECTIVE_RCD; END;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      303

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      TYPE LC_CONDITIONS_RCD = PACKED RECORD CONDITIONS : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_OF_CONDITIONS] OF LC_CONDITION_RCD; END; TABLE 115 LC_CONDITIONS_TBL = LC_CONDITIONS_RCD; Table 115 Element Descriptions Identifier

      Value

      SOURCE_CONDITION_RCD SOURCE

      OPERATOR

      Data source selector of the value to be compared. In the context of MODEL_SELECT one, acceptable QUALIFIERs is 2 (Instantaneous value), 6 (Period based value) and 10 (Demand). 0 1 2 3 4 5 6

      SOURCE_VALUE

      TIER_CONDITION_RCD OPERATOR

      0 1 2 3 4 5 6

      Greater than or equal to Greater than Equal to Not equal to Less than Less than or equal to Not applicable, ignore this condition. Value on which condition applies. Example: OPERATOR = 3 and VALUE = 2, means IF active tier = 2

      0 1 2 3 4 5 6 7 8 9 10 11

      304

      Greater than or equal to Greater than Equal to Not equal to Less than Less than or equal to Not applicable, ignore this condition. Value on which condition applies. For example: SOURCE = 2, OPERATOR = 2 and VALUE = 1000.000, means if source 2 > 1000.000.

      TIER_VALUE

      DATE_CONDITION_BFLD START_MONTH

      Definition

      Unassigned. Condition DATE_CONDITION. January February March April May June July August September October November

      ignored.

      See

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      START_DATE

      12

      December

      0

      Unassigned. Condition TIME_CONDITION. Start day for this period.

      1..31 END_MONTH

      END_DATE TIME_CONDITION_RCD ALLOWED_DAYS

      ignored.

      0 1..12

      Unassigned. Condition ignored. End month for this period. START_MONTH for values available.

      0 1..31

      Unassigned. Condition ignored. End day for this period.

      ANSI

      See

      See

      Defines the days of the week where load control is allowed.

      START_TIME

      Defines the start time of the day where load control is allowed. START_TIME is inclusive. For example, START_TIME = 10:00:00 means the load control begins at 10:00:00.

      END_TIME

      Defines the end time of the day where load control is allowed. END_TIME is exclusive. For example, END_TIME = 12:00:00 means the load control is not longer in operation at 12:00:00.

      LC_CONDITION_RCD

      All conditions defined in this structure must be TRUE or set to ignore before applying the associated directive.

      SOURCE_CONDITION

      Condition based on a source limit.

      TIER_CONDITION

      Condition based on the active represents the actual pricing level.

      DATE_CONDITION

      Condition based on the period of the year.

      TIME_CONDITION

      Condition based on the time of day and day of week.

      SLM_CONDITION

      Condition defined by a Single Line Math expression. This field is ignored if zero length, or contains all spaces (20H). For expression construction, see Section 5.14, “SLM Expression”.

      DIRECTIVE

      Load control directive as defined in “Direct load control procedure” (Procedure 21).

      LC_CONDITIONS_RCD CONDITIONS

      Tier

      that

      Array that contains load control conditions. Each entry of this Array works independently. If multiple CONDITIONS Elements apply to the same control point, the Element having the lower index shall apply.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      305

      ANSI C12.19-2008 aparezca aquí.

      306

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.12.7 Table 116 Prepayment Status Table 116 Data Description PREPAYMENT_STATUS_TBL (Table 116) provides the actual prepayment status. This status includes the remaining credit available for this End Device and some consumption history to guide the customer in its consumption and transaction habits. Global Default Table Property Overrides: Role=“DATA”, Accessibility=“READONLY” Table 116 Type Definitions TYPE PREPAYMENT_HISTORY_RCD = PACKED RECORD PP_DATE : STIME_DATE; PERIOD : TIME; CONSUMPTION_LCU : NI_FMAT1; END; TYPE PREPAYMENT_STATUS_RCD = PACKED RECORD REMAINING_CREDIT : NI_FMAT1; ACTUAL_CONSUMPTION : NI_FMAT1; AVERAGE_PER_DAY : NI_FMAT1; HISTORY_CONSUMPTION : ARRAY[ACT_LOAD_CONTROL_TBL.NBR_OF_CONSUMPTIONS] OF PREPAYMENT_HISTORY_RCD; END; TABLE 116 PREPAYMENT_STATUS_TBL = PREPAYMENT_STATUS_RCD; Table 116 Element Descriptions Identifier PREPAYMENT_HISTORY_RCD PP_DATE

      Value

      Definition Date and time of this period of consumption.

      PERIOD

      Duration reported.

      CONSUMPTION_LCU

      Consumption measured for this period in local currency units.

      PREPAYMENT_STATUS_RCD REMAINING_CREDIT

      Actual remaining credit available. This value can be negative if CREDIT_LIMIT defined in the “Prepayment control table” (Table 118) is different than zero (0).

      ACTUAL_CONSUMPTION

      Actual rate of consumption in local currency units per hour.

      AVERAGE_PER_DAY

      Average consumption per day based on the last month of consumption in local currency units per day.

      HISTORY_CONSUMPTION

      Array containing a history of consumption recorded.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      307

      ANSI C12.19-2008 aparezca aquí.

      308

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.12.8 Table 117 Prepayment Control Table 117 Data Description PREPAYMENT_CONTROL_TBL (Table 117) implements the prepayment method of load control. This Table is used to set credit limits for pre-warning, warning and turn-off directive. Global Default Table Property Overrides: Role=“CONTROL” Table 117 Type Definitions TYPE PREPAYMENT_CONTROL_RCD = PACKED RECORD PRE_WARNING_LIMIT : UINT8; WARNING_LIMIT : UINT8; OVERDRAFT_LIMIT : NI_FMAT1; DIRECTIVE : LC_DIRECTIVE_RCD; END; TABLE 117 PREPAYMENT_CONTROL_TBL = PREPAYMENT_CONTROL_RCD; Table 117 Element Descriptions Identifier PREPAYMENT_CONTROL_RCD PRE_WARNING_LIMIT

      Value

      Definition Threshold on which a first warning is provided to the customer. This threshold is defined in a number of days before spending the REMAINING_CREDIT. This value is compared to the estimated time remaining computed based on the AVERAGE_PER_DAY and the REMAINING_CREDIT defined in the Prepayment Status Table (Table 116).

      WARNING_LIMIT

      Threshold on which a final warning is provided to the customer. As with the PRE_WARNING_LIMIT, this value also represents a number of days before spending the REMAINING_CREDIT.

      OVERDRAFT_LIMIT

      Negative value tolerated before applying the load control directive.

      DIRECTIVE

      Load control directive as defined in “Direct Load Control” procedure (Procedure 21) to apply if the credit limit is exceeded.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      309

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.12.9 Table 118 Billing Control Table 118 Data Description BILLING_CONTROL_TBL (Table 118) includes all parameters necessary to directly bill the customer. This includes taxes, daily fix charges, rate of measured quantities and this base on the current season, tier and type of quantity. In addition, a Single Line Math expression can be added to express more complex billing expression. Global Default Table Property Overrides: Role=“CONTROL” Table 118 Type Definitions TYPE PRICING_RCD = PACKED RECORD PRICE : NI_FMAT1; END; TYPE OCCURENCE_PRICING_RCD = PACKED RECORD OCCURENCE_PRICING : ARRAY[ACT_REGS_TBL.NBR_OCCUR] OF PRICING_RCD; END; TYPE TIER_PRICING_RCD = PACKED RECORD SUMMATIONS_PRICING : ARRAY[ACT_REGS_TBL.NBR_SUMMATIONS] OF PRICING_RCD; DEMAND_PRICING : ARRAY[ACT_REGS_TBL.NBR_DEMANDS] OF OCCURENCE_PRICING_RCD; END; TYPE SEASON_PRICING_RCD = PACKED RECORD IF ACTUAL_REGISTER.NBR_OF_TIERS != 0 THEN TIER_PRICING : ARRAY[ACT_REGS_TBL.NBR_TIERS] OF TIER_PRICING_RCD; ELSE TIER_PRICING: TIER_PRICING_RCD; END; END; TYPE BILLING_CONTROL_RCD = PACKED RECORD DAILY_FIXED_CHARGE : NI_FMAT1; TAXES : NI_FMAT1; CONDITION_ON_SOURCE : STD.SOURCE_SELECT_RCD; LIMIT : NI_FMAT1; ACTION : UNIT8; TIER : UNIT8; SLM_EQUATION : ARRAY[STRING(ACT_LOAD_CONTROL_TBL.SLM_EQUATION_LGN] OF CHAR); IF GEN_CONFIG_TBL.STD_TBLS_USED.51 AND ACT_TIME_TOU_TBL.NBR_SEASONS 0 THEN SEASON_PRICING

      : ARRAY[ACT_TIME_TOU_TBL.NBR_SEASONS] OF SEASON_PRICING_RCD;

      SEASON_PRICING

      : SEASON_PRICING_RCD;

      ELSE END;

      310

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      END; TABLE 118 BILLING_CONTROL_TBL = PREPAYMENT_CONTROL_RCD; Table 118 Element Descriptions Identifier

      Value

      PRICING_RCD PRICE

      Definition Price of this commodity in local currency units per unit.

      OCCURENCE_PRICING_RCD OCCURENCE_PRICING

      Pricing of each occurrence supported.

      TIER_PRICING_RCD SUMMATIONS_PRICING

      Pricing of each summation supported.

      DEMAND_PRICING

      Pricing of each demand supported.

      SEASON_PRICING_RCD TIER_PRICING

      Structure containing the pricing information for commodities measured base of the actual tier and type of measurement.

      BILLING_CONTROL_RCD DAILY_FIXED_CHARGE

      Fixed charge per day for service and equipment rental in local currency units per day.

      TAXES

      Tax to apply in percent (%).

      CONDITION_ON_SOURCE

      Data source selector of the value to be compared. In the context of MODEL_SELECT one, the only acceptable QUALIFIERs is 10 (Demand).

      LIMIT

      Limit on which condition applies. For example: CONDITION_ON_SOURCE = 2 and LIMIT = 1000.000, means if source 2 > 1000.000 perform the ACTION.

      ACTION

      Action to perform when the source selected by CONDITION_ON_SOURCE exceeds the limit set by LIMIT. No action Switch to Tier specified by the next field (TIER) Switch to current tier added to the next field (TIER)

      0 1 2 TIER SLM_EQUATION

      SEASON_PRICING

      Specified Tier. Single Line Math expression used in addition of the SEASON_PRICING information to create complex billing equation. Structure containing the pricing information for commodities measured base of the actual

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      311

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que season, Tier and type of measurement.

      312

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.13 Decade 12: Reserved

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      313

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.14 Decade 13: Reserved

      314

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.15 Decade 14: Extended User-defined Tables Decade 14 Name EXT_UDT_DEC The Extended User-defined Tables enable the C12.19 application to make selections from other tables that are present or implied to be present in an End Device and redirect the resulting values into a user defined table. The values gathered may then be retrieved from a desired Extended User-defined Table as if the Standard provided an explicit Table and descriptive syntax to express the resulting Table structure. The following general features are available to the application through the use of the Extended Userdefined Tables:    

      Elements Sub-elements, Final Elements and subsets of Final Elements may be referenced for use by an Extended User-Defined Table (EUDT). The Element referenced can be directed into any one of 2040 Extended User-defined Tables. The Elements are packed in accordance with the base-type packing rules. It is possible to define pseudo BIT FIELD records for selecting bit field ranges from other tables and mapping them into BIT FIELD records within the Extended User-defined Tables. Two mapping methods are supplied for bit fields: o Index method, which maps -Elements, Sub-elements, Final Elements and subsets of Final Elements of a formal Table. o Offset method, which maps any bit range of a formal Table.

      It is important to note that the Extended User-defined Tables are presumed not to be real tables inside the End Device. Logically they may be thought of as if they are:  Constructed on-the-fly by an End-Device in response to a read or write request  Built at the time of issuance of a blurt from a One-way End-Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      315

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.15.1 Table 140 Extended User-defined Tables Function Limiting Table Table 140 Data Description This table contains the maximum limits for values and control parameters for the Extended User-defined Tables. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 140 Type Definitions TYPE EUDT_BFLD = BIT FIELD OF UINT8 DATA_ACCESS_METHOD : UINT(0..1); INDEX_DEPTH : UINT(2..5); FILLER : FILL(6..7); END; TYPE EUDT_LIMITS_RCD = PACKED RECORD EUDT_CTRL : EUDT_BFLD; NBR_EUDT : UINT16; NBR_INSTANCES : UINT16; NBR_SELECTIONS : UINT16; NBR_CONSTANTS : UINT16; NBR_LABEL_CHARS : UINT8; END; TABLE 140 DIM_EUDT_TBL = EUDT_LIMITS_RCD; Table 140 Element Descriptions Identifier

      Value

      EUDT_BFLD DATA_ACCESS_METHOD 0 1 2 3 INDEX_DEPTH

      1..9 0

      EUDT_LIMITS_RCD EUDT_CTRL NBR_EUDT

      Designates the allowable methods for selecting table entries for placement in an Extended User-defined Table. Only complete tables can be mapped into user tables. Partial tables cannot be mapped. Octet-offset/octet-count and bit-offset/bit-count access method is supported. Index/element-count access method is supported. Access methods 2 and 3 are both supported. The maximum depth (number) of indices supported. Shall be set when DATA_ACCESS_METHOD is 0 or 1. See EUDT_BFLD.

      0..2039 2040..65535

      316

      Definition

      Maximum number of Extended User-defined Tables (virtual tables within one End Device instance) available for selections. Reserved.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      NBR_INSTANCES

      0..65535

      Maximum number of End instances (virtual devices) selections.

      Device Table available for

      NBR_SELECTIONS

      0..65535

      Maximum number of selections per Extended User-defined Table.

      NBR_CONSTANTS

      0..65535

      Maximum supported number of constants in table EUDT_CONSTANTS_TBL.

      NBR_LABEL_CHARS

      0..255

      Maximum supported number of characters per Extended User-defined Table-element label.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      317

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.15.2 Table 141 Extended User-defined Tables Actual Limits Table Table 141 Data Description This table contains the actual limits for values and control parameters for the Extended User-defined Tables. Global Default Table Property Overrides: Role=“ACUTAL” Table 141 Type Definitions TABLE 141 ACT_EUDT_TBL = EUDT_LIMITS_RCD; Table 141 Element Descriptions Identifier

      Value

      EUDT_BFLD

      Redefines: DIM_EUDT_TBL.EUDT_BFLD.

      DATA_ACCESS_METHOD

      Designates the method used for selecting table entries for placement in an Extended Userdefined Table. 0 1 2 3

      INDEX_DEPTH

      1..9 0

      EUDT_LIMITS_RCD

      The maximum depth (number) of indices supported. Shall be set when DATA_ACCESS_METHOD is 0 or 1.

      See EUDT_BFLD. 0..2039 2040..65535

      318

      Complete tables are mapped into user tables. Partial tables cannot be mapped. Octet-offset/octet-count and bit-offset/bit-count access method is used. Index/element-count access method is used. Reserved.

      Redefines: DIM_EUDT_TBL.EUDT_LIMITS_RCD.

      EUDT_CTRL NBR_EUDT

      Definition

      Actual number of Extended User-defined Tables (virtual tables within one End Device instance) available for selections. Reserved.

      NBR_INSTANCES

      0..65535

      Actual number of End Device Table instances (virtual devices) available for selections.

      NBR_SELECTIONS

      0..65535

      Actual number of selections per Extended Userdefined Table.

      NBR_CONSTANTS

      0..65535

      Actual number of constants found in table EUDT_CONSTANTS_TBL.

      NBR_LABEL_CHARS

      0..255

      Actual supported number of characters in extended user defined element label.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.15.3 Table 142 Extended User-defined Selections Table Table 142 Data Description This table contains the Extended User-defined selections for constructing the Extended User-defined Tables records. These selections enable the C12.19 Device application to direct the placement of format Table, Elements, Final Elements, Sub-elements and arbitrary bit field subsets of any Formal Element into an Extended User-defined Table. Global Default Table Property Overrides: Role=“CONTROL” Table 142 Type Definitions TYPE EUDT_MAPPING_BFLD = BIT FIELD OF UINT32 FORMAL_UNIT_SIZE : UINT(0..3); FORMAL_PAD_ENABLE_FLAG : BOOL(4); FORMAL_PADDING : UINT(5..6); FORMAL_LIMITED_FLAG : BOOL(7); FORMAL_NUMERIC_FLAG : BOOL(8); EUDT_PRODUCTION_CTRL : UINT(9..11); FILLER : FILL(12..15); EUDT_ELEMENT_SIZE : UINT(16..31); END; TYPE EUDT_ITEM_RCD = PACKED RECORD EUDT_ELEMENT_NAME : STRING(ACT_EUDT_TBL.NBR_LABEL_CHARS); FORMAL_TABLE_ID : TABLE_IDB_BFLD; IF ACT_EUDT_TBL.NBR_INSTANCES > 1 THEN FORMAL_INSTANCE_NBR : UINT16; END; EUDT_MAPPING

      : EUDT_MAPPING_BFLD;

      SWITCH ACT_EUDT_TBL.DATA_ACCESS_METHOD OF CASE 1: FORMAL_BYTE_OFFSET : UINT24; FORMAL_OFFSET_NEXT : UINT24; CASE 2: FORMAL_INDEX : ARRAY[ACT_EUDT_TBL. INDEX_DEPTH] OF UINT16; FORMAL_ELEMENT_COUNT : UINT16; FORMAL_INDEX_NEXT: ARRAY[ACT_EUDT_TBL. INDEX_DEPTH] OF UINT16; END; FORMAL_BIT_OFFSET : UINT8; FORMAL_BIT_COUNT : UINT16 ASSERT ( ACT_EUDT_TBL.DATA_ACCESS_METHOD == 2 && FORMAL_BIT_COUNT > 0 && FORMAL_ELEMENT_COUNT > 1 ) ERROR “Invalid use of FORMAL_ELEMENT_COUNT != 1 and FORMAL_BIT_COUNT > 0” ; ; { The semicolon closes FORMAL_BIT_COUNT phrase.} FORMAL_REPEAT_COUNT

      : UINT16;

      END; TYPE TABLE_SELECTIONS_RCD = PACKED RECORD

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      319

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      EUDT_ID : TABLE_IDB_BFLD; SELECTIONS : ARRAY[ACT_EUDT_TBL.NBR_SELECTIONS] OF EUDT_ITEM_RCD; END; TYPE EUDT_SELECTIONS_RCD = PACKED RECORD TABLE_SELECTIONS : ARRAY[ACT_EUDT_TBL.NBR_EUDT] OF TABLE_SELECTIONS_RCD; END; TABLE 142 EUDT_SELECTIONS_TBL = EUDT_SELECTIONS_RCD; Table 142 Element Descriptions Identifier

      Value

      Definition

      EUDT_MAPPING_BFLD FORMAL_UNIT_SIZE

      Defines the Formal Element size and data type for accessing the selection from a Table indicated by FORMAL_TABLE_ID. The type casting takes place before the application of FORMAL_BIT_COUNT and FORMAL_BIT_OFFSET. For example, when FORMAL_BIT_OFFSET=5 and FORMAL_BIT_COUNT=3, a selection from a 16 bit wide Element will collect bits starting at Formal Element bit position 4 (where the first bit is in position 0) to bit position 6, inclusive. This is independent of the DATA_ORDER value found in GEN_CONFIG_TBL. The type also affects the interpretation of zero padding and sign extension. Numeric values are padded with zeros, CHAR values are padded with spaces (20H). 0 1 2 3 4 5 6 7 8 9 10 11

      12..15

      320

      8 bit Element. 16 bit Element. 24 bit Element. 32 bit Element. 40 bit Element. 48 bit Element. 64 bit element. CHAR or STRING Element. NI_FMAT1 Element. NI_FMAT2 Element. BCD Element. Element is an entire PACKED RECORD, BIT FIELD or built-in type. The FORMAL_BIT_OFFSET and the FORMAL_BIT_COUNT shall be set to zero (0). The entire Element and its inner member shall be referenced. Reserved.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 FORMAL_PAD_ENABLE_FLAG

      A flag that enables or disables the selectors FORMAL_PADDING, and FORMAL_LIMITED_FLAG.

      FALSE

      All source padding functions are disabled. Element transfer will begin with low order bits and continue toward high order bits. Unavailable source bits shall be set to zero.

      TRUE

      Source padding functions are enabled. Source padding, sign extension and limits will be set as per FORMAL_PADDING, and FORMAL_LIMITED_FLAG.

      FORMAL_PADDING

      When the number of bits in the destination element is larger than the source element then sign extension or padding may be required. FORMAL_UNIT_SIZE dictates the sign extension algorithm. 0

      Sign extension is required. The most significant bits are signed extended according to the Formal Element type indicated by FORMAL_UNIT_SIZE

      1

      Pad with fill octets. Copy octets starting at source bit to target with zero fill padding.

      2

      Lead with fill octets. Copy octets starting at source bit to target with zero fill leading.

      3

      Reserved.

      FORMAL_LIMITED_FLAG

      Controls the roll-over or limiting behavior of a numeric field that cannot be represented in a target space that has lesser resolution than that of the source. FALSE TRUE

      FORMAL_NUMERIC_FLAG

      ANSI

      Do not limit value. On overflow the numeric result will not be limited (truncated or rolled over). Limit value. On overflow the numeric result will be the smallest negative or the largest positive representation of the overflowing numeric field. Example: if a 16 bit signed integer has the value -1000 then when limited to 8 bit it will be set to set to -128. An indication that the selected field shall be treated as a number. This flag forces non numeric fields, such as STRING, to be treated as a text representation of a number, and be converted to or from numeric binary equivalent of the target. Initialized to zero (0), numeric

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      321

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que conversion processing shall stop upon detection of the end of selected field, or upon detection of invalid numeric field value. Example: Assume that the FORMAL_UNIT_SIZE is 7 (STRING) and EUDT_PRODUCTION_CTRL is 2 (UINT32), then a formal text value of “123” shall be mapped to the UINT32 value 0000007BH before placing it in the target collection BIT FIELD. FALSE TRUE

      EUDT_PRODUCTION_CTRL

      EUDT_ELEMENT_SIZE

      EUDT_ITEM_RCD

      322

      Do not map the non-numeric value to a number. Map the non-numeric value to a number according to the corresponding value of EUDT_PRODUCTION_CTRL. Controls the bit-packing of BIT FIELDs of a target EUDT bit field element. First members of a BIT FIELD shall begin on an octet boundary with zero octet padding. Bit stuffing shall begin with bit 0 of the indicated data type and progress toward the highest bit position available.

      0

      Start of aUINT8 bit field or collection of UINT8s. First member of a BIT FIELD OF UINT8 or a non bit-field member.

      1

      Start of a UINT16. First member of a BIT FIELD OF UINT16 or a non bit-field member.

      2

      Start of a UINT32. First member of a BIT FIELD OF UINT32 or a non bit-field member.

      3

      Start of a UINT64. First member of a BIT FIELD OF UINT64 or a non bit-field member.

      4

      Next BIT FIELD member in sequence

      5

      Start of an Element of a PACKED RECORD, BIT FIELD or built-in type.

      6..7

      Reserved.

      0..65535

      Size of one EUDT element in bits. When the source element size is smaller than the target element size then only fitting bits will be transferred, and may be padded, sign extended or truncated. When the source element size is greater than the target element size then the target element may be truncated or be limited. See FORMAL_PAD_ENABLE_FLAG A single Formal Element to EUDT element association description. This identifies C12.19

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Device Formal Table- Elements or subsets of Elements (elements other than EUDT elements) for transport using an Extended User-defined Table. EUDT_ELEMENT_NAME

      The optionally assigned label for the EUDT element used in the production of EDL schemas. If the size of this element is zero or it contain only spaces then the element name is not assigned (it may be determined by an AMR application to be identical to the element name that is referenced by this selection). If the element name contains a period then the label to the left of the period represents the name of the container elements (as may be needed when this element is the first member of a bitfield) and the label on the right hand side of the period is the bit-field member name.

      FORMAL_TABLE_ID

      The formal table identifier. This shall not be an EUDT or a UDT data table.

      FORMAL_INSTANCE_NBR

      0.. 65535

      EUDT_MAPPING

      The End Device Table set instance number used for selecting the formal table. The instance number refers to a logical table set number that exists inside the same physical device. See EUDT_MAPPING_BFLD.

      FORMAL_BYTE_OFFSET

      0..16777215

      Offset in octets to the beginning of a formal element relative to the beginning of the Table which contains that Element. It’s not a requirement for the End Device to validate that each FORMAL_BYTE_OFFSET is programmed effectively to select a valid element, This task is the responsibility of the programming device.

      FORMAL_OFFSET_NEXT

      0.. 16777215

      Offset in bytes to the next element or group of elements relative to the beginning of current selection. The initial selection is defined by FORMAL_BYTE_OFFSET. Additional selections up to FORMAL_REPEAT_COUNT may be made by advancing FORMAL_BYTE_OFFSET by the value of FORMAL_OFFSET_NEXT. The Final Elements FORMAL_BIT_OFFSET and FORMAL_BIT_COUNT shall be applied repeatedly to each selection independently. This is intended to facilitate access to ARRAY Elements such as profile data or self-read.

      FORMAL_INDEX

      An array of UINT16 containing ACT_EUDT_TBL.INDEX_LEVEL indices that represent the source of an element to be placed in the next available slot of the desired extended user defined table. The element may

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      323

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que be any table object, table element, terminal element or a sub-element. The index value of FFFF H represents the end of the list.

      FORMAL_ELEMENT_COUNT 0..65535

      The number of Formal Elements selected. This value shall be set to zero for unused selections.

      FORMAL_INDEX_NEXT

      An array of UINT16 containing ACT_EUDT_TBL.INDEX_LEVEL indices that represent the relative offset to the Formal Element to be associated in the next selection in a sequence of selections. The initial selection is defined by FORMAL_INDEX. Additional selections up to FORMAL_REPEAT_COUNT may be made by advancing the position of FORMAL_INDEX by FORMAL_INDEX_NEXT to the next element (Example 1. Assume that FORMAL_INDEX=1.2.3, FORMAL_INDEX_NEXT=0.1.0 and FORMAL_REPEAT_COUNT=3 then Formal Elements 1.2.3, 1.3.3 and 1.4.3 shall be selected for placement in an EUDT. Example 2. Assume that FORMAL_INDEX=1.2.3, FORMAL_INDEX_NEXT=1.1.0 and FORMAL_REPEAT_COUNT=3 then Formal Elements 1.2.3, 2.3.3 and 3.4.3 shall be selected for placement in an EUDT. ) FORMAL_ELEMENT_COUNT, FORMAL_BIT_OFFSET and FORMAL_BIT_COUNT are applied repeatedly to each selection independently. This is intended to facilitate access to ARRAY Elements such as profile data or self-read.

      FORMAL_BIT_OFFSET

      0..255

      Offset in bits to the beginning of a bit sequence relative to the beginning of the selected element. This offset is independent of the GEN_CONFIG_TBL.DATA_ORDER, since bit offset zero (0) points to bit position zero (the least significant bit) of the selected element. The compliant application shall logically expand the Final Element referred to by the FORMAL_BYTE_OFFSET before applying the FORMAL_BIT_OFFSET. This value shall be ignored (i.e. no access to bit fields of sub-final-elements) when ACT_EUDT_TBL.DATA_ACCESS_METHOD = 2 and FORMAL_BIT_COUNT = 0.

      FORMAL_BIT_COUNT

      324

      0..65535

      The number of bits selected. This value shall be set to zero for unused selections.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      Assert: ERROR on (ACT_EUDT_TBL. DATA_ACCESS_METHOD == 2 && FORMAL_BIT_COUNT > 0 && FORMAL_ELEMENT_COUNT > 1) due to “Invalid use of FORMAL_ELEMENT_COUNT != 1 and FORMAL_BIT_COUNT > 0". FORMAL_REPEAT_COUNT

      0..65535

      The number of times to repeat the selection made in this entry. This provides a capability for the selection of elements from Formal ARRAYs for delivery by EUDTs. The value 0 means that there is no repeat; only one Element shall be selected. The value 1 means that there is one repeat, therefore, two Elements shall be selected.

      TABLE_SELECTIONS_RCD EUDT_ID

      The Extended User-defined Table that is a collection of Elements from other tables from within the End-Device that have been selected for transmission via the EUDT_ID Extended User-defined Table.

      SELECTIONS

      An array of FORMAL_ITEM_RCD. Array of instructions that collect and direct Table values to and from Extended User-defined Table. The Extended User-defined Tables are populated sequentially based on these selections. When a constructed element from a selection is not a bit-field member (by virtue of EUDT_PRODUCTION_CTRL being “Next BIT FIELD member in sequence”) than it shall align on the next octet boundary with zero fill. Also if it is the first member of a bit-field then it may optionally have a dot-separated name, where the label to the left of the dot is the name of the bit-field and the name to the right of the dot is the name of the bit-field member element. Collections of bit fields are grouped into BIT_FIELD types for transmission in accordance with the type defined in EUDT_PRODUCTION_CTRL These are assembled into the extended user defined BIT FIELD table-element starting with bit field position 0. Selections made in any EUDT shall only reference into Formal data Table Elements. Also they shall not reference any UDT (Tables 84-89) or EUDT data table elements.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      325

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      9.15.4 Table 143 Extended User-defined Constants Table Table 143 Data description This table provides a place holder for placing various values that may be selected as Elements by Table 142, EUDT_SELECTIONS_TBL. A typical use for this Table is to fill elements with bit patterns or numeric values that are non-changing and cannot be constructed from a reference to any standard or manufacturer defined Table Final Element. Global Default Table Property Overrides: Role=“CONTROL” Table 143 Type Definitions TYPE EUDT_CONSTANTS_RCD = PACKED RECORD CONSTANT : ARRAY [ACT_EUDT_TBL.NBR_CONSTANTS] OF INT64; END; TABLE 143 EUDT_CONSTANTS_TBL = EUDT_CONSTANTS_RCD; Table 143 Element Descriptions Identifier

      Value

      EUDT_CONSTANTS_RCD CONSTANT

      326

      Definition An array of INT64. Entries from this array may be seeded (programmed) with values and referenced fully or in part from Table 142, EUDT_SELECTIONS_TBL.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      9.16 Decade 15: Quality of Service Decade 15 Name QUALITY_SERVICE_DEC Decade 15 Data Description This Decade provides the Tables required to capture information that is not necessarily used for the production commodity consumption reports. The information recorded pertains to the evaluation of the sustained quality commodity delivered. In the case of electrical services, these Tables are the placeholder of Power Quality monitoring controls and data values. In the context of water and gas industries, these Tables are the place-holder of for reports on water and gas commodity quality (such as purity) and sustained delivery of the commodities. Time-domain and frequency-domain input sample data (waveforms) can be captured periodically and as a result of a Quality of Service event trigger. When the commodities’ properties or their sustained delivery fall below certain acceptable limits (as indicated by a service contract or regulation) then it leads to a Quality of Service condition. For example, in the electrical industry context, it is desirable to record a voltage sag or short duration voltage interruption. The recording of these Events is known to the industry as power quality Events. However, the continual recurrence of voltage sag or repeated short duration power interruptions elevates power quality Events to Quality of Service Event. This Decade provides the necessary framework to accommodate both. Decade 15 Type Definitions TYPE TD_SAMPLE_FORMAT_RCD = PACKED RECORD SWITCH QUALITY_CONTROL_TBL.TD_SAMPLES_FORMAT_CODE OF CASE 1 : ITEM : UINT8; CASE 2 : ITEM : UINT16; CASE 4 : ITEM : UINT32; CASE 8 : ITEM : INT8; CASE 16: ITEM : INT16; CASE 32: ITEM : INT32; CASE 64: ITEM : NI_FMAT1; CASE 128: ITEM : NI_FMAT2; END; END; TYPE FD_SAMPLE_FORMAT_RCD = PACKED RECORD SWITCH QUALITY_CONTROL_TBL. FD_SAMPLES_FORMAT_CODE OF CASE 1 : ITEM : UINT8; CASE 2 : ITEM : UINT16; CASE 4 : ITEM : UINT32; CASE 8 : ITEM : INT8; CASE 16: ITEM : INT16; CASE 32: ITEM : INT32; CASE 64: ITEM : NI_FMAT1; CASE 128: ITEM : NI_FMAT2; END; END; TYPE WAVEFORM_LIST_STATUS_BFLD = BIT FIELD OF UINT8 BLOCK_ORDER : UINT(0..0); OVERFLOW_FLAG : BOOL(1); LIST_TYPE : UINT(2..2);

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      327

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      BLOCK_INHIBIT_OVERFLOW_FLAG INTERVAL_ORDER ACTIVE_MODE_FLAG TEST_MODE FILLER

      : BOOL(3); : UINT(4..4); : BOOL(5); : UINT(6..6); : FILL(7..7);

      END; TYPE WAVEFORM_LIST_STATUS_RCD = PACKED RECORD STATUS_FLAGS : WAVEFORM_LIST_STATUS_BFLD; NBR_VALID_ENTRIES : UINT16; LAST_ENTRY_ELEMENT : UINT16; LAST_ENTRY_SEQ_NBR : UINT32; NBR_UNREAD_ENTRIES : UINT16; NBR_VALID_INT : UINT16; END; Decade 15 Element Descriptions Identifier TD_SAMPLE_FORMAT_RCD

      Value

      ITEM

      The data type to use per QUALITY_CONTROL_TBL.TD_SAMPLES_FO RMAT_CODE.

      FD_SAMPLE_FORMAT_RCD

      A generalized data type used to express the format to be used for frequency-domain waveform transformed data representation in quality of service Tables. Redefines: LP_DATA_SET1_TBL.INT_FMT1_RCD.

      ITEM

      The data type to use per QUALITY_CONTROL_TBL.FD_SAMPLES_FO RMAT_CODE.

      WAVEFORM_LIST_STATUS_BFLD

      BLOCK_ORDER

      The generic waveform capture list management bit field. Redefines: LP_STATUS_TBL.LP_SET_STATUS_BFLD as follows: 0 1

      OVERFLOW_FLAG

      328

      Definition A generalized data type used to express the format to be used for time-domain waveform data representation in quality of service Tables. Redefines: LP_DATA_SET1_TBL.INT_FMT1_RCD.

      FALSE TRUE

      Blocks of waveform data are transported in ascending order (N is older than N+1). Blocks of waveform data are transported in descending order (N is newer than N+1). Overflow has not occurred. Overflow has occurred. An attempt was made to enter an interval in a new data block such that the number of unread blocks exceeded the actual number of possible blocks in waveform table storage.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 LIST_TYPE

      0 1

      BLOCK_INHIBIT_OVERFLOW_FLAG FALSE TRUE INTERVAL_ORDER

      ANSI

      FIFO (First-In-First-Out) waveform storage. Circular list waveform storage. End Device is not inhibiting waveform capture once an overflow occurs. End Device inhibits waveform capture once an overflow occurs.

      0

      Ascending. Samples in each block of waveform data are transported in ascending sample ordinal position order (sample N is older or lower ordinal position than sample N+1).

      1

      Descending. Samples in each block of waveform data are transported in descending sample ordinal position order (sample N is newer or higher ordinal position than sample N+1).

      ACTIVE_MODE_FLAG

      FALSE TRUE

      The waveform recorder table is not enabled. The waveform recorder table is enabled.

      TEST_MODE

      0

      The waveform recorder is set-up for normal mode. The waveform recorder is set-up for test mode.

      1 WAVEFORM_LIST_STATUS_RCD

      The generic waveform capture list status management packed record. Redefines: LP_STATUS_TBL.LP_SET_STATUS_RCD. Preferred properties for this type: Atomic, ReadOnly.

      STATUS_FLAGS

      See WAVEFORM_LIST_STATUS_BFLD.

      NBR_VALID_ENTRIES

      0..65535

      Number of valid waveform data blocks in the associated table. The range is zero (0), to mean no data blocks in the table, to the actual dimension of the number of waveform data blocks. The block is considered valid when at least one sample is written.

      LAST_ENTRY_ELEMENT

      0..65535

      The array element of the newest valid data block in the waveform data array. This field is valid only if NBR_VALID_ENTRIES is greater than zero (0).

      LAST_ENTRY_SEQ_NBR

      0..4294967295 The sequence number of the last element (.LAST_ENTRY_ELEMENT) in the waveform data array.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      329

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NBR_UNREAD_ENTRIES

      0..65535

      The number of data blocks that have not been read. This number is only updated through a procedure.

      NBR_VALID_INT

      0..65535

      Number of valid samples stored in the most current block array. The range is zero (0), to mean no data in the array, to the actual dimension of the number of possible entries per block.

      9.16.1 Table 150 Quality of Service Dimension Limits Table Table 150 Data Description This Table defines the maximum dimensions and limits for the Quality of Service Decade. Global Default Table Property Overrides: Role=“LIMITING”, Accessibility=“READONLY” Table 150 Type Definitions TYPE QS_FEATURES_BFLD = BIT FIELD OF UINT32 INHIBIT_OVF_QS_LOG_FLAG : BOOL(0); NOTIFY_OVF_QS_LOG_FLAG : BOOL(1); INHIBIT_OVF_TD_ASYNC_FLAG NOTIFY_OVF_TD_ASYNC_FLAG TD_SCALAR_DIVISOR_FLAG

      : BOOL(2); : BOOL(3); : BOOL(4);

      INHIBIT_OVF_FD_ASYNC_FLAG NOTIFY_OVF_FD_ASYNC_FLAG SCALAR_DIVISOR_FD_ASYNC_FLAG

      : BOOL(5); : BOOL(6); : BOOL(7);

      INHIBIT_OVF_TD_PERIODIC_FLAG NOTIFY_OVF_TD_PERIODIC_FLAG SCALAR_DIVISOR_TD_PERIODIC_FLAG

      : BOOL(8); : BOOL(9); : BOOL(10);

      INHIBIT_OVF_FD_PERIODIC_FLAG NOTIFY_OVF_FD_PERIODIC_FLAG SCALAR_DIVISOR_FD_PERIODIC_FLAG

      : BOOL(11); : BOOL(12); : BOOL(13);

      REPEAT_TIME_DOMAIN_FLAG REPEAT_FREQUENCY_DOMAIN_FLAG FREQUENCY_DOMAIN_COMPLEX_FLAG FREQUENCY_DOMAIN_PHASOR_FLAG QUALITY_RESET_CTR_FLAG INCIDENT_SORTABLE_FLAG COMMON_SAMPLING_RATE_FLAG COMMON_NBR_OF_SAMPLES_FLAG INTERHARMONICS_FLAG FILLER

      : BOOL(14); : BOOL(15); : BOOL(16); : BOOL(17); : BOOL(18); : BOOL(19); : BOOL(20); : BOOL(21); : BOOL(22); : FILL(23..31);

      END; TYPE QS_LIMITS_RCD = PACKED RECORD FEATURES NBR_OF_EVENT_IDS NBR_OF_EVENTS NBR_OF_INCIDENTS

      330

      : QS_FEATURES_BFLD; : UINT16; : UINT16; : UINT16;

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 NBR_OF_COINCIDENT_VALUES WAVEFORM_FORMATS TD_SAMPLING_RATE NBR_OF_TD_SAMPLES NBR_OF_TIME_DOMAIN_BLOCKS NBR_OF_TIME_DOMAIN_CHANNELS NBR_OF_TD_CHANNELS_PER_BLOCK NBR_OF_TD_SAMPLES_PER_BLOCK NBR_OF_TD_PREFETCH_SAMPLES

      ANSI

      : UINT16; : WAVEFORM_FORMATS_BFLD; : UINT32; : UINT32; : UINT16; : UINT16; : UINT16; : UINT16; : UINT32;

      FD_SAMPLING_RATE : NI_FMAT2; NBR_OF_FD_SAMPLES : UINT32; NBR_OF_SPECTRAL_COMPONENTS : UINT16; NBR_OF_FREQUENCY_DOMAIN_BLOCKS : UINT16; NBR_OF_FREQUENCY_DOMAIN_CHANNELS : UINT16; NBR_OF_FD_CHANNELS_PER_BLOCK : UINT16; NBR_OF_FD_SPECTRA_PER_BLOCK : UINT16; NBR_OF_FD_PREFETCH_SAMPLES : UINT32; LABEL_LENGTH : UINT8; END; TABLE 150 DIM_QUALITY_OF_SERVICE_TBL = QS_LIMITS_RCD; Table 150 Element Descriptions Identifier

      Value

      QS_FEATURES_BFLD

      Definition This bit field provides indications about the End Device maximum waveform capture capabilities.

      INHIBIT_OVF_QS_LOG_FLAG FALSE TRUE NOTIFY_OVF_QS_LOG_FLAG

      End Device is not capable of inhibiting block overflow on QUALITY_LOG_TBL. End Device is capable of inhibiting block overflow on QUALITY_LOG_TBL. This is a notification capability indication on block overflow for QUALITY_LOG_TBL. When this capability is available and it is enabled, then the End Device shall utilize the appropriate notification mechanism of the communication protocol to inform a remote Notification Host about the QUALITY_LOG_TBL block overflow.

      FALSE TRUE

      INHIBIT_OVF_TD_ASYNC_FLAG FALSE TRUE

      End Device is not capable of notifying a C12.22 Notification Host about block overflows of QUALITY_LOG_TBL. End Device is capable of notifying a Notification Host about block overflows of QUALITY_LOG_TBL. End Device is not capable of inhibiting block overflow on TD_ASYNC_TBL. End Device is capable of inhibiting block overflow on TD_ASYNC_TBL.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      331

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      NOTIFY_OVF_TD_ASYNC_FLAG

      FALSE TRUE

      This is a notification capability indication on block overflow for TD_ASYNC_TBL. When this capability is available and it is enabled then the End Device shall utilize the appropriate notification mechanism of the communication protocol to inform a remote Notification Host about the TD_ASYNC_TBL block overflow. End Device is not capable of notifying Notification Host about block overflows TD_ASYNC_TBL. End Device is capable of notifying Notification Host about block overflows TD_ASYNC_TBL.

      a of a of

      TD_SCALAR_DIVISOR_FLAG FALSE

      End Device is not capable of having scalars and divisors associated with TD_ASYNC_TBL waveform data.

      TRUE

      End Device is capable of having scalars and divisors associated with TD_ASYNC_TBL waveform data.

      INHIBIT_OVF_FD_ASYNC_FLAG FALSE TRUE NOTIFY_OVF_FD_ASYNC_FLAG

      FALSE TRUE

      SCALAR_DIVISOR_FD_ASYNC_FLAG FALSE TRUE

      INHIBIT_OVF_TD_PERIODIC_FLAG FALSE

      332

      End Device is not capable of inhibiting block overflow on FD_ASYNC_TBL. End Device is capable of inhibiting block overflow on FD_ASYNC_TBL. This is a notification capability indication on block overflow for FD_ASYNC_TBL. When this capability is available and it is enabled then the End Device shall utilize the appropriate notification mechanism of the communication protocol to inform a remote Notification Host about the FD_ASYNC_TBL block overflow. End Device is not capable of notifying Notification Host about block overflows FD_ASYNC_TBL. End Device is capable of notifying Notification Host about block overflows FD_ASYNC_TBL.

      a of a of

      End Device is not capable of having scalars and divisors associated with FD_ASYNC_TBL waveform data. End Device is capable of having scalars and divisors associated with FD_ASYNC_TBL waveform data. End Device is not capable of inhibiting block overflow on TIME_DOMAIN_TBL.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      TRUE

      End Device is capable of inhibiting block overflow on TIME_DOMAIN_TBL.

      NOTIFY_OVF_TD_PERIODIC_FLAG

      This is a notification capability indication on block overflow for TIME_DOMAIN_TBL. When this capability is available and it is enabled, then the End Device shall utilize the appropriate notification mechanism of the communication protocol to inform a remote Notification Host about the TIME_DOMAIN_TBL block overflow.

      FALSE TRUE

      SCALAR_DIVISOR_TD_PERIODIC_FLAG FALSE TRUE

      INHIBIT_OVF_FD_PERIODIC_FLAG FALSE TRUE NOTIFY_OVF_FD_PERIODIC_FLAG

      FALSE TRUE

      SCALAR_DIVISOR_FD_PERIODIC_FLAG FALSE

      TRUE

      End Device is not capable of notifying a Notification Host about block overflows of TIME_DOMAIN_TBL. End Device is capable of notifying a C12.19 Notification Host about block overflows of TIME_DOMAIN_TBL. End Device is not capable of having scalars and divisors associated with TIME_DOMAIN_TBL waveform data. End Device is capable of having scalars and divisors associated with TIME_DOMAIN_TBL waveform data. End Device is not capable of inhibiting block overflow on FD_SPECTRA_TBL. End Device is capable of inhibiting block overflow on FD_SPECTRA_TBL. This is a notification capability indication on block overflow for FD_SPECTRA_TBL. When this capability is available and it is enabled, then the End Device shall utilize the appropriate notification mechanism of the communication protocol to inform a remote Notification Host about the FD_SPECTRA_TBL block overflow. End Device is not capable of notifying Notification Host about block overflows FD_SPECTRA_TBL. End Device is capable of notifying Notification Host about block overflows FD_SPECTRA_TBL.

      a of a of

      End Device is not capable of having scalars and divisors associated with FD_SPECTRA_TBL waveform data. End Device is capable of having scalars and divisors associated with FD_SPECTRA_TBL waveform data.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      333

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      REPEAT_TIME_DOMAIN_FLAG FALSE TRUE REPEAT_FREQUENCY_DOMAIN_FLAG

      FALSE TRUE

      FREQUENCY_DOMAIN_COMPLEX_FLAG

      FALSE TRUE FREQUENCY_DOMAIN_PHASOR_FLAG

      FALSE TRUE QUALITY_RESET_CTR_FLAG

      An indication if the End Device can perform counted repeated waveform transform (frequency domain) captures following a quality of service event. End Device is not capable of repeated counted waveform transform (frequency domain) captures. End Device is capable of repeated counted waveform transform (frequency domain) captures. An indication if the End Device is capable of delivering frequency domain spectral analysis encoded complex elements (the mathematical real and imaginary spectral components). End Device is not capable of reporting spectral components as complex elements. End Device is capable of reporting spectral components as complex elements. A flag that indicates whether the End Device is capable of delivering frequency domain spectral analysis encoded as spectral component phase angle and related magnitude pairs as elements. End Device is not capable of reporting spectral components as phase angles and magnitude. End Device is capable of reporting spectral components as phase angles and magnitude. An indication that counting is possible.

      FALSE TRUE INCIDENT_SORTABLE_FLAG

      quality

      counters resets

      End Device is not capable of counting quality counters resets. End Device is capable of counting quality counters resets. An indication of a capability to sort the Quality of Service incidents according to a user specified priority. See QUALITY_CONTROL_TBL.

      FALSE TRUE

      334

      An indication if the End Device can perform counted repeated time-domain waveform capture following a Quality of Service event, End Device is not capable of repeated counted waveform captures. End Device is capable of repeated counter waveform captures.

      End Device cannot be programmed to sort incidents by criteria. End Device can be programmed to sort incidents by criteria.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008 COMMON_SAMPLING_RATE_FLAG

      FALSE

      TRUE

      COMMON_NBR_OF_SAMPLES_FLAG

      FALSE

      TRUE

      INTERHARMONICS_FLAG

      TRUE

      WAVEFORM_FORMATS_BFLD

      INV_UINT8_FLAG

      FALSE

      FALSE TRUE

      INV_UINT32_FLAG

      End Device cannot be programmed with different sampling rate for the purpose of waveform capture. All Quality of Service events shall be captured at the same sampling rate. End Device can be programmed with different sampling rate for the purpose of waveform capture. Each Quality of Service event may be captured at the a different sampling rate. An indication of a capability to collect a different number of samples for waveform captures on a per-event type basis. End Device cannot be programmed with different number of samples for the purpose of waveform capture. All Quality of Service events shall capture the same number of samples. End Device can be programmed with different number of samples for the purpose of waveform capture. All Quality of Service events can capture different numbers of samples. to

      store

      The End Device is not capable of recording interharmonics in the frequency domain. All spectral components recorded are an integer multiple of the fundamental frequency. The End Device is capable of recording interharmonics in the frequency domain. All spectral components recorded are discrete frequencies. This set of Booleans specifies the format(s) acceptable for use in waveform capture tables. Redefines: DIM_LP_TBL. LP_FMATS_BFLD.

      TRUE INV_UINT16_FLAG

      An indication of a capability to provide a different sampling rate for waveform captures on a per-event type basis.

      An indication of a capability interharmonic spectral components. FALSE

      ANSI

      FALSE TRUE

      UINT8 format for waveform capture is not supported by this End Device. UINT8 format for waveform capture is supported by this End Device. UINT16 format for waveform capture is not supported by this End Device. UINT16 format for waveform capture is supported by this End Device. UINT32 format for waveform capture is not supported by this End Device. UINT32 format for waveform capture is supported by this End Device.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      335

      ANSI C12.19-2008 aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que

      INV_INT8_FLAG

      FALSE TRUE

      INV_INT16_FLAG

      FALSE TRUE

      INV_INT32_FLAG

      FALSE TRUE

      INV_NI_FMAT1_FLAG

      FALSE TRUE

      INV_NI_FMAT2_FLAG

      FALSE TRUE

      QS_LIMITS_RCD

      336

      INT8 format for waveform capture is not supported by this End Device. INT8 format for waveform capture is supported by this End Device. INT16 format for waveform capture is not supported by this End Device. INT16 format for waveform capture is supported by this End Device. INT32 format for waveform capture is not supported by this End Device. INT32 format for waveform capture is supported by this End Device. NI_FMAT1 format for waveform capture is not supported by this End Device. NI_FMAT1 format for waveform capture is supported by this End Device. NI_FMAT2 format for waveform capture is not supported by this End Device. NI_FMAT2 format for waveform capture is supported by this End Device. This packed record defines the End Device maximum Quality of Service operational limits.

      FEATURES

      See QS_FEATURES_BFLD.

      NBR_OF_EVENT_IDS

      Maximum total number of unique event identifier descriptors supported by this End Device.

      NBR_OF_EVENTS

      Maximum number of (lack-of) Quality of Service events that the End Device can record internally.

      NBR_OF_INCIDENTS

      Maximum number of service quality incident reports recorded in QUALITY_INCIDENTS_TBL.

      NBR_OF_COINCIDENT_VALUES

      Maximum number of coincidental data sources that can be bound to any one Quality of Service event recorded.

      WAVEFORM_FORMATS

      See WAVEFORM_FORMATS_BFLD.

      TD_SAMPLING_RATE

      Largest possible sampling rate, in hertz (Hz), supported by this End Device when capturing time-domain waveform data.

      NBR_OF_TD_SAMPLES

      Largest possible number data samples that can be collected in one waveform capture by this End Device when capturing time-domain waveform data.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 2 al texto que desea que aparezca aquí.

      ¡Error! Utilice la ficha Inicio para aplicar Heading 1 al texto que desea que aparezca aquí. C12.19-2008

      ANSI

      NBR_OF_TIME_DOMAIN_BLOCKS

      Maximum number of time-domain waveform blocks that the End Device can capture in ASYNC_TIME_DOMAIN_TBL.

      NBR_OF_TIME_DOMAINS_CHANNELS

      Maximum number of time-domain waveform channels (independent sources) that the End Device can capture per Quality of Service event.

      0

      End Device is not capable of capturing timedomain waveforms.

      1..65535

      End Device is capable of capturing time-domain waveforms.

      NBR_OF_TD_CHANNELS_PER_BLOCK

      Maximum number of time-domain waveform channels (independent sources) that the End Device can capture per quality of service data block. This value shall be ignored if NBR_OF_TIME_DOMAINS_CHANNELS = 0. Otherwise 0 < NBR_OF_TD_CHANNELS_PER_BLOCK 1000 then report 1 otherwise 0, based on the demands reported in Table 28, at indices 2 and 6. “((ST(27).PRESENT_DEMAND[0].DEMAND_VALUE + ST(27).PRESENT_DEMAND[6]. DEMAND_VALUE) > 1000) ? 1 : 0” Example 5: The total energy consumed across Phase A (index 2), Phase B (index 4) and Phase C (index 6). “@SUM(ST(27).PRESENT_VALUE[2], ST(27).PRESENT_VALUE[4], ST(27).PRESENT_VALUE[6])” Example 6: Same as example 5, using indices instead of mnemonics. “@SUM(ST(27).1.2, ST(27).1.4, ST(27).1.6)”

      458

      Historical Background

      ANSI C12.19-2008

      roperties Properties represent information that can be attached to an End Device Document Form definition or any item in the definition. A single property or multiple properties can be attached to a End Device, Table, Procedure, PACKED RECORD or BIT FIELD types; or any member of a PACKED RECORD, BIT FIELD or SET declaration such as Element, Sub-element or Final element. The DESCRIPTION property is common across all items. This property allows information about an item to be specified. The LABEL property is common across all items. It allows a short meaningful string to be associated with an item definition. A label is intended to be a alternate presentation text for the name of the item. The name of an item shall be used in TDL expression only. The ENUM property enumerates a list of valid values for an element. This property can only be applied to a final element. Values that are not explicitly listed shall be considered invalid. The ASSERT property provides a validation expression for an element or describes an inter-field or inter-table constraint. text

      ::=

      ["] anyChar* ["] { Semi colons are allowed within text as they are distinguished from the terminal ';' by virtue that they are enclosed within double quotes. A double quote may be present by prefixing it with the escape character. e.g. "This is a valid \"text\" ; followed by a semicolon" ; } ;

      enumMember ::=

      (number | true| false) S* '=' S* text S* ';' | S* enumMember S* ;

      enumerator

      enum S+ (enumIdentifier S* '=' S*)? enumMember* end S* ';' | S* enumerator S* ;

      ::=

      memberProperties

      ::=

      commonProperties enumerator? ;

      commonProperties

      ::=

      ((label S* text S* ';') ? (description S* text S* ';')? (assert S* '(' condition ')' S* (('ERROR' | 'WARN' | 'INFO') S *)? / constraint : text “Default assertion is 'ERROR'” text S* ';')* ) | S* commonProperties S* ;

      fieldProperties

      ::=

      field simpleElementName commonProperties ;

      typeProperties

      ::=

      type derivedTypeReference commonProperties? fieldProperties* ;

      tblProperties

      ::=

      commonProperties? typeProperties* ;

      procProperties

      ::=

      commonProperties? typeProperties* ;

      properties

      ::=

      property S* of S* table tblIdentifier tblProperties end ';' | property S* of S* procedure procIdentifier procProperties end ';' | property S* of S* typeProperties end ';' | S* properties S* ;

      Example:

      459

      ANSI C12.19-2008

      Historical Background

      PROPERTY OF TABLE ACT_LP_TBL LABEL “Actual load profile table” ; DESCRIPTION “ACT_LP_TBL (Table 61) contains actual values for the Load Profile application limiting parameters. These parameters provide for up to four independent sets of Load Profile data.” ; ASSERT(ACT_LP_TBL.LP_MEMORY_LEN >= (ACT_LP_TBL.NBR_BLKS_SET1 + 8 ) * ACT_LP_TBL.NBR_BLK_INTS_SET1 * ACT_LP_TBL.NBR_CHNS_SET1* 2) ERROR “Inconsistent settings for ACT_LP_TBL”; END;

      ocument Form The BNF.syntax production-rule is the starting point for encoding the Document Form Table-definitions. syntax ::= ((rcdType | bfldType | constType | enumerator | properties)* (procDefinition | tableDefinition)) * ;

      460

      Historical Background

      ANSI C12.19-2008

      ANNEX I: Date-time Elements Conversion Algorithm (TM_FORMAT=3 and TM_FORMAT=4) (Informative) The following algorithm shows how date time fields represented using TM_FORMAT=3 or TM_FORMAT=4 are converted to a date and time in the Gregorian calendar. This algorithm includes the complete leap years rules handling: leap years are all years divisible by 4, with the exception of those divisible by 100, but not by 400. This algorithm can be used before or after the “Algorithm for converting from transported End Device time to End Device operational time” as defined in the intro of Decade 5. This algorithm is provided as reference and any other equivalent algorithms can be used instead. #include void timeDateToYMDHM(unsigned long timestamp) { static unsigned int totalDaysByMonth[] = { 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365 }; unsigned int year, month , day , hour, minute; hour = timestamp % 1440 / 60; minute = timestamp % 60; timestamp /= 1440; year = 1970 + (timestamp / ((unsigned long) 100 * 1461 - 3)) * 400; timestamp %= 100 * 1461 - 3; if (timestamp >= 32 * 1461 + 789) timestamp++; if (timestamp >= 57 * 1461 + 789) timestamp++; if (timestamp >= 82 * 1461 + 789) timestamp++; year += (timestamp / 1461) * 4; timestamp %= 1461; if (timestamp >= 790) timestamp--; else if (timestamp == 789) { month = 2; day = 29; year += 2; return; } year += timestamp / 365; timestamp %= 365; month = 1; while (timestamp >= totalDaysByMonth[month]) { month = month + 1; } day = timestamp - totalDaysByMonth[month - 1] + 1; }

      printf("%04d-%02d-%02d %02d:%02d UTC time", year, month, day, hour, minute);

      As an example, calling this method with a timestamp set to 19241336 return: 2006-08-02 00:56 UTC time This result can further be converted to a specific locale by adding the time zone offset and DST offset. If we take “America/New York” (the locale) as an example, we need to add a -5:00 time zone offset and a 1:00 DST offset. 2006-08-01 19:56 Standard time 2006-08-01 20:56 Localized time (includes DST)

      461

      ANSI C12.19-2008

      Historical Background

      ANNEX J: XML File Format of TDL and EDL Files (normative)

      verview of the The Standard files C1219TDL-1997.xml and C12.19-2008.xml define the Standard tables syntax and meta-data using XML notation for the first and second versions of this standard. These can be used to generate the Document Form described in Section 5.0, “Syntax”. The XML-element production rules defined in this Annex are directly based on the standard’s structure, defined types and constraints. The TDL/XML meta-data can provide additional structural information and constraints, some of them are exposed in the published text of Section 6.0, “Special Data Types” and Section 9.0, “Tables”. The EDL/XML meta-data and values can provide additional information and constraints on actual data values, such as default sets used and element indices. The hierarchical relation among all XML/TDL and XML/EDL elements and their attribute is presented using XML DTD syntax. The DTD described within together with the BNF definitions provide sufficient framework for the creation of an automated advanced metering infrastructure.

      J.1.1 TDL/EDL Files and Terminology In the pages which follow we used the following terms to document the TDL/EDL XML Form framework. 1. C1219TDLSchema.xsd, a reference schema for TDL/XML file structure and constraints validation. 2. C1219TDLTransform.xsl, is an XML style sheet, that can be used to transform the End Device TDL file into a formatted document, which looks like Section 6.0, “Special Data Types” and Section 9, “Tables” of this Standard. 3. C1219TDLIndicesTransform.xsl, is an XML style sheet, that can be used to transform the End Device TDL file into a formatted document, which can be placed in Annex D, “Indices for Partial Table Read/Write Access” of this Standard. 4. C1219TDLEDLTransform.xsl is an XML style sheet, that can be used to transform the End Device TDL file into C1219TDL-xxxx-EDLSchema.xsd document, which is a validation template for creating constant, data and default sets to be placed in a file like C1219TDL-xxxxDefaultSet.xml. 5. C1219TDL-xxxx-EDLSchema.xsd, a reference schema for EDL/XML file structure and constraints validation. 6. C1219EDLTransform.xsl, is an XML style sheet, that can be used to transform the C12.19 EDL files (such as default sets) into a formatted document, which can be placed in Annex C, “Default Sets for Decade Tables” of this Standard.

      462

      Historical Background

      ANSI C12.19-2008

      C1219TDLSchema.xsd

      C1219TDLTransform.xsl

      XSL Processor

      C1219TDL-xxxx.xml Document Form of Section 9

      Figure J.1: Production of the Document Form (Document Format of Section 9.0, “Tables”) from the TDL XML File.

      C1219TDLSchema.xsd

      C1219TDLEDLTransform.xsl

      XSL Processor

      C1219TDL-xxxx.xml C1219TDL-xxxx-EDLSchema.xsd

      Figure J.2: Production of Exchange Data Language (EDL) validation schema file from a TDL XML File.

      C1219TDL-xxxx-EDLSchema.xsd

      C1219EDLTransform.xsl

      XSL Processor

      C1219TDL-xxxx-DefaultSet.xml Document Form of Annex C

      Figure J.3: Production of the Document Form (Document Format of Annex C, “Default Sets for Decade Tables”) from the EDL XML default sets file.

      463

      ANSI C12.19-2008

      Historical Background

      C1219TDLSchema.xsd

      C1219TDLIndicesTransform.xsl

      XSL Processor

      C1219TDL-xxxx.xml Document Form of Annex D

      Figure J.4: Production of final element indices (Document Format of Annex D, “Indices for Partial Table Read/Write Access”) from a TDL XML File. Similarly, End Device manufacturers can use the above production rules, to process End Device TDL documents and publish Manufacturer Tables, implementation variations and constants (See diagram below).

      Referenced Standards C1219TDLSchema.xsd

      C1219TDLTransform.xsl

      C1219TDL-xxxx.xml C1219TDL-xxxx-DefaultSet.xml

      End Device Class Files .xml (.a.b.c.d)

      -Constants.xml XSL Processor or AMI Application -Constants.xml

      C1219TDL-xxxx-EDLSChema.xsd -EDLSChema.xsd

      -Data.xml (AMI Exchange Data)

      .doc

      AMI Exchange Application

      Figure J.5: From XML to AMI application. The pathways for using C12.19 Standard and Manufacturer

      464

      Historical Background

      ANSI C12.19-2008

      defined TDL/XML tables for Documentation, EDL and AMI application processing. Figure J.1-J.5 above depict the following files as inputs or outputs to XSL and AMI processors. These are described below: File Name C1219TDLSchema.xsd

      Input for / Used by Input for: XSL processor Used by: AMI application

      C1219TDLTransform.xsl

      Input for :XSL processor Used by: Document Form producer Input for :XSL processor Used by: Document Form producer

      C1219EDLTransform.xsl

      C1219TDLIndicesTransform.xsl

      Input for :XSL processor Used by: Document Form producer

      C1219TDL-xxxx.xml

      Input for: XSL processor Used by: Document Form producer, EDL schema producer and AMI application

      C1219TDL-xxxx-DefaultSet.xml

      Input for: XSL processor Used by : Document Form producer and AMI application

      .xml (.a.b.c.d)

      Input for: XSL processor Used by: Document Form producer and AMI application

      Description A validation schema for any End Device or Standard TDL document. Table pseudo PASCAL publication rules used to generate the Document Form. Publication rules used to generate the Document Form of constant values and default sets used to be assumed in Table Elements embedded in the End Device. Publication rules used to generate Annex D, “Indices for Partial Table Read/Write Access” or Manufacturer Document Form of manufacturer’s element indices. The C12.19 Standard table descriptions for ANSI C12.19xxxx. This file is an input to the XSL processor to produce the Document Form. This file is also an input to an AMI application that communicates with an End Device. This file can also be used to generate the C1219TDLxxxx-EDLSChema.xsd used to validate the EDL data file. The input values of the default sets of actual limits tables. These values are published based on the C1219EDL-xxxxDLSChema.xsd (which in turn is derived from C1219TDLxxxx.xml. When processed by an XSL processor it produces appendix C of the published ANSI C12.19-xxxx Standard Document Form. When used by an AMI application it delivers default values that initialize unavailable actual limits tables. The C12.19 Manufacturer table descriptions for registered Device Class a.b.c.d. This file is an input to the XSL processor to produce manufacturer’s documentation. This file is also an input to an AMI application

      465

      ANSI C12.19-2008

      File Name

      Historical Background

      Input for / Used by

      -Constants.xml (.a.b.c.d)

      Input for: XSL processor Used by: Document Form producer and AMI application

      -Constants.xml (.a.b.c.d)

      Input for: AMI processor Used by: Utility AMI application

      C1219-xxxx.doc (Section 9 and Annex C)

      Used by: Document Form producer and developers who implement ANSI C12.19-xxxx Standard. Used by: Developers who implement AMI tools for End Device a.b.c.d.

      .doc (.a.b.c.d)

      C1219TDL-xxxxEDLSChema.xsd

      Used by: AMI application

      -EDLSchema.xsd (.a.b.c.d)

      Used by: AMI application

      -Data.xml

      Used by: AMI application, Data exporter and importer application

      Description that communicates with that End Devices. The input values of the constant tables or fields within tables, which cannot be retrieved from the End Device. These values are published in the manufacturer’s Document Form, based on the .xml (.a.b.c.d) (which in turn is derived from C1219TDL-xxxx.xml). When processed by an XSL processor it produces a tabulation of pre-assigned table values for Device Class a.b.c.d. When used by an AMI application it delivers default values that shall be assumed by the AMI application when these Table Final Element values cannot be obtained directly from the End Device. Utility site specific management data needed to manage the End Device Class a.b.c.d. The published Document Form ANSI C12.19-xxxx Section 9 and Annex C or Annex D. The published Manufacturer Document Form of the Manufacturer’s tables and constants based on the ANSI C12.19-xxxx Standard and the documentation TDL of End Device Class a.b.c.d. AMI data validation schema for XML data transfer based solely on ANSI C12.19-xxxx Standard. AMI data validation schema for XML data exchange based on ANSI C12.19-xxxx Standard, as extended by End Device table set for class a.b.c.d. AMI data encoded in XML according to ANSI C12.19-xxxx Standard, as qualified for End DeviceClass a.b.c.d.

      J.2 TDL XML File Format of the TDL Document The formats of all elements and attributes found in a TDL/XML File Form is described next.

      466

      Historical Background

      ANSI C12.19-2008

      J.2.1 Root Element The element is a container of the Table syntax and meta-data (descriptions) of either one Standard tables’ subset or one Manufacturer defined tables subset. The union of the Standard defined tables’ subset and the Manufacturer provided tables’ subset make up the entire table set of an End Device. A tables’ subset document can describe Standard table definitions, revise an existing Standard into a new Standard, or implement existing Standards using Manufacturer-supplied files. There may be only one root element in a single XML file.

      J.2.1.1 DTD



      J.2.1.2 Attributes Name version

      Document Form Equivalent Published in the title section of the document.

      deviceClass

      Published in the title section of the document.

      standard

      Published in the title section of the document.

      Description The version of this document. When describing a Standard then this is the version of the Standard being defined. When describing a manufacturer extension, then this is the version of the End Device class being defined. The deviceClass defines the registered device class this TDL describes. Device class "0.x.y.z" is reserved for the Standards all other classes describe manufacturer tables and data types. This is a subbranch in the domain of the registry attribute. The absolute device class is formed by joining the isoBranch attribute with the deviceClass attribute using a period (.). Also the relative deviceClass value can be found in Table 0 of the End Device. The reference standard this End Device is based on. Example: “http://www.ansi.org/C1219TDL-2008.xml”. If the deviceClass attribute contains a Standard class then this is a reference to “self”. The URI provided refers to a Standard that is the base document for this TDL. When not provided then no document is referred. URI formats are as follows: 1. The Standard URI format is http://www.ansi.org/C1219TDL-xxxx.xml where xxxx is the year. 2. URIs for TDL class files is http://www.ansi.org/C1219TDL-x.x.x.x.xml where x.x.x.x is the registered device class

      467

      ANSI C12.19-2008

      Name

      registry isoBranch

      Historical Background

      Document Form Equivalent

      Published in the title section of the document. Published in the title section of the document.

      title

      Published in the title section of the document.

      validation

      Published in the title section of the document.

      date

      Published in the title section of the document.

      Description (See deviceClass). 3. Viable choices to www.ansi.org are www.ieee.org and www.ic.gc.ca. The name of the entity that is the registrar of the device class identifiers. The ISO branch attribute associates a registry name with an ISO object directory branch. The deviceClass attribute is relative to this branch. The text to display in a graphic context or at the beginning of the document. Example: “ANSI C12.192008 Utility Industry Standard Tables”. When the standards organization registers a TDL file or when a manufacturer registers a device class then the registrar shall insert a validation text (reference to signature) that can be used as an indication that the registered file has been validated. The validation of the TDL file assumes the following steps (see XML-Signature Syntax and Processing, W3C Recommendation 12 February 2002 for full details): 1. Inclusion of the signature reference URI as the validation content. 2. XML Canonicalization of the entire TDL file. 3. Production of a "detached" signature that contains a digest of the XML that was generated by the registrar and made available separately to the user. The date this document was last revised.

      J.2.1.3 Document Form A new section heading is generated then the TDL title version, deviceClass, standard, registry, isoBranch, date and validation attributes may be expressed in the section’s heading.

      J.2.2 element The element is a text-formatting container that accepts simple formatting directives that are a restricted subset of XHTML. It provides a text area to describe the parent element or provide general inter-element descriptions. All elements, except for and shall minimally provide an optional child element.

      J.2.2.1 DTD

      J.2.2.2 Attributes Name documentation

      468

      Document Form Equivalent The description body of

      Description Default = true. The description element is used to

      Historical Background

      ANSI C12.19-2008

      text. When an immediate child of an , or then the description is place with pseudo Pascal comment delimiters (‘{‘ and ‘}’ in the syntax section just before the IF, after the THEN and before the ELSE clause, respectively. colspan

      Spans multiple columns.

      annotate elements that may be conditional by virtue of being contained in /, /, / statements or for other reasons. It is therefore possible for the same element name to be defined more than once, bound to different types but identical Element names. When this happens it may be desired to present in the Document-Form only one of the Element descriptions and suppress all others. When this attribute is false then the generation of the in the documentform shall be suppressed. When the container is a multi column definitions (e.g. identifier, value and description) that the text spans the number of columns indicated (default = 1) starting from right to left.

      J.2.2.3 Child Elements The following paragraph and inline entry elements may be used within any .

      J.2.2.4 Child DTDs Note: The entity “ ” may be inserted anywhere within #PCDATA to represent a non-breaking space that shall be preserved by the TDL processor.



      align ( left | right | center | justify ) #IMPLIED indent ( left | right | both ) #IMPLIED >



      style ( arabic | alpha | roman | ALPHA | ROMAN ) #IMPLIED>



      (#PCDATA | br | p | pre | blockquote | ol | ul | dl | b | i | u | tt | sub | sup | object | table )*> value (CDATA) #IMPLIED>

      469

      ANSI C12.19-2008

      Historical Background

      value (CDATA) #IMPLIED> (#PCDATA | br | p | pre | blockquote | ol | ul | dl | b | i | u | tt | sub | sup | object | table )*> value (CDATA) #IMPLIED>

      align (left | center | right ) #IMPLIED border (CDATA) #IMPLIED frame (CDATA) #IMPLIED rules (CDATA) #IMPLIED title (CDATA) #IMPLIED width (CDATA) #IMPLIED >

      align (top | bottom ) #IMPLIED

      align span valign width

      (tr)+> (left | right | center | justify ) (CDATA) (top | middle | bottom) (CDATA)

      #IMPLIED “1” #IMPLIED #IMPLIED>



      align (left | right | center | justify ) #IMPLIED colspan (CDATA) “1” rowspan (CDATA) “1” valign (top | middle | bottom) #IMPLIED>

      Child Elements Summary Element Name h1, h2, h3

      470

      Document Form Equivalent Sub-section heading.

      Description Generate a subsection heading Document Form readability.

      to

      improve

      Historical Background

      Element Name br p

      ANSI C12.19-2008

      Document Form Equivalent Force line break. Paragraph body text.

      pre

      Verbatim simple mono spaced text.

      blockquote

      Indented or highlighted text.

      ol

      Numerically ordered-items list.

      ul

      Symbolically itemized list.

      dl

      Definition list.

      i b u tt

      Italic font. Bold font. Underlined font. Mono-spaced font.

      sup sub table

      Superscript text. Subscript text. Multi column and rows table with optional table header, footer and caption.

      Description Force a line break with interlines spacing. Force a new paragraph line break. Format the text within using the embedded formatting rules. Force a new paragraph break after the closing element. The align and indent attributes qualify the paragraph text appearance. Present the text within exactly as typed, using monospaced font, while preserving all spaces and new lines. Force a new paragraph line break. Present the text within in a manner that it stands out as a paragraph. Force a new paragraph break after the closing element. The indent attribute may be used to control the indentation. The default indentation is “both”. Ordered list (1,2,3..., a,b,c..., i,ii,iii..., A,B,C..., or I,II,III...). Force a new paragraph line break. Present the list items within with a sequence number at the beginning of each list item. Force a new paragraph break after the closing element. Force a new paragraph line break. Present the list items within with a symbol at the beginning of each list item. Force a new paragraph break after the closing element. Force a new paragraph line break. Present the definition list with each definition on the left and the description thereafter. The attribute value is used to define the definition item. Typeset the text within using an italic font. Typeset the text within using a bold font. Typeset the text within using an underlined font. Typeset the text within using a mono-spaced (typewriter) font. Typeset the text within using a superscript font. Typeset the text within using a subscript font. Force a new paragraph line break then create a table. The table model allows to arrange text into rows and columns of cells. Each table may have an associated caption that provides a short description of the table's purpose. Table rows include a head, foot, and body elements. The col element may be used to characterize the column width, span, and body text alignment for each of the columns.

      J.2.2.6

      Attributes Name align

      indent

      Table document equivalent The paragraph text alignment.

      The paragraph text

      Description Default = inherited from previous paragraph. If this is the first instance within a element then use the text processor default alignment (typically justified). Possible alignment values are: “left” edge of the text column, “right” edge of the text column, “center” about the text column or “justified” about both edges of the text column. Default = inherited from previous paragraph. If this is

      471

      ANSI C12.19-2008

      Historical Background

      indentation.

      the first instance within a element then use the text processor default indentation (typically not indented). Possible indentation values are: indent the “left” side of the text column to the right, indent the “right” edge of the text column to the left, indent “both” edges of the text column inward.

      J.2.2.7 Attributes Name indent

      Document Form Equivalent The paragraph text indentation.

      Description Default = “both”. Possible indentation values are: indent the “left” side of the text column to the right, indent the “right” edge of the text column to the left, indent “both” edges of the text column inward.

      J.2.2.8 Attributes Name style

      Document Form Equivalent The style of the numeric items.

      Description Default = Arabic if this is the first instance within a element. Otherwise it is sequentially rotates the formats arabic (1, 2, 3, …), alpha (a, b, c, …), roman (I, ii, iii, …), ALPHA ( (A, B, C, …), ROMAN (I, II, III, …).

      J.2.2.9

        Attributes Name style

        Document Form Equivalent The style of the symbolic items.

        Description Default = bullet if this is the first instance within a element. Otherwise it is sequentially rotates the formats bullet (•), dash (–) or star () symbol.

        J.2.2.10 and
          sub-element usage Element Name li

          Document Form Equivalent One list item.

          Description Force a line break with inter-paragraph spacing. Place the next enumeration in order ( case) or next symbol (
            case) or the string presented by the value attribute as a left hanging indent (
              case), followed by the descriptive content as a paragraph.

              J.2.2.11 and sub-element usage of Element Name dt

              dd

              472

              Document Form Equivalent Introduces a single definition header.

              Introduces a single definition text.

              Description Force a line break with inter-paragraph spacing. Publish next definition specified by the value attribute as a left hanging text followed by the distinctive descriptive text using distinctive text (definition data) on the right. Force a line break with inter-paragraph spacing. Publish next definition specified by the value attribute as a left hanging text followed by the descriptive text using distinctive text (definition data)

              Historical Background

              Element Name

              ANSI C12.19-2008

              Document Form Equivalent

              Description on the right.

              J.2.2.12 Document Form The formatted text in any of the main Section bodies, type descriptions and element descriptions is produced. Example: Given the XML text below:
      This table defines the History Log codes to be written to the History Log. It also defines which specific procedures and or table writes that are to be acknowledged in the History Log. For a specific procedure or table to be acknowledged, three independent tests shall all be true:

    • The procedure or table shall be used in the End Device, per the GEN_CONFIG_TBL (Table 00).
    • The appropriate History Log code shall be used, per this table.
    • The procedure or table shall be requested to be acknowledged, per this table.


    • ….
      The following may be a partial output generated by a TDL processor:

      9.9.4. Table 73: History Log Control Table Table 73 Description This table defines the History Log codes to be written to the History Log. It also defines which specific procedures and or table writes that are to be acknowledged in the History Log. For a specific procedure or table to be acknowledged, three independent tests shall all be true: 1. The procedure or table shall be used in the End Device, per the GEN_CONFIG_TBL (Table 00). 2. The appropriate History Log code shall be used, per this table. 3. The procedure or table shall be requested to be acknowledged, per this table.

      J.2.2.13 Element Application specific extensions. The extension element is made available to implementers of AMI application and vendors who need to embedded additional information in support of their application. The content of this element is not defined by this Standard.

      J.2.2.14 DTD

      J.2.2.15 Attributes

      473

      ANSI C12.19-2008

      Historical Background

      None.

      J.2.2.16 Document Form None.

      J.2.3 Element The assert element is provided to document relationships among Table data Elements and optionally alert the application about a inconsistencies or unexpected End Device settings.

      J.2.3.1 DTD (named)

      assert raise (ERROR | WARN | INFO) “ERROR” text CDATA #REQUIRED>

      Each element of contains one assertion condition, encoded as BNF.mathExpression, which evaluates to a Boolean. If any of the elements evaluate to true then an assertion is raised.

      J.2.3.2 Attributes Name raise

      Text

      Document Form Equivalent Published in the description section where defined as follows: ‘Assert value on (condition), “text”.’ where condition is the content of the condition attribute, text is the content of the text attribute and value is the content of the raise attribute. Published in the description section.

      Description Indicates the type of assertion to be raised when the indicated expression (see condition element) evaluates to true.

      This is a short text message that will be generated when the assertion is raised.

      J.2.4 Element The named element introduces an association between a numeric, string or boolean data value and a descriptive label. It also provides for associating array or set elements with constants and labels. For example it may be more efficient, storage-wise, to designate numeric values to days of the week, say 0, 1, 2, 3, 4, 5 and 6; but for humans or Graphical User Interfaces (GUIs) it is easier to relate to Sunday, Monday, Tuesday and so on. The enumerator element binds numbers to labels. There are two flavors to the enumerator type. The first is a named type when it is introduced outside an element or sub-element body and it can be referenced for association with a Final Element. The second is unnamed, as it is introduced in-line within an Element or Sub-element body. The first unique instance of an unnamed enumerator can be accessed using the Final Element’s name suffixed with BNF.enumSuffix., as if it were to be a named enumerator.

      474

      Historical Background

      ANSI C12.19-2008

      J.2.4.1 DTD (named)

      enumerator name CDATA #REQUIRED replace CDATA #IMPLIED override CDATA #IMPLIED redefine CDATA #IMPLIED strict label align match pad quote round

      ( true | false ) CDATA (none | left | right | center) (true | false) (true | false) (true | false) (round | ceil | floor | trancate)

      "true" #IMPLIED “none” “true” “false” “false” “round”

      >

      J.2.4.2 Attributes (named) Name name replace

      Document Form Equivalent Listed in the description section where defined. The text Replaces: target in the description of the named enumerator shall be generated.

      Description The enumerator identifier expressed and constrained by BNF.enumIdentifier. This identifier is used to refer to the enumeration list. A reference to an existing BNF.enumTypeReference whose list is mapped to a new list. Any reference to the old enumerator will access the new definition. This feature enables one Standard to be derived from another; and for a manufacturer device class to define (thus document) Standard opaque fields.

      override

      The text Overrides: target in the description of the named enumerator shall be generated.

      Note: The referenced enumerator can be replaced only once within one XML file. Replacement of an enumerator that has already been previously replaced or overridden by another enumerator in the same file shall not be permitted. The replaced enumerator original definition shall not be found in the same XML file that select the enumerator for replacement. A relaxed variation of the replace attributes. A reference to an existing BNF.enumTypeReference whose list is mapped to a new list. Any reference to the old enumerator will access the new definition. This feature enables one Standard to be derived from another; and for a manufacturer device class to define (thus document) Standard opaque fields. Note: The overridden enumerator can be modified only once within one XML file. Overrides of an enumerator that has already been previously overridden or replaced by another enumerator in the same file shall not be permitted. The overridden

      475

      ANSI C12.19-2008

      Name

      Historical Background

      Document Form Equivalent

      Description enumerator original definition shall not be found in the same XML file that select the enumerator for replacement.

      redefine

      The text Redefines: target in the description of the named enumerator shall be generated.

      strict

      Suffix the term “reference is strict” to the replace, override or redefine referenced type in the description of the enumerator generated.

      label

      Not shown if there is description element. presented as description the absence of description element. None.

      align

      476

      a Is in a

      Overridden enumerators can change any and all content of any existing enumerator that are otherwise not described. The application processor is encouraged to issue a warning upon all encounters of overridden enumerators. A reference to an existing BNF.enumTypeReference whose list used as a restriction for mapping a new list. This feature shall ensure that children elements are maintained identical in value and only modification to text attributes, descriptions or metadata is desired. This is useful when defining dimension-limiting tables, then reusing only the enumerated ranges (not the enumerated description or meta-data - descriptions) to introduce the actual limits tables. The presence of this attribute does not absolve the writer from entering the entire names and values. The referenced enumerator shall be otherwise unaffected. Notes: 1. A redefined enumerator can be redefined any number of times. Redefinition of an enumerator that has already been previously redefined elsewhere is permitted. 2. Redefined enumerators can be defined in the same XML file. 3. Redefinition of a replaced or overridden enumerator is permitted. When the redefined enumerator is encountered in the same XML file (see note 2 above), the redefinition shall be applied after any replacement or override (i.e. replacements and overrides shall be processed prior to redefinitions). When enumerator is created and the replace, override or redefine attribute is asserted, then the search rule for the target BNF.enumTypeReference will be strict (if strict is set to true, the default value) or not strict (if the strict attribute is set to false). A strict search requires that the implied or explicit target scope contains the replaced enumerator. A non-strict search allows for the implied or explicit target scope search will starts in the End Device scope hierarchy, i.e. the first encounter of the target enumerator within any of the parent scopes will shall be considered a match for the sought replacement. A short textual description of the named enumerator. It can be used by a GUI in Balloon help or as a substitute for description. If the data type is STRING and value supplied does

      Historical Background

      Name

      ANSI C12.19-2008

      Document Form Equivalent

      match

      None.

      pad

      None.

      Description not fill the entire space required by the Final Element or the string is larger than the space provided then deliver to the application a pre-aligned (or truncated) value then pad the extra space as needed, according to the value supplied attribute. “none” = do not align; “left” = align toward lower Table octets offsets within the Final Element field; “right” = align toward higher Table octet offsets within the Final element field. Default is none. When the match attribute is true then only values from the supplied enums and default elements will be accepted by a C12.19 application. All other values may trigger a fatal error report. When match attribute is false, than non matching values may trigger a warning report and shall not issue a fatal error report. The default value is true. If the value supplied does not fill the entire space required by the Final Element then pad the value with trailing/leading spaces (if of type is STRING or CHAR), or zeros (for numeric or BINARY types) in such a manner not to alter the interpretation of the end result. Example 1: Assume an element is defined (using the Document Form) as FOO : STRING(5); and pad is set to true align is set to "left" then the value "ABC" will be converted to "ABC " (414242202020H) before comparing it for enumerator match to the value reported by the Final Element FOO.

      quote

      round

      Enumeration values are surrounded with quotation marks before being displayed.

      Example 2: Assume an element is defined (using the Document Form) as BAR: BINARY(5); and pad is set to true and align is set to “right” then the value "1234" will be converted to 0000001234H before comparing it to the value reported by the Final Element BAR. When true then this is an instruction to the text formatted to place the enum values each in quotes; as they may represent a string. Default is false. Rounding rule for converting a string number value to a Final Element of type integer as follows: “round” calls for the result to be rounded to an integer by adding 1/2 to the supplied value, taking the floor of the result, and casting the result to the integer type of the Final Element. “ceil” computes the smallest integral value that is not less than the supplied value. “floor” computes the largest integral value that is not greater than the supplied value. “TRUNCATE” truncates the value to an INT/UINTas appropriate. Special cases: If the argument is NaN, the result is 0. If the argument is negative infinity or any value less

      477

      ANSI C12.19-2008

      Name

      Historical Background

      Document Form Equivalent

      Description than or equal to the value of INTx, or UINTx minimum value, the result is equal to the value of the INTx or UINTx minimum value. If the value argument is positive infinity or any value greater than or equal to the value supported by the final element field, the result is equal to the value of largest possible Final Element. For types STRING or BINARY: Rounding rule for converting a string value to non numeric fields. This attribute is ignored and the field can only be padded or truncated according to the pad and align attributes.

      J.2.4.3 Document Form (named) The named enumerator is not listed in the syntax section of the Document Form. The name and its enumerations are presented in the description section that documents the enumerator name. Given the XML text below:

      The following are the unit of measure codes.

      ….

      The following may be a partial output generated by a TDL processor: TDL Document Scope Element Descriptions Identifier UOM_ID_CODES_ENUM

      Value 0 1 2

      Definition The following are the unit of measure codes. Active power - W Reactive power - VAR Apparent power - VA

      J.2.5 element of (named) When this enumerator is bound to an array or set then the supplied enum and default elements are assigned according to final element indices as per index attribute. i.e. this provides a facility for describing each element according to its position within the set or array. Also this provides a facility for assigning constant values.

      J.2.5.1 DTD

      J.2.5.2 DTD (un-named)

      478

      Historical Background

      enumerator align (none | left | right | center) “none” match (true | false) “true” pad (true | false) “false” quote (true | false) “false” round (ROUND | CEIL | FLOOR | TRUNCATE) “round”

      > The use of unnamed enumerator shall be restricted to immediate children of , , or . An un-named enumerator can be referenced using the name attribute of its parent element suffixed by BNF,enumSuffix, if the resulting name is unique within the scope of the parent element. The interpretation of all the attributes of the unnamed enumerator is identical to those of the named enumerator.

      J.2.5.3 Document Form Introduces a BNF.enumerator definitions in the Element’s description. No syntax is produced in the definition syntax section. The description shall list all non-default constraints expressed in the subelements , and .

      J.2.6 Element (Child of ) The element introduces a single enumeration value or a range of enumeration values.

      J.2.6.1 DTD

      J.2.6.2 Attributes Name value

      endValueInclusive

      text

      Document Form Equivalent The value assigned to this enumerator (attribute endValueInclusive not present) or the starting value of a range of values (attribute endValueInclusive present) The end range assigned to this enumerator. Text string that is associated with the value or range of values. This

      Description Indicates a value that the Final Element may take, or the starting range of values (attribute endValueInclusive present) that a final element may assume. The left hand size of the BNF.enumMember.

      Indicates an end range of values (attribute endValueInclusive present) that the a Final Element may assume. The left hand size of the BNF.enumMember. A short test string that may be used by a GUI Balloon help. The right hand size of the BNF.enumMember.

      479

      ANSI C12.19-2008

      exclude

      Historical Background

      text is published only when the element is not present. Does not generate documentation.

      An indication that the role for this enumeration value is reversed, therefore it is to be excluded and it is considered to be an invalid value or range of reserved values.

      J.2.6.3 Document Form Introduces a BNF.enumMember in Definitions in types and elements description. The definitions shall preserve all constraints expressed in the sub-element ; and the attributes value, endValueInclusive, text. Example: Given the XML text below:

      See character Set Selection in Special Data Types, Section 6.1. Unsigned binary code where:

      Reserved.

      ISO 7-bit coded character set for information interchange, per ISO/IEC 646: 1991.

      As per Section 2.5 "Encoding Forms / UTF-8" and Section 15.9 "Specials" of "The Unicode Standard", Version 4.0. In UTF-8 the byte order mark, BOM, corresponds to the byte sequence [#xEF] [#xBB] [#xBF]. The BOM of UTF-8 shall be permitted only when it can be accommodated by the size of the element that is of type UTF-8 whose size is at least three octets, but it shall be ignored (not produce displayable text) by the processing application.

      As per Section 2.5 and Section 15.9 "Specials" "“Encoding Forms / UTF-16" of "The Unicode Standard", Version 4.0. The BOM, [#xFEFF], of UTF-16 shall be permitted. It shall count for one sixteen-bit element space (one character), But it shall be ignored (not produce displayable text) by the Processing application. For the purpose of transmission each sixteen bit character shall be transmitted as a UINT16 and as implied by DATA_ORDER.

      As per Section 2.5 and Section15.9 "Specials" "Encoding Forms / UTF-32" of "The Unicode Standard", Version 4.0. The BOM, [#x0000FEFF], of UTF-32 shall be

      480

      Historical Background

      ANSI C12.19-2008

      permitted. It shall count for one thirty-two bits element space, but it shall be ignored (not produce displayable text) by the processing application. For the purpose of transmission each thirty two bit character shall be transmitted as a UINT32 and as implied by DATA_ORDER.

      Reserved.

      The following may be a partial output generated by a TDL processor in the description section: Identifier … CHAR_FORMAT

      Value

      0 1 2 3

      4

      5

      6..7

      Definition See character Set Selection in Special Data Types, Section 6.1. Unsigned binary code where: Reserved. ISO 7-bit coded character set for information interchange, per ISO/IEC 646: 1991. ISO 8859/1 or ECMA-94 Latin 1. As per Section 2.5 "Encoding Forms / UTF-8" and Section 15.9 "Specials" of "The Unicode Standard", Version 4.0. In UTF-8 the byte order mark, BOM, corresponds to the byte sequence [#xEF] [#xBB] [#xBF]. The BOM of UTF-8 shall be permitted only when it can be accommodated by the size of the element that is of type UTF-8 whose size is at least three octets, but it shall be ignored (not produce displayable text) by the processing application. As per Section 2.5 and Section 15.9 "Specials" "“Encoding Forms / UTF-16" of "The Unicode Standard", Version 4.0. The BOM, [#xFEFF], of UTF-16 shall be permitted. It shall count for one sixteen-bit element space (one character), but it shall be ignored (not produce displayable text) by the processing application. For the purpose of transmission each sixteen bit character shall be transmitted as a UINT16 and as implied by DATA_ORDER. As per Section 2.5 and Section15.9 "Specials" "Encoding Forms / UTF-32" of "The Unicode Standard", Version 4.0. The BOM, [#x0000FEFF], of UTF-32 shall be permitted. It shall count for one thirty-two bits element space, but it shall be ignored (not produce displayable text) by the processing application. For the purpose of transmission each thirty two bit character shall be transmitted as a UINT32 and as implied by DATA_ORDER. Reserved.



      J.2.7 element (Child of element)

      481

      ANSI C12.19-2008

      Historical Background

      Default text used to label unknown values. It is also the preferred initialization value for un-programmed fields, or un-initialized Final-Elements.

      J.2.7.1 DTD

      J.2.7.2 Attributes Name value

      text

      Document Form Equivalent None

      Publishes the text Default: value

      Description Preferred initial value of the final element. This value shall be assumed by an enumerated final element, when the value of the final element is un-initialized. Therefore, the Standard or the Manufacturer may set initial state preferences for Table Final Elements. The text to display when the value reported by the application is not a member of the enumeration list.

      J.2.7.3 Document Form Introduces a BNF.enumDefault in Definitions in types and elements description. The definitions shall preserve all constraints expressed in the sub-element description; and the attributes value and text.

      J.2.8 Element The element introduces the PACKED RECORD derived type. This maps to the BNF. rcdType. This type is defined to be local to the parent scope (either Standard or Manufacturer context) TDL, decade, table, or procedure (see Rules for inheritance and referencing scoped types and identifiers).

      J.2.8.1 DTD

      J.2.8.2 Attributes Name name

      482

      Document Form Equivalent Publishes the packed record name in the syntax and description sections.

      Description The packed record identifier. This identifier can be used to refer to the PACKED RECORD. Packed record names shall be defined according to the

      Historical Background

      ANSI C12.19-2008

      replace

      The text Replaces: target in the description of the packed record shall be generated.

      override

      The text Overrides: target in the description of the packed record shall be generated.

      redefine

      The text Redefines: target in the description of the packed record shall be generated.

      BNF.rcdIdentifier production rule and shall be unique within any one definition’s scope. A reference to a PACKED RECORD identifier, in accordance with BNF.rcdReference, whose type is mapped to a new type. Any reference to the old type, from any context, will access the new definition. This feature enables one Standard to be derived from another; and for a manufacturer device class to define (thus document) Standard opaque fields. Notes: 1. A referenced type can be replaced only once. Replacement of a type that has already been previously replaced by another type shall not permitted. 2. The replaced type shall not be defined in the same XML/TDL file that defines the original packed record for that type. 3. Replaced types shall have identical element offsets and indices for existing elements, and they may expose additional detail to internal structure of element that may be otherwise opaque. 4. The application processor is encouraged to issue a warning upon all encounters of replaced types. A relaxed variation of the replace attributes. An override of a PACKED RECORD identifier, in accordance with BNF.rcdReference, whose type is mapped to a new type. Any reference to the old type, from any context, will access the new definition. This feature enables one standard to be derived from another; and for a manufacturer device class to displace, and then re-create any packed record field. Notes: 1. An overridden type can be displaced only once. Override of a type that has already been previously replaced by another type is not permitted. 2. The overridden type cannot be defined in the same XML file that defines the original packed record for that type. 3. Overridden types can change elements offsets and indices for existing elements, or expose additional detail to internal structure of elements that are otherwise opaque. 4. The application processor is encouraged to issue a warning upon all encounters of overridden types. A reference, in accordance with BNF.rcdReference, to a PACKED RECORD identifier whose type is used as a restriction to the newly defined packed record in the local scope. This feature shall ensure that data type structures are maintained while modification to element names or meta-data is desired. This is useful when defining dimension-limiting tables, then reusing only the element types (not the element names or meta-data – descriptions) to introduce the actual limits tables. The presence of this attribute

      483

      ANSI C12.19-2008

      Historical Background

      does not absolve the writer from entering the entire element names and types. However, the only variations permitted are limited to  redefinition of elements  redefinition of elements  redefinition of elements  redefinition of name attributes. The referenced PACKED RECORD shall be otherwise unaffected.

      strict

      Suffix the term “reference is strict” to the replace, override or redefine referenced type in the description of the packed record generated.

      atomic

      The text "Non-default properties: Atomic = value" in the description of the packed record shall be generated. None.

      label

      accessibility

      484

      The text "Non-default properties: Accessibility = value" in the description of the packed record shall be generated.

      Notes: 1. A redefined type can be redefined any number of times. Redefinition of a type that has already been previously redefined elsewhere is permitted. 2. Redefined types can be defined in the same XML file, which also provided the original definition for packed record that is now being redefined. 3. Redefinition of a replaced, overridden or redefined packed record is permitted. 4. When the redefined type is encountered in the same XML file (see note 2 above), the redefinition shall be applied after the application of any replace or override directives (i.e. replacements and overrides shall be processed prior to redefinitions). When packed record is created and the replace, override or redefine attribute is asserted, then the search rule for the target type will be strict (if strict is set to true, the default value) or not strict (if the strict attribute is set to false). A strict search requires that the implied or explicit target scope contain the replaced or redefined type. A non strict search requires that the implied or explicit target scope is where the search will starts in the End Device scope hierarchy, i.e. the first encounter of the target type within any of the parent scopes will be considered a match for the sought replaced or redefined type. The packed record monolithic, when true. When communicating an atomic packed record it shall be transported and presented as one unit, including all of its internal element members. A text field that may be presented as an alternative to the value of the attribute name. If this optional attribute is not provided then applications shall present the value of the name attribute. An indication of possible interpretations or use case for the named packed record as follows: READONLY: this packed record may be accessed but not modified. WRITEONLY: this packed record may be written to, however when read back from the table the values may or may not be identical to the value that was written.

      Historical Background

      deprecated metrological

      ANSI C12.19-2008

      The text Deprecated in the description of the packed record shall be generated.. The text "Non-default properties: Metrological = value" in the description of the packed record shall be generated.

      READWRITE: this packed record may be written and its values read-back from the End Device. The value read shall be identical to the value last written. The default value is READWRITE. Indicates that this packed record is deprecated and is likely to be removed or renamed in future releases of the TDL. Default value is false. An indication that this packed record it is metrological. Thus any Table or Element that contains it is also metrological. Default value is false.

      J.2.8.3 Document Form The definitions are mapped to BNF.rcdType in the syntax section, and all the descriptions and enumerations are expressed in description section. Example: Given the XML text below:

      Current End Device time.

      See DATE_TIME_QUAL_BFLD above.

      The following may be a partial output generated by a TDL processor in the syntax section: TYPE CLOCK_STATE_RCD = PACKED RECORD CLOCK_CALENDAR : LTIME_DATE; TIME_DATE_QUAL : TIME_DATE_QUAL_BFLD; END; The following may be a partial output generated by a TDL processor in the description section: Identifier CLOCK_STATE_RCD CLOCK_CALENDAR TIME_DATE_QUAL

      Value

      Definition Non-default properties: Atomic = true. Current End Device time. See DATE_TIME_QUAL_BFLD above.

      J.2.9 Element (Child of ) The element binds a packed record data type to an identifier. This type is defined to be local to the packed record scope.

      J.2.9.1 DTD

      485

      ANSI C12.19-2008

      (UNIMPLEMENTED | READONLY | WRITEONLY | READWRITE) “READWRITE” (true | false | JOIN) “false” (true | false) “false” (true | false) “false” (true | false | AUTO_AS_PER_ROLE) “AUTO_AS_PER_ROLE”>

      J.2.9.2 Attributes Name name

      type enumerator length

      Document Form Equivalent Publishes the Element name in the syntax and description sections.

      Publishes the Element type in the syntax section. Publishes the element enumeration reference in description sections. Introduces the Element extent in the syntax section.

      label

      None

      min

      Impacts on low bound publication in the description section. Impacts on high bound publication in the description section. The text "Non-default properties: Accessibility = value" in the description of the Element shall be generated. The text "Non-default properties: Atomic = value" in the description of

      max accessibility

      atomic

      486

      Description The Element name identifier. This identifier can be used to refer to the table element. Element names instances shall be unique within the parent packedRecord element scope. i.e. multiple definitions are possible when they are introduced within or elements. In those cases the element names shall be introduced in such a manner that each instance of the identifier can only be instantiated once inside the packed record. The Element type. It can be any valid simple or derived type (e.g packed record or bit field). A reference to an enumerator identifier whose values/label pairs are associated with the values of this element. A valid expression the results in a numeric value to size elements of type String, Binary or BCD. These elements are not treated as arrays, but as atomic elements. As such they need to be requested and transported in totality. It is not possible to request subset of sized elements. A textual label used to label the element in a graphic context. The smallest value (inclusive) this element may have. The largest value (inclusive) this element may have. An indication of possible interpretations or use case for the named element. See for more details. The element is monolithic, when true. See for more details. When “JOIN” is entered then the element is Atomic and if the

      Historical Background

      deprecated metrological

      volatile

      ANSI C12.19-2008

      the element shall be generated.. The text Deprecated in the description of the element shall be generated. The text "Non-default properties: Metrological = value" in the description of the Element shall be generated. The text "Non-default properties: Volatile = value" in the description of the Element shall be generated.

      previous element was Atomic then the pair of elements is also Atomic. Indicates that this Element is deprecated and is likely to be removed or renamed in future releases of the TDL. Default value is false. An indication that this Element is metrological. Default value is false.

      An indication of the Element’s volatility. When volatile is set to true then the value of this element may change between consecutive reads, implying that the Element should not be cached by the AMI application, as it may change. When set to false, then it is an indication that this Element is not likely to change between consecutive reads (assuming no operator intervention); it is therefore safe for the AMI application to cache the Element’s value. When the volatile attribute is set to “AUTO_AS_PER_ROLE” (default value) then the values of the Table’s attribute role should be probed to determine the volatility of this element’s according to the Table’s role as follows: “CONTROL” sets volatility to false; “DATA” sets volatility to true; “LIMITING” sets volatility to false; “ACTUAL” sets volatility to false; “UNDEFINED” sets volatility to true; “PRIVATE” sets volatility to true.

      J.2.9.3 Document Form The definitions are mapped to BNF.rcdMember and all the descriptions and enumerations are expressed in description section. Example: Given the XML text below:

      See FORMAT_CONTROL_1_BFLD.

      See FORMAT_CONTROL_2_BFLD.



      The following may be a partial output generated by a TDL processor in the syntax section: TYPE GEN_CONFIG_RCD = PACKED RECORD FORMAT_CONTROL_1 : FORMAT_CONTROL_1_BFLD; FORMAT_CONTROL_2 : FORMAT_CONTROL_2_BFLD; … END; The following may be a partial output generated by a TDL processor in the description section:

      487

      ANSI C12.19-2008

      Historical Background

      Identifier

      Value

      GEN_CONFIG_RCD FORMAT_CONTROL_1 FORMAT_CONTROL_2

      Definition See FORMAT_CONTROL_1_BFLD. See FORMAT_CONTROL_2_BFLD.

      J.2.10 Element (Child of ) The element binds a collection of a single type an identifier. This type is defined to be local to the containing packed record scope and it maps to BNF.arrayType.

      J.2.10.1 DTD

      J.2.10.2 Attributes Name name

      type length

      dimension

      488

      Document Form Equivalent Publishes the array name in the syntax and description sections.

      Publishes the array type in the syntax section. If other then 1 it suffixes the extent length in brackets after the type in the syntax section. Publishes the number of elements in the array in the syntax section.

      Description The array name identifier. This identifier can be used to refer to this table element. Element names instances shall be unique within the parent packedRecord element scope. i.e. multiple definitions are possible when they are introduced within or elements. In those cases the element names shall be introduced in such a manner that each instance of the identifier can only be instantiated once inside the packed record. The array element type. It can be any valid simple or derived type. The number of base type members make up each element of this array. e.g. FOO : ARRAY[3] OF STRING(20); will set length to 20 CHARs of each STRING element in that array FOO. A valid expression the results in a numeric integer value that can be used to establish the dimension (number of elements) for this array. Array members can be retrieved (communicated) individually. The number of members in the array of base type. e.g. FOO : ARRAY[3] OF STRING(20); implies that dimension=”3” and length=”20” thus allocating 3 elements each is a 20 CHARs atomic STRING.

      Historical Background

      label enumerator accessibility

      atomic

      deprecated metrological

      volatile

      ANSI C12.19-2008

      None. Used by GUIs. Publishes the array A reference to an enumerator identifier whose enumeration reference in values/label pairs is associated with each of the description sections. values of this element. The text "Non-default Implementer's intended design for read and write properties: Accessibility = access for this Element. Possible values are: value" in the description of the array shall be READONLY: This Element can be accessed but not generated. modified. READWRITE: This Element can be accessed and modified. WRITEONLY: This Element can be accessed and modified. It contains one or more members that may not read back exactly what was written to them. UNIMPLEMENTED: This Element is not implemented in this End Device, therefore its value should be disregarded. The text "Non-default The element is monolithic, when true. See properties: Atomic = for more details. When “JOIN” is value" in the description of entered then the array is Atomic and if the previous the element shall be element was Atomic then the pair of elements is also generated. Atomic. Default value is false unless the Element’s type is Atomic. The text Deprecated in the Indicates that this Element is deprecated and is likely description of the element to be removed or renamed in a future release of the shall be generated. TDL. Default value is false. The text "Non-default An indication that this element is metrological. properties: Metrological = Default value is false. value" in the description of the element shall be generated. The text "Non-default An indication of the array’s volatility. When volatile is properties: Volatile = set to true then the value of this element may value" in the description of change between consecutive reads, implying that the the element shall be Element should not be cached by the AMI generated. application, as it may change. When set to false, then it is an indication that this element is not likely to change between consecutive reads (assuming no operator intervention); it is therefore safe for the AMI application to cache the Element’s value. When the volatile attribute is set to “AUTO_AS_PER_ROLE” (default value) then the values of the Table’s attribute role should be probed to determine the volatility of this element according to the Table’s role as follows: “CONTROL” sets volatility to false; “DATA” sets volatility to true; “LIMITING” sets volatility to false; “ACTUAL” sets volatility to false; “UNDEFINED” sets volatility to true; “PRIVATE” sets volatility to true.

      J.2.10.3 Document Form The definitions are mapped to BNF.rcdMember of type BNF.arrayType; and all the descriptions and enumerations are expressed in description section.

      489

      ANSI C12.19-2008

      Historical Background

      Example: Given the XML text below:

      List of pending tables and associated activation triggers.

      The following may be a partial output generated by a TDL processor in the syntax section: PENDING_TABLES

      : ARRAY[GEN_CONFIG_TBL.NBR_PENDING] OF ENTRY_ACTIVATION_RCD;

      The following may be a partial output generated by a TDL processor in the description section: Identifier

      Value

      PENDING_TABLES

      Definition List of pending tables and associated activation triggers. Non-default Properties: Atomic = TRUE.

      J.2.11 Element (Child of element) The element binds a collection of a Boolean values to an identifier. This type is defined to be local to the containing packed record scope and it maps to BNF.set member of BNF.sizedType.

      J.2.11.1 DTD

      enumerator CDATA #IMPLIED accessibility (UNIMPLEMENTED | READONLY | WRITEONLY | READWRITE) “READWRITE” atomic ( true | false | JOIN ) "false" deprecated (true | false) “false” metrological (true | false) “false” volatile (true | false | AUTO_AS_PER_ROLE) “AUTO_AS_PER_ROLE”>

      J.2.11.2 Attributes Name name

      490

      Document Form Equivalent Publishes the set name in the syntax and description sections.

      Description The set name identifier. This identifier can be used to refer to this table element. Element names instances shall be unique within the parent packedRecord element scope. i.e. multiple definitions are possible when they are introduced within or elements. In those cases the element names shall be

      Historical Background

      Name

      type dimension

      label enumerator accessibility

      atomic

      deprecated metrological

      volatile

      ANSI C12.19-2008

      Document Form Equivalent

      Description introduced in such a manner that each instance of the identifier can only be instantiated once inside the packed record. Fixed at BOOL. An expression that results in an integer and number of entries (single bit entries) for this set. Set Elements can be accessed individually, but they are communicated one octet at a time. When sets are allocated in C12.19 Tables the number of octets used is (dimension+7)/8 octets.

      None Publishes the number of octets used to map the set to a collection of octets using the expression ((dimension + 7 ) / 8 truncated to an integer the Syntax section. None. Used by GUIs. Publishes the set A reference to an enumerator identifier whose enumeration reference in values/label pairs is associated with each of the description sections. values of this element. The text "Non-default Implementer's intended design for read and write properties: Accessibility = access for a this Element. Possible values are: value" in the description of the set shall be generated. READONLY: this Element can be accessed but not modified. READWRITE: this Element is can be accessed and modified. WRITEONLY: this Element can be accessed and modified. It contains one or more members that may not read back exactly what was written to them. UNIMPLEMENTED: this Element is not implemented in this End Device, therefore its value should be disregarded. The text "Non-default The element is monolithic, when true. See properties: Atomic = for more details. When “JOIN” is value" in the description of entered then the set is Atomic and if the previous the element shall be element was Atomic then the pair of elements is also generated. Atomic. Default value is false. The text Deprecated in the Indicates that this element is deprecated and is likely description of the element to be removed or renamed in a future release of the shall be generated. TDL. Default value is false. The text "Non-default An indication that this element is metrological. properties: Metrological = Default value is false. value" in the description of the element shall be generated. The text "Non-default An indication of the set’s volatility. When volatile is properties: Volatile = set to true then the value of this element may value" in the description of change between consecutive reads, implying that the the element shall be Element should not be cached by the AMI generated. application, as it may change. When set to false, then it is an indication that this element is not likely to change between consecutive reads (assuming no operator intervention); it is therefore safe for the AMI application to cache the Element’s value.

      When the volatile attribute is set to “AUTO_AS_PER_ROLE” (default value) then the

      491

      ANSI C12.19-2008

      Name

      Historical Background

      Document Form Equivalent

      Description values of the Table’s attribute role should be probed to determine the volatility of this element according to the Table’s role as follows: “CONTROL” sets volatility to false; “DATA” sets volatility to true; “LIMITING” sets volatility to false; “ACTUAL” sets volatility to false; “UNDEFINED” sets volatility to true; “PRIVATE” sets volatility to true.

      J.2.11.3 Document Form The definitions are mapped to BNF.rcdMember of type BNF.sizedType of BNF.set; and all the descriptions and enumerations are expressed in description section. Example: Given the XML text below:

      List of control points selected.



      The following may be a partial output generated by a TDL processor in the syntax section: TO_SET

      : SET((ACT_LOAD_CONTROL_TBL.NBR_OF_CONTROL_POINT + 7) / 8);

      The following may be a partial output generated by a TDL processor in the description section: Identifier

      Value

      Definition

      TO_SET

      List of control points selected. FALSE This control point is not affected by this load control directive. TRUE This control point is affected by this load control directive.

      J.2.12 Element (Child of ) The element introduces a Boolean expression. The child element is to be processed when the expression evaluates to true. The optional child element is to be processed by the application when the expression evaluates to false.

      J.2.12.1 DTD (Child of )

      J.2.12.2 Attributes (Child of )

      492

      Historical Background

      Name condition

      ANSI C12.19-2008

      Document Form Equivalent Published in the syntax section between the IF and THEN tokens.

      Description An expression encoded as BNF.intMathExpression and reduces to a Boolean values.

      J.2.12.3 Document Form The definitions are mapped to BNF.rcdIf in the syntax section. Any elements that precede are contained in the element may be produced in the syntax section prior to the introduction of the BNF.rcdIf syntax enclosed within the comment characters ‘{‘ and ‘}’.

      J.2.12.4 Element (Child of /) The element introduces Table Elements that are present when the ’s parent attribute condition evaluates to true.

      J.2.12.5 DTD

      J.2.12.6 Attributes None.

      J.2.12.7 Document Form The definitions are mapped to the BNF.rcdMember member’s THEN clause of the BNF.rcdIf clause. If this element contains a element then the description may be produced in the syntax section following to the THEN token. This description shall be enclosed within the comment characters ‘{‘ and ‘}. All elements enclosed will be published in the syntax section. All Elements’ descriptions and enumerations may be published in the description section.

      J.2.13 Element (Child of /) The element introduces Table Elements that are present when the ’s parent attribute condition evaluates to false.

      J.2.13.1 DTD

      J.2.13.2 Attributes None.

      J.2.13.3 Document Form The definitions are mapped to the BNF.rcdMember member’s ELSE clause of the BNF.rcdIf clause. If this element contains a element then the description may be produced in the syntax section following to the ELSE token. This description shall be enclosed within the comment characters ‘{‘ and ‘}. All elements enclosed will be published in the syntax section. All Element descriptions and enumerations may be published in the description section.

      493

      ANSI C12.19-2008

      Historical Background

      Given the XML text below:



      Manufacturer's firmware revision number. Changes in value imply product corrections or improvements. Recommend use of '0' to designate preproduction or prototyping software.



      This is an example of dual use of BCD or STRING to express an ID_FORM.

      Encoded as BCD(8).

      Manufacturer's serial number for the End Device. 16 BCD digits or CHARs.



      Encoded as STRING(16).

      Manufacturer's serial number for the End Device. 16 BCD digits or CHARs.





      The following may be a partial output generated by a TDL processor in the syntax section: TYPE MANUFACTURER_IDENT_RCD = PACKED RECORD … FW_REVISION_NUMBER : UINT8; { This is an example of dual use of BCD or STRING to express an ID_FORM. } IF GEN_CONFIG_TBL.ID_FORM != 0 THEN { Encoded as BCD(8). } MFG_SERIAL_NUMBER : BCD(8); ELSE { Encoded as STRING(16). } MFG_SERIAL_NUMBER : STRING(16); END; END; The following may be a partial output generated by a TDL processor in the description section:

      494

      Historical Background

      ANSI C12.19-2008

      Identifier

      Value

      Definition

      0..255

      Manufacturer’s firmware revision number. Changes in value imply product corrections or improvements. Recommend use of ‘0' to designate preproduction or prototyping software.

      MANUFACTURER_IDENT_RCD … FW_REVISION_NUMBER

      MFG_SERIAL_NUMBER

      Manufacturer’s serial number for the End Device. 16 BCD digits or CHARs.

      J.2.14 Element (Child of ) The element introduces a selector expression. The child elements are to be included when a startValueInclusive/endValueInclusive attributes match the evaluated expression of the selection attribute. The optional child element is to be processed by the application when the expression evaluates none of the available selection.

      J.2.14.1 DTD

      J.2.14.2 Attributes Name selection

      Document Form Equivalent Publishes the switch selector expression in the syntax section.

      Description An expression encoded as BNF.intMathExpression and reduces to a integer value.

      J.2.14.3 Document Form The definitions are mapped to the BNF.rcdCase syntax. If this element contains a element then the description may be produced in the syntax section just prior to the SWITCH token. This description shall be enclosed within the comment characters ‘{‘ and ‘}.

      J.2.14.4 Element (Child of /) The definitions are mapped to the BNF.rcdCaseMember which introduces the CASE token in the syntax section.

      J.2.14.5 DTD

      J.2.14.6 Attributes Name

      Document Form

      Description

      495

      ANSI C12.19-2008

      startValueInclusive endValueInclusive

      Historical Background

      Equivalent Publishes the case lowbound value in the syntax section. Publishes the case highbound value in the syntax section.

      The selection case lower bound or value for the contained packed record syntax. The selection case for the upper bound for the contained packed record syntax.

      J.2.14.7 Document Form The definitions are mapped to the BNF.rcdCaseMember CASE token and related ranges. The startValueInclusive and the optional endValueInclusive range attributes are expressed only in the syntax section followed by the Elements definitions. All Element descriptions and enumerations may be published in the description section. If this element contains a element then the description may be produced in the syntax section just prior to the CASE token. This description shall be enclosed within the comment characters ‘{‘ and ‘}.

      J.2.14.8 element (Child of /) The definitions are mapped to the BNF.rcdCaseMember DEFAULT token syntax.

      J.2.14.9 DTD

      J.2.14.10 Attributes None.

      J.2.14.11 Document Form The definitions are mapped to the default clause of the BNF.rcdCaseMember DEFAULT syntax followed by the Elements definitions. All Element descriptions and enumerations may be published in the description section. If this element contains a element then the description may be produced in the syntax section just prior to the CASE token. This description shall be enclosed within the comment characters ‘{‘ and ‘}. Example: Given the XML text below:



      Element present when the End Device is a gas meter. See G_GAS_DEVICE_RCD for details.



      Element present when the End Device is a water meter. See W_WATER_DEVICE_BFLD for details.



      496

      Historical Background

      ANSI C12.19-2008

      Element present when the End Device is an electricity meter. See E_ELECTRIC_DEVICE_RCD for details.



      Reserved.

      The following may be a partial output generated by a TDL processor in the syntax section: SWITCH GEN_CONFIG_TBL.NAMEPLATE_TYPE OF CASE 0 : G_GAS_DEVICE : G_GAS_DEVICE_RCD; CASE 1 : W_WATER_DEVICE : W_WATER_DEVICE_BFLD; CASE 2 : E_ELECTRIC_DEVICE : E_ELECTRIC_DEVICE_RCD; DEFAULT: RESERVED : NIL; END; The following may be a partial output generated by a TDL processor in the description section: Identifier G_GAS_DEVICE W_WATER_DEVICE E_ELECTRIC_DEVICE

      Value

      Definition Element present when the End Device is a gas meter. See G_GAS_DEVICE_RCD for details. Element present when the End Device is a water meter. See W_WATER_DEVICE for details. Element present when the End Device is an electricity meter. See E_ELECTRIC_DEVICE for details.

      J.2.15 element The element introduces the BIT FIELD OF derived type. This maps to the BNF.bfldType. This type is defined to be local to the parent scope (either Standard or Manufacturer context) TDL, decade, table, or procedures (see Rules for inheritance and referencing scoped types and identifiers).

      J.2.15.1 DTD

      J.2.16 Attributes Name name

      Document Form Equivalent Publishes the bit field name in the syntax and description sections.

      type

      Publishes the bit field type in the syntax section.

      replace

      The text Replaces: target in the description of the packed record shall be generated.

      override

      The text Overrides: target in the description of the bit field shall be generated.

      498

      Description The bit field identifier. This identifier can be used to refer to this bit field. Bit field names shall be expressed according to the BNF.bfldIdentifier rule and shall be unique within the defining scope. An Atomic element type that can be used to establish the size of the bit field and its transmission requirements. The type shall be expressed as BNF. bfldAssignedType. A reference to a BIT FIELD identifier in accordance with BNF.bfldReference, whose type is mapped to a new type. Any reference to the old type, from any context, will access the new definition. This feature enables one Standard to be derived from another; and for a manufacturer device class to define (thus document) Standard opaque fields. Notes: 1. A referenced type can be replaced only once. Replacement of a type that has already been previously replaced by another type is not permitted. 2. The replaced type cannot be defined in the same XML file that defines the original packed record for that type. 3. Replaced types shall have identical element offsets and indices for existing elements, and they may expose additional detail to internal structure of element that is otherwise opaque. 4. The application processor is encouraged to issue a warning upon all encounters of replaced types. A relaxed variation of the replace attributes. An override of a BIT FIELD identifier, in accordance with BNF.bfldReference, whose type is mapped to a new type. Any reference to the old, from any context, type will access the new definition. This feature enables one standard to be derived from another; and for a manufacturer device class to displace, and then re-create any bit field. Notes: 1. An overridden type can be displaced only once. Override of a type that has already been previously replaced by another type is not permitted. 2. The overridden type cannot be defined in the same XML file that defines the original packed record for that type. 3. Overridden types can change sub-elements

      Historical Background

      redefine

      ANSI C12.19-2008

      The text Redefines: target in the description of the bit field shall be generated.

      strict

      Suffix the term “reference is strict” to the replace, override or redefine referenced type in the description of the bit field generated.

      atomic

      The text "Non-default properties: Atomic = value" in the description of the bit field shall be

      offsets and indices for existing sub-elements, or expose additional detail to internal structure of sub-elements that is otherwise opaque. 4. The application processor is encouraged to issue a warning upon all encounters of overridden types. A reference to a BIT FIELD identifier, in accordance with BNF.bfldReference, whose type is used as a restriction to the newly defined bit field in the local scope. This feature enables one to ensure that data type structures are maintained while modification to element names or meta-data is desired. This is useful when defining dimension-limiting tables, then reusing only the element types (not the element names or meta-data – descriptions) to introduce the actual limits tables. The presence of this attribute does not absolve the writer from entering the entire element names and types. However, the only variations permitted are limited to  redefinition of  redefinition of  redefinition of  redefinition of name attributes. The referred bit field is left unaffected. Notes: 1. A redefined type can be redefined any number of times. Redefinition of a type that has already been previously redefined elsewhere is permitted. 2. Redefined types can be defined in the same XML file, which also provided the original definition for bit field that is now being redefined. 3. Redefinition of a replaced, overridden or redefined bit field is permitted. When the redefined type is encountered in the same XML file (see note 2 above), the redefinition shall be applied after the application of any replace or override directives (i.e. replacements are processed prior to redefinitions). When bit field is created and the replace, override, or redefine attribute is asserted, then the search rule for the target type will be strict (if strict is set to true, the default value) or not strict (if the strict attribute is set to false). A strict search requires that the implied or explicit target scope contain the replaced or redefined type. A non strict search requires that the implied or explicit target scope is where the search will start in the End Device scope hierarchy, i.e. the first encounter of the target type within any of the parent scopes will be considered a match for the sought replaced or redefined type. An indication (when true) stating that this bit field can only be read or written entirely as one unit. The only permitted value shall be true.

      499

      ANSI C12.19-2008

      label

      Historical Background

      generated.. None.

      accessibility

      The text "Non-default properties: Accessibility = value" in the description of the bit field shall be generated.

      metrological

      The text "Non-default properties: Metrological = value" (true or false) in the description of the packed record shall be generated. The text Deprecated in the description of the bit field shall be generated..

      deprecated

      A text field that may be presented as an alternative to the value of the attribute name. If this optional attribute is not provided then applications shall present the value of the name attribute. The bit field access restrictions. Possible values are: READONLY: this bit field may be accessed but not modified. WRITEONLY: this bit field be accessed and modified. It contains one or more members that may not read back exactly the values written to them. READWRITE: this bit field is can be written and its values read-back from the End Device. The value read shall be identical to the value last written. The default value is READWRITE. An indication that this bit field is metrological. Thus any Table or Element that contains it is also metrological. Default value is false. Indicates that this bit field is deprecated and is likely to be removed or renamed in future releases of the TDL. Default value is false.

      J.2.16.1 Document Form The definitions are mapped to BNF.bfldType in the syntax section, and all the descriptions and enumerations are expressed in description section. Example: Given the XML text below:

      Selectors indicating action to be performed upon activation of selected table.

      Variable that specifies the condition upon which the pending table shall be made active. The trigger condition is stored in the EVENT_STORAGE record.



      Pending Table is activated based on an absolute time contained in the EVENT_STORAGE record. The time is interpreted as SDATE_TIME.

      The pending table is activated based on a relative time contained in the EVENT_STORAGE record.

      500

      Historical Background

      ANSI C12.19-2008



      The pending table is activated based on a non-time associated trigger contained in the EVENT_STORAGE record.





      The following may be a partial output generated by a TDL processor in the syntax section: TYPE STATUS_BFLD = BIT FIELD OF UINT8 EVENT_CODE : UINT(0..3); … END; The following may be a partial output generated by a TDL processor in the description section: Identifier

      Value

      STATUS_BFLD

      Selectors indicating action to be performed upon activation of selected Pending Table.

      EVENT_CODE

      Definition

      Variable that specifies the condition upon which the Pending Table shall be made active. The trigger condition is stored in the EVENT_STORAGE record. 0

      1 2 3..15

      Pending Table is activated based on an absolute time contained in the EVENT_STORAGE record. The time is interpreted as SDATE_TIME. Pending Table is activated based on a relative time contained in the EVENT_STORAGE record. Pending Table is activated based on a non-time associated trigger contained in the EVENT_STORAGE record. Reserved.

      J.2.17 Element (Child of ) The element binds a bit field member type to an identifier. This type is defined to be local to the bit field scope.

      J.2.17.1 DTD

      J.2.17.2 Attributes Name name

      type startBitInclusive

      endBitInclusive

      label enumerator

      min

      502

      Document Form Equivalent Publishes the Subelement name in the syntax and description sections.

      Publishes the Subelement type in the syntax section. Publishes the starting bitposition of bits for the selected type within parenthesis ‘(‘ and ‘)’ in the syntax section. It also controls the publication numeric range for the type in the description section. Publishes the ending bitposition of bits for the selected type within parenthesis ‘(‘ and ‘)’ in the syntax section. It also controls the publication numeric range for the type in the description section. None. Publishes the Subelement enumeration reference in description sections. Impacts on low bound publication in the description section.

      Description The Sub-element name identifier. This identifier can be used to refer to the table . Subelement names instances shall be unique within the parent bit field element scope. i.e. multiple definitions are possible when they are introduced within or elements. In those cases the sub-element names shall be introduced in such a manner that each instance of the identifier can only be instantiated once inside the bit field. The Sub-element type. The type limits its type and bit offsets size. The bit number representing the first bit of this Subelement.

      The bit number representing the last bit of this subelement. If it is not supplied then it takes the value of the startBitInclusive.

      A textual label used to label the sub-element in a graphic context. A reference to an enumerator identifier whose values/label pairs is associated with the values of this Sub-element. The smallest value (inclusive) this sub-element may have.

      Historical Background

      max atomic

      accessibility

      volatile

      metrological

      deprecated

      ANSI C12.19-2008

      Impacts on high bound publication in the description section. None

      The largest value (inclusive) this sub-element may have.

      An indication (always “JOIN”) stating that this Subelement can only be read or written entirely as one unit and is joined to the next Sub-element in the sequence of Sub-elements. The text "Non-default The sub-element access restrictions. Possible values properties: Accessibility = are: value" in the description of READONLY: this sub-element be accessed but not the Sub-element shall be modified. generated. READWRITE: this sub-element is may be written and its values read-back from the End Device. WRITEONLY: this sub-element may be accessed and modified. It may not read back exactly as written. The text "Non-default An indication of the Sub-element’s volatility. When properties: Volatile = volatile is set to true then the value of this Subvalue" in the description of element may change between consecutive reads, the Sub-element shall be implying that the element should not be cached by generated. the AMI application, as it may change. When set to false, then it is an indication that this Sub-element is not likely to change between consecutive reads (assuming no operator intervention); it is therefore safe for the AMI application to cache the Subelement’s value.

      The text "Non-default properties: Metrological = value" in the description of the Sub-element shall be generated. The text Deprecated in the description of the element shall be generated.

      When the volatile attribute is set to “AUTO_AS_PER_ROLE” (default value) then the values of the Table’s attribute role should be probed to determine the volatility of this element’s according to the Table’s role as follows: “CONTROL” sets volatility to false; “DATA” sets volatility to true; “LIMITING” sets volatility to false; “ACTUAL” sets volatility to false; “UNDEFINED” sets volatility to true; “PRIVATE” sets volatility to true. An indication that this Sub-element is metrological. Default value is false.

      Indicates that this Sub-element is deprecated and is likely to be removed or renamed in future releases of the TDL. Default value is false.

      J.2.17.3 Document Form Equivalent The definitions are mapped to BNF.bfldMember; and all the descriptions and enumerations are expressed in description section. For Document Form publication example see definition of above.

      J.2.18 Element (Child of ) The element provides for encoding alternatives syntax based on a conditional expression.

      503

      ANSI C12.19-2008

      Historical Background

      J.2.18.1 DTD

      J.2.18.2 Attributes Name Condition

      Table document equivalent Published in the syntax section between the IF and THEN tokens.

      Description An expression encoded as BNF.intMathExpression and reduces to a Boolean value.

      J.2.18.3 Document Form The definitions are mapped to BNF.bfldIf in the syntax section. Any elements that precede are contained in the element may be produced in the syntax section prior to the introduction of the BNF.bfldIf syntax enclosed within the comment characters ‘{‘ and ‘}’. For Document form publication example see /, / of .

      J.2.19 Element (Child of /) The element introduces Table Sub-elements that are present when the ’s parent attribute condition evaluates to true.

      J.2.19.1 DTD

      J.2.19.2 Attributes None

      J.2.19.3 Document Form The definitions are mapped to the BNF.bfldMember member’s THEN clause of the BNF.bfldIf clause. If this element contains a element then the description may be produced in the syntax section following to the THEN token. This description shall be enclosed within the comment characters ‘{‘ and ‘}. All elements enclosed will be published in the syntax section. All Sub-elements’ descriptions and enumerations may be published in the description section.

      J.2.20 Element (Child of /) The element introduces Table Sub-elements that are present when the ’s parent attribute condition evaluates to false.

      J.2.20.1 DTD definition

      504

      Historical Background

      ANSI C12.19-2008

      J.2.20.2 Attributes None

      J.2.20.3 Document Form The definitions are mapped to the BNF.bfldMember member’s ELSE clause of the BNF.bfldIf clause. If this element contains a element then the description may be produced in the syntax section following to the ELSE token. This description shall be enclosed within the comment characters ‘{‘ and ‘}. All elements enclosed will be published in the syntax section. All Element descriptions and enumerations may be published in the description section. For Document form publication example see /, of .

      J.2.21 Element (Child of ) The element introduces a selector expression. The child elements are to be included when a startValueInclusive/endValueInclusive attributes match the evaluated expression of the selection attribute. The optional child element is to be processed by the application when the expression evaluates none of the available selection. For Document form publication example see /, / of .

      J.2.21.1 DTD

      J.2.21.2 Attributes Name selection

      Document Form Equivalent Publishes the switch selector expression in the syntax section.

      Description An expression encoded as BNF.intMathExpression and reduces to a integer value.

      J.2.21.3 Document Form The definitions are mapped to the BNF.bfldCase syntax. If this element contains a element then the description may be produced in the syntax section just prior to the SWITCH token. This description shall be enclosed within the comment characters ‘{‘ and ‘}.

      J.2.22 Element (Child of /) The definitions are mapped to the BNF.bfldCaseMember which introduces the CASE token in the syntax section.

      J.2.22.1 DTD

      505

      ANSI C12.19-2008

      Historical Background

      J.2.22.2 Attributes Name startValueInclusive endValueInclusive

      Document Form Equivalent Publishes the case lowbound value in the syntax section. Publishes the case highbound value in the syntax section.

      Description The selection case lower bound or value for the contained bit field syntax. The selection case for the upper bound for the contained bit field syntax.

      J.2.22.3 Document Form The definitions are mapped to the BNF.bfldCaseMember CASE token and related ranges. The startValueInclusive and the optional endValueInclusive range attributes are expressed only in the syntax section followed by the Sub-elements definitions. All Sub-element descriptions and enumerations may be published in the description section. If this element contains a element then the description may be produced in the syntax section just prior to the CASE token. This description shall be enclosed within the comment characters ‘{‘ and ‘}.

      J.2.23 Element (Child of /) The definitions are mapped to the BNF.bfldCaseMember DEFAULT token syntax.

      J.2.23.1 DTD

      J.2.23.2 Attributes None.

      J.2.23.3 Document Form The definitions are mapped to the default clause of the BNF.bfldCaseMember DEFAULT syntax followed by the Sub-elements definitions. All Sub-element descriptions and enumerations may be published in the description section. If this element contains a element then the description may be produced in the syntax section just prior to the CASE token. This description shall be enclosed within the comment characters ‘{‘ and ‘}.

      J.2.24 Element (Child of ) The decade element introduces a Decade. A Decade is a common processing scope, and it can contain a maximum of ten Tables of any one kind. Standard or Manufacturer defined Tables or procedures may also be associated with a Decade, thus effectively increasing the total number of tables in a decade. All types (see , and elements) defined inside a decade scope are local to the decade’s scope without conflict with all other types that may be defined in any other scope (see Rules for inheritance and referencing scoped types and identifiers). However, these types are visible to associated tables or procedures, as if they were introduced inside the decade scope.

      J.2.24.1 DTD

      J.2.24.2 Attributes Name name

      Document Form Equivalent Publishes a new section heading for the named decade. Optionally publishes the decade name in a manner that binds its name to its number.

      number

      Publishes the Decade number in the section heading.

      label

      Published in the Decade section header.

      Description The decade identifier encoded as BNF.decIdentifier. This identifier can be used to refer to the decade symbolically or be incorporated into a reference to a component that was defined inside the decade. Decade names shall be encoded according to the BNF.decIdentifier syntax and shall be unique within one End Device class across all defining TDL XML Form files (i.e. including all Standard and manufacturer referenced XML file segments or referenced TDLs). The decade number, ranging from 0 to 203. This number shall be used as a substitute for the decade name in an arithmetic expression. Decade numbers shall be unique for one End Device class, just like decade names. A textual label used to label the container in a graphic context. It shall be incorporated in the description of the decade in the Standard.

      J.2.24.3 Document Form Introduces a Decade section whose name is obtained from the name attribute, number from the number attribute, and description from the element. Following the decade description the Decade scope type definition syntax and type descriptions are presented, followed by the Tables defined in the decade. The Tables shall be ordered in increasing table number. Decades shall be ordered in increasing Decade number. Example: Given the XML text below:

      This decade contains tables associated with data sources. …

      The following may be a partial output generated by a TDL processor in the description section: 9.2 Decade 1: Data Source Tables This decade contains tables associated with data sources. … Identifier

      Value

      Definition

      DATA_SOURCE_DEC

      1

      Implicit numerical constant designation for Data Source Tables number.

      507

      ANSI C12.19-2008

      Historical Background

      J.2.25 Element (Child of or ) The
      Element introduces a Table definition and a Table scope. All types (see , and elements) defined inside a table scope are local to the table’s scope without conflict with any other type that may be defined in any other scope.

      J.2.25.1
      DTD

      class ((CDATA) | STD | STD.UDT | STD.EUDT) “STD”>

      J.2.25.2
      Attributes Name name

      number

      Document Form Equivalent Publishes a new section heading for the named table. Optionally publishes the table name in a manner that binds its name to its number. Then it publishes the table name in the syntax section. Publishes the Table number in the section heading. Then it publishes the table number in the syntax section.

      label

      Published in the Table section header.

      type

      Then it publishes the table type in the syntax section.

      role

      The text "Non-default properties: role = value" in

      508

      Description The table identifier encoded as BNF.tblIdentifier. This identifier can be used to refer to the Table or be incorporated into a reference to a component that was defined inside this Table. Table names shall be unique for one device class TDL definition (i.e. including all Standard and manufacturer referenced XML file segments or referenced TDLs). The Table number, ranging from 0 to 2039. This number shall be used as a substitute for the table name in arithmetic expressions. Table numbers shall be unique within one Standard TDL or one Manufacturer device class TDL (i.e. Standard table numbers and Manufacturer table numbers can be identical, since the application uses TABLE_Id_BFLD.STD_VS_MFG_FLAG and the deviceClass attribute to resolve this ambiguity). A textual label used to label the container in a graphic context. It shall be incorporated in the description of the table in the Standard. A reference to a packed record identifier whose type is mapped to this table according to the rules for inheritance and referencing scoped types and identifiers. An indication of the use case for this Table.

      Historical Background

      ANSI C12.19-2008

      the description of the Table shall be generated.

      UNDEFINED (default): This End Device Table has no known role. LIMITING: This End Device Table contains function control limiting (FLC Table) values. ACTUAL: This End Device Table contains actual function limiting (FLC+1 Table) values. CONTROL: This End Device Table contains control program parameters. DATA: This End Device Table information or sensor values.

      contains

      data

      PRIVATE: This End Device role is proprietary and its purpose was not disclosed. When the volatile attribute is set to “AUTO_AS_PER_ROLE” then the following values shall be assumed for Table volatility as follows: role = “UNDEFINED” sets volatility to true. role = “LIMITING” sets volatility to false. role = “ACTUAL” sets volatility to false. role = “CONTROL” sets volatility to false. role = “DATA” sets volatility to true. role = “PRIVATE” sets volatility to true. A reference to a decade identifier that represents the decade associated with this table. Search for unqualified references to packed records or bit fields that are not found in the local scope of this table will continue in the associated decade scope, as if this table was defined inside the associated decade. The Table is monolithic, when true. When communicating an atomic Table it shall be transported and presented as one unit, including all of its internal element members. The communication protocol shall only utilize a full-table read or full-table write service requests when referencing this table. Implementer's intended design for read and write access for a this Table. Possible values are:

      associate

      The text “Associated with scope: target” in the description of the Table shall be generated.

      atomic

      The text "Non-default properties: Atomic = value" in the description of the Table shall be generated.

      accessibility

      The text "Non-default properties: Accessibility = value" in the description of the Table shall be READWRITE (default): This Table can be read or generated. written from or to the End Device. READONLY: This Table can be read from or to the End Device but not written. WRITEONLY: his Table can be read or written from or to the End Device. It contains one or more Elements that may not read back exactly as written. UNIMPLEMENTED: This Table is not implemented in this End Device, therefore it should not be listed in GEN_CONFIG_TABLE. EXTERNAL: This Table is implemented in this End Device, however it is not accessible from the End Device. An appropriate EDL XML document

      509

      ANSI C12.19-2008

      Historical Background

      needs to be read externally by the AMI application in order to determine the values assumed by the Elements of this Table. deprecated metrological

      volatile

      class

      The text Deprecated in the description of the Table shall be generated. The text "Non-default properties: Metrological = value" in the description of the Table shall be generated. The text "Non-default properties: Volatile = value" in the description of the Table shall be generated.

      None.

      The default value is READWRITE. Indicates that this Table is deprecated and is likely to be removed or renamed in a future release of the TDL. Default value is false. An indication that this Table is metrological. Default value is false. Note: If any element within the Table is metrological then the entire table shall be metrological. An indication of the Table’s volatility. When volatile is set to true then the values of this Table may may change between consecutive Table reads, implying that the Table’s elements should not be cached by the AMI application, as they may change. When set to false, then it is an indication that this Table is not likely to change between consecutive reads (assuming no operator intervention); it is therefore safe for the AMI application to cache the Table values. When the volatile attribute is set to “AUTO_AS_PER_ROLE” (default value) then the values of the Table’s attribute role should be probed to determine the volatility of this Table. A tag that identifies an AMI Application run-time class (module) that should be used to manage this Table. Presently the following Standard classes are defined: STD (default value) – Process the Table according to the default actions called for those Tables by this Standard. STD.UDT – To process User-defined Tables; STD.EUDT – To process Extended User-defined Tables; Meter manufacturer may disclose special processing algorithms and bind them to processing class names to facilitate special data processing on select tables.

      J.2.25.3
      Document Form The
      definitions are mapped to BNF.tableDefinition in a new Table section. All the Table scope defined (contained) descriptions, enumerators, packed records and bit fields are published in this section. Example: Given the XML text below:


      TIME_REMAIN_TBL (Table 56) provides predictive time quantities.

      510

      Historical Background

      ANSI C12.19-2008



      Minutes remaining until the next tier change which affects summations. Used when the capability flag ACT_TIME_TOU_TBL. SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE.



      Minutes remaining before the next tier change which affects demands. Used when the capability flag ACT_TIME_TOU_TBL. SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE.



      Minutes, remaining before the next tier change.



      Days remaining before the next scheduled self read.

      The following may be the output generated by a TDL processor in the new Table section: 9.6.7 Table 56 Time Remaining Table Table 56 Description TIME_REMAIN_TBL (Table 56) provides predictive time quantities. Table 56 Non-default properties: Atomic = true, Role = DATA, Accessibility = READONLY. Table 56 Type Definitions TYPE TIME_REMAIN_RCD = PACKED RECORD IF ACT_TIME_TOU_TBL.SEPARATE_SUM_DEMANDS_FLAG THEN SUMM_TIER_TIME_REMAIN : UINT16; DEMAND_TIER_TIME_REMAIN : UINT16; ELSE TIER_TIME_REMAIN : UINT16; END;

      511

      ANSI C12.19-2008

      Historical Background

      SELF_READ_DAYS_REMAIN

      : UINT8;

      END; TABLE 56 TIME_REMAIN_TBL = TIME_REMAIN_RCD; Table 56 Element Descriptions Identifier

      Value

      TIME_REMAIN_RCD SUMM_TIER_TIME_REMAIN 0..65535

      DEMAND_TIER_TIME_REMAIN 0..65535

      TIER_TIME_REMAIN

      0..65535

      SELF_READ_DAYS_REMAIN 0..255

      Definition Minutes remaining until the next tier change which affects summations. Used when the capability flag ACT_TIME_TOU_TBL. SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE. Minutes remaining before the next tier change which affects demands. Used when the capability flag ACT_TIME_TOU_TBL. SEPARATE_SUM_DEMANDS_FLAG (Table 51) = TRUE. Minutes, remaining before the next tier change. Days remaining before the next scheduled self read.

      J.2.26 Element (Child of or ) The element introduces a procedure definition that maps to BNF.procDefinition and creates a Procedure scope. All types defined inside a procedure scope are local to the procedure’s scope without conflict with all other types that may be defined in any other scope. In addition to providing yet another scope, procedure elements also provide implicit instructions to construct the parameters and the response elements in Table 7, PROC_INITIATE_TBL and Table 8, PROC_RESP_TBL (See Section 5.12 “Procedures” for details).

      J.2.26.1 DTD

      atomic ( true | false ) "true" accessibility (UNIMPLEMENTED | WRITEONLY | READWRITE) “READWRITE” deprecated (true | false) “false” metrological (true | false) “false” class ((CDATA) | STD) “STD”>

      J.2.26.2 Attributes

      512

      Historical Background

      Name name

      number

      ANSI C12.19-2008

      Document Form Equivalent Publishes a new section heading for the named procedure. Optionally publishes the procedure name in a manner that binds its name to its number. Then it publishes the procedure name in the syntax section of Table 7, and Table 8. Publishes the Procedure number in the section heading. Then it publishes the procedure number in the syntax section.

      Description The Procedure identifier encoded as BNF.procIdentifier. This identifier can be used to refer to the procedure or be incorporated into a reference to a component that was defined inside this Procedure. Procedure names shall be unique for one End Device class TDL definition (i.e. including all Standard and manufacturer referenced XML file segments or referenced TDLs). The Procedure number, ranging from 0 to 2039. This number shall be used as a substitute for the procedure name in arithmetic. This number shall also be used in generating the unique index for references to procedure parameters (see STD:PROC_INITIATE_TBL.(STANDARD| MANUFACTURER).PARM) and response data (see PROC_RESPONSE_TBL. (STANDARD|MANUFACTURER)..RESP_DATA). Procedure numbers shall be unique within one Standard TDL or one Manufacturer device class TDL (i.e. Standard procedure numbers and Manufacturer procedure numbers can be identical, since the application uses STD:PROC_INITIATE_TBL PROC.STD_VS_MFG_FLAG and the

      deviceClass attribute to resolve this ambiguity). Note: The application shall allocate procedure indices in implicitly STD:PROC_INITIATE_TBL and STD:PROC_RESPONSE_TBL for all procedures that are not explicitly identified in an extend attribute. A textual label used to label the container in a graphic context. It shall be incorporated in the description of the procedure in the Standard. A reference to a decade identifier that represents the decade associated with this procedure. Search for unqualified references to packed records or bit fields that are not found in the local scope of this procedure will continue in the associated decade scope, as if this procedure was defined inside the associated decade. The Procedure is monolithic, when true. When communicating an atomic Procedure it shall be transported and presented as one unit, including all of its internal element members. The communication protocol shall only utilize a full-table read or full-table write service requests when referencing this procedure via Tables 7 or 8. Implementer's intended design for read and write access for a this Procedure. Possible values are:

      label

      Published in the Procedure section header.

      associate

      The text “Associated with scope: target” in the description of the Procedure shall be generated.

      atomic

      The text "Non-default properties: Atomic = value" in the description of the Procedure shall be generated.

      accessibility

      The text "Non-default properties: Accessibility = value" in the description of the Procedure shall be READWRITE (default): This Procedure (Table 7 and generated. 8) can be read or written from or to the End

      513

      ANSI C12.19-2008

      Historical Background

      Device. WRITEONLY: This Procedure can be read or written from or to the End Device. It contains one or more Elements that may not read back exactly as written. UNIMPLEMENTED: This Procedure is not implemented in this End Device, therefore it should not be listed in GEN_CONFIG_TABLE. deprecated

      metrological

      class

      The text Deprecated in the description of the Procedure shall be generated. The text "Non-default properties: Metrological = value" in the description of the Procedure shall be generated. None.

      The default value is READWRITE. Indicates that this Procedure is deprecated and is likely to be removed or renamed in a future release of the TDL. Default value is false. An indication that this Procedure is metrological. Default value is false. Note: If any element within the Procedure is metrological then the entire procedure shall be metrological. A tag that identifies an AMI Application run-time class (module) that should be used to manage this Procedure. Presently the following Standard classes are defined: STD (default value) – Process the Procedure according to the default actions called for those Procedures by this Standard. Meter manufacturer may disclose special processing algorithms and bind them to processing class names to facilitate special data processing on select procedures.

      J.2.26.3 Document Form The definitions are mapped to BNF.procDefinition in a new Procedure section. All the Procedure scope defined (contained) descriptions, enumerators, packed records and bit fields are published in this section. Example: Given the XML text below:

      When invoked, the End Device attempts to reduce the list variable NBR_UNREAD_ENTRIES by the value specified. To execute this procedure, the initiator shall in addition be required to have access to the procedure and write access to the table containing the selected list(s).

      List selected.

      Number of entries confirmed.

      514

      Historical Background

      ANSI C12.19-2008



      The following may be the output generated by a TDL processor in the new Procedure section: 9.1.8.1.6 Procedure 05: Update Last Read Entry Procedure 05 Description When this procedure is invoked, the End Device attempts to reduce the list variable NBR_UNREAD_ENTRIES by the value specified. To execute this procedure, the initiator shall in addition be required to have access to the procedure and write access to the table containing the selected list(s). Procedure 05 Type Definitions TYPE UPDATE_LAST_READ_ENTRY_RCD = PACKED RECORD LIST : UINT8; ENTRIES_READ : UINT16; END; PROCEDURE 5 UPDATE_LAST_READ_ENTRY_PROC REQUEST = UPDATE_LAST_READ_ENTRY_PROC.UPDATE_LAST_READ_ENTRY_RCD; Procedure 05 Element Descriptions Identifier

      Value

      UPDATE_LAST_READ_ENTRY_RCD LIST

      ENTRIES_READ

      Definition List selected. See RESET_LIST_POINTERS_PROC.LIST_ENUM .

      0..65535

      Number of entries confirmed.

      J.2.27 Element (Child of ) The extend element within the procedure element introduces parameter and response field extensions to Table 7, STD.PROC_INITIATE_TBL and Table 8, STD.PROC_RESP_TBL, respectively. When an extension is not provided then the value of the PARM or RESP is NIL.

      J.2.27.1 DTD definition

      J.2.27.2 Attributes

      515

      ANSI C12.19-2008

      Name type

      Historical Background

      Table document equivalent The name of the packed record that is used to define the procedure response or request parameters is published in the syntax section.

      target

      None.

      strict

      Suffix the term “reference is strict” to the description of the Procedure in reference to the request or response parameters.

      Description A reference to a packed record identifier whose type is being used to extend PROC_INITIATE_TBL.STD_PARM_RCD or PROC_RESPONSE_TBL.STD_RESP_RCD (subject to the target selected). The type reference should be encoded as BNF.rcdReference in a manner that it can be resolved completely and correctly in the scope of Table 7 and Table 8. A reference to a target (remote) packed record identifier that is encoded as BNF.rcdReference whose type is being extended. Although it is possible to reference any type, this implementation restricts the resolved reference only to: PROC_INITIATE_TBL.STD_PARM_RCD or PROC_RESPONSE_TBL.STD_RESP_RCD (subject to the target selected). Target data type being extended When target extension record is created the search rule for the target type will be strict (if strict is set to true, the default value) or not strict (if the strict attribute is set to false). A strict search requires that the implied or explicit target scope can only contain the extended type. A non strict search simply requires that the implied or explicit target scope search be searched first then the search continues following the End Device scope hierarchy. The first encounter of the target type within any of the parent scopes will be considered a match for the sought extension.

      J.2.27.3 Document Form See example in definition of . For a fuller discussion and detailed examples see Section 5 on Procedures.

      J.2.28 Element (Child of ) The qualify element enables the Standard and the End Device Manufacturer extensions to the Standard provide additional information about decades, table, procedures as a whole or about single elements that are defined within. General qualifications can be provided by the Standard (as published in C12.19). These are considered to be suggestions to implementers. Additional qualifications or re-qualifications can be provided by manufactures when they register they device classes (new meter models) to describe the actual restrictions, capabilities and features of their device. Therefore, a manufacturer device class can add, replace or extend any Standard qualification.

      J.2.28.1 DTD

      J.2.28.2 Attributes None

      516

      Historical Background

      ANSI C12.19-2008

      J.2.28.3 Document Form When expressing the qualified information in Document form as part of the Standard then it shall document the corresponding types, Tables and Elements where defined, in-line, as if the types, Tables or Elements where qualified at the definition time. When expressing the qualified information in Document form as part of a specific End Device registration then it shall document the corresponding changes to types, Tables and Elements in a tabular form that identifies the components affected and the nature of the qualification applied.

      J.2.29 element (Child of element) Qualifies the properties of a pre-defined Table. Any supplied attribute value acts to override the value set at definition time. For example if a Table is defined to be atomic (atomic=”true”) and it is re-qualified as atomic=”false” then it is no longer atomic.

      J.2.29.1
      DTD definition

      J.2.29.2
      Attributes Name

      Table document equivalent

      name alias

      atomic accessibility class role volatile metrological deprecated

      Publishes the fact that name is “also known as” alias.

      Description The table identifier encoded as BNF.tblIdentifier. This identifier shall refer to an already defined Table. An alias is an alternate name for a table. This name can be used to address the named table. Each instance of an entry with alias attribute will add a new alias for the table name list. See atomic attribute of /
      and| /
      See accessibility attribute of /
      and /
      See class attribute of /
      and /
      See role attribute of /
      | /
      See volatile attribute of /
      and /
      See metrological attribute of /
      and /
      See deprecated attribute of /
      and /


      517

      ANSI C12.19-2008

      Historical Background

      J.2.30 Element (Child of ) Qualifies the properties of a pre-defined Procedure. Any supplied attribute value acts to override the value set at definition time.

      J.2.30.1 DTD

      J.2.30.2 Attributes Name

      Table document equivalent

      name

      The procedure identifier encoded as BNF.procIdentifier. This identifier shall refer to an already defined Procedure. Publishes the fact that An alias is an alternate name for a procedure. This name is “also known as” name can be used to address the named procedure. alias. Each instance of an entry with alias attribute will add a new alias for the procedure name list. See atomic attribute of / and /< procedure > See accessibility attribute of / and / See metrological attribute of / and /< procedure > See deprecated attribute of / and /

      alias

      atomic accessibility metrological deprecated

      Description

      J.2.31 Element (Child of ) Qualifies the properties of a pre-defined Table Element. Any supplied attribute value acts to override the value set at definition time.

      J.2.31.1 DTD

      J.2.31.2 Attributes Name

      Table document equivalent

      name

      alias

      Publishes the fact that name is “also known as” alias.

      atomic accessibility metrological volatile deprecated

      Description The element identifier encoded as BNF.elementReference. This identifier shall refer to an already defined Element or Final Element of a defined Table. An alias is an alternate name for an Element or Final Element. This name can be used to address this attribute or final element. The alias applies to the tail end of the element identified. Each instance of this element with an alias attribute adds an alias to the alias list for this element. See atomic attribute of , , or . See accessibility attribute of , , or . See metrological attribute of , , or . See volatile attribute of , , or . See accessibility attribute of , , or .

      J.2.32 Element (Child of ) Qualifies the properties of a pre-defined PACKED RECORD type. Any supplied attribute value acts to override the value set at definition time.

      J.2.32.1 DTD

      J.2.32.2 Attributes Name name atomic accessibility metrological deprecated

      Table document equivalent

      Description The PACKED RECORD type identifier encoded as BNF.rcdReference. This identifier shall refer to an already defined packed record. See atomic attribute of . See accessibility attribute of . See metrological attribute of . See deprecated attribute of .

      519

      ANSI C12.19-2008

      Historical Background

      J.2.33 Element (Child of ) Qualifies the properties of a pre-defined BIT FIELD type. Any supplied attribute value acts to override the value set at definition time.

      J.2.33.1 DTD

      J.2.33.2 Attributes Name

      Table document equivalent

      name

      Description The BIT FIELD type identifier encoded as BNF.bfldReference. This identifier shall refer to an already defined bit field. See atomic attribute of . See accessibility attribute of < bitField >. See metrological attribute of < bitField >. See deprecated attribute of < bitField >.

      atomic accessibility metrological deprecated

      J.2.34 Element (Child of ) The assert element is provided to document additional relationships among Table and Elements to enable application alert processing.

      J.2.34.1 DTD



      J.2.34.2 Attributes Name raise Text

      520

      Document Form Equivalent

      Description Indicates the type of assertion to be raised when the indicated expression (see condition element) evaluates to true. This is a short text message that will be generated when the assertion is raised.

      Historical Background

      ANSI C12.19-2008

      J.3 EDL XML Format J.3.1 Overview The EDL XML Form is described in this Annex. It is an expression of the TDL/EDL architecture described in the previous Annex. The EDL XML Form is used to express End Device data values that make up the device tables in a manner that is independent solely on the ANSI C12.19 Tables and independent of the communication protocol used to acquired them. The EDL XML Form provides the following features: 1. XML encoding of default sets used values assigned to the Standard’s FLC and FLC+1 tables. 2. XML encoding of constants or fixed values that may be assigned to select elements within Standard Tables by the Standard. 3. XML encoding of constant or fixed values that may be assigned to select elements of Standard or Manufacturer tables by the End Device manufacturer. 4. XML encoding of Final Element values that were read from or written to an End Device by any communication protocol (e.g. ANSI C12.18, ANSI C12.21 or ANSI C12.22). The EDL XML Form file is associated with one specific End Device model, thus it is uniquely associated with an End Device class. This property implies that the structure of the EDL file is derived from the data model of all tables (Standard and Manufacturer) and all procedures (Standard and Manufacturer) that are defined for that End Device class. The EDL XML Form can be validated by an EDL schemas like C1219TDL-xxxx-EDLSchema.xsd (for exclusively Standard based End Devices) or by augmented schemas like EDLSChema.xsd (for Manufacturer expansion on the Standard). In this context xxxx stands for the Standard’s year of publication and is the registered End Device class. These schemas can be automatically generated from the Standard and Manufacturer TDL XML Form using an XSL transform, such as the C1219TDLEDLTransform.xsl and related technology. Thereafter, default sets, constant values and End Device communicated Final Element values can be imported and exported using the EDL XML Forms, like C1219TDL-xxxx-DefaultSet.xml or .xml, where xxxx is the Standard’s year of publication and is the registered End Device Class (although the use of does not have to be encoded in the name of the EDL XML Form). The EDL XML Form file may also be processed to yield a printable EDL Document Form for inclusion in the Standard’s or manufacturer’s documentation.

      J.3.2 Root Element The element is a container of the End Device default sets, constants and imported or exported Final Element data values. It provides some limited meta-data, such as Table name, Table number, Table source being the Standard or the manufacturer, the names of Final Elements and their index position within the containing packed record or bit field. The element also documents the End Device class attribute (deviceClass), that identifies the matching TDL XML Form file of that End Device class. A tables’ subset document can describe Standard table definitions, extend (or revise) an existing Standard into new Standard or extend existing an Standard using manufacturer-supplied extensions. There shall be only one element in an EDL XML Form file. The target EDL XML Form namespace and the EDL Schema namespace shall be derived uniquely from the End Device class registered via a TDL XML Form file.

      J.3.2.1 DTD The element has the following attributes and child elements.

      521

      ANSI C12.19-2008

      Historical Background



      J.3.2.2 Attributes Name xmlns[:name]

      deviceClass

      registry

      isoBranch

      version

      title

      defaultSetUsed

      Document Form Equivalent Not expressed in Document Form.

      In the Document Form heading section of the constant data, default sets or import/export data. In the Document Form heading section of the constant data, default sets or import/export data. In the Document Form heading section of the constant data, default sets or import/export data. In the Document Form heading section of the constant data, default sets or import/export data. In the Document Form heading section of the constant data, default sets or import/export data. In the Document Form heading section of the constant data, default sets or import/export data.

      Description The reference EDL Schema namespaces used. One of one of these namespaces shall be identical to the target namespace of the EDL XML validation schema as defined by its targetNamespace attribute. That namespace shall be derived uniquely from the registry and deviceClass attributes. The deviceClass defines the registered TDL for that End Device class. This is derived from the deviceClass attribute of the TDL root XML Form element. The name of the entity that is the registrar of this End Device class. The ISO branch attribute associates a registry name with an ISO object directory branch. The deviceClass attribute is relative to this branch. The version of this data set. This may be used as an to an AMI application to for early identification of the nature of the EDL data sets contained within. The text to display in a graphic context or at the beginning of the data document. Example: “ANSI C12.19-2008 Utility Industry Standard Table Default Sets”. The default set to use when the value of the final element GEN_CONFIG_TBL.DEFAULT_SET_USED is not explicitly available from this data set.

      J.3.2.3 Document Form A default set section values section is introduced (when default sets are provided); or a new constants section is introduced (when constants are provided) otherwise a new End Device values section is introduced. Default sets section is Annex C, “Default Sets for Decade Tables”.

      J.3.3 Element (Child of )

      522

      Historical Background

      ANSI C12.19-2008

      The element is an optional text-formatting element that accepts simple formatting directives. It provides a text area to document the EDL.

      J.3.3.1 DTD Identical to the DTD definition of the element of the TDL XML Form.

      J.3.3.2 Document Form The formatted text is produced.

      J.3.4 Pseudo Element Names In order to facilitate TDL XML Form driven Table names and Element names generation the Standard introduces the BNF definitions for XML-element macro types. These need to be substituted for the actual names of the indicated content (in this case an Element name). The following macros are defined: ${tableName}

      ::= BNF.tblIdentifier / constraint : text { The name of a Table obtained from the name attribute of a
      element. } / match : ‘/tdl//table/@name’ ;

      ${limitingTableName}

      ::= BNF.tblIdentifier / constraint : text { The name of a FCL+1 Table as obtained from the name attribute of a
      element that is also qualified as “LIMITING”. } / match : ‘/tdl//table/@name[@role=”LIMITING”]’ ;

      ${elementName}

      ::= BNF.anyElementName / constraint : text { Any Element or Final Element that may be used as a component in the path that leads to a the value of a Final Element. } ( / match : ‘/tdl//element/@name’ | / match : ‘/tdl//subElement/@name’ | / match : ‘/tdl//array/@name’ | / match : ‘/tdl//set/@name’ );

      For example if the TDL XML Form contains entries like: …

      523

      ANSI C12.19-2008

      Historical Background

      and …

      J.3.5 Resolving Second Edition XML Schema Constraints With the release of the second edition of the states: “Schema Component Constraint: Element Declarations Consistent If the {particles} contains, either directly, indirectly (that is, within the {particles} of a contained model group, recursively) or ·implicitly· two or more element declaration particles with the same {name} and {target namespace}, then all their type definitions must be the same top-level definition, that is, all of the following must be true: 1 all their {type definition}s must have a non-·absent· {name}. 2 all their {type definition}s must have the same {name}. 3 all their {type definition}s must have the same {target namespace}.” Ref: Section 3.8.6 Constraints on Model Group Schema Components, XML Schema Part 1: Structures Second Edition, W3C Recommendation 28 October 2004.

      J.3.5.1 The Schema Constraints Problem ANSI C12.19 promotes the construction of types that do not meet the above constraint. Schema Component Constraint violation can be seen clearly in the definition of Table 5, Device Identification Table. TYPE IDENT_RCD = PACKED RECORD IF GEN_CONFIG_TBL.ID_FORM != 0THEN IDENTIFICATION : BCD(10); ELSE IDENTIFICATION : STRING(20); END; END; TABLE 5 DEVICE_IDENT_TBL = IDENT_RCD; It is rather obvious that this table contains the Element IDENTIFICATION, which repeats three times in the same packed record. Also each IDENTIFICATION definition has different types. This problem can only manifest itself in elements delimited by IF / THEN / ELSE or SWITCH / CASE / DEFAULT statements (see Document Form syntax).

      J.3.5.2 Resolution of The Schema Constraints Problem The EDL XML form definition introduces the macro notation ${if-switch-clause} to be used ahead of any collection of EDL elements that are derived form TDL elements contained within a …, …, … or … members of the and XML elements. Each instance of the ${if-switch-clause} has to be unique so that the Schema Component Constraint is not violated. Otherwise this element shall be ignored by all processors. ${if-switch-clause}

      524

      ::= ((‘if-then‘ | ‘if-else’ | ‘switch-case’ | ‘switch-default’) ‘-‘ BNF.number) / constraint : text { Each instance of this element shall be automatically generated by the EDL processor so that the Schema Component Constraint is not violated. } ;

      Historical Background

      ANSI C12.19-2008

      J.3.6 Element The element is optional unless its absence can lead to a Schema Component Constraint violation.

      J.3.6.1 DTD

      Using the above DEVICE_IDENT_TBL example, it can be demonstrated that the following XML EDL file element names are uniquely consistent with the XML schema constraint rules. Case 1:



      MY BEST METER

      J.3.7.2 Attributes Name number

      Document Form Equivalent Label for the default set number column.

      Description The number of the default set presented by the parent element. For more details see GEN_CONFIG_TBL.DEFAULT_SET_USED.

      J.3.7.3 Document Form A tabulation of all Final Elements listed as one column for the table indicated by the

      $

      525

      ANSI C12.19-2008

      Historical Background

      {limitingTableName} attribute per default set number indicated by the number attribute. These are sorted first by table number followed by the element index. Given the XML text below:

      The following values are assigned to the decade and decade+1 table values based upon the value of the Table 00 element DEFAULT_SET_USED.



      false false false false false false false 0

      0 0 1 1 1 2 1





      false true true false false false false 0

      0 1 1 2 1 2 2





      526

      Historical Background

      ANSI C12.19-2008

      true true true false false false false 0

      0 3 1 2 1 2 2





      false false true false false false false 0

      0 1 1 2 1 2 2



      The following may be a partial tabular output generated by an EDL processor: The following values are assigned to the decade and decade+1 table values based upon the value of the TABLE 00 variable DEFAULT_SET_USED. Final Element Name TABLE 11 - ACT_SOURCES_LIM_TBL SOURCE_FLAGS PF_EXCLUDE_FLAG RESET_EXCLUDE_FLAG BLOCK_DEMAND_FLAG SLIDING_DEMAND_FLAG

      1 FALSE FALSE FALSE FALSE

      DEFAULT_SET_USED 2 3 FALSE TRUE TRUE FALSE

      TRUE TRUE TRUE FALSE

      4 FALSE FALSE TRUE FALSE

      527

      ANSI C12.19-2008

      Historical Background

      Final Element Name TABLE 11 - ACT_SOURCES_LIM_TBL THERMAL_DEMAND_FLAG SET1_PRESENT_FLAG SET2_PRESENT_FLAG NBR_UOM_ENTRIES NBR_DEMAND_CTRL_ENTRIES DATA_CTRL_LENGTH NBR_DATA_CTRL_ENTRIES NBR_CONSTANTS_ENTRIES CONSTANTS_SELECTOR NBR_SOURCES

      1 FALSE FALSE FALSE 0 0 1 1 1 2 1

      DEFAULT_SET_USED 2 3 4 FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 0 0 0 1 3 1 1 1 1 2 2 2 1 1 1 2 2 2 2 2 2

      J.3.8 Element (Child of ) The element is a container for Final Element default set values of FLC+1, Function Limiting Control Tables, strictly used for defining default sets.

      J.3.8.1 DTD

      Attributes Name

      Document Form Equivalent A publication of the type of table being manufacturer or standard.

      source

      number

      A publication of the table number

      Description An indication of the source of this table being a manufacturer or standard. This assumes that a manufacturer may wish to augment the default set used with their own as part of the documentation process of manufacturer decades. The table number.

      J.3.8.3 Document Form A tabulation of all final elements listed as one column for the table indicated by the $ {limitingTableName} attribute for default set number indicated by the number attribute; and by Final Element index.

      J.3.9 Element (Child of ) The element is an optional Standard or Manufacturer data value place holder for zero or more self consistent Table value-sets. A self consistent Table value-set is a collection of tables and values that together with the registered device class form a data set that can be interpreted uniformly and unambiguously. A Table value-set contains constants, imported or exported values. All the values expressed and contained within one element are related and shall originate from one instance of a source or destination data-set that belongs to one End Device values and instance.

      J.3.9.1 DTD

      Historical Background

      ANSI C12.19-2008

      J.3.9.2 Document Form One tabulation for each element. Each element tabulation consists of a list of all found Tables and their Final Elements’ name and value. The Elements and Final Elements of each Table are sorted by their Element index.

      J.3.10 Element The element is a container for Final Element data values. The minimum requirement is that All Elements and Final Elements be present in the order defined in corresponding Table definitions and the inner-most element shall be a Final Element.

      J.3.10.1 DTD



      J.3.10.2 Attributes Name source number instance

      Document Form Equivalent A publication of the type of Table being manufacturer or standard. A publication of the Table number A publication of the tables instance being active or pending data.

      pendingHeader binary

      Hex dump of the all table values.

      Description An indication of the source of this table being a manufacturer or standard. The table number (see BNF.tblNumber). The type of the Table from which contains the data. An active Table or a pending table. If the instance is pending then the element may be included. The elements of the PENDING_EVENT_DESC_RCD mapped into the corresponding EDL members. All Table Final Element values encoded using hexadecimal notation exactly as transmitted to or received from the End Device as if a full table read or a full table write service was performed. The content of this attribute shall span recursively all of the Final Elements contained within. When this element is present that the data set shall also minimally include GEN_CONFIG_TBL.FORMAT_CONTROL_1, GEN_CONFIG_TBL.FORMAT_CONTROL_2 and GEN_CONFIG_TBL. FORMAT_CONTROL_3 binaries or their Final Elements to guarantee the interpretability of the binary content.

      J.3.10.3 Document Form A tabulation of all final elements listed as one column for the table indicated by the ${tableName}, sorted by final element index. See for an example.

      529

      ANSI C12.19-2008

      Historical Background

      J.3.11 Element The element maps any TDL Element name of , , and ultimately their Final Element values.

      type ,

      J.3.11.1 DTD



      J.3.11.2 Attributes Name index

      binary

      Document Form Equivalent The index of this Element is published in brackets to the right of the Element’s name. Hex dump of the values.

      Description The Element’s relative position in the containing data type (e.g. position within a PACKED RECORD or a BIT FIELD). The Element’s value encoded using hexadecimal notation exactly as transmitted to or received from the End Device. The content of this attribute shall span recursively all of the Final Elements contained within. When this element is present that the data set shall also minimally include GEN_CONFIG_TBL.FORMAT_CONTROL_1, GEN_CONFIG_TBL.FORMAT_CONTROL_2 and GEN_CONFIG_TBL. FORMAT_CONTROL_3 binaries or their Final Elements to guarantee the interpretability of the binary content.

      J.3.11.3 Document Form Non Final Element ${elementName} is published by its name. If the element is not the first Element in the Final Element’s list then it is preceded with a period ‘.’. If the Element is a Final Element then the its data value is presented. A number of presentation formats variations may be possible. Given the XML text below:

      0 2



      The following may be a partial tabular output generated by a EDL processor: TABLE 00 - GEN_CONFIG_TBL FORMAT_CONTROL_1 DATA_ORDER

      530

      Final Element Value 0

      Historical Background

      ANSI C12.19-2008

      CHAR_FORMAT …

      2

      Alternatively following may be a partial relative textual output generated by a EDL processor: TABLE 00 - GEN_CONFIG_TBL FORMAT_CONTROL_1.DATA_ORDER FORMAT_CONTROL_1.CHAR_FORMAT …

      Final Element Value 0 2

      Alternatively following may be a absolute textual output generated by a EDL processor: TABLE 00 - GEN_CONFIG_TBL GEN_CONFIG_TBL.FORMAT_CONTROL_1.DATA_ORDER GEN_CONFIG_TBL.FORMAT_CONTROL_1.CHAR_FORMAT …

      Final Element Value 0 2

      J.3.12 Element The element is a container TDL elements or TDL elements.

      J.3.12.1 DTD



      J.3.12.2 Attributes Name index

      Document Form Equivalent Element index for array or set member.

      Description this

      The relative element index or range of indices for this array or set member. When the index is not present then the entry takes on the index of the previous entry +1. If the entry is the first entry and an index is not specified the entry takes on the index value of 0. When an index is expressed as a range then all final element that correspond to the index range will have the indicated value. The last index in a range of indices shall be used in the computation of the next index for the entry that follows (if any) for the containing element. When collecting values for placement in arrays or sets the collection will be repeatedly searched until an index is located or the list is exhausted. If an index is located (matched) then the value will be assigned; otherwise the entry value is considered absent. The index value shall match the following BNF regular expression notation: index :: = ([0-9]+\S*([\-]\S*[0-9]+)?)(\S*,\S*([09]+\S*([\-]\S*[0-9]+)?))* { A number, a range of numbers separated by ‘-‘; or a collection of numbers

      531

      ANSI C12.19-2008

      Historical Background

      Name

      Document Form Equivalent

      Description

      binary

      Hex dump of the values.

      or ranges each separated by a ‘,’}. The Element’s entry value encoded using hexadecimal notation exactly as transmitted to or received from the End Device. The content of this attribute shall span recursively all of the Final Elements contained within. When this element is present that the data set shall also minimally include GEN_CONFIG_TBL.FORMAT_CONTROL_1, GEN_CONFIG_TBL.FORMAT_CONTROL_2 and GEN_CONFIG_TBL. FORMAT_CONTROL_3 binaries or their Final Elements to guarantee the interpretability of the binary content.

      J.3.12.3 Document Form Array entry is presented by an empty set or brackets, [], or using the index, such as: [n]. Given the XML text below:

      324

      654738.2 (EVENTS_SELECTOR, EVENT_STORAGE)>



      J.3.13.2 Document Form Publish an expression of the pending event that will activate this table or an expression of the pending event and the table activation date of an activated table in front of all related Element values.

      533

      ANSI C12.19-2008

      Historical Background

      J.4 EDL XML Form Encoding of Final Element Values Final Elements #PCDATA values shall be encoded as shown in the table below, where the prefix ‘xsd’ in front of the “EDL XML Form Type” column represents the association between the schema namespace prefix for the referenced XML schema namespace “http://www.w3.org/2001/XMLSchema”. The actual data type definition shall be derived from the corresponding TDL XML File that shares the same End Device class. Note 1: Some computer languages do not support unsigned integer types. Special care shall be taken when processing unsigned types in systems capable of handling only signed types. Note 2: Some computer languages do not support unsigned integer types. In addition they cannot handle signed integers that are encoded with more than 64 bits. These systems need to apply extra special handling for the type UINT64. It is recommended that the use of UINT64 data type be minimized by End Device manufacturers. Document Form Type NIL

      EDL XML Form Type

      INT8 INT16 INT24 INT32 INT40 INT48 INT56 INT64

      xsd:byte xsd:short xsd:int xsd:int xsd:long xsd:long xsd:long xsd:long

      UINT8 UINT16 UINT24 UINT32 UINT40 UINT48 UINT56 UINT64

      xsd:unsignedByte xsd:unsignedShort xsd:unsignedInt xsd:unsignedInt xsd:unsignedLong xsd:unsignedLong xsd:unsignedLong xsd:unsignedLong

      FLOAT32 FLOAT64 FLOAT_CHAR6 FLOAT_CHAR12 FLOAT_CHAR21 FIXED_BCD4 FIXED_BCD6 FIXED_BCD8

      xsd:double xsd:double xsd:double xsd:double xsd:double xsd:double xsd:double xsd:double

      NI_FORMAT1 NI_FORMAT2

      xsd:double xsd:double

      FILL8 FILL16 FILL24 FILL32 FILL64

      xsd:unsignedByte xsd:unsignedShort xsd:unsignedInt xsd:unsignedInt xsd:unsignedLong

      534

      Comment Element shall not be present in the EDL file.

      See Note 1 above. See Note 1 above. See Note 1 above. See Note 1 above. See Note 1 above. See Note 1 above. See Note 1 above. See Note 2 above.

      Shall Shall Shall Shall Shall

      be set to 0. be set to 0. be set to 0. be set to 0. be set to 0.

      Historical Background

      ANSI C12.19-2008

      Document Form Type

      EDL XML Form Type

      Comment

      BCD CHAR STRING

      xsd:string xsd:string xsd:string

      Preserve spaces. Same as BCD(1). Preserve spaces. Same as STRING(1). Preserve spaces. Same as STRING(1).

      HTIME_DATE LTIME_DATE STIME_DATE HTIME TIME STIME

      xsd:dateTime xsd:dateTime xsd:dateTime xsd:time xsd:time xsd:time

      Maps HTIME_DATE_RCD during TDL processing. Maps LTIME_DATE_RCD during TDL processing. Maps STIME_DATE_RCD during TDL processing. Maps HTIME_RCD during TDL processing. Maps TIME_RCD during TDL processing. Maps STIME_RCD during TDL processing.

      DATE RDATE

      xsd:date xsd:unsignedShort

      Maps to/from RDATE_RCD during TDL processing.

      SET(n) STRING(n) BCD(n)

      xsd:boolean xsd:string xsd:string

      BINARY(n)

      xsd:hexBinary

      Encoded as an array of Booleans. Preserve spaces. Preserve spaces. Any BCD character may be entered in any order with no assumed nor implied association between a numeric representation. These are encoded as a collection of BNF.bcdNibble that are mapped into CHAR and assembled into a STRING from left to right. Eg.: the BCD sequence [#x1] [#x2] [#xD] [#x4] [#xE] [#x0], [#x6] representing the fixed point value 12.406 shall be truncated upon evaluation to 12.45 then converted to a the xsd:string representation “12.45”. A collection of octets encoded as hexadecimal values.

      INT(n..m) UINT(n..m) BOOL(n)

      xsd:long xsd:unsignedLong xsd:boolean

      Member of BIT FIELD Member of BIT FIELD, See Note 2 above. Member of BIT FIELD

      535

      ANSI C12.19-2008

      Historical Background

      ANNEX K: Universal IdentifierHistorical Background (normativeInformative) ANSI C12.19 makes use of the ISO Universal Identifier to uniquely identify objects. This is used for ANSI C12.19 and related standards to uniquely identify components of the End Device Class, EDL and TDL. ::= 2.16.124.113620.1.19

      {ISO registered absolute object identifier root for End Device Classes. This value shall be encoded for the purpose of transmission using ISO/IEC 8825-1:2002 [BER] as: 06 07 60 7C 86 F7 54 01 13H }

      The following table summarizes the list of objects actually defined: Use ANSI C12.19 Device Class

      Universal identifier .

      ANSI C12.19 Device Class Absolute C12.19 Device Class identifiers shall be globally unique. To assure this, organizations implementing this Standard can register a Device Class Universal Identifier. This identifier can be used for one or multiple C12.22 Node types that share the same data structure (C12.19 EDL and TDL). This identifier is used by upstream device to understand incoming data structures. Device Classes will be assigned on a first come first serve basis. The first 128 Device Class IDs are reserved for registration of one way devices. Preferred Device Class IDs may also be requested and assigned if available. Also submitted with the registration request is a simple XML-text TDL file (as defined in this standard) and an optional EDL if desired. For one-way devices, EDL and TDL shall include enough information to completely describe any unsolicited messages that the C12.22 Node might generate. For two-way devices, no specific information is required to be included in the EDL and TDL. Registration It is the intent of ANSI C12 Subcommittee 17, IEEE SCC31 and Measurement Canada, to form an oversight group (the ANSI/IEEE/MC OID Oversight group) to oversee/manage the issuance, to Certified Registrars, of root level numbers associated with the Root ApTitle and Root Class Object ID. It is possible, that with adequate rights transfer, the ANSI/IEEE/MC OID Oversight group can use www.naedra.org as a location to publicize, to the industry, the Certified Registrars. If that is accomplished, then www.naedra.org could be placed in the C12.19-200x and C12.22-200x standards as the reference for registration.

      536

      Historical Background

      ANSI C12.19-2008

      ANNEX L: ANSI/IEEE/MC OID Oversight group and Certified Registrars (informative) It is the intent of ANSI C12 Subcommittee 17, IEEE SCC31 and Measurement Canada, to form an oversight group (the ANSI/IEEE/MC OID Oversight group) to oversee/manage the issuance, to Certified Registrars, of root level numbers associated with the Root ApTitle and Root Class Object ID. The ANSI/IEEE/MC OID Oversight committee should be a minimum of a three members, with at least one representative from each of the standards sponsoring organizations, C12 SC17, SCC31 and MC Task Force for EMD. They shall each select their own representative/representatives. The membership shall maintain a balance based on identified industry stakeholder groups, such as producer, user and general interest. The ANSI/IEEE/MC OID Oversight committee will: 1. Oversee/manage the issuance, to Certified Registrars, root level numbers associated with the Root ApTitle and Root Class Object ID. 2. Vet Certified Registrar applications and moderate certain disputes. 3. Coordinate contact lists of: a) The ANSI/IEEE/MC OID Oversight committee. b) The sponsoring organizations (ANSI, IEEE and MC). c) The Certified Registrars. A Certified Registrar will: 1. Successfully apply to the ANSI/IEEE/MC OID Oversight group to become a Certified Registrar. 2. Have the capability to receive an application for an OID. 3. Have the capability to receive TDLs, EDLs and security mechanism algorithms in relation to OID class from the applicant. 4. Have the capability to generate a unique device class number for the applicant. 5. Have the capability to generate a unique security mechanism number for the applicant. 6. Have the capability to generate a unique root ApTitle number for the applicant. 7. Have the capability to receive a unique device class number from the applicant. 8. Have the capability to receive a unique security mechanism number from the applicant. 9. Have the capability to receive a unique root ApTitle number from the applicant. 10. Have the capability to maintain records. 11. Have the capability to publish/provide these numbers, and any data the applicant gave them authorization to publish/provide, to others (The default shall be that no data the applicant submitted is authorized to be published/provided, except that the number is reserved). 12. Provide a copy of the records to the oversight committee. 13. Operate in a fair, equitable and non-discriminating manner to provide these services to the Industry. 14. Will seize operation if so instructed with cause and return the authority of the assigned root numbers to the oversight committee (i.e. the former registrar can no longer operate with those numbers).

      537

      ANSI C12.19-2008

      Historical Background

      ANNEX M: Historical Background (informative)

      oreword of Am

      Foreword

      (This foreword is not part of American National Standard for Protocol Specification for ANSI C12.19-1997.)

      The ANSI C12.19 standard provides a common data structure for use in transferring data to and from utility end devices, typically meters. It has been approved after considerable cooperative effort among utilities, electric meter manufacturers, Industry Canada, AMRA and other interested parties. The standard data structure is defined as sets of tables. Table sets are grouped together into segments called decades. Each decade pertains to a particular feature set and data type such as Time of Use, Load Profile, etc. Data is transferred by reading from or writing to a particular table or portion of a table. It is anticipated that the set of standard tables will grow to meet the need for common implementations of expanded functionality. The Secretariat of the Accredited Standards Committee on Electricity Metering, C12, is held by the National Electrical Manufacturers Association (NEMA) and the National Institute of Standards and Technology. At the time this standard was processed and approved, the C12 Committee had the following members: Nile Oldham, Chairman Vince Baclawski, Secretary Organization Represented

      Name of Representative

      Underwriters Laboratory

      Ron Breschini

      Idaho Power Company

      Richard Canderan

      ABB Power T&D Company, Inc.

      Tom C. Drew Ted York

      GE

      Warren Germer

      City of Los Angeles

      Cruz R. Gomez

      State of New York

      Edmund J. Hofmann

      Memphis Light

      H. Carey Jones

      Rural Utilities Service

      George Keel

      B-Line Systems, Inc.

      Francis A. Marta

      Clemson University

      D. McAuliff

      Florida Power & Light Co.

      John McEvoy

      Edison Electric Institute

      Gary N. Miller

      538

      Historical Background

      ANSI C12.19-2008

      City of Austin Metering Operations

      Herman M. Millican

      T. U. Electric

      James Mining

      National Institute of Standards & Technology

      Nile Oldham

      Pacificorp

      Lauren Pananen Clark J. Smith

      Florida Public Service Commission

      James Ruehl

      Arizona Public Service Company

      Paul Taylor

      Pacific Gas & Electric

      Tim Vahstrom

      The following members of the C12.17 Data Communications Protocols Committee were actively involved in the revision of this standard: Wesley Ray, Chairman Organization Represented

      Name of Representative

      Indianapolis Power & Light Company

      Robert D. Adams

      Landis & Gyr

      Michael Anderson

      Public Utillities Commission

      Vlado Bevc

      APTECH, Inc.

      William C. Beverly, Jr.

      ITRON

      William J. Buckley

      American Innovations, Ltd.

      Randall Chance Rick Darby

      Entergy Services, Inc.

      Lynnda K. Ell

      Lucent Technologies

      Stuart M. Garland

      Centerior Energy Corporation

      Kenneth E. Hauzer

      T U Electric

      Brad Johnson James Mining (Alt.)

      LILCO

      Sunil Katwala

      MidAmerican Energy Company

      Jerry Klipkenberg

      Commonwealth Edison

      Larry Kotewa

      Echelon

      Chris Stanfield Pradip Madan (Alt.)

      Southern California Edison Company

      Kit Maughan Mario A. Natividad

      539

      ANSI C12.19-2008

      Historical Background

      Georgia Power Company

      Kevin McDonald Terry Penn

      Radix Corporation

      Laurel Miller

      City of Austin Metering Operations

      Herman M. Millican

      Future DOS R&D, Inc.

      Avygdor Moise

      National Institute of Standards & Technology

      Nile Oldham

      Pacificorp

      Lauren Pananen Clark J. Smith

      Pacific Gas & Electric Co.

      Charles A. Partridge

      GE Meter

      Jack Pazdon

      Schlumberger Electricity

      Marc Purc

      American Electric Power Servs. Corp.

      William A. Randle, Jr.

      Duke Energy Company

      Wesley Ray

      Institute of Gas Technology

      William F. Rush

      Utility Translation Systems

      Chris M. Schafer

      Bell Sotuh Telecommunications

      Jerry Schull

      Radix Corporation

      Brian Simpson

      Arizona Public Service Company

      Paul Taylor (Alt.)

      Wisconsin Public Service Corp.

      Thomas C. Thiel

      Tucker Engineering

      Richard Tucker

      Nertec Design

      Michael Veillette

      DAC

      Steve Weil

      ABB Power T&D Company, Inc.

      Ted York

      540

      Historical Background

      ANSI C12.19-2008

      541