Wiki source code of 2. Setup Manual
Last modified by Iaroslav Platonov on 2026/06/08 09:28
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 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; } | ||
| 10 | |||
| 11 | /* ── Reading progress bar ── */ | ||
| 12 | #rn-prog { position:fixed;top:0;left:0;height:3px;width:0;ground:#005AB4;z-index:9999;pointer-events:none; } | ||
| 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 | } | ||
| 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; } | ||
| 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; } | ||
| 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; } | ||
| 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; } | ||
| 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; } | ||
| 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; } | ||
| 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 | |||
| 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; } | ||
| 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; } | ||
| 103 | |||
| 104 | /* ── Back to top ── */ | ||
| 105 | #rn-top { position:fixed;bottom:60px;right:24px;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; } | ||
| 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; } | ||
| 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; } | ||
| 120 | </style> | ||
| 121 | |||
| 122 | <div id="rn-prog"></div> | ||
| 123 | <div id="rn-lb"> | ||
| 124 | <div id="rn-lb-wrap"> | ||
| 125 | <button id="rn-lb-x" onclick="closeLightbox()">✕</button> | ||
| 126 | <img id="rn-lb-img" src="" alt=""/> | ||
| 127 | </div> | ||
| 128 | <div id="rn-lb-cap"></div> | ||
| 129 | </div> | ||
| 130 | <button id="rn-top" onclick="window.scrollTo({top:0,behavior:'smooth'})" title="Back to top"> | ||
| 131 | <svg width="14" height="14" viewBox="0 0 16 16" fill="currentColor"><path d="M8 4l5 5H3z"/></svg> | ||
| 132 | </button> | ||
| 133 | <div class="rn-toast" id="rn-toast">Link copied ✓</div> | ||
| 134 | |||
| 135 | <div class="doc-wrap"> | ||
| 136 | <div class="doc-content"> | ||
| 137 | |||
| 138 | <ul class="section-index"> | ||
| 139 | <li><a href="#s-intro">1. Introduction</a> | ||
| 140 | <p>CENTO platform overview; devices, tags, channels setup; protocol and calculation tag configuration.</p></li> | ||
| 141 | <li><a href="#s-excel">2. Configuring CENTO via Excel</a> | ||
| 142 | <p>Bulk configuration of devices and channels using Excel import files.</p></li> | ||
| 143 | <li><a href="#s-events">3. Events</a> | ||
| 144 | <p>Setting up event rules, thresholds, and automated notifications.</p></li> | ||
| 145 | <li><a href="#s-mnemonics">4. Mnemonics</a> | ||
| 146 | <p>Creating and configuring SCADA mimic diagrams.</p></li> | ||
| 147 | <li><a href="#s-infomodel">5. Information Model</a> | ||
| 148 | <p>Defining the object hierarchy and tag bindings for the information model.</p></li> | ||
| 149 | <li><a href="#s-settings">6. System Settings</a> | ||
| 150 | <p>Global system configuration: users, access rights, server parameters.</p></li> | ||
| 151 | <li><a href="#s-transfer">7. Transfer Kits</a> | ||
| 152 | <p>Configuring data transfer sets between CENTO servers.</p></li> | ||
| 153 | <li><a href="#s-lighting">8. Lighting Control</a> | ||
| 154 | <p>Setting up automated lighting control via tag-based conditions.</p></li> | ||
| 155 | <li><a href="#s-tooling">9. Tooling</a> | ||
| 156 | <p>Utility tools for system diagnostics and maintenance.</p></li> | ||
| 157 | <li><a href="#s-other">10. Other Settings in Interfaces</a> | ||
| 158 | <p>Additional configuration for real-time data analysis, metering analysis, and logs.</p></li> | ||
| 159 | <li><a href="#s-abbrev">11. Basic Concepts and Abbreviations</a> | ||
| 160 | <p>Glossary of terms and abbreviations used throughout this manual.</p></li> | ||
| 161 | </ul> | ||
| 162 | |||
| 163 | <!-- ═══ 1. INTRODUCTION ═══ --> | ||
| 164 | <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> | ||
| 165 | <p>CENTO is a multifunctional software platform for data collection, processing, and display. It can be used to build various automated systems: dispatching, control, accounting, diagnostics, and more.</p> | ||
| 166 | <p>This guide describes the general steps for setting up CENTO software, as well as links to other relevant instructions.</p> | ||
| 167 | |||
| 168 | <h3 id="s-devices">1.1 Devices, Tags, Channels <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-devices')" 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> | ||
| 169 | <p>Configuration is performed from the <strong>Settings</strong> drop-down menu at the top of the CENTO graphical interface.</p> | ||
| 170 | <div class="fig"> | ||
| 171 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/1762536204394-536.png" alt="Fig. 2.1 – Settings drop-down menu" style="max-width:360px;" onclick="openLightbox(this)"/> | ||
| 172 | <p class="fig-cap">Fig. 2.1 – Settings drop-down menu</p> | ||
| 173 | </div> | ||
| 174 | |||
| 175 | <h4 id="s-devicetree">1.1.1 Creating a Device Tree <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-devicetree')" 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></h4> | ||
| 176 | <p>Configuration begins with creating a tree of devices (information sources). The device tree reflects either the physical structure of the facility or the logical grouping convenient for further work.</p> | ||
| 177 | <p>Go to <strong>Settings → Devices, tags, channels</strong> to configure the structure.</p> | ||
| 178 | <div class="fig"> | ||
| 179 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.07.38.png" alt="Fig. 2.2 – Devices, Tags, Channels Page" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 180 | <p class="fig-cap">Fig. 2.2 – Devices, Tags, Channels Page</p> | ||
| 181 | </div> | ||
| 182 | <p>By default, CENTO has a <em>Root Object</em> preset. Under the root object you can specify the name of a company or a separate facility. To rename a tree element, hover over it and use the edit icon.</p> | ||
| 183 | <div class="fig"> | ||
| 184 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.06.44.png" alt="Fig. 2.3 – Editing an object" style="max-width:480px;" onclick="openLightbox(this)"/> | ||
| 185 | <p class="fig-cap">Fig. 2.3 – Editing an object</p> | ||
| 186 | </div> | ||
| 187 | <div class="note note-warning"> | ||
| 188 | <div class="note-hd"><span>⚠</span> Warning</div> | ||
| 189 | <div class="note-body">There must be no attached devices in a facility object before it can be deleted.</div> | ||
| 190 | </div> | ||
| 191 | <p>The sequence and nesting of objects can be adjusted by dragging objects while holding the left mouse button.</p> | ||
| 192 | <div class="fig"> | ||
| 193 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.05.39.png" alt="Fig. 2.4 – Dragging a New Object Inside the Tree" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 194 | <p class="fig-cap">Fig. 2.4 – Dragging a New Object Inside the Tree</p> | ||
| 195 | </div> | ||
| 196 | <div class="fig"> | ||
| 197 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.05.00.png" alt="Fig. 2.5 – Dragging a New Object Inside the Tree" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 198 | <p class="fig-cap">Fig. 2.5 – Dragging a New Object Inside the Tree</p> | ||
| 199 | </div> | ||
| 200 | <div class="note note-tip"> | ||
| 201 | <div class="note-hd"><span>✔</span> Tip</div> | ||
| 202 | <div class="note-body">Adding and configuring facilities is also possible through Excel files. See Section 2 — Configuring CENTO via Excel.</div> | ||
| 203 | </div> | ||
| 204 | |||
| 205 | <h4 id="s-createdevices">1.1.2 Creating Devices <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-createdevices')" 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></h4> | ||
| 206 | <p>Create or edit devices (information sources) on the <strong>Settings → Devices, tags, channels</strong> page.</p> | ||
| 207 | <div class="fig"> | ||
| 208 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.04.03.png" alt="Fig. 2.6 – Devices Page" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 209 | <p class="fig-cap">Fig. 2.6 – Devices Page</p> | ||
| 210 | </div> | ||
| 211 | <p>On this page you can: add, edit, copy, and delete devices; download or upload device configuration to an Excel file.</p> | ||
| 212 | <p>Click the <strong>Create a device</strong> button to open the device creation form.</p> | ||
| 213 | <div class="fig"> | ||
| 214 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.02.13.png" alt="Fig. 2.7 – Device Creation Page" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 215 | <p class="fig-cap">Fig. 2.7 – Device Creation Page</p> | ||
| 216 | </div> | ||
| 217 | <p>To edit an existing device, click its name on the Devices page.</p> | ||
| 218 | <div class="fig"> | ||
| 219 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.01.08.png" alt="Fig. 2.8 – Device Editing Page" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 220 | <p class="fig-cap">Fig. 2.8 – Device Editing Page</p> | ||
| 221 | </div> | ||
| 222 | <p>The <strong>General settings</strong> block contains fields common to all devices: name, template, identification number, IP address, serial number, associated object, notes, and information model binding.</p> | ||
| 223 | <p>To replace an existing device while preserving metering data, use the <strong>Replace device</strong> function.</p> | ||
| 224 | <div class="fig"> | ||
| 225 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.34.00.png" alt="Fig. 2.9 – Window: Replacement of the metering device" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 226 | <p class="fig-cap">Fig. 2.9 – Window: Replacement of the metering device</p> | ||
| 227 | </div> | ||
| 228 | <p>After filling in the required fields, click <strong>Save</strong>, then apply changes with the <strong>Update Configuration</strong> button.</p> | ||
| 229 | |||
| 230 | <h4 id="s-tagsandchannels">1.1.3 Set Up Tags and Channels <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-tagsandchannels')" 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></h4> | ||
| 231 | <p>Tags and accounting channels are configured on the same <strong>Devices, tags, channels</strong> page. Tags represent individual data points read from devices; channels aggregate tag values for metering purposes.</p> | ||
| 232 | <div class="fig"> | ||
| 233 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.38.04.png" alt="Fig. 2.10 – Tags and Channels Page" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 234 | <p class="fig-cap">Fig. 2.10 – Tags and Channels Page</p> | ||
| 235 | </div> | ||
| 236 | |||
| 237 | <h4 id="s-protocoltag">1.1.3.1 Adding a Protocol Tag <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-protocoltag')" 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></h4> | ||
| 238 | <p>A protocol tag reads a value directly from a device via its communication protocol (Modbus, IEC 60870-5-104, IEC 61850, etc.). To add a protocol tag, select the device in the tree and click <strong>Add tag → Protocol tag</strong>.</p> | ||
| 239 | <div class="fig"> | ||
| 240 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.42.20.png" alt="Fig. 2.11 – Adding a protocol tag" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 241 | <p class="fig-cap">Fig. 2.11 – Adding a protocol tag</p> | ||
| 242 | </div> | ||
| 243 | <div class="fig"> | ||
| 244 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.43.37.png" alt="Fig. 2.12 – Protocol tag parameters" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 245 | <p class="fig-cap">Fig. 2.12 – Protocol tag parameters</p> | ||
| 246 | </div> | ||
| 247 | |||
| 248 | <h4 id="s-calctag">1.1.3.2 Add a Calculation Tag <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-calctag')" 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></h4> | ||
| 249 | <p>A calculation tag derives its value from a formula applied to other tags. Select the device and click <strong>Add tag → Calculation tag</strong>, then define the formula expression.</p> | ||
| 250 | <div class="fig"> | ||
| 251 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.44.12.png" alt="Fig. 2.13 – Calculation tag setup" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 252 | <p class="fig-cap">Fig. 2.13 – Calculation tag setup</p> | ||
| 253 | </div> | ||
| 254 | |||
| 255 | <h4 id="s-calcformulas">1.1.3.3 Setting Up Calculation Formulas <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-calcformulas')" 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></h4> | ||
| 256 | <p>Formulas use standard mathematical and logical operators, and can reference other tags by their code. The formula verification window shows the argument code, current value, and status for debugging.</p> | ||
| 257 | <div class="fig"> | ||
| 258 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.45.47.png" alt="Fig. 2.14 – Formula verification" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 259 | <p class="fig-cap">Fig. 2.14 – Formula verification</p> | ||
| 260 | </div> | ||
| 261 | |||
| 262 | <h4 id="s-calcchannels">1.1.3.4 Configuring Calculation Channels <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-calcchannels')" 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></h4> | ||
| 263 | <p>Calculation channels aggregate tag values over time intervals (hourly, daily, monthly). They are used for metering data analysis and reports. Configure them on the <strong>Metering channels</strong> sub-tab of the Devices page.</p> | ||
| 264 | <div class="fig"> | ||
| 265 | <img src="/xwiki/bin/download/CENTO%20Manuals/Setup%20Guide/WebHome/Screenshot%202025-11-09%20at%2020.47.06.png" alt="Fig. 2.15 – Calculation channel configuration" style="max-width:100%;" onclick="openLightbox(this)"/> | ||
| 266 | <p class="fig-cap">Fig. 2.15 – Calculation channel configuration</p> | ||
| 267 | </div> | ||
| 268 | |||
| 269 | <!-- ═══ 2. EXCEL ═══ --> | ||
| 270 | <h2 id="s-excel">2. Configuring CENTO via Excel <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-excel')" 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> | ||
| 271 | <p>CENTO supports bulk configuration import and export via Excel files. This covers devices, tags, channels, information model objects, and other settings. Use <strong>Settings → Import/Export</strong> to upload or download configuration workbooks.</p> | ||
| 272 | <div class="note note-info"> | ||
| 273 | <div class="note-hd"><span>ℹ</span> Note</div> | ||
| 274 | <div class="note-body">Excel import is the recommended approach for large deployments with many devices. Always validate the Excel template version before importing.</div> | ||
| 275 | </div> | ||
| 276 | |||
| 277 | <!-- ═══ 3. EVENTS ═══ --> | ||
| 278 | <h2 id="s-events">3. Events <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-events')" 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> | ||
| 279 | <p>Events are triggered when tag values cross defined thresholds or match configured conditions. Go to <strong>Settings → Events</strong> to define event rules, priorities, and associated notifications or control actions.</p> | ||
| 280 | <p>See the <strong>Events Setup</strong> manual for detailed configuration steps.</p> | ||
| 281 | |||
| 282 | <!-- ═══ 4. MNEMONICS ═══ --> | ||
| 283 | <h2 id="s-mnemonics">4. Mnemonics <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-mnemonics')" 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> | ||
| 284 | <p>Mnemonic diagrams (SCADA screens) are interactive visual representations of equipment state. They are created and configured in the <strong>Settings → Diagrams</strong> section.</p> | ||
| 285 | <p>See the <strong>Diagrams Development Manual</strong> for detailed instructions.</p> | ||
| 286 | |||
| 287 | <!-- ═══ 5. INFORMATION MODEL ═══ --> | ||
| 288 | <h2 id="s-infomodel">5. Information Model <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-infomodel')" 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> | ||
| 289 | <p>The Information Model defines the hierarchy of facilities, systems, and equipment objects, and links them to devices and tags. Configure it under <strong>Settings → Information Model</strong>.</p> | ||
| 290 | <p>See the <strong>Structure and Modules Description</strong> manual for architecture details.</p> | ||
| 291 | |||
| 292 | <!-- ═══ 6. SYSTEM SETTINGS ═══ --> | ||
| 293 | <h2 id="s-settings">6. System Settings <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-settings')" 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> | ||
| 294 | <p>Global system parameters including user accounts, access rights, server connection settings, and license management are configured under <strong>Settings → System Settings</strong>.</p> | ||
| 295 | |||
| 296 | <!-- ═══ 7. TRANSFER KITS ═══ --> | ||
| 297 | <h2 id="s-transfer">7. Transfer Kits <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-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></h2> | ||
| 298 | <p>Transfer kits (transmission sets) define packages of tag data to be sent from one CENTO server to another via the S2S (Server-to-Server) protocol. Configure under <strong>Settings → Transfer kits</strong>.</p> | ||
| 299 | |||
| 300 | <!-- ═══ 8. LIGHTING CONTROL ═══ --> | ||
| 301 | <h2 id="s-lighting">8. Lighting Control <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-lighting')" 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> | ||
| 302 | <p>Automated lighting control allows switching lighting circuits based on tag states or schedules. Configured via <strong>Settings → Lighting control</strong> using IEC 60870-5-104 remote control commands.</p> | ||
| 303 | <div class="note note-warning"> | ||
| 304 | <div class="note-hd"><span>⚠</span> Warning</div> | ||
| 305 | <div class="note-body">Lighting control requires the appropriate IEC-104 control configuration on the connected device. Confirm correct tag binding before enabling automated switching.</div> | ||
| 306 | </div> | ||
| 307 | |||
| 308 | <!-- ═══ 9. TOOLING ═══ --> | ||
| 309 | <h2 id="s-tooling">9. Tooling <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-tooling')" 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> | ||
| 310 | <p>Tooling utilities provide diagnostic and maintenance capabilities: protocol web logs, VKT-7 device configuration output, and system information panels. Accessible from <strong>Settings → Tooling</strong>.</p> | ||
| 311 | |||
| 312 | <!-- ═══ 10. OTHER SETTINGS ═══ --> | ||
| 313 | <h2 id="s-other">10. Other Settings in Interfaces <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-other')" 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> | ||
| 314 | |||
| 315 | <h3 id="s-rtd-settings">10.1 Analysis of Real-Time Data <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-rtd-settings')" 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> | ||
| 316 | <p>Column visibility, tag display order, chart defaults, and aggregation presets for the real-time data analysis interface can be configured per user in <strong>Analysis → Real-time data → Settings</strong>.</p> | ||
| 317 | |||
| 318 | <h3 id="s-metering-settings">10.2 Analysis of Metering Data <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-metering-settings')" 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> | ||
| 319 | <p>Report period defaults, channel display options, and Excel export format settings are available in <strong>Analysis → Metering data → Settings</strong>.</p> | ||
| 320 | |||
| 321 | <h3 id="s-logs-settings">10.3 Logs <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-logs-settings')" 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> | ||
| 322 | <p>Custom log views — combining specific event types, devices, and filter criteria — are created per user in <strong>Logs → Custom logs</strong>. Column width and sort preferences are saved automatically.</p> | ||
| 323 | |||
| 324 | <!-- ═══ 11. ABBREVIATIONS ═══ --> | ||
| 325 | <h2 id="s-abbrev">11. Basic Concepts and Abbreviations <a class="anchor-icon" href="javascript:void(0)" onclick="copyAnchor('s-abbrev')" 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> | ||
| 326 | <table class="rn-table" style="max-width:560px"> | ||
| 327 | <thead><tr><th style="width:120px">Term</th><th>Definition</th></tr></thead> | ||
| 328 | <tbody> | ||
| 329 | <tr><td><strong>Tag</strong></td><td>A named data point read from a device or computed by a formula.</td></tr> | ||
| 330 | <tr><td><strong>Channel</strong></td><td>A metering channel that aggregates tag values over time intervals.</td></tr> | ||
| 331 | <tr><td><strong>Device</strong></td><td>A physical or virtual information source connected to CENTO via a protocol.</td></tr> | ||
| 332 | <tr><td><strong>IM</strong></td><td>Information Model — the hierarchy of facility objects linked to devices and tags.</td></tr> | ||
| 333 | <tr><td><strong>S2S</strong></td><td>Server-to-Server — data exchange protocol between CENTO instances.</td></tr> | ||
| 334 | <tr><td><strong>RMB</strong></td><td>Right Mouse Button — used for context menus throughout the interface.</td></tr> | ||
| 335 | <tr><td><strong>IEC 104</strong></td><td>IEC 60870-5-104 — communication protocol for remote terminal units.</td></tr> | ||
| 336 | <tr><td><strong>Modbus</strong></td><td>Standard serial communication protocol for connecting devices.</td></tr> | ||
| 337 | </tbody> | ||
| 338 | </table> | ||
| 339 | |||
| 340 | <div class="parent-topic">Parent topic: <a href="[[CENTO Manuals>>doc:CENTO Manuals.WebHome]]">CENTO Manuals</a></div> | ||
| 341 | |||
| 342 | </div><!-- /doc-content --> | ||
| 343 | |||
| 344 | <!-- ── RIGHT TOC ── --> | ||
| 345 | <nav class="doc-toc"> | ||
| 346 | <div class="toc-header"> | ||
| 347 | <strong>On This Page</strong> | ||
| 348 | <button class="toc-toggle" id="toc-tog" title="Collapse">«</button> | ||
| 349 | </div> | ||
| 350 | <ul id="toc-list"> | ||
| 351 | <li class="tl1"><a href="#s-intro" data-toc>1. Introduction</a></li> | ||
| 352 | <li class="tl2"><a href="#s-devices" data-toc>1.1 Devices, Tags, Channels</a></li> | ||
| 353 | <li class="tl3"><a href="#s-devicetree" data-toc>1.1.1 Device tree</a></li> | ||
| 354 | <li class="tl3"><a href="#s-createdevices" data-toc>1.1.2 Creating devices</a></li> | ||
| 355 | <li class="tl3"><a href="#s-tagsandchannels" data-toc>1.1.3 Tags and channels</a></li> | ||
| 356 | <li class="tl3"><a href="#s-protocoltag" data-toc>1.1.3.1 Protocol tag</a></li> | ||
| 357 | <li class="tl3"><a href="#s-calctag" data-toc>1.1.3.2 Calculation tag</a></li> | ||
| 358 | <li class="tl3"><a href="#s-calcformulas" data-toc>1.1.3.3 Formulas</a></li> | ||
| 359 | <li class="tl3"><a href="#s-calcchannels" data-toc>1.1.3.4 Calc. channels</a></li> | ||
| 360 | <li class="tl1"><a href="#s-excel" data-toc>2. Configuring via Excel</a></li> | ||
| 361 | <li class="tl1"><a href="#s-events" data-toc>3. Events</a></li> | ||
| 362 | <li class="tl1"><a href="#s-mnemonics" data-toc>4. Mnemonics</a></li> | ||
| 363 | <li class="tl1"><a href="#s-infomodel" data-toc>5. Information Model</a></li> | ||
| 364 | <li class="tl1"><a href="#s-settings" data-toc>6. System Settings</a></li> | ||
| 365 | <li class="tl1"><a href="#s-transfer" data-toc>7. Transfer Kits</a></li> | ||
| 366 | <li class="tl1"><a href="#s-lighting" data-toc>8. Lighting Control</a></li> | ||
| 367 | <li class="tl1"><a href="#s-tooling" data-toc>9. Tooling</a></li> | ||
| 368 | <li class="tl1"><a href="#s-other" data-toc>10. Other Settings</a></li> | ||
| 369 | <li class="tl2"><a href="#s-rtd-settings" data-toc>10.1 Real-time data</a></li> | ||
| 370 | <li class="tl2"><a href="#s-metering-settings" data-toc>10.2 Metering data</a></li> | ||
| 371 | <li class="tl2"><a href="#s-logs-settings" data-toc>10.3 Logs</a></li> | ||
| 372 | <li class="tl1"><a href="#s-abbrev" data-toc>11. Abbreviations</a></li> | ||
| 373 | </ul> | ||
| 374 | </nav> | ||
| 375 | |||
| 376 | </div><!-- /doc-wrap --> | ||
| 377 | <script> | ||
| 378 | |||
| 379 | (function(){ | ||
| 380 | var bar = document.getElementById('rn-prog'); | ||
| 381 | var top = document.getElementById('rn-top'); | ||
| 382 | window.addEventListener('scroll', function(){ | ||
| 383 | var d = document.documentElement; | ||
| 384 | var pct = d.scrollTop / (d.scrollHeight - d.clientHeight); | ||
| 385 | bar.style.width = (pct*100)+'%'; | ||
| 386 | d.scrollTop > 280 ? top.classList.add('on') : top.classList.remove('on'); | ||
| 387 | }, {passive:true}); | ||
| 388 | |||
| 389 | /* TOC active via IntersectionObserver */ | ||
| 390 | var links = Array.from(document.querySelectorAll('[data-toc]')); | ||
| 391 | var secs = links.map(function(a){ | ||
| 392 | return {el: document.getElementById(a.getAttribute('href').slice(1)), a:a}; | ||
| 393 | }).filter(function(s){return s.el;}); | ||
| 394 | |||
| 395 | var busy = false; | ||
| 396 | var obs = new IntersectionObserver(function(entries){ | ||
| 397 | if (busy) return; | ||
| 398 | entries.forEach(function(e){ | ||
| 399 | if (!e.isIntersecting) return; | ||
| 400 | var i = secs.findIndex(function(s){return s.el===e.target;}); | ||
| 401 | if (i<0) return; | ||
| 402 | secs.forEach(function(s){s.a.classList.remove('toc-on');}); | ||
| 403 | secs[i].a.classList.add('toc-on'); | ||
| 404 | var toc = document.querySelector('.doc-toc'); | ||
| 405 | var link = secs[i].a; | ||
| 406 | toc.scrollTop = link.offsetTop - toc.offsetTop - toc.clientHeight/2 + link.clientHeight/2; | ||
| 407 | }); | ||
| 408 | }, {rootMargin:'-8% 0px -60% 0px', threshold:0}); | ||
| 409 | secs.forEach(function(s){obs.observe(s.el);}); | ||
| 410 | |||
| 411 | links.forEach(function(a){ | ||
| 412 | a.addEventListener('click', function(e){ | ||
| 413 | var id = a.getAttribute('href').slice(1); | ||
| 414 | var el = document.getElementById(id); | ||
| 415 | if (!el) return; | ||
| 416 | e.preventDefault(); | ||
| 417 | busy = true; | ||
| 418 | secs.forEach(function(s){s.a.classList.remove('toc-on');}); | ||
| 419 | a.classList.add('toc-on'); | ||
| 420 | el.scrollIntoView({behavior:'smooth',block:'start'}); | ||
| 421 | setTimeout(function(){busy=false;}, 900); | ||
| 422 | }); | ||
| 423 | }); | ||
| 424 | |||
| 425 | /* TOC collapse */ | ||
| 426 | var tocList = document.getElementById('toc-list'); | ||
| 427 | var togBtn = document.getElementById('toc-tog'); | ||
| 428 | var collapsed = false; | ||
| 429 | togBtn && togBtn.addEventListener('click', function(){ | ||
| 430 | collapsed = !collapsed; | ||
| 431 | tocList.style.display = collapsed ? 'none' : ''; | ||
| 432 | togBtn.textContent = collapsed ? '»' : '«'; | ||
| 433 | }); | ||
| 434 | |||
| 435 | /* Lightbox */ | ||
| 436 | var lb = document.getElementById('rn-lb'); | ||
| 437 | var lbI = document.getElementById('rn-lb-img'); | ||
| 438 | var lbC = document.getElementById('rn-lb-cap'); | ||
| 439 | window.openLightbox = function(img){ | ||
| 440 | lbI.src = img.src; lbI.alt = img.alt; lbC.textContent = img.alt; | ||
| 441 | lb.classList.add('open'); document.body.style.overflow='hidden'; | ||
| 442 | }; | ||
| 443 | window.closeLightbox = function(){ | ||
| 444 | lb.classList.remove('open'); document.body.style.overflow=''; | ||
| 445 | }; | ||
| 446 | lb.addEventListener('click', function(e){if(e.target===lb)closeLightbox();}); | ||
| 447 | document.addEventListener('keydown', function(e){if(e.key==='Escape')closeLightbox();}); | ||
| 448 | |||
| 449 | /* Copy anchor */ | ||
| 450 | var toast = document.getElementById('rn-toast'); | ||
| 451 | var t; | ||
| 452 | window.copyAnchor = function(id){ | ||
| 453 | var url = location.href.split('#')[0]+'#'+id; | ||
| 454 | if(navigator.clipboard) navigator.clipboard.writeText(url).catch(function(){}); | ||
| 455 | else { var x=document.createElement('textarea');x.value=url;document.body.appendChild(x);x.select();document.execCommand('copy');document.body.removeChild(x); } | ||
| 456 | toast.classList.add('on'); | ||
| 457 | clearTimeout(t); | ||
| 458 | t = setTimeout(function(){toast.classList.remove('on');}, 1600); | ||
| 459 | }; | ||
| 460 | |||
| 461 | /* ── Sticky TOC via JS ── | ||
| 462 | Uses position:absolute→fixed switch. No placeholder needed because | ||
| 463 | .doc-content has a fixed margin-right — content width never changes. */ | ||
| 464 | (function(){ | ||
| 465 | var toc = document.querySelector('.doc-toc'); | ||
| 466 | var wrap = document.querySelector('.doc-wrap'); | ||
| 467 | if (!toc || !wrap) return; | ||
| 468 | |||
| 469 | var navbar = document.querySelector('.navbar, nav.navbar, #topBar, header'); | ||
| 470 | var navH = navbar ? navbar.offsetHeight : 0; | ||
| 471 | var footer = document.querySelector('footer, .xwikifooter, #xwikifooter, .bottombar, .sticky-container'); | ||
| 472 | |||
| 473 | function update() { | ||
| 474 | var wr = wrap.getBoundingClientRect(); | ||
| 475 | |||
| 476 | if (wr.top <= navH) { | ||
| 477 | /* Doc-wrap has scrolled above navbar — fix the TOC */ | ||
| 478 | var footerTop = footer ? footer.getBoundingClientRect().top : window.innerHeight; | ||
| 479 | var h = Math.max(0, Math.min(window.innerHeight, footerTop) - navH); | ||
| 480 | |||
| 481 | toc.classList.add('is-fixed'); | ||
| 482 | toc.style.top = navH + 'px'; | ||
| 483 | toc.style.left = (wr.right - 200) + 'px'; /* right edge of wrap minus TOC width */ | ||
| 484 | toc.style.height = h + 'px'; | ||
| 485 | } else { | ||
| 486 | /* Still in natural position */ | ||
| 487 | toc.classList.remove('is-fixed'); | ||
| 488 | toc.style.top = toc.style.left = toc.style.height = ''; | ||
| 489 | } | ||
| 490 | } | ||
| 491 | |||
| 492 | requestAnimationFrame(function(){ requestAnimationFrame(function(){ | ||
| 493 | update(); | ||
| 494 | window.addEventListener('scroll', update, {passive:true}); | ||
| 495 | window.addEventListener('resize', update, {passive:true}); | ||
| 496 | }); }); | ||
| 497 | })(); | ||
| 498 | |||
| 499 | /* ── Left panel navigation hints ── */ | ||
| 500 | (function(){ | ||
| 501 | var hints = { | ||
| 502 | 'Preface': 'Introduction to CENTO Software documentation', | ||
| 503 | '1. User Manual': 'Web interface guide — login, diagrams, analysis, logs, reports', | ||
| 504 | '2. Setup Manual': 'System configuration and setup for administrators', | ||
| 505 | '3. Metering Channels': 'Metering channel configuration and data collection setup', | ||
| 506 | '4. Structure and Modules Description': 'CENTO system architecture and module overview', | ||
| 507 | '5. Diagrams Development Manual': 'Creating and configuring SCADA mimic diagrams', | ||
| 508 | '6. Flexible Reports Guide': 'Building configurable tabular reports from metering data', | ||
| 509 | '7. Events Setup': 'Configuring event rules, thresholds, and notifications', | ||
| 510 | '8. Control Setup Manual': 'Setting up remote control and switching operations', | ||
| 511 | 'Network Diagram (CLOUD)': 'CENTO deployment topology for cloud installations', | ||
| 512 | 'Network Diagram (On-Prem)': 'CENTO deployment topology for on-premises installations', | ||
| 513 | 'Server Configuration Example': 'Reference server setup and configuration example', | ||
| 514 | 'Technical Requirements': 'Hardware and software requirements for CENTO deployment', | ||
| 515 | 'DEMO server': 'Access the live CENTO demo environment', | ||
| 516 | 'Release Notes': 'Changelog and version history for the CENTO platform', | ||
| 517 | }; | ||
| 518 | document.querySelectorAll('#leftPanels a').forEach(function(a){ | ||
| 519 | var text = a.textContent.trim(); | ||
| 520 | var hint = hints[text] || hints[text.replace(/^\d+\.\s*/, '')]; | ||
| 521 | if (hint) a.setAttribute('data-hint', hint); | ||
| 522 | }); | ||
| 523 | })(); | ||
| 524 | })(); | ||
| 525 | |||
| 526 | </script> | ||
| 527 | {{/html}} |