...
HTML |
---|
<div> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11001000 520" width="900100%" height="520" style="font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, 'Liberation Mono', monospace; font-size:14px; display:block; margin:0 auto;"> <defs> <marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="10" markerHeight="10" orient="auto-start-reverse"> <path d="M 0 0 L 10 5 L 0 10 z" fill="#333"/> </marker> </defs> <!-- Title row --> <text x="300350" y="4030">[ DataHub (TapProvider) / UI ]</text> <!-- DownVertical to splitline --> <line x1="550500" y1="5540" x2="550500" y2="10080" stroke="#333"/> <!-- Horizontal split bar --> <line x1="160100" y1="10080" x2="940900" y2="10080" stroke="#333"/> <!-- Left branch: Historian --> <line x1="260220" y1="10080" x2="260220" y2="150130" stroke="#333"/> <text x="280240" y="130" fill="#333110">reads historical + alarms</text> <!-- Right branch: Edge Sites --> <line x1="840780" y1="10080" x2="840780" y2="150130" stroke="#333"/> <text x="660600" y="130" fill="#333"110">reads live device values</text> <!-- Left box: Postgres + TimescaleDB --> <rect x="12060" y="150130" width="380320" height="130110" rx="10" ry="10" fill="#f9f9f9" stroke="#333"/> <text x="14080" y="175155">[ Postgres + TimescaleDB ]</text> <text x="14080" y="205180">Historian + Alarms</text> <!-- Right box: Edge Sites --> <rect x="600520" y="150130" width="380400" height="210180" rx="10" ry="10" fill="#f9f9f9" stroke="#333"/> <text x="620540" y="175155">[ Edge Sites ×5 ]</text> <text x="620540" y="205180">FrameworX EdgeConnect</text> <text x="640560" y="230205">• Collects Modbus (read)</text> <text x="640560" y="255230">• Publishes to DNP3 (write)</text> <text x="640560" y="280255">• Exposes device values (read)</text> <text x="640560" y="305280">• Sends timeseries/alarms ? Historian</text> <!-- Arrow from Edge Sites to Historian --> <line x1="600520" y1="265220" x2="500380" y2="265220" stroke="#333" marker-end="url(#arrow)"/> <!-- Optional caption at bottom --> <text x="550" y="480" text-anchor="middle" fill="#666">Integrated real production data from MES, Historian, and ERP for SKU-level costing</text> </svg> </div> |
Integrated real production data from MES, historian, and ERP with costing models to determine actual cost per SKU. Data included:
...