Changes for page 4. Structure and Modules Description
Last modified by Iaroslav Platonov on 2026/06/08 10:08
From version 9.1
edited by Iaroslav Platonov
on 2026/06/08 10:08
on 2026/06/08 10:08
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Iaroslav1 +XWiki.Lana - Content
-
... ... @@ -1,591 +1,243 @@ 1 -{{html clean="false"}} 2 -<style> 3 -/* ── Disable XWiki automatic heading counters inside our content ── */ 4 -.doc-content h1::before,.doc-content h2::before, 5 -.doc-content h3::before,.doc-content h4::before, 6 -.doc-content h5::before,.doc-content h6::before { 7 - content:none !important; display:none !important; 8 -} 9 -.doc-content { counter-reset:none !important; } 1 += CONTENT = 10 10 11 -/* ── Reading progress bar ── */ 12 -#rn-prog { position:fixed;top:0;left:0;height:3px;width:0;background:#005AB4;z-index:9999;pointer-events:none; } 3 +{{toc/}} 13 13 14 -/* ── Page content wrapper ── */ 15 -.doc-wrap { position:relative; } 16 -.doc-content { 17 - margin-right:224px; 18 - border-left:1px solid #E8E8E8; 19 - border-right:1px solid #E8E8E8; 20 - padding:0 32px; 21 -} 5 +---- 22 22 23 -/* ── Right "On This Page" TOC ── */ 24 -.doc-toc { 25 - position:absolute;top:0;right:0;width:200px; 26 - font-size:12.5px;line-height:1.55; 27 - padding:20px 0 20px 16px; 28 -} 29 -.doc-toc.is-fixed { position:fixed;width:200px;overflow-y:auto;z-index:10; } 30 -.toc-header { display:flex;justify-content:space-between;align-items:center;margin-bottom:10px; } 31 -.toc-header strong { font-size:13px;font-weight:700;color:#222; } 32 -.toc-toggle { background:none;border:none;cursor:pointer;color:#555;font-size:14px;padding:0 2px;line-height:1; } 33 -.toc-toggle:hover { color:#222; } 34 -.doc-toc ul { list-style:none;margin:0;padding:0; } 35 -.doc-toc li { margin:0; } 36 -.doc-toc a { display:block;padding:3px 0;color:#555;text-decoration:none;border-left:2px solid transparent;transition:color .12s; } 37 -.doc-toc a:hover { color:#222;text-decoration:underline; } 38 -.doc-toc a.toc-on { color:#222;font-weight:700;border-left:2px solid #005AB4;padding-left:5px; } 39 -.tl1 > a { font-weight:600;color:#222; } 40 -.tl2 > a { padding-left:14px; } 41 -.tl3 > a { padding-left:26px;font-size:12px; } 7 += 1. INTRODUCTION = 42 42 43 -/* ── Typography ── */ 44 -.doc-content h1 { font-size:1.6em;font-weight:700;color:#222;margin:0 0 6px 0;border:none; } 45 -.rn-meta { font-size:.8em;color:#555;margin:0 0 28px 0; } 46 -.doc-content h2 { font-size:1.15em;font-weight:700;color:#222;margin:36px 0 10px 0;display:flex;align-items:baseline;gap:7px;scroll-margin-top:16px; } 47 -.doc-content h3 { font-size:1em;font-weight:700;color:#222;margin:22px 0 8px 0;display:flex;align-items:baseline;gap:6px;scroll-margin-top:16px; } 48 -.doc-content h4 { font-size:.93em;font-weight:700;color:#222;margin:14px 0 6px 0;display:flex;align-items:baseline;gap:5px;scroll-margin-top:16px; } 49 -.doc-content p { font-size:.93em;color:#333;line-height:1.75;margin:0 0 12px 0; } 50 -.doc-content strong { color:#222; } 51 -.doc-content code { background:#f5f5f5;border:1px solid #E8E8E8;border-radius:3px;padding:1px 5px;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:.82em;color:#222;line-height:1; } 9 +CENTO is a multifunctional software platform for data collection, processing, and display. 52 52 53 -/* ── Anchor icon ── */ 54 -.anchor-icon { color:#E8E8E8;text-decoration:none;opacity:0;transition:opacity .15s;vertical-align:middle;margin-left:4px;display:inline-flex;align-items:center; } 55 -h2:hover .anchor-icon,h3:hover .anchor-icon,h4:hover .anchor-icon { opacity:1; } 56 -.anchor-icon:hover { color:#005AB4; } 11 +CENTO can be used to build various automated systems, including dispatching, electricity and energy resource metering, emergency event registration, power quality control, monitoring, and diagnostics, etc. 57 57 58 -/* ── Callout notes ── */ 59 -.note { border-radius:6px;padding:12px 16px;margin:14px 0;border:1px solid transparent; } 60 -.note-info { background:#e1f1f9 !important;border-color:#b3d4ee !important;border-left:4px solid #005AB4 !important; } 61 -.note-warning { background:#fff4ec !important;border-color:#f5cba7 !important;border-left:4px solid #DD5600 !important; } 62 -.note-tip { background:#e5f3df !important;border-color:#b7dba5 !important;border-left:4px solid #73A839 !important; } 63 -.note-hd { font-weight:700;font-size:.85em;display:flex;align-items:center;gap:5px;margin-bottom:5px; } 64 -.note-info .note-hd { color:#003d80 !important; } 65 -.note-warning .note-hd { color:#a03d00 !important; } 66 -.note-tip .note-hd { color:#3d6b1a !important; } 67 -.note-body { font-size:.875em;color:#222 !important;line-height:1.65; } 13 +This document describes the CENTO structure and lists the CENTO components, each with a brief description. 68 68 69 -/* ── Section index list ── */ 70 -.section-index { list-style:disc;padding-left:20px;margin:0 0 20px 0; } 71 -.section-index li { margin-bottom:12px; } 72 -.section-index li a { color:#005AB4;font-weight:600;font-size:.93em;text-decoration:underline; } 73 -.section-index li p { margin:3px 0 0 0;font-size:.875em;color:#333;line-height:1.6; } 15 += 2. CENTO STRUCTURE = 74 74 75 -/* ── Parent topic ── */ 76 -.parent-topic { font-size:.82em;color:#555;margin:18px 0 24px 0;border-top:1px solid #E8E8E8;padding-top:10px; } 77 -.parent-topic a { color:#005AB4; } 17 +The general structure of CENTO is shown in Fig.2.1. 78 78 79 -/* ── Accordion ── */ 80 -details.acc { border:1px solid #E8E8E8;border-radius:4px;margin-bottom:5px; } 81 -details.acc summary { display:flex;align-items:center;gap:8px;padding:9px 12px;cursor:pointer;list-style:none;background:none;user-select:none; } 82 -details.acc summary::-webkit-details-marker { display:none; } 83 -details.acc summary::before { content:'▶';font-size:.58em;color:#555;transition:transform .18s;flex-shrink:0; } 84 -details.acc[open] summary::before { transform:rotate(90deg); } 85 -details.acc summary:hover { background:#f5f5f5; } 86 -.acc-num { font-size:.8em;color:#555;min-width:28px;font-weight:600; } 87 -.acc-title { font-size:.9em;font-weight:700;color:#222;flex:1; } 88 -.acc-body { padding:10px 14px 12px 14px;font-size:.88em;color:#333;line-height:1.7; } 89 89 90 -/* ── Images ── */ 91 -.fig { margin:12px auto 24px auto;width:fit-content;max-width:100%; } 92 -.fig img { border-radius:4px 4px 0 0;border:1px solid #E8E8E8;display:block;cursor:zoom-in;max-width:100%;box-shadow:0 1px 4px rgba(0,0,0,.10);transition:box-shadow .15s; } 93 -.fig img:hover { box-shadow:0 3px 12px rgba(0,90,180,.18); } 94 -.fig-cap { font-size:.78em;color:#555;margin:0;padding:5px 8px;background:#f5f5f5;border:1px solid #E8E8E8;border-top:none;border-radius:0 0 4px 4px;display:block;width:100%;box-sizing:border-box; } 20 +[[image:Screenshot 2025-12-03 at 18.41.53.png]] 95 95 96 -/* ── Lightbox ── */ 97 -#rn-lb { display:none;position:fixed;inset:0;z-index:9998;background:rgba(0,0,0,.8);cursor:zoom-out;align-items:center;justify-content:center; } 98 -#rn-lb.open { display:flex; } 99 -#rn-lb-wrap { position:relative;cursor:default;max-width:92vw;max-height:90vh; } 100 -#rn-lb-wrap img { max-width:100%;max-height:90vh;border-radius:5px;display:block; } 101 -#rn-lb-x { position:absolute;top:-13px;right:-13px;background:#005AB4;color:#fff;width:26px;height:26px;border-radius:50%;border:none;cursor:pointer;font-size:15px;display:flex;align-items:center;justify-content:center; } 102 -#rn-lb-cap { position:fixed;bottom:18px;left:50%;transform:translateX(-50%);color:#ddd;font-size:.78em;background:rgba(0,0,0,.55);padding:3px 12px;border-radius:14px;pointer-events:none; } 22 +Fig. 2.1 – The general structure of CENTO 103 103 104 -/* ── Back to top ── */ 105 -#rn-top { position:fixed;bottom:60px;right:60px;z-index:9997;width:36px;height:36px;border-radius:50%;background:#005AB4;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(8px);transition:opacity .22s,transform .22s;pointer-events:none;box-shadow:0 2px 8px rgba(0,90,180,.3); } 106 -#rn-top.on { opacity:1;transform:translateY(0);pointer-events:auto; } 107 -#rn-top:hover { background:#0066cc; } 24 +CENTO consists of two main blocks: 108 108 109 -/* ── Toast ── */ 110 -.rn-toast { position:fixed;bottom:66px;right:24px;z-index:9999;background:#222;color:#fff;font-size:.74em;padding:4px 11px;border-radius:4px;pointer-events:none;opacity:0;transition:opacity .18s; } 111 -.rn-toast.on { opacity:1; } 26 +1. web part; 27 +1. "core" of the system. 112 112 113 -/* ── Tables ── */ 114 -.rn-table { width:100%;border-collapse:collapse;margin:8px 0 18px 0;font-size:.875em; } 115 -.rn-table th { background:#f5f5f5;text-align:left;padding:7px 12px;font-size:.78em;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#555;border-bottom:2px solid #E8E8E8; } 116 -.rn-table td { padding:7px 12px;border-bottom:1px solid #E8E8E8;color:#333;vertical-align:top; } 117 -.rn-table tr:last-child td { border-bottom:none; } 118 -.rn-table tr:hover td { background:#f5f5f5; } 119 -.sc { display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#deeaf7;color:#005AB4;border-radius:3px;font-size:.8em;font-weight:700; } 29 +The web part provides data to the user and contains system configuration tools. Information is provided to users via a web browser. 120 120 121 - </style>31 +The "core" of the system consists of a set of applications that run all CENTO components, collect, transmit, process, and store data. 122 122 123 -<div id="rn-prog"></div> 124 -<div id="rn-lb"> 125 - <div id="rn-lb-wrap"> 126 - <button id="rn-lb-x" onclick="closeLightbox()">✕</button> 127 - <img id="rn-lb-img" src="" alt=""/> 128 - </div> 129 - <div id="rn-lb-cap"></div> 130 -</div> 131 -<button id="rn-top" onclick="window.scrollTo({top:0,behavior:'smooth'})" title="Back to top"> 132 - <svg width="14" height="14" viewBox="0 0 16 16" fill="currentColor"><path d="M8 4l5 5H3z"/></svg> 133 -</button> 134 -<div class="rn-toast" id="rn-toast">Link copied ✓</div> 33 += 3. COMPOSITION AND DESCRIPTION OF CENTO COMPONENTS = 135 135 136 -<div class="doc-wrap"> 137 -<div class="doc-content"> 35 +== 3.1. Web Part == 138 138 139 - <ul class="section-index"> 140 - <li><a href="#s-intro">1. Introduction</a><p>CENTO platform overview and purpose of this document.</p></li> 141 - <li><a href="#s-structure">2. CENTO Structure</a><p>General architecture: web part and core system components.</p></li> 142 - <li><a href="#s-components">3. Composition and Description</a><p>Detailed description of all 140 CENTO services grouped by function.</p></li> 143 - </ul> 37 +The CENTO web interface is implemented on the basis of the nginx web server, web application modules (based on PHP and executable services) and a web browser installed on the client site. 144 144 145 - <!-- ═══ 1 ═══ --> 146 - <h2 id="s-intro">1. Introduction <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-intro')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></h2> 147 - <p>CENTO is a multifunctional software platform for data collection, processing, and display. It can be used to build various automated systems, including dispatching, electricity and energy resource metering, emergency event registration, power quality control, monitoring, and diagnostics.</p> 148 - <p>This document describes the CENTO structure and lists all CENTO components, each with a brief description.</p> 39 +== 3.2. The "core" of the system == 149 149 150 - <!-- ═══ 2 ═══ --> 151 - <h2 id="s-structure">2. CENTO Structure <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-structure')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></h2> 152 - <p>The general structure of CENTO is shown in Fig. 2.1. CENTO consists of two main blocks:</p> 153 - <ul style="margin:8px 0 14px 20px;font-size:.9em;color:#333;line-height:1.75"> 154 - <li><strong>Web part</strong> — provides data to users and contains system configuration tools. Information is delivered via a web browser.</li> 155 - <li><strong>Core of the system</strong> — a set of applications running all CENTO components, responsible for collecting, transmitting, processing, and storing data.</li> 156 - </ul> 157 - <div class="fig"> 158 - <img src="/xwiki/bin/download/CENTO%20Manuals/Structure%20and%20Modules%20Description/WebHome/Screenshot%202025-12-03%20at%2018.41.53.png" alt="Fig. 2.1 – The general structure of CENTO" style="max-width:100%;" onclick="openLightbox(this)"/> 159 - <p class="fig-cap">Fig. 2.1 – The general structure of CENTO</p> 160 - </div> 41 +**Databases** 161 161 162 - <!-- ═══ 3 ═══ --> 163 - <h2 id="s-components">3. Composition and Description of CENTO Components <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-components')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></h2> 43 +**MongoDB** is a NoSQL database that stores system configuration, event logs, diagrams, and their parts and elements. 164 164 165 - <h3 id="s-web">3.1. Web Part <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-web')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></h3> 166 - <p>The CENTO web interface is built on the <strong>nginx</strong> web server, web application modules (PHP and executable services), and a web browser on the client side. Key infrastructure components:</p> 167 - <ul style="margin:8px 0 14px 20px;font-size:.9em;color:#333;line-height:1.75"> 168 - <li><strong>MongoDB</strong> — NoSQL database storing system configuration, event logs, mimic diagrams, and their components.</li> 169 - <li><strong>InfluxDB</strong> — NoSQL time-series database storing data collected by the system.</li> 170 - <li><strong>NATS</strong> — message broker for inter-component data exchange.</li> 171 - </ul> 45 +**InfluxDB** is a NoSQL database that stores information collected by the system. 172 172 173 - <h3 id="s-core">3.2. The "Core" of the System <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-core')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></h3> 174 - <p>The core consists of polling and data transmission services, processing services, and auxiliary services.</p> 47 +**Message broker** 175 175 176 - <p><strong>Polling and data transmission services</strong> collect data from information sources and transmit it to external systems via the message broker. Certain polling services include binary files <code>sed_metrology_XXX.bin</code> — the metrologically significant part containing data extraction mechanisms and register configurations for the polled devices.</p> 177 - <div class="note note-info"> 178 - <div class="note-hd"><span>ℹ</span> Note</div> 179 - <div class="note-body">When metrologically significant files change, their checksum changes. Checksums are shown on the <strong>Services</strong> tab of <strong>System Information</strong> (Settings → System Information) and are calculated using the MD5 algorithm. Click <strong>Update Information</strong> to refresh.</div> 180 - </div> 181 - <div class="fig"> 182 - <img src="/xwiki/bin/download/CENTO%20Manuals/Structure%20and%20Modules%20Description/WebHome/Screenshot%202025-12-03%20at%2018.47.38.png" alt="Fig. 3.1 – Updating checksums of metrologically significant files" style="max-width:100%;" onclick="openLightbox(this)"/> 183 - <p class="fig-cap">Fig. 3.1 – Updating checksums of metrologically significant files</p> 184 - </div> 49 +**NATS** is a message broker that exchanges information between CENTO components. 185 185 186 - <p><strong>Data processing services</strong> receive data from the message broker, process it, and write it to the database. Processing services include metrologically significant files <code>sed_metrology_YYY.bin</code> containing algorithms for calculating measured values. The <code>sed_calc_arch</code> service additionally has <code>sed_metrology_formulas.bin</code> for custom pre-calculation formulas marked as metrologically significant.</p> 187 - <p><strong>Auxiliary services</strong> ensure the main CENTO services can perform their functions (license management, watchdog, scheduling, backup, replication, etc.).</p> 188 - <p>The composition of CENTO services for a given installation depends on its configuration and is shown on the <strong>System Information</strong> tab.</p> 51 +**Polling and data transmission services** 189 189 190 - <!-- Service table by group --> 191 - <p style="font-size:.875em;color:#555;margin:20px 0 12px 0"><strong>Table 1</strong> — CENTO software components (140 services)</p> 53 +Polling services collect data from information sources and transmit data to external systems. Polling services use a message broker to transmit the collected data to services that process the data and/or write it to databases. 192 192 193 - <details class="acc" id="s-grp-transfer" open> 194 - <summary><span class="acc-num">5</span><span class="acc-title">Data Collection and Transmission Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-transfer')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 195 - <div class="acc-body"> 196 - <table class="rn-table"> 197 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th></tr></thead> 198 - <tbody> 199 - <tr><td><span class="sc">1</span></td><td><code>sed_bus_dispatcher</code></td><td>Sequential Device Polling Management Service</td></tr> 200 - <tr><td><span class="sc">2</span></td><td><code>sed_xml_reader</code></td><td>Service for processing received XML files 80020</td></tr> 201 - <tr><td><span class="sc">3</span></td><td><code>sed_xml_send</code></td><td>XML file transfer service 80020</td></tr> 202 - <tr><td><span class="sc">4</span></td><td><code>sed_archive_webapi</code></td><td>Web API service for transmitting archived data per CENTO protocol</td></tr> 203 - <tr><td><span class="sc">5</span></td><td><code>sed_s2s_configuration</code></td><td>Configuration transmission service between CENTO servers</td></tr> 204 - </tbody> 205 - </table> 206 - </div> 207 - </details> 208 - <details class="acc" id="s-grp-standard" open> 209 - <summary><span class="acc-num">16</span><span class="acc-title">Standard Protocol Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-standard')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 210 - <div class="acc-body"> 211 - <table class="rn-table"> 212 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th><th style="width:160px">Metrologically significant</th></tr></thead> 213 - <tbody> 214 - <tr><td><span class="sc">6</span></td><td><code>sed_modbus_rtd</code></td><td>Real-time data from devices using Modbus TCP / RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_001.bin</code></td></tr> 215 - <tr><td><span class="sc">7</span></td><td><code>sed_modbus_rtd_send</code></td><td>Send real-time data to third-party devices via Modbus TCP</td><td><code style="font-size:.75em"></code></td></tr> 216 - <tr><td><span class="sc">8</span></td><td><code>sed_modbus_sync</code></td><td>Device time synchronisation via Modbus TCP / RTU over TCP</td><td><code style="font-size:.75em"></code></td></tr> 217 - <tr><td><span class="sc">9</span></td><td><code>sed_snmp_rtd</code></td><td>Real-time data via SNMP (v1, v2c, v3) and ICMP</td><td><code style="font-size:.75em"></code></td></tr> 218 - <tr><td><span class="sc">10</span></td><td><code>sed_iec103_waveform</code></td><td>Waveform files from devices via IEC 60870-5-103</td><td><code style="font-size:.75em">sed_metrology_393.bin</code></td></tr> 219 - <tr><td><span class="sc">11</span></td><td><code>sed_iec104_rtd</code></td><td>Real-time data via IEC 60870-5-104</td><td><code style="font-size:.75em">sed_metrology_011.bin</code></td></tr> 220 - <tr><td><span class="sc">12</span></td><td><code>sed_iec104_rtd_send</code></td><td>Send real-time data to third-party devices via IEC 60870-5-104</td><td><code style="font-size:.75em">sed_metrology_012.bin</code></td></tr> 221 - <tr><td><span class="sc">13</span></td><td><code>sed_opcda_rtd</code></td><td>Real-time data via OPC DA</td><td><code style="font-size:.75em"></code></td></tr> 222 - <tr><td><span class="sc">14</span></td><td><code>sed_opcua_rtd</code></td><td>Real-time data via OPC UA</td><td><code style="font-size:.75em"></code></td></tr> 223 - <tr><td><span class="sc">15</span></td><td><code>sed_opcua_arch</code></td><td>Archived data via OPC UA</td><td><code style="font-size:.75em">sed_metrology_402.bin</code></td></tr> 224 - <tr><td><span class="sc">16</span></td><td><code>sed_opcua_server</code></td><td>Data transmission via OPC UA</td><td><code style="font-size:.75em"></code></td></tr> 225 - <tr><td><span class="sc">17</span></td><td><code>sed_dnp3_rtd</code></td><td>Real-time data via DNP3</td><td><code style="font-size:.75em"></code></td></tr> 226 - <tr><td><span class="sc">18</span></td><td><code>sed_ftp_waveform</code></td><td>Waveform files via FTP</td><td><code style="font-size:.75em">sed_metrology_380.bin</code></td></tr> 227 - <tr><td><span class="sc">19</span></td><td><code>sed_iec61107_rtd</code></td><td>Real-time data via IEC 62056-21</td><td><code style="font-size:.75em">sed_metrology_61107.bin</code></td></tr> 228 - <tr><td><span class="sc">20</span></td><td><code>sed_iec61850_arch</code></td><td>Archived data via IEC 61850</td><td><code style="font-size:.75em"></code></td></tr> 229 - <tr><td><span class="sc">21</span></td><td><code>sed_iec61850_rtd</code></td><td>Real-time data via IEC 61850</td><td><code style="font-size:.75em"></code></td></tr> 230 - </tbody> 231 - </table> 232 - </div> 233 - </details> 234 - <details class="acc" id="s-grp-proprietary" open> 235 - <summary><span class="acc-num">45</span><span class="acc-title">Proprietary Protocol Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-proprietary')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 236 - <div class="acc-body"> 237 - <table class="rn-table"> 238 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th><th style="width:160px">Metrologically significant</th></tr></thead> 239 - <tbody> 240 - <tr><td><span class="sc">22</span></td><td><code>sed_satec_arch</code></td><td>Archived data and event logs from SATEC devices</td><td><code style="font-size:.75em">sed_metrology_7_8.bin</code></td></tr> 241 - <tr><td><span class="sc">23</span></td><td><code>sed_satec_pq_journal</code></td><td>Power quality event logs from SATEC devices</td><td><code style="font-size:.75em">sed_metrology_106.bin</code></td></tr> 242 - <tr><td><span class="sc">24</span></td><td><code>sed_satec_pq_report</code></td><td>Power quality reports from SATEC devices</td><td><code style="font-size:.75em">sed_metrology_106.bin</code></td></tr> 243 - <tr><td><span class="sc">25</span></td><td><code>sed_satec_waveforms</code></td><td>Waveforms from SATEC via Modbus TCP / RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_108_109.bin</code></td></tr> 244 - <tr><td><span class="sc">26</span></td><td><code>sed_iec103_rtd</code></td><td>Real-time data from TOR 200 terminals via IEC 60870-5-103</td><td><code style="font-size:.75em">sed_metrology_391.bin</code></td></tr> 245 - <tr><td><span class="sc">27</span></td><td><code>sed_sepam_waveform</code></td><td>Waveforms and time sync from Sepam via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_298_299.bin</code></td></tr> 246 - <tr><td><span class="sc">28</span></td><td><code>sed_rtu_over_tcp_logikamp_rtd</code></td><td>Real-time data via LogicaMP RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_121.bin</code></td></tr> 247 - <tr><td><span class="sc">29</span></td><td><code>sed_rtu_over_tcp_logikamp_arch</code></td><td>Archived data via LogicaMP RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_122.bin</code></td></tr> 248 - <tr><td><span class="sc">30</span></td><td><code>sed_axis_video_journal</code></td><td>AXIS camera recording service</td><td><code style="font-size:.75em">sed_metrology_435.bin</code></td></tr> 249 - <tr><td><span class="sc">31</span></td><td><code>sed_vzlyotmb_arch</code></td><td>Archives and event logs from Vzlet TSRV-043/027, IVK-TER</td><td><code style="font-size:.75em">sed_metrology_25_133.bin</code></td></tr> 250 - <tr><td><span class="sc">32</span></td><td><code>sed_micom_waveforms</code></td><td>Waveforms from Micom via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_370.bin</code></td></tr> 251 - <tr><td><span class="sc">33</span></td><td><code>sed_pulsar_arch</code></td><td>Archives from Pulsar via Modbus</td><td><code style="font-size:.75em">sed_metrology_342.bin</code></td></tr> 252 - <tr><td><span class="sc">34</span></td><td><code>sed_rtu_over_tcp_a1800_arch</code></td><td>Archived data from A1800 meters via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_232.bin</code></td></tr> 253 - <tr><td><span class="sc">35</span></td><td><code>sed_rtu_over_tcp_a1800_rtd</code></td><td>Real-time data from A1800 meters via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_231.bin</code></td></tr> 254 - <tr><td><span class="sc">36</span></td><td><code>sed_rtu_over_tcp_acron_arch</code></td><td>Archived data from Acron meters via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_142.bin</code></td></tr> 255 - <tr><td><span class="sc">37</span></td><td><code>sed_rtu_over_tcp_acron_rtd</code></td><td>Real-time data from Acron meters via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_141.bin</code></td></tr> 256 - <tr><td><span class="sc">38</span></td><td><code>sed_rtu_over_tcp_bmrz_waveform</code></td><td>Waveforms from BMRZ terminals via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_110.bin</code></td></tr> 257 - <tr><td><span class="sc">39</span></td><td><code>sed_rtu_over_tcp_bzp03_waveform</code></td><td>Waveforms from BZP-03 terminals via Modbus RTU over TCP</td><td><code style="font-size:.75em"></code></td></tr> 258 - <tr><td><span class="sc">40</span></td><td><code>sed_rtu_over_tcp_kmp_rtd</code></td><td>Multitical 601 polling via KMP protocol</td><td><code style="font-size:.75em">sed_metrology_191.bin</code></td></tr> 259 - <tr><td><span class="sc">41</span></td><td><code>sed_rtu_over_tcp_majac_arch</code></td><td>Archived data via Mayak protocol</td><td><code style="font-size:.75em">sed_metrology_152.bin</code></td></tr> 260 - <tr><td><span class="sc">42</span></td><td><code>sed_rtu_over_tcp_mercury200_rtd</code></td><td>Real-time data via Mercury 200 protocol</td><td><code style="font-size:.75em">sed_metrology_251.bin</code></td></tr> 261 - <tr><td><span class="sc">43</span></td><td><code>sed_rtu_over_tcp_mercury_arch</code></td><td>Archives and event logs from Mercury-230 via Mercury-230 protocol</td><td><code style="font-size:.75em">sed_metrology_202.bin</code></td></tr> 262 - <tr><td><span class="sc">44</span></td><td><code>sed_rtu_over_tcp_mercury_rtd</code></td><td>Real-time data via Mercury 230 protocol</td><td><code style="font-size:.75em">sed_metrology_201.bin</code></td></tr> 263 - <tr><td><span class="sc">45</span></td><td><code>sed_rtu_over_tcp_photon_rtd</code></td><td>Real-time data via Photon RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_221.bin</code></td></tr> 264 - <tr><td><span class="sc">46</span></td><td><code>sed_rtu_over_tcp_ref542plus_waveform</code></td><td>Waveforms and time sync from ABB REF 542plus via Modbus RTU over TCP</td><td><code style="font-size:.75em"></code></td></tr> 265 - <tr><td><span class="sc">47</span></td><td><code>sed_rtu_over_tcp_set4tm_arch</code></td><td>Archive polling for SET-4TM / PSC meters</td><td><code style="font-size:.75em">sed_metrology_112.bin</code></td></tr> 266 - <tr><td><span class="sc">48</span></td><td><code>sed_rtu_over_tcp_set4tm_rtd</code></td><td>Real-time data via SET-4TM RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_111.bin</code></td></tr> 267 - <tr><td><span class="sc">49</span></td><td><code>sed_rtu_over_tcp_tem104_arch</code></td><td>Archived data via TEM104 protocol</td><td><code style="font-size:.75em">sed_metrology_162.bin</code></td></tr> 268 - <tr><td><span class="sc">50</span></td><td><code>sed_rtu_over_tcp_tem104_rtd</code></td><td>Real-time data via TEM104 protocol</td><td><code style="font-size:.75em">sed_metrology_161.bin</code></td></tr> 269 - <tr><td><span class="sc">51</span></td><td><code>sed_rtu_over_tcp_vist_arch</code></td><td>Archived data via VIS.T protocol</td><td><code style="font-size:.75em">sed_metrology_172.bin</code></td></tr> 270 - <tr><td><span class="sc">52</span></td><td><code>sed_rtu_over_tcp_vkt5_arch</code></td><td>Archived data from VKT-5 devices</td><td><code style="font-size:.75em">sed_metrology_312.bin</code></td></tr> 271 - <tr><td><span class="sc">53</span></td><td><code>sed_rtu_over_tcp_vkt5_rtd</code></td><td>Real-time data from VKT-5 devices</td><td><code style="font-size:.75em">sed_metrology_311.bin</code></td></tr> 272 - <tr><td><span class="sc">54</span></td><td><code>sed_vkt7_arch</code></td><td>Archived data from VKT-7 devices</td><td><code style="font-size:.75em"></code></td></tr> 273 - <tr><td><span class="sc">55</span></td><td><code>sed_vkt7_rtd</code></td><td>Real-time data from VKT-7 devices</td><td><code style="font-size:.75em"></code></td></tr> 274 - <tr><td><span class="sc">56</span></td><td><code>sed_rtu_over_tcp_vtd_arch</code></td><td>Archived data from VTD devices</td><td><code style="font-size:.75em">sed_metrology_182.bin</code></td></tr> 275 - <tr><td><span class="sc">57</span></td><td><code>sed_rtu_over_tcp_vtd_rtd</code></td><td>Real-time data from VTD devices</td><td><code style="font-size:.75em">sed_metrology_181.bin</code></td></tr> 276 - <tr><td><span class="sc">58</span></td><td><code>sed_uvp_arch</code></td><td>Archive polling for Promavtomatika UVP series devices</td><td><code style="font-size:.75em">sed_metrology_352.bin</code></td></tr> 277 - <tr><td><span class="sc">59</span></td><td><code>sed_ce_arch</code></td><td>Archived data from Energomera CE series via IEC61107</td><td><code style="font-size:.75em">sed_metrology_362.bin</code></td></tr> 278 - <tr><td><span class="sc">60</span></td><td><code>sed_alpha_arch</code></td><td>Archived data from Alfa-3 (Alfamera) devices</td><td><code style="font-size:.75em">sed_metrology_462_472.bin</code></td></tr> 279 - <tr><td><span class="sc">61</span></td><td><code>sed_bug01_rtd</code></td><td>Archived data from BUG-01 devices</td><td><code style="font-size:.75em">sed_metrology_491.bin</code></td></tr> 280 - <tr><td><span class="sc">62</span></td><td><code>sed_dymetic_arch</code></td><td>Archived data from Dimetik devices</td><td><code style="font-size:.75em">sed_metrology_552.bin</code></td></tr> 281 - <tr><td><span class="sc">63</span></td><td><code>sed_irvis_arch</code></td><td>Archived data via Irvis protocol</td><td><code style="font-size:.75em">sed_metrology_442.bin</code></td></tr> 282 - <tr><td><span class="sc">64</span></td><td><code>sed_karat_arch</code></td><td>Archived data from Karat devices</td><td><code style="font-size:.75em">sed_metrology_512.bin</code></td></tr> 283 - <tr><td><span class="sc">65</span></td><td><code>sed_lis200_arch</code></td><td>Archived data from EK-260 / EK-270 (Elster)</td><td><code style="font-size:.75em">sed_metrology_452.bin</code></td></tr> 284 - <tr><td><span class="sc">66</span></td><td><code>sed_rtu_over_tcp_sepam_waveform</code></td><td>Waveforms from Sepam via Modbus RTU over TCP</td><td><code style="font-size:.75em">sed_metrology_298.bin</code></td></tr> 285 - </tbody> 286 - </table> 287 - </div> 288 - </details> 289 - <details class="acc" id="s-grp-sql" open> 290 - <summary><span class="acc-num">3</span><span class="acc-title">SQL Database Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-sql')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 291 - <div class="acc-body"> 292 - <table class="rn-table"> 293 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th><th style="width:160px">Metrologically significant</th></tr></thead> 294 - <tbody> 295 - <tr><td><span class="sc">67</span></td><td><code>sed_sql_rtd</code></td><td>Telemetry data from MySQL</td><td><code style="font-size:.75em">sed_metrology_211.bin</code></td></tr> 296 - <tr><td><span class="sc">68</span></td><td><code>sed_sql_arch</code></td><td>Archived data from Microsoft SQL Server</td><td><code style="font-size:.75em"></code></td></tr> 297 - <tr><td><span class="sc">69</span></td><td><code>sed_sql_arch_send</code></td><td>Recording archived data in an external SQL database</td><td><code style="font-size:.75em"></code></td></tr> 298 - </tbody> 299 - </table> 300 - </div> 301 - </details> 302 - <details class="acc" id="s-grp-processing" open> 303 - <summary><span class="acc-num">8</span><span class="acc-title">Data Processing Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-processing')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 304 - <div class="acc-body"> 305 - <table class="rn-table"> 306 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th><th style="width:160px">Metrologically significant</th></tr></thead> 307 - <tbody> 308 - <tr><td><span class="sc">70</span></td><td><code>sed_controller</code></td><td>Telemetry reception and processing → InfluxDB</td><td><code style="font-size:.75em">sed_metrology_controller.bin</code></td></tr> 309 - <tr><td><span class="sc">71</span></td><td><code>sed_events_calc</code></td><td>Event generation based on configured conditions</td><td><code style="font-size:.75em"></code></td></tr> 310 - <tr><td><span class="sc">72</span></td><td><code>sed_calc_arch</code></td><td>Metering channel calculation</td><td><code style="font-size:.75em">sed_metrology_formulas.bin</code></td></tr> 311 - <tr><td><span class="sc">73</span></td><td><code>sed_calc_rtd</code></td><td>Pre-calculated tag calculation</td><td><code style="font-size:.75em"></code></td></tr> 312 - <tr><td><span class="sc">74</span></td><td><code>sed_round_arch</code></td><td>Metering channel calculation with rounding</td><td><code style="font-size:.75em">sed_metrology_round_arch.bin</code></td></tr> 313 - <tr><td><span class="sc">75</span></td><td><code>sed_energy_calc</code></td><td>Server-level energy resource calculation</td><td><code style="font-size:.75em">sed_metrology_411_421.bin</code></td></tr> 314 - <tr><td><span class="sc">76</span></td><td><code>sed_loadflow_calc</code></td><td>Mode calculation based on information model</td><td><code style="font-size:.75em"></code></td></tr> 315 - <tr><td><span class="sc">77</span></td><td><code>sed_storage_writer</code></td><td>Archived data recording (metering and event logs) to InfluxDB and MongoDB</td><td><code style="font-size:.75em"></code></td></tr> 316 - </tbody> 317 - </table> 318 - </div> 319 - </details> 320 - <details class="acc" id="s-grp-web" open> 321 - <summary><span class="acc-num">29</span><span class="acc-title">Web Part Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-web')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 322 - <div class="acc-body"> 323 - <table class="rn-table"> 324 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th></tr></thead> 325 - <tbody> 326 - <tr><td><span class="sc">78</span></td><td><code>php5-cgi</code></td><td>Web query service</td></tr> 327 - <tr><td><span class="sc">79</span></td><td><code>nginx</code></td><td>Web server</td></tr> 328 - <tr><td><span class="sc">80</span></td><td><code>sed_ui</code></td><td>Web resources processing service (js, css, html)</td></tr> 329 - <tr><td><span class="sc">81</span></td><td><code>sed_rtd_analysis</code></td><td>Real-time data analysis</td></tr> 330 - <tr><td><span class="sc">82</span></td><td><code>sed_auth</code></td><td>User authentication, authorisation, and access rights configuration</td></tr> 331 - <tr><td><span class="sc">83</span></td><td><code>sed_auth_privileges</code></td><td>User privilege management</td></tr> 332 - <tr><td><span class="sc">84</span></td><td><code>sed_api_gateway</code></td><td>Web request proxy to internal services</td></tr> 333 - <tr><td><span class="sc">85</span></td><td><code>sed_dataset_configurator</code></td><td>Dataset management</td></tr> 334 - <tr><td><span class="sc">86</span></td><td><code>sed_rtd</code></td><td>Real-time data subscription service</td></tr> 335 - <tr><td><span class="sc">87</span></td><td><code>sed_rtd_archive</code></td><td>Archived data generation from real-time data</td></tr> 336 - <tr><td><span class="sc">88</span></td><td><code>sed_system</code></td><td>System information user interface</td></tr> 337 - <tr><td><span class="sc">89</span></td><td><code>sed_archive</code></td><td>Electricity and energy accounting analysis interfaces</td></tr> 338 - <tr><td><span class="sc">90</span></td><td><code>sed_archive_integrity</code></td><td>Data completeness analysis interfaces</td></tr> 339 - <tr><td><span class="sc">91</span></td><td><code>sed_pq_reports</code></td><td>Power quality reports</td></tr> 340 - <tr><td><span class="sc">92</span></td><td><code>sed_pq_journal</code></td><td>Power quality logs</td></tr> 341 - <tr><td><span class="sc">93</span></td><td><code>sed_ras_configurator</code></td><td>Emergency event logger configuration</td></tr> 342 - <tr><td><span class="sc">94</span></td><td><code>sed_reports</code></td><td>Report generation, management, and user interfaces</td></tr> 343 - <tr><td><span class="sc">95</span></td><td><code>sed_widgets</code></td><td>Drag-and-drop widget user interfaces</td></tr> 344 - <tr><td><span class="sc">96</span></td><td><code>sed_menu</code></td><td>CENTO system menu display and configuration</td></tr> 345 - <tr><td><span class="sc">97</span></td><td><code>sed_mnemonic_diagrams</code></td><td>Mimic diagram user interfaces</td></tr> 346 - <tr><td><span class="sc">98</span></td><td><code>sed_configuration</code></td><td>System configuration interfaces (alerts, mail, formulas, device trees)</td></tr> 347 - <tr><td><span class="sc">99</span></td><td><code>sed_devices_configurator</code></td><td>Device, tag, and channel configuration editing</td></tr> 348 - <tr><td><span class="sc">100</span></td><td><code>sed_common_event_journal</code></td><td>Configurable event log interfaces</td></tr> 349 - <tr><td><span class="sc">101</span></td><td><code>sed_device_event_journal</code></td><td>Device log service</td></tr> 350 - <tr><td><span class="sc">102</span></td><td><code>sed_operative_journal</code></td><td>Real-time event log interface</td></tr> 351 - <tr><td><span class="sc">103</span></td><td><code>sed_video_journal</code></td><td>Video camera log service</td></tr> 352 - <tr><td><span class="sc">104</span></td><td><code>sed_marking</code></td><td>Dispatch tag management</td></tr> 353 - <tr><td><span class="sc">105</span></td><td><code>sed_sounds</code></td><td>Sound alert management interface</td></tr> 354 - <tr><td><span class="sc">106</span></td><td><code>sed_video_stream</code></td><td>Video streaming from cameras registered in the information model</td></tr> 355 - </tbody> 356 - </table> 357 - </div> 358 - </details> 359 - <details class="acc" id="s-grp-system" open> 360 - <summary><span class="acc-num">28</span><span class="acc-title">System Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-system')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 361 - <div class="acc-body"> 362 - <table class="rn-table"> 363 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th></tr></thead> 364 - <tbody> 365 - <tr><td><span class="sc">107</span></td><td><code>nats</code></td><td>Message broker and service registry (service discovery)</td></tr> 366 - <tr><td><span class="sc">108</span></td><td><code>influxdb</code></td><td>Time series database</td></tr> 367 - <tr><td><span class="sc">109</span></td><td><code>mongod</code></td><td>Configuration and structured data database (event logs, requests)</td></tr> 368 - <tr><td><span class="sc">110</span></td><td><code>sed_signals</code></td><td>Internal signal service (remote control, config update, manual polling, recalculation)</td></tr> 369 - <tr><td><span class="sc">111</span></td><td><code>sed_debug</code></td><td>Debugging information access service</td></tr> 370 - <tr><td><span class="sc">112</span></td><td><code>sed_graphql</code></td><td>Device status subscription service</td></tr> 371 - <tr><td><span class="sc">113</span></td><td><code>sed_energy_calc_configuration</code></td><td>Energy resource calculation configuration management</td></tr> 372 - <tr><td><span class="sc">114</span></td><td><code>sed_backup</code></td><td>Data backup service (cron-based)</td></tr> 373 - <tr><td><span class="sc">115</span></td><td><code>sed_channels</code></td><td>Channel subscription service</td></tr> 374 - <tr><td><span class="sc">116</span></td><td><code>sed_channels_data</code></td><td>Protocol status and latest channel data subscription service</td></tr> 375 - <tr><td><span class="sc">117</span></td><td><code>sed_emission_archive</code></td><td>Emissions metering data service</td></tr> 376 - <tr><td><span class="sc">118</span></td><td><code>sed_profile_archive</code></td><td>Metering data from InfluxDB via gRPC</td></tr> 377 - <tr><td><span class="sc">119</span></td><td><code>sed_web_storage</code></td><td>Archived metering data access service</td></tr> 378 - <tr><td><span class="sc">120</span></td><td><code>sed_watchdog</code></td><td>CENTO services launch management</td></tr> 379 - <tr><td><span class="sc">121</span></td><td><code>sed_scheduler</code></td><td>Scheduled task launcher</td></tr> 380 - <tr><td><span class="sc">122</span></td><td><code>sed_license</code></td><td>Licensing service</td></tr> 381 - <tr><td><span class="sc">123</span></td><td><code>sed_monitor</code></td><td>System services and application monitoring</td></tr> 382 - <tr><td><span class="sc">124</span></td><td><code>sed_telecontrol</code></td><td>Remote control service</td></tr> 383 - <tr><td><span class="sc">125</span></td><td><code>sed_notificator</code></td><td>User event notification by e-mail</td></tr> 384 - <tr><td><span class="sc">126</span></td><td><code>sed_waveforms_journal</code></td><td>Waveform log service</td></tr> 385 - <tr><td><span class="sc">127</span></td><td><code>sed_storage_configurator</code></td><td>InfluxDB database configuration</td></tr> 386 - <tr><td><span class="sc">128</span></td><td><code>sed_system_configuration</code></td><td>CENTO system configuration editing</td></tr> 387 - <tr><td><span class="sc">129</span></td><td><code>sed_user_settings</code></td><td>User settings configuration</td></tr> 388 - <tr><td><span class="sc">130</span></td><td><code>sed_system_event_journal</code></td><td>System event registration and provision (business logic and administration)</td></tr> 389 - <tr><td><span class="sc">131</span></td><td><code>sed_tech_event_journal</code></td><td>Technological event processing and management</td></tr> 390 - <tr><td><span class="sc">132</span></td><td><code>sed_information_model</code></td><td>System information model management</td></tr> 391 - <tr><td><span class="sc">133</span></td><td><code>sed_events_configurator</code></td><td>System event configuration</td></tr> 392 - <tr><td><span class="sc">134</span></td><td><code>sed_information_model_editor</code></td><td>Information model editing</td></tr> 393 - </tbody> 394 - </table> 395 - </div> 396 - </details> 397 - <details class="acc" id="s-grp-backup" open> 398 - <summary><span class="acc-num">6</span><span class="acc-title">Server Backup Services</span><a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-grp-backup')" title="Copy link"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z"/></svg></a></summary> 399 - <div class="acc-body"> 400 - <table class="rn-table"> 401 - <thead><tr><th style="width:40px">№</th><th style="width:200px">Service</th><th>Function</th></tr></thead> 402 - <tbody> 403 - <tr><td><span class="sc">135</span></td><td><code>sed_coordinator</code></td><td>Cluster host server selection via Bully leader election algorithm</td></tr> 404 - <tr><td><span class="sc">136</span></td><td><code>sed_reserve</code></td><td>Backup server list display</td></tr> 405 - <tr><td><span class="sc">137</span></td><td><code>sed_replicator</code></td><td>Log replication between cluster servers</td></tr> 406 - <tr><td><span class="sc">138</span></td><td><code>sed_influx_replicator</code></td><td>Data replication (archives and telemetry) between cluster servers</td></tr> 407 - <tr><td><span class="sc">139</span></td><td><code>sed_events_replicator</code></td><td>Event replication between cluster servers</td></tr> 408 - <tr><td><span class="sc">140</span></td><td><code>sed_fs_synch</code></td><td>File replication (gob files, reports, waveforms) between cluster servers</td></tr> 409 - </tbody> 410 - </table> 411 - </div> 412 - </details> 55 +A few polling services contain additional binary files "**sed_metrology_xxxx.bin", **where XXX is the code of the polling service. Binary files "**sed_metrology_XXX.bin**" are a metrologically significant part of the polling modules and contain information about the mechanism for extracting data from device memory registers, which correspond to the configuration of the devices being polled, as well as recording the received values in the database. 413 413 414 - <divclass="parent-topic">Parenttopic:<a href="[[CENTOManuals>>doc:CENTOManuals.WebHome]]">CENTOManuals</a></div>57 +When metrologically significant files change, their checksum changes. Information about checksums is displayed on the "Services" tab of the "System Information" page. Checksums are calculated by **the sed_system** service using the MD5 algorithm. To display up-to-date information about checksums, click the "Update Information" button in the upper-right corner of the System Information page (System - Settings) - see Fig.3.1. 415 415 416 - </div><!-- /doc-content -->59 +[[image:Screenshot 2025-12-03 at 18.47.38.png]] 417 417 418 -<nav class="doc-toc"> 419 - <div class="toc-header"> 420 - <strong>On This Page</strong> 421 - <button class="toc-toggle" id="toc-tog" title="Collapse">«</button> 422 - </div> 423 - <ul id="toc-list"> 424 - <li class="tl1"><a href="#s-intro" data-toc>1. Introduction</a></li> 425 - <li class="tl1"><a href="#s-structure" data-toc>2. CENTO Structure</a></li> 426 - <li class="tl1"><a href="#s-components" data-toc>3. Components</a></li> 427 - <li class="tl2"><a href="#s-web" data-toc>3.1 Web Part</a></li> 428 - <li class="tl2"><a href="#s-core" data-toc>3.2 Core</a></li> 429 - <li class="tl2"><a href="#s-grp-transfer" data-toc>Data Collection (1–5)</a></li> 430 - <li class="tl2"><a href="#s-grp-standard" data-toc>Standard Protocols (6–21)</a></li> 431 - <li class="tl2"><a href="#s-grp-proprietary" data-toc>Proprietary Protocols (22–66)</a></li> 432 - <li class="tl2"><a href="#s-grp-sql" data-toc>SQL Services (67–69)</a></li> 433 - <li class="tl2"><a href="#s-grp-processing" data-toc>Processing (70–77)</a></li> 434 - <li class="tl2"><a href="#s-grp-web" data-toc>Web Part (78–106)</a></li> 435 - <li class="tl2"><a href="#s-grp-system" data-toc>System (107–134)</a></li> 436 - <li class="tl2"><a href="#s-grp-backup" data-toc>Backup (135–140)</a></li> 437 - </ul> 438 -</nav> 61 +Fig. 3.1 – Updating information on checksums of metrologically significant files 439 439 440 -</div><!-- /doc-wrap --> 441 -<script> 63 +**Data processing services** 442 442 443 -(function(){ 444 - var bar = document.getElementById('rn-prog'); 445 - var top = document.getElementById('rn-top'); 446 - window.addEventListener('scroll', function(){ 447 - var d = document.documentElement; 448 - var pct = d.scrollTop / (d.scrollHeight - d.clientHeight); 449 - bar.style.width = (pct*100)+'%'; 450 - d.scrollTop > 280 ? top.classList.add('on') : top.classList.remove('on'); 451 - }, {passive:true}); 65 +The processing services receive the data coming from the message broker, process it, and write it to the database. 452 452 453 - /* TOC active via IntersectionObserver */ 454 - var links = Array.from(document.querySelectorAll('[data-toc]')); 455 - var secs = links.map(function(a){ 456 - return {el: document.getElementById(a.getAttribute('href').slice(1)), a:a}; 457 - }).filter(function(s){return s.el;}); 67 +The data processing services contain a metrologically significant part the binary file "**sed_metrology_YYY.bin**" where YYY is the service identification name. Binary files "**sed_metrology_YYY.bin" **contains information about algorithms and mechanisms for calculating measured values and are used by the processing modules to directly perform their functions. 458 458 459 - var busy = false; 460 - var obs = new IntersectionObserver(function(entries){ 461 - if (busy) return; 462 - entries.forEach(function(e){ 463 - if (!e.isIntersecting) return; 464 - var i = secs.findIndex(function(s){return s.el===e.target;}); 465 - if (i<0) return; 466 - secs.forEach(function(s){s.a.classList.remove('toc-on');}); 467 - secs[i].a.classList.add('toc-on'); 468 - var toc = document.querySelector('.doc-toc'); 469 - var link = secs[i].a; 470 - toc.scrollTop = link.offsetTop - toc.offsetTop - toc.clientHeight/2 + link.clientHeight/2; 471 - }); 472 - }, {rootMargin:'-8% 0px -60% 0px', threshold:0}); 473 - secs.forEach(function(s){obs.observe(s.el);}); 69 +The Pre-calculated Parameter Calculation Service (sed_calc_arch service) additionally has a **sed_metrology_formulas.bin** file. The sed_metrology_formulas.bin file contains custom formulas for pre-calculations that have the "metrologically significant" attribute. 474 474 475 - links.forEach(function(a){ 476 - a.addEventListener('click', function(e){ 477 - var id = a.getAttribute('href').slice(1); 478 - var el = document.getElementById(id); 479 - if (!el) return; 480 - e.preventDefault(); 481 - busy = true; 482 - secs.forEach(function(s){s.a.classList.remove('toc-on');}); 483 - a.classList.add('toc-on'); 484 - el.scrollIntoView({behavior:'smooth',block:'start'}); 485 - setTimeout(function(){busy=false;}, 900); 486 - }); 487 - }); 71 +When metrologically significant files or formulas with a metrological significance attribute change, the checksum of the file changes. Information about checksums is displayed on the "Services" tab of the "System Information" page. Checksums are calculated by **the sed_system service **using the MD5 algorithm. 488 488 489 - /* TOC collapse */ 490 - var tocList = document.getElementById('toc-list'); 491 - var togBtn = document.getElementById('toc-tog'); 492 - var collapsed = false; 493 - togBtn && togBtn.addEventListener('click', function(){ 494 - collapsed = !collapsed; 495 - tocList.style.display = collapsed ? 'none' : ''; 496 - togBtn.textContent = collapsed ? '»' : '«'; 497 - }); 73 +**Auxiliary Services** 498 498 499 - /* Lightbox */ 500 - var lb = document.getElementById('rn-lb'); 501 - var lbI = document.getElementById('rn-lb-img'); 502 - var lbC = document.getElementById('rn-lb-cap'); 503 - window.openLightbox = function(img){ 504 - lbI.src = img.src; lbI.alt = img.alt; lbC.textContent = img.alt; 505 - lb.classList.add('open'); document.body.style.overflow='hidden'; 506 - }; 507 - window.closeLightbox = function(){ 508 - lb.classList.remove('open'); document.body.style.overflow=''; 509 - }; 510 - lb.addEventListener('click', function(e){if(e.target===lb)closeLightbox();}); 511 - document.addEventListener('keydown', function(e){if(e.key==='Escape')closeLightbox();}); 75 +Auxiliary services are designed to ensure that the main CENTO services perform their functions. 512 512 513 - /* Copy anchor */ 514 - var toast = document.getElementById('rn-toast'); 515 - var t; 516 - window.copyAnchor = function(id){ 517 - var url = location.href.split('#')[0]+'#'+id; 518 - if(navigator.clipboard) navigator.clipboard.writeText(url).catch(function(){}); 519 - else { var x=document.createElement('textarea');x.value=url;document.body.appendChild(x);x.select();document.execCommand('copy');document.body.removeChild(x); } 520 - toast.classList.add('on'); 521 - clearTimeout(t); 522 - t = setTimeout(function(){toast.classList.remove('on');}, 1600); 523 - }; 77 +The list of CENTO services and their brief description is given in Table 1. The composition of CENTO services for a particular system depends on the functions performed and is displayed on the "System Information" tab. 524 524 525 - /* ── Sticky TOC via JS ── 526 - Uses position:absolute→fixed switch. No placeholder needed because 527 - .doc-content has a fixed margin-right — content width never changes. */ 528 - (function(){ 529 - var toc = document.querySelector('.doc-toc'); 530 - var wrap = document.querySelector('.doc-wrap'); 531 - if (!toc || !wrap) return; 79 +Table 1 – CENTO software components 532 532 533 - var navbar = document.querySelector('.navbar, nav.navbar, #topBar, header'); 534 - var navH = navbar ? navbar.offsetHeight : 0; 535 - var footer = document.querySelector('footer, .xwikifooter, #xwikifooter, .bottombar, .sticky-container'); 81 +|(% style="text-align:center" %)**№**|(% style="text-align:center; width:214px" %)**Service Name**|(% style="text-align:center; width:676px" %)**Function**|(% style="text-align:center; width:358px" %)**Metrologically significant part** 82 +|(% colspan="4" style="text-align:center" %)**Data collection and transmission services** 83 +|((( 84 +~1. 85 +)))|(% style="width:214px" %)sed_bus_dispatcher|(% style="width:676px" %)Sequential Device Polling Management Service|(% style="width:358px" %) 86 +|((( 87 +2. 88 +)))|(% style="width:214px" %)sed_xml_reader|(% style="width:676px" %)Service for processing received XML files 80020|(% style="width:358px" %) 89 +|((( 90 +3. 91 +)))|(% style="width:214px" %)sed_xml_send|(% style="width:676px" %)XML file transfer Service 80020|(% style="width:358px" %) 92 +|((( 93 +4. 94 +)))|(% style="width:214px" %)sed_archive_webapi|(% style="width:676px" %)Implementation of the web API for transmitting archived data according to the CENTO documentation|(% style="width:358px" %) 95 +|((( 96 +5. 97 +)))|(% style="width:214px" %)sed_s2s_configuration|(% style="width:676px" %)Configuration transmission service between CENTO servers|(% style="width:358px" %) 98 +|(% colspan="4" style="text-align:center" %)**Data collection and transmission services using standard protocols** 99 +|6.|(% style="width:214px" %)sed_modbus_rtd|(% style="width:676px" %)A service for reading real-time data from devices using Modbus protocol (Modbus TCP and Modbus RTU over TCP)|(% style="width:358px" %)sed_metrology_001.bin 100 +|7.|(% style="width:214px" %)sed_modbus_rtd_send|(% style="width:676px" %)A service for sending real-time data to third-party devices using the Modbus TCP protocol|(% style="width:358px" %) 101 +|8.|(% style="width:214px" %)sed_modbus_sync|(% style="width:676px" %)A device time synchronization service using Modbus protocol (Modbus TCP and Modbus RTU over TCP)|(% style="width:358px" %) 102 +|9.|(% style="width:214px" %)sed_snmp_rtd|(% style="width:676px" %)A service for reading real-time data from devices using the SNMP (v1, v2c, v3), ICMP protocols|(% style="width:358px" %) 103 +|10.|(% style="width:214px" %)sed_iec103_waveform|(% style="width:676px" %)A service for reading waveform files from devices using the IEC protocol-60870-5-103|(% style="width:358px" %)sed_metrology_393.bin 104 +|11.|(% style="width:214px" %)sed_iec104_rtd|(% style="width:676px" %)A service for reading real-time data from devices using the IEC 60870-5-104 protocol|(% style="width:358px" %)sed_metrology_011.bin 105 +|12.|(% style="width:214px" %)sed_iec104_rtd_send|(% style="width:676px" %)A service for sending real-time data to third-party devices using the IEC 60870-5-104 protocol|(% style="width:358px" %)sed_metrology_012.bin 106 +|13.|(% style="width:214px" %)sed_opcda_rtd|(% style="width:676px" %)A service for receiving real-time data using the OPC DA protocol|(% style="width:358px" %) 107 +|14.|(% style="width:214px" %)sed_opcua_rtd|(% style="width:676px" %)A service for receiving real-time data using the OPC UA protocol|(% style="width:358px" %) 108 +|15.|(% style="width:214px" %)sed_opcua_arch|(% style="width:676px" %)A service for receiving archived data using the OPC UA protocol|(% style="width:358px" %)sed_metrology_402.bin 109 +|16.|(% style="width:214px" %)sed_opcua_server|(% style="width:676px" %)A service for transmitting data using the OPC UA protocol|(% style="width:358px" %) 110 +|17.|(% style="width:214px" %)sed_dnp3_rtd|(% style="width:676px" %)A service for reading real-time data from devices using the DNP3 protocol|(% style="width:358px" %) 111 +|18.|(% style="width:214px" %)sed_ftp_waveform|(% style="width:676px" %)A service for receiving waveform files via FTP protocol|(% style="width:358px" %)sed_metrology_380.bin 112 +|19.|(% style="width:214px" %)sed_iec61107_rtd|(% style="width:676px" %)A service for obtaining real-time data from devices using the IEC 62056-21 protocol|(% style="width:358px" %)sed_metrology_61107.bin 113 +|20.|(% style="width:214px" %)sed_iec61850_arch|(% style="width:676px" %)A service for receiving archived data from devices using the IEC 61850 protocol|(% style="width:358px" %) 114 +|21.|(% style="width:214px" %)sed_iec61850_rtd|(% style="width:676px" %)A service for receiving operational data from devices using the IEC 61850 protocol|(% style="width:358px" %) 115 +|(% colspan="4" style="text-align:center" %)**Proprietary protocol data collection and transmission services** 116 +|22.|(% style="width:214px" %)sed_satec_arch|(% style="width:676px" %)A service for reading archived data (metering and event logs) from SATEC devices|(% style="width:358px" %)sed_metrology_7_8.bin 117 +|23.|(% style="width:214px" %)sed_satec_pq_journal|(% style="width:676px" %)A service for obtaining event logs for monitoring the power quality from Satec devices|(% style="width:358px" %)sed_metrology_106.bin 118 +|24.|(% style="width:214px" %)sed_satec_pq_report|(% style="width:676px" %)A service for receiving reports on the power quality control from Satec devices|(% style="width:358px" %)sed_metrology_106.bin 119 +|25.|(% style="width:214px" %)sed_satec_waveforms|(% style="width:676px" %)A service for proofreading waveforms from SATEC devices using Modbus TCP and RTU over TCP protocols|(% style="width:358px" %)sed_metrology_108_109.bin 120 +|26.|(% style="width:214px" %)sed_iec103_rtd|(% style="width:676px" %)A service for reading real-time data from TOR 200 terminals according to the IEC protocol-60870-5-103|(% style="width:358px" %)sed_metrology_391.bin 121 +|27.|(% style="width:214px" %)sed_sepam_waveform|(% style="width:676px" %)A service for proofreading waveforms and time synchronization using the Modbus RTU over TCP protocol from Sepam devices|(% style="width:358px" %)sed_metrology_298_299.bin 122 +|28.|(% style="width:214px" %)sed_rtu_over_tcp_logikamp_rtd|(% style="width:676px" %)A service for reading real-time data from devices using the LogicaMP RTU over TCP protocol|(% style="width:358px" %)sed_metrology_121.bin 123 +|29.|(% style="width:214px" %)sed_rtu_over_tcp_logikamp_arch|(% style="width:676px" %)A service for reading archived data from devices using the LogicaMP RTU over TCP protocol|(% style="width:358px" %)sed_metrology_122.bin 124 +|30.|(% style="width:214px" %)sed_axis_video_journal|(% style="width:676px" %)An AXIS camera recording service|(% style="width:358px" %)sed_metrology_435.bin 125 +|31.|(% style="width:214px" %)sed_vzlyotmb_arch|(% style="width:676px" %)A service for reading archives and event logs of devices Vzlet TSRV-043, TSRV-027, IVK-TER|(% style="width:358px" %)sed_metrology_25_133.bin 126 +|32.|(% style="width:214px" %)sed_micom_waveforms|(% style="width:676px" %)A service for reading waveform files from Micom devices using Modbus RTU over TCP protocol|(% style="width:358px" %)sed_metrology_370.bin 127 +|33.|(% style="width:214px" %)sed_pulsar_arch|(% style="width:676px" %)A service for reading archives from Pulsar devices using the Modbus protocol|(% style="width:358px" %)sed_metrology_342.bin 128 +|34.|(% style="width:214px" %)sed_rtu_over_tcp_a1800_arch|(% style="width:676px" %)A service for receiving archived data from A1800 meters using the Modbus RTU over TCP protocol|(% style="width:358px" %)sed_metrology_232.bin 129 +|35.|(% style="width:214px" %)sed_rtu_over_tcp_a1800_rtd|(% style="width:676px" %)A service for receiving real-time data from A1800 meters using the Modbus RTU over TCP protocol|(% style="width:358px" %)sed_metrology_231.bin 130 +|36.|(% style="width:214px" %)sed_rtu_over_tcp_acron_arch|(% style="width:676px" %)A service for receiving archived data from Acron meters using the Modbus RTU over TCP protocol|(% style="width:358px" %)sed_metrology_142.bin 131 +|37.|(% style="width:214px" %)sed_rtu_over_tcp_acron_rtd|(% style="width:676px" %)A service for receiving real-time data from Acron meters using the Modbus RTU over TCP protocol|(% style="width:358px" %)sed_metrology_141.bin 132 +|38.|(% style="width:214px" %)sed_rtu_over_tcp_bmrz_waveform|(% style="width:676px" %)A service for reading waveform files from BMRZ terminals using the Modbus RTU over TCP protocol|(% style="width:358px" %)sed_metrology_110.bin 133 +|39.|(% style="width:214px" %)sed_rtu_over_tcp_bzp03_waveform|(% style="width:676px" %)A service for reading waveform files from BZP-03 terminals using Modbus RTU over TCP protocol|(% style="width:358px" %) 134 +|40.|(% style="width:214px" %)sed_rtu_over_tcp_kmp_rtd|(% style="width:676px" %)A service for polling Multitical 601 device using the KMP protocol|(% style="width:358px" %)sed_metrology_191.bin 135 +|41.|(% style="width:214px" %)sed_rtu_over_tcp_majac_arch|(% style="width:676px" %)A service for receiving archived data from devices using the Mayak protocol|(% style="width:358px" %)sed_metrology_152.bin 136 +|42.|(% style="width:214px" %)sed_rtu_over_tcp_mercury200_rtd|(% style="width:676px" %)A service for receiving real-time data from devices using the Mercury 200 protocol|(% style="width:358px" %)sed_metrology_251.bin 137 +|43.|(% style="width:214px" %)sed_rtu_over_tcp_mercury_arch|(% style="width:676px" %)A service for reading archives and event logs from Mercury-230 series devices using the Mercury-230 protocol|(% style="width:358px" %)sed_metrology_202.bin 138 +|44.|(% style="width:214px" %)sed_rtu_over_tcp_mercury_rtd|(% style="width:676px" %)A service for receiving real-time data from devices using the Mercury 230 protocol|(% style="width:358px" %)sed_metrology_201.bin 139 +|45.|(% style="width:214px" %)sed_rtu_over_tcp_photon_rtd|(% style="width:676px" %)A service for receiving real-time data from devices using the photon RTU over TCP protocol|(% style="width:358px" %)sed_metrology_221.bin 140 +|46.|(% style="width:214px" %)sed_rtu_over_tcp_ref542plus_waveform|(% style="width:676px" %)Proofreading of waveforms and time synchronization via Modbus RTU over TCP protocol from ABB REF 542plus devices|(% style="width:358px" %) 141 +|47.|(% style="width:214px" %)sed_rtu_over_tcp_set4tm_arch|(% style="width:676px" %)A service for polling SET-4TM, PSC meters’ archives|(% style="width:358px" %)sed_metrology_112.bin 142 +|48.|(% style="width:214px" %)sed_rtu_over_tcp_set4tm_rtd|(% style="width:676px" %)A service for receiving real-time data from devices using the SET-4TM rtu over tcp protocol|(% style="width:358px" %)sed_metrology_111.bin 143 +|49.|(% style="width:214px" %)sed_rtu_over_tcp_tem104_arch|(% style="width:676px" %)A service for receiving archived data from devices using the TEM104 protocol|(% style="width:358px" %)sed_metrology_162.bin 144 +|50.|(% style="width:214px" %)sed_rtu_over_tcp_tem104_rtd|(% style="width:676px" %)A service for receiving real-tume data from devices using the TEM104 protocol|(% style="width:358px" %)sed_metrology_161.bin 145 +|51.|(% style="width:214px" %)sed_rtu_over_tcp_vist_arch|(% style="width:676px" %)A service for receiving archived data from devices using the VIS.T protocol|(% style="width:358px" %)sed_metrology_172.bin 146 +|52.|(% style="width:214px" %)sed_rtu_over_tcp_vkt5_arch|(% style="width:676px" %)A service for receiving archived data from VKT-5 devices|(% style="width:358px" %)sed_metrology_312.bin 147 +|53.|(% style="width:214px" %)sed_rtu_over_tcp_vkt5_rtd|(% style="width:676px" %)A service for receiving real-time data from VKT-5 devices|(% style="width:358px" %)sed_metrology_311.bin 148 +|54.|(% style="width:214px" %)sed_vkt7_arch|(% style="width:676px" %)A service for receiving archived data from VKT-7 devices|(% style="width:358px" %) 149 +|55.|(% style="width:214px" %)sed_vkt7_rtd|(% style="width:676px" %)A service for receiving real-time data from VKT-7 devices|(% style="width:358px" %) 150 +|56.|(% style="width:214px" %)sed_rtu_over_tcp_vtd_arch|(% style="width:676px" %)A service for receiving archived data of VTD devices|(% style="width:358px" %)sed_metrology_182.bin 151 +|57.|(% style="width:214px" %)sed_rtu_over_tcp_vtd_rtd|(% style="width:676px" %)A service for receiving operational data from VTD devices|(% style="width:358px" %)sed_metrology_181.bin 152 +|58.|(% style="width:214px" %)sed_uvp_arch|(% style="width:676px" %)A service for poling Promavtomatika's archive for devices of the UVP series|(% style="width:358px" %)sed_metrology_352.bin 153 +|59.|(% style="width:214px" %)sed_ce_arch|(% style="width:676px" %)A service for receiving archived data from Energomera devices of the CE series according to the IEC61107 protocol|(% style="width:358px" %)sed_metrology_362.bin 154 +|60.|(% style="width:214px" %)sed_alpha_arch|(% style="width:676px" %)A service for receiving archived data from Alfa-3 devices manufactured by Alfamera|(% style="width:358px" %)sed_metrology_462_472.bin 155 +|61.|(% style="width:214px" %)sed_bug01_rtd|(% style="width:676px" %)A service for receiving archived data of BUG-01 devices|(% style="width:358px" %)sed_metrology_491.bin 156 +|62.|(% style="width:214px" %)sed_dymetic_arch|(% style="width:676px" %)A service for receiving archived data from Dimetik|(% style="width:358px" %)sed_metrology_552.bin 157 +|63.|(% style="width:214px" %)sed_irvis_arch|(% style="width:676px" %)A service for receiving archived data from devices using the Irvis protocol|(% style="width:358px" %)sed_metrology_442.bin 158 +|64.|(% style="width:214px" %)sed_karat_arch|(% style="width:676px" %)A service for receiving archived data from Karat devices|(% style="width:358px" %)sed_metrology_512.bin 159 +|65.|(% style="width:214px" %)sed_lis200_arch|(% style="width:676px" %)A service for receiving archived data from the EK-260 and EK-270 devices manufactured by Elster|(% style="width:358px" %)sed_metrology_452.bin 160 +|66.|(% style="width:214px" %)sed_rtu_over_tcp_sepam_waveform|(% style="width:676px" %)A service for reading waveform files from Sepam devices using Modbus RTU over TCP protocol|(% style="width:358px" %)sed_metrology_298.bin 161 +|(% colspan="4" style="text-align:center" %)**Data export and import services in SQL databases** 162 +|67.|(% style="width:214px" %)sed_sql_rtd|(% style="width:676px" %)A service for receiving tele-measurement data from MySQL|(% style="width:358px" %)sed_metrology_211.bin 163 +|68.|(% style="width:214px" %)sed_sql_arch|(% style="width:676px" %)A service for archived data retrieval from Microsoft SQL Server|(% style="width:358px" %) 164 +|69.|(% style="width:214px" %)sed_sql_arch_send|(% style="width:676px" %)A service for recording archived data in an external SQL database|(% style="width:358px" %) 165 +|(% colspan="4" style="text-align:center" %)**Data processing services** 166 +|70.|(% style="width:214px" %)sed_controller|(% style="width:676px" %)A service for telemetry reception and processing (writes to the InfluxDB database)|(% style="width:358px" %)sed_metrology_controller.bin 167 +|71.|(% style="width:214px" %)sed_events_calc|(% style="width:676px" %)A service for generating event based on the conditions specified in the configuration|(% style="width:358px" %) 168 +|72.|(% style="width:214px" %)sed_calc_arch|(% style="width:676px" %)A service for calculating metering channels|(% style="width:358px" %)((( 169 +sed_metrology_calc_arch.bin 536 536 537 - function update() { 538 - var wr = wrap.getBoundingClientRect(); 539 - 540 - if (wr.top <= navH) { 541 - /* Doc-wrap has scrolled above navbar — fix the TOC */ 542 - var footerTop = footer ? footer.getBoundingClientRect().top : window.innerHeight; 543 - var h = Math.max(0, Math.min(window.innerHeight, footerTop) - navH); 544 - 545 - toc.classList.add('is-fixed'); 546 - toc.style.top = navH + 'px'; 547 - toc.style.left = (wr.right - 200) + 'px'; /* right edge of wrap minus TOC width */ 548 - toc.style.height = h + 'px'; 549 - } else { 550 - /* Still in natural position */ 551 - toc.classList.remove('is-fixed'); 552 - toc.style.top = toc.style.left = toc.style.height = ''; 553 - } 554 - } 555 - 556 - requestAnimationFrame(function(){ requestAnimationFrame(function(){ 557 - update(); 558 - window.addEventListener('scroll', update, {passive:true}); 559 - window.addEventListener('resize', update, {passive:true}); 560 - }); }); 561 - })(); 562 - 563 - /* ── Left panel navigation hints ── */ 564 - (function(){ 565 - var hints = { 566 - 'Preface': 'Introduction to CENTO Software documentation', 567 - '1. User Manual': 'Web interface guide — login, diagrams, analysis, logs, reports', 568 - '2. Setup Manual': 'System configuration and setup for administrators', 569 - '3. Metering Channels': 'Metering channel configuration and data collection setup', 570 - '4. Structure and Modules Description': 'CENTO system architecture and module overview', 571 - '5. Diagrams Development Manual': 'Creating and configuring SCADA mimic diagrams', 572 - '6. Flexible Reports Guide': 'Building configurable tabular reports from metering data', 573 - '7. Events Setup': 'Configuring event rules, thresholds, and notifications', 574 - '8. Control Setup Manual': 'Setting up remote control and switching operations', 575 - 'Network Diagram (CLOUD)': 'CENTO deployment topology for cloud installations', 576 - 'Network Diagram (On-Prem)': 'CENTO deployment topology for on-premises installations', 577 - 'Server Configuration Example': 'Reference server setup and configuration example', 578 - 'Technical Requirements': 'Hardware and software requirements for CENTO deployment', 579 - 'DEMO server': 'Access the live CENTO demo environment', 580 - 'Release Notes': 'Changelog and version history for the CENTO platform', 581 - }; 582 - document.querySelectorAll('#leftPanels a').forEach(function(a){ 583 - var text = a.textContent.trim(); 584 - var hint = hints[text] || hints[text.replace(/^\d+\.\s*/, '')]; 585 - if (hint) a.setAttribute('data-hint', hint); 586 - }); 587 - })(); 588 -})(); 589 - 590 -</script> 591 -{{/html}} 171 +sed_metrology_formulas.bin 172 +))) 173 +|73.|(% style="width:214px" %)sed_calc_rtd|(% style="width:676px" %)A service for calculating pre-calculated tags|(% style="width:358px" %) 174 +|74.|(% style="width:214px" %)sed_round_arch|(% style="width:676px" %)A service for calculating metering channels with rounding|(% style="width:358px" %)sed_metrology_round_arch.bin 175 +|75.|(% style="width:214px" %)sed_energy_calc|(% style="width:676px" %)A service for server-level energy resource calculation|(% style="width:358px" %)sed_metrology_411_421.bin 176 +|76.|(% style="width:214px" %)sed_loadflow_calc|(% style="width:676px" %)A service for calculating modes based on an information model|(% style="width:358px" %) 177 +|77.|(% style="width:214px" %)sed_storage_writer|(% style="width:676px" %)A service for recording archived data (metering and event logs) in a data storage (InfluxDB and MongoDB)|(% style="width:358px" %) 178 +|(% colspan="4" style="text-align:center" %)**Web Part Services** 179 +|78.|(% style="width:214px" %)php5-cgi|(% style="width:676px" %)A Web Query Service|(% style="width:358px" %) 180 +|79.|(% style="width:214px" %)nginx|(% style="width:676px" %)A Web Server|(% style="width:358px" %) 181 +|80.|(% style="width:214px" %)sed_ui|(% style="width:676px" %)A service for processing requests for web resources (js, css, html files)|(% style="width:358px" %) 182 +|81.|(% style="width:214px" %)sed_rtd_analysis|(% style="width:676px" %)A service for analyzing real-time data|(% style="width:358px" %) 183 +|82.|(% style="width:214px" %)sed_auth|(% style="width:676px" %)A service for authenticating and authorizing users in the system and configuring access rights|(% style="width:358px" %) 184 +|83.|(% style="width:214px" %)sed_auth_privileges|(% style="width:676px" %)A User Privilege Management Service|(% style="width:358px" %) 185 +|84.|(% style="width:214px" %)sed_api_gateway|(% style="width:676px" %)A service for proxying of web requests to other services within the system|(% style="width:358px" %) 186 +|85.|(% style="width:214px" %)sed_dataset_configurator|(% style="width:676px" %)A service for working with datasets|(% style="width:358px" %) 187 +|86.|(% style="width:214px" %)sed_rtd|(% style="width:676px" %)A real-time data subscription service|(% style="width:358px" %) 188 +|87.|(% style="width:214px" %)sed_rtd_archive|(% style="width:676px" %)A service for generating archived data from real-time data|(% style="width:358px" %) 189 +|88.|(% style="width:214px" %)sed_system|(% style="width:676px" %)A service that provides a user interface with information about the system|(% style="width:358px" %) 190 +|89.|(% style="width:214px" %)sed_archive|(% style="width:676px" %)A service that provides user interfaces for analyzing electricity and energy accounting|(% style="width:358px" %) 191 +|90.|(% style="width:214px" %)sed_archive_integrity|(% style="width:676px" %)A service that provides user interfaces for analyzing the completeness of electricity and energy resources data|(% style="width:358px" %) 192 +|91.|(% style="width:214px" %)sed_pq_reports|(% style="width:676px" %)A service for working with power quality reports|(% style="width:358px" %) 193 +|92.|(% style="width:214px" %)sed_pq_journal|(% style="width:676px" %)A service for working with power quality logs|(% style="width:358px" %) 194 +|93.|(% style="width:214px" %)sed_ras_configurator|(% style="width:676px" %)A service for configuring emergency event loggers|(% style="width:358px" %) 195 +|94.|(% style="width:214px" %)sed_reports|(% style="width:676px" %)A service for generating and managing reports, and maintaining user interfaces for reports|(% style="width:358px" %) 196 +|95.|(% style="width:214px" %)sed_widgets|(% style="width:676px" %)A service for the user interfaces of drag'n'drop widgets|(% style="width:358px" %) 197 +|96.|(% style="width:214px" %)sed_menu|(% style="width:676px" %)A service for displaying and configuring CENTO system menu|(% style="width:358px" %) 198 +|97.|(% style="width:214px" %)sed_mnemonic_diagrams|(% style="width:676px" %)A service for the user interfaces of diagrams v2|(% style="width:358px" %) 199 +|98.|(% style="width:214px" %)sed_configuration|(% style="width:676px" %)A service for user interfaces for system configuration (alerts, mail servers, formulas, device trees)|(% style="width:358px" %) 200 +|99.|(% style="width:214px" %)sed_devices_configurator|(% style="width:676px" %)A service for editing device configurations, tags, and channels|(% style="width:358px" %) 201 +|100.|(% style="width:214px" %)sed_common_event_journal|(% style="width:676px" %)A service for user interfaces for generalized configurable event logs|(% style="width:358px" %) 202 +|101.|(% style="width:214px" %)sed_device_event_journal|(% style="width:676px" %)A Device Log Service|(% style="width:358px" %) 203 +|102.|(% style="width:214px" %)sed_operative_journal|(% style="width:676px" %)A service for the user interface of the real-time event log|(% style="width:358px" %) 204 +|103.|(% style="width:214px" %)sed_video_journal|(% style="width:676px" %)A Video Camera Log Service|(% style="width:358px" %) 205 +|104.|(% style="width:214px" %)sed_marking|(% style="width:676px" %)A Dispatch Tag Management Service|(% style="width:358px" %) 206 +|105.|(% style="width:214px" %)sed_sounds|(% style="width:676px" %)A service for the user interface for sound alerts management|(% style="width:358px" %) 207 +|106.|(% style="width:214px" %)sed_video_stream|(% style="width:676px" %)A service for streaming video from cameras registered in the information model|(% style="width:358px" %) 208 +|(% colspan="4" style="text-align:center" %)**System services** 209 +|107.|(% style="width:214px" %)nats|(% style="width:676px" %)A message broker and a service registry (service registry/service discovery)|(% style="width:358px" %) 210 +|108.|(% style="width:214px" %)influxdb|(% style="width:676px" %)A time series database|(% style="width:358px" %) 211 +|109.|(% style="width:214px" %)mongod|(% style="width:676px" %)A database of configuration and structured data (event logs, requests)|(% style="width:358px" %) 212 +|110.|(% style="width:214px" %)sed_signals|(% style="width:676px" %)A signal reception and transmission service inside the system (remote control, configuration update, manual polling, parameter recalculation)|(% style="width:358px" %) 213 +|111.|(% style="width:214px" %)sed_debug|(% style="width:676px" %)A service for providing access to debugging information of CENTO services|(% style="width:358px" %) 214 +|112.|(% style="width:214px" %)sed_graphql|(% style="width:676px" %)A subscription service for device statuses|(% style="width:358px" %) 215 +|113.|(% style="width:214px" %)sed_energy_calc_configuration|(% style="width:676px" %)A service for creating, changing, and deleting energy resource calculation configurations at the server level|(% style="width:358px" %) 216 +|114.|(% style="width:214px" %)sed_backup|(% style="width:676px" %)A service for backing up data according to the cron rule.|(% style="width:358px" %) 217 +|115.|(% style="width:214px" %)sed_channels|(% style="width:676px" %)A channel subscription service|(% style="width:358px" %) 218 +|116.|(% style="width:214px" %)sed_channels_data|(% style="width:676px" %)A subscription service for protocol statuses and the latest channel data|(% style="width:358px" %) 219 +|117.|(% style="width:214px" %)sed_emission_archive|(% style="width:676px" %)A service for providing emissions metering data|(% style="width:358px" %) 220 +|118.|(% style="width:214px" %)sed_profile_archive|(% style="width:676px" %)A service for providing metering data from InfluxDB via gRPC.|(% style="width:358px" %) 221 +|119.|(% style="width:214px" %)sed_web_storage|(% style="width:676px" %)A service for accessing archived metering data|(% style="width:358px" %) 222 +|120.|(% style="width:214px" %)sed_watchdog|(% style="width:676px" %)A service for managing the launch of CENTO services|(% style="width:358px" %) 223 +|121.|(% style="width:214px" %)sed_scheduler|(% style="width:676px" %)A service for launching scheduled tasks|(% style="width:358px" %) 224 +|122.|(% style="width:214px" %)sed_license|(% style="width:676px" %)A licensing service|(% style="width:358px" %) 225 +|123.|(% style="width:214px" %)sed_monitor|(% style="width:676px" %)A service for monitoring the operation of the system's services and applications|(% style="width:358px" %) 226 +|124.|(% style="width:214px" %)sed_telecontrol|(% style="width:676px" %)A remote control service|(% style="width:358px" %) 227 +|125.|(% style="width:214px" %)sed_notificator|(% style="width:676px" %)A service for notifying users about events by e-mail|(% style="width:358px" %) 228 +|126.|(% style="width:214px" %)sed_waveforms_journal|(% style="width:676px" %)A waveform Log Service|(% style="width:358px" %) 229 +|127.|(% style="width:214px" %)sed_storage_configurator|(% style="width:676px" %)An InfluxDB Database Configuration Service|(% style="width:358px" %) 230 +|128.|(% style="width:214px" %)sed_system_configuration|(% style="width:676px" %)A CENTO System Configuration Editing Service|(% style="width:358px" %) 231 +|129.|(% style="width:214px" %)sed_user_settings|(% style="width:676px" %)A User Settings Configuration Service|(% style="width:358px" %) 232 +|130.|(% style="width:214px" %)sed_system_event_journal|(% style="width:676px" %)A service for registration and provision of system events (business logic and administration)|(% style="width:358px" %) 233 +|131.|(% style="width:214px" %)sed_tech_event_journal|(% style="width:676px" %)A service for processing and managing technological events|(% style="width:358px" %) 234 +|132.|(% style="width:214px" %)sed_information_model|(% style="width:676px" %)A System Information Model Management Service|(% style="width:358px" %) 235 +|133.|(% style="width:214px" %)sed_events_configurator|(% style="width:676px" %)A System Event Configuration Service|(% style="width:358px" %) 236 +|134.|(% style="width:214px" %)sed_information_model_editor|(% style="width:676px" %)A service for editing the information model|(% style="width:358px" %) 237 +|(% colspan="4" style="text-align:center" %)**Server Backup Services** 238 +|135.|(% style="width:214px" %)sed_coordinator|(% style="width:676px" %)A service for selecting the cluster's host server using the Bully leader election algorithm|(% style="width:358px" %) 239 +|136.|(% style="width:214px" %)sed_reserve|(% style="width:676px" %)A service for displaying a list of backup servers|(% style="width:358px" %) 240 +|137.|(% style="width:214px" %)sed_replicator|(% style="width:676px" %)A log replication service between cluster servers|(% style="width:358px" %) 241 +|138.|(% style="width:214px" %)sed_influx_replicator|(% style="width:676px" %)A data replication service (archives and telemetry) between cluster servers|(% style="width:358px" %) 242 +|139.|(% style="width:214px" %)sed_events_replicator|(% style="width:676px" %)An event replication service between cluster servers|(% style="width:358px" %) 243 +|140.|(% style="width:214px" %)sed_fs_synch|(% style="width:676px" %)A data replication service (gob files, reports, waveforms) between cluster servers|(% style="width:358px" %)