PLC_Generation/logs/workflow_MTN6_MCM05_20250901_141844.log
2025-09-02 11:13:29 +04:00

1581 lines
197 KiB
Plaintext

{"level": "INFO", "message": "PLC Generation Workflow started", "timestamp": "2025-09-01T14:18:44.049926", "module": "__main__", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "excel_file": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/PLC Data Generator/data/MTN6_MCM05.xlsx", "project_name": "MTN6_MCM05"}
{"level": "INFO", "message": "Starting data processing step", "timestamp": "2025-09-01T14:18:44.050539", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
=== Step 1: PLC Data Generator stdout ===
Loading IO path mappings...
Loaded IO path mappings:
APF: 11 rows
M12DR: 16 rows
Hub: 16 rows
SorterHub: 16 rows
SIO: 16 rows
IB16: 16 rows
OB16E: 16 rows
IB16S: 16 rows
Available sheets: ['Templates', 'Devices', 'Instructions', 'IO Assignment MCM05', 'NETWORK', 'Part Number', 'MCM05_DESC', 'DESC_PLC', 'NETWORK_PLC']
Found DESC sheet: DESC_PLC
Found NETWORK sheet: NETWORK_PLC
DESC columns: ['TAGNAME', 'TERM', 'DESCA', 'DESCB', 'Unnamed: 4']
NETWORK columns: ['DPM', 'DPM_IP', 'Name', 'PartNumber', 'IP']
Classifying signals and adding IO paths...
Signal classification results:
SPARE: 905
I: 685
O: 382
IOLink: 184
Device type distribution:
M12DR: 912
Hub: 880
APF: 300
SIO: 16
IB16: 16
OB16E: 16
IB16S: 16
IO Path mapping results:
Successful mappings: 2144/2156 (99.4%)
Found 12 entries with missing IO path mappings.
Found 3 TAGNAMEs present in DESC but not in NETWORK_PLC.
Adding unique DPM names not present in DESC or NETWORK_PLC.Name: ['FL2086_DPM1', 'FL4070_DPM1', 'PRS1_3_DPM1', 'PS8_5_DPM1', 'VSB_DPM1', 'VSB_DPM2', 'VSB_DPM3', 'VSD_DPM1', 'VSD_DPM2', 'VSD_DPM3']
================================================================================
WARNING: The following issues were found but processing will continue:
================================================================================
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'I' to channel number 'IO4'. (DESCA: 'PS8_4_EPC3')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'I' to channel number 'IO5'. (DESCA: 'PS8_4_EPC3_2')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'I' to channel number 'IO6'. (DESCA: 'PS8_4_EPC4')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'I' to channel number 'IO7'. (DESCA: 'PS8_4_EPC4_2')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'O' to channel number 'IO8'. (DESCA: 'PS8_4_VFD1_STO')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'SPARE' to channel number 'IO9'. (DESCA: 'SPARE')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'O' to channel number 'IO10'. (DESCA: 'PS8_5_VFD1_STO')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'SPARE' to channel number 'IO11'. (DESCA: 'SPARE')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'I' to channel number 'IO12'. (DESCA: 'PS8_4_FIOH1')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'SPARE' to channel number 'IO13'. (DESCA: 'SPARE')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'SPARE' to channel number 'IO14'. (DESCA: 'SPARE')
- On device 'PS8_4_SIO1' (SIO), cannot connect signal 'SPARE' to channel number 'IO15'. (DESCA: 'SPARE')
- TAGNAME 'SLOT5_IB16' from DESC sheet not found in NETWORK_PLC sheet.
- TAGNAME 'SLOT6_OB16E' from DESC sheet not found in NETWORK_PLC sheet.
- TAGNAME 'SLOT7_IB16S' from DESC sheet not found in NETWORK_PLC sheet.
================================================================================
Continuing with processing...
Normalizing TAGNAME, DESC, and IO_PATH columns for VFDs only in the final output...
Final result has 2252 rows
Sample of merged data:
TAGNAME TERM ... DEVICE_TYPE IO_PATH
0 PS8_4_SIO1 IO0 ... SIO PS8_4_SIO1_Data.Inputs.X7_A
1 PS8_4_SIO1 IO1 ... SIO PS8_4_SIO1_Data.Inputs.X7_B
2 PS8_4_SIO1 IO10 ... SIO None
3 PS8_4_SIO1 IO11 ... SIO None
4 PS8_4_SIO1 IO12 ... SIO None
5 PS8_4_SIO1 IO13 ... SIO None
6 PS8_4_SIO1 IO14 ... SIO None
7 PS8_4_SIO1 IO15 ... SIO None
8 PS8_4_SIO1 IO2 ... SIO PS8_4_SIO1_Data.Inputs.X8_A
9 PS8_4_SIO1 IO3 ... SIO PS8_4_SIO1_Data.Inputs.X8_B
[10 rows x 12 columns]
New Excel file created: MTN6_MCM05_DESC_IP_MERGED.xlsx
The file contains all original sheets plus the new 'DESC_IP' sheet with merged data.
DEBUG: Processing Excel file: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/PLC Data Generator/data/MTN6_MCM05.xlsx
DEBUG: Full project pattern matched: MTN6_MCM05
DEBUG: Final subsystem name: MTN6_MCM05
Reading input file: MTN6_MCM05_DESC_IP_MERGED.xlsx
Removed 184 IOLink rows (including beacons, FIOH channels, and all other IOLink entries)
Added 313 rows for beacon lights
Removed 96 blank name/description rows
Saving output file: MTN6_MCM05_OUTPUT.csv
Processing complete!
Created standard output file: DESC_IP_MERGED.xlsx
=== Step 1: PLC Data Generator stderr ===
=== Step 1 File Copy ===
Copied MTN6_MCM05_DESC_IP_MERGED.xlsx to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/DESC_IP_MERGED.xlsx
{"level": "INFO", "message": "Data processing completed successfully", "timestamp": "2025-09-01T14:18:47.941360", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Starting routine generation step", "timestamp": "2025-09-01T14:18:47.941584", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Logging to file: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/logs/workflow_MTN6_MCM05_20250901_141844.log", "timestamp": "2025-09-01T14:18:49.601814", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "=== Generating All PLC Artifacts ===", "timestamp": "2025-09-01T14:18:49.603568", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Generating SafetyProgram L5X...", "timestamp": "2025-09-01T14:18:49.603745", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "WARNING", "message": "LimitedSafetyProgramGenerator is deprecated; using ModernSafetyProgramGenerator", "timestamp": "2025-09-01T14:18:49.612649", "module": "src.container", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Starting ModernSafetyProgramGenerator generation", "timestamp": "2025-09-01T14:18:49.612847", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Creating SafetyProgram XML structure", "timestamp": "2025-09-01T14:18:49.612979", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Registered plugin: main_routine (core)", "timestamp": "2025-09-01T14:18:49.622284", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: apf (device)", "timestamp": "2025-09-01T14:18:49.626799", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: belt_tracking (device)", "timestamp": "2025-09-01T14:18:49.629904", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: cb_monitor (device)", "timestamp": "2025-09-01T14:18:49.633039", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: d2c_chute (device)", "timestamp": "2025-09-01T14:18:49.636328", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: dpm (device)", "timestamp": "2025-09-01T14:18:49.639311", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: encoder (device)", "timestamp": "2025-09-01T14:18:49.642473", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: estops (safety)", "timestamp": "2025-09-01T14:18:49.649275", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: estop_check (safety)", "timestamp": "2025-09-01T14:18:49.652285", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: extendo (device)", "timestamp": "2025-09-01T14:18:49.655324", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: fioh (device)", "timestamp": "2025-09-01T14:18:49.658558", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: fiom (device)", "timestamp": "2025-09-01T14:18:49.661397", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: flow_ctrl (device)", "timestamp": "2025-09-01T14:18:49.665341", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: fpe (device)", "timestamp": "2025-09-01T14:18:49.668425", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: inputs (safety)", "timestamp": "2025-09-01T14:18:49.671482", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: jpe (device)", "timestamp": "2025-09-01T14:18:49.674689", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: mcm (core)", "timestamp": "2025-09-01T14:18:49.678081", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: outputs (safety)", "timestamp": "2025-09-01T14:18:49.682262", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: pb_chute (device)", "timestamp": "2025-09-01T14:18:49.686497", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: pmm (device)", "timestamp": "2025-09-01T14:18:49.690267", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: rack (core)", "timestamp": "2025-09-01T14:18:49.693662", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: resets (safety)", "timestamp": "2025-09-01T14:18:49.697292", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: safety_tag_map (core)", "timestamp": "2025-09-01T14:18:49.701310", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: speed_ctrl (device)", "timestamp": "2025-09-01T14:18:49.704504", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: station_epc (safety)", "timestamp": "2025-09-01T14:18:49.707932", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: station_jr_chute (device)", "timestamp": "2025-09-01T14:18:49.711245", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: station_jr_pb (device)", "timestamp": "2025-09-01T14:18:49.714189", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: station_ss_pb (device)", "timestamp": "2025-09-01T14:18:49.717579", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: station_s_pb (device)", "timestamp": "2025-09-01T14:18:49.720546", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: taching_belts (device)", "timestamp": "2025-09-01T14:18:49.723630", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "DEBUG", "message": "Registered plugin: zones (safety)", "timestamp": "2025-09-01T14:18:49.727690", "module": "src.plugin_system", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "plugin_discovery"}
{"level": "INFO", "message": "Generating safety routines...", "timestamp": "2025-09-01T14:18:49.727891", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: inputs", "timestamp": "2025-09-01T14:18:50.567525", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: inputs", "timestamp": "2025-09-01T14:18:50.580079", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: outputs", "timestamp": "2025-09-01T14:18:50.584062", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zones: subsystem key", "timestamp": "2025-09-01T14:18:50.585532", "module": "src.data_loader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "subsystem": "DEFAULT", "found": false}
{"level": "DEBUG", "message": "Zones: heuristic best match", "timestamp": "2025-09-01T14:18:50.673497", "module": "src.data_loader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "best_key": "MCM05", "score": 12}
{"level": "DEBUG", "message": "Zones: loaded", "timestamp": "2025-09-01T14:18:50.674079", "module": "src.data_loader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "rows": 6}
{"level": "INFO", "message": "Successfully generated routine: outputs", "timestamp": "2025-09-01T14:18:50.675546", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: resets", "timestamp": "2025-09-01T14:18:50.675840", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: resets", "timestamp": "2025-09-01T14:18:50.682324", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: zones", "timestamp": "2025-09-01T14:18:50.682573", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL2074_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.684144", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL2078_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.684496", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL2086_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.684823", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL2090_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.685117", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL2094_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.685423", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL4066_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.685708", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL4070_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.685951", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL4074_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.686200", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL4078_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.686443", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for FL4082_1: {'ESTOP1'}", "timestamp": "2025-09-01T14:18:50.686650", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PRS1_6: {'EPC1', 'EPC2'}", "timestamp": "2025-09-01T14:18:50.687004", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PRS2_1: {'EPC1', 'EPC2'}", "timestamp": "2025-09-01T14:18:50.687359", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PS8_11: {'EPC1'}", "timestamp": "2025-09-01T14:18:50.687677", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PS8_1: {'EPC1'}", "timestamp": "2025-09-01T14:18:50.687997", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PS8_2: {'EPC1', 'EPC2'}", "timestamp": "2025-09-01T14:18:50.688403", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PS8_5: {'EPC1', 'EPC2'}", "timestamp": "2025-09-01T14:18:50.688770", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PS9_2: {'EPC1', 'EPC2'}", "timestamp": "2025-09-01T14:18:50.689283", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for PS9_3: {'EPC1'}", "timestamp": "2025-09-01T14:18:50.689656", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for ULC1_3: {'EPC1', 'EPC2'}", "timestamp": "2025-09-01T14:18:50.690044", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for ULC2_3: {'EPC1'}", "timestamp": "2025-09-01T14:18:50.690409", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for ULC3_3: {'EPC1'}", "timestamp": "2025-09-01T14:18:50.690757", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Found DCS controllers for ULC4_3: {'EPC1'}", "timestamp": "2025-09-01T14:18:50.691102", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Available DCS controllers: {'FL2074_1': {'ESTOP1'}, 'FL2078_1': {'ESTOP1'}, 'FL2086_1': {'ESTOP1'}, 'FL2090_1': {'ESTOP1'}, 'FL2094_1': {'ESTOP1'}, 'FL4066_1': {'ESTOP1'}, 'FL4070_1': {'ESTOP1'}, 'FL4074_1': {'ESTOP1'}, 'FL4078_1': {'ESTOP1'}, 'FL4082_1': {'ESTOP1'}, 'PRS1_6': {'EPC1', 'EPC2'}, 'PRS2_1': {'EPC1', 'EPC2'}, 'PS8_11': {'EPC1'}, 'PS8_1': {'EPC1'}, 'PS8_2': {'EPC1', 'EPC2'}, 'PS8_5': {'EPC1', 'EPC2'}, 'PS9_2': {'EPC1', 'EPC2'}, 'PS9_3': {'EPC1'}, 'ULC1_3': {'EPC1', 'EPC2'}, 'ULC2_3': {'EPC1'}, 'ULC3_3': {'EPC1'}, 'ULC4_3': {'EPC1'}}", "timestamp": "2025-09-01T14:18:50.691271", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zone 05-01 candidates: ['ULC1_1', 'ULC1_2', 'ULC1_3', 'ULC2_1', 'ULC2_2', 'ULC2_3', 'UL3_1', 'UL3_2', 'UL3_3', 'UL4_1', 'UL4_2', 'UL4_3', 'PS8_1', 'PS8_2', 'PRS2_1']", "timestamp": "2025-09-01T14:18:50.691747", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base UL3_1 in zone 05-01", "timestamp": "2025-09-01T14:18:50.691938", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base UL3_2 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692092", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base UL3_3 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692226", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base UL4_1 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692355", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base UL4_2 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692493", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base UL4_3 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692631", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base ULC1_1 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692749", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base ULC1_2 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692869", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base ULC2_1 in zone 05-01", "timestamp": "2025-09-01T14:18:50.692991", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base ULC2_2 in zone 05-01", "timestamp": "2025-09-01T14:18:50.693106", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zones: rung", "timestamp": "2025-09-01T14:18:50.693228", "module": "src.routines.zones", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "zone": "05-01", "interlock": "MCM05", "dcs_list": ["PRS2_1_EPC1_DCS_CTRL.O1", "PRS2_1_EPC2_DCS_CTRL.O1", "PS8_1_EPC1_DCS_CTRL.O1", "PS8_2_EPC1_DCS_CTRL.O1", "PS8_2_EPC2_DCS_CTRL.O1", "ULC1_3_EPC1_DCS_CTRL.O1", "ULC1_3_EPC2_DCS_CTRL.O1", "ULC2_3_EPC1_DCS_CTRL.O1"]}
{"level": "DEBUG", "message": "Zone 05-02 candidates: ['PS8_4', 'PS8_5']", "timestamp": "2025-09-01T14:18:50.693558", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base PS8_4 in zone 05-02", "timestamp": "2025-09-01T14:18:50.693727", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zones: rung", "timestamp": "2025-09-01T14:18:50.693867", "module": "src.routines.zones", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "zone": "05-02", "interlock": "MCM05", "dcs_list": ["PS8_5_EPC1_DCS_CTRL.O1", "PS8_5_EPC2_DCS_CTRL.O1"]}
{"level": "DEBUG", "message": "Zone 05-03 candidates: ['PS9_2', 'PS9_3']", "timestamp": "2025-09-01T14:18:50.694170", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zones: rung", "timestamp": "2025-09-01T14:18:50.694346", "module": "src.routines.zones", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "zone": "05-03", "interlock": "MCM05", "dcs_list": ["PS9_2_EPC1_DCS_CTRL.O1", "PS9_2_EPC2_DCS_CTRL.O1", "PS9_3_EPC1_DCS_CTRL.O1"]}
{"level": "DEBUG", "message": "Zone 05-04 candidates: ['PS8_11']", "timestamp": "2025-09-01T14:18:50.694694", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zones: rung", "timestamp": "2025-09-01T14:18:50.694921", "module": "src.routines.zones", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "zone": "05-04", "interlock": "MCM05", "dcs_list": ["PS8_11_EPC1_DCS_CTRL.O1"]}
{"level": "DEBUG", "message": "Zone 05-05 candidates: ['PRS1_6', 'PRS1_7']", "timestamp": "2025-09-01T14:18:50.695281", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "No DCS controllers found for base PRS1_7 in zone 05-05", "timestamp": "2025-09-01T14:18:50.695494", "module": "src.routines.zones", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zones: rung", "timestamp": "2025-09-01T14:18:50.695683", "module": "src.routines.zones", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "zone": "05-05", "interlock": "MCM05", "dcs_list": ["PRS1_6_EPC1_DCS_CTRL.O1", "PRS1_6_EPC2_DCS_CTRL.O1"]}
{"level": "INFO", "message": "Successfully generated routine: zones", "timestamp": "2025-09-01T14:18:50.695886", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: estops", "timestamp": "2025-09-01T14:18:50.696075", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: estops", "timestamp": "2025-09-01T14:18:50.702567", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Safety routine generation results: {'inputs': True, 'outputs': True, 'resets': True, 'zones': True, 'estops': True}", "timestamp": "2025-09-01T14:18:50.702883", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag map with 29 tags", "timestamp": "2025-09-01T14:18:50.706913", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Routines created (6): MainRoutine, R010_INPUTS, R011_OUTPUTS, R012_RESETS, R020_ESTOPS, R030_ZONES", "timestamp": "2025-09-01T14:18:50.707093", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R010_INPUTS: 65 rungs | example: XIC(Local:7:I.Pt02.Status)XIC(Local:7:I.Pt03.Status)OTE(MCM_EPB_STATUS);", "timestamp": "2025-09-01T14:18:50.707232", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R011_OUTPUTS: 5 rungs | example: XIC(EStop_MCM_OK)XIC(EStop_05_01_OK)[OTE(PRS2_1_VFD1:SO.STOOutput),OTE(PS8_1_VFD1:SO.STOOutput),OTE(PS8_2_VFD1:SO.STOOutput),OTE(ULC1_1_VFD1:SO.STOOutput),OT...", "timestamp": "2025-09-01T14:18:50.707356", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R012_RESETS: 18 rungs | example: [XIC(SFT_PRS1_6_S1_PB) ,XIC(SFT_MCM_S_PB)]OTE(RST_PRS1_6_EPC1_ESTOP);", "timestamp": "2025-09-01T14:18:50.707473", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R030_ZONES: 6 rungs | example: XIC(PRS2_1_EPC1_DCS_CTRL.O1)XIC(PRS2_1_EPC2_DCS_CTRL.O1)XIC(PS8_1_EPC1_DCS_CTRL.O1)XIC(PS8_2_EPC1_DCS_CTRL.O1)XIC(PS8_2_EPC2_DCS_CTRL.O1)XIC(ULC1_3_EPC1_DCS_...", "timestamp": "2025-09-01T14:18:50.707598", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R020_ESTOPS: 29 rungs | example: DCS(MCM_EPB_DCS_CTRL,EMERGENCY STOP,EQUIVALENT - ACTIVE HIGH,500,MANUAL,AUTOMATIC,Local:7:I.Pt02.Data,Local:7:I.Pt03.Data,MCM_EPB_STATUS,SFT_MCM_S_PB);", "timestamp": "2025-09-01T14:18:50.707785", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- MainRoutine: 1 rungs | example: [JSR(R010_INPUTS,0) ,JSR(R011_OUTPUTS,0) ,JSR(R012_RESETS,0) ,JSR(R020_ESTOPS,0) ,JSR(R030_ZONES,0) ];", "timestamp": "2025-09-01T14:18:50.707911", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "Successfully completed ModernSafetyProgramGenerator generation", "timestamp": "2025-09-01T14:18:50.708043", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Written ModernSafetyProgramGenerator to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/SafetyProgram_Generated.L5X", "timestamp": "2025-09-01T14:18:50.710165", "module": "ModernSafetyProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "[SUCCESS] SafetyProgram written to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/SafetyProgram_Generated.L5X", "timestamp": "2025-09-01T14:18:50.710321", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Generating MainProgram L5X...", "timestamp": "2025-09-01T14:18:50.710472", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "WARNING", "message": "LimitedMainProgramGenerator is deprecated; using ModernMainProgramGenerator", "timestamp": "2025-09-01T14:18:50.710600", "module": "src.container", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Starting ModernMainProgramGenerator generation", "timestamp": "2025-09-01T14:18:50.710769", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Creating MainProgram XML structure", "timestamp": "2025-09-01T14:18:50.710889", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Adding controller tags...", "timestamp": "2025-09-01T14:18:50.711030", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Zones: subsystem key", "timestamp": "2025-09-01T14:18:50.882778", "module": "src.data_loader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "subsystem": "DEFAULT", "found": false}
{"level": "DEBUG", "message": "Zones: heuristic best match", "timestamp": "2025-09-01T14:18:50.957574", "module": "src.data_loader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "best_key": "MCM05", "score": 12}
{"level": "DEBUG", "message": "Zones: loaded", "timestamp": "2025-09-01T14:18:50.958073", "module": "src.data_loader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "rows": 6}
{"level": "DEBUG", "message": "Extracting PMM data", "timestamp": "2025-09-01T14:18:51.258361", "module": "DataLoader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "data_extraction", "type": "PMM"}
{"level": "INFO", "message": "Data: PMM entries=2", "timestamp": "2025-09-01T14:18:51.259626", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM processing PDP14_PMM1", "timestamp": "2025-09-01T14:18:51.259945", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM PDP14_PMM1 DPM=VSD_DPM3", "timestamp": "2025-09-01T14:18:51.260087", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM PDP14_PMM1 PWM fault IO PDP14_FIO1:I.Pt12.Data", "timestamp": "2025-09-01T14:18:51.260964", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM PDP14_PMM1 configuration stored", "timestamp": "2025-09-01T14:18:51.261286", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM processing PDP11_PMM1", "timestamp": "2025-09-01T14:18:51.261537", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM PDP11_PMM1 DPM=VSB_DPM2", "timestamp": "2025-09-01T14:18:51.261684", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM PDP11_PMM1 PWM fault IO PDP11_FIO1:I.Pt12.Data", "timestamp": "2025-09-01T14:18:51.262675", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "PMM PDP11_PMM1 configuration stored", "timestamp": "2025-09-01T14:18:51.263122", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Data: PMM configs=2", "timestamp": "2025-09-01T14:18:51.263337", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Extracting CB_MONITOR data", "timestamp": "2025-09-01T14:18:51.263549", "module": "DataLoader", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "data_extraction", "type": "CB_MONITOR"}
{"level": "INFO", "message": "Data: CB PDPs=2", "timestamp": "2025-09-01T14:18:51.266359", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "CB_MONITOR PDP11: CBs=26 FIOs=2", "timestamp": "2025-09-01T14:18:51.266648", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "CB_MONITOR PDP11: configured CBs=26 positions=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26] fault=PDP11_FIO1:I.ConnectionFaulted", "timestamp": "2025-09-01T14:18:51.266835", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "CB_MONITOR PDP14: CBs=26 FIOs=2", "timestamp": "2025-09-01T14:18:51.266995", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "CB_MONITOR PDP14: configured CBs=26 positions=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26] fault=PDP14_FIO1:I.ConnectionFaulted", "timestamp": "2025-09-01T14:18:51.267157", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Data: CB configs=2", "timestamp": "2025-09-01T14:18:51.267304", "module": "DataLoader", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Tags created: total=512 | standard=57 safety=118 dcs=29 modules=300", "timestamp": "2025-09-01T14:18:51.268367", "module": "src.writers.xml_tag_writer", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "Added 512 controller tags", "timestamp": "2025-09-01T14:18:51.268740", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Generating main program routines...", "timestamp": "2025-09-01T14:18:51.268938", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: mcm", "timestamp": "2025-09-01T14:18:51.269115", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: mcm", "timestamp": "2025-09-01T14:18:51.269243", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: rack", "timestamp": "2025-09-01T14:18:51.269384", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: rack", "timestamp": "2025-09-01T14:18:51.269515", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: dpm", "timestamp": "2025-09-01T14:18:51.269655", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: dpm", "timestamp": "2025-09-01T14:18:51.271213", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: fiom", "timestamp": "2025-09-01T14:18:51.271443", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: fiom", "timestamp": "2025-09-01T14:18:51.274611", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: apf", "timestamp": "2025-09-01T14:18:51.275430", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: apf", "timestamp": "2025-09-01T14:18:51.277106", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: flow_ctrl", "timestamp": "2025-09-01T14:18:51.277844", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: flow_ctrl", "timestamp": "2025-09-01T14:18:51.279808", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: estop_check", "timestamp": "2025-09-01T14:18:51.280139", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: estop_check", "timestamp": "2025-09-01T14:18:51.290624", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: encoder", "timestamp": "2025-09-01T14:18:51.291034", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: encoder", "timestamp": "2025-09-01T14:18:51.291538", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: safety_tag_map", "timestamp": "2025-09-01T14:18:51.291758", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Safety tag map: RST data has 29 rows", "timestamp": "2025-09-01T14:18:51.292150", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: MCM05 -> Local:5:I.Data.0", "timestamp": "2025-09-01T14:18:51.292663", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PRS1_6_S1_PB -> PRS1_4_FIO1:I.Pt12.Data", "timestamp": "2025-09-01T14:18:51.292965", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PRS1_6_S2_PB -> PRS1_4_FIO1:I.Pt14.Data", "timestamp": "2025-09-01T14:18:51.293216", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_11_S1_PB -> PS8_11_FIO1:I.Pt10.Data", "timestamp": "2025-09-01T14:18:51.293474", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_11_CH3_S1_PB -> PS8_11_FIO2:I.Pt06.Data", "timestamp": "2025-09-01T14:18:51.293736", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PRS2_1_S1_PB -> PS8_1_FIO1:I.Pt06.Data", "timestamp": "2025-09-01T14:18:51.294011", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PRS2_1_S2_PB -> PS8_1_FIO1:I.Pt08.Data", "timestamp": "2025-09-01T14:18:51.294266", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: ULC3_3_SS1_SPB -> PS8_1_FIO2:I.Pt04.Data", "timestamp": "2025-09-01T14:18:51.294502", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS9_2_S1_PB -> PS8_5_FIO1:I.Pt10.Data", "timestamp": "2025-09-01T14:18:51.294702", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS9_2_S2_PB -> PS8_5_FIO1:I.Pt12.Data", "timestamp": "2025-09-01T14:18:51.294932", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_5_S1_PB -> PS8_5_FIO1:I.Pt02.Data", "timestamp": "2025-09-01T14:18:51.295187", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_5_S2_PB -> PS8_5_FIO1:I.Pt04.Data", "timestamp": "2025-09-01T14:18:51.295420", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS9_3CH1_S1_PB -> PS9_3_FIO1:I.Pt08.Data", "timestamp": "2025-09-01T14:18:51.295673", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS9_3_S1_PB -> PS9_3_FIO2:I.Pt06.Data", "timestamp": "2025-09-01T14:18:51.295939", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS9_3CH3_S1_PB -> PS9_3_FIO2:I.Pt08.Data", "timestamp": "2025-09-01T14:18:51.296229", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_11_CH2_S1_PB -> PS8_11_FIOH1:I.ProcessDataIn.Connector_4_A_Pin_4", "timestamp": "2025-09-01T14:18:51.296563", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_11_CH4_S1_PB -> PS8_11_FIOH1:I.ProcessDataIn.Connector_2_A_Pin_4", "timestamp": "2025-09-01T14:18:51.296816", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_11_CH1_S1_PB -> PS8_11_FIOH1:I.ProcessDataIn.Connector_3_B_Pin_2", "timestamp": "2025-09-01T14:18:51.297069", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_1_SS1_SPB -> PS8_1_FIOH1:I.ProcessDataIn.Connector_8_A_Pin_4", "timestamp": "2025-09-01T14:18:51.297426", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: ULC1_3_SS1_SPB -> PS8_1_FIOH2:I.ProcessDataIn.Connector_7_A_Pin_4", "timestamp": "2025-09-01T14:18:51.297756", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: ULC1_3_SS2_SPB -> PS8_1_FIOH2:I.ProcessDataIn.Connector_3_A_Pin_4", "timestamp": "2025-09-01T14:18:51.298045", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: ULC2_3_SS1_SPB -> PS8_1_FIOH2:I.ProcessDataIn.Connector_8_A_Pin_4", "timestamp": "2025-09-01T14:18:51.298295", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: ULC4_3_SS1_SPB -> PS8_1_FIOH3:I.ProcessDataIn.Connector_7_A_Pin_4", "timestamp": "2025-09-01T14:18:51.298604", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_2_S1_PB -> PS8_1_FIOH3:I.ProcessDataIn.Connector_3_A_Pin_4", "timestamp": "2025-09-01T14:18:51.299126", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_2_S2_PB -> PS8_1_FIOH3:I.ProcessDataIn.Connector_1_A_Pin_4", "timestamp": "2025-09-01T14:18:51.299732", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_4_S1_PB -> PS8_4_FIOH1:I.ProcessDataIn.Connector_3_A_Pin_4", "timestamp": "2025-09-01T14:18:51.300014", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS8_4_S2_PB -> PS8_4_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4", "timestamp": "2025-09-01T14:18:51.300293", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS9_3CH2_S1_PB -> PS9_3_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4", "timestamp": "2025-09-01T14:18:51.300535", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Added safety tag mapping: PS9_3CH4_S1_PB -> PS9_3_FIOH2:I.ProcessDataIn.Connector_5_B_Pin_2", "timestamp": "2025-09-01T14:18:51.300721", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Safety tag map: Generating 29 rungs", "timestamp": "2025-09-01T14:18:51.300933", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 1: XIC(Local:5:I.Data.0)OTE(MCM05);", "timestamp": "2025-09-01T14:18:51.301092", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 2: XIC(PRS1_4_FIO1:I.Pt12.Data)OTE(PRS1_6_S1_PB);", "timestamp": "2025-09-01T14:18:51.301237", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 3: XIC(PRS1_4_FIO1:I.Pt14.Data)OTE(PRS1_6_S2_PB);", "timestamp": "2025-09-01T14:18:51.301371", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 4: XIC(PS8_1_FIO1:I.Pt06.Data)OTE(PRS2_1_S1_PB);", "timestamp": "2025-09-01T14:18:51.301496", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 5: XIC(PS8_1_FIO1:I.Pt08.Data)OTE(PRS2_1_S2_PB);", "timestamp": "2025-09-01T14:18:51.301621", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 6: XIC(PS8_1_FIOH1:I.ProcessDataIn.Connector_8_A_Pin_4)OTE(PS8_1_SS1_SPB);", "timestamp": "2025-09-01T14:18:51.301770", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 7: XIC(PS8_1_FIOH3:I.ProcessDataIn.Connector_3_A_Pin_4)OTE(PS8_2_S1_PB);", "timestamp": "2025-09-01T14:18:51.301939", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 8: XIC(PS8_1_FIOH3:I.ProcessDataIn.Connector_1_A_Pin_4)OTE(PS8_2_S2_PB);", "timestamp": "2025-09-01T14:18:51.302068", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 9: XIC(PS8_4_FIOH1:I.ProcessDataIn.Connector_3_A_Pin_4)OTE(PS8_4_S1_PB);", "timestamp": "2025-09-01T14:18:51.302219", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 10: XIC(PS8_4_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4)OTE(PS8_4_S2_PB);", "timestamp": "2025-09-01T14:18:51.302399", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 11: XIC(PS8_5_FIO1:I.Pt02.Data)OTE(PS8_5_S1_PB);", "timestamp": "2025-09-01T14:18:51.302562", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 12: XIC(PS8_5_FIO1:I.Pt04.Data)OTE(PS8_5_S2_PB);", "timestamp": "2025-09-01T14:18:51.302686", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 13: XIC(PS8_11_FIOH1:I.ProcessDataIn.Connector_3_B_Pin_2)OTE(PS8_11_CH1_S1_PB);", "timestamp": "2025-09-01T14:18:51.302814", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 14: XIC(PS8_11_FIOH1:I.ProcessDataIn.Connector_4_A_Pin_4)OTE(PS8_11_CH2_S1_PB);", "timestamp": "2025-09-01T14:18:51.302936", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 15: XIC(PS8_11_FIO2:I.Pt06.Data)OTE(PS8_11_CH3_S1_PB);", "timestamp": "2025-09-01T14:18:51.303061", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 16: XIC(PS8_11_FIOH1:I.ProcessDataIn.Connector_2_A_Pin_4)OTE(PS8_11_CH4_S1_PB);", "timestamp": "2025-09-01T14:18:51.303183", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 17: XIC(PS8_11_FIO1:I.Pt10.Data)OTE(PS8_11_S1_PB);", "timestamp": "2025-09-01T14:18:51.303301", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 18: XIC(PS8_5_FIO1:I.Pt10.Data)OTE(PS9_2_S1_PB);", "timestamp": "2025-09-01T14:18:51.303453", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 19: XIC(PS8_5_FIO1:I.Pt12.Data)OTE(PS9_2_S2_PB);", "timestamp": "2025-09-01T14:18:51.303581", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 20: XIC(PS9_3_FIO2:I.Pt06.Data)OTE(PS9_3_S1_PB);", "timestamp": "2025-09-01T14:18:51.303696", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 21: XIC(PS9_3_FIO1:I.Pt08.Data)OTE(PS9_3CH1_S1_PB);", "timestamp": "2025-09-01T14:18:51.303810", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 22: XIC(PS9_3_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4)OTE(PS9_3CH2_S1_PB);", "timestamp": "2025-09-01T14:18:51.303936", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 23: XIC(PS9_3_FIO2:I.Pt08.Data)OTE(PS9_3CH3_S1_PB);", "timestamp": "2025-09-01T14:18:51.304055", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 24: XIC(PS9_3_FIOH2:I.ProcessDataIn.Connector_5_B_Pin_2)OTE(PS9_3CH4_S1_PB);", "timestamp": "2025-09-01T14:18:51.304169", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 25: XIC(PS8_1_FIOH2:I.ProcessDataIn.Connector_7_A_Pin_4)OTE(ULC1_3_SS1_SPB);", "timestamp": "2025-09-01T14:18:51.304300", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 26: XIC(PS8_1_FIOH2:I.ProcessDataIn.Connector_3_A_Pin_4)OTE(ULC1_3_SS2_SPB);", "timestamp": "2025-09-01T14:18:51.304456", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 27: XIC(PS8_1_FIOH2:I.ProcessDataIn.Connector_8_A_Pin_4)OTE(ULC2_3_SS1_SPB);", "timestamp": "2025-09-01T14:18:51.304657", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 28: XIC(PS8_1_FIO2:I.Pt04.Data)OTE(ULC3_3_SS1_SPB);", "timestamp": "2025-09-01T14:18:51.304814", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generated rung 29: XIC(PS8_1_FIOH3:I.ProcessDataIn.Connector_7_A_Pin_4)OTE(ULC4_3_SS1_SPB);", "timestamp": "2025-09-01T14:18:51.304942", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Safety tag map: Generated 29 total rungs", "timestamp": "2025-09-01T14:18:51.305061", "module": "src.routines.safety_tag_map", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: safety_tag_map", "timestamp": "2025-09-01T14:18:51.305188", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: station_jr_pb", "timestamp": "2025-09-01T14:18:51.305354", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: station_jr_pb", "timestamp": "2025-09-01T14:18:51.306285", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: station_s_pb", "timestamp": "2025-09-01T14:18:51.306521", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: station_s_pb", "timestamp": "2025-09-01T14:18:51.306924", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: station_ss_pb", "timestamp": "2025-09-01T14:18:51.307127", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: station_ss_pb", "timestamp": "2025-09-01T14:18:51.307446", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: station_epc", "timestamp": "2025-09-01T14:18:51.307649", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: station_epc", "timestamp": "2025-09-01T14:18:51.308062", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: jpe", "timestamp": "2025-09-01T14:18:51.308288", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: jpe", "timestamp": "2025-09-01T14:18:51.308927", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: pmm", "timestamp": "2025-09-01T14:18:51.309137", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: pmm", "timestamp": "2025-09-01T14:18:51.309408", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: cb_monitor", "timestamp": "2025-09-01T14:18:51.309594", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: cb_monitor", "timestamp": "2025-09-01T14:18:51.309914", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: belt_tracking", "timestamp": "2025-09-01T14:18:51.310653", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: belt_tracking", "timestamp": "2025-09-01T14:18:51.311985", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Generating routine: main_routine", "timestamp": "2025-09-01T14:18:51.312255", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Generating MainRoutine with JSR calls", "timestamp": "2025-09-01T14:18:51.312468", "module": "src.routines.main_routine_plugin.MainRoutinePlugin", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated MainRoutine", "timestamp": "2025-09-01T14:18:51.312718", "module": "src.routines.main_routine_plugin.MainRoutinePlugin", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Successfully generated routine: main_routine", "timestamp": "2025-09-01T14:18:51.312922", "module": "src.plugin_system", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Main routine generation results: {'mcm': True, 'rack': True, 'dpm': True, 'fiom': True, 'apf': True, 'flow_ctrl': True, 'estop_check': True, 'encoder': True, 'safety_tag_map': True, 'station_jr_pb': True, 'station_s_pb': True, 'station_ss_pb': True, 'station_epc': True, 'jpe': True, 'pmm': True, 'cb_monitor': True, 'belt_tracking': True, 'main_routine': True}", "timestamp": "2025-09-01T14:18:51.313116", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Routines created (18): MainRoutine, R010_MCM, R011_RACK, R020_DPM, R030_FIOM, R040_APF, R050_FLOW_CTRL, R060_PMM, R070_CB_MONITOR, R080_ENCODER, R090_STATION_JR_PB, R095_STATION_S_PB, R096_STATION_SS_PB, R097_STATION_EPC, R100_JPE, R120_ESTOP_CHECK, R130_SAFETY_TAG_MAP, ZZZ_BeltTracking", "timestamp": "2025-09-01T14:18:51.313289", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R010_MCM: 2 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.313497", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R011_RACK: 2 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.313677", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R020_DPM: 11 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.313922", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R030_FIOM: 58 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.314094", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R040_APF: 28 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.314276", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R050_FLOW_CTRL: 32 rungs | example: XIC(PRS1_4_VFD1.CTRL.STS.Enabled)OTE(PRS1_3_VFD1.CTRL.CMD.Interlock);", "timestamp": "2025-09-01T14:18:51.314432", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R120_ESTOP_CHECK: 28 rungs | example: XIO(FL2074_2_VFD1:SI.In00Data)XIO(FL2074_2_VFD1:SO.Out00Output)XIO(FL2074_2_VFD1:SO.STOOutput)XIC(FL2078_2_VFD1:SO.Out00Output)XIC(FL2078_2_VFD1:SO.STOOutput...", "timestamp": "2025-09-01T14:18:51.314581", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R080_ENCODER: 13 rungs | example: AOI_ENCODER(PS8_11_ENCODER.AOI,PS8_11_ENCODER.HMI,PS8_11_ENCODER.CTRL,PS8_11_VFD1.CTRL,NO_UPSTREAM,NO_DOWNSTREAM,PS8_11_VFD1:I.In_1,PS8_11_VFD1:I.ConnectionF...", "timestamp": "2025-09-01T14:18:51.314729", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R130_SAFETY_TAG_MAP: 30 rungs | example: XIC(Local:5:I.Data.0)OTE(MCM_S_PB);", "timestamp": "2025-09-01T14:18:51.314945", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R090_STATION_JR_PB: 75 rungs | example: AOI_STATION_JR_PB(FL2074_2_JR1_PB.AOI,FL2074_2_JR1_PB.HMI,FL2074_2_JR1_PB.CTRL,NO_PARTNER,FL2074_FIOH1:I.ProcessDataIn.Connector_6_A_Pin_4,FL2074_FIOH1:O.Pro...", "timestamp": "2025-09-01T14:18:51.315212", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R095_STATION_S_PB: 14 rungs | example: AOI_STATION_S_PB(PRS1_6_S1_PB_STATION.AOI,PRS1_6_S1_PB_STATION.HMI,PRS1_6_S1_PB_STATION.CTRL,PRS1_6_VFD1.CTRL,PRS1_4_FIO1:I.Pt12.Data,PRS1_4_FIO1:O.Pt13.Data);", "timestamp": "2025-09-01T14:18:51.315414", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R096_STATION_SS_PB: 6 rungs | example: AOI_STATION_SS_PB(PS8_1_SS1_STATION.AOI,PS8_1_SS1_STATION.HMI,PS8_1_SS1_STATION.CTRL,PS8_1_VFD1.CTRL,PS8_1_FIOH1:I.ConnectionFaulted,PS8_1_FIOH1:I.ProcessDat...", "timestamp": "2025-09-01T14:18:51.315607", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R097_STATION_EPC: 18 rungs | example: AOI_STATION_EPC(PRS1_6_EPC1_STATION.AOI,MCM.CTRL,PRS1_6_EPC1_STATION.HMI,PRS1_6_S1_PB_STATION.CTRL,PRS1_6_VFD1:I.ConnectionFaulted,PRS1_6_VFD1:SI.In00Data,PR...", "timestamp": "2025-09-01T14:18:51.315780", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R100_JPE: 42 rungs | example: AOI_JPE(PRS1_2A_JPE1.AOI,PRS1_2A_JPE1.HMI,PRS1_2A_JPE1.CTRL,PRS1_2A_VFD1.CTRL,PRS1_2A_JR1_PB.CTRL,PRS1_2A_VFD1:I.ConnectionFaulted,PRS1_2A_VFD1:I.In_2,YES,PR...", "timestamp": "2025-09-01T14:18:51.316021", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R060_PMM: 3 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.316321", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- R070_CB_MONITOR: 3 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.316529", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- ZZZ_BeltTracking: 35 rungs | example: NOP();", "timestamp": "2025-09-01T14:18:51.316739", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "- MainRoutine: 1 rungs | example: [JSR(R010_MCM,0) ,JSR(R011_RACK,0) ,JSR(R020_DPM,0) ,JSR(R030_FIOM,0) ,JSR(R040_APF,0) ,JSR(R050_FLOW_CTRL,0) ,JSR(R120_ESTOP_CHECK,0) ,JSR(R080_ENCODER,0) ,...", "timestamp": "2025-09-01T14:18:51.316935", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "stage": "summary"}
{"level": "INFO", "message": "Successfully completed ModernMainProgramGenerator generation", "timestamp": "2025-09-01T14:18:51.317125", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Written ModernMainProgramGenerator to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/MainProgram_Generated.L5X", "timestamp": "2025-09-01T14:18:51.330290", "module": "ModernMainProgramGenerator", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "[SUCCESS] MainProgram written to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/MainProgram_Generated.L5X", "timestamp": "2025-09-01T14:18:51.330566", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "Generating safety tag mapping...", "timestamp": "2025-09-01T14:18:51.330757", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Creating MappingWriter wrapper", "timestamp": "2025-09-01T14:18:51.330970", "module": "src.container", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "DEBUG", "message": "Creating DataLoader instance", "timestamp": "2025-09-01T14:18:51.331204", "module": "src.container", "file": "logging_config.py", "line": 126, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py", "excel_file": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/DESC_IP_MERGED.xlsx"}
{"level": "INFO", "message": "[SUCCESS] Safety tag mapping written to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/SafetyTagMapping.txt", "timestamp": "2025-09-01T14:18:51.496567", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": " - Safety tags: 29", "timestamp": "2025-09-01T14:18:51.496802", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
{"level": "INFO", "message": "=== All artifacts generated successfully! ===", "timestamp": "2025-09-01T14:18:51.496977", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
=== Step 2: Routines Generator stdout ===
Found STATION_JR_PB config for PRS1_3_JR1_PB
Found STATION_JR_PB config for PRS1_2A_JR1_PB
Found STATION_JR_PB config for PRS1_2A_JR2_PB
Found STATION_JR_PB config for PRS1_2B_JR1_PB
Found STATION_JR_PB config for PRS1_2B_JR2_PB
Found STATION_JR_PB config for PRS1_4_JR1_PB
Found STATION_JR_PB config for PS8_11_JR1_PB
Found STATION_JR_PB config for PS8_11_JR2_PB
Found STATION_JR_PB config for ULC4_3_JR1_PB
Found STATION_JR_PB config for ULC3_3_JR1_PB
Found STATION_JR_PB config for PS8_9_JR1_PB
Found STATION_JR_PB config for PS9_3_JR1_PB
Found STATION_JR_PB config for S012001_JR1_PB
Found STATION_JR_PB config for S012002_JR1_PB
Found STATION_JR_PB config for S012009_JR1_PB
Found STATION_JR_PB config for S012010_JR1_PB
Found STATION_JR_PB config for S012019_JR1_PB
Found STATION_JR_PB config for S012018_JR1_PB
Found STATION_JR_PB config for S012027_JR1_PB
Found STATION_JR_PB config for S012026_JR1_PB
Found STATION_JR_PB config for S012037_JR1_PB
Found STATION_JR_PB config for S012034_JR1_PB
Found STATION_JR_PB config for S012045_JR1_PB
Found STATION_JR_PB config for S012044_JR1_PB
Found STATION_JR_PB config for S012055_JR1_PB
Found STATION_JR_PB config for S012052_JR1_PB
Found STATION_JR_PB config for S012063_JR1_PB
Found STATION_JR_PB config for S012060_JR1_PB
Found STATION_JR_PB config for S012070_JR1_PB
Found STATION_JR_PB config for S012073_JR1_PB
Found STATION_JR_PB config for S014008_JR1_PB
Found STATION_JR_PB config for S014009_JR1_PB
Found STATION_JR_PB config for S014016_JR1_PB
Found STATION_JR_PB config for S014017_JR1_PB
Found STATION_JR_PB config for S014024_JR1_PB
Found STATION_JR_PB config for S014025_JR1_PB
Found STATION_JR_PB config for S014026_JR1_PB
Found STATION_JR_PB config for S014033_JR1_PB
Found STATION_JR_PB config for S014036_JR1_PB
Found STATION_JR_PB config for S014043_JR1_PB
Found STATION_JR_PB config for S014044_JR1_PB
Found STATION_JR_PB config for S014049_JR1_PB
Found STATION_JR_PB config for S014052_JR1_PB
Found STATION_JR_PB config for S014058_JR1_PB
Found STATION_JR_PB config for S014057_JR1_PB
Found STATION_JR_PB config for S014064_JR1_PB
Found STATION_JR_PB config for S014065_JR1_PB
Found STATION_JR_PB config for S014072_JR1_PB
Found STATION_JR_PB config for S014073_JR1_PB
Found STATION_JR_PB config for S014080_JR1_PB
Found STATION_JR_PB config for S014081_JR1_PB
Found STATION_JR_PB config for FL2074_2_JR1_PB
Found STATION_JR_PB config for FL2074_2_JR2_PB
Found STATION_JR_PB config for FL2086_2_JR1_PB
Found STATION_JR_PB config for FL2086_2_JR2_PB
Found STATION_JR_PB config for FL2090_2_JR1_PB
Found STATION_JR_PB config for FL2090_2_JR2_PB
Found STATION_JR_PB config for FL4066_2_JR1_PB
Found STATION_JR_PB config for FL4066_2_JR2_PB
Found STATION_JR_PB config for FL4074_2_JR1_PB
Found STATION_JR_PB config for FL4074_2_JR2_PB
Found STATION_JR_PB config for FL4082_2_JR1_PB
Found STATION_JR_PB config for FL4082_2_JR2_PB
Found STATION_JR_PB config for ULC1_3_JR1_PB
Found STATION_JR_PB config for PS8_1_JR1_PB
Found STATION_JR_PB config for PS8_1_JR2_PB
Found STATION_JR_PB config for ULC2_3_JR1_PB
Found STATION_JR_PB config for FL2078_2_JR1_PB
Found STATION_JR_PB config for FL2078_2_JR2_PB
Found STATION_JR_PB config for FL2094_2_JR1_PB
Found STATION_JR_PB config for FL2094_2_JR2_PB
Found STATION_JR_PB config for FL4070_2_JR1_PB
Found STATION_JR_PB config for FL4070_2_JR2_PB
Found STATION_JR_PB config for FL4078_2_JR1_PB
Found STATION_JR_PB config for FL4078_2_JR2_PB
Found STATION_S_PB config for PRS1_6_S1_PB
Found STATION_S_PB config for PRS1_6_S2_PB
Found STATION_S_PB config for PS8_11_S1_PB
[WARNING] No VFD found for PS8_11_CH3_S1_PB with base PS8_11_CH3
Found STATION_S_PB config for PRS2_1_S1_PB
Found STATION_S_PB config for PRS2_1_S2_PB
Found STATION_S_PB config for PS9_2_S1_PB
Found STATION_S_PB config for PS9_2_S2_PB
Found STATION_S_PB config for PS8_5_S1_PB
Found STATION_S_PB config for PS8_5_S2_PB
[WARNING] No VFD found for PS9_3CH1_S1_PB with base PS9_3CH1
Found STATION_S_PB config for PS9_3_S1_PB
[WARNING] No VFD found for PS9_3CH3_S1_PB with base PS9_3CH3
[WARNING] No VFD found for PS8_11_CH2_S1_PB with base PS8_11_CH2
[WARNING] No VFD found for PS8_11_CH4_S1_PB with base PS8_11_CH4
[WARNING] No VFD found for PS8_11_CH1_S1_PB with base PS8_11_CH1
Found STATION_S_PB config for PS8_2_S1_PB
Found STATION_S_PB config for PS8_2_S2_PB
Found STATION_S_PB config for PS8_4_S1_PB
Found STATION_S_PB config for PS8_4_S2_PB
[WARNING] No VFD found for PS9_3CH2_S1_PB with base PS9_3CH2
[WARNING] No VFD found for PS9_3CH4_S1_PB with base PS9_3CH4
Found STATION_SS_PB config for ULC3_3_SS1
Found STATION_SS_PB config for PS8_1_SS1
Found STATION_SS_PB config for ULC1_3_SS1
Found STATION_SS_PB config for ULC1_3_SS2
Found STATION_SS_PB config for ULC2_3_SS1
Found STATION_SS_PB config for ULC4_3_SS1
Found STATION_EPC config for PRS1_6_EPC1
Found STATION_EPC config for ULC1_3_EPC1
Found STATION_EPC config for ULC2_3_EPC1
Found STATION_EPC config for ULC3_3_EPC1
Found STATION_EPC config for ULC4_3_EPC1
Found STATION_EPC config for PS8_5_EPC1
Found STATION_EPC config for PRS2_1_EPC1
Found STATION_EPC config for PS8_1_EPC1
Found STATION_EPC config for PS9_2_EPC1
Found STATION_EPC config for PS9_3_EPC1
Found STATION_EPC config for PS8_11_EPC1
Found STATION_EPC config for PS8_2_EPC1
Found STATION_EPC config for PRS1_6_EPC2
Found STATION_EPC config for ULC1_3_EPC2
Found STATION_EPC config for PS8_5_EPC2
Found STATION_EPC config for PRS2_1_EPC2
Found STATION_EPC config for PS9_2_EPC2
Found STATION_EPC config for PS8_2_EPC2
Found ENCODER config for ULC1_3_ENCODER (upstream: NO_UPSTREAM, downstream: NO_DOWNSTREAM)
Found ENCODER config for ULC2_3_ENCODER (upstream: NO_UPSTREAM, downstream: NO_DOWNSTREAM)
Found ENCODER config for ULC3_3_ENCODER (upstream: NO_UPSTREAM, downstream: NO_DOWNSTREAM)
Found ENCODER config for ULC4_3_ENCODER (upstream: NO_UPSTREAM, downstream: NO_DOWNSTREAM)
Found ENCODER config for PS8_1_ENCODER (upstream: NO_UPSTREAM, downstream: PS8_2_VFD1.CTRL)
Found ENCODER config for PS8_8_ENCODER (upstream: NO_UPSTREAM, downstream: PS8_9_VFD1.CTRL)
Found ENCODER config for PS9_2_ENCODER (upstream: NO_UPSTREAM, downstream: PS9_3_VFD1.CTRL)
Found ENCODER config for PS9_3_ENCODER (upstream: PS9_2_VFD1.CTRL, downstream: NO_DOWNSTREAM)
Found ENCODER config for PS8_11_ENCODER (upstream: NO_UPSTREAM, downstream: NO_DOWNSTREAM)
Found ENCODER config for PS8_2_ENCODER (upstream: PS8_1_VFD1.CTRL, downstream: NO_DOWNSTREAM)
Found ENCODER config for PS8_5_ENCODER (upstream: PS8_4_VFD1.CTRL, downstream: PS8_6_VFD1.CTRL)
Found ENCODER config for PS8_9_ENCODER (upstream: PS8_8_VFD1.CTRL, downstream: NO_DOWNSTREAM)
Found ENCODER config for PS8_4_ENCODER (upstream: NO_UPSTREAM, downstream: PS8_5_VFD1.CTRL)
Found JPE config for PRS1_6_JPE1 (missing station, missing beacon)
Found JPE config for PRS1_6_JPE2 (missing station, missing beacon)
Found JPE config for ULC1_3_JPE1
Found JPE config for ULC1_3_JPE2
Found JPE config for ULC2_3_JPE1
Found JPE config for ULC2_3_JPE2
Found JPE config for ULC3_3_JPE1
Found JPE config for ULC3_3_JPE2
Found JPE config for ULC4_3_JPE1
Found JPE config for ULC4_3_JPE2
Found JPE config for PRS1_2B_JPE1
Found JPE config for PRS1_2B_JPE2
Found JPE config for PRS1_4_JPE1
Found JPE config for PRS1_4_JPE2
Found JPE config for PRS1_2A_JPE1
Found JPE config for PRS1_2A_JPE2
Found JPE config for PRS1_3_JPE2
Found JPE config for PRS2_1_JPE1 (missing station)
Found JPE config for PS8_1_JPE1
Found JPE config for PS8_1_JPE2
Found JPE config for PS8_1_JPE3
Found JPE config for PS8_8_JPE1 (missing station, missing beacon)
Found JPE config for PS8_8_JPE2 (missing station, missing beacon)
Found JPE config for PS9_2_JPE1 (missing station)
Found JPE config for PS9_2_JPE2 (missing station)
Found JPE config for PS9_3_JPE1
Found JPE config for PS9_3_JPE2
Found JPE config for PS8_2_JPE1 (missing station)
Found JPE config for PS8_2_JPE2 (missing station)
Found JPE config for PRS1_3_JPE1
Found JPE config for PS8_11_JPE1
Found JPE config for PS8_11_JPE2
Found JPE config for PS8_11_JPE3
Found JPE config for PS8_11_JPE4
Found JPE config for PS8_1_JPE6
Found JPE config for PS8_1_JPE4
Found JPE config for PS8_1_JPE5
Found JPE config for PS8_5_JPE1 (missing station)
Found JPE config for PS8_9_JPE1
Found JPE config for PS9_3_JPE3
Found JPE config for PS8_4_JPE1 (missing station)
Found JPE config for PS8_4_JPE2 (missing station)
FIOM PDP11_FIO1 -> DPM PS8_5_DPM1
FIOM PDP14_FIO1 -> DPM VSD_DPM3
FIOM PRS1_1ACH_FIO1 -> DPM PRS1_3_DPM1
FIOM PRS1_1BCH_FIO1 -> DPM PRS1_3_DPM1
FIOM PRS1_4_FIO1 -> DPM PRS1_3_DPM1
FIOM PS8_1_FIO1 -> DPM PRS1_3_DPM1
FIOM PS8_1_FIO2 -> DPM PRS1_3_DPM1
FIOM PS8_5_FIO1 -> DPM PS8_5_DPM1
FIOM PS8_9_FIO1 -> DPM PS8_5_DPM1
FIOM PS8_11_FIO1 -> DPM PS8_5_DPM1
FIOM PS8_11_FIO2 -> DPM PS8_5_DPM1
FIOM PS9_3_FIO1 -> DPM PS8_5_DPM1
FIOM PS9_3_FIO2 -> DPM PS8_5_DPM1
FIOM VSB_DPM1_FIO1 -> DPM VSB_DPM1
FIOM VSB_DPM1_FIO2 -> DPM VSB_DPM1
FIOM VSB_DPM1_FIO3 -> DPM VSB_DPM1
FIOM VSB_DPM1_FIO4 -> DPM VSB_DPM1
FIOM VSB_DPM1_FIO5 -> DPM VSB_DPM1
FIOM VSB_DPM1_FIO6 -> DPM VSB_DPM1
FIOM VSB_DPM1_FIO7 -> DPM VSB_DPM1
FIOM VSB_DPM1_FIO8 -> DPM VSB_DPM1
FIOM VSB_DPM2_FIO1 -> DPM VSB_DPM2
FIOM VSB_DPM2_FIO2 -> DPM VSB_DPM2
FIOM VSB_DPM2_FIO3 -> DPM VSB_DPM2
FIOM VSB_DPM2_FIO4 -> DPM VSB_DPM2
FIOM VSB_DPM2_FIO5 -> DPM VSB_DPM2
FIOM VSB_DPM2_FIO6 -> DPM VSB_DPM2
FIOM VSB_DPM2_FIO7 -> DPM VSB_DPM2
FIOM VSB_DPM2_FIO8 -> DPM VSB_DPM2
FIOM VSB_DPM3_FIO1 -> DPM VSB_DPM3
FIOM VSB_DPM3_FIO2 -> DPM VSB_DPM3
FIOM VSB_DPM3_FIO3 -> DPM VSB_DPM3
FIOM VSB_DPM3_FIO4 -> DPM VSB_DPM3
FIOM VSB_DPM3_FIO6 -> DPM VSB_DPM3
FIOM VSB_DPM3_FIO8 -> DPM VSB_DPM3
FIOM VSD_DPM1_FIO1 -> DPM VSD_DPM1
FIOM VSD_DPM1_FIO2 -> DPM VSD_DPM1
FIOM VSD_DPM1_FIO3 -> DPM VSD_DPM1
FIOM VSD_DPM1_FIO4 -> DPM VSD_DPM1
FIOM VSD_DPM1_FIO5 -> DPM VSD_DPM1
FIOM VSD_DPM1_FIO6 -> DPM VSD_DPM1
FIOM VSD_DPM1_FIO7 -> DPM VSD_DPM1
FIOM VSD_DPM1_FIO8 -> DPM VSD_DPM1
FIOM VSD_DPM2_FIO1 -> DPM VSD_DPM2
FIOM VSD_DPM2_FIO2 -> DPM VSD_DPM2
FIOM VSD_DPM2_FIO3 -> DPM VSD_DPM2
FIOM VSD_DPM2_FIO4 -> DPM VSD_DPM2
FIOM VSD_DPM2_FIO5 -> DPM VSD_DPM2
FIOM VSD_DPM2_FIO6 -> DPM VSD_DPM2
FIOM VSD_DPM2_FIO7 -> DPM VSD_DPM2
FIOM VSD_DPM2_FIO8 -> DPM VSD_DPM2
FIOM VSD_DPM3_FIO1 -> DPM VSD_DPM3
FIOM VSD_DPM3_FIO2 -> DPM VSD_DPM3
FIOM VSD_DPM3_FIO3 -> DPM VSD_DPM3
FIOM VSD_DPM3_FIO4 -> DPM VSD_DPM3
FIOM VSD_DPM3_FIO5 -> DPM VSD_DPM3
FIOM VSD_DPM3_FIO6 -> DPM VSD_DPM3
APF FL2074_2_VFD1 -> DPM FL2086_DPM1
APF FL2078_2_VFD1 -> DPM FL2086_DPM1
APF FL2086_2_VFD1 -> DPM FL2086_DPM1
APF FL2090_2_VFD1 -> DPM FL2086_DPM1
APF FL2094_2_VFD1 -> DPM FL2086_DPM1
APF FL4066_2_VFD1 -> DPM FL4070_DPM1
APF FL4070_2_VFD1 -> DPM FL4070_DPM1
APF FL4074_2_VFD1 -> DPM FL4070_DPM1
APF FL4078_2_VFD1 -> DPM FL4070_DPM1
APF FL4082_2_VFD1 -> DPM FL4070_DPM1
APF PRS1_2A_VFD1 -> DPM PRS1_3_DPM1
APF PRS1_2B_VFD1 -> DPM PRS1_3_DPM1
APF PRS1_3_VFD1 -> DPM PRS1_3_DPM1
APF PRS1_4_VFD1 -> DPM PRS1_3_DPM1
APF PRS1_6_VFD1 -> DPM PRS1_3_DPM1
APF PRS2_1_VFD1 -> DPM PRS1_3_DPM1
APF PS8_1_VFD1 -> DPM PS8_5_DPM1
APF PS8_2_VFD1 -> DPM PS8_5_DPM1
APF PS8_6_VFD1 -> DPM PS8_5_DPM1
APF PS8_8_VFD1 -> DPM PS8_5_DPM1
APF PS8_11_VFD1 -> DPM PRS1_3_DPM1
APF PS9_2_VFD1 -> DPM PS8_5_DPM1
APF PS9_3_VFD1 -> DPM PS8_5_DPM1
APF ULC1_3_VFD1 -> DPM PS8_5_DPM1
APF ULC2_3_VFD1 -> DPM PS8_5_DPM1
APF ULC3_3_VFD1 -> DPM PS8_5_DPM1
APF ULC4_3_VFD1 -> DPM PS8_5_DPM1
- Added 28 E-stop check rungs
[R090_STATION_JR_PB] Starting STATION_JR_PB routine generation...
Found 75 STATION_JR_PB configurations
Generated 75 STATION_JR_PB rungs
[R0100_JPE] Starting JPE routine generation...
Found 42 JPE configurations
Generated 42 JPE rungs
Belt tracking for FL2074_2_VFD1 -> zzz_FL2074_2Tracking
Belt tracking for FL2078_2_VFD1 -> zzz_FL2078_2Tracking
Belt tracking for FL2086_2_VFD1 -> zzz_FL2086_2Tracking
Belt tracking for FL2090_2_VFD1 -> zzz_FL2090_2Tracking
Belt tracking for FL2094_2_VFD1 -> zzz_FL2094_2Tracking
Belt tracking for FL4066_2_VFD1 -> zzz_FL4066_2Tracking
Belt tracking for FL4070_2_VFD1 -> zzz_FL4070_2Tracking
Belt tracking for FL4074_2_VFD1 -> zzz_FL4074_2Tracking
Belt tracking for FL4078_2_VFD1 -> zzz_FL4078_2Tracking
Belt tracking for FL4082_2_VFD1 -> zzz_FL4082_2Tracking
Belt tracking for PRS1_2A_VFD1 -> zzz_PRS1_2ATracking
Belt tracking for PRS1_2B_VFD1 -> zzz_PRS1_2BTracking
Belt tracking for PRS1_3_VFD1 -> zzz_PRS1_3Tracking
Belt tracking for PRS1_4_VFD1 -> zzz_PRS1_4Tracking
Belt tracking for PRS1_6_VFD1 -> zzz_PRS1_6Tracking
Belt tracking for PRS2_1_VFD1 -> zzz_PRS2_1Tracking
Belt tracking for PS8_1_VFD1 -> zzz_PS8_1Tracking
Belt tracking for PS8_2_VFD1 -> zzz_PS8_2Tracking
Belt tracking for PS8_4_VFD1 -> zzz_PS8_4Tracking
Belt tracking for PS8_5_VFD1 -> zzz_PS8_5Tracking
Belt tracking for PS8_6_VFD1 -> zzz_PS8_6Tracking
Belt tracking for PS8_8_VFD1 -> zzz_PS8_8Tracking
Belt tracking for PS8_9_VFD1 -> zzz_PS8_9Tracking
Belt tracking for PS8_11_VFD1 -> zzz_PS8_11Tracking
Belt tracking for PS9_2_VFD1 -> zzz_PS9_2Tracking
Belt tracking for PS9_3_VFD1 -> zzz_PS9_3Tracking
Belt tracking for ULC1_1_VFD1 -> zzz_ULC1_1Tracking
Belt tracking for ULC1_3_VFD1 -> zzz_ULC1_3Tracking
Belt tracking for ULC2_1_VFD1 -> zzz_ULC2_1Tracking
Belt tracking for ULC2_3_VFD1 -> zzz_ULC2_3Tracking
Belt tracking for ULC3_1_VFD1 -> zzz_ULC3_1Tracking
Belt tracking for ULC3_3_VFD1 -> zzz_ULC3_3Tracking
Belt tracking for ULC4_1_VFD1 -> zzz_ULC4_1Tracking
Belt tracking for ULC4_3_VFD1 -> zzz_ULC4_3Tracking
- Added 34 belt tracking AOI calls
Created safety tag mapping file: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/SafetyTagMapping.txt
=== Step 2: Routines Generator stderr ===
[14:18:49] [INFO] [logging_config.py:128:_log_with_context] Logging to file: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/logs/workflow_MTN6_MCM05_20250901_141844.log
[14:18:49] [INFO] [logging_config.py:128:_log_with_context] === Generating All PLC Artifacts ===
[14:18:49] [INFO] [logging_config.py:128:_log_with_context] Generating SafetyProgram L5X...
[14:18:49] [WARNING] [logging_config.py:128:_log_with_context] LimitedSafetyProgramGenerator is deprecated; using ModernSafetyProgramGenerator
[14:18:49] [INFO] [logging_config.py:128:_log_with_context] Starting ModernSafetyProgramGenerator generation
[14:18:49] [DEBUG] [logging_config.py:128:_log_with_context] Creating SafetyProgram XML structure
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: main_routine (core)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: apf (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: belt_tracking (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: cb_monitor (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: d2c_chute (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: dpm (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: encoder (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: estops (safety)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: estop_check (safety)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: extendo (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: fioh (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: fiom (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: flow_ctrl (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: fpe (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: inputs (safety)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: jpe (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: mcm (core)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: outputs (safety)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: pb_chute (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: pmm (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: rack (core)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: resets (safety)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: safety_tag_map (core)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: speed_ctrl (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: station_epc (safety)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: station_jr_chute (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: station_jr_pb (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: station_ss_pb (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: station_s_pb (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: taching_belts (device)
[14:18:49] [DEBUG] [logging_config.py:126:_log_with_context] Registered plugin: zones (safety)
[14:18:49] [INFO] [logging_config.py:128:_log_with_context] Generating safety routines...
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: inputs
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: inputs
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: outputs
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: subsystem key
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: heuristic best match
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: loaded
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: outputs
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: resets
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: resets
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: zones
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL2074_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL2078_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL2086_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL2090_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL2094_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL4066_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL4070_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL4074_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL4078_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for FL4082_1: {'ESTOP1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PRS1_6: {'EPC1', 'EPC2'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PRS2_1: {'EPC1', 'EPC2'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PS8_11: {'EPC1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PS8_1: {'EPC1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PS8_2: {'EPC1', 'EPC2'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PS8_5: {'EPC1', 'EPC2'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PS9_2: {'EPC1', 'EPC2'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for PS9_3: {'EPC1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for ULC1_3: {'EPC1', 'EPC2'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for ULC2_3: {'EPC1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for ULC3_3: {'EPC1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Found DCS controllers for ULC4_3: {'EPC1'}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Available DCS controllers: {'FL2074_1': {'ESTOP1'}, 'FL2078_1': {'ESTOP1'}, 'FL2086_1': {'ESTOP1'}, 'FL2090_1': {'ESTOP1'}, 'FL2094_1': {'ESTOP1'}, 'FL4066_1': {'ESTOP1'}, 'FL4070_1': {'ESTOP1'}, 'FL4074_1': {'ESTOP1'}, 'FL4078_1': {'ESTOP1'}, 'FL4082_1': {'ESTOP1'}, 'PRS1_6': {'EPC1', 'EPC2'}, 'PRS2_1': {'EPC1', 'EPC2'}, 'PS8_11': {'EPC1'}, 'PS8_1': {'EPC1'}, 'PS8_2': {'EPC1', 'EPC2'}, 'PS8_5': {'EPC1', 'EPC2'}, 'PS9_2': {'EPC1', 'EPC2'}, 'PS9_3': {'EPC1'}, 'ULC1_3': {'EPC1', 'EPC2'}, 'ULC2_3': {'EPC1'}, 'ULC3_3': {'EPC1'}, 'ULC4_3': {'EPC1'}}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Zone 05-01 candidates: ['ULC1_1', 'ULC1_2', 'ULC1_3', 'ULC2_1', 'ULC2_2', 'ULC2_3', 'UL3_1', 'UL3_2', 'UL3_3', 'UL4_1', 'UL4_2', 'UL4_3', 'PS8_1', 'PS8_2', 'PRS2_1']
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base UL3_1 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base UL3_2 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base UL3_3 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base UL4_1 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base UL4_2 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base UL4_3 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base ULC1_1 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base ULC1_2 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base ULC2_1 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base ULC2_2 in zone 05-01
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: rung
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Zone 05-02 candidates: ['PS8_4', 'PS8_5']
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base PS8_4 in zone 05-02
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: rung
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Zone 05-03 candidates: ['PS9_2', 'PS9_3']
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: rung
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Zone 05-04 candidates: ['PS8_11']
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: rung
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Zone 05-05 candidates: ['PRS1_6', 'PRS1_7']
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] No DCS controllers found for base PRS1_7 in zone 05-05
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: rung
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: zones
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: estops
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: estops
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Safety routine generation results: {'inputs': True, 'outputs': True, 'resets': True, 'zones': True, 'estops': True}
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag map with 29 tags
[14:18:50] [INFO] [logging_config.py:126:_log_with_context] Routines created (6): MainRoutine, R010_INPUTS, R011_OUTPUTS, R012_RESETS, R020_ESTOPS, R030_ZONES
[14:18:50] [INFO] [logging_config.py:126:_log_with_context] - R010_INPUTS: 65 rungs | example: XIC(Local:7:I.Pt02.Status)XIC(Local:7:I.Pt03.Status)OTE(MCM_EPB_STATUS);
[14:18:50] [INFO] [logging_config.py:126:_log_with_context] - R011_OUTPUTS: 5 rungs | example: XIC(EStop_MCM_OK)XIC(EStop_05_01_OK)[OTE(PRS2_1_VFD1:SO.STOOutput),OTE(PS8_1_VFD1:SO.STOOutput),OTE(PS8_2_VFD1:SO.STOOutput),OTE(ULC1_1_VFD1:SO.STOOutput),OT...
[14:18:50] [INFO] [logging_config.py:126:_log_with_context] - R012_RESETS: 18 rungs | example: [XIC(SFT_PRS1_6_S1_PB) ,XIC(SFT_MCM_S_PB)]OTE(RST_PRS1_6_EPC1_ESTOP);
[14:18:50] [INFO] [logging_config.py:126:_log_with_context] - R030_ZONES: 6 rungs | example: XIC(PRS2_1_EPC1_DCS_CTRL.O1)XIC(PRS2_1_EPC2_DCS_CTRL.O1)XIC(PS8_1_EPC1_DCS_CTRL.O1)XIC(PS8_2_EPC1_DCS_CTRL.O1)XIC(PS8_2_EPC2_DCS_CTRL.O1)XIC(ULC1_3_EPC1_DCS_...
[14:18:50] [INFO] [logging_config.py:126:_log_with_context] - R020_ESTOPS: 29 rungs | example: DCS(MCM_EPB_DCS_CTRL,EMERGENCY STOP,EQUIVALENT - ACTIVE HIGH,500,MANUAL,AUTOMATIC,Local:7:I.Pt02.Data,Local:7:I.Pt03.Data,MCM_EPB_STATUS,SFT_MCM_S_PB);
[14:18:50] [INFO] [logging_config.py:126:_log_with_context] - MainRoutine: 1 rungs | example: [JSR(R010_INPUTS,0) ,JSR(R011_OUTPUTS,0) ,JSR(R012_RESETS,0) ,JSR(R020_ESTOPS,0) ,JSR(R030_ZONES,0) ];
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Successfully completed ModernSafetyProgramGenerator generation
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Written ModernSafetyProgramGenerator to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/SafetyProgram_Generated.L5X
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] [SUCCESS] SafetyProgram written to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/SafetyProgram_Generated.L5X
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Generating MainProgram L5X...
[14:18:50] [WARNING] [logging_config.py:128:_log_with_context] LimitedMainProgramGenerator is deprecated; using ModernMainProgramGenerator
[14:18:50] [INFO] [logging_config.py:128:_log_with_context] Starting ModernMainProgramGenerator generation
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Creating MainProgram XML structure
[14:18:50] [DEBUG] [logging_config.py:128:_log_with_context] Adding controller tags...
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: subsystem key
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: heuristic best match
[14:18:50] [DEBUG] [logging_config.py:126:_log_with_context] Zones: loaded
[14:18:51] [DEBUG] [logging_config.py:126:_log_with_context] Extracting PMM data
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Data: PMM entries=2
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM processing PDP14_PMM1
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM PDP14_PMM1 DPM=VSD_DPM3
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM PDP14_PMM1 PWM fault IO PDP14_FIO1:I.Pt12.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM PDP14_PMM1 configuration stored
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM processing PDP11_PMM1
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM PDP11_PMM1 DPM=VSB_DPM2
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM PDP11_PMM1 PWM fault IO PDP11_FIO1:I.Pt12.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] PMM PDP11_PMM1 configuration stored
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Data: PMM configs=2
[14:18:51] [DEBUG] [logging_config.py:126:_log_with_context] Extracting CB_MONITOR data
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Data: CB PDPs=2
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] CB_MONITOR PDP11: CBs=26 FIOs=2
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] CB_MONITOR PDP11: configured CBs=26 positions=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26] fault=PDP11_FIO1:I.ConnectionFaulted
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] CB_MONITOR PDP14: CBs=26 FIOs=2
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] CB_MONITOR PDP14: configured CBs=26 positions=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26] fault=PDP14_FIO1:I.ConnectionFaulted
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Data: CB configs=2
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] Tags created: total=512 | standard=57 safety=118 dcs=29 modules=300
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Added 512 controller tags
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Generating main program routines...
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: mcm
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: mcm
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: rack
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: rack
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: dpm
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: dpm
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: fiom
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: fiom
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: apf
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: apf
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: flow_ctrl
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: flow_ctrl
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: estop_check
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: estop_check
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: encoder
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: encoder
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: safety_tag_map
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Safety tag map: RST data has 29 rows
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: MCM05 -> Local:5:I.Data.0
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PRS1_6_S1_PB -> PRS1_4_FIO1:I.Pt12.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PRS1_6_S2_PB -> PRS1_4_FIO1:I.Pt14.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_11_S1_PB -> PS8_11_FIO1:I.Pt10.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_11_CH3_S1_PB -> PS8_11_FIO2:I.Pt06.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PRS2_1_S1_PB -> PS8_1_FIO1:I.Pt06.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PRS2_1_S2_PB -> PS8_1_FIO1:I.Pt08.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: ULC3_3_SS1_SPB -> PS8_1_FIO2:I.Pt04.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS9_2_S1_PB -> PS8_5_FIO1:I.Pt10.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS9_2_S2_PB -> PS8_5_FIO1:I.Pt12.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_5_S1_PB -> PS8_5_FIO1:I.Pt02.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_5_S2_PB -> PS8_5_FIO1:I.Pt04.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS9_3CH1_S1_PB -> PS9_3_FIO1:I.Pt08.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS9_3_S1_PB -> PS9_3_FIO2:I.Pt06.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS9_3CH3_S1_PB -> PS9_3_FIO2:I.Pt08.Data
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_11_CH2_S1_PB -> PS8_11_FIOH1:I.ProcessDataIn.Connector_4_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_11_CH4_S1_PB -> PS8_11_FIOH1:I.ProcessDataIn.Connector_2_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_11_CH1_S1_PB -> PS8_11_FIOH1:I.ProcessDataIn.Connector_3_B_Pin_2
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_1_SS1_SPB -> PS8_1_FIOH1:I.ProcessDataIn.Connector_8_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: ULC1_3_SS1_SPB -> PS8_1_FIOH2:I.ProcessDataIn.Connector_7_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: ULC1_3_SS2_SPB -> PS8_1_FIOH2:I.ProcessDataIn.Connector_3_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: ULC2_3_SS1_SPB -> PS8_1_FIOH2:I.ProcessDataIn.Connector_8_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: ULC4_3_SS1_SPB -> PS8_1_FIOH3:I.ProcessDataIn.Connector_7_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_2_S1_PB -> PS8_1_FIOH3:I.ProcessDataIn.Connector_3_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_2_S2_PB -> PS8_1_FIOH3:I.ProcessDataIn.Connector_1_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_4_S1_PB -> PS8_4_FIOH1:I.ProcessDataIn.Connector_3_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS8_4_S2_PB -> PS8_4_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS9_3CH2_S1_PB -> PS9_3_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Added safety tag mapping: PS9_3CH4_S1_PB -> PS9_3_FIOH2:I.ProcessDataIn.Connector_5_B_Pin_2
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Safety tag map: Generating 29 rungs
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 1: XIC(Local:5:I.Data.0)OTE(MCM05);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 2: XIC(PRS1_4_FIO1:I.Pt12.Data)OTE(PRS1_6_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 3: XIC(PRS1_4_FIO1:I.Pt14.Data)OTE(PRS1_6_S2_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 4: XIC(PS8_1_FIO1:I.Pt06.Data)OTE(PRS2_1_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 5: XIC(PS8_1_FIO1:I.Pt08.Data)OTE(PRS2_1_S2_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 6: XIC(PS8_1_FIOH1:I.ProcessDataIn.Connector_8_A_Pin_4)OTE(PS8_1_SS1_SPB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 7: XIC(PS8_1_FIOH3:I.ProcessDataIn.Connector_3_A_Pin_4)OTE(PS8_2_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 8: XIC(PS8_1_FIOH3:I.ProcessDataIn.Connector_1_A_Pin_4)OTE(PS8_2_S2_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 9: XIC(PS8_4_FIOH1:I.ProcessDataIn.Connector_3_A_Pin_4)OTE(PS8_4_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 10: XIC(PS8_4_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4)OTE(PS8_4_S2_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 11: XIC(PS8_5_FIO1:I.Pt02.Data)OTE(PS8_5_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 12: XIC(PS8_5_FIO1:I.Pt04.Data)OTE(PS8_5_S2_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 13: XIC(PS8_11_FIOH1:I.ProcessDataIn.Connector_3_B_Pin_2)OTE(PS8_11_CH1_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 14: XIC(PS8_11_FIOH1:I.ProcessDataIn.Connector_4_A_Pin_4)OTE(PS8_11_CH2_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 15: XIC(PS8_11_FIO2:I.Pt06.Data)OTE(PS8_11_CH3_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 16: XIC(PS8_11_FIOH1:I.ProcessDataIn.Connector_2_A_Pin_4)OTE(PS8_11_CH4_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 17: XIC(PS8_11_FIO1:I.Pt10.Data)OTE(PS8_11_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 18: XIC(PS8_5_FIO1:I.Pt10.Data)OTE(PS9_2_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 19: XIC(PS8_5_FIO1:I.Pt12.Data)OTE(PS9_2_S2_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 20: XIC(PS9_3_FIO2:I.Pt06.Data)OTE(PS9_3_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 21: XIC(PS9_3_FIO1:I.Pt08.Data)OTE(PS9_3CH1_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 22: XIC(PS9_3_FIOH1:I.ProcessDataIn.Connector_1_A_Pin_4)OTE(PS9_3CH2_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 23: XIC(PS9_3_FIO2:I.Pt08.Data)OTE(PS9_3CH3_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 24: XIC(PS9_3_FIOH2:I.ProcessDataIn.Connector_5_B_Pin_2)OTE(PS9_3CH4_S1_PB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 25: XIC(PS8_1_FIOH2:I.ProcessDataIn.Connector_7_A_Pin_4)OTE(ULC1_3_SS1_SPB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 26: XIC(PS8_1_FIOH2:I.ProcessDataIn.Connector_3_A_Pin_4)OTE(ULC1_3_SS2_SPB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 27: XIC(PS8_1_FIOH2:I.ProcessDataIn.Connector_8_A_Pin_4)OTE(ULC2_3_SS1_SPB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 28: XIC(PS8_1_FIO2:I.Pt04.Data)OTE(ULC3_3_SS1_SPB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generated rung 29: XIC(PS8_1_FIOH3:I.ProcessDataIn.Connector_7_A_Pin_4)OTE(ULC4_3_SS1_SPB);
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Safety tag map: Generated 29 total rungs
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: safety_tag_map
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: station_jr_pb
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: station_jr_pb
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: station_s_pb
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: station_s_pb
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: station_ss_pb
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: station_ss_pb
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: station_epc
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: station_epc
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: jpe
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: jpe
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: pmm
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: pmm
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: cb_monitor
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: cb_monitor
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: belt_tracking
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: belt_tracking
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Generating routine: main_routine
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Generating MainRoutine with JSR calls
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated MainRoutine
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully generated routine: main_routine
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Main routine generation results: {'mcm': True, 'rack': True, 'dpm': True, 'fiom': True, 'apf': True, 'flow_ctrl': True, 'estop_check': True, 'encoder': True, 'safety_tag_map': True, 'station_jr_pb': True, 'station_s_pb': True, 'station_ss_pb': True, 'station_epc': True, 'jpe': True, 'pmm': True, 'cb_monitor': True, 'belt_tracking': True, 'main_routine': True}
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] Routines created (18): MainRoutine, R010_MCM, R011_RACK, R020_DPM, R030_FIOM, R040_APF, R050_FLOW_CTRL, R060_PMM, R070_CB_MONITOR, R080_ENCODER, R090_STATION_JR_PB, R095_STATION_S_PB, R096_STATION_SS_PB, R097_STATION_EPC, R100_JPE, R120_ESTOP_CHECK, R130_SAFETY_TAG_MAP, ZZZ_BeltTracking
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R010_MCM: 2 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R011_RACK: 2 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R020_DPM: 11 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R030_FIOM: 58 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R040_APF: 28 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R050_FLOW_CTRL: 32 rungs | example: XIC(PRS1_4_VFD1.CTRL.STS.Enabled)OTE(PRS1_3_VFD1.CTRL.CMD.Interlock);
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R120_ESTOP_CHECK: 28 rungs | example: XIO(FL2074_2_VFD1:SI.In00Data)XIO(FL2074_2_VFD1:SO.Out00Output)XIO(FL2074_2_VFD1:SO.STOOutput)XIC(FL2078_2_VFD1:SO.Out00Output)XIC(FL2078_2_VFD1:SO.STOOutput...
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R080_ENCODER: 13 rungs | example: AOI_ENCODER(PS8_11_ENCODER.AOI,PS8_11_ENCODER.HMI,PS8_11_ENCODER.CTRL,PS8_11_VFD1.CTRL,NO_UPSTREAM,NO_DOWNSTREAM,PS8_11_VFD1:I.In_1,PS8_11_VFD1:I.ConnectionF...
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R130_SAFETY_TAG_MAP: 30 rungs | example: XIC(Local:5:I.Data.0)OTE(MCM_S_PB);
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R090_STATION_JR_PB: 75 rungs | example: AOI_STATION_JR_PB(FL2074_2_JR1_PB.AOI,FL2074_2_JR1_PB.HMI,FL2074_2_JR1_PB.CTRL,NO_PARTNER,FL2074_FIOH1:I.ProcessDataIn.Connector_6_A_Pin_4,FL2074_FIOH1:O.Pro...
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R095_STATION_S_PB: 14 rungs | example: AOI_STATION_S_PB(PRS1_6_S1_PB_STATION.AOI,PRS1_6_S1_PB_STATION.HMI,PRS1_6_S1_PB_STATION.CTRL,PRS1_6_VFD1.CTRL,PRS1_4_FIO1:I.Pt12.Data,PRS1_4_FIO1:O.Pt13.Data);
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R096_STATION_SS_PB: 6 rungs | example: AOI_STATION_SS_PB(PS8_1_SS1_STATION.AOI,PS8_1_SS1_STATION.HMI,PS8_1_SS1_STATION.CTRL,PS8_1_VFD1.CTRL,PS8_1_FIOH1:I.ConnectionFaulted,PS8_1_FIOH1:I.ProcessDat...
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R097_STATION_EPC: 18 rungs | example: AOI_STATION_EPC(PRS1_6_EPC1_STATION.AOI,MCM.CTRL,PRS1_6_EPC1_STATION.HMI,PRS1_6_S1_PB_STATION.CTRL,PRS1_6_VFD1:I.ConnectionFaulted,PRS1_6_VFD1:SI.In00Data,PR...
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R100_JPE: 42 rungs | example: AOI_JPE(PRS1_2A_JPE1.AOI,PRS1_2A_JPE1.HMI,PRS1_2A_JPE1.CTRL,PRS1_2A_VFD1.CTRL,PRS1_2A_JR1_PB.CTRL,PRS1_2A_VFD1:I.ConnectionFaulted,PRS1_2A_VFD1:I.In_2,YES,PR...
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R060_PMM: 3 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - R070_CB_MONITOR: 3 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - ZZZ_BeltTracking: 35 rungs | example: NOP();
[14:18:51] [INFO] [logging_config.py:126:_log_with_context] - MainRoutine: 1 rungs | example: [JSR(R010_MCM,0) ,JSR(R011_RACK,0) ,JSR(R020_DPM,0) ,JSR(R030_FIOM,0) ,JSR(R040_APF,0) ,JSR(R050_FLOW_CTRL,0) ,JSR(R120_ESTOP_CHECK,0) ,JSR(R080_ENCODER,0) ,...
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Successfully completed ModernMainProgramGenerator generation
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Written ModernMainProgramGenerator to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/MainProgram_Generated.L5X
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] [SUCCESS] MainProgram written to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/MainProgram_Generated.L5X
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] Generating safety tag mapping...
[14:18:51] [DEBUG] [logging_config.py:128:_log_with_context] Creating MappingWriter wrapper
[14:18:51] [DEBUG] [logging_config.py:126:_log_with_context] Creating DataLoader instance
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] [SUCCESS] Safety tag mapping written to /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/SafetyTagMapping.txt
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] - Safety tags: 29
[14:18:51] [INFO] [logging_config.py:128:_log_with_context] === All artifacts generated successfully! ===
{"level": "INFO", "message": "Routine generation completed successfully", "timestamp": "2025-09-01T14:18:51.555695", "module": "__main__", "file": "logging_config.py", "line": 128, "function": "_log_with_context", "pathname": "/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/Routines Generator/src/logging_config.py"}
=== Step 3: IO Tree Generator stdout ===
Enhanced MCM Generator
- Project: MTN6_MCM05
- Excel: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/PLC Data Generator/DESC_IP_MERGED.xlsx
- Boilerplate: MTN6_boilerplate
- Mode: Single file
--------------------------------------------------
Created 55 FIOH modules based on TERM analysis
Found 57 IOLM modules
Found 137 Beacon modules
Found 10 DPM modules
Found 2 PMM modules
WARNING: 35 unknown modules found
1. FL2074_2_VFD1 - 35S_6D4_P111 (11.200.1.65)
2. FL2078_2_VFD1 - 35S_6D4_P111 (11.200.1.67)
3. FL2086_2_VFD1 - 35S_6D4_P111 (11.200.1.69)
4. FL2090_2_VFD1 - 35S_6D4_P111 (11.200.1.71)
5. FL2094_2_VFD1 - 35S_6D4_P111 (11.200.1.73)
6. FL4066_2_VFD1 - 35S_6D4_P111 (11.200.1.83)
7. FL4070_2_VFD1 - 35S_6D4_P111 (11.200.1.81)
8. FL4074_2_VFD1 - 35S_6D4_P111 (11.200.1.79)
9. FL4078_2_VFD1 - 35S_6D4_P111 (11.200.1.77)
10. FL4082_2_VFD1 - 35S_6D4_P111 (11.200.1.75)
11. PRS1_2A_VFD1 - 35S_6D4_P111 (11.200.1.31)
12. PRS1_2B_VFD1 - 35S_6D3_P101 (11.200.1.32)
13. PRS1_3_VFD1 - 35S_6D5_P111 (11.200.1.33)
14. PRS1_4_VFD1 - 35S_6D3_P101 (11.200.1.34)
15. PRS1_6_VFD1 - 35S_6D2_P101 (11.200.1.35)
16. PRS1_7_MDR1 - ITOH ()
17. PRS2_1_VFD1 - 35S_6D5_P111 (11.200.1.30)
18. PS8_11_VFD1 - 35S_6D6_P111 (11.200.1.37)
19. PS8_1_VFD1 - 35S_6D5_P111 (11.200.1.51)
20. PS8_2_VFD1 - 35S_6D6_P111 (11.200.1.52)
21. PS8_4_VFD1 - 25B_D024N104 (11.200.1.53)
22. PS8_5_VFD1 - 25B_D024N104 (11.200.1.54)
23. PS8_6_VFD1 - 35S_6D4_P111 (11.200.1.55)
24. PS8_8_VFD1 - 35S_6D5_P111 (11.200.1.56)
25. PS8_9_VFD1 - 25B_D024N104 (11.200.1.36)
26. PS9_2_VFD1 - 35S_6D5_P111 (11.200.1.57)
27. PS9_3_VFD1 - 35S_6D5_P111 (11.200.1.58)
28. ULC1_1_VFD1 - PIONEER (11.200.1.43)
29. ULC1_3_VFD1 - 35S_6D2_P101 (11.200.1.44)
30. ULC2_1_VFD1 - PIONEER (11.200.1.45)
31. ULC2_3_VFD1 - 35S_6D2_P101 (11.200.1.46)
32. ULC3_1_VFD1 - PIONEER (11.200.1.47)
33. ULC3_3_VFD1 - 35S_6D2_P101 (11.200.1.48)
34. ULC4_1_VFD1 - PIONEER (11.200.1.49)
35. ULC4_3_VFD1 - 35S_6D2_P101 (11.200.1.50)
Created 57 IOLM modules with boilerplate selection:
Device 'PDP11_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PDP11_FIO1 (FIO PDP_FIO): Using variant boilerplate PDP_FIO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIO_Module.L5X
Device 'PDP14_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PDP14_FIO1 (FIO PDP_FIO): Using variant boilerplate PDP_FIO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIO_Module.L5X
Device 'PRS1_1ACH_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PRS1_1ACH_FIO1 (FIO D2CMaster): Using module-specific boilerplate PRS1_1ACH_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PRS1_1ACH_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PRS1_1ACH_FIO1_Module.L5X
Device 'PRS1_1BCH_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PRS1_1BCH_FIO1 (FIO D2CMaster): Using module-specific boilerplate PRS1_1BCH_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PRS1_1BCH_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PRS1_1BCH_FIO1_Module.L5X
Device 'PRS1_4_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PRS1_4_FIO1 (FIO D2CMaster): Using module-specific boilerplate PRS1_4_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PRS1_4_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PRS1_4_FIO1_Module.L5X
Device 'PS8_11_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS8_11_FIO1 (FIO D2CMaster): Using module-specific boilerplate PS8_11_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_11_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_11_FIO1_Module.L5X
Device 'PS8_11_FIO2' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS8_11_FIO2 (FIO D2CMaster): Using module-specific boilerplate PS8_11_FIO2_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_11_FIO2_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_11_FIO2_Module.L5X
Device 'PS8_1_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS8_1_FIO1 (FIO PalletBuildMaster): Using module-specific boilerplate PS8_1_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_1_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_1_FIO1_Module.L5X
Device 'PS8_1_FIO2' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS8_1_FIO2 (FIO D2CMaster): Using module-specific boilerplate PS8_1_FIO2_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_1_FIO2_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_1_FIO2_Module.L5X
Device 'PS8_5_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS8_5_FIO1 (FIO D2CMaster): Using module-specific boilerplate PS8_5_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_5_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_5_FIO1_Module.L5X
Device 'PS8_9_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS8_9_FIO1 (FIO D2CMaster): Using module-specific boilerplate PS8_9_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_9_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS8_9_FIO1_Module.L5X
Device 'PS9_3_FIO1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS9_3_FIO1 (FIO D2CMaster): Using module-specific boilerplate PS9_3_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS9_3_FIO1_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS9_3_FIO1_Module.L5X
Device 'PS9_3_FIO2' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
PS9_3_FIO2 (FIO D2CMaster): Using module-specific boilerplate PS9_3_FIO2_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS9_3_FIO2_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PS9_3_FIO2_Module.L5X
Device 'VSB_DPM1_FIO1' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO1 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM1_FIO2' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO2 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM1_FIO3' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO3 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM1_FIO4' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO4 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM1_FIO5' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO5 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM1_FIO6' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO6 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM1_FIO7' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO7 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM1_FIO8' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM1_FIO8 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM2_FIO1' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO1 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM2_FIO2' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO2 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM2_FIO3' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO3 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM2_FIO4' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO4 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM2_FIO5' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO5 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM2_FIO6' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO6 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM2_FIO7' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO7 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM2_FIO8' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM2_FIO8 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM3_FIO1' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM3_FIO1 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM3_FIO2' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM3_FIO2 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM3_FIO3' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM3_FIO3 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSB_DPM3_FIO4' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM3_FIO4 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM3_FIO6' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM3_FIO6 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSB_DPM3_FIO8' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSB_DPM3_FIO8 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM1_FIO1' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO1 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM1_FIO2' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO2 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM1_FIO3' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO3 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM1_FIO4' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO4 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM1_FIO5' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO5 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM1_FIO6' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO6 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM1_FIO7' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO7 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM1_FIO8' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM1_FIO8 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM2_FIO1' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO1 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM2_FIO2' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO2 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM2_FIO3' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO3 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM2_FIO4' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO4 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM2_FIO5' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO5 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM2_FIO6' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO6 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM2_FIO7' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO7 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM2_FIO8' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM2_FIO8 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM3_FIO1' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM3_FIO1 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM3_FIO2' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM3_FIO2 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM3_FIO3' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM3_FIO3 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM3_FIO4' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM3_FIO4 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Device 'VSD_DPM3_FIO5' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM3_FIO5 (FIO PalletBuildMaster): Using variant boilerplate PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PalletBuildMaster_Module.L5X
Device 'VSD_DPM3_FIO6' matched pattern 'VS', assigned to: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
VSD_DPM3_FIO6 (FIO D2CMaster): Using variant boilerplate D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/D2CMaster_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/ZMX_Module.L5X
Device 'FL2074_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL2078_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL2086_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL2090_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL2094_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL4066_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL4070_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL4074_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL4078_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Device 'FL4082_4_EX1' matched no patterns, using fallback parent: SLOT2_EN4TR (Slot 2, IP 11.200.1.1)
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/EXTENDO_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PMM_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PMM_Module.L5X
FL2074_FIOH1: Detected 'FL' in name, using FL_Hub boilerplate FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
FL2086_FIOH1: Detected 'FL' in name, using FL_Hub boilerplate FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
FL2090_FIOH1: Detected 'FL' in name, using FL_Hub boilerplate FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
FL4066_FIOH1: Detected 'FL' in name, using FL_Hub boilerplate FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
FL4074_FIOH1: Detected 'FL' in name, using FL_Hub boilerplate FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
FL4082_FIOH1: Detected 'FL' in name, using FL_Hub boilerplate FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/FL_Hub_Module.L5X
PDP11_FIOH1 (FIOH PDP_FIOH): Using variant boilerplate PDP_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIOH_Module.L5X
PDP14_FIOH1 (FIOH PDP_FIOH): Using variant boilerplate PDP_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/PDP_FIOH_Module.L5X
PS8_11_FIOH1 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
PS8_11_FIOH2 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
PS8_1_FIOH1 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
PS8_1_FIOH2 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
PS8_1_FIOH3 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
PS8_4_FIOH1 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
PS9_3_FIOH1 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
PS9_3_FIOH2 (FIOH Chute_Chute): Using variant boilerplate Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Chute_Chute_Hub_Module.L5X
S012004_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012008_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012012_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012016_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012020_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012024_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012028_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012032_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012034_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012040_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012044_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012048_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012052_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012056_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012060_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012064_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012066_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012072_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012080_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012084_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S012096_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014004_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014008_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014012_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014016_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014020_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014024_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014026_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014032_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014036_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014040_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014044_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014048_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014052_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014056_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014058_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014064_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014072_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
S014080_FIOH1 (FIOH Sorter): Using variant boilerplate Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/Sorter_FIOH_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/SLOT5_IB16_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/SLOT7_IB16S_Module.L5X
Successfully loaded boilerplate: MTN6_boilerplate/SLOT6_OB16E_Module.L5X
No EN4TR modules registered for creation
Importing AOIs/DataTypes from base: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/IO Tree Configuration Generator/BaseProgram.L5X
Archived old L5X: MTN6_MCM05_20250831_222608.L5X
Programs already exist (2 programs found), skipping empty program creation
OK: Generated project: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/MTN6_MCM05_20250901_141857.L5X
Single file generation complete
- ['/mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/MTN6_MCM05_20250901_141857.L5X']
=== Step 3 Batch Script Creation ===
Creating project folder compilation for: MTN6_MCM05
Source L5X: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05/MTN6_MCM05_20250901_141857.L5X
Project directory: /mnt/c/Users/ilia.gurielidze/Projects/PLC Generation/generated_projects/MTN6_MCM05
Generated batch file: compile_MTN6_MCM05.bat
SUCCESS: Project compilation ready!
To compile on Windows:
cd "C:\\Users\\ilia.gurielidze\\Projects\\PLC Generation\\generated_projects\\MTN6_MCM05"
compile_MTN6_MCM05.bat