From e06a57dbc27f93b20d5f73dda410ab7aa32777e3 Mon Sep 17 00:00:00 2001 From: ilia gu Date: Thu, 14 Aug 2025 15:44:05 +0400 Subject: [PATCH] added config to routines generator --- .../controller_builder.cpython-312.pyc | Bin 28064 -> 32241 bytes .../enhanced_mcm_generator.cpython-312.pyc | Bin 54299 -> 0 bytes .../routine_generator.cpython-312.pyc | Bin 11515 -> 0 bytes .../controller_builder.py | 100 + .../enhanced_mcm_generator.py | 99 +- .../test_sio_implementation.py | 191 - .../compilation_manager.cpython-312.pyc | Bin 17622 -> 17622 bytes ..._MCM05_CHUTE_LOAD.bat => compile_mtn6.bat} | 24 +- PLC Data Generator/DESC_IP_MERGED.xlsx | Bin 151859 -> 255997 bytes PLC Data Generator/MCM01_DESC_IP_MERGED.xlsx | Bin 387970 -> 397863 bytes PLC Data Generator/MCM02_DESC_IP_MERGED.xlsx | Bin 0 -> 35213 bytes PLC Data Generator/MCM02_OUTPUT.csv | 410 ++ PLC Data Generator/MCM05_DESC_IP_MERGED.xlsx | Bin 282942 -> 282942 bytes PLC Data Generator/MCM05_OUTPUT.csv | 3363 ++++++++--------- .../__pycache__/classifiers.cpython-312.pyc | Bin 3072 -> 3138 bytes PLC Data Generator/classifiers.py | 4 +- ...ssignment_MTN6_MCM01_COMPLETE_UL1_UL6.xlsm | Bin 0 -> 523979 bytes PLC Data Generator/data/SAT9_MCM01.xlsx | Bin 0 -> 19354 bytes PLC Data Generator/data/SAT9_MCM02.xlsx | Bin 0 -> 19668 bytes ...gnment_MTN6_MCM05_COMPLETE_CHUTE_LOAD.xlsm | Bin 165 -> 0 bytes PLC Data Generator/~$DESC_IP_MERGED.xlsx | Bin 165 -> 0 bytes Routines Generator/DESC_IP_MERGED copy.xlsx | Bin 147978 -> 0 bytes Routines Generator/DESC_IP_MERGED.xlsx | Bin 151859 -> 255997 bytes Routines Generator/SafetyTagMapping.txt | 2 +- .../SafetyTagMapping_Limited.txt | 1 - .../UDTs_Tags/CB_MONITOR_Boilerplate.xml | 105 + .../UDTs_Tags/D2C_Boilerplate.xml | 54 + .../UDTs_Tags/EXTENDO_Boilerplate.xml | 60 + .../UDTs_Tags/FPE_Boilerplate.xml | 45 + .../UDTs_Tags/JPE_Boilerplate.xml | 47 + .../UDTs_Tags/MCM_Boilerplate.xml | 142 + .../UDTs_Tags/PB_CHUTE_Boilerplate.xml | 62 + .../UDTs_Tags/PMM_Boilerplate.xml | 26 + .../UDTs_Tags/RACK_Boilerplate.xml | 25 + .../STATION_JR_CHUTE_Boilerplate.xml | 35 + .../UDTs_Tags/STATION_JR_PB_Boilerplate.xml | 62 + .../complete_workflow.cpython-312.pyc | Bin 0 -> 17488 bytes Routines Generator/complete_workflow.py | 370 +- Routines Generator/generate_all.py | 178 +- Routines Generator/generate_fiom.py | 35 - Routines Generator/generate_main_with_dpm.py | 142 - Routines Generator/generate_safety_only.py | 136 - Routines Generator/plc_generate.py | 5 +- .../base_generator.cpython-312.pyc | Bin 0 -> 18101 bytes .../src/__pycache__/cli.cpython-312.pyc | Bin 0 -> 9014 bytes .../src/__pycache__/config.cpython-312.pyc | Bin 8011 -> 16656 bytes .../src/__pycache__/container.cpython-312.pyc | Bin 9066 -> 9110 bytes .../__pycache__/data_loader.cpython-312.pyc | Bin 13731 -> 62769 bytes .../__pycache__/plugin_system.cpython-312.pyc | Bin 12816 -> 13189 bytes .../__pycache__/unified_cli.cpython-312.pyc | Bin 11411 -> 9293 bytes .../__pycache__/xml_builder.cpython-312.pyc | Bin 0 -> 10600 bytes Routines Generator/src/base_generator.py | 559 +-- Routines Generator/src/cli.py | 37 +- Routines Generator/src/config.py | 185 +- Routines Generator/src/container.py | 39 +- Routines Generator/src/data_loader.py | 1151 +++++- .../__pycache__/main_program.cpython-312.pyc | Bin 18250 -> 33547 bytes .../safety_program.cpython-312.pyc | Bin 19560 -> 24496 bytes .../src/generators/main_program.py | 371 +- .../src/generators/safety_program.py | 223 +- Routines Generator/src/plugin_system.py | 11 +- .../routines/__pycache__/apf.cpython-312.pyc | Bin 4579 -> 5644 bytes .../__pycache__/cb_monitor.cpython-312.pyc | Bin 3771 -> 3870 bytes .../__pycache__/d2c_chute.cpython-312.pyc | Bin 0 -> 7425 bytes .../routines/__pycache__/dpm.cpython-312.pyc | Bin 4801 -> 6329 bytes .../__pycache__/estop_check.cpython-312.pyc | Bin 9111 -> 9473 bytes .../__pycache__/estops.cpython-312.pyc | Bin 5927 -> 7836 bytes .../__pycache__/extendo.cpython-312.pyc | Bin 3852 -> 5619 bytes .../routines/__pycache__/fioh.cpython-312.pyc | Bin 6968 -> 8442 bytes .../routines/__pycache__/fiom.cpython-312.pyc | Bin 6303 -> 7777 bytes .../__pycache__/flow_control.cpython-312.pyc | Bin 6134 -> 9016 bytes .../routines/__pycache__/fpe.cpython-312.pyc | Bin 0 -> 4076 bytes .../__pycache__/inputs.cpython-312.pyc | Bin 6219 -> 7642 bytes .../routines/__pycache__/jpe.cpython-312.pyc | Bin 6132 -> 4116 bytes .../main_routine_plugin.cpython-312.pyc | Bin 2791 -> 6724 bytes .../routines/__pycache__/mcm.cpython-312.pyc | Bin 0 -> 2841 bytes .../__pycache__/outputs.cpython-312.pyc | Bin 5747 -> 8540 bytes .../__pycache__/pb_chute.cpython-312.pyc | Bin 0 -> 4750 bytes .../routines/__pycache__/pmm.cpython-312.pyc | Bin 2181 -> 3712 bytes .../routines/__pycache__/rack.cpython-312.pyc | Bin 0 -> 2361 bytes .../__pycache__/resets.cpython-312.pyc | Bin 3697 -> 4833 bytes .../safety_tag_map.cpython-312.pyc | Bin 0 -> 3898 bytes .../__pycache__/speed_control.cpython-312.pyc | Bin 2986 -> 3163 bytes .../station_jr_chute.cpython-312.pyc | Bin 0 -> 4469 bytes .../__pycache__/station_jr_pb.cpython-312.pyc | Bin 3725 -> 4380 bytes .../__pycache__/zones.cpython-312.pyc | Bin 5937 -> 8582 bytes Routines Generator/src/routines/apf.py | 116 + Routines Generator/src/routines/cb_monitor.py | 83 + Routines Generator/src/routines/d2c_chute.py | 184 + Routines Generator/src/routines/dpm.py | 38 +- .../src/routines/estop_check.py | 127 +- Routines Generator/src/routines/estops.py | 38 +- Routines Generator/src/routines/extendo.py | 116 + Routines Generator/src/routines/fioh.py | 36 +- Routines Generator/src/routines/fiom.py | 36 +- .../src/routines/flow_control.py | 189 + Routines Generator/src/routines/fpe.py | 98 + Routines Generator/src/routines/inputs.py | 27 +- Routines Generator/src/routines/jpe.py | 100 + .../src/routines/main_routine_plugin.py | 80 +- Routines Generator/src/routines/mcm.py | 54 + Routines Generator/src/routines/outputs.py | 268 +- Routines Generator/src/routines/pb_chute.py | 116 + Routines Generator/src/routines/pmm.py | 80 + Routines Generator/src/routines/rack.py | 50 + Routines Generator/src/routines/resets.py | 33 +- .../src/routines/safety_tag_map.py | 77 + .../src/routines/speed_control.py | 64 + .../src/routines/station_jr_chute.py | 99 + .../src/routines/station_jr_pb.py | 100 + Routines Generator/src/routines/zones.py | 293 +- Routines Generator/src/unified_cli.py | 499 ++- Routines Generator/src/writers/__init__.py | 10 +- .../__pycache__/__init__.cpython-312.pyc | Bin 357 -> 291 bytes .../__pycache__/csv_writer.cpython-312.pyc | Bin 28767 -> 28761 bytes .../xml_tag_writer.cpython-312.pyc | Bin 22096 -> 42509 bytes Routines Generator/src/writers/csv_writer.py | 583 --- .../src/writers/xml_tag_writer.py | 574 ++- __pycache__/zones_config.cpython-312.pyc | Bin 5651 -> 5651 bytes generator_config.json | 288 +- workflow_state.md | 336 +- zones copy.json | 91 + zones.json | 334 ++ zones_config.py | 402 -- 124 files changed, 9135 insertions(+), 4783 deletions(-) delete mode 100644 IO Tree Configuration Generator/__pycache__/enhanced_mcm_generator.cpython-312.pyc delete mode 100644 IO Tree Configuration Generator/__pycache__/routine_generator.cpython-312.pyc delete mode 100644 IO Tree Configuration Generator/test_sio_implementation.py rename L5X2ACD Compiler/{compile_MTN6_MCM05_CHUTE_LOAD.bat => compile_mtn6.bat} (78%) create mode 100644 PLC Data Generator/MCM02_DESC_IP_MERGED.xlsx create mode 100644 PLC Data Generator/MCM02_OUTPUT.csv create mode 100644 PLC Data Generator/data/IO Assignment_MTN6_MCM01_COMPLETE_UL1_UL6.xlsm create mode 100644 PLC Data Generator/data/SAT9_MCM01.xlsx create mode 100644 PLC Data Generator/data/SAT9_MCM02.xlsx delete mode 100644 PLC Data Generator/data/~$IO Assignment_MTN6_MCM05_COMPLETE_CHUTE_LOAD.xlsm delete mode 100644 PLC Data Generator/~$DESC_IP_MERGED.xlsx delete mode 100644 Routines Generator/DESC_IP_MERGED copy.xlsx delete mode 100644 Routines Generator/SafetyTagMapping_Limited.txt create mode 100644 Routines Generator/UDTs_Tags/CB_MONITOR_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/D2C_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/EXTENDO_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/FPE_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/JPE_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/MCM_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/PB_CHUTE_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/PMM_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/RACK_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/STATION_JR_CHUTE_Boilerplate.xml create mode 100644 Routines Generator/UDTs_Tags/STATION_JR_PB_Boilerplate.xml create mode 100644 Routines Generator/__pycache__/complete_workflow.cpython-312.pyc delete mode 100644 Routines Generator/generate_fiom.py delete mode 100644 Routines Generator/generate_main_with_dpm.py delete mode 100644 Routines Generator/generate_safety_only.py create mode 100644 Routines Generator/src/__pycache__/base_generator.cpython-312.pyc create mode 100644 Routines Generator/src/__pycache__/cli.cpython-312.pyc create mode 100644 Routines Generator/src/__pycache__/xml_builder.cpython-312.pyc create mode 100644 Routines Generator/src/routines/__pycache__/d2c_chute.cpython-312.pyc create mode 100644 Routines Generator/src/routines/__pycache__/fpe.cpython-312.pyc create mode 100644 Routines Generator/src/routines/__pycache__/mcm.cpython-312.pyc create mode 100644 Routines Generator/src/routines/__pycache__/pb_chute.cpython-312.pyc create mode 100644 Routines Generator/src/routines/__pycache__/rack.cpython-312.pyc create mode 100644 Routines Generator/src/routines/__pycache__/safety_tag_map.cpython-312.pyc create mode 100644 Routines Generator/src/routines/__pycache__/station_jr_chute.cpython-312.pyc create mode 100644 Routines Generator/src/routines/apf.py create mode 100644 Routines Generator/src/routines/cb_monitor.py create mode 100644 Routines Generator/src/routines/d2c_chute.py create mode 100644 Routines Generator/src/routines/extendo.py create mode 100644 Routines Generator/src/routines/flow_control.py create mode 100644 Routines Generator/src/routines/fpe.py create mode 100644 Routines Generator/src/routines/jpe.py create mode 100644 Routines Generator/src/routines/mcm.py create mode 100644 Routines Generator/src/routines/pb_chute.py create mode 100644 Routines Generator/src/routines/pmm.py create mode 100644 Routines Generator/src/routines/rack.py create mode 100644 Routines Generator/src/routines/safety_tag_map.py create mode 100644 Routines Generator/src/routines/speed_control.py create mode 100644 Routines Generator/src/routines/station_jr_chute.py create mode 100644 Routines Generator/src/routines/station_jr_pb.py delete mode 100644 Routines Generator/src/writers/csv_writer.py create mode 100644 zones copy.json create mode 100644 zones.json delete mode 100644 zones_config.py diff --git a/IO Tree Configuration Generator/__pycache__/controller_builder.cpython-312.pyc b/IO Tree Configuration Generator/__pycache__/controller_builder.cpython-312.pyc index 50d08327f895cd9bc3bb5c8a630157d5b8399cc6..71b23528bc57a3ddfc7dc13f77cd4b90f3d11413 100644 GIT binary patch delta 6569 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 diff --git a/IO Tree Configuration Generator/__pycache__/enhanced_mcm_generator.cpython-312.pyc b/IO Tree Configuration Generator/__pycache__/enhanced_mcm_generator.cpython-312.pyc deleted file mode 100644 index 5a3131338c6fb1392f5b5b8302572cd33c8165ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54299 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 diff --git a/IO Tree Configuration Generator/__pycache__/routine_generator.cpython-312.pyc b/IO Tree Configuration Generator/__pycache__/routine_generator.cpython-312.pyc deleted file mode 100644 index 7ef7eb29e451789fe9b26615f406f308b38150e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11515 zcmeHNTWnNEnm&C$eK)qjSKwd>(8RPa1PCS}ag6a0e8ZO{I520LKF4;OzNOA_z&-YE zb~l=FMl(vXFJWgg8b-U)8WCxT6e-Np5anUeuC(eNceXtzu#0wi8EGG!IMR&Rm;L`b z*S6b)-Q;1l+5@hx%U@N0RsHpUU)4GP7!3Ltc)XFfr!)H*=HD@)KTa*OMj-MYBQO(; zU=!>~Tgo1{+nAJN!f8`;ToZ0u;+gQ!Uv`3pUq{lL@=kcEj5Fy=`6v7|?n(wy!HHlh zG!aULC&D(y&h#;Y`%Omh+_0;CPE^g=Bkb&tAn7}umc=O&lSP3W$;`@$w8-^|X%TWV zgqwuF(?i@C5k;;ilb%dW%|byUlQw01&wiuF=Np?&NL(r-%qB%HOERw~1X1D=rdCAL zYD(1#JCDb*v5SdhLQa4v>L^c(x}LsG^latCWFnPFgZk+yS|KgMn6b7bW@9)5T>s%$ zxXDBk8zq?(3i-4-k<0-{xzjSIDFc!Nu|#^9WMB$YTr4ecqp?X*p3`$Q25)3Jog-Isdew=UA z1#%<4KcH<6Mr;a;Bb5^=5#r9_m^>YEDC|%c%`TQyoF@};S#kC!Bss2Hvl_a!#2RPA z?Ibc2HrP^j!8YL#!h%C|3Qo}_x*I@j(kZy!birnFi>&CKskJtv#;KHD@Vx1q@PkxE znMu3ALV4g31pC zC)jd+h7s%-E;wZBsR{FS%p@p*^dxBhEmyo}%woZzH=3+Tulf-C7y z1r}U1?oNV(UU1X6CmBvvEqG|0O>Rk5FR(Q3P1dAp7tp~w1YdG%YTJU3#{J2jV= zSP%OLRXTWpyjL%q3-4y+6MAY7LuwX+@^gAx2+aq7#{Ar_&&glfgz!S}&w`h2mzgV$ zbIfI1WJ~V1r_p)1wKA4#xGekXa?9!#bm0noZ%rFpXM_pF@+cwaVu_BXT_tbsJK;) z6t}8?;-dX2eoOPY_ERxf5CK;!k;-O>tP>K;jKVrVQ5t8ciyMsC6`zQR#%E!f32b8~ z!V%oZG)|CWDJ)N&56>%ZfO)71t1>4kPOPH1W7({j79dL|iXVU{#wY0#kr3A1cA3EH z5GjgFgG;2Q2|5EMtoz2OI$BbNxm8B4Hgo9 zwA6C6&~miYa-z_3BHuk;Xc^DHa-q<2An&&J-q6y z_r7Gi7l_^q4BiVodoS=D4Iy&;UZC$@p!@#b_QjLM!0wejJ@~upeq-B8Q^yK~@W0{U z%Fbh71U-90Sk|&y#cia@A;+g& zs3+?9H0pvl?s0jRq~iuggEV3@MfRUU*%y#v-IJR4Wybk`uiCpIDc;7HS}&9Wg@QJ4|UFiu3jdYBrw#2N%3`{%dqje zR|fjw0HONk3NSQ6hrSMpkfU;$Np5UieGXi|Fjvl>OdRRp42uR@Wh#SeXa^Gw%sAZR z(P%VcBYR*jav|J2`Y;48SGB%&#HF~h1Q3=)L0;X-SW|H%#dO3@Ix!wVKc^2>Lh#}^ zau`eMwQVl)rdH@vq}-uLY@E$1oq;B$ehA)Rz6vnjP(IXMWM8;n*Ho%&E!4Fxjg=0b zC>%U-=VYn>e4+n*zOHq-?!sc=0ULZL^uBcMndP1B`5hhkj_!Qug(BOt5^l<~O>58| zQ)YpP2GjzxU`?A@plsM*C7ToM$m9eUFm@OG^Stl2Sese1f?dwr1Xh=|F_vB`%X)R$ z1v^;3VY@gc^_e%g6tF*^;7_`Mw+4+;W(Ga!x<}t<3(k4RjKNqmDJfw?9+2t_YGhw5+sE0Jdw#Jzc+1N(iH4na43VZY-TKc&u5b z&lAk4=~1e5P4LQNlb*IbvL}NFn>{_gPV?>?U}5-_X;u9gTGc#KD~>i=7HpzbOPLT& z=xbP}Q|)8uwDplXRalcvbgDF`m1k<(V`x?PNUgYy1xfi8kp)>E7g&s|7T`hj;>pqmg_W`%d>W_Xa(fMUz!Q6! zka5rlJW)JayGpQ3Mscf2#WfjAN}}S&yRQ-TdJagxb1;??73bJoR#d!Wz*2jKge)mx zixib$PbQ?;MPT}hAJ|>DbSjgCGZ9n-BvDwcJ&7Kh1|PEf2YLq13r|M=fE!(LL8`rj zpsUI4#Bue|V-(z7ws*Airw50}$42#`5VVyIQl0!r?`W?@3LR38PLZXp4t{8StgJEg zOzRu#Z0CDN$A*T@F7X7O+flCAp>}>^Xt381%I(5(-7MDM7}A@whhBXUQly3)gGLp5 z@0jB0RT+rl8=bwV$D360F7gt+d4$7QBCYd!#ZE-B8>&;RSKN{qBk^g)ce-zIXr#BN zd$d<^O#vy+Dy~^L2ochTvMMDIvvI{i;9P`b!UIxoEZUgs5PTtdS! zD8`W@dlU$I&DQr0ynEp4xs}@8E49rl4cyAk)|L95D@`pxpd-FD##7^8^n6vzc>Qk& z-wM7nb@lZkyB8|fHN2O4H+8LVX<~WX(~JI9H{%VK*!=}||56h$_%%pZ-)(5VI#${q zEo_f2H?%E=RvMds5&4_QwKF$&+^+uZ_D{AiHx4a^fB$sfJ42<~NTD{ev}?JxwN%?# zsO>D)K6U5iMK87sCyNrhqrmRCdWANBQz#udRXB30bmYatkr#{XnY(N-A8ISI?f2RJ zkCfFZRH^@ah5qm5FJ3CLNlRt3qqzbbS$guOTsqoUINDb_I#4(|a7Qi;@r5D2G!!ok z#fz*!Yql5Jj&IoQK11ir1$N((|K?cfaBtyoZ|U%v!r?P_#!3Sh3Ii8P1F^zDtjJ!Z z-A0RS8xX*JRmVrWZ(dsNd?DY_bNg66G*Dy*SHjyCL*!Xl^2+>g2B_>ex|>RN@#+CEhs0t?M3=oA5RZo3tSR78$)Meax8#_=bDn^8eo1Dbl zQyBDN@Et67_22~)IgJ@FVsHinJUR{%JmHZ63`JQVxwfbP)|R@YtJ*Wp(JJP-bE$ z8OOF?!r)~L5L!&MBG+w#@iV34Lxtl* z`LpAtv$4Y2Sm~@-I4kC-vPJea3I#Z13I%N+Ic}a=Zht=C)_uDn9|HaQO(-DWg}I8O zCF&2JyzyMS_D>L4@c{8*{R8KBcqK15K5*)1y9K-H4Jy{K3oiY13ZB$SrvWv9{#tG#axm93PB0)ICqPyHkd)ue&KTrAw}OG*$}q zG?}FLRaAQd+LKurl!SJGZb;*uWE9f5BahgM>)Zw1kXk1nV}q#38_a|1+V>8=d+?fn z>D;Xg`Liz-t6yI9+}&2M(Z=)3+qxG0cf(uWUU+Na>Z?n8Z`IsBR1EhmI`zDe_aif$u>^3(0Dg@uE-3`E73@`Pu`#xj$ z|GxoR4REA=gRSU%MKwUBrh>?08>Hja3&(T&tj1NLHNC?@@_kr(Qqi`ip(JI?c z`S}MlEQHQ7!^%H9l0Wy|Vl}_fqXGG-s{UG^wo==GwuP`AI{F#=^v2Vg6Z)j+{4Wr( zIydY4BKWcbFd09TTd>i)Uie;Q2HoPiM|UD{n{NM$poy%2&>Ako+aLR=^$yu>mdrWf z+XmxH68N@ZciA1P$CQ-)ddHQ%9Dz3gT5oatIcAhGzJ2iKeyOut?Jf>(zy@Mj>$@fk zc%M#BX5dpb`r*Oj9vDXHl~9Fd;j6bnc#X~_Cb=}UO2xDnOqtoV;6oF{C)Zqdc(AsI zhX%wY_#mMru71o=ZcJG?ZWu3;26HXgo<3mx)=N_juo>R%O6twnpj9CbC^@Yyfi%#P=6 zx1FWuhYQaSFK<7)ICww2Js*zTt=gL3)>W)JzEbx@zUqkwm^@aj>RPF5`qP7OR&ZpZ(L&_x;kx(xazKvzt8sDW~d0Y#&o8;r%hq+Y-E`D;WxM-H*x8%`@!!KFjJT58rtUx$yz@Cu^+M?pY&svg+i|V&8Zg~zj4>4DO zPClK(MG!aV^&$I=x|S!%yHJ20OF9Gry!yA`N1YiIF diff --git a/IO Tree Configuration Generator/controller_builder.py b/IO Tree Configuration Generator/controller_builder.py index 1455700..fbab74d 100644 --- a/IO Tree Configuration Generator/controller_builder.py +++ b/IO Tree Configuration Generator/controller_builder.py @@ -19,6 +19,7 @@ import os import re import xml.etree.ElementTree as ET from datetime import datetime +import copy from typing import Optional # Base controller & fixed slot models @@ -78,6 +79,9 @@ class ControllerBuilder: def __init__(self, controller_name: str, skip_chassis_modules: bool = False): self.controller_name = controller_name self.skip_chassis_modules = skip_chassis_modules + # Raw base XML snippets to preserve CDATA on save + self._raw_base_aoi_xml: Optional[str] = None + self._raw_base_dtypes_xml: Optional[str] = None # 1. Build base controller from boilerplate controller_cfg = create_l83es_controller(controller_name) @@ -129,6 +133,86 @@ class ControllerBuilder: # Indent & persist self._save_project(self.tree, filename) + def import_base_sections_from_l5x(self, base_l5x_path: str): + """Import AOIs and DataTypes from a base L5X and insert with required ordering. + + - is inserted immediately before . + - is inserted immediately before . + + Args: + base_l5x_path: Path to the L5X file containing base definitions + """ + base_xml_text: Optional[str] = None + try: + # Read raw text first so CDATA can be preserved verbatim + with open(base_l5x_path, "r", encoding="utf-8") as fh: + base_xml_text = fh.read() + base_tree = ET.fromstring(base_xml_text) + base_root = base_tree + except Exception as exc: + print(f"WARNING: Failed to parse base L5X at {base_l5x_path}: {exc}") + return + + base_controller = base_root.find(".//Controller") + if base_controller is None: + print("WARNING: No found in base L5X") + return + + controller = self.root.find(".//Controller[@Use='Target']") + if controller is None: + print("ERROR: Target controller not found in builder") + return + + # Ensure anchor elements exist + tags = controller.find("Tags") + if tags is None: + tags = ET.SubElement(controller, "Tags") + + modules = controller.find("Modules") + if modules is None: + # Create Modules just after SafetyInfo if present, else append + safety_info = controller.find("SafetyInfo") + if safety_info is not None: + insert_idx = list(controller).index(safety_info) + 1 + modules = ET.Element("Modules") + controller.insert(insert_idx, modules) + else: + modules = ET.SubElement(controller, "Modules") + + # Import AOIs before Tags + base_aoi = base_controller.find("AddOnInstructionDefinitions") + if base_aoi is not None: + existing_aoi = controller.find("AddOnInstructionDefinitions") + if existing_aoi is not None: + controller.remove(existing_aoi) + try: + insert_idx = list(controller).index(tags) + except ValueError: + insert_idx = len(list(controller)) + controller.insert(insert_idx, copy.deepcopy(base_aoi)) + # Capture raw AOI XML to preserve CDATA on save + if base_xml_text is not None: + m = re.search(r"", base_xml_text) + if m: + self._raw_base_aoi_xml = m.group(0) + + # Import DataTypes before Modules + base_dts = base_controller.find("DataTypes") + if base_dts is not None: + existing_dts = controller.find("DataTypes") + if existing_dts is not None: + controller.remove(existing_dts) + try: + insert_idx = list(controller).index(modules) + except ValueError: + insert_idx = len(list(controller)) + controller.insert(insert_idx, copy.deepcopy(base_dts)) + # Capture raw DataTypes XML to preserve CDATA on save + if base_xml_text is not None: + m = re.search(r"", base_xml_text) + if m: + self._raw_base_dtypes_xml = m.group(0) + def add_generated_tags(self, routines_generator_dir: str, zones_dict=None): """Add the generated tags from the Routines Generator into this controller. @@ -557,6 +641,22 @@ class ControllerBuilder: # Apply CDATA wrapping to Text elements full_xml = re.sub(text_pattern, lambda m: f"{m.group(1)}\n\n{m.group(3)}" if m.group(2).strip() else m.group(0), full_xml, flags=re.DOTALL) + # If raw base sections were imported, replace the generated sections with raw text + if self._raw_base_aoi_xml: + full_xml = re.sub( + r"", + lambda _m: self._raw_base_aoi_xml, + full_xml, + count=1, + ) + if self._raw_base_dtypes_xml: + full_xml = re.sub( + r"", + lambda _m: self._raw_base_dtypes_xml, + full_xml, + count=1, + ) + os.makedirs(os.path.dirname(filename), exist_ok=True) with open(filename, "w", encoding="utf-8") as fh: fh.write(full_xml) diff --git a/IO Tree Configuration Generator/enhanced_mcm_generator.py b/IO Tree Configuration Generator/enhanced_mcm_generator.py index ee473e4..5479c89 100644 --- a/IO Tree Configuration Generator/enhanced_mcm_generator.py +++ b/IO Tree Configuration Generator/enhanced_mcm_generator.py @@ -362,9 +362,7 @@ class EnhancedMCMGenerator: # Print summary of modules found if self.iolm_modules: - print(f"Found {len(self.iolm_modules)} IOLM modules:") - for iolm in self.iolm_modules: - print(f" {iolm['name']} (IP: {iolm.get('ip_address', 'N/A')})") + print(f"Found {len(self.iolm_modules)} IOLM modules") if self.unknown_modules: print(f"WARNING: {len(self.unknown_modules)} unknown modules found") @@ -391,22 +389,33 @@ class EnhancedMCMGenerator: modules_section = builder.get_modules_section() self._add_excel_modules(modules_section) + # 2b. Import AOIs and DataTypes from BaseProgram.L5X with required ordering + try: + base_l5x_path = os.path.join(os.path.dirname(__file__), "BaseProgram.L5X") + if os.path.exists(base_l5x_path): + print(f" Importing AOIs/DataTypes from base: {base_l5x_path}") + builder.import_base_sections_from_l5x(base_l5x_path) + else: + print(f" WARNING: BaseProgram.L5X not found at {base_l5x_path}") + except Exception as e: + print(f" WARNING: Failed importing base sections: {e}") + # 3. Embed generated programs from Routines Generator - TEMPORARILY DISABLED # routines_generator_dir = os.path.join(os.path.dirname(os.path.dirname(__file__)), "Routines Generator") # print(f"Looking for generated programs in: {routines_generator_dir}") # builder.add_generated_programs(routines_generator_dir) - print(" Skipping generated programs embedding (temporarily disabled)") + # Skipping generated programs embedding (temporarily disabled) # 4. Embed generated tags from Routines Generator - TEMPORARILY DISABLED # print(f"Looking for generated tags in: {routines_generator_dir}") # builder.add_generated_tags(routines_generator_dir, zones_dict=getattr(self, 'zones_dict', None)) - print(" Skipping generated tags embedding (temporarily disabled)") + # Skipping generated tags embedding (temporarily disabled) # 5. Finalise and save output_file = os.path.join(self.generated_dir, f"{self.controller_name}.L5X") builder.finalise_and_save(output_file) - print(f"Generated complete project: {output_file}") + print(f"OK: Generated project: {output_file}") return [output_file] def generate_split_projects(self) -> Tuple[str, str]: @@ -415,7 +424,7 @@ class EnhancedMCMGenerator: Returns: Tuple of (file1_path, file2_path) """ - print("Generating split projects...") + print("Split projects generation") # Validate parent-child relationships before splitting self._validate_parent_child_relationships() @@ -440,9 +449,9 @@ class EnhancedMCMGenerator: 2 ) - print(f"Split projects generated successfully:") - print(f" Part 1: {file1_path} ({self._count_modules_in_group(group1_modules)} modules)") - print(f" Part 2: {file2_path} ({self._count_modules_in_group(group2_modules)} modules)") + print("OK: Split projects generated") + print(f"- Part 1: {file1_path} ({self._count_modules_in_group(group1_modules)} modules)") + print(f"- Part 2: {file2_path} ({self._count_modules_in_group(group2_modules)} modules)") return file1_path, file2_path @@ -452,7 +461,7 @@ class EnhancedMCMGenerator: Returns: Tuple of (group1_dict, group2_dict) where each dict contains module lists by type """ - print(" Creating balanced module groups...") + # Creating balanced module groups # Initialize empty groups group1 = { @@ -591,9 +600,7 @@ class EnhancedMCMGenerator: family_size += len(children) # Log family assignment for debugging - if children: - child_names = [child.get('name', 'Unknown') for _, child in children] - print(f" Assigning family: {module_name} with {len(children)} children: {child_names}") + # Assignment details suppressed for concise output # Assign to group with fewer modules if group1_total <= group2_total: @@ -605,8 +612,7 @@ class EnhancedMCMGenerator: group2_total += family_size group_name = "Group 2" - if children: - print(f" -> {group_name} (family size: {family_size})") + # Assignment target suppressed for concise output # Add parent module target_group[module_type].append(module) @@ -645,12 +651,7 @@ class EnhancedMCMGenerator: orphaned_modules.append(('solenoid', solenoid)) # Distribute orphaned modules - if orphaned_modules: - print(f" Found {len(orphaned_modules)} orphaned modules:") - for module_type, module in orphaned_modules: - module_name = module.get('name', 'Unknown') - parent = module.get('parent_module', 'None') - print(f" - {module_type}: {module_name} (expected parent: {parent})") + # Orphan details suppressed; only assignment occurs for module_type, module in orphaned_modules: if group1_total <= group2_total: @@ -662,8 +663,7 @@ class EnhancedMCMGenerator: group2_total += 1 group_name = "Group 2" - module_name = module.get('name', 'Unknown') - print(f" -> Assigning orphaned {module_type} '{module_name}' to {group_name}") + # Assignment summary suppressed assigned_modules.add(module_name) def _generate_project_with_modules(self, project_name: str, module_groups: Dict, part_number: int) -> str: @@ -686,6 +686,17 @@ class EnhancedMCMGenerator: # Add modules from the specific groups self._add_excel_modules_from_groups(modules_section, module_groups) + # Import AOIs and DataTypes from BaseProgram.L5X + try: + base_l5x_path = os.path.join(os.path.dirname(__file__), "BaseProgram.L5X") + if os.path.exists(base_l5x_path): + print(f" Importing AOIs/DataTypes from base: {base_l5x_path}") + builder.import_base_sections_from_l5x(base_l5x_path) + else: + print(f" WARNING: BaseProgram.L5X not found at {base_l5x_path}") + except Exception as e: + print(f" WARNING: Failed importing base sections: {e}") + # Save the file output_filename = f"{self.generated_dir}/{project_name}.L5X" builder.finalise_and_save(output_filename) @@ -785,7 +796,7 @@ class EnhancedMCMGenerator: def _validate_parent_child_relationships(self): """Validate parent-child relationships before splitting.""" - print(" Validating parent-child relationships...") + # Validating parent-child relationships issues = [] @@ -844,15 +855,15 @@ class EnhancedMCMGenerator: issues.append(f"Solenoid module '{solenoid.get('name')}' references non-existent IOLM parent '{parent}'") if issues: - print(f" WARNING: Found {len(issues)} parent-child relationship issues:") - for issue in issues: - print(f" - {issue}") + print(f"Warning: {len(issues)} parent-child relationship issues detected") + for issue in issues[:5]: + print(f"- {issue}") else: - print(" [SUCCESS] All parent-child relationships are valid") + print("OK: Parent-child relationships valid") def _validate_split_integrity(self, group1: Dict, group2: Dict): """Validate that the split maintains parent-child relationships.""" - print(" Validating split integrity...") + # Validating split integrity # Build module name to group mapping group1_modules = set() @@ -894,12 +905,12 @@ class EnhancedMCMGenerator: violations.append(f"{child_type} '{child_name}' separated from parent '{parent_name}'") if violations: - print(f" ERROR: Found {len(violations)} split integrity violations:") - for violation in violations: - print(f" - {violation}") + print(f"Error: {len(violations)} split integrity violations detected") + for violation in violations[:5]: + print(f"- {violation}") raise ValueError("Split integrity validation failed - parent-child relationships would be broken") else: - print(" [SUCCESS] Split maintains all parent-child relationships") + print("OK: Split integrity valid") def _configure_controller_settings(self, root): """Configure controller-specific settings.""" @@ -1166,11 +1177,10 @@ def main(): if len(sys.argv) > 2 and not sys.argv[2].startswith("--"): project_name = sys.argv[2] - print(f"Enhanced MCM Generator") - print(f"Project: {project_name}") - print(f"Excel file: {excel_file}") - print(f"Mode: {'Split (2 files)' if split_mode else 'Single file'}") - print(f"Zones: {'Custom' if zones_dict else 'Default'}") + print("Enhanced MCM Generator") + print(f"- Project: {project_name}") + print(f"- Excel: {excel_file}") + print(f"- Mode: {'Split' if split_mode else 'Single file'}") print("-" * 50) # Create generator with zones @@ -1181,15 +1191,14 @@ def main(): if split_mode: # Generate split projects file1, file2 = generator.generate_complete_project(split_mode=True) - print(f"\nSplit generation complete!") - print(f"Generated files:") - print(f" {file1}") - print(f" {file2}") + print("Split generation complete") + print(f"- {file1}") + print(f"- {file2}") else: # Generate single project output_file = generator.generate_complete_project(split_mode=False) - print(f"\nSingle file generation complete!") - print(f"Generated file: {output_file}") + print("Single file generation complete") + print(f"- {output_file}") else: print("ERROR: Failed to load/process Excel data") diff --git a/IO Tree Configuration Generator/test_sio_implementation.py b/IO Tree Configuration Generator/test_sio_implementation.py deleted file mode 100644 index 4a05242..0000000 --- a/IO Tree Configuration Generator/test_sio_implementation.py +++ /dev/null @@ -1,191 +0,0 @@ -#!/usr/bin/env python3 -""" -Test script for SIO module implementation -======================================== - -Tests the SIO boilerplate model to ensure it works correctly with -IP address configuration and comment updates. -""" - -import os -import sys - -# Add the models directory to the path -sys.path.append(os.path.join(os.path.dirname(__file__), 'models')) - -from models.sio_boilerplate_model import create_sio_module, SIOModuleGenerator - - -def test_sio_basic_functionality(): - """Test basic SIO module creation and configuration.""" - print("Testing SIO module basic functionality...") - - # Create a basic SIO configuration - config = create_sio_module( - name="SIO_TEST_1", - ip_address="192.168.1.100", - safety_input_names={ - 0: "Emergency Stop Line 1", - 1: "Emergency Stop Line 2", - 2: "Safety Gate Position", - 3: "Light Curtain Active", - 4: "Safety Mat Pressure", - 5: "Reset Button Pressed", - 6: "Enable Switch Active", - 7: "Safety Scanner Zone" - }, - safety_output_names={ - 0: "Main Safety Relay", - 1: "Backup Safety Relay", - 2: "Warning Light Red", - 3: "Warning Light Amber", - 4: "Safety Brake Release", - 5: "Safety Brake Release", - 6: "Safety Brake Release", - 7: "Safety Brake Release" - } - ) - - # Create generator and apply updates - generator = SIOModuleGenerator(config) - - try: - generator.load_boilerplate() - print(" ✓ Boilerplate loaded successfully") - - generator.apply_updates() - print(" ✓ Updates applied successfully") - - # Check that the IP address was updated - port = generator.root.find(".//Port[@Type='Ethernet']") - if port is not None and port.get("Address") == "192.168.1.100": - print(" ✓ IP address updated correctly") - else: - print(" ✗ IP address not updated correctly") - return False - - # Check that module name was updated - module = generator.root.find(".//Module[@Use='Target']") - if module is not None and module.get("Name") == "SIO_TEST_1": - print(" ✓ Module name updated correctly") - else: - print(" ✗ Module name not updated correctly") - return False - - # Check safety input comments - si_comments = generator.root.find(".//Connection[@Name='_200424962CC22C87']/InputTag/Comments") - if si_comments is not None: - comment_count = len(list(si_comments)) - if comment_count == 8: # Should have 8 safety input comments - print(f" ✓ Safety input comments added ({comment_count} comments)") - else: - print(f" ✗ Expected 8 safety input comments, got {comment_count}") - return False - else: - print(" ✗ Safety input comments section not found") - return False - - # Check safety output comments - so_comments = generator.root.find(".//Connection[@Name='_200424962C862CC2']/OutputTag/Comments") - if so_comments is not None: - comment_count = len(list(so_comments)) - if comment_count == 5: # Should have 5 safety output comments - print(f" ✓ Safety output comments added ({comment_count} comments)") - else: - print(f" ✗ Expected 5 safety output comments, got {comment_count}") - return False - else: - print(" ✗ Safety output comments section not found") - return False - - # Test saving the output - os.makedirs("generated", exist_ok=True) - output_path = "generated/SIO_TEST_1.L5X" - generator.save(output_path) - - if os.path.exists(output_path): - print(f" ✓ SIO module saved successfully to {output_path}") - # Check file size to ensure it's not empty - file_size = os.path.getsize(output_path) - if file_size > 1000: # Reasonable size for XML file - print(f" ✓ Generated file has reasonable size ({file_size} bytes)") - else: - print(f" ✗ Generated file seems too small ({file_size} bytes)") - return False - else: - print(" ✗ Failed to save SIO module") - return False - - return True - - except FileNotFoundError as e: - print(f" ✗ Boilerplate file not found: {e}") - return False - except Exception as e: - print(f" ✗ Error during testing: {e}") - return False - - -def test_sio_minimal_config(): - """Test SIO module with minimal configuration.""" - print("\nTesting SIO module with minimal configuration...") - - # Create minimal configuration - config = create_sio_module( - name="SIO_MINIMAL", - ip_address="10.0.0.50" - ) - - generator = SIOModuleGenerator(config) - - try: - generator.load_boilerplate() - generator.apply_updates() - - # Verify basic properties - module = generator.root.find(".//Module[@Use='Target']") - port = generator.root.find(".//Port[@Type='Ethernet']") - - if (module is not None and module.get("Name") == "SIO_MINIMAL" and - port is not None and port.get("Address") == "10.0.0.50"): - print(" ✓ Minimal configuration applied successfully") - return True - else: - print(" ✗ Minimal configuration failed") - return False - - except Exception as e: - print(f" ✗ Error with minimal configuration: {e}") - return False - - -def main(): - """Run all SIO tests.""" - print("Running SIO Module Implementation Tests") - print("=" * 40) - - test_results = [] - - # Test basic functionality - test_results.append(test_sio_basic_functionality()) - - # Test minimal configuration - test_results.append(test_sio_minimal_config()) - - # Summary - print("\n" + "=" * 40) - passed = sum(test_results) - total = len(test_results) - - if passed == total: - print(f"✓ All tests passed ({passed}/{total})") - print("SIO module implementation is working correctly!") - return 0 - else: - print(f"✗ Some tests failed ({passed}/{total})") - print("Please check the SIO implementation.") - return 1 - - -if __name__ == "__main__": - exit(main()) \ No newline at end of file diff --git a/L5X2ACD Compiler/__pycache__/compilation_manager.cpython-312.pyc b/L5X2ACD Compiler/__pycache__/compilation_manager.cpython-312.pyc index bb4948b5fb7bfbce183dd25b90ec5889db21df7c..6759eb332c0275bb5d9e27814b85d2f913fbdfb6 100644 GIT binary patch delta 22 ccmccC$#|`kk^3|+FBbz4gl?U&k^8g@08|tQC;$Ke delta 22 ccmccC$#|`kk^3|+FBbz4yl?2*$bH%c09M8ae*gdg diff --git a/L5X2ACD Compiler/compile_MTN6_MCM05_CHUTE_LOAD.bat b/L5X2ACD Compiler/compile_mtn6.bat similarity index 78% rename from L5X2ACD Compiler/compile_MTN6_MCM05_CHUTE_LOAD.bat rename to L5X2ACD Compiler/compile_mtn6.bat index ab76cc1..39a09f9 100644 --- a/L5X2ACD Compiler/compile_MTN6_MCM05_CHUTE_LOAD.bat +++ b/L5X2ACD Compiler/compile_mtn6.bat @@ -1,7 +1,7 @@ @echo off echo ==================================== -echo PLC Compilation: MTN6_MCM05_CHUTE_LOAD -echo Project Type: MCM05 +echo PLC Compilation: mtn6 +echo Project Type: UNKNOWN echo ==================================== echo. @@ -9,8 +9,8 @@ cd /d "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler" echo Working directory: %CD% echo. -if not exist "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.L5X" ( - echo ERROR: L5X file not found: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.L5X +if not exist "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.L5X" ( + echo ERROR: L5X file not found: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.L5X pause exit /b 1 ) @@ -61,28 +61,28 @@ if errorlevel 1 ( echo ✓ Logix Designer SDK found echo. -echo Input L5X file: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.L5X -for %%F in ("C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.L5X") do echo File size: %%~zF bytes +echo Input L5X file: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.L5X +for %%F in ("C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.L5X") do echo File size: %%~zF bytes echo. echo Starting compilation... -echo Command: py -3.12 l5x_to_acd.py "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.L5X" +echo Command: py -3.12 l5x_to_acd.py "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.L5X" echo. -py -3.12 l5x_to_acd.py "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.L5X" +py -3.12 l5x_to_acd.py "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.L5X" -if exist "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.ACD" ( +if exist "C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.ACD" ( echo. echo ==================================== echo SUCCESS: Compilation completed! - echo Output: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.ACD - for %%F in ("C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.ACD") do echo ACD size: %%~zF bytes + echo Output: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.ACD + for %%F in ("C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.ACD") do echo ACD size: %%~zF bytes echo ==================================== ) else ( echo. echo ==================================== echo ERROR: Compilation failed! - echo Expected output: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\MTN6_MCM05_CHUTE_LOAD.ACD + echo Expected output: C:\Users\ilia.gurielidze\Projects\PLC Generation\L5X2ACD Compiler\mtn6.ACD echo ==================================== ) diff --git a/PLC Data Generator/DESC_IP_MERGED.xlsx b/PLC Data Generator/DESC_IP_MERGED.xlsx index 20c81fbf5557908d37c84903b408d9b00ccd5ff2..26ef655344857d5ffdd5e65d0bdb443365d33cb9 100644 GIT binary patch literal 255997 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

BjvV>w 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

BTmh21D9#>`*ByfY%j=EZ01)~p49yPIK2LJy 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