Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
secs_sparkplug_b_integration_guide [2025/05/06 17:39] amyw old revision restored (2025/05/06 17:06) |
secs_sparkplug_b_integration_guide [2025/05/06 18:35] (current) wikiadmin |
||
---|---|---|---|
Line 23: | Line 23: | ||
===== Project Summary ===== | ===== Project Summary ===== | ||
- | TransSECS bridges | + | TransSECS bridges SECS/GEM automation with modern Sparkplug B IIoT ecosystems. |
By treating a GEM host as a Sparkplug node and every GEM interaction (messages, traces, polls, reports) as separate devices, the project delivers: | By treating a GEM host as a Sparkplug node and every GEM interaction (messages, traces, polls, reports) as separate devices, the project delivers: | ||
Line 88: | Line 88: | ||
===== Good Host Commands ===== | ===== Good Host Commands ===== | ||
- | Flow – the host sends PP-SELECT (DCMD/ | + | Flow – the host sends PP-SELECT (DCMD/ |
| | ||
- | * The driver immediately publishes a "DDATA/ | + | * The driver immediately publishes a '' |
* | * | ||
- | * The tool’s S2F42 is translated to "DDATA/ | + | * The tool’s S2F42 is translated to '' |
- | | + | |
- | Best-practice – SCADA / MES clients should subscribe to "…HostCommandReply" | + | <note tip>SCADA / MES clients should subscribe to '' |
{{puml_002.png? | {{puml_002.png? | ||
Line 104: | Line 104: | ||
===== Bad Host Commands ===== | ===== Bad Host Commands ===== | ||
- | Scenario – the host issues PP-SELECT with an invalid PPID; the tool rejects it with "HCACK 3" | + | Scenario – the host issues PP-SELECT with an invalid PPID; the tool rejects it with '' |
- | ReasonList structure – an array of tuples | + | ReasonList structure – an array of tuples |
- | * In this example → "PPID, 1" | + | * In this example → '' |
- | Error detection – any non-zero | + | Error detection – any non-zero |
- | Client hint – log "ReasonList_*" | + | <note tip>log '' |
| | ||
{{puml_003.png? | {{puml_003.png? | ||
Line 118: | Line 118: | ||
===== Triggering COMPLETED Event ===== | ===== Triggering COMPLETED Event ===== | ||
- | | + | Event 7502 (COMPLETED) – the tool raises S6F11 with '' |
- | | + | TransSECS actions |
- | | + | * Updates '' |
- | | + | * Publishes '' |
- | | + | * Sends S2F23/S2F24 to terminate any active trace whose end-event is “COMPLETED” (here: '' |
- | | + | Why two COMPLETED bursts? – the example shows two sequential lots finishing quickly; both follow the identical publish path, proving that templates survive across lot boundaries without requiring a new DBIRTH. |
| | ||
{{puml_004.png? | {{puml_004.png? | ||
Line 134: | Line 134: | ||
===== STARTED Event → Polling Initiation ===== | ===== STARTED Event → Polling Initiation ===== | ||
- | | + | Event 7501 (STARTED) – triggers both a ”DataReport” (ID 101) and a ”LotEndReport” snapshot. |
- | | + | * Key process parameters ('' |
- | | + | Poll activation – on STARTED, TransSECS enables the S1F3 poll group '' |
- | | + | |
- | | + | * Over SECS: S1F3 W / S1F4 reply. |
+ | * Over Sparkplug: | ||
+ | * '' | ||
+ | * '' | ||
- | Over Sparkplug: | + | Continuation – polling repeats until the next COMPLETED event; note the broker-side comments (“Polling Continues…”, |
- | '' | + | Trace shutdown – when COMPLETED fires, TransSECS also issues S2F23/S2F24 to end the 1 s '' |
- | + | ||
- | '' | + | |
- | + | ||
- | Continuation – polling repeats until the next COMPLETED event; note the broker-side comments (“Polling Continues…”, | + | |
- | + | ||
- | | + | |
{{puml_005.png? | {{puml_005.png? |