From d7888c2be4827d0cc421f2c031113ff0f41b834c Mon Sep 17 00:00:00 2001 From: lixiaoyuan Date: Wed, 24 Sep 2025 19:06:31 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E7=AB=AF=E7=9A=84QT=E5=BA=94=E7=94=A8=E7=95=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../config/EMU对外通信点表最终修改1版_v9.xlsx | Bin 269186 -> 268995 bytes bin/Release/assets/config/app.json | 4 +- bin/Release/assets/config/regaddrs.json | 2 +- bin/Release/yhicon.ico | Bin 67646 -> 0 bytes src/app/AppData.cpp | 117 +++++----- src/app/AppData.h | 18 +- src/app/Application.cpp | 36 ++-- src/app/Config.cpp | 4 +- src/app/Config.h | 1 + src/app/Device.cpp | 5 +- src/app/Station.cpp | 19 +- src/app/Station.h | 24 ++- src/common/Spdlogger.cpp | 46 ++-- src/common/Spdlogger.h | 1 + src/database/Dao.cpp | 17 +- src/icon.ico | Bin 0 -> 67646 bytes src/main.cpp | 7 +- src/protocol/HttpEntity.cpp | 13 +- src/protocol/MqttEntity.cpp | 12 +- src/protocol/MqttEntity.h | 2 +- src/qt/MainApp.cpp | 201 ++++++++++++++---- src/qt/MainApp.h | 55 +++++ src/qt/QUI.cpp | 14 ++ src/qt/QUI.h | 10 + src/resource.rc | Bin 3228 -> 3224 bytes src/yhicon.ico | Bin 67646 -> 0 bytes 26 files changed, 435 insertions(+), 173 deletions(-) delete mode 100644 bin/Release/yhicon.ico create mode 100644 src/icon.ico create mode 100644 src/qt/QUI.cpp create mode 100644 src/qt/QUI.h delete mode 100644 src/yhicon.ico diff --git a/bin/Release/assets/config/EMU对外通信点表最终修改1版_v9.xlsx b/bin/Release/assets/config/EMU对外通信点表最终修改1版_v9.xlsx index 75a46dff93e63648b51463c3618918fd68deee43..097244b994206aa42f6abfc0ecba4acc7816de95 100644 GIT binary patch delta 162280 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

W4DqJ6SK@RLwzMOHG&%vlp41XV1UF0LXC* zSV|Pqg8jLnqvWqWd?J6Xk%2Wm{%-r+ z4ikek;MXU>zSzu3VCo$)piihc(5FBQ^irze736>wL&h34Vh-jY9M^X(v+d7XnnD;6 zmkQ{s)2sw%ob63t9|WFvINDXjI<_E3jHSgdkj{jwxFLFSzLwdzxmzH_x+n5sG&q8= zrXmP4%_J(qA{7bmFQgK|u15B2wg16^6Du|PuGSR~_K*zcBP+|Jqa-+4e@3FCtKrZ+ z*8_Q7(BP|rkTq;5MY2F#YzFTyRF$C1EQ~i^sPF;z`>nrO7+-cUBVv^qP%?OLJudCe z__@&{_jeZa?a!$0iGghakkqS1-|~`tcW1$+(VGF{N$BnBk=-qJ^rmM}#-3AlS7K9a zYx&|bTdsG^T-Dr4RPKoRBj$Jb1yT8+%>tndw@W}YXtu+w>&{s}|3AS3g`{sKn^HI8 zLeL6=A_B4(Zy+L{Vou=0)CR!N|2v%z?Su&f^*s;IR`)!uQxSq8Z>k_cn<*$r`O9K6&_`WLN%L$N~cwI z&rmvZs^1@J_|>dN#HGCR-deuUFcLM(*w9to5=pWs#=h=qT$dDi*qFR)p_hN{+K zW`l7Ytl|MyNstmV7=;(WndG?>JOGRTENO=j0m&g1lmpg236k)4N#oGrYY}pctH>lF z?Uq+DFI+t6Ts#;b->~wvrCL?liGat~7U!$UeBVtsS*b~6@>^#0m1b#G?yDL~Wairv zx$1e@pib;0TB)tb9u^q2m0~t{ln)rKR0`rcIvf4F>UsX9>PZpk?Q7>O!bH-LBPe*3 zd=P^{M`@S`81#S zXo3iZCX{?gqdIdulzP}ebK-ykfT;n%mPj5Zxa~WuF1) zyI&Rv&q#x**oPkg+O{-Ag}kCATb7zy1eH6zW%d#RzI5c6376jx7lzG5a%&VH(q{ZO z8mV72erLNT)^0aW`~a1&Ib@qw_>IM%*s#7AYY9yGqpdyz1eA0p4SW{#Fr=43W@2l1 z1h#ggUwb4VFoRFuEM&YdAK~G##MLJneNZbJb+9%$z9tB4g44}L+mbbM*K6&h1LZvHt@%yEXEC~n2X8sI0MTW4NR5N zWoqDC*Vk@8+ERQ>XpjZ1z=D=pW5x(1fDL_+tZqoMu4d$dKa$X=b~i=?D)#m&4yM_Cx3*n9 z54JNawkFZr@JK1z1a>MPpPLqz8+5_Bl_AF)oiZR^OmZiz!?;v91Y`61FnJg{QGHkcex%kbeFpx zH(4>`6)IQuQ7rfYI?Si`+p(=oePNjt<`$vM)E5ir3(#aFaSW0M)Y3C}IU+Yh((c>o z^g4GpxIVPkl16{t+hICqZhNcbX|{(rhVIrYd5!^zf(E7r=}--;P`mnGaHUj3C^4sz z(7>bTEg>;!{LE`mUsR4#w_?FNJ6T(ExzEy1BQ+c@;`G_h+l5E%QuYF(Q_O1u2AWN+ zpjFQ?LeCfFPS2J2Je^sRN)Feu_4ZB+%8UZ?MI!P=6$o8M#EZa+XN?uF9}(}hJ%>=q zU?4|Me!lUvXAB_8#*)|~B%N523>a{ULAZ1m2wBH5(DX4BnIe`*u}3Un69+8OO2C&3 ztmTAQi_(>c2(cC=)>@_rjchcaF(4{wkd=X1)gU&Wkh%X!dLB#4Lgsp+Z%P?IBAsn8~}VGIEj--^lfb!rGTWjl7`&vHzbAzf^&aoka7s4l}#sKQ*=?^2#&+Z5dTi z{rr`B5<&G_FqO4U5{oUPbdB7z0|D7zMGt>F2S(ZtaH%51A!%%(fEeF3>k$x_tIueE zdQ4{L;>cvAm6uNW@D;p<0v2H;Xo0ffTFja#x{A+myduO$WLZ&|yrHoMr>Q}#pf3eH z>EV*g5DBi`@k2BG<(Qh?@!z6>5dW*wnnq#{%9U~Y;QlH$k-nd5a2}GO zv|<$=F_^?ADNzXqhBUySDDvCw2{3RZ1Fl^JY;_)DL(iIq{0=9C*?$UjBcKEIOY`}a z^Ie(!-UZx5A!fXBtmHcnLEk`RRN`vxmj8y5FxOQfudj_$)I*^}`AA^b8EPl(J zzN##$23Hol7N&-E7IMqbxio)~zmTB+4>Vc)yg6F|B*Xue(LeFoTFC{z5n-Kk#rZ9_ zpIv=bHvojTD${OsgQlGRa9ailN$0FKqu|e8csZ#?`}VkAQhor|?q*4WJaRe_z2=po z>y|b&^3tktr%x)XA&Syf&d*;-oIUqn6}0`SX5oa)A=Sa|8517FFVtu!3}hYVeRa>F9jES1I=O^HKR~sA)u~uLT28 zo=9+vUAOccUJk3hQ7&Q5S$lr~=p6-T`${{Ex%|?~mT47~J-zb2!cT>tAm&pp&==NX#JLA%FA7k5ddwMhAp)qDpa1miu8!fA~s^|<(?HF zux^jQdIuKP^AT8A8(24AQFRLikyyZbd7w19VPfY<#Sl_v@~~yb9w{@wr3$o5w^!+q z#>xX1C_(b7)S?MPAl)X^ta^#ejr!@sPya&O?v&iK1_skeO61R9>Yu1p*UbwBIi@y% zVAxk_fMMxsR$e(d9f!CTfyFISCEa3bP=$!(o*@B#jHp3XhSP8E9W0~{Qfx0WTx`LF z!aM~YRsqw9rd)KI^C4z}QS>atPNwh77pm=1qSmPkod|<1?wDt{vP5LOo6b2 z8UT*(05!?=%efXe5ZhC_a>Cn}z)f@cu%HP4yaeHk;Wi}N0yO=;K?n+WZPi;3svIskw`VCjnX;|K@&}&+vc>M1qz){i{rXDouo~aaEuUw#xp68psmSvO(jS z8-7B{AtlgQ#Yaj%q0yIelM1~uiQXL@khOMv(QPEfMm4!Q(z@7PK5rlnYKANP3%y%` zp_eOM#2s%dc z2Ul##f?^OXqKi_8NO9#b@RBlgOxRZ%crnE_OGVA~1c;t7Q*1O3yZljIc6`-xDTpwL zc(9@ou<$p4hX|6=13qNjPY)F)cQ4Uqe`;@xwaUt`ioNs9S9~4>Im~7RhFhPA-#l2j zOw4~(C9;3AC<9z}8Db;OrCe7+Jn?TVgt06X*A4$(y`y<4u?@|9kw4gb6lv+ko)5n~ z3$c+N3IHl(24W3*`dQOI#1H~v(Dd!{R1`A9;#UB!ld3}uczOQ+kF__Chw^Rzhnr-H zkd!4`qEvPYWtmp(sgJT|$u7o{b!-=j7CYr4p;9O`cCv+tgnsH3d+9cjDhgb4WjMU=w9t{T(dbS(7W4F6BdxI;h{Mx;gq zoXke{FRatY-OR5*P_7zb5fhi2pr{gx|U+Ii+SJ{g$myo4jD$~!FwuR1Gg%?<)Cb8T16rg1Lf#*0R^y9WJ~<0Sn-T zk$olE{*N9xX&lfLEGm|LfdP+q3AGbisEPZ8pjS$GdhvL+rl2fF9kVWobjbuhfK8EB z-~oJMy&P<8g3%azV=GRpq`ve5ZO{q+1{(*$@&AZNvIj7PIIt&UsmV>5C9^YtIs5*t zjf^iQHB~jk>^i7D5I`!7@fm=c%@2x^#QguZ-5ctdq_;qF`S^r>6UEB<<$4Fq|DRVgIReashe5Nl zud8OziXrTo%YREjesBJ1(3So>+$3eY!_;FaQDzEgW*NPYDC~nYJpegB!?MRfbDILH z6rvdLwonc8)AtN%{3N+GK9SSk05Eh}%tBRp!0BXB=Yz$9Ea&>{>FSo2tyC`)fVy|3 z@`ugGH{y}HBpD99nU*kgB1Ja74)vPycNC= z$&Sn3cf{zcsq_W14h1b%vaNi;;TZ%@)l475#$(1z(1rW=e%N?nu((n3<&Zxum^OPi zXF~IwSoMKC=+am=$=;KEwSJT5!^m{?-WdMI(^}0!7wwoXAlu$|_xZeG+^wC)(LW$P zCAs(@?kp3L{$ifkveHi7dR-Rn6)Ps6emdSu{Ugh;me|t`i@gT}!~R0a=|DTx=u$7y zW}asT?+(Ai%<-Ida-+)tQC+!0lv>kgiKznn4g4=RUQapbLen`1Rmmt-aMyJHyd~u^ zYvE&s9l5KrVR3mwJrA-X8SS|0yznGN(>JCiO}qVc$B;a6c+Vh!7#Rk4ROZ%x(GvX5_36_$r-YmFC&=reTM97HD% z4be&T)#*m!`C@#0|Jjqz?QACou;(D*0mXe}6$|`$yK+ebB{3f6w0O&yLP_)}p9O zIgg39hKYx495CkTwqa|I7A&GyM1$R3iBt9Ob@5^!SvB@w#Fhzf(WulD4OVi{=FM1@u3Ks+sc%$-gO@9m+V`fUxxH7kOWoYj zT~nl{6lZ2vuVwz7dv?B`$52AK`r%&{T(#MXX}x2yc#%<{Z5hyZSgfTc?7poQ&RlHf z#X(J$HH+q{>hUIAd%eTZ)b)xiQdG@(EnIlPeWIN>0a9f9nI~M4kTB-PN?~XnAZP`& zPO0LWqD6Y_-%&KHQFVRptz|dt#oY32do-R8+skBcAh#^Dt$?bUy#Xh_E2hv_sPa)t zMMT$Ost!MCG*(CK6DuW8_#Ab~k;jqN-cK9tt#qjR(YtYFgYe7oD?}3_NyL2BRjgX4 z81iLJfKo|bfcHw2K3?!6>uIr<<50!mpI zZlszUy-J#LG;2}D?$?%T`C#N3w_3Smk5DAZ@8y$92d|u4Z6$H_1w~zbC2du> zLy&{9iz!#48}0g(+~vc;buYUAf~X&&vupX}_qNZCp6p?LVxrC7K6uE*)B!&f&^V;- zLg@`6OMH*2rjx7J@M5&@WR9y8=cOFY{bIzlDEZ6D&>F|p7De=qTSj5kC**g_$5)u0 z(lUj~;yQch6IzD0U3Xfxyqvn+IfkA5++n2gedcQE=0|rc7CCi7x&szoxj^%tt1Dq= zX}hLZ?(+5;#YVb3vYEBeY8qSPTc|lkTi$B1Em4%WA=eXbKlT83Epyi-3~ zSiP@m*{nUkE3)i*09(Wz^}{({1U9A#Y^R_M&*|n59*SNt!nS_Mj#)5D1r5fu-0|kF z2Og63a~4`QV;AKXz&&coUqcLf%USXra@1_ByPAA*bo2&mF+At^CZ)v+tjwa61FPE8 zM<+?-3s|X9_kPzI4oPTI`C+W&41?V<;PVDzTGody>m30th-X!ahm8R`3bK){N2^&A(K1N zYdu{y`Qswwv^_#k`N_xRSkCyLJJ`rl<(=$b$Y#i&GV9^VV^1Ej&^cyu0P_iqna&}jsB?Y& zsXD|cUDKt4f%)&|@m{-I$RHW&=Q6n?|J*bw-fJbd zqEU5+mR>`NR7Qm(_Ozj(bJQzVECws~8YkashYd4G;nruxA{uxfcpRTmK)G5dGhJ*r zctx+l_)fHDcl@GVv%DDGXMo~>EU=%7q`-&9#wqPp@>hJPb|Web?tbWq!P@3)fY!+Z z`vtU4@%%{Z1R@fHF&qS~Q+Nr(HHmM4%`uO}42+PY%$t9FljVSo@<4j5--2>&$RW7} z9FotsXX03HVM&B-%bhlV?OrLit#2xpYa=y(_~0FOIlrhd`D`E3_Z1?2-&xRRHahAe zqsZbH7#%&8cgA;Ob6%1zd`8Z_FBs?EKE%@xk#n!CJ<^BK4Z)n|d>`oAm?}Un8uhii z+qZ*>=^4gYwGfHlehi48e=+^d`Tu>vM}^J4OuZYNdCq|e+Rxb7OFCtbj4f zTG60NC@Hz73+MvorT^&iujdDf|9vAu&87U*f!z;bF>vJG0cNatCx(T{G3s=_{G7vC z4&)fc3r`t?v!azYY8x+@yHb0BGJgzsVY)HORer*JIpxui*WcGO#<2h1@ETGIkhmdJ zT;yCU7r!>iCvN3j6b$ZQ00+>x9js|ud&2C$n*Z&vK9iG1Luv&7!C{$H7-NFkwcXG5 z$23xqU=oW=ZnIa7J|Bm_nxGV5dlQrdv%*{BX*syl1PpkIa1{7&+oa5Ijeni!v=NO3 z;cFMbR8a0ZV%bG-SB==B&}zlYtJIrq3@yQ^7JhAv65=kQYPQBc0*ZpVWi@Vs70!VB zigdtb5FewlpF3gU8MdkNzECvgumN%y0<#Bg&%PQfbUA{6HHZ}BKn}`>3w*K+<^XHZ zhjts)d{XIW-0uEkbu2seXvDLIWgD7b-x`PsN^#d=F5Yof}%PP6zCE9Tf_^_~XCZt@cli3pplzardvH$r9= z+pgZilOG#=N?%<1h``j&-fOIN)yE$0IO92GE(FKegZsdW72#Yf)DDi`nqjS^|KD$X zGDGo0+4SX8)BsAi$fTlIuI&r;1a5Uh7lrr}`GuUqGJpBzAEx%#xOArw->zs0(5^IP z2X;@A?VqL6>qBifH7PmttwbI1TlL;KJ}*e3iT@;SZeD4Wu{y;X78PAid+}wQ$-xUf zh7F-Qeu-u6()!Lt3EyC7b5V$v=wK$-+T@_8cPsbD0U%#zBBAc40BKX}XbruTRgc0Hk+d|ER!sT55y6Ndqg#y!3;tGQei=jaw)|rmpD% z__ZZUl;fxQ8nh%|&c4g{2_r*!sQzJzljbD>sRP%5+k!XRFW{x#j@C&eKg;VRh>~8{Blz+scnoR<#kgK1CBod zIm(=FItNB#A=y97OC7BAMJBoa^&0-auQ@jDJmV2>*wKY9th6}`AF)A+SkoRevsxZL z{ztx+|1@8ukqgTI-o`V3MoZw|OSinvUqw24vcKjMVq9}A)%^dY2m9Z8@G<~~3(<2! zJ`r)jnlBSP<%rtJG%%tCQ#}AQ_uCdQz^fGjkIAn2X-in~27u=6c3{%`-3G-2AH4za z8T_gW8+n7_T|3O`=`6n@o{Xb!R2t zkmBHKxOFDJI4JnkO&t~6RCR%=fRaYlecS~@Yffz}aH1DVbX#YQN-5rk0b(JC6S#$X zSz*Wy+#Ocw1>#7zLxmz+i^F0*K$Awhf5O`Rzl4?Y>5cfibgd_1E+5+z)&a{T5dapnyuse`@Z4_r zg>2b}jN=bg`ipczBr(PStWc~2NaEU;E5RfSFs(v6pd|JNPGaOR_%rm{$+}B?FCxaG zWiU+kVP8@l+qGbo{|A~mFa&0}IQAZsWI?XBBw4O?7p6J3aAgfrXELr(F72^3pzE%AwIBc$2t>K> z$geUqE6AW+Yc?&w^-moFmFw)18eufI_r3p=IiAfg*_t7~d<%=={fBw`96UQ~1`&o` zdc23L%dDWaW|Cvp+vXho<_1s{ce1~k11GM0ryU}Q$ynif^lvUcFo6!`s+P8E%lg*0 zb56EzX}y~)EdW5_O>EF9{gHE=lYLc-%K5nd$jR41l{FqJHwAm&1`Q+zAx>vPoUX*+ zL#8?ts!{Gupk{I#`>K(GYOcC6;x==J+gK13vtytb=OpJFMu)=UY0L5*WXs_#4A;Cv zl7SOR+x#G~jdb9oiYlOY$aWaW01+gknAS5&RRPJU3#u^M87013MWM7Esbry^2B3Vz zq~QNp4=!~=$!JpKkWN8CAzs324^!Bi<9Y`X5@=yz=|+H<>{X*;W3Dx6RrAguGWyXL zq~2yt)@g#m)eS#0NAdI4dw~i>qN{#=9mE_h*PAQ_7u2SW9xCt=bCd|je|(pPVUi{M z!x4Npr_KZJcR`74^T_r3UGl*U6ykubTu{230Mv`XWi9}P6d}~kqac9+Xac%t73jfR zu8u{~578pqrY9xVdINrD(}WwN&bZ|Yc;*k(*l{(@6;GMtzC=zsQCL^EEA`9|7#A1Q1)om+9Y`YSJ7|w*og?^wzBF2l`nn#MS($ z1$g=vN*2~~Lv4qL%~5Rd8!MFH&Z>96NNe&2JlcIUilXx>2Ms}MYa=j^4QfXTvpecF z2griY%~l; zS@3p}SEe`i4#=uU&l=8D*s@gNX5f){lpqI8JJCqxsx_FYP=>YcqXc+f(wAndf))5Q zrY~sXGa_a~VdxI(I@4`pGHiAm+!`q7jc)%#-imp;vG@DUnZhy3uqcnXyIM-)koQ9LiCmm{7GB7o1N(-7Qsr z4NvWwEI)FiLe!R3T*hE9#3)5aXoS^BltZa@%1F6ZH0zF8-P{2uvmzGD9?@|BOy!0N zSI?~tx5rE}$CeBIiIk%)md6?l3M%ZRhu+qItYY@9e9%~JRZS8@yeSgmtNt_BfHM*FbT|?cAX? ziLU8%pw}lV?p355p%_@N?rb-0WMmX1G71y`PUOUW;Y1b{LKb~{1M!S{Ah7hjQ|W(@ zfqo0U7Wzstmw7vqqGr~k0X z5Nh7uHr%P{c6i?R&`)}TSx)x|!Fk_8fqibkK8arjdN%wBm1z=ia6+8$GZg5H@1I$g zn@CX{d;+`1ql6E(q}){{P9AMgts$of&S<29E3h(W1PTO}Y3sExBsN;C82OC01};G? z(3l3JhgfhZ=@v`20GI9xXU3Ob!ISMR`|15DSdj1ykBO&%T|T0~uB;TVI+%11-1mL( zK1yQabR%qdAHePeeWI~@R3GL@KnbzxYfguPx`m(KM_DuN8ZC!IAAu8g`3P(r1^_E6 z0ma3l(y-<{lK?{rU_$aV4t(`NBn61wtI{Cc7mgC)+~+$e!oV$#l#(lOLs|FtFT8FU|J~2R^ z33wuMCvOT5dJrT#*0R)%-r;0V<2&A-u{@ftsyDfDGxNp-pto{RwZ#S)Nx-}R)ZDz1h3 zqLl{77JY)j#811F(iP_`^d0fus;m9vree*jKbnWR(Gh5a+2#&EuWH+}nlS*uvaxTi7fL%zwCv&tc9e)b5QI8n7brKl~Sb z4g3$GTTg+Nl)-j+TGley!K@r5KFugc?uM2W*2Pg1)*Bk&PlhRnD(yA339lhr_h7u*f<5F(`75K-{o&O*Ypat4Rd~7kZseMx z!gs7plWF50#iooW+wL`X(NJDqo;Wl*%>yNCVQuEtdQuWs1Cz*82<8rlp8grCg)uW* zNwaJqhMWSRg+KFcgIk`xc5v$I(V{$2Et)S4@D~R@L}R^}j*QjB*R`4}cm8 zfTjNvYR+>ymD+AmB?3Rol#ax}$L@iLN+r1=c_}0ci{3*Cu^mR7@t@y=zbl9LGTzvo04dWO8XVKIF6JEIyxrB+0r0*-b+0m!guaYGuY(}Aretd`@N z?=&qde(kiR>*vWNAZN)8t+biZXFAH)piCi(*{lld4Zyx`b#__d*Hqt=Y7BgCaJ%3I zoZCS+!;#{Jv{95JQ`KKJ1sqZuEhZg8N&t%z>sj}!Mhg5ilb%`E0m~$T73o;qK*f1; zH%R^&oT%>EeBwwOgG$JkzL5R;%o^dCSQIa(F?IByCwChIsCXHr$RV`aI`@VFwI>m% z72K#wgpb9d#Pmjf;Y|bgj~Iyj!#8kEzoM}kD+v%jg&#q923PwG3IQNu5=>>r``Qds zEmJAoiaw$o+ZtrFtGvPtZak^GPaHuoeYKK+NWz?V05+P&p}1hlIMhD%f)s=@rvCu( zX=3H?t=kdZ1xKkM_x{7C$WlTKT!vfXP-ozcVJM+9NavWWSe4p{kQEjotCYK-)3kKpe?`z<^5E<*2-RmmD90lJq0*xr&+OB&a8NiH-Xz3>;fY2Bn3f!hM;WYJ z1YSD|{}qqg$&T|GWM#N`h(REm0D-W=!}kGx-duAYGEhOzi9-oH9a$#BDPZ`1eeqr#UoxJx2jw|KyB9-t1edi}&| zVZwFb8iXOHAAvOh`3Y=XWMPqRDGB^5U;Qmu zt_%1Y5=kQ>9U+#{5fVX1s6npq26$nEzo4ZFRoVa?0pFgxpp}dxB{rLZ6c>a2OgE`k z=mJ2XS3Cus5C9M8U(tg&n_Db~zd*aa-WjY5|JOz(lCIO+J9Q*>KyUuqZH>U3ES$7p z`-b8UktIczSpjm3$`K~1sMP17UtZN!_7~yB>UK5d5YC6h@}1XZ4(C)|J*nDy?xtNBcLl(dZXxK`03eq zoE|=w*XyUtM^f^po}6Y;Q0bouf|t`!;;gJ?H}r%?!(h%VlrZ=T)`2X*Cm%WCXOB_4 znBF-A!sr*^D_XvfQT(hXO#RAT$z<606-t$HY^R&t(?=%J04H<|ER#rJ3TiF&78at_b3^Bv^>eLZ|76CAv#&((=BsBlia z?{lJckz&fwKGmjF`flo|35$XjrGk841NS;P&s$Vwn`H}m z5Ef2GsX$Mpo5<}Mg=r*iVSEL8=sh_%M&N{KvUEPFND0!koSo1fH|bB6UZJj;Q5!hx z9gYYP=P93TQ>3k+ik1xxjVWGQF~n~u6&pVGwVOsEfQ<|itRZQ z-ccMGIqH}sSRHoyzb)9fZdg;=s2ahhVfw3if2y~TEqfwot>OIU7K%5Fx)UWk?YFxn z>n8d^{akJgTZV&(2vpyz!W+P!kyhG!Ss{Mh{K=`*JjW<6!FNkNbL~?36|X7IP8Ns; zvMs(DZA1MRT7t)s6PTH`Z$-=H2C>kwN}rX^3O7A<%OZ`Nn;O2b*gm+KBoOsAXl#7G zq4YuVnExZvtQ?boQ2b(0JPg7p8@2O(o-Ou~in6DyP6h;8sDDICG_RPXwqx6GTKegO z8^kOo4NYIRg`2c={Ie%;xjwmF%npmx#$0BMfU!RLXH;*>29uOxL(|IllpT|p6JiFo@o-B=lY#dG75R-fkO=qne zzI1bNnMoGOcq7q6+bkz;nyx95)KqZaYupt~D<3ajD{d?Y1!FMCYGk@@wq!#WaKX#A z#yspH?q55WX^H|T{vX#mT+%23oRhK`l!7=%6FA4Uugmk6aH=s$gqn|PE?!m(;E$>j zYjIa-e@C+?|Uww9~6$Yognb6z#sy{X8Oe zAz#_Do9uo>K;CDN^y1eV1Sj>Q;WaHPV6VekA~WxM$Q1yn8EL z538}r69lq|V@u+ec=7>^&7@DtCDzeX5WYOw9nw%jb|-jUvDji-tf+@?nLW{vLcG@3 z+OwdM%+(N<;-x-L^R@zEBe(y+8iH`90`txg+5cSXkCklae|g|cxF$ZUFfnfedqgCh zUvt{?^V)3FhK5jL@+UG9eIneG4iJ+48Hz)fA6*oT*Os4WCYJX zCk|XHLn9z)fq-C@m@Ozr#KVn>MM1=Cg!kUtxixe$R2#0j|FMY)eB%|05B#Cw0kL&l zW!99>ikLltBZ8!(Xy88EG`wNB>JJG7dBsrcS0ae~`^x|A^&Q~RP!mxGeUx=?dmV!V zUV=|$wSGGmN9cYX{FJEqg?wwZiJTcBENSKm0$^I%l)wd!w~NoHqcP9IaiPRYpF6I4 zRM+g3(-AJhx_!;;d;Lxi+(T-&#fm3_|il2GV(5qbn_I?ST z`?WGEI(mJ!9f|A!;&cJ_f~hEk6E&tok?Pp7=`}Ig1CA^}?NZEUSUZha`+hwMu1F}P ztISlagB5Wdtbq8hwDf{aGr&C($Yltbm8T(OHih2YtAW7RA4!62@%J?;x!`LOr{VHU z5KS-mfBOxr&VLAp-sVHt90B%CgpjKc zATU)O_%td|;aGn0>EPWxjTx%J|7QEO-)fx%YNXo#_5+zvVM19_Zb}+_|){>8*oxwPgl-VSn~z=h{5kU?Ee@g4&8T30Qe3{1Y}Pr z0x<)Z0mQ@zRaJ*+luYl2b^Sc_n)RFaNsezb&0< z9!Ib8h7M|Lh>&4tLiHLBN2ijbh5}Yvs3tu>#=LlXb*GgAXY+JSFMW%d#3-6bjgg)>rb;{IX9TdKNA2jOl4|-icl8iW>QXVm z*LyOwnzGN*>5T|6rQ-gXWEEwVfvtdHV}!mFzjZCGJdv@bueKAvt$o&#a?U3V zR?1b#H)>%I$LQ!4rJB75mbA;q>r{1ohZgJS&n5swnrp@n9KP;J_-)Iw)irg?*|Uz4 z4TzjgL%L3_yF#(wExf`1RT+rkxc|7BivKN#aC~z&^gvK+d1;Vnwb-0AS?q<&nr^u} z5{DCArp1ELX6pPUQ6c|@Wr!yW<71{h`%cQkhsmUV8anMasU>AyQVE*TP@RCMIyObh zdZ{l!@3d@%^iHW?#?2j{>q`J)`b9dLs@X_O5DHp?sQwubYgfF%;unb%f~nx7ve2~n;GgEHO8@E~ z)LvL!KHx!I?^SH)VY3Vr-!>e5fw25XXA+Kvc{0I6S4;pkAdDq6^@qKDe&msKRYd0nL!FC1kJVpm)-+}nJWE- zoXOL^;|oiQK8APnipGpa@}PkJr^SEkaM(;f0!|h{e}T6afkCjxa}*!jYvMvkO)*XY z?#l&3p0qsFZd5AVor{v#IJ(z2ZNgTkXOzH)7SF1GSt{fM3%mrDEq?Sh4QI>%{_eVbfBZ@tM%TqOcmhKDDDjQe zXn5;O@aYD=06h23z5qPDY7`tpWcQ7hBaH4E{ZASFI)nUT^y$Byr*6vVk0iW6yROn8 z_V4=r(^+`^dn1MPx0_bDg^OWSI_R@9;E_V`#IV;y&EE|ePH1n#;^_JQ*V7*IuhHKz z+e^y#IY||i8n1fdmLQr-RX`>+D=$m%zSoOIyu3%Af{d2LiQo0hGGtXVq`*HByb(=S} zj;cP~1%%70KEzS^V0W@Y$znL=>)wP`&178vSxDP=JjADtiYqs^0}=vX>Eb$YXLAG89|inZypZ-?lZC_EEXrvO(SEdPBIG!srnjzxwcQ#ZjiyD=IdAbz14L;#g?%1znxx zfE_u~C8i4dyl7J^m#0#452)stXgz$}ex*ti<9fE`yugzB_v^=1tIa=brwLX~?I&kU z6RP`Ji{FN-3|S-*AW=0^-5PazB7BMLiG`L)i|93+4z#qU1JTAiFtia*6C4eq&ySCF z;8RU$)Ugiq8pRA+gUza{@Fh6FO$Ff@ZKPw7pa*kFWna?@9J}+7tG{d zmq;C6paf={CTy-&;k;bw_Hs~DJhSBPZJ!a*rO2~SMaQLHmt<(TFXg@)-COvYf9lPU zMHWFcx|0K@2#avC1fE7vU9q}J< zB%dp4Z(^ZhV-Bl6q_=mp7OKF!Q^*f~9fx4H!w9Xj5$*eU?X522NcsvD7Vt zMAR$a1vm!C+`eLEvonxG z4mkV5QfP5`C0W`dI+T((5c+|%2q86vUTz5xnesl_#;2% zzO7x}Q@8o=k{lj`zUZ#E5$`7YkJslH=an~};SiCV!1xvl-5qm{67wK81j$bHnktw6 zY3wh=Um{jzNZhYBV?UrCBd9hAtE0uUjrYS-KKmbaJleZi$Kl!=oA;j zG}x|fs*2`fc%sD^a@apX@je(?hJ|Y2S0wtHAHj0ePrZI%Fx*gWNP*P@*i6m|d2P)u z>x{Xa?-XS_nwg}^@1D5LIj_pP5^Z?fF)#OG{$-UK4*PiV?n^ZYSq>xl<`5zNG7~F4_HcZHuJEPkXWF@8v5xyFM6vUZfF!afVN2 zBjlAfxUoW}xS}Xp#`v$qq-nzRF2cbS4?7`udab_$b4iJv+!;PO-J0u#0io7?CUvt) zr`$driSs!B+5_TH=C4y4Q2Kg|xo{JCe0$p|2dvuA87>)Jp`avZz60_5k!7=u|9WkF z&rqOZGJdOdoe1rK@jQFZSf1l;eZ=RP`hnID7(S1``jhYLjt1*8>yraL=R+2h+Ie_6ykP}10)=8>+uQO zj}cY(1Nqf@=0K@AH6QB?NeG#>KWBQ#5*MS0-?%J&H6)Y?cv8EIn!56zFbt`$Voj`qLTUi&K<-z!05r>Mt8A)H~zJ& z8M18-=WCzG&kgO8o6GjREa6q;01??%+fi7*>UPWju{Q2#{!x`!rlhSxLB5ZTG7Zuh z3Ob%0BfU43*)r(fa<5FWz$Mb=8OWQEXyGrMW->jX3|7ue$h*MuHQ>I5fT~Zb95V;& z<4YJ0b(XR~ykAk<#Wv;i3EZ)IJ$-2ol_3P&=rO~dJ6?2ii|c z@Q^acsL~#r8xG85*~iSWA!LTLZy-i49VDfE&Ex1jk?(YNoOH6aw)Db%eW+(=kmHQv z&Xo-hFV3)&aGd#9aDh6yAcvI=i(kxn%IU~r1aBl3_t^2t&44=(12znt(aGh=<0-XX zVH451m^TI}VIcN1;jKnUAxP~6!*$&T2hVW*47I6Yxu$VZwv9Asbf&Yd^Tu5ucO;~6 z&&l2d{nC?2u0kz)y_o_0JN50Cbi_J{Gd8u6=VNh33dJQ1ohtW9rZB#-Y_m;`_OQnU zZNxkAc3WvtJ7d$t#E=ntL=bGNjksiDZvt4YJ0~&ZW}>Igr&REj2E&pU^PX=miDNcj zQSoFS-&uLw0V|UbNd&XG%OGILb!=DBGBZ;|Zo{{uO4BR}}?EwEoukWcwlp!%JCLS%NvmUZLWw=S#9v#Vr&wZCcKE?tPAAGZAAx_!zV-JsrE zEC)6fm}^VSbX-&q`MVC~UK;i&J$IrM-%#7+9^v#%Rdb~f-ZS#h0s83Q=Rne9UOV<; z$sYG|d4Gx5-t+L)px;lWd_0cIFfHFihk^R>9q&^ z+00S!it2ZH)3j<(VII7zA%ObQmpPDJxu&|f+dZ?(RCRAAYj&N7EFd4`wyai7cz`sJX3=EjlRlU6 z@rM!Eu#z9Lj9hZQ0dnbzGYXfYcpOk!05~!z~g$FcQvJST z@VPz%-H@6ID6=;^%kX9^nxU{h7_BbDeEI7V5A*2hhFtBp}#i;cIR@lfE zz|F6n303`&NPf}Af#-(13^N%p80>@rJdOae*JSgvt9PU2*C+zMBdK z8K?6dP^tWd?=Po{RzKWep!*C98WV1qDfIm*ayV7*=|l?oJOI%Fk& zHni3PUdb67u?+h5)M-F)-mIeJ*p8MjpPw|}6h|O}0vLA&5b1NrR%Bm*CF{s!mi|Th zT{=Gk0FT;|59~bPjC(H~j>|-%r^rEs|E?s78OyRm1(#(zQYZ%Lz6`Xej5j-sq^|{E zJJ0U9!N1`N;nFzCUr`w+JxU01P27gdJ;a_AO+G)*F3FL~ep}yeZRz5@kk=Uqga3sP z4r4V~ya}~kD&2o9@HcUoCK>`BdN1RcV_tQt;Ap-})n=P#3(BpkD>krc6L`YR(m`O( zkvQw~2b{qlLFO{nHb|FMNeCe`$jDvda4xoB9nF1o83>FxLoZ+~7ogKUL$zuK)%*kJ zjy|$&7$0L`UvS1%v%?id$z>(;vV7^F?UCfjNSd(#FrAS^dBpS^RUuzXdA`tXpW}Hl zfWvGz3>C#UcB~_-F=XjdabdRp_{0SSTq_j|6f`a(j#cL1v0VDcUpa3BZzlfT1eE;z z@)`76mZmk&L{x`|egB4Y71Ec#v78WjP=t1G6krS_krCbgFYQ*L?wOuj=(=mdv2GdB zZvYqO{N}C={Z>dVA~bHQO4^RBcKOH5sCZR&RFRp09% zLr(^B6SB?zsx+Rx*C}{klX;Wmv{XCS=C{r^*%(C>bN8pyiWiQOj`G@pR#pZ19E|u=bM(qS7SuR_UD6lB|JJldfoZWgKk)1^XCHAIY@cy7ZN zsPJWAV5`@zq@p6(y-$ZV5Ic%2FaO>#t++~o%9B!q;hvsI@92`7+DKdq2!0tOxX)ng zM054mA9=T!(>U@FV+CD|Sg%G?i^J7W#xCySP40W_GsVuKqNbhBtRCkA0Nt zE`Ii~OW)SEyCFG<8S;?E?r6$DpD1oP^giY6$)gr0!XKIlSN_l+Rt;iL>g(h-jjJ6V z=;u3Kw77k1bnn*F@0`ky-q*PpdoR%Yuh&tN;;pLNjBN>V@e;3CE(tZgO~7C*(fv~b z87so7)CtEEs>kB9EDmoyzILOs+<5o^U)6AKf}g{AcAt*GEYnogP0;Q0*v{~inyE2j z**sZ>e2Le~_qfpQvP?BSm#ls9LVCnFK8aUT7lj&@XGSTS%z9D<0<)yGBO}|xjsYD8 zF3r1z`&)IAi`If_Mh~ps^zwBx>khZB;{4%vrr{9#e5rY2olC-{^70!y4RasV9pzg% zf_hbVH2l!0f%Gm1oEfAyMlitFi{LQeiFb+h_wMz1Y&^ghEE%)82Y>qQ=FH^8{43$S zGl#=Qv`RMf=4z-MI>a__U~6-Eg1n9Uk|Dt&__@Irq59mq4lbPqX#uAoyy2F`k&9cS z4Z`!zbsp_HhIVJ3II&5XCCEH(N46ReeQM^$HO7^w7T%S*A`k$zy!I0!FMBg9e^_|0 z&`o4Eb>H{Ip^N{G`L}D3L0!4An#I?$ihv`%7WsjOiO#`?#n8cmRX!H0KgrwhSMv@& z33?&FdsiO#dhk!d3%j~hlnmcxx0c*U=1#2%x71XOUclbJn`N-`lMeRNF@vry-{tgs zAG33Evdw_qGwt>4kjPk@!RAe1&Anm{(1k6Y{wzI*&Pzxe37U3N^bqsougzBbi&S#_-I6PjoBf=;&7#*!gZ6P-;dWZod6 zsv6Hy{En>-w<+(p_VEduMQ%8e^m4>R_nF<|m8Dbiw+hb^lIppnNXxUlKF)>Mr7-|}b_(E=|gN}Bl=+xsaIDf7BsOB8ftfeu^aq-F)=~C?L4@Y<# ziWj6f5=6Gi>?iQnIU2h>34GUUWB-k-)c4+K2G=pnV$36HfeUya*6rb8S8+n%2Oinl{way92WCBRDZP;yl~YiYbsE*nv3-}b z4!cj%o*3g@rBU1t21d5Ghl-2m*xO&<-4p1m^k5-V%on=FGJ5>XfEBa!=|Z-U@~G_V zH8WGz$$__BXL%K*MY|-Ynq9im0w?eB<(4A2`DjsUQ{%vCNbk*Xz{80vReJaOk!=km z-bzVWL~T?e-eMs>zx)Q$)|#2{{*%F*8wlEa zbr9o%E2PqHL@5ItJ&H9Zj9%P=g212DYv$O_Lma@FmojVFpUD5q{Oo+nmM~4Ee)a^s zbHZ?}Jp{g*7&xu>#(a);Qrs6*#LPKeqwW38y3Z+_N=gL;Fgt;62IdC{TaQyzHe#kCVs~j)X@W9h8>de;nomf2v$X?Yu5LO)!${2^E}I*hXlAv5z*MKe_Z? zV1#eWN{ymi$hP*C-MrDrUT<$d1EinoCT^C0&YZW6Jyk%ae?3p+o*;Q54|8;&)WOHh z`!~3D@qgle@_vQwnONK~@xrFvPMERNXMm21UwKFGt?MX$AJOrBsK(M)hVN_cgX97V zrYr@p%ZN%^ot#zPTA!2CEtp!vu3HgROV}E7;8I_40j8dt-3L_wyw8^^VAy~A#>U$m zS9<;*zP>yj>izpald%l4N0hOJC`)@c8L}3I%64-ZTHGQ_D>2?0+1e;HZrM_|1vgto zS;vxgEjKCK*iy+_494&~ulG#b=kxjg{<)7w-B+*Wyw2;K=ks~ao6cN=)QATnGaoRG zoOI@K1OI)mq7p%|Iid6fy-zO-(!{n z47k{Ec;gTB2XQ!5-U5#}!nNzM_I-n5s+3e}?0Q2VnzTTiY{>J6@h*m!Qku!h+Eg&! zn)kA^|3dCD=pdK0rthSPP1~iW2an{%_XUhu??UGhU7n%%qJ@4rJYu=eo)7Cq##28C z=b4#IKFIbl?6|OfyBk&sOC>(lj$VnD@{1*`LQ6ednbTjnhFNQh@6?-|`3g?F(n2tet*4l-7K)9C!?1;YVcz)%#G*w-^evca=wP)` zXh(LCDUI2(hB-ow&%ZoO>4LPNeYYh~|2CF!d}~SXnD7)uNIIb@L0F<3Uv=n!0o7R| z_hWA&v))>OokmMJMm3k4b&q>&Jzz&XOgAMoI{(2$;YTLY#AwbvVq`dLy`0Q%ePY_G zUY8&X>ZLq?jzbX9+>j5lv$ODbbmjKC@Z$-ZCWm?m*cJ9$e!GlT&0w3 zV&r^}C@f$w%hqSlpXMT4(nM_h9ze+D;cgw1prJ}C;W2|6> zO(~yf;QAPZab`C7{ub&(rwnmllTX&}4|<61v2^ERio*wM_t?{rfoh|4!Vcx3s437V ztC73iFqaDZ-jOyMrI+H+$a#=Wc2-S2z-tIx)m~{{2PJ-{)WG$<2uDC3? zCfyT%1ri~qZ{stVA_1Na!UNpD33rN)2RxQ64&kU>8I66iVx8^k2C>wIQwtd;$gJB6C(~Cm8lBT3Jc~Ygoj#bM_zE2pg5qoZn9uM~(dn*x zi^EmDlyMAT6{dOHUi`H`j?jpWkQ*k?vbFJi*OevJTpkW3Te^%kwQS|REkj3CJL zj!^Hy1p*Ff9U$6e$9%Ceq)ct9UbiqT(wnJDJ*dA}BAvNdRPgiV!1m0qt_5_23cI&c zx2#LGJ;+HHn3Ue#NqpYl*!b8E`&t8U@K5*22PfoPzN7{fAQEhx>I=gN1R372J5mm+ z7rr`*%jTEcr?xw6mFxKf32-ES#4Jgm#(=Q(=xDyr8r100V4=@{wF)jjPy)qfh z4WohjFZx4;J`@LZT61T$A|#P-kVU?iU{bgrBbqlmRrb0+cylFq^_vgCtOPYF4-N?& z1e72sSD^)L)j6w^5bfM|otz<_If89dA-^sUhb3{hVjpi50W% zwZ5A>DOxGkVr}%{O^fAS`im%6tT24TaNx}s{TQO}Z5j9=0*UhAH6qddmId?|(J&|i z_6~z!Ov&Kqnq`{rqJDib~&hN-SMVF|)l%XjpH`4t@W^JWT*>$V9{ z&cSRIZx%mC3qSA^$!td2g17mdV>d4=?p7_^HqmI^w{E+y-pS-7?t7)yifa+BPxj+S z@LqI2GP9ZUK&3j@TRQZGccJTsxB&bFv9IrZo|ffK5I&4q?_ismG>T{*3>|!o(S`=S zW5`qNGOy}&K1L?zmbSZJZf46pPjC}AE#BVjUA<`T?BPB#;6mMGREp@PT)T1EaXj`CI%M6Nk z@0+FG*RSoqLt$Ir+FiZVldR4%lsmY#Pi%pZS@HH75_~l)#7#e-NOnukvnp;7Z}n&9 z(>p9<=>9&mOA&&tZPw2Huhka%G-Gy zjQubcPMn^5J+ry>Vpe?a6PL@)KC`b#Hb_PLSE5S--nhZjqG~rSTE4{_d#(TOCRJ*P zM;#Ax{35nS=R6QS4Y#atl98{;cXVE;pa1n ze0XvW1O%5r=l40hy$6;N3HQ?eKI;<;DN(LQ{7S%Y-V?psE9qWD$}V#)_Pl0OOf4OS z1nE8z@z!ws)oEpRuE$Rbyu#AD&)%K+%GP;;Kck@?3flJ|nyIKg6_=3BuRlW@nms&y zeVNOLvEh7Xx5*A=ZR%66jCnD<054c@M$fe)pY0edU^!>)p3?LMo`V-Lz3?yWAhA@B z!Yvr}A%8F>P>mD=2}3p^un7`|yxr>0jm{oSw}tud^BYdppa2LNs|E$YPKG-8B{+8w* zHfM1V4#)UF{HSo)qbNHAe6>OHr`k<+H7UXZT|VT-v0zzqw5AWd0YHK)Ejsc!fW3b# zsz~8b_v{qXT`B1HsgE?bVY@V}xyfZ{`kyx!?u7T<<~sCG%Gdb9AA4jfM=y93e)8hK zAG7_z7?zdU3|aYEXAGRFCrjJ0hyZDI6 zh-!v9zLzZCUQpshdy(co;K=fL&eQ4Z_vo#R?j8MC`OnkQ)U>#0c^D?7hk~SMsq~9} z5F0aD?k$3;V417(^T~x zxY08~Ap(%kzg-$~RAeH=Ox5p|dom3L*wfu>sm{hfOa#;yOyp1{e3d(VDH6XAqTfD1 z+&`TRe@M%}A-jL5bpK+Ct{CV6@F1T&??;4249<`Xsq*_mz!tYUi!z2g1e7-dq83Ex zjc0>11oYH9^zU&6+5woBnF3@15^4%FOwUUN68c}0hG6Ph%^Z1g*&&8Or+}(jTSgfj zP~LaT^B+3G@D{~@;RP85@8PSS7|O-h*3J`XyLVs%z{kHiDWKvHhxw?u6;N?XM8jJt z_5uAJi}K;pg>1;13zr_`;J~BrR0A*Q>bc=T*HcWazNBSY6F1dXYN(==GL;&4so4ht zefzdZo)Jxtda;V3~F4dHG+6SnDPWI7fuFo$z_xWngd?y4*=<=C0U z&A;E=KR>96vwG?e2YBh0sZO(f=Ww2^{ycX+S){qf9Tp7}UgmnZHujzK3n6D zQRRl#Xm^IcSSS+Q-a#JRaY0y7Tb0w3>k_C=ilJ$3u%L8WAUhm$tn8%OtlbzK!tJ=@ zR~b;OvM}s%yi7%TwIirCD{R8sYZOjayp4AJvQBZ}0@VY8kKMW0_qAoQ9}aV7Uw%&y z2?bf4vvgF=ih)JN??avt6Tc6Fgz4gMNmKYeFGz%U%b&pApM9Ei zueFZ>?3eF|1bPVW-Ri1F2KX~l&7^viMYstR@FRq(YMD8IL`V$JRSBd)%mE)`!AtUv z6ck04>yscgS2F_qcD}xU5l{+cVh-Zj-&aD>GS^_KK->WcGh9-%sLpDIRRXOIw@+V8 z`5qov?jp%)PfUB1<&^6TXV(QdQ2&k&vCiF~{qBf_IV^nqVa34hsuJAU z|B9$B!A(`8=;-LSv3I@==HX0B4HR53}qY<(GmReZr zMLN>#OzWcXxH%!NMNR_q%!oYv@9+Q?<4+BDNx)B(3ms_>#xu5)kl3L=$09O632Z7Y}7a%iyj`w`X#g|Gp4r@WJ5M z*$TK@!^>H3aWJ%!ZU(d@7KUVc($1aaMlGV>lS@|Hp5_RW8ZVP~bgcE?HVh1THO1oLKRpG%R$9ZwfvlP^})t_HCqBq%4##d*Uk*xLbMVx4CMa$`dYBQ_M*83iAQbT6lNUyel)xv#w-y6w zX-GWeS#&D!?f*bnpjkl?Bp)LB*U)ECsUSZ7gx3%R!(|(MfFM*;Qh|+ZIncyT8oGQ2 zG%G9R>X)o}PtKWEnUL7x0|nK>iFf)sOgpeh8BEM><1yQZUhT_FDFo9pLQLzsqkqMP z6J`~}dq2-xlbChR^4-lz(StI1z=YiQ&OsDYealXokhQY+J~4p;c%Uz$zn+yhY3dpE z9J`ZJCW_{J>eas0w5nD9xcvNmu|NuI0eSps&SRKw=8d;BCv4q9a^Hx-bOMtd!m535 zONDz6a8i14+DA?VZm3s6yXkS0b-q^x=%KMd;zs;Ha#B*5w6DA&PU>`~?m3g|RH?;U zF_lm4f#M=Woc!d2}1pL5uGv#AfwtN;hen6>Bk11?Y+%!X2!cJxqX#0!*>?Dj4M@hpHHyT7#9%7`_L_xq?eDl;Ju-f z?ld_lZy&zuI!X<7enIRj#4h$@Q)Qow(-J)wy6+7J+mZ&h&lv8zd<1AY9ccNT&~w%l zfJT!3f0pW&)XyOsN76S41icmcU_F|*PJ`4`_0i09NMBQe-KHr@^xF^_F*m1i-JSBc zP9F(cKB5ezcGv^`N%^b_pfL7KtKIAkpzp`Lw07QCAFSg)yhvIZ>IMwzCxN+` z|LJxcKPTJZ9ZRn#|0~8&V!=QE{YlQODlpC7MIKSJS~w4cZpRup&KijPeM3;-4bg#6 z()HIXIkTBuk|5i<>v9Gu({1OmJCz^9bu)_>!+&~14!kTGo?N1TLrQ-|HO*c?`mePD z$3ZE$n%cQpq#CiaM>6o|*YZy`V#gQO(7eQth@G)_qm~pcA4zg*5%nqo1K7J6=j?)? zrCcQAB@yJQSPMjjIez~5-_k^RY`y9Lpzy8d$7P9~CM}{x>Ry{*NF6>T9UoF;rh|s4 zYwf-~daZ$(yV2FVMPc@JPQV+a8|Pi3wzzqAuUTJ)MT0I@TkCu4&btyd;y&quR z{IZ?9DrMeR7^VPkh#0za<@S=f1)bI+PhijPwSg?(axqeXZSV~B$60Xsk1XxPH}u(i z*1EmT>%MDXwS|1=)v4ZaVmgw3woQq2+=a_JnKCXN)oWtM%$0GS-KrpTu$Y>K+n%6e)Kmy@4 zK=a-CI5f{MSDiONU*fFq{by!uyx9=r1I-!qViFp&tI7k#MmUd^2TDdi0sB;Dv* zDApV@}{(Wbvuk^?S&7mZBwZ8Hm3^9$BUeWs^nM6=mpq0CgA} z-T6adIPqG6KG^B~ErV0|7)6<=S74_D35qgjUjejl+C0d8c(Uni>HU{f(Y>CE*O6Zi zX^^f1fhWi~fCGr!jupM$`tB2fab`eZ{p|GT_ZY7R1eRj{*W_J8$x-c_Pv#$fIkwyA z4<;Pz)jI_%-(sqRR9k}1Er7XyMUJ~6Jt2VjQ*Y3LV6$(K=gXL@kGundQ*72zI%bB}ncZxxAmoP@5|1PJ z0YfDYKL#$mUpjG>CMlohfUH+L7A4(`-ZBLQSVSl~tu4F(4tSAF7*&Iy827{>A?Z`Y zS(tEHv%-D;eAW1Taca_k0m7V`?}wf>7-yfS;w`>$ZsDml+~W8h#HPX;<9C9ey{ja*TU1A(r`Yr;xi^jXfWUOD#*Na?HLi1vQlt5%A=&-=Vj&POIEpU|% z4&!M{D(8hgg~jgDyt?^gy7^9mb?vH=8eV*_uaY7rrCuY1RssK!R72OEJZ0JS`5#`*9<_o-VnZBZo<~77y zQA&TUNt}Ez_y#6(atQYg+ML~gGf(@4m&DF1r+IxH(|g|Rri4j5OcX3xA5h$;cQmx& z%hvqSYe1TXR-Kp_R^L577S++57ZHFeg*^vGg|l13jrwYiR?eu?&EpL^_KZF4Sr@*~ zmRT%m-$6=eTrGi#vH+4F(hp?pmU_AC@$ zf@PvuD7?tntIM?D=XSF{=Ony}bhO~iMPl)epxpIFgml<^=ntZ z-GSL%ayu!Ph*E6JV4|^_s(^~tFNU-RB5U&=r<>;s$0qG#E%thL4fJ+j3k<8Y8b?s1T<;*y1yR$>? zh5<2+yC~QWVoq}B@Q2ct6RXJ%hfseaW|*|wN5Ynu`=At`wAR*K>~dxcM<@D_{Sv#W zLpcFg`X|k^9{I`}P!Io`zx%GiDX89Lss<}Yp&Yq2Az1Nj4^k|?&E=cIsixw2G*q7W z9(P^I9U6M%w(d;K#W!?nXpFR*Sa*7Fc*$&^^=)+1Lp>qJ|&_-z_> zp4EKwq-%j8=u4TdT`daH2TSC9dl%vW#}v#(vWWmJ@>*TX^oVZ`q<>l8EKYSS z+BQALF&6ieHN6XETEVw1bER5c8b+En`@F7Ig4}k6A9JqoV@@n2NM6i=bzafD?2e#i z;&trMtt5;~pZy5tks5NNoWo$5>zwM$fw}YL!id*_JeHp#90KwfI#2o&B9B+wg^Koi zZ#v|u_!U6!6x2cv?&Ig+KKzkTyfySPYHQ^c_HPHo zc9bFq#G);{N_pu%)(`wIe2%W)kr~yAREWbRoN5+q7$qqdUKJeHP;Y_lsg(E&UkAvg1LNkaB3dVwtvk6==BgTl;#Y!V9$3S(a+d~*sREhLR92_Jx_5J=%y;=NPo@8XucJS;!7fikl2hB%hK_a$Oi zS#hrNrwnXz_g%`Q+CaN3@pcADYo7}-Bg|}MA)M7?fHP7Ppfx7vkPvoggmfM44oZiX zr=k%ftR0W8efP+|(_q7%p>2h2Y;h?md$)hK8cs?hikaH<>9XS0%){O%Z~bu%`Ht3mKM-anjY2Vj-aoWKoUyQ!+bG2U&S*jSn>!8; zMw)^xZPsHBqsnoui?8M+CkfaC46zruoiZ^i5K#WVTb>9DfQBfsSNgKrvF5b5+;d4& zn|VXtX<@U9D+wjs7vmx=n~NSSxyjum>_52VB-SqSA*5!>fLqboBrb2T^j~lB`L3pV zuM{ca(Lk90wZcBxO4HZKX5f5_#kpCYXI36s4W31pa#vfO-6=i!$_*0Am@zA?cE)cO3O%|%fNXx=@ zlLI0LfeHx~XDF6HC}IXH;Y6^i9{`_UEbALu#y-2yo9)G0AaqiVPuIPSjX3efbbQj9 z>^7>Y#R9ne%aM*V$fOd8d2@|ICe-MFy~dj}1^thtcdygqz-^)Z25yt8LRDO5tMWJm zqo)btCrj#p#|RWRKlr*PC7HXCZy!N?G7Lq~+B~GdSc>m^Q_4y-p!{;Q;V)9>t*&Nz z+u&CbCL?REeyo|R{_IisiV|*Z72s49AF2>e6&_yhOm@2)3ypBX5YW-_1^LGZHgSA# z^VLjXo#;k^O2^x<4pWFl*hVT?k@u^!&S}1Vmbc$gtmEc@+{07kGxwA~++4Ks2;tV* zJJq>F(Ph;(@p-BmPe1sNxxI_CWLLBN4^nzmr0b2Bnh@ZkbW(r@_+N9+7i1=Yfisu~ zwJY}8WPhSc`d3Qhcd*k2uBqn{2_BqvsQt^M%>(b>NLZsse$~G}&59 zwfQZOGttBBvY+p%G8God?Rp&9Fv<{qvyc`t6yUU?z^A-Db`(71=!hXk>Py?ttcX!4 z@!Q$|RN44c?a>)y3*$=T@#5?YO@(a%wMPMg8M-M(jc&ecYMO7T-q-45_{VB_v1KGz zdD+lL&S_T^)3qco=eI3V&=D~Rq#3o4D>(wWN1**QVBKZx!ByVn=vItR zRUf_Pj^NqZ(Sc=(jLh1jWEipO{~D1Zw=LXpDOgN)JAbzXEirtzA|i90t#+1k#I*z( z!X~wDo`_q=+r~4JR^!?gkL_6`XlOM$3JcAlwJ*7<2XlNs@l|tqWD}}H^`#T1b3;>M zr(DNBm^`a7@?{9}_WQhh6b8DS@^!Vwa@ooSZ4gB403VcZ)khTb!BO@+JCer=&7Tdl zRFh{Qstw$SRk2tS$7 zkCSNW+e}D>SAS}4F&r_nIY1C9_~-z{7I=bYt2L#W{U(tcm?zV_ z(WY2q%6NLRi_wHw4sR>aMxEYF6H25jNIcx`w16Ll0_PeYYrf%DA*;taOs)&ozH|1_ z5pUmBqQR5OTzDJ8{Ai*AmNd_bXkMhS7_hl|2|RW%RRS`VN=vu~BXcc55ku?V;jb%b z7cMwHkRO+9a6kZsL4WUYwK73}^2VtEr$hO|#qA=Hi!!OdX+lg-5<9Ot{~R7mZwVTx zoclH_p7S0e<>3(#qJP2J+wre%48n8bT5U-d+Rlq};)JWqa1#`+jF{!mK6~h*BH#!Y zh5T&sA2x`#5GdxoE)jqByi*rl3B~aYX7+MqMnDm+E-XFHyXhEQ$Ze&pm02D5k2Y0tN_?UAUM zgY^u~jKzCaax-^N?2-B~kT1kf8MlP;=AFYw6M2?ks7nxJ7hNESOnZEf;NMNIBO?6G zUg`2Tb1q!K|K9wvjBxS|-NLv8%OM}BVF7sjo&qG%0rBwC*D=xRKt%-p0lb&Bs zMGXDT=Kna;#|UsE)y$Dy`m>7RsZ`HJd*+==zl6Ix`0Ga}BB8iaE3kBw_Bl>X!Tp9K(*_F{)RE= zYsL*GCMRgle>=R{Nf|NCpT3S4ea&STZE(Fa zS3JvF(){Vm@))IsFQDww6<>eh;;OG0t+=TxwBhlpQ0tEqH?C{xLxS@=D=2uY(-*Q> zdrYy)UO~ccu`Uf?|F$-N*V}Vn5f`6`vu!v^xu{9}5^s4%&*!UQW3i*dct>2k_wV!p zUzPAosYw-Ehhf7mnZ?=PhT4lstqj6P8urpxq)0l2LE6|%lf;PflFM{mx5+Xf!rieU z>~0>Ox&W!6SlS`q(B#A((ewqBz@(YpHvuzKW6cILll>Fp<7@+L;!Qy1RL@`~cO*oA zSo`Zb!EKA5=ujQ)+>bVL-fAvNq19ia@-{XE(`+!K`0QC3G<`3>=aoUE<%*z>Zi7CF zSEyD=*nHA`bNRkzos6E!dxfGo0+*u-Do#gK+j^i)we8zf z8u!K4zK)hYWMjW`a>s$vXaNk^CnpzvsPl4)+(FM*ew|Y}vX8Inxt95q;1{uF z=+>++X{!s`{t38DeMY>9tqz5DztXs^?Oj&;?;j+d+}ruGu&rUPqp5d!rHM8Ll10Dd zDP13dW1|BaeJg_oIR3Ol0w=vYUlz4BXl*cCs)^D8*}yDnbl|e$s)7ecW58>B1$i_5 zJVu!)Z;sO9TShjv{97x0aC~#MhWx8vt5V_yfaa*odZ6*`4&mj+82Lm~tdY!$jOW+I$q*knsG7hG;VU_u@k zi`*1;^mM&_;Xb%IwdYE6Ur8(lmjf8O4LaGl&EkBGL0GnsH!fA7^(aDpzG-0bjm zeKa*3$$T8@YAe1gt{X$HI?6tK`y!|r03YRZAHk4${4tP;&@{e)(M|)L4xChD)QA%F ztxW!Ev+vrTg20A34{W5^)di7=6xq9l!1S3T8|m*&{%OB$i<>K@bsI zn#y{%>o3My34$uNgm3Bp#uX>SyPeAs{!sXtQ@WY`l;y&-E1Z7X=uZnF)>$I7FpxvF z@&EsARWSHPd<5m&5qGI8j;Yooq#%%pawEcJ8B=gZhK3kno)9l_GAiINwD`vVW*R;ZE-y&tsF2myx<8>9 zOr?Br=G|DAOd0z%c~|x$$kUWcB?U}E%wnwf&60Tl=|E_ldNT_Q8z%6UTvHsT+IyW3?({z6YH=agM6K9FaFlFwp4o_mIPRXHviR9KjViJ!_3Qlp6zcM7_TWN zCc!xrlkv%OCMK)P=qnWD0FFZt!Ni`0QVQB`%)1^w9e%~_uFvJJ(gkBL2QS9wmIq(0 zsIU8SYMsa3;=FjtIeAnfk)qN|u2^K9%O8?O1~T{}W2LX`at*9@51nLytZc$8i|4pDksXyMa4rE~xN{}Ecnsg@i< zd_Ng(L<1+yP|n6lGr1aq>agz52T=xq2d5R2JAOc(&(@sGxA0EN=vYmdXFs&`t9#R4 zz6ntPgL6RuL!`P@3#kyvgSEb+*0 zse`8l7$}|l2j2!H*R5_sssjc%H$U@RjSSEd_}K}T#P7FpC;R&*7o(t$W?J~mOu>5s zv3_R1PvTHxC5R(05*&(d3Egnq^4!`e*DQX;5pO)qT5U-ZdIOXVf$zh+% zd%IOts@P5X+xYPZ?>42jHx*V)YUwj(c|ri8Vml*Qo}ezdWz;@)!QMZX zlWQ7|M*dD_+?OXT$HMGcV|mZwtNNQr`a$f>rsv{74kr!ik&yHxmA?@dFs2rUX;L)8=F$`bI zL?8_CVhL>_fU6oMyWIdO-_`l-h)yCGa z@^p`e?<%AD;Wn(X;mz(&+@qjDzb-kbeYGaOqi6=3DaNKI`(s9FQ;TOGJmO$DV+;_z zEsmK0;~_$ReiPa3f)G;fPe5w{oG*jv>hz(izn38#f3uz;Olh~986RP72@eTmtWYE@ z!uo0=^Xk?f_eIS43N3?H|CoJDj><8CpXC+b>9sVETM|;bYL9;#%S*G7!%vfXC`~r< z#ps?DB0r>NTG$sAo*YeEi1NW zh+~|c4@!tx5Ah~g_yUAp7hbxZ`Ryb=HlAZ;A|M1`qo zE~9d)uh?^Xgxyt%O~G$_Xf~*yG1>SGzs%a|xkGO~E3_f?E{J*-{|cAll>h)BDPGG{ z2+PCs47#S?6|2MAhdh+Fp%mY!IzJl+Shs|dJ(I*QjLY_3c^`#4^-2(f_4$I=dqQMXfS(Gt5+y!J{qssK~4*R z*rNQPc%C|fYv{~!LE|`FC%ibGr9E*OSK09ZOuA~$m*Js~z!%38ryQMxL8RWuBUIWz zsGO3-1O@HAQ9ztJVFAq6g^5e~c!Yxr7G76`3KlND0_SqF--0Xf_!LAaE#T^HN=IJ+ zM3l|qkk@kBZL%5WDg;w3cwX*z8$e~|93Fp3)oQ#AAMABI7W#uwIQzOA!dlLEC+l;Rj< z34$V{PlZ4xNN!*(CKFVaSelPq2EfHnTLdi%;@&QEp_KgXKzfwTGuL(T%S1d=4hs^6 zi|cTEZ;cBL_BMUb|CPD$#8o1+Hju-e9hGN~(b`SSEXbfBKbDm9Z?OM3I||D| zMNi&4f6vb{7b2s05AQ%-b*?8_XKFiM_w?gGb`>ig*D^lED;?^p?B152jcSW1Ca22V z>t4iNQ5ICC78*tzkIBhgzg7TN&(-_0 zx1wH~@uNumOCmhaFWsh`$EN{lwh;-c%o%!d()JOQOo4XbyqSkCheB(wI^;j`Gc8tfj?>}EIngY5YqOon5kkbgH~!H z4fR?@y%sbLoPZ-D^?5_pmmm`nMQ-fqKEWqiI@lJAk_tg$VM`;xbLaYk7jHurDlKR)G%H1vK6bB%nF;EFHX$a?#y zaVpX^SC6i1WX;o)Hx_$mU358Ziw9jK~-+6zrGIJl1!{Mz4>*q>o(6x2671fsrbND3Nv8k!&{)-#ny1|WRT-zm{Q zpWy>-+Q<&U<6x}><0l7YGox3*((*7=0Hj*MeJOrwttlsoacy)4P!Q-cghL9GFWwAP-^C6{uVgw1w zQ*p;*Kv33=TA~uJVO)kVWV%jp@FOCDz78sz7ZpFF0mNKV)H+Nhd|AoltvFH1nWUki zM)ojGaQ`l%faD+uxyb^O0klz$jnksf!$bAWb`zmd2>(}nv3xpm+JadF+PQLEY)nkW z;M`ZguI7uc28g_>2PzvztPWgz)q!c0J35d&G;PkTK}FJMn5~6zSp&69ww?2cRN<6d zt-`Yp2#1pPPpPsQ9y^{8A?3w`Fn>f_$hZvggP#ueu?#k{RbL8U3UXa4!zOsVWAl_V zpnv13!@@W0+ski*4J)cFpHfA2dly38z@*cvE2!W%_PPO$M_9;1z^!B8U;Ld#`ictX#z}QGlq1fE|B`Jg>B1Y8HIV7D*geH-)`U*v1&v zBFM@>wHEDHljTI&0yXAFjule4=3*fE-{0h(jQHRlGXCDy>AX84vOxbYi*B%e$&gnQGE;ln$4k?WPm^daOis-qS z9vm`MS84Mx^jI?pMY!fxPxY_~4`|>qp0WxK=5+}T4Iz*vrqS5}y$%uIG8nul5zaO- z4dbb;)iuyQ_2ILZ97G}SuZAw_Dk_sIgR?VymIHs!j$6ljp1mtlhK5ji+GC{9(T>zs zzTwE1XEaG-vS(eqFJ#v{{H>v$A@t7uyrBmQZEc@-UG*t~a~&gK5kVb`k7*Z?41h)l z=x|a==XE%tx3vZ8wRrZes|kSciMLYWCq%7OXd2P$t|^XH*(oUKz>e|$CVI>@cQ-RU z7Bk9bp*R5TWSf3GU==Ig12#St8w0fyUx#X)n*Z1=1rJIhBH~EZlrDIGA51_{rX{{yKp+l`q&~XNe|+T=^niJR|U; zuNU8rs7VM9JkY>_M@nc=iSE8}v?0HqcXH&{_{q%-F-`pFsIkNtbUS`jhAtm#Ib&ng z<9ta1f}Ji!7gAD zKYS&QcP-Etg)H{1FRH7f;R|>Cj7VU+XZjfQP8pYRkL{L?)aG9dhIe6o^K4txT7+_( zD4jo`>V9I2r?eZpvSKh}uox>-ANjpfedJz!gI&3?6O=S`Dy1FU=w@G`qLBsn^#Upy z79nt7_q=y_RC-8Lp|N9I+Sz2eA!{2)E=vY9u|~69MQv~?y$(h9~M*^&a;Lj z8Z%k-m#4b41Jxe|M4X`bw|#WCRC|QyHzyd$J@#?5Hq?_Q0kxR(yp4asWb7-CFuaUKz~Qxdhlj>4-r>z4eo3iJey@rK{ng_DUP`PkE0CG>UU$AnftF3EZ_$*I{x zL5N3a!@O~0!dI&s%k#?OVj41pF(M`XF?ssy#n=($%uY#E1dSa**@U7l)6*~c1QkeX zdK-KMLbIlJ8;^a|&a_CvHd}=BamGyucMIvJNdPM;#sX;TcvRrugMQ>MYnnt3FKv?U znF&chuJSn%XjsUNjgi)F)}nhhF>}PKMN-U7E9-yE3d1`SaL3+H(=#%0a?T%2=CohfmD6f;ITO@Cc?+A zt+u$+u$wym)rz)m?wtVVdvk>a-5X>2Th}XXNO9lHTqlb z2@C*^byAZxv6?J+DjW(iXkF?Uf7O@>1@41?u8R+}V;>`SPQ-UbS#kPXp&cuDGBT5j zlSIQ_0PoLaUP{}Mwd5)g*yViV05z556Ij5+Lw?KKZ3YT(ZmMLw;~u?kdt~V2 zqm=Cy0&%0$snDdtE{MRz);8-?9c}xNLTAD=buJr23{QLmPIJvb|3lqai6i5iQ`Za+ zo(G@{*T!qw(lkGZI++~dD-R?g({2C>oO4_MLi~0|p%%cTZ#8dNzVBM|mt@o^l>d{K zdyb&~m5cuppsdvv<5J*n`7mG*ZzgNxcF?@bDcX%3mtJcu_lO^n-a7Ms==7|?5ctKV zxkmz4Ig5j|ujB1F){IXaXR})a^??3c>{R5K{9gm$;}9=U`+`1& zwuBf=8$-_o7gP#-4uQls_#E*0Kgjy1USIZMg;2{I_t8GL!L_`CeGEAwsDZ)jH8Y6x z6ld4RKLTzMHbUEZ19c|RKm~_fI=l~CyjO^%ySv89Xi@Mga&$1r zr4^?wpPHK1`R?@KKzBnaum6g`>(GLRWF+QLkeKs`!8Ev8DxVHN70!40MMY!O2bI3- zJXB(e+K#{l2Ra*~hKXFWp065T-boS%wf=6c-559-G?NSP8MwzDSykjvz(wVa>_oE4MoA5jP~UO4=e!5 zX&{v3-LHG3YTDwN9)L^IoY`FzArX;)9Y2UzFrE^4hN+SH)>Y4|Dy0dap0o3|LsKKH z7oVY8)T{itesJHM0B&<}SN+QN=~px388aNpOn+~DFFRv~+dk8WO$5wLZ>Y#?`1m-| z7RTCa5m~md=V5KBbrT7wJ8h6z(_%dq*iKgG#9ufMHI>eeBM_aSxw@m{hFdtnWoXFc z#IUG4gSe6qi23LyMnHnBuNg$pA7y$T0OpgMMLNML8&F}U3!mgW^hcjI;K5l=&iKg{ zDC|sGT%$}{Rrv>w4lAG!2zgWl<21@%OIZ8nH z2HqddZ&KhZhqCK&Z`)~uQa+yX(PQjIReahZo_N^K6AyX)8%!ik<1a+3;*)hYDzUXQ z7AO-Gh&T{o2&^D15W)$18s1Exf$H@5K2bX}+NYZt-ezAt7jHx$L#9RlNYN+=dSTeZ zK}Sug4Sz$&e+B*w5Zi!ffU^xAU$&$aI-!pqDr8X|XRgEdt^zc^h#ohJx0wBM)`tux zudx7`11^TA87wwit%?h|dqhbYEf;Rmadtn*kWwPZiy_wIhjV$}Ul8%XV1%t9C^Ldq z6ZGeSqx{l17_|h|NT7L#F}w=6TbB%!xn8A}07}SZca8qtwY7bC#hQqcN@Gbe?o`-y zR4tQ?Ou$(ZvSuP3bZj6=c(4KH(#Ks>&{nYE&)_4y6@qUng#Z zvWfd-jpPU(CdVi=PSHA)yedod3aGoo7e7`$SaBfpZWHw#Q*sJz)4WS{);C19BbtC&Jxq7 z7fXo6gZvUYug+u2uk+}e5nD`-o-5DB&=(hJc!%Quss(*^Iy98%IXxb9p{jrFvE~d^ zLGP*G^MJ^!&=fnK3f4OL@nT6f`hWsW!~c8>x@tA%RZPD}Eu5%t0cyQ1ldoVpRb>SKQ zff_-e;}q0&n#n17c>NI7yI^mq-UXN+|7HXPH`EvUJ7at;;kF{`lGug50-?$6*yqIi z>H$3c4WrJOV1_Yuk8ctW@7{BDuT%+5Se^6uG5eR6Mb2y_z~R7ns+&R4_meK6X$Nv_ zQ30+*JiU$T-he~G7XQmB@&JE4a$d5ur=~7xYXx#Pv&I;L{_sr@YmbBy(g9e9mFpHG z9pHD+0nqi)X9EfU>L6HqnovlYHdTvgUXoD}2dzr~VYZ%4egISCDDtV$ zmw56w&L`9sIu{IwzTx}+kpur5hhS}JaU# z2|LFpFYcP5-aYmC+|c0owc?9%W#ji7eR-en)%SE>WE|NI-xR?DlV>0`_PF%pHKVA1 zTG-PM%RDR5{iBaocy7dRbcH4pUP*BY^L|1L#bNy3^eDz1{bI?Emy|O}ChLUJJYETt zJb|(`9G#g-O8ev7;^MP^7r(qpyrrw2vvk>goeObS^z#}oF+zNot-J0sFS}hn4sM$pJ4Z$9;Zbq`%c5a^w%`Bb>$~HreE+!Z zaY)B@Lbl8t=O~2its*-kGNN?s9k)HoJa!2YG81LXNM*04%oGtKGl`z-KJ@*K=l48+ z)ywNT_w~6x^Zj{WpZlB@E+KixrdZu~yD4TX>1<@F5H^i=@m>$eksbWzE1!>KhoERY zS=?%~>K$7YLGF%KR+csFu9_?n(?`nd;Wy7twh3qcK%XH0v;U*_@}KoZ324uB=j+s; z_14z?i~F0G|Ll)lPB^vL5*g9(iUEvHJ=X_6HqFG3NVt@3GR=2G(qDBlH{C~JJDWLs zN$|KX^e*r=l9;%{kMUj8Y)f{tFcsMwY??vMi!TZ@=g$p|tdX2Q&6o&3FDC4kP{TyT zCeEJ~A?S9ZfTfa}?y{$I0gtP5SQa+TlQDZ-ne~B1VYn=Zm{llj18X?Ge$ar*4P@&vf+@?{X2fYirM^?WGS_eGm&-=?wh4@jbJ@ z8;?+6qeZ@+mKi-KpAH1%A^E1BJOYo4HPb-Ej2Y)O#4Q<@jyuRQ-p&vv34WdUJE%I# zuiSh^T#f0CXHq`E|KKP#GkOkhI)r8Pdh!`>X9**MUnhZecMsROEba`!17poJVP5S82%N*debSWMaa8aL~B^d4cyFeOx^6n(6#fi0(Onqz&HZ6&FT8#G? zM|1*rD|a$oNRJbiJngzkSn{SP^C-MT_Gz0F@JWZu-e~Rpv!iQrz*-Os@3l?!{T-7( z6*qrL)_Q*&6l=y_emp6u^EGC`QE_5uPtqg(o#%@HF88mT;k1hru`;7u@CR9V!8{le zIE|H5LmYUQV)xvRiAq0%q6@}kyr!0Pl%?l6AKXI7+Sv30dM(uK)V+$x? zb)9*6nel{(A>Z7vgEia^f9$L6YTan<6n--pyuZN^9x`(ZQ|>DQ_=ZQx_AQChZufrP zwf&sicVSJQDU z`1-qD<#J!J?&Z;XA-xm${SZ&{JnrmZvwjo!?Ff?^@QtlES_KYIK>V4~l8J)Ev6%v# zwci8_-bEC5wQd8u-Z_*j%;RS=xM4OQBKx$;2WJI0=r{$o+*dlWuXYb8m7pV z_l;&W4^^p%C#aGnczqR!a(?=sLtW7#tN^6(!3sq1`=mY}%J&E7VPj%a#lwd#1*5+I zs3rK6%-Au@>PhG*U#XlXm;)z-_tS##YWV6&8%+0vdouP_O%7sztkm3VKXj5PL7^!A z=K;mlO3Ez;m}|8kKajv4C*3}E)gt`5+phAo4=~m(o^CKx2off3>|3C|Pf7gbI7LqU z@3UaXu(6|H1}>jfzipYRsCR)DstN-!LQu3_+I^?TfI1dmLzZ(BBEky38? zboN^95_s+V;`A0sbT^Jvwl7nH`VPJwEQ+5L2g`%z*LK_WBb83R3G%|fcDjPp|E)za z4ipS#r}1ELkK%lr>#yXgt8xeOLjNhSHp4ia;eVb}UE6iJ?gn182QPPm8X(D!a+6Dg znKtdPu~+Oe|QK%0^Q35Cm76q`B2ci&L`0t#T zA445JBj1#uT39VyPi5Hg{Pmn``%j*LK&kk@6#E3es4%HXI{~IA6{H?b|9`frKmXfG z5%bS3|5H*hMCJHD-QeG}`s%;-fd2C=tqYp_nai~QZC)erGRZ$`eZAhr^*;^+UZdfs z#(|K=g$ujwb|?Lo{Kwt?A5Ng?C>IX>53l_%aSxrqS{cj-Wgf%R!XE1a%;VE#5&V4q z?q!#~|FM%YBbg$etPZ5UbLi*%vWfr8uVINHSmbG@-$gt-cD1MKDeAZYI0uP?4eSG8 z31Gze+m`_>37a~_4-PGG7#hSc5(%LJuD=L}o+kTU$(2P=+_LHC8TB*V)l;~mu-7&z zOdq^@@*mGR46&%w&|v`mhlY!z9_+1wU!zh~tV?|F@cGy4@ZI0Vl!-@o7TOgZ$6|Fq z>?&7*tek&4y1NY^BP6H19>dnz$?0(y!>Vo8kzK{s;NPu@V_Y>8ou`)exIYkLxs&LX z6>Ade!|uZu{=``kgqrKK3>6F_25K4KS8a#etgLimm-Ym!eB(%uG^sX3v?Nxaui7^J zxT%f{q<&9}Jv+xg18jEd`oaDi{rWa5OcV@`xEwQaOYD-gPI|$KaruSW!n>c~Wq-va zxs^x|la0Fl6~8UOc$SQPKQloZSr)3ag;prrC*eGDR**Ch&LgXm+8;n3DYkj}3ScF8 z$v-P7GFOLUv8_$y;OqS1ls`4`Z5E6Lx@fvn2P#r+fjpt~LlX4?1m`*AO@c<+PPNA+ z%1XD7Cd?e$3Pvu0(ik>lhp7Ukk%^2e1)LC)c0)Mc>@)u#OLUpZfU-tQ8A+EW*5>|e zAAZ6Tl5lV0eJUnH2G%ph$6ZXO|I-lpT`g znYJ#E8RN8kK6x|@u9a|d+&V0kRsWRA@6-RN_D~SG5CYW#&B7Ql6J+T_8xpcKu(FX- z2!LZ1j#oljAdATjz2A1V*!rjzF0#PG&|5kTJ=j|Y&Y{Tz6_11ya@(Qj!zB*(d{E-F zVb4FP7;peb96W_P?`JYC{1oC(s*eatVO+gS$q#3oL+|xM1S6L2bwF=m-4w7~)yz25 zJ{JXCOaE&lConLAhtFJjs8Eou*;VNH5IN-3k z{lh1gw}Tt&=FQ zu6ZZR52z~&`oFafz@4TZSQ0(Q3@ZJ9+wSi4-P-LOcNv_ zZ@sPsm!!jlfq*sc#Y^laFC=u?D$N$X^8!i_n}IG(-aL^**ed$|$bI`Arn#A9Ikjv$Gb_jmiy$n$%0~iB4rYa0$VC>~VFyi*_uF;C9^Oo;t-{)j@EmLxj zy5|09fr`;=6xgUQ=bWLy8UBWeYwlrU>Hc2=qrR-$Rf8{%0^hx^AUHmWD!Gr+xDe)^ z&#R%Wdh`94C(1w1Tb7p!`!*P_F-*Hc-Gf3Y3LO_OTKxdurp306G-k+)%~f&dYLF;) zh~pJ_o6}rYmzgycT5PSru{3!$s+y#S3q3XIdC-srs0-jFyhD$J;t;(P990mt`Q zk5{)n-fQf%)T9h1c30X8msE}xr0#wO9r4blimA}W)sHa(StW54~N*8+2}O!F74|bp4ynw?93D+JLW}CD2KLVk&ik+d<%G6= zo0>2p6W+Y}KnvA!4(hnn)9KtRB&sDVKUfOgmMvAC_2nF}fAl!jt5#;V^^fZUuSIt2 zUG@)9Sn4&sTd6>vlKHlf=d&%xuh(^6?G8Sw z8;tSz1AUcSHx1HBU0iZ<^tfNRz~m#5p)}O{+TwefuDe@TWtxyLdT%`s)}<8}qiry*%0ZFK$;D^c%u7+Q zOve8t$q`SiTe`i#*x`g+v~J2hDy6DSDR~VP;lvT zf7|qlLgf{5?%!RO>8!OP!h5W%D}2M-Qy1>>h+%co-55H9B`%ye@uLJw*4a)QT9|C_ z<&y8TEs~{{E}MUXqT4H>s!wQi$Ibp7)H5XM6&BF#dFgZTHx6QVeiY}^B>P{Srt~Td zW%hV80Z&bycaq-eU_ELy4BbdS*&=V1D2~fjA?=jG>*f$E&L=-B3totTYy|S{ zsh=z9ZC|`_=IhTeYUR&b7?F5>Mm~Lkl+KUF-59^5z?IU=XdX*5idSyA@i-?G(V%ss zh#pnIMP>Z(0+qJLiDRzmyZ&?nuZQ?lMZ>8-bx6rLHEFYGN=qGSvy;HLM+|x7%AvK3 z45S)knIGOLKT)YEjbTvmMba0=Ks0=x>X&PLqBTe|m+CHj!lwDYc}~TUOsDj4B9`$X zW=jnSdv!k9x>`<;iZ!P_`Qugm=4|zp3n^7#GOZxlCJR4G7Kx9ue17*s@b^*%^RN0I zRKA(WlN@2HH5d5#PVa6JzuDx?I!}cXoNv5u zRUAW$54w2lsoWZ^iL!JfaYT^3;1jufNZ1Wzbht?Z{m=MQe6q9Qcq#|9y7=nYcTuUb zX}QO>m{_rbyRRytZIi7b>UKu?1xLNo$NGsWHZbN@2LJ zI{G|SI!b^q8u<=KW)3z#wMQx#k*XRpVzcac>POh-+ut6`MGe=Rt~Z3opw%t?D5A}C z`%C9hA$h^OH`|z!*J#a-c^j|Mx{m*H=D8A!E2{>MXalL#uhJ%zolT)tAVt5vZI9-8 zAWxdEflt1UZfoS4=;GPv;zj|@)3qnRxr)E9N~HB`*)Z6tc_T7awQWQT$mW{=t065} z6*kcc!ovHnuU?n-qEb?aO`qgJrGG3Q_vI*_Xmjlq-{27Ap>&!Ta-Yb}6hp3DN*WTp z-XRxvWBp67`q{g!0Ve%;#owN6cXJicft<)bFMyeK5^~UiE%9Gj-_r7*cgXWn) zfLJ%ex$x582 z`S6ubQj3DIBU06Ee0?+`gpN3Ku5J(*5c;b|3Z?A=_Io1#Qun}#>(VOsG88i_e-q5Y zL6WLbz`jFTHaU{@tbM-N^=9A|ID%*fr)|E10LmejnX8l7S#II=>A~tdZzyE^=-=a4 zE=C+P*Q{e%;NLy77t*%K_kN8&-r?nN#mPukE;Ys}s5!ONIuD4Z0)I#d)j&~}w^I5A z8DO78D;Pl&J?%G_Vxpn6zD%k=OHjU+=gD|}((;|Ir3=hNSI+W=+n?bvbG+t2XLA-c z5o2SWLwEhxqoY9cw4P!|G^ER77t^)lcKlvykB%5CbT#`&J$ilW%3|pj6O-g8RLm6! zd?4r3qSyM?=EjsH-8-Dov04yIu9-XCj^_DezKgNv-pr7jVj zz^|Jl(yTmNJX0osOB8n8*}wjpns`R5`hjXyR+TL|>r5FfwOe;CAbjzQyQ^lCaP5gYR%b4NJbhu`>HlpZ_bm;?6wt zDsq+IX(+4Z{Tu!qAi%C9fcRpRSUwN(ly|mn!SIo;&wMqCK(wDAag|)Hf(QZjlOQe& z5cfm`Ew;H?cg?7s?NcSV2wEt;W5&XJoN!nkuE#ds@om9~>iq7Z+ze&I0Ah)_3;1mbWY_fj?czWurQ%eXoR zC7_!vf+TNF)yd(hti9Hx>kn@1n?zv09rJw+S1g`!8|d zv&e^1sc{?~clU#iPs|(L*NjRiDMpw;ytUPhOxELAfdSv0@b)|Vi$!!is=r>2IC&Kq zl9x>e03%PkPrWmKi~V4z-`OZ*?E-GBo0?CTueDAOct&mY7uq%zNF+~ot#~$p^u`y| z6u#SU!mDGF(IMJBge9uo-6G$nxjE zcqYGA>f{iAm$qdS<*gk#O4$1ACtadoL%*KW85by3}Nzzfvk5=;RB~ zN4AIz!?p`gSTRCr^d#`yuA%zd_T7f$1+Kfp@#mSPst4|iW8f4E!o<#XkpHM*>G1HWW>!~h9U6wf3M-TF#a$k<3BbNE7j+wyptk(9@l&a

J~JP?I2@OOA)J3zke<^uaO8VTeM=CLZd1&|9G>UnbHGhVzi)LdZBK+$ zD}Y@14F%VhpXB^1E*Zrs1Z8%e2Fe_^ij;QVmEv)_f|`&wZIT1pJ5VOXUF73`2G(Zw z{cD~e0mG$gtn^K%2_6r-Xuy#S+Lz>kGRZn;YKp@9HsS*`EU!y# zuFzbg;iFs)A^y`rEc0QrJn}w7%0}xVJ@ee#0m0wBBwV}(qxSF72Fvsg6wUiq?lc=% zVk^xM(Y|yPyLAT(a-;D#vo{a48z$O^S~``k!HXBSSv%#ja4C=VG4n#;3gcWfjm31; z`;?bjcEMRl#JqOQOoCDl$J{shB?iMI|2?-kdS!?8rjw;e=mVy z8iDOhw%0$VqY+KrQ(RfVZXT7x#t*}8jEv2ui;7Y&k=VB}R!iFfbXhM=ha{Pf1|_Ad z+op4_7UT6-55mI%>bMDAcSrh3h^G`t&~wI1@6-{L7EoxxU9-@S;(;?D@$n6N zM*9?NbmW9to%->Z-nLYC!gl=+ooOaE@7l>DW1K-Q8%4&sW1O4<8(JquIV;f?u|g>S zC>xVlT`Ow_`RCv-svPk+Sky}8cLW-vDk>^;YqmI5TtguI)SlHNw8i(DC;VCI zMFnFIV_D1DGvCfrG?c}N`yvgBVvDSSj9^Yep~(W*-gHvsBxRK6`8 z^1!y&qxFNIkqD4RyS)eg7$|^BjlzejvN3Pqwe8c&1%8nlHw=r^6XbintHLk3d$vc;G|0ZR2CS=@=eUeRV9t_v(Q0u~~+5b}Py*%B4ZT5TlKKEie ziPJ42vi0Rk(@gPg6*ZCg#?rSh#6!i0<8jB#8?RlUT|R#T6tv}&#JH13Rl2*d^T63# z@M6BD=x;LuDH2IKrp8^KX>lB3*0#s93?NWY=7~N}BLhl(sRAM!=1MKUr`c;q+j#%L z$KH5|*S?ZQd-inWBJ*4_O28sl#O0;bR)NKZP5c7kv3i^&aX1~*eFOXXBHIQZzSA|c zTUN%8(BK>5W2gshs%E%({V7^Hnm5Nq=~Hr)OL~o8;*S2F*T@O|*#}!y2U6>PSB$v( z=~lS?7t{v9Sm|=cY~DYtjQccmgqZmtO-AVAv|v<2i4JG=nC$hAtN9kLII5FSsXrco_T4uW4b&F@?>FYTt%%L?I~%kw&u>{hH62O>(1&Um-rrfcG&auzZ7J&A$ z_;rc0q{%QA*PI;ICg@)%o2ob0>>r0lAKp&U8|_uckYFsXBkSF;ECP%Xtu#;q2 z3^>hgBCs!#?Mn>FBgHZn+88nl*m>^2fmR$tqqe?vgHtv8eYmh(004O818DU4r|k*wE91%57}y@2 z!{VQi$gXDkq#dAU;e^I(BRpnSzvl%V^Ad1hkW^haO}T;h;swq#|Jy2l-FqTJ_6-TR z2}HT3^cro1(=*^PKL|ZWTnL8-_)|cnKWQp9Hgkhk$F36N6F7aa4tfT)N4U9{hQv7j zQSWl3{lbmPCLJe4?FTWkv#%qRDgj=iBRciC97uWdPZ;&586zHI`^h+84*r6bghQ9{ zqB3DsYy_v)FzLSZAQ!~bx}U>RrgwMqrKbC;+}yBoT#=fbhMXiah5{1raie8*$0xe5 zNGN}&G6qP>AQ|d3i5zw*nZ&C32TR-yUe>!Z{2lp|)+!CzUl4}#;!~?pkMb$b`9w0@ z%#$x0hl_E-$rfB40%?PCnJ#pYA7yD4kK}C#z?bvHYhN;Wu&BE~(hV+>o z%kqCAmH~dt#bH@P$x)XU5BLu^a2nuAFXp3^=F+h`Ac+YlTr&S=q|DQ6T(wj}0_?CZrP?U>u2l^7wKSM6a?_sWf+l(4*=1c`TQEl`1JY-lpYb zgxk*$rMXr0m>&rsI+09W&BWKT_+JCUqv#9xe)_e_4yp~Sv}bA~x`TY!+NRD7Ee$0) zUi{S|xj_rWu%5w&XfDgwR<&xxucx51MgmQ5-+g7Lk6EJykS`|`+3(u|`d?*0&1}+& zWtHzm*mAj@eAUdxuOPG#dwHYhsOWh?eGT$c;)I5@i zyWma53ZxJ1v-QHBdAyPtq5o|028iO>?$2B$7Ged|YG&yG$>9!+Y%Mku zc~wcxvlqqM7SIZ1%{-hCXjQwo>XG)C>s0-4JhGn!#cw$11}}x<+pkn92FT-zyI@w= z^reJE`OY$ZFl@cs8~BAAa|XN#IBHl=@gX3i_3OF6>A};5hV*U4a03L11Yx8E)&Mff zSc!XGgK8F>tO&46-lcg-vmeE4pkf3F(((Hf?M&|OraWL%5HCekXN-q-`_ls-ucWI< zB{tUYS(oK;fv)L5XY$9xmruHz64UpCTmVd7By-KTy9sg2yi)u^!m*x@K$3K}OE7Cx zjG*RTcl4SW>S^PV-vG(k`e`*d0&$im`QFEP4)7m{E8wnwYD@)a7U44>dyXEQ;bJjD z$GY-{SYT;hL+>yx&mFFSR)6_OH9hV-(rQu`rR%gu>!-3+r0krZOzFnV8368$K7W+g z$~5Tad<3jJb^X={nFNXhTbmMx z_ObJ%av|)CWadk?xogtqwiQ!bECmXh5M=hj@DmSWBvMt0+p~A4t~IrLZtt_g(fa;z z&)m;i)pN)JgK51$^RKzgPXd}>ms(D|uID@*CaE|rxK1ADA7~J5>apovo2w}INTy3b zG45l|w1YsyN34kl^p|1BawFGCagvuqGV53``w5s{W}7Kmb@APokjy}$rf+*uB? znq4YfXY^tZ->z`dOSDkp%iqU+_HEzvA2%p^(aWX585%4Yk{Ey7EpjKUqgg@+<%^eZ$OaBJlAhxtUZ;<&| z>RXGN?Qv$W+7O{WH~=i%lx-&&nC4jcmJ{l`j{?-4j~>I0a}f#fStv2h8C-wg6Vve< zGzP3pbIXzJ*5xWm9pfGvC&*1R4VfIpjtCSiQmNV2GVF;dGtE(2+CIxeyGqor&e-ui zK-Xm(UT>s4soY*SNmpCfL}z{*!T&Y7N*3d=!Xhq0o^_Hg@kr z2u7O?JDP~IXZyF!1+2BBqC)=)Sr=e`$evf{@gZsiqDFxZx_e09n>EALqb!st8TE0yR_1DevZ+y?~uumOodCf9+5 zTHKzCcK@;ta`OFxnnrj+w>rkZC8H+3Fy@P7@xKG~*mYBZXz&OLp+1YSj`1t@4Z2Ko z(H8;OYtVf@uTf|q%7<8gm?u}oi>OimMg7U}L<9|DeJhMcLPHwXtot$rVSf=o{^g@B z-fe!22a1)8dC0|Xr4M`?=QnJe3@mjkrtwi~J{q!f{_q{t!N^gajT~TtL_p7;6zUtJ zk#5F=#*7!SPFjgB7V4`w9y@$)vJSj-vYy_47q5F*%A#KB-Pu z&=PD-RlvMXAEr6kd~9Nf2N}6T49honB;U!44@!axfmemaRCICk>d~|2e0m{b{j}+s z!wM^}nr(0!^Bhy8e*s|nQa*=&G+sbp4Kfc&2J%R~Mg#Ma^yR&Tg2v?LFAWW#J+uNA@B?Et#~DgvzOia6kGh3Le-4^R&S7dua+KQOAQFn|&R zsXD6NT|iBvIqdx5TpB?_k^c4?-QT`Jl8s>5V#zbR4ra#~zV3^rnQ4`lES#XP^*w;y z%$4ZNRatecF@A52hp}D}?nnbgnJ1Q+9jxQq5>#HrcCu4A(rEK^;*VckJae=RI5ETb$Ah!+D_)^_GO7~giVJkpTf0CdaH|aN zEl!5?0Zjdz*|C6empT+wI$#wN2vZjzc2D?IrugD7xV*xVV%SNZ?;rR$hSiFhzF++6 z6LUZ%L^{13shUW>T7_tQ3aak1B;kq3{;}KgAW$waQw_seMOe+VO!JBtpH_{-*0wvm zF`(@_ZXOh`H2ZlZ)qTP;Zm>)PW4@h14JnWII;e1S*MNQ);B+F4tAxsrE6W5Z=%WWq zh%s~qI_&abE`KzaF_20Sk;H(4_gKB zumE@mhij(Y;V-Ai&p zrop$Dkf@nJ-Iwg09A=Ojj;ZA*BOkqo&;Cl5>6u&r4$b2P*aKN(wo^YQF#e@PfMIbn z{ZtYIOKX`cvP2>0Gw|kOkm*~wK_*S!x%156{BdrjM9Ie0EDK}zCSBoHpfSN3zI2q! z%W%EWG6ioQ_%c9+=)Fy%+b%B2OaQt*3UeGAuafL%C3U;4C1;QUphG>wqr{=5QJ4&_ zZR$;mVjWb5I(f}6(Biw(hk=ojRac72vcEi)Kk>kc{ zpxAGkxgU3pxtgOWCg+&i8(|Wl)(2Os8vRg#o9;Wo&SRp9? zKuiFpfsS;W!i7~Ph~O?2pz=}~`&U}>m;0Y~4uR_jOYS?qYEscb(ja}zp5(cc8_?RI z(4H8^kCH)J#u>0RDh)x}}w)3~T75 z8biz+Cw+hVF*Tz>qE!c^WUSM1Z};ocWqB4&Aa1I6D@)-9>*2&xd>ElKYL8Jw<* z5oFG_r9X#3YXHFAYwAxRTb>93SP{~YRuNKU?s92hEwEtdlK(biL1t3e8f^U(@5 zx94qx?vIG(KBE;-kG|b->kk`f1*+{bJFe3km7H z&{E;@=%u)rJERfPHXHPyk^b@{Q9EvJ$IBA;dJ2@wqwhg%-tzfie+DP}_!nHF=XEatEZLZKlYqd@Z$V0IzElK0mot){@~83e#%Zod70i0+{gY6wbxI z)s>0zoTRobFc!_}vb-8{fQy%cb>52heU^lT%n6WqrSn|yH)h9Mz*e z+m!tQ@`-QjRKIzp0dW0W3tRxe6dr-}AkF$AeBMTwDvEsr`4nyYEF?hKZ$$f8qRUcP)BPT2s}j}|mhcS&t5-M8zA7{V6V+aCj@_r*-#JkhBf9gvVAe7X4AASdHH z99T;!Cb1K*R7dn(or2!>*8E8_bv-uf2j~?g(`TSOz=TJ40a@AY%T2?tG>(}!iNMsN zi@Q9iIaC&nFR@!NfV}|NMu1nDBEMUY_INJ~n&kfs1h_2U)j2Lule(%FP=oL=DofIq;Y?j^@v!+6!z5+q(swG&T@FnjV z^}l9$7_;g>WC*k3X))d4{-Fa96om7DRB)aO^hXNHwm3-<6hYhuQ@j8HS3k_FF;}yN zYPI0XbX;I&9uS;bwv(|0t;19_NEeZSoqG>>-8ubyv|<{d=hV6n;Nl6yI@l0qmw$bT z5$f9tIfVI7>H344Q{HwR^mm@~`_wgVSE%p$82p zCul&SV;}G3oB;+iJGR_JfYI@=C;W%zs(nZs*Ov8Ra=3f~TzJw3vw0g0c^d<>+5^Tk z%;BX;dVN9&)7-uKZqO+S(=}ehceoVpOjzZkRqYotfq1Ee3xrtFKA@Gr(v?iNNEE0V zZ%V?Tk+k0L(E=wgFvs+}G=R%v(A2ohDYQG{BtIJ4ra>;hs4r@AJ_0l-R>-@d=L2T< z=!@7v7*OufE`$v>pZE#fL?GNV#4a3+ZUHLk0&{AUr9g^nLXRK={T=bcsS_>a9p3`Z z-HM)^V~wT3F=RkD1om170>mn~xD93NkH*~5bmW*|C`NQS5i+-;de{L`1e0x-`yauk z>%4Jx8sr*sb-ip6?mCb+|H9`HteI6d_NiK{58)ErG!mSHP%Sa|d9}n}7yli~$S+ z4ZV^?MrEm?8e-UG(5-@PjPp18+rvEeiPSO3QUItN<_DCdR$`p!3fN)J2z{LM5OeEe z8Zs>{a`@BX(go_j2v~Vol!i?-=!gkGbt}$WbkVV`|2}}K1$WinnY?3w$6_prvV6%f zuZAlmGC=2ixVGYWSuWiZA;s`x{{9M$!_aJGj$F)NJPiuGMQN__Cxjl$jC;JSJ40cc7RV&=fb%~KyIUpG2805wA-o_nz7uNo;!_8NoB2yZVwf=&ZU zVbY3GX^y3!fW3SH#@-~DG3>j7yXCut$wJU2E6qWmy}tY}IaNjZ;O5^@Y0e~Zb6&7) zU&QQ!<>561Fdx`GM@g!V&DodC_$nJ%U(Nqwds5FOeMBV$4hy$hv+y$bmS(Qn~utO5C3|Yc3P3`LI_88vz1hQXT zV~o?ELS4$@JGdMy9R7IDxz7P#bvR9^jM=0$;jNYX#Q+H>;O5~=7NLCq3p{s(5$|y? z?Y6Aa;E4hsYUkWrXl;nSbI7|2z7{$w5nyvQX1HID$$74kf zTN^a-A?dEsBw5=`Nm+noAao|9;QmDRz0Z3ON_qm4+h)D(_u~f(?;XfupdJ}2Hz=%z zO^+&I_XlGvVCoJF$Z9Z%aS%ZOodKGCj`X{9F|r@c_Rrc;m|u^W~F$5wK0KLbzrXAiW!Fmj&^`b;b_2NL5sHq#Q}Dl8xTtHtRY~l zL&o|5p$^gjj7foik`k6x90%k|q}co63R7@}I$WYM$oY{I@HK#6hU39ece5Db)_Tw+ zm*GK^{A)P=nc6pyB{ymRw-TSSE8h|KWSfA%DA3iT_!3nZYJw}OYjn%kZ>#|SyxDeR z4(=`a_yC@FkjNk;A;Q>*L`Wa#JwDF^(kY~ma@-NPtcAimczBOZ9)vWZ0VUqPD}n3} zBpC(-nhE*F+A^@Fuv(3RoopFHKHzEyS7Tj6-@U;6<-aGMdDL_;A@+wOl#(2Kmo%lp zwHzoifMnxd&mqFpvE6VW%>4lC2EJ@e1ATFi^~nPG(gzR`giD_bL|GPbI`7VI31i>x zMjOB!_2|p5GH7EY`M?v+hFs>#PwE>B_w;kVDzbo7IN|x5Kr75@!dv?v$1wmJD2& zHYCQwbinHKhe&e)!~9FhdUIehLBQg&?K2(#WWwz+n)>kFJd|7jT71+^7qVnyjDn01 zK31F!w9T8$bMVvN>Jo0__8H$uP=2~1Rj+fqzHjJJ7E%cu{`2vX2H z+{y!NoA`>UkJptL^(JQ097Bq?Q&@1ogtCses!~(r#{q zKux1ex71^;qFD86FePIc4NsDuI@tdRejy?W%10YIqZ`f7HQRK9%ZwFwpQ3a&z!Y>G zj|YRlstfr#w$C=-aOa<=M`|vgTtI=D?3dQyvdP*01|ZPE?eB}>gf4LyUw<_APW!WS zAMSdtEWgX@{wnmn)I&=j2I5g*nhTHuz+iTwx-w)Bz(G1JfiOhwZy@-#PN>g>+4m)7 zta0@g+ms~0*@HO(hpE^Dbl~-IWhza#+hIWkK@KPPZ?(OL6X0~kORD~SD%}WmB?`8dSm>y(Ehf7MjMdT=o zRnUP-w$V0<$jc${j0;u3)(HtiQRo&fmCH!DFPi;jp^j{LI(l$`|4L}bP4381i_aI| zGB{R~(%)v9lg)7R;X`1}K31L)ga14?iV_eV7vYZFA!@ANxrd_?Kw#sehQU?Cr0j9E zn2x1%ZOjCcg=wxp$@cqchKZ27E_mlCBA+h~FKCrVdun-{3e-WH5oibD^`s-nBX^V# zp0{wMm$L_O1*cBxiQ9g^@L{i>#a!8IJ*(5fyv2BE@ovbsJ(^Xg#vx{ zns{bc=4@t8g+v_ln`(a)hB) zYq*k&p&gR-{RV2{wt{k(N?&BRI}f{;j8ueOsx8#H%Y48>pxTjSwVcu}l1L_cN^5OGh8b)i z>rQQP!P6&=vfFtXa<4DN;hAw@GUFyu($4QfCC6&M?u{nC7+i$i7NrXm?076{{&bWc z?>CmmN>W_pYMymaayD^Zk6=EI-bRy`#gjrsYLGh0f?P$a$$?;*{2jm_-@+xFPVg-P zmN6z+W{wtp?6?}$$WmfVmN0SF1V*PwpwCmyvUJ(4WmJ{^aCcbS)+T+(nD?fSaS_zH?5kAJvxdyYi<11J9ix5lO6Z@0_n!*=p1g+hpub>K9FgXA*ja8;3Kr zE_K`_>dE34orKXYS8_i4ga}d6=>A|8j~FIG;=bPrlp__9{aMJFdYu^Z;Ww8AV-Yoq zyxJOd2q2C2VnvuD1sp63E#SW3D3SQs>r<)#1v^XK!g+kFGny=}OT?vO<0d5=!4qyG zV$FaqW1P0$`5}klcxe^oz4O(wqw*Ug?Nu;@5xC8tg`)zraM9#7HoKb_AU#?FbQNHO1Rgg_~zL>tV^N__}YQz+L@Uvge}! zNaDZ@#t~a$`&vU84qrnr&nNC{m|x$ubTfAuYf&A3FW0$IMv^D z%t5o zo$PMo@RvWh`$`FR+o-bLGpJUH0`mf-A$@`<7pg)F@(#JzWjZ97U89-NbK-aHQ+WVP zPl&-kEm)m10k`{YG--eg+c&`P2WFx z%;zmvh5tdofcqHFupdhrvZUO12DvI+bNKS7VD}!rNt8dDQz=XOA=y4)J7i@7xT2x9 zZW@M+2s8G;7RaYvO_H>u#9dP-DDnEpeKPx^VSO-Q1zfuZK(z^sSRdCzM{A<2qht`K zxaRKb*w3R!kUd*RVWYJ5wjuJtoC$}y2!i@!6j6-h?%-n7^gVZws*(o4gwR={mYe%ZL7vpZdIdi&7G5HE zkQjqaILX#RTbc!cb^-AJ@2BxuBu=Bis6f!ItMYaNx`M1!{k`)h0N?&K_E}_Cb^*I1 z6{#PGG#NQ&`-BVDkS!i|Z5e-mt_h*5Y%M7hKuK?Vv(y^ z9w4lDjjq7%P^X7)kE*IS{)vzFWha>wfrtXY&e``PoX%4HjKdqe%lk6NGBIyL9MX5% z`2&&#)sZ3JoI>l$O!Net=EzBuK#C`H8%Ib^goQ1}X0S3bU*}IJ^e!wFT@8RM z%r(tdbWii=1&j9uKRAtRO820MhFu^E7y8@T_d}e{B8QhM+@afk&I9@?Qm>urVPt+D zZC@1Op;35Hn{HN^`gZ{ANw#jnnJV1{ZcA z$%vne9)D^}$~gVAE-8Dl+bKXML$Cf!y!(Qe?_ek$W}6MunIn(e5o*h9itl-w_(l8V z1TDq;pU#>d3r_r|b+}FTgdDIIXPnelh(|9 zT-&+Y;>CR;pXpobi1lpUpD+n&<4o*o_EMZ#ClgSfgt|ZDOKQY{6&A9kki(b%d`xeU z2~yZHjX~xFM!P7m6W$ksHx_tpx;N+0sF^C%w;y-o5}5jsZ5PV=ed*dd=4WyNS0Q?k ze&L4wAu1`zP^R{b?a(Vw_5zpY*^^s^lm?kCz8i8vw$}QYi6oH?V-Ke`YkV0DQX+|^ zfSOwgnMdW@pzoYqZ-{C?X6iF&N1GY94 z?42(1D%q64aM zD*C9<+Ib9Tyg)%Ym=U>AG7_z& zf?K=mZuGyA9@s2-z#9c$04{>&JBY;gRv_DX((X(+i3Xa!qzDc>Sv=(qNtCtc(Wo6g zyI1&w)O^X!3%XwO)Ix2?iN##pLg|}JcBVCtRY*Afoa7Mtog8Uv zTYWpk&qu#$Tr=X3@pjQrzr%6H%4|^5vd9HG&Y!jN)w9dK3;1|j<@A)=9?Be0-;+P` zKGHW_eAC0x$MYRVs-j%&{t8&0e0RSzTLNZ@qrymJ(}(SvUQleZiNeM=>2j-W z$1zHjx6%b}SAjvc^mZPh)WokJO%+z#Ucx7RqI&&0RS%yI4u7duy{Z0M4w2JFcP@y1 zcX}xy;AEul7llS%YXme^zSfxxX9rv^qbsR*jbdnT z>qx)(%kv^r>COf>Y*sn*EJ37C4McA$rjAVLwBvMtFh$rJlQmhU_I=`65k% z4vt?ceE54;n>`R5{-*1k{UC8OVyJgcOM3dvYeo3Z{=9t4@L5IHH7?=0bVatwllOz{ zcGY#CaFFYO6qaZ@Bp4KZp^_VKBK?i{rArsvn_rwcv8bm$d&3dV<5Z^Re#<%+%~Gk} z&2iZRdMb_cezJC@&rJ*aB>MPtL_n5QOOfK4@AiCd7jnkVGQt__KIY)_H6M5I@!fFG z{;{`C`eme8c{Z{=PR4OfMv^7>cwQPU>op8hn|V30bwtTg2DFaFeBIq-m@B;^T+e#B z#+io29FB9Dhb%pnH*`#-ry3G0>e*}ia|+59EqsFH(n z3~sS%-y&JH^%bm}Cj1e-ed|r@u~7Rfhv?7DNV=|Ou_(;z%+-|6Kej8wZttIJIvUe;?HYnM47=IH*M@>pM?omXdc z_|k`!v2o$km&s3_E~04XlVeNxq!?*p1}ZHu>0R!0PMp>r4#<;Cw)~_WQpj#ES284h zp|x2?=h30TPJ~=6$=lf!P8{BwW7%r#!`pLK3(i4-*mndjTZOkmf!Ewl@zY?Zt%I1( z-q&?u)a9onC_nEiz}YZ7@3|w?-*~TcHXWc^9k|^lm}aqrlsxRW?CVZ1n4Hopth+{{ z8v2h!M##l340lj}vqNNpUxV5*Ska7p6Tj@5RYoOT+s z8-JF2Gvm2&g)(Yofv!6~`k990a2vqB98gUl7bEg!DB0Utos zfzlEyuT9+CtA6IXTG&C1K$ALSR};K5+%<`$ z6pp?#k|e=g30Q5{I75X;7i8f-fTMC=hsfR9ypeawk+ci4uq0ajXOv<%9q=#54X*N> zQoyq&V~3Dx`Vj}3DA%0kxso7u*J-pD;a--CtKv>Xn_kwIh7zbaF z(j*4W%*dz+takZP9Z3AP88KyDjd_Sg_gl6OSE=O7+A3X$a20?DA&fs(t@TTG;Dl4Y zheg3x`23CZcSo{*Ox?RKm*+6vyIuXW!cv}$uE15AL}63E=c5kUf;EDcK7NJIX2DWL5 z2*V*5j#$6&@rBze~&sOY=9dQ1vCI0x1_W8PDManPj)r((R7PBquHmJvkLxr5- zcW{ezK6ODperfpbtMYhYw}E8aILGlcm+JU?pN1A}BOk<`{M^w9M*`S6+Dm0Lu)upU@9!#xgLa{BXMkZ={5?^m9eFk zX$@Q?%kKXt(bM;Lj}D3k@elSYn%!7Bt*I+_HJskwK6bU8Jfo_$Ti9vMzlX#SUllfX zbP1$bFK0$kVV7O()z1QL7wW1Tj^76N6|#T&S@$1gKpdXR=RV;?ovGX4IRB(e+8{PC zjuod96LIxS6;VLz9Xq4D8GLZOKlavlz0l;o5+kFdO7++{FQEP`eF6avME0ux zDY6R>%r5dwOnr-A=SuLUAf?v1oxKSqx)YQ5CfCZm92IUSFn(`wMT!h zc%XH$-0h?1pzEdtx63(TaBIt2#mZN-lua!CIoy6Fd~jmd`k@)8*nY+njbmQEQ3 zT!z7w*}fZ*h{?F8RnCD<$$ui-oAI7gtaci6h$m#NPsgNzh)JswO~Zf|NF&Ij8J7*} zjKn+lz7C$_Wm8CJu~e1|=Fx8Z<=!1i9BT^$jjAKWS^KRR*XK-p!gS)Ro7M!&#bSN~ z6rB=0Q4?=`_o3^ygHi2~#ETPI22RuKi>1q;oxF+&o0*r0cyJ*8-XgIV&z0GJeB^}bqBXeSRLjJ$^1~PJhUuG` zSNusjd&WxQTDvuS66fI!uvRj=PdRDK2}g_?U_gZrO2}6!m!!Z{KX?n(1dg#_-K zHF-*~YX}IwS}kwSlgAnGU4fCn$Qd4&n&6?n0hnvqx_Fg4j~8zUmL;?Iv}R&m*CwT_7+D`+pccGcULW@M z;tTB~m#fJz^R>ga9puJ4yXDZ-{Ok~?k7L)(dq~Vw`h9~Bap(vH zMolMo*q^ri(R5#tP`sQ{Mto{4#P*y~+wmxfI2C?wd6O907+*Tac-ekZjHk*BX_Ltf z<0MD6TyBK<{wXIFoh_y9{snldl#mzubvL|yOzY-5+d*#z5%OV6%$pXf%@j}Z^1g?3 zSCvaZ*555Ca-MCzO3>g45v)M-m?hn$!g7v z8RFJt9ye9wlt|aauMQgCrCTUolj`MnsmEbJvHa8H(NAXK}#uv{U9-CiRt!t7>W$ldJJGH7NKG#aG%+o41f6XT#^| z7fo+Y_0)!n!l)tUv;p-#3o_e$$#@0Rb{3s8N~>l~M^+2gawL}1hdJIrMxVSRQTycV zA2A%f%uP7=l7m?YkTOgpraKsyIl_l8Qy#} zBf!lV=WzV?Vs{q^Z0^zD=&~g42qQq(f3?Lgs^{dyz3Wc;YpD(6_=lqW4=yNbycpId zuIUD-oT%q3c^7^D{`=G4{W8C=UeucRdHi5l!Gc|nXHfNHuQ!QD75Qy&=I;oa@YUrz zF(N5GJn!7?{&P~jH>}?Z8t@q$-cSGuKFf#q<6SO`{5Gk^p-8dSCPr2@4D9*pA-d3)Gg=KZR$dYg2UtW?Xd7L!Bk zgnje9ufRa!;vY^tO-Yt`@;w^iYMQYlNe;+^y#qGbp3iCZNq^h08 zbESl=Z6@k*#(B@1`(O3%P%653>JD*ksD_QZNP788p^rwdo{F&$80c@G%AtOG>UOPE ztx$7UbLBWlR=zWA0C{KVPPxWz_Rp?YuNg~t`R(Nt^;_2h)ho+J(NEyY>#`#0N;KO@Gc)?th-z9nAf`DUSF zVx4N(S?2t(b_Q@kJF#jrapiC0q{>fCi`Wgz7Za84gSD4JYL;uvj0ouS#@i}KvwdzEi zu_B=vWNDK)`O>@A<}X`p`_HMIkl9_^i7WFWBl$P?!A41Ok_LO(Ov%DUimCI5Tn)(B zHFYyV@hC)=noTnG2@wh*-*2_Q`SOZ-ZJ!`UKM*~Y zrN}3~;h=Lqn;yy^U(RQHZgI3U-yHtIIVAS^xveC8erU4(y=yrx_EtGSOd_=lZ826n zaH*@SOJBBzfx+%otQjHLNbohwtMZdhpCa>TB*KDaifln5vIR&~N)ju@B0J+LW*QvP z${QNCpi>ldtb*set^G*p2;l5;gY zK5}s_vE1ww_cPX=xlR(pea;TGL~W(pG#a028)m+VuBS`(%+eSO^~dsuJm}@JS(G8X zB9o8MgmK(>!vvwWKO{y!X-496k!58U@2I(Le-t5Y0lb=1~jUR_eLtyJhI7}W9 zIq&jm#p6X*m1SmH`k0e6!=b=NGP7?uG^$Q|Lqoh$?vi_PJ^Y+isN62Ux4y@6<=tBd z6jDuS1}aHWm2JK2{DVPjVa&;wHw*!#&~T0dU~sjCpRaWh+)I_sU%-d37-pJRikUp? zU%>5rLAiM2ZQtz(>iRD_&s)usEJs|o&p>VfhQtY+YVlfA+w32tt#CxC3B5fuy~XBu zvD#H5hYS_EoZi{ zQ-{COr6NZq41nr%CP_!e`iH0w19Kl-tOF(QA^@?&GC{3$`yL3CGOw)G6e!Wmy z4}T#N8690Dm#mM)ema$0y~HO?_o`g%?U2qBnv29H_N^sFh-o$v1k?Cv2=L%PQUWff zUP1XTBej_k^$7JTq7s8SiPA6rv14O6lMsm)6OEY=M;`(k%(Rgx8yF|m>O00g&mn68 zqwuV#Sz)^%@^8GJ-oja*(R<6-ZP6I$9R;?#>N~v|Kkqg*PYy{}b+In?WX~Pj$!Fj= z|5l(=HOY9t9ConxdgV(5V_1MeI7RDYm~j`x%J-Z}-CX=jAzKpc36M}r zVW*ayaLQiH`V8dXwia==W8q|^O3o*edKzj84JV4qk>xu4ec?^-%vtpZuF1arHRuP! z6t+1{8#MAlcsGkRt|-?Iv+4W(&yLk6ec7Hn&|^w%@nR0@#E(;OgfQ-E@S4$Q#w9%~ z*X|lOt3G2$f8x|Y66}dL$|cvh_KSBeA1KdVg9K5=#3tRMlKLXyCmRxZTa|<+vCC-G zE(Q#N^4F6Bd2y?W3IBE|Ozob{!sXZiW!?Z>GSc4@9GBX~j9AC1cQ>~b(-$}gkwFR* z!uXdK89*4*qu|QPWp_#9vBx*$6}pqf={Mu#-4*S5gews(Ut!njWAZ0*kpxKv*2hds z$yZp7fHl?Ick!(&2~^4rce>;?yJXMYU2_Sz4Z}I3Q$sp|x>i2@#A(Xmq2ROvKb9TE zCbmU7av{3j43khb#SashrWdR;zp-SU+@5Kj3Hfp8ueheNn$_lzkEUT5@yP(ADi`ni zp=VKb6+>ZyK;dcbMsS)`BS`=-BN4q#$c*e3P06R^ijIv{F9KnawaVzTpMhnZquEA$?Y{(oe)Sq+*Egh=VGD`ozZjf9o)Vxj)|Zq%^|18tY2P!avF z1}@ZMm}kGf{dJy+640t>U-t3tlJtdv7cVC)gtO=+{qir%^L5-+T|O_e5_LnSY-1N9 z37;r&hM|Z|cdvWXI|dCM%yS_ODz`H$llD+2vI;31mdtM zJt+nwRl3PL8uoTR&2ZR#xy3gP2~;Jb;E!u>@xCDNrAUkKt5e@;3CMz$fJyl}Odh0m zA<7}usy+}e`oxHgI1DD477OCFJ{kFuy#CB}E4I<|wv5#~l0fH4!vZh3&2tL;$p!DG zclQl+YZ$p9Umo8RYjD;L(;cT~MARFdzd1j=&fo7~!VTZ(01n#f zrJqR;uZ-g#EJ8E2{LG zLFrfG-z;=DE8GFM^AA!(P?3>~x=&UgnAXq?alp6u+te2s)e3@cZWDImj=i!G9149|xG|3T_2&*A@kAHf8G`wX`o+d^2||DYBmBHQ`!&s%VeC5%8D$=H6jhzLWv69Pmn zcn3n8gd0mkRT}oa70e3Wtf{-a2`ORIqA0F>GPwlF+7Kiv2-sw#;5@L9l7ZIRj zv(NNfbqi)79it4{$B1nFrmd*U#lKfJ@D0VZ5z>f_z?sS0SCPDO zrg{sZ6BOYPWG2rtViyr^ovqR4`iM9QFY-t}d`q#MZSmLBaoS<-hY?FzJ966n6<3>A zmu8cIW__N`uk8!PTKEV{(-w%BfPuOVf+~~h)m*~y)J-5?H9Y7+)G)0A4^6(6-y$5Z8`L;zbNu{i;nZ_(*W*5E$Jm#~<$}o*~3w z3}yPx8}^M+{4O!W^@y^D7rR?T9G!536Q`q50ZXt^@FS~hRQp!GR%UW1PWxGZG^gfL z&d4J=L&$#?P+}2ieX#%YsKdOY>pc=&z>s+Bu&Bpy-!M@~H&Q+8G|;E%BmJIL`dBCU zf_Ko{riB|_Tem6j_kf7(CD*Ic&Z8fUsN_tLfXCsnk#I6q!U4$Zt$NKp=yukr+TieK zb-y#Zuy<2V74(@tgo1Ze!KHrv*fc_U>x{y$f5W{3oew6KDO`f+eBd@iq0h3;m}Zwp%kKXr+oTl_R*C*A@hK9-t`>n^{`X_a zgM9owGMY4X>$*5mwp+IQtkbw=Z~*!b&z+boO1&4=adV5>y(@CD`XfCHOe5ZH$8a7tvgl|&N`@X0-|`QYmp(U=J2MyJ=i!>{rctB z6ev^SN6peO2xzU{zI83K{7wv}DA-VO5d{KJR1`7)B|s22`je^D>qpbz*pZHnKs-ag zA{J#)=z}Lrf*g-|vmSl+J3QNqs{3g0p@}O)_+?VnKjWuOvusr>BE^s^eZD~*xrf*2 z(pNpZ-G3#JRhx4%;wdL@kNVwniD1f`KFjV62D(jLC0uj$sciuq`^9_kmKZ_3yc(j# zsTBzu@h}ssbwB?BKdR({ic)7JHzC!OB=&vpt7Xh*9@3t)P}+r)fnhHt9p<*uPk~8P zAlKvbD3;3wk#faS-Q&!72~p_hW4^q#R-vp$Q5-f@o?mq>%`pSKFt~3u3pN%(==*Sm z$gGG}`ReG7ZA4s~qKF7MQ*9Qnk0J+6==uT8I8UJ zk%ZG$xT7Qo5Bualf5y;}4nQW#x927|&8_4PY;mX1+UCEE|HVD7J>md5PH0z9BZHN% zj`51=j^%xAotoV>Q$7L?dkL3DElN>zi?&OXoZXCem;BRn;v&C|;kP+d-To*3(Mu!3 z3_Hu#4F>mz@LuvZy13nYIXwQ1$%H>|eob}vEhG`}G)fE@;)Z)}Ad36Ow!t7UL1u*+ zfNaNFMB<9EJY;&jK2=$Sr~b>R*b z)uJ^WhaCzS`|cde?f06E2;MT~TI2^&Y7;?B2;TG3yjHBS3DmcCZt}?dnB*JJNhal* zl1dW|f|t;r!nR3gcnp#3O~;?QT4Rn$09;0b;^*C$P16Yq48yqQOa{3|2^5wbe0ce5 zs~v~;`h9YI}{JU1*qH+JWu{E;pVpa%wp zM(A!xGu8x3#}8xvE#qR?debS2M$~JPil0{Ag=pPKh<4dMnjKx4Ur_((_J6P+zk3`~ zS!n|t1-Z(ARA z;;qwGupodmEHv+E8VtKj(dYP^3t4nK!bgIi+p5A(9n;+Ig=0@sU@FQT2b^>#xNP^_>?a?OC|?GQp3) zyY>}!BKuEnkoaZQe7-%#pSzwRs@!r3z=w!!{`0|)W9!Ep9}v14?K9{l?&zwkv!c|t zMR7RSVtI1wUm1V)+U>iJ^V^CBZr5z3=G^x6s_#`Fp69mO)<@lV4i`*LlT#YXGs-_t zm~&x8TJqdRX)k*7{g;@wm<`WzAMq^J3iv`N@*vEr;%_7^l(FjU-98^F|JG*wI)sTx z?1lG>R4U6BBH?|q?@IC$VVZ#zimZxQGZ%D+L_M|dz;4t?+_urSEq2rG@4sMu96igv z880$-1GZhQpbLhfGhMJIE_+AP72mOnOVPS~R|w=X}rMve3 zV9zFBXQDvky%yz6Q`wahB@!!%`+^VXk})gtlRx&oBz+URIKm5OLCg zk^5))=;9vac>|*f2TD?5G!wnco%uvG#EqiGoNcMxR8EUNy;GZjf~dEt zG6?~0fAByCaDx_cUO+!SL7`MT_ot)erQ}OI1eOtRMd}=3iV1=%{V~$-6T6zcH8A<1 z3?HC5i9b5Z;1w^Fki$a#-S}1Ejb2%&5mNgF=A$=Rca=%fhn)^!j4@;AAfPk-Q^ffp zUwX=rbbzZMLzoT*eMvC*T66}2He(gG0#s`4pb!iOz2yrPT-Dkf#w>XYodEMrfaemf zX~uip8vl&1E1FCE_ZmRx>H~GF=<>&9d7qxMO10R)7noqT%iLm7yz~iSK@VVsL>8Mc zAbtPMfXw%cR}2&&{^gRtmY~-=RebFQxWgZUana!c7NutHdp$N(L?T%DF@N@O;|L8= z6W00y>Bol;VkPEm^*!~7B-$@8d5M9Vd9HG-@Ict**Kdk)-13iBNb=Ow^T>HNDRZqI~PGSvCsBbooc)eZCSRIJ{Z6RqGfEnEDq$ zu2ky^0iOheAe!O^T)}FVqbQh?te@Bh2Y-cpxVS4KprQ#uJi0aGS!0f9O z{r0dn`lCIY71Cs3CNmT|oMZ&)0ye@95}XBT7ttcK)?uoK(}PKW)Q}&yu?-S{Nz>5% zo2@Iqm@c1VP8HoEf#1WLZtm6|^J59Hj*Ri-2Cn@fGRIJh;KoE2=v2fhr{YbFAiIHU zC*xopgRG}h?wj!d{}`eXaRAC;h%O2w{QE=KKogBVnmn0QEKbgjkGmIk87aR9@F0Jh zlZr~=O)p6an~G=xvC_T_Z*Sk4CsS@3&`*5mcSkB@#ZvI!50hnPzc@s^v@V(QOi_j6 zFf?XIr70;cBoU#h!jJhYF7}{=ZRT;52Q*WQfQ|@7&J*{}#ej40-Gclgl*eQ^0e)fa zzTibM)|MpJJI17zlE0|C(m3wa!X6o&#gQJQHey!HgubZP1LKRnX_5>w_(ocT8quYv zcMwJJr&7^S_vD$^+r?^Dil*fKj3w|Vc85V?>r%IR%w`i`_aW`7NuuZv_GM)FAb(HV zwk1llojuG`tPxGA zi2SinGrmDZ9Dz!2>bEKu&%tZ5$$=ko{-r-^1ll3%c&@nT_H)0+%Je|9@2petD_cJ~ z;{c0FGsH#LppmUWSwt`a5SkNkV`fUK9AND_D~(eMWm-;TdcSzS5G9``{lnnXWpuE) zq}_=Ja8p;KL|pZ}HCFz74_&$TxCWWI5q7qUR4uN(6eLbp+w}!nYiOE`0gCEC_Ktp( zkosY^f|8S3CyAdJz>mHp;@ zea73PK`3gp3K1|=e*3wb_wuI^5vQMy%F<1wn84Q7vVCgY{7Tn#yHN=P5hAnxImofc z**ldPi9V`0!&!PK`Wa!zU;Q$#4cO13u+wd8z;Y|L&e*=Eo?&WHA?CfKebHZDx@QPJ7At3hIU+YjS3#W=RYD9WvoT!0})_C1KvPhwcCH)CL5yN-_V` zdt!MqQo7n<^1x|=xocM+^zJw`sD@l^joC4>6b#foIfPI!bWfRClH!?W&$L0`ksj(Y zLhXM_48CHz!bzFnFS&46k(5P#+>;D6g>z6J`M<8?C(+12j7HLw!zceMQw7Ooxx zB{(M9h~}w#xm%oEte;gFGy$*n(U&{?cBoS9e#@7QGWD@0Z}U*&yH2sQy>9sJ#9JqC zpWvT1#FY?r9PKsKZ4w;Zx%s}_xno7S>+@BA^f+x5fACk))cBT{QuFs*>6`eUwF$I$ z0EzJ`uTGe_+LG}orQo0fIKmw+xJYuEDmdR(GV*vxRv!LF8aCjrtu#8-GR{zZwehV1 zBBm$;gliGcu4UD>qA6S+Z^$wT0D(Tv#W6QCjFcf^hj8@`@taI`~UtvN2FI0rFBrv8~L~l*o z!y((yB`mScBkd_{9f_N441&JueDk9IV`wX&-w1Wv5)Yx4OOORw<8SFp zj;lS!e?P1fc=cNe7mmGP$CZ9o{Z$+p|9A#nF4M5dvOj6SJL75a&x!W=gTAN_G-nnt z7HLWx$vWA%_#+MSl4Q0D@%Juy5RdDw0Cf(YaiY5oX>O3x2Qkf{4L0-5b7D|s@@kgj zUfPejF@Ep5hNb^@biISUOE?d@0|J!2WE3GzMONDe1S3Oi4B3yWcp9C);B5Q;LtblhplvvnD2;q&Wx;xSKbKzc^Uw*2g{JDLHcW`thN_g}a zacrUMZMYV3YzDJX32u?V+mb7-(es+FjF+N#bZvj_J?_yTtqo1RIo~_B?k6-WE)<{Z zI5!ha-4T;(@{`7|2)>X$r#SpCGsrxb8jj7`;AAyv!_F$i+SuKjk;|42s}PvMc4>VT zJQgOJ_wGFU{e4j3vdun3;CED+5rPYv^{q5&YACw7LEH^3+W<6}vpN_S^Vj!p^Eyx2 z-94m_etg)NK7J?dB*2j_eH>Kxla^*_=qKSHK(f7V3ms^HdG1oeSQqa*`UR?H;jPQ^ zHF(gj4DrWiLA3D+!WwNSsAOIw6_^PL!uz_^xKm{{Rz8$x&@195B@|Ql6S3yNW4dSK*|`{| zlSdaQK2l-xL>CeK*M4UD=%gy?_&#ai_Gxr2MU>#t^}tsF?TntBn4k4ViKpS4t7XM@ zbeY{^JFdF72RBA6bfufFDQE&H|M4vU;L}7=3DYF8$C9bBpF}hG2hEb}_mP+AlM&@` z3E87e`4b;d>}q-MDPFSN;FqGC_#L8+;X+P@eq04cX`45QCgBr;EJt_Lh0cY7fD7+r#K)Cl6I14?@6+U@Mw|mg2 zto5H2G6!lEMN1~u83l)LCD*6B>Ntvvd(ud9Vae3>+^I^1W<)?TN%bRMzfwMY(@tWD!=;Q z79w-*g*^&Dc`&O&%^y;PFc~VFZNu=bHR?e{usa*lO}mCbulNKpMfl=^y9ZA}Kphm*IcqZA4qM9ui)Ayfkz zdlUe97Hn85mSVwy)*rmB%aYNcvj79x`}*a*_hC49V`u%vYF$Ji+3PMu>_|Fah53Lw zEX)VtI`&4F-Em`iL1R$^#GJ=?^BOR2eD8_Fd#>-fmKN@Ls`-GhkpzIcE zp-0X_GJ-r;XU=^&S2(D?{XMDP6D{(U8YH$X=2wB3aoZ_oUz?wR2DTa>1^29YM<3JW z=<6Q!d{=TxQ@7|lzhI|;sy+9!vd@;`!Mnx~Jsusv?{eXB(&R3@6OqHYUEvV}b3do5 zgb)6my1_rr|}eTK+#yVC}Lm5B6K4ZP3n zb`bU@m(_=vAYAr-STHRxO_vJU8_GU`cwlVE!1m})p`tujYs6wgol?Q+8xNgzvR?i8 z<`3z4B4pYKd(4?D9@B@r+Ijex51PzdL~-x|aj;9viD|85RS+J|m47g}M?JF8RH%>A zQU(XT;fJXpju%^!zQh8@E|Qm&{@`wI$>v<)^+*^|Dvcx(GSI~0Gcoh@@^lN8?4B&y z*Ro2DZg|>}(dLVN$5<}bqnBeN!L$uDWe1{M1=8yAg~*`jXJ+SIs>TG43fJAp4*v?7ak#{n017D5*8iHWwBefR<_ffvpDNyz~VdF z%42rIR7351cGH6L*6X81K|7wkiOY{4PEel1*c;PSd1|fj+fS9$`e&+_9y>V48BvP` zUTwbVapAWs75Q4o)b!@wXK%zEwL}Nm_q13iZ*y|19<8Os!?F6u?=2XPW_)w@cIMBw zl|W@K%)oiR@d%G})pw=3+v^rmF89$yWX~ew%1!%g^=&O{ZEDlc zdu&;_1Ohx#WBme&duQjpd%(Z>AomM~o=X_bi7a7qB8j?7aUz9|t@4d`6W7p%!JyTD z12zOC;VmWj-W_D1$8b8|&bMdkx=}-q%^A3Xg#I=WU0bqJW}xFl6o+yKC7(Z+9S6!_ zyC2wgq&BSXC)inoh%M|mqz6VcK}pi27}1evieR*ixziWh{P{8*MZ=sJMv5i+!mMZ3_xK&Zp+}Wf4<9x3Lg5Fy+t3=b83aE*&O{DD_Z0( zuhgWpxkwijY+=ydaFow|DxJgc@XwdF{lC8a{ymfLxC^J?Ot1mp5O*5^hYr6{YQa3X+ZP~Cf@1ipa9 z0^${RKW@buO1oV!w@-+e&;P3P!zQkxMExeFh&?L0!R$?3zld}Q|9Cdn-?Ob3XXVhM zs+8E@r??pw}xXWcU2enE4Nn!bv> zx{=`UMFgt{d=o@?3?$<;~iZp0ne5mh9ej$7~4|(YJry zUc3YMn+stS&NttHm-LmWF#kXoI2h~-VJFl-Bqm^Q5`B#at-ehZJ8Xilc$<}~L zK%6nd>8P-2ZSu{J7s)!Uw7 zOI(xRU!(*%F$0I5>YeUCiE^#X~eK2ieD1?cXv-E zdHS=Wa#Npu6pwo0(T#v(KC9lUV}#M3zQWjWy*BFd6MOaWW43$IbeAQ4Vgdr+;+#z9 zg!#)&8byg@fMxu`Ca|cXADz4UHxEEL1j|j6S^Yk+q`bpY8fhKTN;(8}qgMvmU1} zm~NYXH&?ifeZ;0X%X|q9@fKZ9 z+^X9n4)gdBPZsoFRpCYZ-%9x#kKiQ8qD7fcw_-aZe5{wkSd{Wy->(dZpASEi(OnT$ zzweVd4g^Fq3O!DKYTQ(RE&?D6`z7|X$T4zGkp?TUJ zTR%H?6v}VJhJMr;o$K>1*#y>KZSHeA2#L3DMYnmt-uWC zvNC(jrCNoerQ0UaqQv^_9P-mU?+o!)%6Sx?6&yMtqZYDf@$yWv7L?+Y!_6Z-Xo1KY z^Y7C+&GK+pQ}fiY^45D3!_pr!h-5@$yD?OkLYo9Rv`KIl@_jGJQq4`06Z-Zka%(AfI;c_Q8_lX;egrP#E8Os-%wr^6@I=l)lgiKl4 z$d%WmwdTbzvMT2?dW!<~K!ryiLiMTmEB?#{0UW2t|`YR-I1a_0izQ$J6qz9{9Fo7?C@ysk>amY zMM1q4+xH|M&Xn^H`5?hvt@h)T@gPscgzQ}i$p`D^z91d@r2qadnOLmv8F^jCV$DCE zv5G9bMN^aSbEyoT@QF>lUe@;puc$6lk$$GybnPL_D<|(rNB@%g!_UJ3Wf!hlTo$-z zan`|K78BpH6h6j>x}D=K_iueHnN-daE>T;5YjV|}51!nkG$-Ds;I-QZ(z8#@v(t$D zzvzK4&YKSLNBt!%2};J_g?htG!zh&(=zLmrbRBl5?c_)=~A zG$YD?9LRrF-KU>T2pAP>sXdt5V08zl z%fRy(2b>&66W0>@x@@k6XRc4qyniYjbisQg)dDp|wdat_C%#Hj$uEL<=z=v`bf5U* z)v+{#NJIZgg}tK*c`g#sGA$-fr;7!VUEO#>fx{W97W6hs0t6!Xt|B( znsKLQ!0Bkmvtv1Dd4>jD7uG+G-e3A$ z8?8q0#y}^fo(opV{qBAl=he*OcVN=lthehK07!Q9dnQI0-&;k`rnNk7rK8T&(NxDF zC!bJj_Hov^RdC#%Rg3otHW!ZqMJKkM*YwdjeI=E^{@qJRTj|h^i zI+F8>tvn*3&KU6vj0IR%G~c{zZ8;XnKyuri=^htcghEQo4Q+`SY;$G6n{kU#p8lLT zCHUw(xjSY+6bEqmsJuTpTnAGgR@}e$+$c8vo8K>Ro2$H$>AHPmN0NojZn^{C=W;!l z=~rSGj^3L7wub{z8&LUZk(he$;V(sEJ5EIx=-I2q;fs=&z$>I3o^wfDf!HSYS-SV8~Xrgu)9&Y$sJhH#w@VGKI2FOwpcE5+56Hk!5ObY+zDcxKuB^jyu$0(2;2| zgidVY^4enSv&v(GPs`&WUP=@v(KsEr0PpT*_pDU&ei%E-Wb-HUx7ADfa7*(eU%lxitMR_6~_^S6SwkG&TFB{;7`MpbnHnT(bEXyVXM$9eWwoV?Vq>V z&NVhDo(4IxlYa}ENIb0-g{!tvArcXcGPeCwEzU>LHKd!D<+e-QJ5p=3;Rjy>kQ^Di z&dh6zmbHOq7=K|1g{&MtNV`Pqamp#}`eNF?Saof!ui#rV9n}iT`RZ2q*IhN0uAJ7% zq>^Y`E?RQPX~}8g(a=WGv786{v=MoH5ZwgxJc7YZJJhrVwEh7-FF`-HsYc_$&$Wvp zdq27m*A$^)%Q@8t2o)f+XC%v!Hqy2_GN^pZYk#l*>u!awb&rgnE%j{M01&H4N116I ziqffRZ+e$hTmRAsnEhc`d+8Yh7s~>tVbTip5;~exi=LH&q;6P_+{kQh^se4^FRZ|W z)9v$UEwg}e3~suSmct>`Y7ym)?#==Loyim-Qrb(SqLnK0Szi(PSbnV=ZA(W7q_yGD z(9K=CeO{S@mcpzutiB*Ef>`d1l|M%C%qD45vML z=SfYWfwgjonV`>8c+;ijk&DlBy9yu;G<@fqT&&DlGC7~tj%0HoD%V=x4FzsS={G$b z3JGIoC6w9DB5zV*w)^B62DhhxXrU2%-_jnOJ1)zxn{uzxtXKzl!#Tm2L@|=N-Lf|> z>DHbFS5tA0^GvJCRu}8@ruPF1dq;Ahq^whP6TFpiy1~;^qq}Cc6|7%up)$(7OwdAQ zt1B~a^7*}TbTegZab!Vv8pij^E5YmQE^zM+wwSB=h$Zx70+JCbTix)Tg#r8;k%fMH zK?LX3Z9UcUA<|#Ng9W!U^K}3Dcm(eo@Lqaw=ISNf5DA6ntrntus=+w{_;8ciuT zdM)Gl;7Vfv0Ea8pkR03(wI7m#eqqX;^$4Z|a2OgU`LUd!!=naQv$^KhN({(!xC}lO zHynpsEQz_Xw+BumFgNBo3}e+HjPQlO#BHz!r=$~#0{B8F_g)e#u>W`$Y4xy zF4KEMewUQ6c*W2c`>>a&&@;&4;5${bzO@I69GvI>QO~uL^X)^dLO&($$*Lx;0b#=DRY0DMvmOb`C>7&iL?^Ai3kTo%g zxJiP#n$E-2xvc{?$E6;>H`?2ixsj6`nQBeQS7~)ywq5lFwaO{d zLZ#G<9>o$aI#PQ1t%U0XkE+H+oL6kD^qB@fQ23y7z-i zxpSeRtBwnyFRTl1D_&mbqoD4uCs+GckSASRIx|M`rYoB>0R3$Awx*>)|DV(o@;z=T zICoxhPdlki7KxRN&t+FMD>}}!w95nnv4un}jX&a&+WHneb_$Z9H8?Zf6`SyfXw+i~BIq`|9N0ms;}+JKK?SybepMy6RMBax2rB)RlinkcBWjY z!-tL^*YZAb3Nt?|Z2##zFKeP3*Ivxcg1V)wGZMRGc~(|u;sD3UwciB0a3^^ufx%e3 z{B_#Y!lrxn&?_zCa6GwX1FEAN+3yaL?1p3xl%dcke_%VuP3VnbvMyT67aF*`;) zYg{9^j~t9>R&Q!vKsb>TXrSSiQrC@U7H8`=5-qIuVg}AXA(^m4bD#*p6_ez{kDT9r zxWN3ALiX3lX@Y;OYG~#s{DWWlm-x;qg7!fJy3|Y@0qDZ_2n~%qUi}t2Fz(Q;zSx=^ z^ax23ce#MfvM?OT2O$GX9H#|lE}A>tm0A4}gbNHZ3J%$txws4ZhEH54--t#BswTyr zBKEK5mE*uh2irK~z6E|Ti0p*GM_-i(1KS79>mk{x`kMMZ^DZg4oSga45iXVQ(@*`R zEWac4a`-F>XpBEs`ELupn4jjhsvmKFW+rVOQu>#~NDDqMl!4NDZX`HirR|f(O{5Ed z0Ahk6tCWpLV-PQ#vXfZ=DQPnD68CyNCV&3o_Ou z^N&A`)KI2CCG8`(LD#*|w^2dffyhE&1*S<;tf5c0cI%1wGUSb);$P%v#h^ze{UpMI z8~4G7;}D;bixf3pdyac2$S_aq+%h`d^UzhxBA{1{naEi(PyB&-adu9qvKgW$+KpDG zreFK>+ySqLZj!fN_2WXk8FI+2h6;)wIq(q1%=!?X&@!+cRlZ)Up!pn}(~@FvXt>f^ zqY|zy79S7Zz<9d+i78Xdn4iH>H4R@Mp>ISJ2 zI|aZsjesza0lpu?V;dh87%^B`-n!GzvgfW?H}z%b)!F*c4LI;6F0sO<=tP71&R5DO zK9K1_%*>K9v64ON2ul3GCv*5w`}DWiO6wM3dtu5h$k7t6ZOgX}Y}-E3rjBMf zFP7suYkYiAR)gHe$)oXg0lb13$&+VpvnrI(d1{jDufRDmW4YgPV;#(!jxGRn{kf*FIL z>h1#w1!);T*O~vXthWHGs_EW`4;(rVUD6?zyOCGWW9KH&$ zh0$|V)s_$F?83=6h9JoJg$^SK`20(SD1t(#mwqz{nr0vs!L%iM?N+hlUyXx(MqtqZ zO9I;$ch_zXOoEkL@Ed6W3tO15!II`7jP#{pKNSDiAt--F>kd#zK!9LM22Oi}Q2I1j zPR;eq(S(Ko&XMTm60TG+ND3z%vUKu5(*L~6viz?L4SZ)gJV6lBKmri=^NquptNMfx zS!PylUT?lwdP(>4c%$eVG@D~jpa!rX%W#3v7s_-CkPf3jfHrenFgpN*>j@x)4KO<8 z?lJ9pw0Hva;$r^aUff+%gglLdC<#1nOAlOg==_!TL&H}K zfM;FcZw}$UO4$Hi22k1*sHvVv4jD+88LYVloO6iF&^FW+J4BqtRRi=-Ik^TFMxdo3 z6BM`=nFJ`IUg>p!d@Ukk2Ra?n`#UEJf!OaCky9!8I`#kDXuZ*;7kAEMPhO z9IPwB{x*Ptxq)QxOv_-Uc2T_@C_CWAnh6-CMUf{L?v$sS97I@Irr$|X30WG7>ISev z^RF%_x_~qXxWYfx1A_vf=AB*xKNB7a%3UdRyg(#9&fl&-`UZKYmnQ4q5p)Lt3}s1x za6c5aP=pS)g03AyXl=>G&iTKKrkF7Yt?-3nyyHHE(n7HZ)ECE^OKWZ4Ie;wSpU#m6 zlCA$VHbjg%)ZQ?imoj;Gz&_&aG!hKN4SmK7RozU#{WlkOTLmg#fn%3V=NS zbwMqW(CrfRz+PAbqzSUXU7}#|yf{WE36dXfT@X-2LLPQ?3Uj`w(a^2cO$>w< zJEg~)xiCx6wGM_wyD#Vy*qqJ=p;X zDnH421OCtyI1h+~71~^J`Hg@s02RP21I1+^wg432ssVs=5m>Y{2=9I+{HwSeE}7&8 z7l}G(vGLdB>0Qz~z>cB61Rg-r(vtycziW|~hVdeDbD>?Xq_fwnyF?JkY@agx8%>uF z9NcJKO+(?WcdxtFICj@Q=rN^Y4O5&a+`O3 z24}8(ZynHM38?|7F=~b$P&JC3x6d3SkmLVg!nL=6r%W%9&;UH;PNlz|vKtyg$uC0i z#NZ#P9awo*Ga$V*Dc1Xk_Z48yVDk78DcMszF* zm8slh8R6`yn$xCX7x%We++SuEzmt8ZV<7k)UkL=pDVv||vEk{dm}i4^?a{;v^R?cL zZqA2DDZLE6YEM8LjvN-79#o3A@G*{jNdve^ zjD;Gp&ANV-c({1Pcg))%zNJMMU9I#ZvVu`;sSif4y0mKhCS_Vu$bF#-A`z--(N-v|HZ85fYjUe_RuUEPPM_pygaeZR zk%Cp=F2}_?8b}2~uc)N~@L+$iiEu<1FuOU^^VevtZ}_O@vEUzmZl3r{Ni z_bNaSo^5@sJ)R|jQoJR&!_UtoXd#!IY>W6@qXVP|l(^I~+ruG24^w1jcsbzFJ-z@l z9WNq#;SzE#*&q)}PMmc#^jepW?H#j@2besEdHLhG1$^qdcP=^w9&~o&7vSn%Gz3_n z`?S;7BxB-B;rP zJ4Givf&@Va5FA*w4PzQ$0$%9Boi@M>_h=4iA{T)I%ASe!`bXUeJ z-!EIFc?_Vf$??MV*sdZ#_}$Alr}#UsK#%l?>Ir&_Nu@^CMJ@lVnmJ|De$^L2y5PjN z{IMlbqPZ0SCQ&)CiE$Tn&4WFFZ*w|j6B$QBZSM&{U$9((`m$83-n`W51~2mW!1d|)m`O|Bm=)ra*9G3T#{LmKFOmSf}O9f zIMU`O4_;Y|01byyQBm%?EJdJT<;oK)W?J zcvz;nl<{^$7siU_XhQnzi()U@Hp>|aNEUY=Q~@$gP&wUpl0Km9wOF53gg~3_e2+le zLiY)_gKcF-m_K;jyV?l$#v-nOEPaf!Hjr5Wz>>U8m0lO~rPQTco|Ndz16T_Wg`@(8 z{^VU8i5N0uUj#hycYGEXF<6ktkE-x_0c;Anq${ol5?|d+pI0-zUC(mWv0U;2@U?-e zEdZQ-$p9HF@>4t@^o2%GiRcWXQ;^LX5HIX>8+`60G~W3PnSjtfRIU1^Vhx?q?jN#Eu_Pjuh>GCD1x>3`&e!l0))Ft4{!#w z68Qn8V@ME|=_$$LO@a<2lCtw1aT=9`jOal8S&2?*fKO#XC!T!iIAHf9U?afZ0ZBk) zur!I$L<)eBR1s2O)C_?~hU~$h+fxIY@Cw*!Xs<*9Mm-%YNgp5pPbdI$2;`Um%v{N| zE0>DQhM;Uyde6hit!da$eJ#ib#r^PUfs>-px2GU+VgewCQVk%$xssCL06!^uf_`#D z-}Q?#JG`T8F5Wi)X_GFztHO3^NG0Lv)3D)s2EZKvVRE1uOuCkK=6c-EIg;cc3g7t$ z*n^W7UTfQ`v}XQW#kurY8FyO1Rf(-x8maljn?aWlmdoX~=kdAv&v zEsLc=TgSUlum#cp*z933x^(h5>vtVYrrl80EC8^UTy!w-#Tr*HwfArBb}im*=Y1(m z2Z+M_At3e`f+P<^?GR3P3*m1J)`9{FxPb;<~X!OqVw{tHjrDE_8L zq+t5K6E2kC&~?Cs%Qv#sfrAW1KNS|V@$3IN@K$~;dFndlIYnD`Tb+x1deKw2llc;0 z?bG{_Z&1l4^`RPi$=L+q(VoXqxTZwGT&Q*?mj$cZsB! zi()s5`TS%=BBP&i=KOTE^tPVY1%zh_^|RjOgkWm4rh$q(6hZ+l$Qqff!q zu?QWbb>)uRJjByz9vyahT`Z^#co2{SHts(H`zD}&Krza}s{nJnBj5VbGD=pRb z{vR>%+frorECW0o3&lr}oNe5OOfwXjYdD$t9@C!OG+EfZC%bl?^0u8-W-@vnQA)zG zBwvrl#nv3lZOOk<_H|~*v1rpXYg4f98VU&D(t@8d?!*|ixMBefMN8HbL=q&%-Ra8I zo6l;Q|IpGzMUg{B4*XPM;tSB@#DsS)DY^?ruzbtJq#;0JjFAZFYP#><72qRga2M&i z8Ddl_9Y8YQh2v}s>UUASmXLe&GCC9`;w9`BduE%CnL?IErA+?5b6p|pU!<*Q6{-~Q z1*mcU&)2=sVYh+mj|FdzBl+6k+ba}mA7*7~{Xarbosd1$zPYUEt}qgvkDH)b`2F(g z@?4m9&1ACS%&{aOPV!xqYL9>cQiD%qbe^@DW!V;EzYw0+f+&M7AuU*!SYN0DNlRod z6FfKMr;3fff@3hkEYIy3|B8kW)JEdIUJ_A&vZ5tnaOoSl?G@^q8e394VhCxa&Z-v@ zri8UAra#aA?8rR~3Y+r97Ay`U@>f;_N$PHUJg7LjE#AnpW7GV;73LaXSJy#OtQPM) zmN?I1J=g4~^39u#mB$6EGWe|^@_v;~Gp2*7TY!r0RO`(LSb7#%;l@7L_S&bhz-DHK)9ibp8XCN+kuN_pc%|H4 zaIiEGZ;!DD@6mBx)sL#m%yz<0H|t6lrLj3_g}v|Wg6Fa#y&4c=Nt;(4#C=~lG(3{D zSd3ZXgoc~hZqhH8ofSz|!pESiODj-@sh>sy`X+7FTu@b0)}#21tvpZrxiWv8&=EbPOxciuCAu~`qs_tuUIjWq*nCcQQ*+a`5>$2 zEX>SEoI#Sd4Tb^zg-wo|W~!5%eC{Fw1jW764quSI2z_}=!dAZirTIrGN>Dd8I?!|n zql=8ytdq@VI^u>uHguKuMr)Bd=y^mKFUOJ%E? zTzavx{(ZbRYO9;e-?#J;V-YmOfapbM?o{@8=8MDnJuv2@a5%Cpf5`mVw zcLOvStKa%MJrNDiW$lzmW*n>aZs(=*CDNnGb&6Nuw!NO&JTxsN8tqxiG~$cs3JJd= zyXxpJA&T6#0Ye7OH9(af-L*QG4ZgcWRF`5!2SR^gks->8A%p`?N&|C4=$c9xD>x5F z1m(GDSWnAhxClXA6tHF4Sj*ZqTj(YIl?2ODh%g38z)r(Ix!ugo)Hs@EYmT%+U?4e) zAy{Z)gs-&F)B6Dp)8l|PQwv5^F6wevA)9JJz?^t#^VvVu+HhP!Y}V#vET@P;k87ZH z6WPJ`_Fw&27h}D>4vat>{(#dHk09MF?Rbe+LPdE<9Yi85nkpvlpIS9ui0Dpc)n2=3 zGKtnS3AwLzMYIapb$>o=nlV*K_|Gm-(?FVY2m4`)Z*(HfnChKy4uj;N&IxJ=w95>% z8xtcJf-VTG1ZaXyK7@&AfcUL|$!V{;)U?%PgS6EPxu&t)x)`bLQAPJS`xiQ0f>Y-5 z_1gqdLDu($%QhvFbJiXJoteq|;6asJb0krnR*Q!xVfWNRuPUU=7@-}gi_Gd=(U~uX zH%OpL!u0>I1b7a%7)F$pCGmx7i?jnl zJN``PvZ<0`8`vHsA?d>TFi*pwLRC?as>HzNHVL54D}J*JPFs|qB^7h< z@}ah7xKNhTf{ytZCr}?TH4b<1+@Xge)(fa}T~=zUtf$tWQil|C<%{#JBEH>-0LKl~{*c;LX?p{OFq$=RPXmxAOJR7FFhGrZ}*h?gCNh3>@DAXxf?lb5D(Pua# zs}s!jvlNSGleZ>L#W7T-v!WuT^xOH=G-v~ z;JF@5O?fRQW|JZEW5=58!A`!u+Z*6T9s_fnB}lGLk$_JSkRZ4HLZZY#5$u=1>jnND zF~_ZdFr-+(N0#D?w+4Egsq?ImNaRBp5}_4ej2NkeKJCEM<<6f(;2B}hgFXt&+Is|b z9j;;m5d3t>b7$RpVstt=o%wMWbwktC^qdZJXxFq_;}atKqqEoqO+Uq1;>ibCJbx=Vy?j)#Uj718{Z6Hb9*w5O0%{%_%346*x<-pE>N zsu(_^y<%nJpH=sF;@C4wr^~@BP>gBbqUQ#Ji(jz|2y_OgGh+z~U*x|5v#*4|_v{rh zFP#Cxfzrq1ES^CHkvIdl{U-JZG*#M_FUx_Wq z3MT@VE9sK}I`EAdWu_zk$h>wxn&A$x-CBZNM`+e?gl3KD2&je5^+}^oZXtq9`*;L^^^2QC!8|7k`ZlRMR zFwEhqjaKQ>N>Ps?-?66d6;0`;B2lydar0rd4hPMd{6l;MWB2Q291|IUJMM?Paou54a>)k?j z+AjwWIJbN3q`+z2)q!-fq9YRzy1k!w-xaZ`x(8s8jID672A8f#Z?F5);BlEea`E9~ z_`=CYh;iZng2wY!Fjjd)80-W&!1digmAI}IAWYP&a@u>8^Gh%cxWO;BSEDL;s)ubm zq6h6;SH4;(?HpV+LFH_@RiE?sp70{ieszp9N+D1Gte&G*FyR}xu1n{Xk8ohH`MAL^ zwADvg@NINtnbkyP+ookZfsO)?vaqxc%J0@-?p?%T@-4~zwDKG4QPFhx+^b?^WxX?h z4!kORx~#^u8NVMpiFx;1%Qc+#P6QE6EALPBfVTWuuOmKjEG263@OF1y)5~) z*YN&ig|znM2SUu0Eof8v+e#b%JE?^UNm2tDZ>A68?#)9<)JhMy48(o7zT*gKQoe{- zUf~YOI{6XJYHFFhpzK?UDI93A%p)o`(xOLk?lAi3b(H#N8>K709N$-j(^s#Ph_a75$@;XMV@XXJMnZksH8Kr4CtR-tE9Yz#rSBgj$MQOZ413WQSx`RxzF zxWopra#`%vS$B#^W2&4Qw8(?f^c&_K(jMUuDdr4wH$8NM8yY>-__u6Uf7fK-h%Kt*rp4UL)-H+K_G zi`hO>xuA&DI$_3?6r((dofFSpu9yttNs^H)8}eCOc7kd+#gwh&uzEpT&AUTXVUvWp zL6=;D@zwj&0x1E?z7&(KvSE@Hi(N;})5LhVCGM|wL(t*4Uo9KR`t1EJog3;Nap1>uI5O#2}SX?)d%uq||{8gZ>u_64klQiH_CC_YcA z9VcE?Y40qSalHe7s6%8?teLni^!Rg@JPw2UkcX4BQE8zf2X?%u7?7c`ZwXs**x(+4 ze_r+vxx(njxk$^vlvzuufv{2N;S~z3FJ|vY;1Q5m#<{7flPFV;3lENW)KC)Q)FF@( zi-r@4F7Gu=n0hkvgBJ|z7dI;(Y}e0$t4!&-skK#SJ?t$>x~ z?ZH>OGF!X`^HvY~u|d`F+CmLHHO(lJ3=N|`_=yX%#`&l>5a3obdnc?}ga&-ra#&>Z zvHbO;L#>)|?lCr<=+EBMYY95dDSB!6A6i@T=38&~qApp>|1X z)ECFNPhWM8w;`UoO{0%x+9(wV zIq%O^zPZ-UH_;w8IrgnABohBuymOd29^xnIeeK)U4n+16vr-;y6L*^?1AT;5izwy8 zE8mzGViH2|Cg zS04GDjJw&P@7}~FvC!P>GCr`+?Yd=Qnq3_jO|a{Qg^PjTkSGMgfxC~+4lI9vGW5e z-0K_YFXs)5@_73b9vNqv9ym7&Px6pu5i+Z%NGZy=C0AvVR5Y}Ulzr!Vdhq7~j**&! zGjd`*AYlbnx=~d1{>!r@YI_{#345kIX*XIRT-wmys%K1ERXR3G8QiCC^U53d#UQOc z>Q!?PBDl}60Da7MB2=;IfR@6V@_bbwF#LmINzB1gFn9@(7)i#{fpIfG4f}86Tk@+Z&oE*^}TQl6Swu zBAje_fu&phu%3go*S}M4+$;9C2}N^%?B|+b?e|mhm3#hh6+AjxTi0;@O|R;LdzAA; z$FG!K4l|n`{JJ)!NwJ_F_qk?v?dikGnaIg^-%p8DXqNl+s_}|QHkWU_XV#u8K0=aj z=7u_tCwyt`do{2e$2#@R=&tso>z}EY`_mmLx>=?M3{>T^|9Kw6xBIsa*KpjcTyB=s zloe<{sd+sn5J=t81M*8MY^Rr-1gWBxRGEdYK6(;9|8i^cmZTqQBaLw8PriF-NtxNr zC-jOzyFYrwyIH&jzVd_T>LY($+X&02o;@s1FK2y1-kN=@^vRQ7?4ttyk8Gnu+)WLr z=U$;Lsr4bS`r&eE&0g=Rue?l6BqCJvuoRN>7$t*C41wQ@B=D(FVY!c;VJQzaY-8l& z?1BcX+F-gP1aFDjoGOSsCk$VqQSxr!yme}0!XGExIy#46qWdT_diW9^?eCFaE8xlp z{0jqW%K#@tN4`qKi#Al=7DmXbQ90yGkNg~uG;b0lqANpt`P^czZ=x$$Wj4x9yy}s6 z-5F-JpED(a)W+ePEfaQp9*gGhD}hQsGpuT7&Fj7M&URZ7sqvoH`Ln8?&BGy>VhpZc zydx6zD9;JC&Xa%@e5Rx@9frj@mP%|A9+w@aVTJzmainCe@`6F25>J*yj}wtb+z$uWB3D$dtFZrUzjDv|F>$M=oqAL6fK=Q&=2w1;{D|iX=@WMj zzViQQk2GGN!1*SlR(zwQw`g*OZ>w2W-rJ{qTPTEHL4+AHj6ea*L(svV$pDfW3EWEkX`c` zk5F60b7d~J=z1+pCo2SwdD|HOwygj8{gw}l#K{$v*TpY~C-lU$&YttXtxO^?3mLmQ z-Ye1Qv-~2VU9C9aX_%p0N~17Mz9iEK$@GR)w9ZVREj_N`UcR1jr$WkwC3sO?jKpi!$Q3gH3qJxEX zYO=zK#LBd&$Cc*|@M}U^JenkY@K%XkA_iWDe#5s}rRvFItwP~^q{1SBh3+(G`+~$; z;i=Yc&9Czmf=mNjiF-;+DX&@_7L&HHGL7=I#vk^jB08?WO~O}WeH`+-{qfTL&}N8T zp_u~e9g^ZzmW`}XobV^a(g8!zHI=T)k^}E{lh5ELdZLJQ2Ip!2a zd?xO)pW0!6R^C1CDZZKDK(Y5S+oFBwYYR=Q@LG@S))Ow^lq z;&hWSVOb4HweoG%5kNiicp4eLJgq;CBWQy9Uy5&N%^(50y6=Vg)p zzg$zX3M9JyS8pKiir6MAj`Shxjmb&%K5pO{Xj&b`^k=M+$Nk8pdo!z*Iu#!^={ZGP z{shi@?<#r#+1>4D0ton1a=W)WL5-R#eWx3_Ma0Sid?lyp8Sa9ArZZ(oPD+L?H~oJnr-{Fa4JO|vc+*-p!pzafiFpsb&|s|aJL4-z(3RuXH};j4aLg|Z$wK$ZE?Z{(R8a>ufZch za8MiX>?$4%b`T7M5rR0Phdu98S5Ny#PkB5X?AITtME$Iyn4wxhA}S77%zG>d?XhVF zgb_@H=)K&7MK^k??nx5d`LzFzb5KD<@v$o(F{X5Rz*2(WqsU+XArPSUm3cmL0 zhNBN#f+CAl`r)m2ovYSLvvIdYHP?fhRgqs9bPQb3#f|HlpK+Z3Id$QSc`y3GukuHr zuVCD4>iskOvylwdg~h(7Chn1O%7gNVfyD>0>lx(iRql~bJ`>N+;Lh=;@a+^~@MIN{ zZn1V4cC4_^YP;&vU;p$2%Vn}9?uou_TXm)>!vS1;?@;f1vGIV~jFVB>;x`Rbdw)J; znI40*`%k+;utc=|kxcPe*wSSBsbOALLKVdR&PQu&T1 zG@q*7JDj#kNQ-6JKWyUaKu!vu^2077Vi|$B;Dz;mFIpt)%TkHC60YmJdGycC+1Q&n z-oyrNVkB(6)A(~#J$rsM-MFnSem&H;4!IiEN>Ur_nIgGbCvEGhEz^+wav88oD8f6v(f7BFoDuDQ(8O4>cK5)KIu#K$y} z$vJ18+l3k%R20X&{(xO@r}pe3(q=N zE4$K=S(vm(pMFetzuO{A$Ug66eLK)a;k$e@DbKt0!;@;scXMbudc*RxQu;f4H_K*( zrgP6^uRPzReLKP9^c^`&_zrCG(LKNxxi79{Eg9D#`c)sNiL<8!eRJVc8H=3KbRtFB z>yNp6Z*NN^XWQCLW{IVSb8PeWqnd@_9LQi|ZWhtcL<4JOtdVkV0?Qs6S;G5NV=Fcl zSaQehzX`rPrckuwJYQ0f>%&lqnMu)*w2t$688Wp&bSi~=*l8GW2VHph*mcA38(*n} z4tnn_(`-O3|LYKImok6SCnjzcM0XM?=qX0MzC2$or-p;0FgTlfH4|>95GjUy*i%9} z6D4~44e}@n;%9U3zm1f8t3}h`l_jsmYswin-XpRZI~hh$vPM0yPxM2gU93z~h+Y4d zXPg*?5I_&yU$~H69T#xpCA(hMkRPJ&BUgJxcAWa#$f(r8_tfMOpCn;!*_BR1?T4>k zlevp?S3TQFm>>(PO!um?-onnTB~i6+5uSl_MNfyz4{WBmLZ_u_b& z^aC;RZO(3;^L3oQC9fymrY1A$hpZkZhFdFfxBX) z{2o*27m{d&UrYgCa98$x<}z~jS=3tiS zli5eSfA`v?7lPBxJx*_b&(Eq(Wo4qM!FLQv5vEOG1s~dxs%Z{j$EHqF#XKmG5o*BN z>Kmx%6;6QBAYkmK74KFF!GCYpkr@de&EmO*-_myDC+g-OHDJci@qW&&Be@mGnOGM- zO;@Xhp2?~EWSBL?FNsM|^#m`+DbtLjli*ISljRbv;7&KH;KmaDNTKPS-`d7sn~FmW>D4P=MZW0n#H2jXh$0o;7?FF8No0v&!LyRxOhT$|PqQ9k zHV!pTp_**(Y}O?DNuBR5i$dl>ZkT5Del48K3lQ!~a43-zTZ*rC0P(dLt=EE} zZPJb^$jBQ@2|sf?Kla29?EX^weeKcBFnoiNHQ6$|&m*M;R#`uutfx{T*N2q9Zupp* z$^`aydzV!o>vWnei$0LP>px{1s-=-)6D=MeR))@^yC6mpDDYb7yochNEmPndwl>l~ z?|#d-+`GT1)3SM6@Fndc>C&!NDra<(MX!(mDukEUlBbZJOfDHe`g3$Rx@9E0KVnHX z@1s()O>LGc8Zt_&1p^tyf^4-^Vl2*NG5i%(kQ;&(JD!Ups(NGM1~{6Il#;@o@94Z~ zYQfPbpfi*AX#iQU)}Z8Yf+5-R_1Sk6)E~WD>tNe)NyX5NeqV(UG-Y$4q?;Os0pJX(iMQ#fe z`2TD+f4a&~VAHa+hgDH?JAELRZ%!WTV-OjY`FkhtZG&g2AvHcDx7%0eBaTW|KZK5! zGw;GFb}dfSgGG24sJ5Jtg5&D8I!=cfd|sJyTqf7(2az&5WOhGp9T~^R{qg5F5~uq) z$G)Y3Ozm2pm3sPRvl)9fL2|$Hgjv;zOz`;6iHfT_lYJ3pEn1GH7mfdV>-l@R#r{Rp z#uwf~rZe38&GIkP2^8fzs1w_Fdzz@Z(@jkhvhxeVW__xTO%PJ_$jTwr8TPKTJDLw) zEFbCpnfvRMl+GVDLtcr}tHT(JqJ^{twof@L`H#7>zZ)Gj$=EDjJDAJkq_f95+xL3H zK}L1Wt56%3(&o5kvHw&~8@uOiKB1z8oj_uEaJ!kU&F>zMy+8f;X)&H<(L7Vr71|(} z@wjU|`)i76nNqi(d54D&m*)wAY}c)~b0gHIB=48boB-x1ZJM3ID_`xmhL~x6oDWd(;@&Zc#49GdV+H&S6WU<@eOtw!M&x04~pjA2? zc25P>g#{--<f&qg)M%}^2P)E~8C1PW6)BU)ixpE3toYTPJ zrUpLuzyHKgbJ!TyF+ZtTnG~TAI2aV@4rFo7J`^Yk@b{I60}e$)lrY$h`2XH_kL5zj z50avL@77!eqC?i)|CQ3ebs^OWNiAx5A;gGau*HY}m6DUakRrkbQh1ZBIx7TVZLI%a zsq%XlQaX^-7o__AY+@K}&hEcbLk}*bk|C*}r)ZKnq%as-)PJRl94@5hfE1lEGXQC84D8fNr{?Q1jRrlqd&KxFSrzwb(!fgS{_>!D#-~DEKQW z?LsVWD-9D>gNK2*GER&h{uaQjMOXeS8c}&Ex?PExfDa@)H^tcTfaFWiO#l1PNA;KA zEsGDnTfjrm_&pg6<{t20vFw&hu~(4TeU4I0bkH)iT>lmG`*JBZ2*l{y34}lZ6*ZZ=@Kzt^ltaVU{uQ3|G8~y`BLmX5W_V2 zG_w+fY6O46HLK9#NM(K50e^BxNsT>g&%7+N3S&$Hj{fpxNw{rPJmtxN$v44^5 z|BAU#UWzqCV*f%~{}uD3zZAnE!l1x_AQ}`ir~`T;^W|j?aQVu=ki~!RHeiRu6wtqN zp*n~#*fB3wxu{>@CiHK7C>&x8M*4qE7zT{|fBFlzI2=VR0nC;GF$NcUZ2{^7DFz*6 zxrEUh3!%al)GjfG5PECT za*Yhw#N;wK0!5F&z(eo6($jCI_Q&MQA)HJELSe3Dm0K$3>^j|`A5?izl%;#fwUNsXkw^V@C&024FiUH hi;h8tqN2m#f)it4pqd-utSDxj`suh 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%0A9x4DXOb9GI!X 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�I>N|i=H_OfFnK~r1@O!+sd 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

*I{6KdTV50(7#)iTcFI!+A>Fx` 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 O191$*G4Nl9f&UN07GA&r diff --git a/src/app/AppData.cpp b/src/app/AppData.cpp index 67a853e..509d23d 100644 --- a/src/app/AppData.cpp +++ b/src/app/AppData.cpp @@ -69,9 +69,9 @@ bool AppData::initFromDB() std::string name = fields.value(DMDefWorkMode::NAME); this->mapping.policyType.push_back({std::to_string(policyTypeId), name}); this->mapPolicyType[policyTypeId] = name; - str += ("策略类型: {" + std::to_string(policyTypeId) + ":" + name + "},"); + //str += ("策略类型: {" + std::to_string(policyTypeId) + ":" + name + "},"); } - spdlog::info(str); + //spdlog::info(str); } { // 数据库读取设备类型定义 str = "", result.clear(); @@ -87,9 +87,9 @@ bool AppData::initFromDB() item->fieldsAttr.parseJson(item->attr); mapDeviceType[item->typeId] = item; mapping.deviceType.push_back({std::to_string(item->typeId), item->name}); - str += ("设备类型: {" + std::to_string(item->typeId) + ":" + item->name + "},"); + //str += ("设备类型: {" + std::to_string(item->typeId) + ":" + item->name + "},"); } - spdlog::info(str); + //spdlog::info(str); } { // 数据库读取角色定义 str = "", result.clear(); @@ -103,9 +103,9 @@ bool AppData::initFromDB() item->isOpen = fields.get(DMRole::IS_OPEN); mapRole[item->roleId] = item; mapping.role.push_back({std::to_string(item->roleId), item->name}); - str += ("角色: {" + std::to_string(item->roleId) + ":" + item->name + "},"); + //str += ("角色: {" + std::to_string(item->roleId) + ":" + item->name + "},"); } - spdlog::info(str); + //spdlog::info(str); } { // 数据库读取场站信息 str = "", result.clear(); @@ -118,9 +118,8 @@ bool AppData::initFromDB() station->setFields(fields); this->mapStation[station->stationId] = station; this->mapping.stationName.push_back({std::to_string(station->stationId), station->name}); - str += ("场站: {" + std::to_string(station->stationId) + ":" + station->name + "},"); + spdlog::info("场站: {}:{}, {}", station->stationId, station->name, station->status>0 ? "启用" : "未启用"); } - spdlog::info(str); } { // 数据库读取设备信息 str = "", result.clear(); @@ -158,32 +157,32 @@ bool AppData::initFromDB() } } { // 数据库读取电价分段信息 - result.clear(); - vecElectPeriods.resize(12); - DAO::exec(dao, "SELECT * FROM configure;", result); - - Fields info; - for (auto& fields: result) - { - auto k = fields.value("key"); - auto v = fields.value("val"); - info.set(k, v); - } + //result.clear(); + //vecElectPeriods.resize(12); + //DAO::exec(dao, "SELECT * FROM configure;", result); + // + //Fields info; + //for (auto& fields: result) + //{ + // auto k = fields.value("key"); + // auto v = fields.value("val"); + // info.set(k, v); + //} - for (int month = 1; month<=12; month++) - { - if (month-1 < vecElectPeriods.size()) - { - auto& vecItems = vecElectPeriods[month-1]; - std::string str = info.value("period_" + std::to_string(month)); - std::vector vec; - Utils::split(str, ",", vecItems); - } - } - electPriceSuperPeak = info.get("price_super_peak"); - electPricePeak = info.get("price_peak"); - electPriceShoulder = info.get("price_shoulder"); - electPriceOffPeak = info.get("price_off_peak"); + //for (int month = 1; month<=12; month++) + //{ + // if (month-1 < vecElectPeriods.size()) + // { + // auto& vecItems = vecElectPeriods[month-1]; + // std::string str = info.value("period_" + std::to_string(month)); + // std::vector vec; + // Utils::split(str, ",", vecItems); + // } + //} + //electPriceSuperPeak = info.get("price_super_peak"); + //electPricePeak = info.get("price_peak"); + //electPriceShoulder = info.get("price_shoulder"); + //electPriceOffPeak = info.get("price_off_peak"); } { // 数据库读取统计数据 vector result; @@ -457,32 +456,32 @@ int AppData::getPolicyTypeId(std::string name) } -std::vector AppData::getElectPreiodVals(int month) -{ - if (month > 0 && month-1 < vecElectPeriods.size()) - { - return vecElectPeriods[month-1]; - } - return {}; -} - -std::string AppData::getElectPreiodVal(int month, int hour) -{ - if (month > 0 && month-1 < vecElectPeriods.size()) - { - auto& vec = vecElectPeriods[month-1]; - if (hour > 0 && hour-1 < vec.size()) - { - auto& val = vec[hour-1]; - if (val == "尖") return "尖峰"; - if (val == "峰") return "高峰"; - if (val == "平") return "平段"; - if (val == "谷") return "低谷"; - return val; - } - } - return ""; -} +//std::vector AppData::getElectPreiodVals(int month) +//{ +// if (month > 0 && month-1 < vecElectPeriods.size()) +// { +// return vecElectPeriods[month-1]; +// } +// return {}; +//} +// +//std::string AppData::getElectPreiodVal(int month, int hour) +//{ +// if (month > 0 && month-1 < vecElectPeriods.size()) +// { +// auto& vec = vecElectPeriods[month-1]; +// if (hour > 0 && hour-1 < vec.size()) +// { +// auto& val = vec[hour-1]; +// if (val == "尖") return "尖峰"; +// if (val == "峰") return "高峰"; +// if (val == "平") return "平段"; +// if (val == "谷") return "低谷"; +// return val; +// } +// } +// return ""; +//} void AppData::storeRuntimeDB() { diff --git a/src/app/AppData.h b/src/app/AppData.h index 07a24f2..36691d6 100644 --- a/src/app/AppData.h +++ b/src/app/AppData.h @@ -99,9 +99,8 @@ public: // 根据策略类型名称获取策略类型ID int getPolicyTypeId(std::string name); - std::vector getElectPreiodVals(int month); - - std::string getElectPreiodVal(int month, int hour); + //std::vector getElectPreiodVals(int month); + //std::string getElectPreiodVal(int month, int hour); void storeRuntimeDB(); @@ -134,10 +133,12 @@ public: VecPairSS stationName; } mapping; - double electPriceSuperPeak {}; - double electPricePeak {}; - double electPriceShoulder {}; - double electPriceOffPeak {}; + //double electPriceSuperPeak {}; + //double electPricePeak {}; + //double electPriceShoulder {}; + //double electPriceOffPeak {}; + // 电力峰谷分段 (12个月,每个月按小时分成24个时段) + //std::vector> vecElectPeriods; // 场站信息 std::unordered_map> mapStation; @@ -157,8 +158,7 @@ public: // 策略信息 std::unordered_map> mapPolicy; - // 电力峰谷分段 (12个月,每个月按小时分成24个时段) - std::vector> vecElectPeriods; + std::map mapDataDay; diff --git a/src/app/Application.cpp b/src/app/Application.cpp index 16acd66..6c055a9 100644 --- a/src/app/Application.cpp +++ b/src/app/Application.cpp @@ -73,6 +73,8 @@ void Application::runThreadDevice() void Application::runThreadMain() { + std::this_thread::sleep_for(std::chrono::seconds(10)); // 延迟10秒执行 + while (!isQuit) { if (!this->isInit) // 初始化失败 @@ -85,27 +87,29 @@ void Application::runThreadMain() static TimeTick ttMqtt; // 检查 场站的 MQTT 连接 if (ttMqtt.elapse(30)) { - auto& optionMqtt = Config::option.mqtt; - if (!optionMqtt.host.empty()) + for (auto& item : appdata.mapStation) { - for (auto& item : appdata.mapStation) + auto& station = item.second; + // 检查MQTT的连接状态 + if (!Config::option.mqtt.host.empty()) { station->initMqtt(); } + // 检查设备的在线状态 + station->checkDevice(); + } + } + + static TimeTick ttMqttPolling; // 召测 + if (!Config::option.mqtt.host.empty() && ttMqttPolling.elapse(10)) + { + for (auto& item : appdata.mapStation) + { + auto& station = item.second; + if (Utils::time() - station->getPollingTS() > Config::option.mqtt.interval) { - auto& station = item.second; - if (station) - { - if (station->isOpen) - { - // 该函数检查连接状态,若已经连接,则无操作;若未连接,则进行连接操作 - item.second->initMqtt(); - // 召测 - item.second->polling(); - } - // 检查设备的在线状态 - station->checkDevice(); - } + item.second->polling(); } } } + std::this_thread::sleep_for(std::chrono::seconds(1)); } } diff --git a/src/app/Config.cpp b/src/app/Config.cpp index 7ed4d4c..312a5ac 100644 --- a/src/app/Config.cpp +++ b/src/app/Config.cpp @@ -47,8 +47,7 @@ bool Config::init(std::string filename) JSON::read(json, "token", option.http.useToken); JSON::read(json, "port", option.http.port); JSON::read(json, "encryption", option.http.encryption); - JSON::read(json, "encryptKey", option.http.encryptKey); - } + JSON::read(json, "encryptKey", option.http.encryptKey); } else { spdlog::error("[config] parse http failed: not found."); @@ -60,6 +59,7 @@ bool Config::init(std::string filename) JSON::read(json, "host", option.mqtt.host); JSON::read(json, "username", option.mqtt.username); JSON::read(json, "password", option.mqtt.password); + JSON::read(json, "interval", option.mqtt.interval); } else { diff --git a/src/app/Config.h b/src/app/Config.h index a0d0442..88e8445 100644 --- a/src/app/Config.h +++ b/src/app/Config.h @@ -29,6 +29,7 @@ struct AppOption std::string host; std::string username; std::string password; + int interval {60}; } mqtt; struct { diff --git a/src/app/Device.cpp b/src/app/Device.cpp index 0428df5..f06c62a 100644 --- a/src/app/Device.cpp +++ b/src/app/Device.cpp @@ -317,7 +317,10 @@ void Device::setParam(std::string k, int v) } else if (type == int(EDeviceType::BMS)) // 104 BMS { - if (k == "0x0049") { err = (v==1); } //运行状态 R uint16 0 运行状态 0-正常 1-告警 2-保护 0x0049 + if (k == "0x0049") + { + err = (v==1); + } //运行状态 R uint16 0 运行状态 0-正常 1-告警 2-保护 0x0049 else if (k == "0x004A") { running = (v==1 || v==2); } //充放电状态 R uint16 0 0-待机 1-充电 2-放电 0x004A } else if (type == int(EDeviceType::BCU)) // BCU diff --git a/src/app/Station.cpp b/src/app/Station.cpp index 038d18c..4fc9d39 100644 --- a/src/app/Station.cpp +++ b/src/app/Station.cpp @@ -24,8 +24,8 @@ void Station::setFields(Fields& fields) this->workMode = fields.get(DMStation::WORK_MODE); this->code = fields.value(DMStation::CODE); this->status = fields.get(DMStation::STATUS); + this->operationDate = fields.value(DMStation::OPERATION_DATE); - this->isOpen = fields.get(DMStation::STATUS); this->launchDate = fields.value("operation_date"); this->policy.setFields(fields); } @@ -156,12 +156,25 @@ void Station::initMqtt() void Station::polling() { - if (mqttCli) + if (status > 0 && mqttCli) { - mqttCli->polling(); + if (mqttCli->isConnected) + { + mqttCli->polling(); + } + //else + //{ + // // 该函数检查连接状态,若已经连接,则无操作;若未连接,则进行连接操作 + // this->initMqtt(); + //} } } +int64_t Station::getPollingTS() +{ + return (mqttCli != nullptr) ? mqttCli->tsPolling : 0; +} + void Station::setGarewayWorkMode() { if (!mqttCli) diff --git a/src/app/Station.h b/src/app/Station.h index c5b0e32..df192fb 100644 --- a/src/app/Station.h +++ b/src/app/Station.h @@ -111,6 +111,7 @@ public: void initMqtt(); void polling(); + int64_t getPollingTS(); void setGarewayWorkMode(); void checkDevice(); @@ -129,7 +130,6 @@ public: int stationId {}; std::string name; std::string code; - bool isOpen {false}; int status {0}; std::string operationDate; SysPolicy policy; @@ -236,6 +236,28 @@ public: float dayFeeOut {0.0}; // 日放电费用 R uint32 1RMB 0 0x1114 float dayIncome {0.0}; // 日收益 R int32 1RMB 0 0x1116 + //日正向尖有功电能 R uint32 1kWh 0x0039 + //日正向峰有功电能 R uint32 1kWh 0x003B + //日正向平有功电能 R uint32 1kWh 0x003D + //日正向谷有功电能 R uint32 1kWh 0x003F + //日正向总有功电能 R uint32 1kWh 0x0041 + //日反向尖有功电能 R uint32 1kWh 0x0043 + //日反向峰有功电能 R uint32 1kWh 0x0045 + //日反向平有功电能 R uint32 1kWh 0x0047 + //日反向谷有功电能 R uint32 1kWh 0x0049 + //日反向总有功电能 R uint32 1kWh 0x004B + + //总正向尖有功电能 R uint32 1kWh 0x0057 + //总正向峰有功电能 R uint32 1kWh 0x0059 + //总正向平有功电能 R uint32 1kWh 0x005B + //总正向谷有功电能 R uint32 1kWh 0x005D + //总正向总有功电能 R uint32 1kWh 0x005F + //总反向尖有功电能 R uint32 1kWh 0x0061 + //总反向峰有功电能 R uint32 1kWh 0x0063 + //总反向平有功电能 R uint32 1kWh 0x0065 + //总反向谷有功电能 R uint32 1kWh 0x0067 + //总反向总有功电能 R uint32 1kWh 0x0069 + } statData; /////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/src/common/Spdlogger.cpp b/src/common/Spdlogger.cpp index 61c674b..18a7632 100644 --- a/src/common/Spdlogger.cpp +++ b/src/common/Spdlogger.cpp @@ -1,7 +1,8 @@ #include "Spdlogger.h" #include "spdlog/sinks/stdout_color_sinks.h" -#include +#include "spdlog/sinks/daily_file_sink.h" + //std::shared_ptr Spdlogger::logger_ = spdlog::stdout_color_mt("sys"); //std::shared_ptr Spdlogger::logger = spdlog::daily_logger_mt("daily_logger", "ees.log", 0, 0); @@ -12,31 +13,36 @@ void Spdlogger::init(spdlog::level::level_enum log_level, std::string filename) //logger = spdlog::daily_logger_mt("daily_logger", filename, 0, 0); } - //logger_ = spdlog::stdout_color_mt("sys"); - //logger_ = spdlog::daily_logger_mt("daily_logger", "log/pvs.log", 0, 0); - // set log level : spdlog::level::debug - //logger->set_level(log_level); - //logger->flush_on(log_level); - + std::vector mySinks; + bool consoleEnabled = false; // 创建控制台接收器 - auto consoleSink = std::make_shared(); - //consoleSink->set_level(log_level); // 设置控制台日志等级 - //consoleSink->set_pattern("[%T] [%^%l%$] %v"); // 设置日志格式 + if (consoleEnabled) + { + auto consoleSink = std::make_shared(); + //consoleSink->set_level(log_level); // 设置控制台日志等级 + //consoleSink->set_pattern("[%T] [%^%l%$] %v"); // 设置日志格式 + mySinks.push_back(consoleSink); + } - // 创建文件接收器 - //auto fileSink = std::make_shared("logs/mcs.log", true); - //fileSink->set_level(spdlog::level::debug); // 设置文件日志等级 - //fileSink->set_pattern("[%T] [%l] %v"); // 设置日志格式 + bool fileEnabled = true; + if (fileEnabled) + { + // 创建文件接收器 + //auto fileSink = std::make_shared("logs/mcs.log", true); + //fileSink->set_level(spdlog::level::debug); // 设置文件日志等级 + //fileSink->set_pattern("[%T] [%l] %v"); // 设置日志格式 - // 每日文件sink(可选,每天生成新文件) - auto dailySink = std::make_shared("logs/ess.log", 0, 0); - //dailySink->set_level(log_level); - //dailySink->set_pattern("[%Y-%m-%d %H:%M:%S.%e] [%l] %v"); + // 每日文件sink(可选,每天生成新文件) + auto dailySink = std::make_shared("logs/ess.log", 0, 0); + //dailySink->set_level(log_level); + //dailySink->set_pattern("[%Y-%m-%d %H:%M:%S.%e] [%l] %v"); + + mySinks.push_back(dailySink); + } // 创建一个多重接收器的 logger - std::vector sinks {consoleSink, dailySink}; - auto logger = std::make_shared("", sinks.begin(), sinks.end()); + auto logger = std::make_shared("", mySinks.begin(), mySinks.end()); // 设置全局 logger spdlog::set_default_logger(logger); diff --git a/src/common/Spdlogger.h b/src/common/Spdlogger.h index 345ac75..5924d2e 100644 --- a/src/common/Spdlogger.h +++ b/src/common/Spdlogger.h @@ -3,6 +3,7 @@ #include "spdlog/spdlog.h" #include // 彩色控制台日志 #include // 文件日志 +#include "spdlog/sinks/qt_sinks.h" #include class Spdlogger diff --git a/src/database/Dao.cpp b/src/database/Dao.cpp index 4b27ba0..7e2fff7 100644 --- a/src/database/Dao.cpp +++ b/src/database/Dao.cpp @@ -4,6 +4,7 @@ #include "common/JsonN.h" #include "app/Application.h" #include "app/AppData.h" +#include "common/Crypto.h" std::string DAO::sqlPageLimit(int index, int size) { @@ -169,8 +170,6 @@ Errcode DAO::login(std::shared_ptr dao, std::string account, std::str if (!dao) { dao = std::make_shared(""); } if (!dao->isConnected()) { - - //DAO1::writeSystemLog(dao, 2, "", account, "用户登录失败:" + err); return Errcode::ERR_DB_CONN; } std::string t = Utils::timeStr(); @@ -181,12 +180,10 @@ Errcode DAO::login(std::shared_ptr dao, std::string account, std::str int ret = dao->exec(sql, result); if (ret != 0) { - //DAO1::writeSystemLog(dao, 2, "", account, "用户登录失败:" + err); return Errcode(ret); } if (result.size() <=0) { - //DAO1::writeSystemLog(dao, 2, "", account, "用户登录失败:" + err); return Errcode::ERR_LOGIN_USER_NOTEXIST; } fields = result[0]; @@ -194,9 +191,9 @@ Errcode DAO::login(std::shared_ptr dao, std::string account, std::str int loginCount = fields.get("login_count"); // 判断密码 - if (passwd != fields.remove("passwd")) + + if (passwd != Crypto::sm3(fields.remove("passwd"))) { - //DAO1::writeSystemLog(dao, 2, userId, account, "用户登录失败:" + err); return Errcode::ERR_LOGIN_PASSWD; } @@ -571,8 +568,8 @@ Errcode DAO::queryStatStationGroup(std::shared_ptr dao, string statio } if (!category.empty() && category != "0") { - if (!sqlCondition.empty()) sqlCondition += " AND "; - sqlCondition += "category='" + category + "'";; + //if (!sqlCondition.empty()) sqlCondition += " AND "; + //sqlCondition += "category='" + category + "'";; } if (!sqlCondition.empty()) { sqlCondition = " WHERE " + sqlCondition; } @@ -615,8 +612,8 @@ Errcode DAO::queryStatStationList(PageInfo& pageInfo, Fields& params, vectorI)4&@s-a21*P1hzsSg}T8WfjWZ24OGkR1~9;I z#7{TS17J80Drne1b3X6AZVU&Yf00e*l5C8%|00;m9AOHk_01yBIg(C3$a<_i|=l*x>6JhZ3>C2STdw#k9 z?~i})57?){fa4DQPlNp&G!OpE<(~Bi{=q-;f4Le!{Flo;@_*UfgMaXk{9m>Pz(4rM z{J&fcApXnc9`nDlxd;E?ANjv*4S;{}kNJPO8bJJ)%RT0QWpfYy!9VhU*&4V-{`r|w z>6}*c{HeH3dZvI?qm@h9a}=lvJx4{fXG==!jhpQAl1^+2f&8JTApAT0ldJ6tipqfve;6ER(QuGx3e?-;)Pppq; zZtn>AKjxIVr_Z^2{;b<)ZT^|pp80>Oz1(f6j$Kn1*H_iqlsm?~+Iby#!Zl#<-|-)E zPdpuXXM8%3)30j2tNR$94ry6y;%q(y3YYYKneF zx)ra#$VSx9%Mu5FJ!U@ojOa2Xs3KGXWzLY{giU=`!j|HxDDUlwK6CEr9APNu8rHDA9C&2a^JR@_;UgHABTU^ zW3M$A)Zxf{YgzZd*#_^+P%QpJ~&A8{VA;2!+z^v`Q?gxOBXsa7vn zH9+m}t@?oYm&bpz7Q3;+{z5%xHDJj-w-5fc{3pK#_Mwf1Un0{&`Em19Nd= zZ#9srO~k)0{+WMXGe5!ADgG>u?NV{iV*vkp{zuLM78*KR2l(&Df69CEBjy&wzvB5H zj{9&Uo;Ww3jjbHcA^!WtKkK0R9#A>_)BO+D%T4Xd=Rd>vuQZV6p3rET(!_r}cGxun zBYz$+)du*tQE{$w0q}3bKi86@2Ee}^|2b*^{M+)+wdFJ)0RQ&TZiR`DyUbS}pzQ@+4)@gfa?H`rBY;BS&ZGpXI zdl8*?XYIN^xAFZY`!iJ#+P{T1_2)0LpS(ZWTt#3nxJ!-gR`1leZN)Vmt;&bPYh=G2 z*-OT3RoBmDHI~432Wm64H`Ia9exeS9_KG?X+K<$M(0+){a|&qBQ(KF$ezINIKHGl= z{tU*ikxhr%`f9!|*jw@r{bT!;PrFsETKfGK*|p%h^EHs2%^eQk&m9i!x`UlRvv+j< UEwZZy0{^Ol&}N6wKFo3Z2_@|cwEzGB literal 0 HcmV?d00001 diff --git a/src/main.cpp b/src/main.cpp index ecfd920..bcfa9a7 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -171,9 +171,13 @@ int main(int argc, char** argv) // 设置控制台输入为 UTF-8 编码(如果需要输入中文) SetConsoleCP(CP_UTF8); + // 启动数据库服务 + system("net start mysql"); + //OpensslSM2_test(); //SM2_test(); + // 初始化日志 Spdlogger::init(spdlog::level::info, ""); spdlog::info("[main] start ... ======================================================================"); @@ -181,7 +185,7 @@ int main(int argc, char** argv) // 运行后台服务 Application::instance().init(); - + std::cout << "ess server is running ... " << std::endl; if (Config::option.windowEnabled) { @@ -194,6 +198,7 @@ int main(int argc, char** argv) } else { + while (1) { std::this_thread::sleep_for(std::chrono::milliseconds(100)); diff --git a/src/protocol/HttpEntity.cpp b/src/protocol/HttpEntity.cpp index 429ebf4..6e13a54 100644 --- a/src/protocol/HttpEntity.cpp +++ b/src/protocol/HttpEntity.cpp @@ -369,7 +369,7 @@ Errcode HttpEntity::login(const httplib::Request& req, njson& json, std::string& json["permission"] = nodePermission; } - DAO::insertSystemLogUser(token, "用户登录:" + ErrcodeStr(err), (err==Errcode::OK) ? 1: 0); + DAO::insertSystemLogUser(token, "用户[" + account + "]登录:" + ErrcodeStr(err), (err==Errcode::OK) ? 1: 0); return err; } @@ -636,6 +636,7 @@ Errcode HttpEntity::updateStation(const httplib::Request& req, njson& json, std: params.check("lat", "", "0.0"); params.check("status", "", "1"); params.check("policy_id", "", "NULL"); + params.check("operation_date", "", "NULL"); Errcode err = DAO::updateStationById(params); if (err == Errcode::OK) { @@ -861,7 +862,7 @@ Errcode HttpEntity::queryDevicByCategory(const httplib::Request& req, njson& jso njson jsondata = njson::array(); auto station = Application::data().getStation(stationId); - if (station && station->status == 1) + if (station) { std::vector> vecDevice; station->getDeviceByCategory(category, vecDevice); @@ -1158,8 +1159,8 @@ static std::string VerifyStatSqlCondition(Fields& params) } if (!category.empty() && category != "0") { - if (!sqlCondition.empty()) sqlCondition += " AND "; - sqlCondition += "ss.category='" + category + "'";; + //if (!sqlCondition.empty()) sqlCondition += " AND "; + //sqlCondition += "ss.category='" + category + "'";; } if (!sqlCondition.empty()) { sqlCondition = " WHERE " + sqlCondition; } return sqlCondition; @@ -1399,8 +1400,8 @@ Errcode HttpEntity::exportStatReport(const httplib::Request& req, njson& json, s std::string endDate = params.value("end_date"); std::string sql = "SELECT s.name station_name, sd.* FROM stat_day sd LEFT JOIN station s ON sd.station_id=s.station_id"; - " WHERE station_id = '" + stationId + "' AND category = '" + category + "'" - " AND dt BETWEEN '" + startDate + "' AND '" + endDate + "2025-09-19' AND sd.category = '1'"; + sql += " WHERE sd.station_id = '" + stationId + "' AND category = '" + category + "'"; + sql += " AND dt BETWEEN '" + startDate + "' AND '" + endDate + "2025-09-19' AND sd.category = '1'"; std::string filename; std::vector result; diff --git a/src/protocol/MqttEntity.cpp b/src/protocol/MqttEntity.cpp index 86cb99e..94154d9 100644 --- a/src/protocol/MqttEntity.cpp +++ b/src/protocol/MqttEntity.cpp @@ -218,6 +218,7 @@ int MqttClient::polling() } } } + tsPolling = Utils::time(); return 0; } @@ -256,6 +257,7 @@ void MqttClient::onConnectSuccess( MQTTAsync_successData* resp) spdlog::info("[mqtt] connect to {} success, clientId={}.", addr, clientId); this->isConnected = true; this->subscribe(); + this->polling(); } void MqttClient::onConnectFaiure(MQTTAsync_failureData* resp) @@ -302,9 +304,9 @@ int MqttClient::onMessageArrived(char* topic, int topicLen, MQTTAsync_message* m std::string key = item.key(); auto& val = item.value(); if (key == "40001") { station->readGatewayMode(val.get()); } - else if (key == "40002") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "峰谷时间段"); } - else if (key == "40021") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "自定时间段"); } - else if (key == "40038") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "其他参数"); } + //else if (key == "40002") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "峰谷时间段"); } + //else if (key == "40021") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "自定时间段"); } + //else if (key == "40038") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "其他参数"); } } } else if (command == "Gateway_YX") @@ -388,13 +390,13 @@ void MqttClient::ParseArrivedMessage(njson& json, string command, std::shared_pt { auto addr = iter->first; auto& regUnit = iter->second; + spdlog::debug("[mqtt] read [{}]={}, {}{}", addr, val, regUnit.name, regUnit.remark); + if (regUnit.alert && val > 0) { station->readAlert(device, addr, val, "[" + command + "]" + regUnit.name + "(" + addr + ")"); } - device->setParam(addr, val); - spdlog::debug("[mqtt] read [{}]={}, {}{}", addr, val, regUnit.name, regUnit.remark); if (command == "MEM_YC") { station->readRuntimeData(deviceNo, addr, val); } else if (command == "Fire40_YX") { station->readFire40Data(deviceNo, addr, val); } diff --git a/src/protocol/MqttEntity.h b/src/protocol/MqttEntity.h index 96d10c4..af0d5a8 100644 --- a/src/protocol/MqttEntity.h +++ b/src/protocol/MqttEntity.h @@ -54,7 +54,7 @@ public: int qos {0}; bool isConnected {false}; bool isSubscribed {false}; - + int64_t tsPolling {0}; static std::map s_mapTopicInfo; }; diff --git a/src/qt/MainApp.cpp b/src/qt/MainApp.cpp index 03483ed..c793363 100644 --- a/src/qt/MainApp.cpp +++ b/src/qt/MainApp.cpp @@ -1,4 +1,5 @@ #include "MainApp.h" +#include "common/Spdlogger.h" #include #include @@ -10,19 +11,25 @@ #include #include #include +#include +#include + +#include "app/Config.h" +#include "common/Utils.h" +#include "QUI.h" +#include "app/Application.h" +#include "app/AppData.h" +#include "app/Station.h" +#include "protocol/MqttEntity.h" static const std::string QSS_BTN_MENU = -"QPushButton{background:rgba(50,128,218,200);color:white;border-radius:5px;border:2px solid rgb(10,120,215);font:bold 18px;}" -"QPushButton:hover{background-color:rgb(32,164,128);}" -"QPushButton:pressed{border-width:3px 0 0 3px;background-color:rgb(1,32,54);border-style:inset;}" -"QPushButton:disabled{color:rgb(150,150,150);}"; +"QPushButton {background:rgba(50,128,218,200);color:white;border-radius:5px;border:2px solid rgb(10,120,215);font:bold 18px;}" +"QPushButton:hover {background-color:rgb(32,164,128);}" +"QPushButton:pressed {border-width:3px 0 0 3px;background-color:rgb(1,32,54);border-style:inset;}" +"QPushButton:disabled {color:rgb(150,150,150);}"; static const std::string QSS_LINE = -"QLineEdit { background-color: rgb(14, 49, 66); color: #ffffff; border: 1px solid rgb(18, 251, 255); border-radius: 5px; font: normal 13px; }"; - -static const std::string QSS_GROUP = -"QGroupBox { border: 1px solid gray; margin-top: 8px; border-radius: 5px;}" -"QGroupBox::title { subcontrol-origin: margin; subcontrol-position: top left; left:10px; margin-left: 0px; padding:0 1px; }"; +"QLineEdit { background-color: rgb(14, 49, 66); color: #ffffff; border: 1px solid gray; border-radius: 5px; font: bold 13px; }"; MainApp::MainApp() { @@ -45,8 +52,14 @@ MainApp::MainApp() //ui.weburl->setValue("http://www.baidu.com"); this->setMyLayout(); + + timer = std::make_shared(this); + connect(timer.get(), &QTimer::timeout, this, &MainApp::onTimer); + timer->start(1000); // 每隔1000毫秒更新一次 } + + class MyMenu : public QWidget { public: @@ -61,7 +74,7 @@ public: layout.setContentsMargins(2, 2, 2, 2); this->addMenuItem("系统总览"); - this->addMenuItem("运行监控"); + //this->addMenuItem("运行监控"); } void addMenuItem(std::string name) @@ -95,8 +108,9 @@ void PairLine(QWidget* parent, int x, int y, string k, string v) key->setGeometry(x, y, 80, 26); auto value = new QLineEdit(parent); value->setText(v.c_str()); - value->setGeometry(x+80, y, 180, 26); + value->setGeometry(x+80, y, 260, 26); value->setStyleSheet(QSS_LINE.c_str()); + value->setReadOnly(true); } @@ -110,36 +124,144 @@ public: int x=10, y=10; { - QGroupBox* groupBox = new QGroupBox("HTTP", this); - groupBox->setGeometry(x, y, 300, 120); - groupBox->setStyleSheet(QSS_GROUP.c_str()); - - PairLine(groupBox, 20, 20, "服务类型: ", "服务端"); - PairLine(groupBox, 20, 50, "服务地址: ", "92.168.0.13:17900"); - PairLine(groupBox, 20, 80, "服务状态: ", "---"); + this->groupSys = UI::GroupBox(this, x, y, 1190, 120, "系统"); + auto pw = groupSys.get(); } { - x += 320; - QGroupBox* groupBox = new QGroupBox("MQTT", this); - groupBox->setGeometry(x, y, 300, 120); - groupBox->setStyleSheet(QSS_GROUP.c_str()); - - PairLine(groupBox, 20, 20, "服务类型: ", "客户端"); - PairLine(groupBox, 20, 50, "服务地址: ", "92.168.0.13:17800"); - PairLine(groupBox, 20, 80, "服务状态: ", "---"); + x = 10, y += 130; + this->groupHttp = UI::GroupBox(this, x, y, 390, 120, "HTTP"); + auto pw = groupHttp.get(); + PairLine(pw, 20, 20, "服务类型: ", "服务端"); + PairLine(pw, 20, 50, "服务端口: ", Utils::toStr(Config::option.http.port)); + PairLine(pw, 20, 80, "服务状态: ", "运行"); } { - x += 320; - QGroupBox* groupBox = new QGroupBox("数据库", this); - groupBox->setGeometry(x, y, 300, 120); - groupBox->setStyleSheet(QSS_GROUP.c_str()); + x += 400; + this->groupMqtt = UI::GroupBox(this, x, y, 390, 120, "MQTT"); + auto pw = groupMqtt.get(); + PairLine(pw, 20, 20, "服务类型: ", "客户端"); + PairLine(pw, 20, 50, "服务地址: ", Config::option.mqtt.host); + PairLine(pw, 20, 80, "服务状态: ", "---"); + } + { + x += 400; + this->groupDB = UI::GroupBox(this, x, y, 390, 120, "数据库"); + auto pw = groupDB.get(); + PairLine(pw, 20, 20, "数据库名: ", Config::option.database.dbname); + PairLine(pw, 20, 50, "主机地址: ", Config::option.database.host); + PairLine(pw, 20, 80, "用 户 名: ", Config::option.database.user); - PairLine(groupBox, 20, 20, "数据库名: ", "ees"); - PairLine(groupBox, 20, 50, "主机地址: ", "92.168.0.13:17800"); - PairLine(groupBox, 20, 80, "用 户 名: ", "root"); + + const std::string QSS_TABLE = // 表格整体样式 + "QTableWidget {" + " background-color: transparent;" // 背景色 + " gridline-color: #C0C0C0;" // 网格线颜色 + " border: 1px solid gray;" // 边框 + " color: white;" // 文字颜色 + "}" + // 表头样式 + "QHeaderView::section {" + " background-color: #404040;" // 表头背景 + " padding: 4px;" // 内边距 + " border: 1px solid #505050;" // 边框 + " min-height: 25px;" // 最小高度 + "}" + // 单元格样式 + "QTableWidget::item {" + " padding-left: 5px;" + " border-bottom: 1px solid gray;" // 底部边框 + "}" + // 选中状态 + "QTableWidget::item:selected {" + " background-color: #B8D6FF;" // 选中背景色 + " color: black;" // 选中文字颜色 + "}"; + + table = std::make_shared(this); + table->setGeometry(10, y += 130, 1190, 300); + table->setStyleSheet(QSS_TABLE.c_str()); + table->horizontalHeader()->setStretchLastSection(true); // 最后一列占满 + table->verticalHeader()->setVisible(false); // 不显示垂直表头 + table->setEditTriggers(QAbstractItemView::NoEditTriggers); // 单元格不可编辑 + table->setSelectionMode(QAbstractItemView::SingleSelection); // 设置为单选模式 + table->setSelectionBehavior(QAbstractItemView::SelectRows); // 设置为整行选中 + + + QTableWidgetItem* headerItem; + QStringList headerText_Row, headerText_Col; + headerText_Row << "站ID" << "站名称" << "站编号" << "站状态" << "MQTT状态" << "召测(秒)" << "说明"; + + // 设置为水平表头 + table->setColumnCount(headerText_Row.size()); + table->setHorizontalHeaderLabels(headerText_Row); + } + + textLog = std::make_shared(this); + textLog->setGeometry(10, y += 310, 1190, 280); + textLog->setStyleSheet("background-color: transparent; border: 1px solid gray; font-weight: 400;"); + textLog->setReadOnly(true); + + { + // 第二个参数是方法函数名称,即调用 QTextEdit的appeng函数; + auto qtSink = std::make_shared(textLog.get(), "append"); + spdlog::default_logger()->sinks().push_back(qtSink); + } + { + //qtSink = std::make_shared(textLog.get()); + //connect(qtSink.get(), &QtTextSink::appendText, textLog.get(), &QTextEdit::append); } } + void setTableCell(int row, int col, std::string text, std::string style="") + { + auto item = table->item(row, col); + if (!item) + { + item = new QTableWidgetItem(); + table->setItem(row, col, item); + } + item->setText(text.c_str()); + if (style == "OK") { item->setForeground(QBrush(Qt::green)); } + else if (style == "ERR") { item->setForeground(QBrush(Qt::red)); } + } + + void onTimer() + { + auto& appdata = Application().data(); + int rowNo = 0; + int tsNow = Utils::time(); + for (auto& item : appdata.mapStation) + { + auto& station = item.second; + if (rowNo >= table->rowCount()) + { + table->insertRow(rowNo); + } + bool isOpen = station->status > 0; + bool isConnected = station->mqttCli->isConnected; + + setTableCell(rowNo, 0, std::to_string(station->stationId)); + setTableCell(rowNo, 0, std::to_string(station->stationId)); + setTableCell(rowNo, 1, station->name); + setTableCell(rowNo, 2, station->code); + setTableCell(rowNo, 3, isOpen ? "启用" : "未启用", isOpen ? "OK" : "ERR"); + setTableCell(rowNo, 4, isConnected ? "连接成功" : "未连接", isConnected ? "OK" : "ERR"); + + int tsPolling = station->getPollingTS(); + setTableCell(rowNo, 5, tsPolling > 0 ? std::to_string(tsNow - tsPolling) + "/" + std::to_string(Config::option.mqtt.interval) : "--"); + rowNo++; + } + } + + // 创建自定义sink + std::shared_ptr qtSink; + + std::shared_ptr groupSys; + std::shared_ptr groupHttp; + std::shared_ptr groupMqtt; + std::shared_ptr groupDB; + std::shared_ptr table {}; + std::shared_ptr textLog; }; void MainApp::setMyLayout() @@ -162,9 +284,9 @@ void MainApp::setMyLayout() menu->setSizePolicy(sizePolicy); layout.main->addWidget(menu, 0, 0, 1, 1); - MyWorkspace* workspace = new MyWorkspace(this); - workspace->setSizePolicy(sizePolicy); - layout.main->addWidget(workspace, 0, 1, 1, 1); + ui.workspace = std::make_shared(this); + ui.workspace->setSizePolicy(sizePolicy); + layout.main->addWidget(ui.workspace.get(), 0, 1, 1, 1); // 设置列宽和行高 layout.main->setColumnMinimumWidth(0, 200); // 设置第0列的最小宽度为100像素 @@ -175,4 +297,11 @@ void MainApp::setMyLayout() layout.main->setColumnStretch(1, 2); // 设置第1列的伸缩因子为2,使其更宽 //gridLayout->setRowStretch(0, 1); // 设置第0行的伸缩因子为1 +} + + + +void MainApp::onTimer() +{ + ui.workspace->onTimer(); } \ No newline at end of file diff --git a/src/qt/MainApp.h b/src/qt/MainApp.h index b157694..35b15d7 100644 --- a/src/qt/MainApp.h +++ b/src/qt/MainApp.h @@ -2,9 +2,54 @@ #include #include #include +#include +#include +#include #include using namespace std; +#include +#include +#include +#include +#include + +class QtTextSink : public QObject, public spdlog::sinks::base_sink +{ + Q_OBJECT +public: + // 构造函数接收一个 QTextEdit*,但用 QPointer 来包装它 + explicit QtTextSink(QTextEdit* textEdit, QObject* parent = nullptr) + : QObject(parent), textEdit(textEdit) { + } + +signals: + // 定义一个信号,用于在主线程中追加文本 + void appendText(const QString& message); + +protected: + // 重写 sink_it_ 方法,处理每条日志 + void sink_it_(const spdlog::details::log_msg& msg) override { + if (textEdit.isNull()) { + // 如果 QTextEdit 已经被删除,则忽略这条日志 + return; + } + spdlog::memory_buf_t formatted; + formatter_->format(msg, formatted); + QString logMessage = QString::fromStdString(fmt::to_string(formatted)); + // 发射信号,通过Qt的事件循环在主线程中安全地更新UI + emit appendText(logMessage); + } + + void flush_() override {} + +private: + QPointer textEdit; // 关键:使用 QPointer +}; + + + + class LabelPair { public: @@ -34,6 +79,9 @@ public: QLabel value; }; + +class MyWorkspace; + class MainApp : public QWidget { Q_OBJECT @@ -42,12 +90,19 @@ public: void setMyLayout(); + +private slots: + void onTimer(); + +public: struct { std::shared_ptr weburl {}; + std::shared_ptr workspace; } ui; struct { std::shared_ptr main; } layout; + std::shared_ptr timer; }; \ No newline at end of file diff --git a/src/qt/QUI.cpp b/src/qt/QUI.cpp new file mode 100644 index 0000000..8584f30 --- /dev/null +++ b/src/qt/QUI.cpp @@ -0,0 +1,14 @@ +#include "QUI.h" + +static const std::string QSS_GROUP = +"QGroupBox { border: 1px solid gray; margin-top: 8px; border-radius: 5px;}" +"QGroupBox::title { subcontrol-origin: margin; subcontrol-position: top left; left:10px; margin-left: 0px; padding:0 1px; }"; + + +std::shared_ptr UI::GroupBox(QWidget* parent, int x, int y, int w, int h, std::string title) +{ + auto groupBox = std::make_shared(title.c_str(), parent); + groupBox->setGeometry(x, y, w, h); + groupBox->setStyleSheet(QSS_GROUP.c_str()); + return groupBox; +} \ No newline at end of file diff --git a/src/qt/QUI.h b/src/qt/QUI.h new file mode 100644 index 0000000..27024f1 --- /dev/null +++ b/src/qt/QUI.h @@ -0,0 +1,10 @@ +#pragma once + +#include + + +class UI +{ +public: + static std::shared_ptr GroupBox(QWidget* parent, int x, int y, int w, int h, std::string title); +}; \ No newline at end of file diff --git a/src/resource.rc b/src/resource.rc index 4e1b7c899e433d99fe68a58e0cd694dea75ce068..8f187458bb5ac2f65f9b75481fb6af3ed27e3da2 100644 GIT binary patch delta 12 TcmbOuIYV+o0_WxwP77uL9Ww*l delta 16 XcmbOsIY)9s0w;4NL&oNKPD^G0Eo=n4 diff --git a/src/yhicon.ico b/src/yhicon.ico deleted file mode 100644 index c7a07f1362d2098ea27ca18db262c75f8b1da05c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67646 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 O191$*G4Nl9f&UN07GA&r From 8aba56f47ddb97b7f525be0519d8a4a84d63ef89 Mon Sep 17 00:00:00 2001 From: lixiaoyuan Date: Thu, 25 Sep 2025 19:20:25 +0800 Subject: [PATCH 2/2] =?UTF-8?q?1.=E6=96=B0=E5=A2=9E=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E7=AB=AFUI=E7=95=8C=E9=9D=A2=EF=BC=8C=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=9F=BA=E7=A1=80=E4=BF=A1=E6=81=AF=E3=80=82?= =?UTF-8?q?2.=E4=BF=AE=E6=94=B9=E8=AE=BE=E5=A4=87=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E3=80=823.=E7=9B=91=E6=8E=A7=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=82=A8=E8=83=BD=E7=B3=BB=E7=BB=9F=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E5=82=A8=E8=83=BD=E6=A8=A1=E5=BC=8F=EF=BC=8C=E6=A8=A1=E5=BC=8F?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E6=96=B0=E5=A2=9E'=E6=89=8B=E5=8A=A8'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../EMU对外通信点表最终修改1版_v9.xlsx | Bin 0 -> 269186 bytes bin/Release/assets/config-online/app.json | 36 + .../assets/config-online/bak.monitoraddr.json | 109 +++ .../assets/config-online/pyregaddrs.py | 61 ++ .../assets/config-online/regaddrs.bak.json | 890 +++++++++++++++++ .../assets/config-online/regaddrs.json | 901 ++++++++++++++++++ .../assets/config-online/regaddrsShow.json | 157 +++ .../assets/config-online/registeraddrErr.json | 128 +++ .../assets/config-online/registeraddrs.bak.py | 77 ++ .../config/EMU对外通信点表最终修改1版_v9.xlsx | Bin 268995 -> 269058 bytes bin/Release/assets/config/app.json | 4 +- bin/Release/assets/config/regaddrsShow.json | 38 +- src/CMakeLists.txt | 1 + src/app/AppData.cpp | 58 +- src/app/Application.cpp | 5 +- src/app/Device.cpp | 33 +- src/app/Device.h | 8 +- src/app/Station.cpp | 91 +- src/app/Station.h | 48 +- src/common/JsonN.cpp | 13 +- src/common/JsonN.h | 15 +- src/common/Utils.cpp | 18 + src/common/Utils.h | 2 + src/database/Dao.cpp | 18 +- src/database/Dao.h | 6 +- src/database/MysqlClient.cpp | 1 + src/protocol/HttpEntity.cpp | 28 +- src/protocol/MqttEntity.cpp | 18 +- src/qt/MainApp.cpp | 189 +--- src/qt/MainApp.h | 74 +- src/qt/MyQUI.cpp | 35 + src/qt/MyQUI.h | 76 ++ src/qt/QUI.cpp | 14 - src/qt/QUI.h | 10 - src/qt/widgets/QWHome.cpp | 161 ++++ src/qt/widgets/QWHome.h | 28 + src/qt/widgets/QWMonitor.cpp | 0 src/qt/widgets/QWMonitor.h | 0 web/src/views/monitor.vue | 11 +- 39 files changed, 2954 insertions(+), 408 deletions(-) create mode 100644 bin/Release/assets/config-online/EMU对外通信点表最终修改1版_v9.xlsx create mode 100644 bin/Release/assets/config-online/app.json create mode 100644 bin/Release/assets/config-online/bak.monitoraddr.json create mode 100644 bin/Release/assets/config-online/pyregaddrs.py create mode 100644 bin/Release/assets/config-online/regaddrs.bak.json create mode 100644 bin/Release/assets/config-online/regaddrs.json create mode 100644 bin/Release/assets/config-online/regaddrsShow.json create mode 100644 bin/Release/assets/config-online/registeraddrErr.json create mode 100644 bin/Release/assets/config-online/registeraddrs.bak.py create mode 100644 src/qt/MyQUI.cpp create mode 100644 src/qt/MyQUI.h delete mode 100644 src/qt/QUI.cpp delete mode 100644 src/qt/QUI.h create mode 100644 src/qt/widgets/QWHome.cpp create mode 100644 src/qt/widgets/QWHome.h create mode 100644 src/qt/widgets/QWMonitor.cpp create mode 100644 src/qt/widgets/QWMonitor.h diff --git a/bin/Release/assets/config-online/EMU对外通信点表最终修改1版_v9.xlsx b/bin/Release/assets/config-online/EMU对外通信点表最终修改1版_v9.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..75a46dff93e63648b51463c3618918fd68deee43 GIT binary patch literal 269186 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⁡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 literal 0 HcmV?d00001 diff --git a/bin/Release/assets/config-online/app.json b/bin/Release/assets/config-online/app.json new file mode 100644 index 0000000..c8b072b --- /dev/null +++ b/bin/Release/assets/config-online/app.json @@ -0,0 +1,36 @@ +{ + "debug":0, + "windowEnabled": 1, + "launchdate": "2025-09-01", + "weburl": "http://127.0.0.1:19601/", + "exportpath": "D:/Programs/openresty-1.27.1.1-win64/zdownload", + "database": {"host": "localhost", "port": 3306, "user": "root", "passwd": "jsyh@2025", "dbname": "ess"}, + "http": {"token":0, "port": 19800, "encryption":0, "encryptKey":""}, + "mqtt": {"host":"mqtt://118.195.161.113:8883","username":"admin","password":"jsyh@2025", "interval": 120}, + "topic": { + "EMS_YX": {"deviceType":101, "polling":0, "enabled": 1}, + "EMS_YC": {"deviceType":101, "polling":0, "enabled": 1}, + "EMS_YT": {"deviceType":101, "polling":0, "enabled": 1}, + "PCS_YX": {"deviceType":102, "polling":1, "enabled": 1}, + "PCS_YC": {"deviceType":102, "polling":1, "enabled": 1}, + "PCU_YX": {"deviceType":103, "polling":0, "enabled": 1}, + "PCU_YC": {"deviceType":103, "polling":0, "enabled": 1}, + "BMS_YX": {"deviceType":104, "polling":0, "enabled": 1}, + "BMS_YC": {"deviceType":104, "polling":0, "enabled": 1}, + "BCU_YC": {"deviceType":105, "polling":1, "enabled": 1}, + "BCU_YX": {"deviceType":105, "polling":1, "enabled": 1}, + "MEM_YC": {"deviceType":3, "polling":0, "enabled": 1}, + "TH_YC": {"deviceType":10, "polling":1, "enabled": 1}, + "Fire40_YX": {"deviceType":7, "polling":1, "enabled": 1}, + "Cooling_YC": {"deviceType":14, "polling":1, "enabled": 1}, + "Cooling_YX": {"deviceType":14, "polling":1, "enabled": 1}, + "Gateway_YX": {"deviceType":15, "polling":1, "enabled": 1}, + "Gateway_YC": {"deviceType":15, "polling":1, "enabled": 1}, + "Charger_YC": {"deviceType":106, "polling":0, "enabled": 1} + }, + "view": {"latitude":0,"longitude":0,"altitude":0}, + "video": { + "1":{"host":"", "port":9000, "user":"", "passwd":""} + }, + "statistics": {"enabled": 1, "interval": 60} +} \ No newline at end of file diff --git a/bin/Release/assets/config-online/bak.monitoraddr.json b/bin/Release/assets/config-online/bak.monitoraddr.json new file mode 100644 index 0000000..7ec1c19 --- /dev/null +++ b/bin/Release/assets/config-online/bak.monitoraddr.json @@ -0,0 +1,109 @@ +{ + "EMS":{ + "deviceType":101, + "addr_YC":[ + ["A相电压", "0x107E", "0.0", " V", "1"], + ["A相电流", "0x1084", "0.0", " A"], + ["B相电压", "0x1080", "0.0", " V", "1"], + ["B相电流", "0x1086", "0.0", " A"], + ["C相电压", "0x1082", "0.0", " V", "1"], + ["C相电流", "0x1088", "0.0", " A"] + ], + "addr_YX": [ ] + }, + "PCS":{ + "deviceType":102, + "addr_YC":[ + ["A相电压", "0x0010", "0.0", " V", "1"], + ["A相电流", "0x0019", "0.0", " A"], + ["B相电压", "0x0011", "0.0", " V", "1"], + ["B相电流", "0x001A", "0.0", " A"], + ["C相电压", "0x0011", "0.0", " V", "1"], + ["C相电流", "0x001B", "0.0", " A"] + ], + "addr_YX": [ ] + }, + "PCU":{ + "deviceType":103, + "addr_YC":[ + ["A相电压", "0x0013", "0.0", " V", "1"], + ["A相电流", "0x001C", "0.0", " A"], + ["B相电压", "0x0014", "0.0", " V", "1"], + ["B相电流", "0x001D", "0.0", " A"], + ["C相电压", "0x0015", "0.0", " V", "1"], + ["C相电流", "0x001E", "0.0", " A"] + ], + "addr_YX": [ ] + }, + "BMS":{ + "deviceType":104, + "addr_YC":[ + ["SOC", "0x0001", "0", " %", "0.1"], + ["SOH", "0x0002", "0", " %", "0.1"], + ["电压", "0x0003", "0.0", " V", "0.1"], + ["电流", "0x0005", "0.0", " A", "0.1"], + ["单体最大电压", "0x0021", "0.0", " V", "0.1"], + ["单体最小电压", "0x0024", "0.0", " V", "0.1"], + ["单体最大温度", "0x0029", "0.0", " ℃", "0.1"], + ["单体最小温度", "0x002C", "0.0", " ℃", "0.1"] + ], + "addr_YX": [ ] + }, + "BCU":{ + "deviceType":105, + "addr_YC":[ + ["簇电压", "0x0003", "0.0", " V", "0.1"], + ["簇电流", "0x0005", "0", " A", "0.1"], + ["簇温度", "0x0007", "0.0", " ℃", "0.1"], + ["簇电阻", "0x0009", "0.0", " Ω"], + ["簇SOC", "0x000B", "0", " %", "0.1"], + ["簇SOH", "0x000C", "0", " %", "0.1"] + ], + "addr_YX": [ ] + }, + "MEM":{ + "deviceType":3, + "addr_YC":[ + ["A相电压", "0x000B", "0.0", " V"], + ["A相电流", "0x000D", "0.0", " A"], + ["B相电压", "0x000F", "0.0", " V"], + ["B相电流", "0x0011", "0.0", " A"], + ["C相电压", "0x0013", "0.0", " V"], + ["C相电流", "0x0015", "0.0", " A"] + ], + "addr_YX": [ ] + }, + "TH": { + "deviceType":10, + "addr_YC":[ + ["温度", "0x0003", "0.0", " ℃", "0.1"], + ["湿度", "0x0004", "0.0", " %", "0.1"] + ], + "addr_YX": [ ] + }, + "Cooling": { + "deviceType":14, + "addr_YC":[ + ["开关", "0x1003", "0", "", "1"], + ["采样模式", "0x1004", "0", "", "1"], + ["制冷状态", "0x1005", "0", "", "1"], + ["制热状态", "0x1006", "0", "", "1"], + ["高温告警", "0x1007", "0", "", "1"], + ["低温告警", "0x1008", "0", "", "1"], + ["高压告警", "0x1009", "0", "", "1"], + ["低压告警", "0x100A", "0", "", "1"] + ] + }, + "Charger": { + "deviceType":106, + "addr_YC":[ + ["需求电压", "31071", "0.0", " V"], + ["需求电流", "31073", "0.0", " A"], + ["需求功率", "31075", "0.0", " kW"], + ["功率限值", "31077", "0.0", " kW"], + ["输出电压", "31079", "0.0", " V"], + ["输出电流", "31081", "0.0", " A"], + ["输出功率", "31083", "0.0", " kW"] + ] + } +} \ No newline at end of file diff --git a/bin/Release/assets/config-online/pyregaddrs.py b/bin/Release/assets/config-online/pyregaddrs.py new file mode 100644 index 0000000..92fe6ca --- /dev/null +++ b/bin/Release/assets/config-online/pyregaddrs.py @@ -0,0 +1,61 @@ +from openpyxl import load_workbook + +def read_cell(sheet, row, col): + val = str(sheet.cell(row, col).value) + if val == "None": + val = "" + return val.strip() + +def read_sheet(wb, topic, sht_name): + sheet = wb[sht_name] + + text = "" + for i in range(2, sheet.max_row+1): + # print(str(sheet.cell(i, 1).value)) + addr = read_cell(sheet, i, 8) + name = read_cell(sheet,i, 2) + datatype = read_cell(sheet,i, 4) + unit = read_cell(sheet, i, 5) + is_alert = (read_cell(sheet, i, 7) == "告警") + remark = read_cell(sheet, i, 6) + + if (len(addr) <= 6 and len(addr) >=2 and addr != "寄存器地址"): + if (len(unit)>0): + remark += '(' + unit + ')' + if (len(text)>0): + text += ',\n' + text += '\t\t\t{"key": "%s", "datatype": "%s", "alert": %d, "name":"%s", "remark": "%s"}' % (addr, datatype, is_alert, name, remark.replace("\n", "")) + + + if (len(text)>0): + text = "\n" + text + "\n\t\t" + text = '\t"%s":{\n\t\t"addr":[%s]\n\t}' % (topic, text) + return text + + +wb = load_workbook('EMU对外通信点表最终修改1版_v9.xlsx', data_only=True) + +text = "" +text = read_sheet(wb, "EMS_YT", "EMS遥调") +text += ',\n' + read_sheet(wb, "EMS_YX", "EMS遥信") +text += ',\n' + read_sheet(wb, "EMS_YC", "EMS遥测") +text += ',\n' + read_sheet(wb, "PCU_YC", "PCU遥测") +text += ',\n' + read_sheet(wb, "PCU_YX", "PCU遥信") +text += ',\n' + read_sheet(wb, "PCS_YC", "PCS遥测") +text += ',\n' + read_sheet(wb, "PCS_YX", "PCS遥信") +text += ',\n' + read_sheet(wb, "BMS_YC", "BMS电池堆遥测") +text += ',\n' + read_sheet(wb, "BCU_YC", "BCU电池簇遥测") +text += ',\n' + read_sheet(wb, "BCU_YX", "BCU电池簇遥信") +# text += ',\n' + read_sheet(wb, "AirC_YC", "空调遥测") +# text += ',\n' + read_sheet(wb, "AirC_YX", "空调遥信") +text += ',\n' + read_sheet(wb, "MEM_YC", "多功能电表遥测") +text += ',\n' + read_sheet(wb, "TH_YC", "温湿度状态遥测") +text += ',\n' + read_sheet(wb, "Fire40_YX", "消防4.0遥信") +text += ',\n' + read_sheet(wb, "Cooling_YC", "冷机遥测") +text += ',\n' + read_sheet(wb, "Cooling_YX", "冷机遥信") +text += ',\n' + read_sheet(wb, "Gateway_YC", "网关遥测") +text += ',\n' + read_sheet(wb, "Gateway_YX", "网关遥信") +text += ',\n' + read_sheet(wb, "Charger_YC", "充电桩遥测") + +with open('regaddrs.json', 'w', encoding='utf-8') as f: + f.write("{\n" + text + "\n}") \ No newline at end of file diff --git a/bin/Release/assets/config-online/regaddrs.bak.json b/bin/Release/assets/config-online/regaddrs.bak.json new file mode 100644 index 0000000..2f7ce5a --- /dev/null +++ b/bin/Release/assets/config-online/regaddrs.bak.json @@ -0,0 +1,890 @@ +{ + "EMS_YT":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "EMS工作模式0:无效1:本地控制模式, EMS不接受平台调控2:平台控制模式, EMS接收平台调控指令(-)"}, + {"key": "0x0002", "datatype": "int16", "remark": "有功功率并网恒功率模式下交流侧功率值:<0: 充电功率0: 静置>0: 放电功率(kW)"}, + {"key": "0x0003", "datatype": "uint16", "remark": "PCS开关机0: 关机1: 开机(-)"}, + {"key": "0x0004", "datatype": "uint16", "remark": "主控对象储能遥控对象:0:无效1:华云2:轻舟"}, + {"key": "0x0005", "datatype": "int16", "remark": "A相有功功率(1kW)"}, + {"key": "0x0006", "datatype": "int16", "remark": "B相有功功率(1kW)"}, + {"key": "0x0007", "datatype": "int16", "remark": "C相有功功率(1kW)"}, + {"key": "0x0008", "datatype": "int16", "remark": "三相总有功功率(1kW)"}, + {"key": "0x0009", "datatype": "int16", "remark": "A相无功功率(1kVar)"}, + {"key": "0x000A", "datatype": "int16", "remark": "B相无功功率(1kVar)"}, + {"key": "0x000B", "datatype": "int16", "remark": "C相无功功率(1kVar)"}, + {"key": "0x000C", "datatype": "int16", "remark": "三相总无功功率(1kVar)"}, + {"key": "0x000D", "datatype": "int16", "remark": "A相电流(0.01A)"}, + {"key": "0x000E", "datatype": "int16", "remark": "B相电流(0.01A)"}, + {"key": "0x000F", "datatype": "int16", "remark": "C相电流(0.01A)"}, + {"key": "0x0010", "datatype": "uint16", "remark": "A相电压(1V)"}, + {"key": "0x0011", "datatype": "uint16", "remark": "B相电压(1V)"}, + {"key": "0x0012", "datatype": "uint16", "remark": "C相电压(1V)"}, + {"key": "0x0013", "datatype": "int16", "remark": "A相交流功率因数(0.01)"}, + {"key": "0x0014", "datatype": "int16", "remark": "B相交流功率因数(0.01)"}, + {"key": "0x0015", "datatype": "int16", "remark": "C相交流功率因数(0.01)"}, + {"key": "0x0016", "datatype": "int16", "remark": "A相视在功率(1kVA)"}, + {"key": "0x0017", "datatype": "int16", "remark": "B相视在功率(1kVA)"}, + {"key": "0x0018", "datatype": "int16", "remark": "C相视在功率(1kVA)"}, + {"key": "0x0019", "datatype": "int16", "remark": "正向总有功总需量(1kW)"}, + {"key": "0x001A", "datatype": "int16", "remark": "数据有效性0无效 1有效"}, + {"key": "0x001B", "datatype": "uint16", "remark": "EMS工作模式0:无效1:本地控制模式, EMS不接受平台调控2:平台控制模式, EMS接收平台调控指令(-)"}, + {"key": "0x001C", "datatype": "uint16", "remark": "有功功率并网恒功率模式下交流侧功率值:功率绝对值 没有正负(kW)"}, + {"key": "0x001D", "datatype": "uint16", "remark": "充放电类型0: 关机1: 充电2:放电3:待机(-)"}, + {"key": "0x001E", "datatype": "uint16", "remark": "最大SOC"}, + {"key": "0x001F", "datatype": "uint16", "remark": "最小SOC"}, + {"key": "0x0020", "datatype": "uint16", "remark": "自动并离网0:手动1:自动"}, + {"key": "0x0021", "datatype": "uint16", "remark": "并网离网0:并网1:离网"} + ] + }, + "EMS_YX":{ + "addr":[ + {"key": "0x2001", "datatype": "uint16", "remark": "BMS(电池堆)通信状态0:正常1:故障"}, + {"key": "0x2002", "datatype": "uint64", "remark": "BCU(电池簇)通信状态0:正常1:故障"}, + {"key": "0x2006", "datatype": "uint16", "remark": "PCU(主控)通信状态0:正常1:故障"}, + {"key": "0x2007", "datatype": "uint64", "remark": "PCS(模块)通信状态0:正常1:故障"}, + {"key": "0x200B", "datatype": "uint16", "remark": "电表总接点通信状态0:正常1:故障"}, + {"key": "0x200C", "datatype": "uint32", "remark": "电表通信状态0:正常1:故障"}, + {"key": "0x200E", "datatype": "uint16", "remark": "消防通信状态0:正常1:故障"}, + {"key": "0x200F", "datatype": "uint16", "remark": "UPS通信状态0:正常1:故障"}, + {"key": "0x2010", "datatype": "uint16", "remark": "温湿度总接点通信状态0:正常1:故障"}, + {"key": "0x2011", "datatype": "uint32", "remark": "温湿度通信状态0:正常1:故障"}, + {"key": "0x2013", "datatype": "uint16", "remark": "空调总接点通信状态0:正常1:故障"}, + {"key": "0x2014", "datatype": "uint32", "remark": "空调通信状态0:正常1:故障"}, + {"key": "0x2016", "datatype": "uint16", "remark": "控制干接点(配电系统)状态0:开路1:闭合"}, + {"key": "0x2017", "datatype": "uint16", "remark": "状态干接点(配电系统)状态0:开路1:闭合"}, + {"key": "0x2018", "datatype": "uint16", "remark": "BCU总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x2019", "datatype": "uint16", "remark": "PCU总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x201A", "datatype": "uint16", "remark": "电表总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x201B", "datatype": "uint16", "remark": "消防总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x201C", "datatype": "uint16", "remark": "UPS总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x201D", "datatype": "uint16", "remark": "温湿度总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x201E", "datatype": "uint16", "remark": "空调总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x201F", "datatype": "uint16", "remark": "EMU通信状态0:正常 1:告警 2:故障"}, + {"key": "0x2020", "datatype": "uint16", "remark": "冷机总通信状态0:正常 1:告警 2:故障"}, + {"key": "0x2021", "datatype": "uint16", "remark": "冷机总接点通信状态0:正常1:故障"}, + {"key": "0x2022", "datatype": "uint16", "remark": "冷机通信状态0:正常1:故障"}, + {"key": "0x207A", "datatype": "uint16", "remark": "判断总表的三相总有功 < -5.0fkW 充电 >5.0fkW放电 否则停机0:充电 1:放电 2:停机"} + ] + }, + "EMS_YC":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "remark": "BMS(电池堆)个数1"}, + {"key": "0x1002", "datatype": "uint16", "remark": "BCU通道个数1~2"}, + {"key": "0x1003", "datatype": "uint16", "remark": "BCU(电池簇)个数1~40"}, + {"key": "0x1004", "datatype": "uint16", "remark": "PCU(主控)个数1~4"}, + {"key": "0x1005", "datatype": "uint16", "remark": "PCU通道个数1~4"}, + {"key": "0x1006", "datatype": "uint16", "remark": "PCS(模块)个数1~40"}, + {"key": "0x1007", "datatype": "uint16", "remark": "电表通道个数1"}, + {"key": "0x1008", "datatype": "uint16", "remark": "电表个数1~10"}, + {"key": "0x1009", "datatype": "uint16", "remark": "消防通道个数1~10"}, + {"key": "0x100A", "datatype": "uint16", "remark": "消防个数1~10"}, + {"key": "0x100B", "datatype": "uint16", "remark": "UPS通道个数1~10"}, + {"key": "0x100C", "datatype": "uint16", "remark": "UPS个数1~10"}, + {"key": "0x100D", "datatype": "uint16", "remark": "温湿度通道个数1"}, + {"key": "0x100E", "datatype": "uint16", "remark": "温湿度个数1~10"}, + {"key": "0x100F", "datatype": "uint16", "remark": "空调通道个数1"}, + {"key": "0x1010", "datatype": "uint16", "remark": "空调个数1~10"}, + {"key": "0x1011", "datatype": "uint16", "remark": "控制干接点(配电系统)个数16"}, + {"key": "0x1012", "datatype": "uint16", "remark": "状态干接点(配电系统)个数16"}, + {"key": "0x1072", "datatype": "uint32", "remark": "系统最大可充电功率(1KW)"}, + {"key": "0x1074", "datatype": "uint32", "remark": "系统最大可放电功率(1KW)"}, + {"key": "0x1076", "datatype": "uint32", "remark": "储能母线电压(0.1V)"}, + {"key": "0x1078", "datatype": "int32", "remark": "储能母线电流(0.1A)"}, + {"key": "0x107A", "datatype": "uint16", "remark": "储能系统SOC(0.1)"}, + {"key": "0x107B", "datatype": "uint16", "remark": "储能系统SOH(0.1)"}, + {"key": "0x107C", "datatype": "uint16", "remark": "电流变比"}, + {"key": "0x107D", "datatype": "uint16", "remark": "电压变比"}, + {"key": "0x107E", "datatype": "uint32", "remark": "A相电压(1V)"}, + {"key": "0x1080", "datatype": "uint32", "remark": "B相电压(1V)"}, + {"key": "0x1082", "datatype": "uint32", "remark": "C相电压(1V)"}, + {"key": "0x1084", "datatype": "int32", "remark": "A相电流(1A)"}, + {"key": "0x1086", "datatype": "int32", "remark": "B相电流(1A)"}, + {"key": "0x1088", "datatype": "int32", "remark": "C相电流(1A)"}, + {"key": "0x108A", "datatype": "uint32", "remark": "AB相电压(1V)"}, + {"key": "0x108C", "datatype": "uint32", "remark": "BC相电压(1V)"}, + {"key": "0x108E", "datatype": "uint32", "remark": "CA相电压(1V)"}, + {"key": "0x1090", "datatype": "int32", "remark": "A相有功功率(1kW)"}, + {"key": "0x1092", "datatype": "int32", "remark": "B相有功功率(1kW)"}, + {"key": "0x1094", "datatype": "int32", "remark": "C相有功功率(1kW)"}, + {"key": "0x1096", "datatype": "int32", "remark": "三相总有功功率(1kW)"}, + {"key": "0x1098", "datatype": "int32", "remark": "当前控制功率(0.1kW)"}, + {"key": "0x109A", "datatype": "uint32", "remark": "负荷率(0.01)"}, + {"key": "0x109C", "datatype": "uint32", "remark": "三相不平衡度(0.01)"}, + {"key": "0x109E", "datatype": "uint32", "remark": "功率因素比率(0.01)"}, + {"key": "0x10A0", "datatype": "int32", "remark": "进线开关柜功率(1kW)"}, + {"key": "0x10A2", "datatype": "int32", "remark": "用户关口表功率(1kW)"}, + {"key": "0x1104", "datatype": "int32", "remark": "正向总有功总需量(1kW)"}, + {"key": "0x1106", "datatype": "uint32", "remark": "尖段电价(1RMB)"}, + {"key": "0x1108", "datatype": "uint32", "remark": "峰段电价(1RMB)"}, + {"key": "0x110A", "datatype": "uint32", "remark": "平段电价(1RMB)"}, + {"key": "0x110C", "datatype": "uint32", "remark": "谷段电价(1RMB)"}, + {"key": "0x110E", "datatype": "uint32", "remark": "日充电电量(1kWh)"}, + {"key": "0x1110", "datatype": "uint32", "remark": "日放电电量(1kWh)"}, + {"key": "0x1112", "datatype": "uint32", "remark": "日充电费用(1RMB)"}, + {"key": "0x1114", "datatype": "uint32", "remark": "日放电费用(1RMB)"}, + {"key": "0x1116", "datatype": "int32", "remark": "日收益(1RMB)"}, + {"key": "0x1118", "datatype": "uint32", "remark": "日正向尖有功电能(1kWh)"}, + {"key": "0x111A", "datatype": "uint32", "remark": "日正向峰有功电能(1kWh)"}, + {"key": "0x111C", "datatype": "uint32", "remark": "日正向平有功电能(1kWh)"}, + {"key": "0x111E", "datatype": "uint32", "remark": "日正向谷有功电能(1kWh)"}, + {"key": "0x1120", "datatype": "uint32", "remark": "日正向总有功电能(1kWh)"}, + {"key": "0x1122", "datatype": "uint32", "remark": "日反向尖有功电能(1kWh)"}, + {"key": "0x1124", "datatype": "uint32", "remark": "日反向峰有功电能(1kWh)"}, + {"key": "0x1126", "datatype": "uint32", "remark": "日反向平有功电能(1kWh)"}, + {"key": "0x1128", "datatype": "uint32", "remark": "日反向谷有功电能(1kWh)"}, + {"key": "0x112A", "datatype": "uint32", "remark": "日反向总有功电能(1kWh)"}, + {"key": "0x112C", "datatype": "uint32", "remark": "总充电电量(1kWh)"}, + {"key": "0x112E", "datatype": "uint32", "remark": "总放电电量(1kWh)"}, + {"key": "0x1130", "datatype": "uint32", "remark": "总充电费用(1RMB)"}, + {"key": "0x1132", "datatype": "uint32", "remark": "总放电费用(1RMB)"}, + {"key": "0x1134", "datatype": "int32", "remark": "总收益(1RMB)"}, + {"key": "0x1136", "datatype": "uint32", "remark": "总正向尖有功电能(1kWh)"}, + {"key": "0x1138", "datatype": "uint32", "remark": "总正向峰有功电能(1kWh)"}, + {"key": "0x113A", "datatype": "uint32", "remark": "总正向平有功电能(1kWh)"}, + {"key": "0x113C", "datatype": "uint32", "remark": "总正向谷有功电能(1kWh)"}, + {"key": "0x113E", "datatype": "uint32", "remark": "总正向总有功电能(1kWh)"}, + {"key": "0x1140", "datatype": "uint32", "remark": "总反向尖有功电能(1kWh)"}, + {"key": "0x1142", "datatype": "uint32", "remark": "总反向峰有功电能(1kWh)"}, + {"key": "0x1144", "datatype": "uint32", "remark": "总反向平有功电能(1kWh)"}, + {"key": "0x1146", "datatype": "uint32", "remark": "总反向谷有功电能(1kWh)"}, + {"key": "0x1148", "datatype": "uint32", "remark": "总反向总有功电能(1kWh)"}, + {"key": "0x11AE", "datatype": "int16", "remark": "交流A相电压(1V)"}, + {"key": "0x11AF", "datatype": "int16", "remark": "交流B相电压(1V)"}, + {"key": "0x11B0", "datatype": "int16", "remark": "交流C相电压(1V)"}, + {"key": "0x11B1", "datatype": "int16", "remark": "交流A相频率(1Hz)"}, + {"key": "0x11B2", "datatype": "int16", "remark": "交流B相频率(1Hz)"}, + {"key": "0x11B3", "datatype": "int16", "remark": "交流C相频率(1Hz)"}, + {"key": "0x11B4", "datatype": "int32", "remark": "总直流功率(1kW)"}, + {"key": "0x11B6", "datatype": "uint32", "remark": "总直流电压(0.1V)"}, + {"key": "0x11B8", "datatype": "int32", "remark": "总直流电流(0.1A)"}, + {"key": "0x121B", "datatype": "int16", "remark": "储能系统温度(0.1℃)"}, + {"key": "0x121C", "datatype": "uint16", "remark": "储能充放电时段hh(时)"}, + {"key": "0x121D", "datatype": "uint16", "remark": "储能充放电时段mm(分)"}, + {"key": "0x121E", "datatype": "uint16", "remark": "储能充放电时段ss(秒)"} + ] + }, + "PCU_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "所属通道号1~4"}, + {"key": "0x0002", "datatype": "uint32", "remark": "充电功率最大许可(1KW)"}, + {"key": "0x0004", "datatype": "uint32", "remark": "放电功率最大许可(1KW)"}, + {"key": "0x0006", "datatype": "uint32", "remark": "交流日总充电量(1KWh)"}, + {"key": "0x0008", "datatype": "uint32", "remark": "交流日总放电量(1KWh)"}, + {"key": "0x000A", "datatype": "uint32", "remark": "交流总充电量(1KWh)"}, + {"key": "0x000C", "datatype": "uint32", "remark": "交流总放电量(1KWh)"}, + {"key": "0x000E", "datatype": "int16", "remark": "有功功率期望值(1KW)"}, + {"key": "0x000F", "datatype": "int16", "remark": "无功功率期望值(1kVar)"}, + {"key": "0x0010", "datatype": "int16", "remark": "PCS侧线电压VAB(1v)"}, + {"key": "0x0011", "datatype": "int16", "remark": "PCS侧线电压VBC(1v)"}, + {"key": "0x0012", "datatype": "int16", "remark": "PCS侧线电压VCA(1v)"}, + {"key": "0x0013", "datatype": "int16", "remark": "PCS侧线A相电压(1v)"}, + {"key": "0x0014", "datatype": "int16", "remark": "PCS侧线B相电压(1v)"}, + {"key": "0x0015", "datatype": "int16", "remark": "PCS侧线C相电压(1v)"}, + {"key": "0x0016", "datatype": "int16", "remark": "PCS侧A相频率(1Hz)"}, + {"key": "0x0017", "datatype": "int16", "remark": "PCS侧B相频率(1Hz)"}, + {"key": "0x0018", "datatype": "int16", "remark": "PCS侧C相频率(1Hz)"}, + {"key": "0x0019", "datatype": "int16", "remark": "PCS侧功率因数A(1)"}, + {"key": "0x001A", "datatype": "int16", "remark": "PCS侧功率因数B(1)"}, + {"key": "0x001B", "datatype": "int16", "remark": "PCS侧功率因数C(1)"}, + {"key": "0x001C", "datatype": "int16", "remark": "PCS侧相电流A(1A)"}, + {"key": "0x001D", "datatype": "int16", "remark": "PCS侧相电流B(1A)"}, + {"key": "0x001E", "datatype": "int16", "remark": "PCS侧相电流C(1A)"}, + {"key": "0x001F", "datatype": "int16", "remark": "PCS侧有功功率A(1kW)"}, + {"key": "0x0020", "datatype": "int16", "remark": "PCS侧有功功率B(1kW)"}, + {"key": "0x0021", "datatype": "int16", "remark": "PCS侧有功功率C(1kW)"}, + {"key": "0x0022", "datatype": "int16", "remark": "PCS侧无功功率A(1kVar)"}, + {"key": "0x0023", "datatype": "int16", "remark": "PCS侧无功功率B(1kVar)"}, + {"key": "0x0024", "datatype": "int16", "remark": "PCS侧无功功率C(1kVar)"}, + {"key": "0x0025", "datatype": "int16", "remark": "PCS侧视在功率A(1kVar)"}, + {"key": "0x0026", "datatype": "int16", "remark": "PCS侧视在功率B(1kVar)"}, + {"key": "0x0027", "datatype": "int16", "remark": "PCS侧视在功率C(1kVar)"}, + {"key": "0x0028", "datatype": "int16", "remark": "PCS侧三相总有功功率(1kW)"}, + {"key": "0x0029", "datatype": "int16", "remark": "PCS侧三相总无功功率(1kVar)"}, + {"key": "0x002A", "datatype": "int16", "remark": "PCS侧三相总视在功率(1kVA)"}, + {"key": "0x002B", "datatype": "int16", "remark": "PCS侧三相总功率因数(1)"}, + {"key": "0x002C", "datatype": "int16", "remark": "PCU模块温度(1℃)"}, + {"key": "0x002D", "datatype": "int16", "remark": "外部温度NTC1(1℃)"}, + {"key": "0x002E", "datatype": "int16", "remark": "外部温度NTC2(1℃)"}, + {"key": "0x002F", "datatype": "int16", "remark": "外部温度NTC3(1℃)"}, + {"key": "0x0030", "datatype": "int16", "remark": "台区负载侧A相电流(1A)"}, + {"key": "0x0031", "datatype": "int16", "remark": "台区负载侧B相电流(1A)"}, + {"key": "0x0032", "datatype": "int16", "remark": "台区负载侧C相电流(1A)"}, + {"key": "0x0033", "datatype": "int16", "remark": "台区负载侧A相有功功率(1kW)"}, + {"key": "0x0034", "datatype": "int16", "remark": "台区负载侧B相有功功率(1kW)"}, + {"key": "0x0035", "datatype": "int16", "remark": "台区负载侧C相有功功率(1kW)"}, + {"key": "0x0036", "datatype": "int16", "remark": "台区负载侧总有功功率(1kW)"}, + {"key": "0x0037", "datatype": "int16", "remark": "台区负载侧A相无功功率(1kVar)"}, + {"key": "0x0038", "datatype": "int16", "remark": "台区负载侧B相无功功率(1kVar)"}, + {"key": "0x0039", "datatype": "int16", "remark": "台区负载侧C相无功功率(1kVar)"}, + {"key": "0x003A", "datatype": "int16", "remark": "台区负载侧总无功功率(1kVar)"}, + {"key": "0x003B", "datatype": "int16", "remark": "台区负载侧A相视在功率(1kVA)"}, + {"key": "0x003C", "datatype": "int16", "remark": "台区负载侧B相视在功率(1kVA)"}, + {"key": "0x003D", "datatype": "int16", "remark": "台区负载侧C相视在功率(1kVA)"}, + {"key": "0x003E", "datatype": "int16", "remark": "台区负载侧总视在功率(1kVA)"}, + {"key": "0x003F", "datatype": "int16", "remark": "台区负载侧A相功率因数(1)"}, + {"key": "0x0040", "datatype": "int16", "remark": "台区负载侧B相功率因数(1)"}, + {"key": "0x0041", "datatype": "int16", "remark": "台区负载侧C相功率因数(1)"}, + {"key": "0x0042", "datatype": "int16", "remark": "台区负载侧总功率因数(1)"}, + {"key": "0x0043", "datatype": "int16", "remark": "负载侧线电压AB(1V)"}, + {"key": "0x0044", "datatype": "int16", "remark": "负载侧线电压BC(1V)"}, + {"key": "0x0045", "datatype": "int16", "remark": "负载侧线电压CA(1V)"}, + {"key": "0x0046", "datatype": "int16", "remark": "负载侧相电压AN(1V)"}, + {"key": "0x0047", "datatype": "int16", "remark": "负载侧相电压BN(1V)"}, + {"key": "0x0048", "datatype": "int16", "remark": "负载侧相电压CN(1V)"}, + {"key": "0x0049", "datatype": "int16", "remark": "负载侧A功率因素(1)"}, + {"key": "0x004A", "datatype": "int16", "remark": "负载侧B功率因素(1)"}, + {"key": "0x004B", "datatype": "int16", "remark": "负载侧C功率因素(1)"}, + {"key": "0x004C", "datatype": "int16", "remark": "负载侧A视在功率(1kVA)"}, + {"key": "0x004D", "datatype": "int16", "remark": "负载侧B视在功率(1kVA)"} + ] + }, + "PCU_YX":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "remark": "所属通道号1~4"}, + {"key": "0x1002", "datatype": "uint16", "remark": "故障状态1故障,0正常"}, + {"key": "0x1003", "datatype": "uint16", "remark": "告警状态1告警,0正常"}, + {"key": "0x1004", "datatype": "uint16", "remark": "设备在线1在线,0无效"}, + {"key": "0x1005", "datatype": "uint16", "remark": "本地远程1本地,0远程"}, + {"key": "0x1006", "datatype": "uint16", "remark": "启停状态1开机,0关机"}, + {"key": "0x1007", "datatype": "uint16", "remark": "电网状态1离网,0并网"}, + {"key": "0x1008", "datatype": "uint16", "remark": "模块状态1开机,0待机"}, + {"key": "0x1009", "datatype": "uint16", "remark": "EPO急停1故障,0正常"}, + {"key": "0x100A", "datatype": "uint16", "remark": "防雷器异常1告警,0正常"}, + {"key": "0x100B", "datatype": "uint16", "remark": "负载电压反序1故障,0正常"}, + {"key": "0x100C", "datatype": "uint16", "remark": "市电电压反序1故障,0正常"}, + {"key": "0x100D", "datatype": "uint16", "remark": "输出相反序1故障,0正常"}, + {"key": "0x100E", "datatype": "uint16", "remark": "过载告警1告警,0正常"}, + {"key": "0x100F", "datatype": "uint16", "remark": "过载超时1故障,0正常"}, + {"key": "0x1010", "datatype": "uint16", "remark": "交流过流保护1故障,0正常"}, + {"key": "0x1011", "datatype": "uint16", "remark": "逆变电压异常1故障,0正常"}, + {"key": "0x1012", "datatype": "uint16", "remark": "内部串口异常1故障,0正常"}, + {"key": "0x1013", "datatype": "uint16", "remark": "485通信故障1故障,0正常"}, + {"key": "0x1014", "datatype": "uint16", "remark": "CAN通信故障1故障,0正常"}, + {"key": "0x1015", "datatype": "uint16", "remark": "E2PROM故障1故障,0正常"}, + {"key": "0x1016", "datatype": "uint16", "remark": "电网过压1故障,0正常"}, + {"key": "0x1017", "datatype": "uint16", "remark": "电网欠压1故障,0正常"}, + {"key": "0x1018", "datatype": "uint16", "remark": "电网过频1故障,0正常"}, + {"key": "0x1019", "datatype": "uint16", "remark": "电网欠频1故障,0正常"}, + {"key": "0x101A", "datatype": "uint16", "remark": "电网快检综合异常1故障,0正常"}, + {"key": "0x101B", "datatype": "uint16", "remark": "电网幅值快检异常1故障,0正常"}, + {"key": "0x101C", "datatype": "uint16", "remark": "电网拖尾异常1故障,0正常"}, + {"key": "0x101D", "datatype": "uint16", "remark": "消防输入信号NO1闭合,0断开"}, + {"key": "0x101E", "datatype": "uint16", "remark": "急停按钮信号NC1急停,0正常"}, + {"key": "0x101F", "datatype": "uint16", "remark": "避雷器NC1故障,0正常"}, + {"key": "0x1020", "datatype": "uint16", "remark": "避雷器断路器NC1故障,0正常"}, + {"key": "0x1021", "datatype": "uint16", "remark": "PCS总断路器NC1闭合,0断开"}, + {"key": "0x1022", "datatype": "uint16", "remark": "电操状态NO1闭合,0断开"}, + {"key": "0x1023", "datatype": "uint16", "remark": "远程关机NO1开机,0无效"}, + {"key": "0x1024", "datatype": "uint16", "remark": "远程开机NO1开机,0无效"}, + {"key": "0x1025", "datatype": "uint16", "remark": "BA故障信号NO1故障,0正常"}, + {"key": "0x1026", "datatype": "uint16", "remark": "PCS_01状态1在线,0掉线"}, + {"key": "0x1027", "datatype": "uint16", "remark": "PCS_02状态1在线,0掉线"}, + {"key": "0x1028", "datatype": "uint16", "remark": "PCS_03状态1在线,0掉线"}, + {"key": "0x1029", "datatype": "uint16", "remark": "PCS_04状态1在线,0掉线"}, + {"key": "0x102A", "datatype": "uint16", "remark": "PCS_05状态1在线,0掉线"}, + {"key": "0x102B", "datatype": "uint16", "remark": "PCS_06状态1在线,0掉线"}, + {"key": "0x102C", "datatype": "uint16", "remark": "PCS_07状态1在线,0掉线"}, + {"key": "0x102D", "datatype": "uint16", "remark": "PCS_09状态1在线,0掉线"}, + {"key": "0x102E", "datatype": "uint16", "remark": "PCS_10状态1在线,0掉线"}, + {"key": "0x102F", "datatype": "uint16", "remark": "PCS_01下发设置1故障,0正常"}, + {"key": "0x1030", "datatype": "uint16", "remark": "PCS_02下发设置1故障,0正常"}, + {"key": "0x1031", "datatype": "uint16", "remark": "PCS_03下发设置1故障,0正常"}, + {"key": "0x1032", "datatype": "uint16", "remark": "PCS_04下发设置1故障,0正常"}, + {"key": "0x1033", "datatype": "uint16", "remark": "PCS_05下发设置1故障,0正常"}, + {"key": "0x1034", "datatype": "uint16", "remark": "PCS_06下发设置1故障,0正常"}, + {"key": "0x1035", "datatype": "uint16", "remark": "PCS_07下发设置1故障,0正常"}, + {"key": "0x1036", "datatype": "uint16", "remark": "PCS_08下发设置1故障,0正常"}, + {"key": "0x1037", "datatype": "uint16", "remark": "PCS_09下发设置1故障,0正常"}, + {"key": "0x1038", "datatype": "uint16", "remark": "PCS_10下发设置1:故障,0正常"}, + {"key": "0x1039", "datatype": "uint16", "remark": "内部DSP通信故障1:故障,0正常"}, + {"key": "0x103A", "datatype": "uint16", "remark": "BMS CAN通信故障1:故障,0正常"} + ] + }, + "PCS_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "所属主控号1~4"}, + {"key": "0x0002", "datatype": "uint16", "remark": "所属PCS号1~40"}, + {"key": "0x0003", "datatype": "uint32", "remark": "总充电量(1kWh)"}, + {"key": "0x0005", "datatype": "uint32", "remark": "总放电量(1kWh)"}, + {"key": "0x0007", "datatype": "int16", "remark": "散热器温度(1℃)"}, + {"key": "0x0008", "datatype": "int16", "remark": "内部温度(1℃)"}, + {"key": "0x0009", "datatype": "int16", "remark": "最大允许充电功率(0.1kW)"}, + {"key": "0x000A", "datatype": "int16", "remark": "最大允许放电功率(0.1kW)"}, + {"key": "0x000B", "datatype": "int16", "remark": "有功功率期望(1kWh)"}, + {"key": "0x000C", "datatype": "int16", "remark": "无功功率期望(1kVar)"}, + {"key": "0x000D", "datatype": "int16", "remark": "AB线电压(1V)"}, + {"key": "0x000E", "datatype": "int16", "remark": "BC线电压(1V)"}, + {"key": "0x000F", "datatype": "int16", "remark": "CA线电压(1V)"}, + {"key": "0x0010", "datatype": "int16", "remark": "A相电压(1V)"}, + {"key": "0x0011", "datatype": "int16", "remark": "B相电压(1V)"}, + {"key": "0x0012", "datatype": "int16", "remark": "C相电压(1V)"}, + {"key": "0x0013", "datatype": "int16", "remark": "A相频率(1Hz)"}, + {"key": "0x0014", "datatype": "int16", "remark": "B相频率(1Hz)"}, + {"key": "0x0015", "datatype": "int16", "remark": "C相频率(1Hz)"}, + {"key": "0x0016", "datatype": "int16", "remark": "A相功率因数(1)"}, + {"key": "0x0017", "datatype": "int16", "remark": "B相功率因数(1)"}, + {"key": "0x0018", "datatype": "int16", "remark": "C相功率因数(1)"}, + {"key": "0x0019", "datatype": "int16", "remark": "A相电流(1A)"}, + {"key": "0x001A", "datatype": "int16", "remark": "B相电流(1A)"}, + {"key": "0x001B", "datatype": "int16", "remark": "C相电流(1A)"}, + {"key": "0x001C", "datatype": "int16", "remark": "A相有功功率(1kW)"}, + {"key": "0x001D", "datatype": "int16", "remark": "B相有功功率(1kW)"}, + {"key": "0x001E", "datatype": "int16", "remark": "C相有功功率(1kW)"}, + {"key": "0x001F", "datatype": "int16", "remark": "A相无功功率(1kVar)"}, + {"key": "0x0020", "datatype": "int16", "remark": "B相无功功率(1kVar)"}, + {"key": "0x0021", "datatype": "int16", "remark": "C相无功功率(1kVar)"}, + {"key": "0x0022", "datatype": "int16", "remark": "A相视在功率(1kVA)"}, + {"key": "0x0023", "datatype": "int16", "remark": "B相视在功率(1kVA)"}, + {"key": "0x0024", "datatype": "int16", "remark": "C相视在功率(1kVA)"}, + {"key": "0x0025", "datatype": "int16", "remark": "三相总有功功率(1kW)"}, + {"key": "0x0026", "datatype": "int16", "remark": "三相总无功功率(1kVar)"}, + {"key": "0x0027", "datatype": "int16", "remark": "三相总视在功率(1kVA)"}, + {"key": "0x0028", "datatype": "int16", "remark": "三相总功率因数(1)"}, + {"key": "0x0029", "datatype": "int16", "remark": "直流功率(1kW)"}, + {"key": "0x002A", "datatype": "int16", "remark": "直流电压(1V)"}, + {"key": "0x002B", "datatype": "int16", "remark": "直流电流(1A)"}, + {"key": "0x002C", "datatype": "int16", "remark": "充电功率(1kW)"}, + {"key": "0x002D", "datatype": "int16", "remark": "放电功率(1kW)"}, + {"key": "0x002E", "datatype": "int16", "remark": "PF值(1)"}, + {"key": "0x002F", "datatype": "int16", "remark": "UV线/U相电网计量线电压(1V)"}, + {"key": "0x0030", "datatype": "int16", "remark": "VW线/V相电网计量线电压(1V)"}, + {"key": "0x0031", "datatype": "int16", "remark": "WU线/W相电网计量线电压(1V)"}, + {"key": "0x0032", "datatype": "int16", "remark": "U相电网计量电流(1A)"}, + {"key": "0x0033", "datatype": "int16", "remark": "V相电网计量电流(1A)"}, + {"key": "0x0034", "datatype": "int16", "remark": "W相电网计量电流(1A)"}, + {"key": "0x0035", "datatype": "int16", "remark": "正母线电压(1V)"}, + {"key": "0x0036", "datatype": "int16", "remark": "可用功率(1kVA)"}, + {"key": "0x0037", "datatype": "int16", "remark": "负母线电压(1V)"}, + {"key": "0x0038", "datatype": "int16", "remark": "A相IGBT温度(1℃)"}, + {"key": "0x0039", "datatype": "int16", "remark": "B相IGBT温度(1℃)"}, + {"key": "0x003A", "datatype": "int16", "remark": "C相IGBT温度(1℃)"}, + {"key": "0x003B", "datatype": "int16", "remark": "逆变侧AB线电压(1V)"}, + {"key": "0x003C", "datatype": "int16", "remark": "逆变侧BC线电压(1V)"}, + {"key": "0x003D", "datatype": "int16", "remark": "逆变侧CA线电压(1V)"}, + {"key": "0x003E", "datatype": "int16", "remark": "逆变侧A相电压(1V)"}, + {"key": "0x003F", "datatype": "int16", "remark": "逆变侧B相电压(1V)"}, + {"key": "0x0040", "datatype": "int16", "remark": "逆变侧C相电压(1V)"}, + {"key": "0x0041", "datatype": "int16", "remark": "逆变侧A相电流(1A)"}, + {"key": "0x0042", "datatype": "int16", "remark": "逆变侧B相电流(1A)"}, + {"key": "0x0043", "datatype": "int16", "remark": "逆变侧C相电流(1A)"}, + {"key": "0x0044", "datatype": "int16", "remark": "逆变侧A相电流直流分量(1A)"}, + {"key": "0x0045", "datatype": "int16", "remark": "逆变侧B相电流直流分量(1A)"}, + {"key": "0x0046", "datatype": "int16", "remark": "逆变侧C相电流直流分量(1A)"}, + {"key": "0x0047", "datatype": "int16", "remark": "离网频率(1Hz)"}, + {"key": "0x0048", "datatype": "int16", "remark": "A相负载量(1)"}, + {"key": "0x0049", "datatype": "int16", "remark": "B相负载量(1)"}, + {"key": "0x004A", "datatype": "int16", "remark": "C相负载量(1)"}, + {"key": "0x004B", "datatype": "int16", "remark": "总负载量(1)"}, + {"key": "0x004C", "datatype": "int16", "remark": "逆变侧AB线电压直流分量(1A)"}, + {"key": "0x004D", "datatype": "int16", "remark": "逆变侧BC线电压直流分量(1A)"}, + {"key": "0x004E", "datatype": "int16", "remark": "逆变侧CA线电压直流分量(1A)"}, + {"key": "0x004F", "datatype": "int16", "remark": "在线数量"} + ] + }, + "PCS_YX":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "remark": "所属主控号1~4"}, + {"key": "0x1002", "datatype": "uint16", "remark": "所属PCS号1~40"}, + {"key": "0x1003", "datatype": "uint16", "remark": "故障状态1故障,0正常"}, + {"key": "0x1004", "datatype": "uint16", "remark": "告警状态1告警,0正常"}, + {"key": "0x1005", "datatype": "uint16", "remark": "设备在线1在线,0无效"}, + {"key": "0x1006", "datatype": "uint16", "remark": "禁止充电1禁止,0无效"}, + {"key": "0x1007", "datatype": "uint16", "remark": "禁止放电1禁止,0无效"}, + {"key": "0x1008", "datatype": "uint16", "remark": "运行状态1开机,0关机"}, + {"key": "0x1009", "datatype": "uint16", "remark": "充放状态0:待机,1:充电,2:放电,3:搁置"}, + {"key": "0x100A", "datatype": "uint16", "remark": "电网状态1离网,0并网"}, + {"key": "0x100B", "datatype": "uint16", "remark": "逆变供电0禁止,1使能"}, + {"key": "0x100C", "datatype": "uint16", "remark": "缓启动完成0禁止,1使能"}, + {"key": "0x100D", "datatype": "uint16", "remark": "主机标志0禁止,1使能"}, + {"key": "0x100E", "datatype": "uint16", "remark": "并离网状态0:并网, 1:离网"}, + {"key": "0x100F", "datatype": "uint16", "remark": "同步请求标志0:无效;1:动作"}, + {"key": "0x1010", "datatype": "uint16", "remark": "绝缘故障1:故障,0正常"}, + {"key": "0x1011", "datatype": "uint16", "remark": "漏电保护1:故障,0正常"}, + {"key": "0x1012", "datatype": "uint16", "remark": "直流过压1:故障,0正常"}, + {"key": "0x1013", "datatype": "uint16", "remark": "市电幅值异常1:故障,0正常"}, + {"key": "0x1014", "datatype": "uint16", "remark": "市电相序异常1:故障,0正常"}, + {"key": "0x1015", "datatype": "uint16", "remark": "温度开关异常1:故障,0正常"}, + {"key": "0x1016", "datatype": "uint16", "remark": "市电频率异常1:故障,0正常"}, + {"key": "0x1017", "datatype": "uint16", "remark": "IGBT过温1:故障,0正常"}, + {"key": "0x1018", "datatype": "uint16", "remark": "交流接地故障1:故障,0正常"}, + {"key": "0x1019", "datatype": "uint16", "remark": "逆变过流异常1:故障,0正常"}, + {"key": "0x101A", "datatype": "uint16", "remark": "直流缓起故障1:故障,0正常"}, + {"key": "0x101B", "datatype": "uint16", "remark": "直流主继电器故障1:故障,0正常"}, + {"key": "0x101C", "datatype": "uint16", "remark": "风机异常1:故障,0正常"}, + {"key": "0x101D", "datatype": "uint16", "remark": "主接触器异常1:故障,0正常"}, + {"key": "0x101E", "datatype": "uint16", "remark": "均浮充切换超时1:故障,0正常"}, + {"key": "0x101F", "datatype": "uint16", "remark": "硬件故障1:故障,0正常"}, + {"key": "0x1020", "datatype": "uint16", "remark": "机内过温1:故障,0正常"}, + {"key": "0x1021", "datatype": "uint16", "remark": "软启动故障1:故障,0正常"}, + {"key": "0x1022", "datatype": "uint16", "remark": "触摸屏通讯故障1:故障,0正常"}, + {"key": "0x1023", "datatype": "uint16", "remark": "防雷器故障1:故障,0正常"}, + {"key": "0x1024", "datatype": "uint16", "remark": "急停故障1:故障,0正常"}, + {"key": "0x1025", "datatype": "uint16", "remark": "BMS系统故障1:故障,0正常"}, + {"key": "0x1026", "datatype": "uint16", "remark": "BMS通讯故障1:故障,0正常"}, + {"key": "0x1027", "datatype": "uint16", "remark": "BMS干接点通讯故障1:故障,0正常"}, + {"key": "0x1028", "datatype": "uint16", "remark": "远程通讯故障1:故障,0正常"}, + {"key": "0x1029", "datatype": "uint16", "remark": "门禁告警1:故障,0正常"}, + {"key": "0x102A", "datatype": "uint16", "remark": "锁相异常1:故障,0正常"}, + {"key": "0x102B", "datatype": "uint16", "remark": "IGBT过温告警1:故障,0正常"}, + {"key": "0x102C", "datatype": "uint16", "remark": "硬件过流保护1:故障,0正常"}, + {"key": "0x102D", "datatype": "uint16", "remark": "驱动故障1:故障,0正常"}, + {"key": "0x102E", "datatype": "uint16", "remark": "ID冲突1:故障,0正常"}, + {"key": "0x102F", "datatype": "uint16", "remark": "电池过压1:故障,0正常"}, + {"key": "0x1030", "datatype": "uint16", "remark": "电池欠压1:故障,0正常"}, + {"key": "0x1031", "datatype": "uint16", "remark": "直流过流保护1:故障,0正常"}, + {"key": "0x1032", "datatype": "uint16", "remark": "输出电压异常1:故障,0正常"}, + {"key": "0x1033", "datatype": "uint16", "remark": "离网输出电压不符合1:故障,0正常"}, + {"key": "0x1034", "datatype": "uint16", "remark": "输出过载保护1:故障,0正常"}, + {"key": "0x1035", "datatype": "uint16", "remark": "输出短路保护1:故障,0正常"}, + {"key": "0x1036", "datatype": "uint16", "remark": "并机通信异常1:故障,0正常"}, + {"key": "0x1037", "datatype": "uint16", "remark": "电池保险异常1:故障,0正常"}, + {"key": "0x1038", "datatype": "uint16", "remark": "电池重载低压1:故障,0正常"}, + {"key": "0x1039", "datatype": "uint16", "remark": "电池低压告警1:故障,0正常"}, + {"key": "0x103A", "datatype": "uint16", "remark": "一拖二压差过大1:故障,0正常"}, + {"key": "0x103B", "datatype": "uint16", "remark": "电池反接故障1:故障,0正常"}, + {"key": "0x103C", "datatype": "uint16", "remark": "电池电压异常1:故障,0正常"}, + {"key": "0x103D", "datatype": "uint16", "remark": "过载告警1:故障,0正常"}, + {"key": "0x103E", "datatype": "uint16", "remark": "外部接触器异常1:故障,0正常"}, + {"key": "0x103F", "datatype": "uint16", "remark": "IGBT温度传感器异常1:故障,0正常"}, + {"key": "0x1040", "datatype": "uint16", "remark": "整机温度传感器异常1:故障,0正常"}, + {"key": "0x1041", "datatype": "uint16", "remark": "市电CT异常1:故障,0正常"}, + {"key": "0x1042", "datatype": "uint16", "remark": "逆变电流三相不平衡1:故障,0正常"}, + {"key": "0x1043", "datatype": "uint16", "remark": "逆变电流直流分量异常1:故障,0正常"}, + {"key": "0x1044", "datatype": "uint16", "remark": "母线不平衡1:故障,0正常"}, + {"key": "0x1045", "datatype": "uint16", "remark": "逆变电压直流分量异常1:故障,0正常"}, + {"key": "0x1046", "datatype": "uint16", "remark": "主接触器控制异常1:故障,0正常"}, + {"key": "0x1047", "datatype": "uint16", "remark": "逆变电压控制异常1:故障,0正常"}, + {"key": "0x1048", "datatype": "uint16", "remark": "直流霍尔异常1:故障,0正常"}, + {"key": "0x1049", "datatype": "uint16", "remark": "电池单体过压1:故障,0正常"}, + {"key": "0x104A", "datatype": "uint16", "remark": "电池单体欠压1:故障,0正常"}, + {"key": "0x104B", "datatype": "uint16", "remark": "电网过压1:故障,0正常"}, + {"key": "0x104C", "datatype": "uint16", "remark": "电网欠压1:故障,0正常"}, + {"key": "0x104D", "datatype": "uint16", "remark": "电网过频1:故障,0正常"}, + {"key": "0x104E", "datatype": "uint16", "remark": "电网欠频1:故障,0正常"}, + {"key": "0x104F", "datatype": "uint16", "remark": "市电不平衡1:故障,0正常"}, + {"key": "0x1050", "datatype": "uint16", "remark": "参数设置不匹配1:故障,0正常"}, + {"key": "0x1051", "datatype": "uint16", "remark": "SPI通信异常1:故障,0正常"}, + {"key": "0x1052", "datatype": "uint16", "remark": "SCI通信异常1:故障,0正常"}, + {"key": "0x1053", "datatype": "uint16", "remark": "IIC通信异常1:故障,0正常"}, + {"key": "0x1054", "datatype": "uint16", "remark": "Xintf通信异常1:故障,0正常"}, + {"key": "0x1055", "datatype": "uint16", "remark": "零偏校准异常1:故障,0正常"}, + {"key": "0x1056", "datatype": "uint16", "remark": "烟雾告警1:故障,0正常"}, + {"key": "0x1057", "datatype": "uint16", "remark": "无电池组故障1异常,0正常"}, + {"key": "0x1058", "datatype": "uint16", "remark": "环温降频1异常,0正常"}, + {"key": "0x1059", "datatype": "uint16", "remark": "交流过载1异常,0正常"}, + {"key": "0x105A", "datatype": "uint16", "remark": "采样异常1异常,0正常"}, + {"key": "0x105B", "datatype": "uint16", "remark": "24V辅源故障1异常,0正常"}, + {"key": "0x105C", "datatype": "uint16", "remark": "直流欠压异常1异常,0正常"}, + {"key": "0x105D", "datatype": "uint16", "remark": "散热器过温1异常,0正常"}, + {"key": "0x105E", "datatype": "uint16", "remark": "CAN配置故障1异常,0正常"}, + {"key": "0x105F", "datatype": "uint16", "remark": "3.3V辅源故障1异常,0正常"}, + {"key": "0x1060", "datatype": "uint16", "remark": "环境过温1异常,0正常"}, + {"key": "0x1061", "datatype": "uint16", "remark": "A相IGBT逆变过流1异常,0正常"}, + {"key": "0x1062", "datatype": "uint16", "remark": "B相IGBT逆变过流1异常,0正常"} + ] + }, + "BMS_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "SOC(0.1)"}, + {"key": "0x0002", "datatype": "uint16", "remark": "SOH(0.1)"}, + {"key": "0x0003", "datatype": "uint32", "remark": "电压(0.1V)"}, + {"key": "0x0005", "datatype": "int32", "remark": "电流(0.1A)"}, + {"key": "0x0007", "datatype": "uint32", "remark": "可充电量(1kWh)"}, + {"key": "0x0009", "datatype": "uint32", "remark": "可放电量(1kWh)"}, + {"key": "0x000B", "datatype": "uint32", "remark": "单次可充电量(1kWh)"}, + {"key": "0x000D", "datatype": "uint32", "remark": "单次可放电量(1kWh)"}, + {"key": "0x000F", "datatype": "int32", "remark": "堆功率(1kW)"}, + {"key": "0x0011", "datatype": "uint32", "remark": "充电量累加(1kWh)"}, + {"key": "0x0013", "datatype": "uint32", "remark": "放电量累加(1kWh)"}, + {"key": "0x0015", "datatype": "uint16", "remark": "簇最大SOC(0.1)"}, + {"key": "0x0016", "datatype": "uint16", "remark": "簇最小SOC(0.1)"}, + {"key": "0x0017", "datatype": "uint16", "remark": "簇最大SOC号"}, + {"key": "0x0018", "datatype": "uint16", "remark": "簇最小SOC号"}, + {"key": "0x0019", "datatype": "uint16", "remark": "簇SOC差值(0.1)"}, + {"key": "0x001A", "datatype": "uint16", "remark": "簇最大电压(0.1V)"}, + {"key": "0x001B", "datatype": "uint16", "remark": "簇最小电压(0.1V)"}, + {"key": "0x001C", "datatype": "uint16", "remark": "簇最大电压号"}, + {"key": "0x001D", "datatype": "uint16", "remark": "簇最小电压号"}, + {"key": "0x001E", "datatype": "uint16", "remark": "簇电压差值(0.1V)"}, + {"key": "0x001F", "datatype": "uint16", "remark": "单体最大电压簇号"}, + {"key": "0x0020", "datatype": "uint16", "remark": "单体最大电压节号"}, + {"key": "0x0021", "datatype": "uint16", "remark": "单体最大电压(mV)"}, + {"key": "0x0022", "datatype": "uint16", "remark": "单体最小电压簇号"}, + {"key": "0x0023", "datatype": "uint16", "remark": "单体最小电压节号"}, + {"key": "0x0024", "datatype": "uint16", "remark": "单体最小电压(mV)"}, + {"key": "0x0025", "datatype": "uint16", "remark": "单体平均电压(mV)"}, + {"key": "0x0026", "datatype": "uint16", "remark": "单体电压差(mV)"}, + {"key": "0x0027", "datatype": "uint16", "remark": "单体最大温度簇号"}, + {"key": "0x0028", "datatype": "uint16", "remark": "单体最大温度节号"}, + {"key": "0x0029", "datatype": "int16", "remark": "单体最大温度(0.1℃)"}, + {"key": "0x002A", "datatype": "uint16", "remark": "单体最小温度簇号"}, + {"key": "0x002B", "datatype": "uint16", "remark": "单体最小温度节号"}, + {"key": "0x002C", "datatype": "int16", "remark": "单体最小温度(0.1℃)"}, + {"key": "0x002D", "datatype": "int16", "remark": "单体平均温度(0.1℃)"}, + {"key": "0x002E", "datatype": "int16", "remark": "单体温度差(0.1℃)"}, + {"key": "0x002F", "datatype": "uint16", "remark": "最大内阻簇号"}, + {"key": "0x0030", "datatype": "uint16", "remark": "最大内阻节号"}, + {"key": "0x0031", "datatype": "uint16", "remark": "最大内阻(mΩ)"}, + {"key": "0x0032", "datatype": "uint16", "remark": "最小内阻簇号"}, + {"key": "0x0033", "datatype": "uint16", "remark": "最小内阻节号"}, + {"key": "0x0034", "datatype": "uint16", "remark": "最小内阻(mΩ)"}, + {"key": "0x0035", "datatype": "uint16", "remark": "单体平均内阻(mΩ)"}, + {"key": "0x0036", "datatype": "uint16", "remark": "单体内阻差(mΩ)"}, + {"key": "0x0037", "datatype": "uint16", "remark": "单体最大SOH簇号"}, + {"key": "0x0038", "datatype": "uint16", "remark": "单体最大SOH节号"}, + {"key": "0x0039", "datatype": "uint16", "remark": "单体最大SOH(0.001)"}, + {"key": "0x003A", "datatype": "uint16", "remark": "单体最小SOH簇号"}, + {"key": "0x003B", "datatype": "uint16", "remark": "单体最小SOH节号"}, + {"key": "0x003C", "datatype": "uint16", "remark": "单体最小SOH(0.001)"}, + {"key": "0x003D", "datatype": "uint16", "remark": "单体最大SOc簇号"}, + {"key": "0x003E", "datatype": "uint16", "remark": "单体最大SOc节号"}, + {"key": "0x0040", "datatype": "uint16", "remark": "单体最大Soc(0.001)"}, + {"key": "0x0041", "datatype": "uint16", "remark": "单体最小SOc簇号"}, + {"key": "0x0042", "datatype": "uint16", "remark": "单体最小SOc节号"}, + {"key": "0x0043", "datatype": "uint16", "remark": "单体最小SOc(0.001)"}, + {"key": "0x0043", "datatype": "uint32", "remark": "系统剩余最大可充电功率(1KW)"}, + {"key": "0x0045", "datatype": "uint32", "remark": "系统剩余最大可放电功率(1KW)"}, + {"key": "0x0047", "datatype": "uint16", "remark": "可充电状态"}, + {"key": "0x0048", "datatype": "uint16", "remark": "可放电状态"}, + {"key": "0x0049", "datatype": "uint16", "remark": "运行状态"} + ] + }, + "BCU_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "所属通道号1~4"}, + {"key": "0x0002", "datatype": "uint16", "remark": "所属BCU号1~40"}, + {"key": "0x0003", "datatype": "uint32", "remark": "簇电压(0.1V)"}, + {"key": "0x0005", "datatype": "int32", "remark": "簇电流(0.1A)"}, + {"key": "0x0007", "datatype": "int32", "remark": "簇温度(0.1℃)"}, + {"key": "0x0009", "datatype": "uint32", "remark": "簇电阻(1mΩ)"}, + {"key": "0x000B", "datatype": "uint16", "remark": "簇SOC(0.1)"}, + {"key": "0x000C", "datatype": "uint16", "remark": "簇SOH(0.1)"}, + {"key": "0x000D", "datatype": "uint32", "remark": "簇正绝缘电阻(1kΩ)"}, + {"key": "0x000F", "datatype": "uint32", "remark": "簇负绝缘电阻(1kΩ)"}, + {"key": "0x0011", "datatype": "int32", "remark": "簇允许最大充电电流(0.1A)"}, + {"key": "0x0013", "datatype": "int32", "remark": "簇允许最大放电电流(0.1A)"}, + {"key": "0x0015", "datatype": "uint32", "remark": "簇允许最大充电功率(1kW)"}, + {"key": "0x0017", "datatype": "uint32", "remark": "簇允许最大放电功率(1kW)"}, + {"key": "0x0019", "datatype": "uint32", "remark": "簇可充容量(0.1Ah)"}, + {"key": "0x001B", "datatype": "uint32", "remark": "簇可放容量(0.1Ah)"}, + {"key": "0x001D", "datatype": "uint32", "remark": "簇单次累计充容量(0.1Ah)"}, + {"key": "0x001F", "datatype": "uint32", "remark": "簇单次累计放容量(0.1Ah)"}, + {"key": "0x0021", "datatype": "uint32", "remark": "簇总累计充容量(0.1Ah)"}, + {"key": "0x0023", "datatype": "uint32", "remark": "簇总累计放容量(0.1Ah)"}, + {"key": "0x0025", "datatype": "uint32", "remark": "簇可充电量(1kWh)"}, + {"key": "0x0027", "datatype": "uint32", "remark": "簇可放电量(1kWh)"}, + {"key": "0x0029", "datatype": "uint32", "remark": "簇单次充电量(1kWh)"}, + {"key": "0x002B", "datatype": "uint32", "remark": "簇单次放电量(1kWh)"}, + {"key": "0x002D", "datatype": "uint32", "remark": "簇累计充电量(1kWh)"}, + {"key": "0x002F", "datatype": "uint32", "remark": "簇累计放电量(1kWh)"}, + {"key": "0x0031", "datatype": "uint32", "remark": "pack累计簇总压(0.1V)"}, + {"key": "0x0033", "datatype": "uint32", "remark": "簇与pack压差(0.1V)"}, + {"key": "0x0035", "datatype": "uint32", "remark": "簇与PCS压差(0.1V)"}, + {"key": "0x0037", "datatype": "uint16", "remark": "簇中BMU个数"}, + {"key": "0x0038", "datatype": "uint16", "remark": "簇中BMU中单体个数"}, + {"key": "0x0039", "datatype": "uint16", "remark": "簇中BMU中温度个数"}, + {"key": "0x003A", "datatype": "uint16", "remark": "簇中单体个数"}, + {"key": "0x003B", "datatype": "uint16", "remark": "簇中温度个数"}, + {"key": "0x003C", "datatype": "uint16", "remark": "单体最高SOC节号"}, + {"key": "0x003D", "datatype": "uint16", "remark": "单体最高SOC(0.1)"}, + {"key": "0x003E", "datatype": "uint16", "remark": "单体最低SOC节号"}, + {"key": "0x003F", "datatype": "uint16", "remark": "单体最低SOC(0.1)"}, + {"key": "0x0040", "datatype": "uint16", "remark": "单体最高SOH节号"}, + {"key": "0x0041", "datatype": "uint16", "remark": "单体最高SOH(0.1)"}, + {"key": "0x0042", "datatype": "uint16", "remark": "单体最低SOH节号"}, + {"key": "0x0043", "datatype": "uint16", "remark": "单体最低SOH(0.1)"}, + {"key": "0x0044", "datatype": "uint16", "remark": "单体最高电压节号"}, + {"key": "0x0045", "datatype": "uint16", "remark": "单体最高电压(mV)"}, + {"key": "0x0046", "datatype": "uint16", "remark": "单体最低电压节号"}, + {"key": "0x0047", "datatype": "uint16", "remark": "单体最低电压(mV)"}, + {"key": "0x0048", "datatype": "uint16", "remark": "单体电压差(mV)"}, + {"key": "0x0049", "datatype": "uint16", "remark": "单体平均电压(mV)"}, + {"key": "0x004A", "datatype": "uint16", "remark": "单体最高温度节号"}, + {"key": "0x004B", "datatype": "int16", "remark": "单体最高温度(0.1℃)"}, + {"key": "0x004C", "datatype": "uint16", "remark": "单体最低温度节号"}, + {"key": "0x004D", "datatype": "int16", "remark": "单体最低温度(0.1℃)"}, + {"key": "0x004E", "datatype": "int16", "remark": "单体温度差(0.1℃)"}, + {"key": "0x004F", "datatype": "int16", "remark": "单体平均温度(0.1℃)"}, + {"key": "0x0050", "datatype": "uint16", "remark": "单体最高内阻节号"}, + {"key": "0x0051", "datatype": "uint16", "remark": "单体最高内阻(mΩ)"}, + {"key": "0x0052", "datatype": "uint16", "remark": "单体最低内阻节号"}, + {"key": "0x0053", "datatype": "uint16", "remark": "单体最低内阻(mΩ)"}, + {"key": "0x0054", "datatype": "uint16", "remark": "单体内阻差(mΩ)"}, + {"key": "0x0055", "datatype": "uint16", "remark": "单体平均内阻(mΩ)"} + ] + }, + "BCU_YX":{ + "addr":[ + {"key": "0xA001", "datatype": "uint16", "remark": "所属通道号1~4"}, + {"key": "0xA002", "datatype": "uint16", "remark": "所属BCU号1~40"}, + {"key": "0xA003", "datatype": "uint16", "remark": "蓄电池充放电状态0x11开路0x22待机0x33充电0x44放电"}, + {"key": "0xA004", "datatype": "uint16", "remark": "电池组运行状态0x11跳机 0x22待机 0x33放空 0x44充满 0x55预警 0x66正常"}, + {"key": "0xA005", "datatype": "uint16", "remark": "簇DO1状态1:断开 2:闭合"}, + {"key": "0xA006", "datatype": "uint16", "remark": "簇DO2状态1:断开 2:闭合"}, + {"key": "0xA007", "datatype": "uint16", "remark": "继电器总正0:断开 1:闭合 2:粘连"}, + {"key": "0xA008", "datatype": "uint16", "remark": "继电器总负0:断开 1:闭合 2:粘连"}, + {"key": "0xA009", "datatype": "uint16", "remark": "继电器预充0:断开 1:闭合 2:粘连"}, + {"key": "0xA00A", "datatype": "uint16", "remark": "继电器bmu供电0:断开 1:闭合 2:粘连"}, + {"key": "0xA00B", "datatype": "uint16", "remark": "整簇总电压过高告警0:正常 1:告警"}, + {"key": "0xA00C", "datatype": "uint16", "remark": "整簇总电压过低告警0:正常 1:告警"}, + {"key": "0xA00D", "datatype": "uint16", "remark": "整簇中单体电压过高告警0:正常 1:告警"}, + {"key": "0xA00E", "datatype": "uint16", "remark": "整簇中单体电压过低告警0:正常 1:告警"}, + {"key": "0xA00F", "datatype": "uint16", "remark": "整簇中单体电压偏差过大告警0:正常 1:告警"}, + {"key": "0xA010", "datatype": "uint16", "remark": "整簇中单体温度偏差过大告警0:正常 1:告警"}, + {"key": "0xA011", "datatype": "uint16", "remark": "整簇中单体温度过高告警0:正常 1:告警"}, + {"key": "0xA012", "datatype": "uint16", "remark": "整簇中单体温度过低告警0:正常 1:告警"}, + {"key": "0xA013", "datatype": "uint16", "remark": "整簇总充电电流过高告警0:正常 1:告警"}, + {"key": "0xA014", "datatype": "uint16", "remark": "整簇总放电电流过高告警0:正常 1:告警"}, + {"key": "0xA015", "datatype": "uint16", "remark": "整簇总SOC过高告警0:正常 1:告警"}, + {"key": "0xA016", "datatype": "uint16", "remark": "整簇总SOC过低告警0:正常 1:告警"}, + {"key": "0xA017", "datatype": "uint16", "remark": "高压盒主正接触器粘连告警0:正常 1:告警"}, + {"key": "0xA018", "datatype": "uint16", "remark": "高压盒主正接触器不能吸合告警0:正常 1:告警"}, + {"key": "0xA019", "datatype": "uint16", "remark": "高压盒主负接触器粘连告警0:正常 1:告警"}, + {"key": "0xA01A", "datatype": "uint16", "remark": "高压盒主负接触器不能吸合告警0:正常 1:告警"}, + {"key": "0xA01B", "datatype": "uint16", "remark": "高压盒预充接触器粘连告警0:正常 1:告警"}, + {"key": "0xA01C", "datatype": "uint16", "remark": "高压盒预充接触器不能吸合告警0:正常 1:告警"}, + {"key": "0xA01D", "datatype": "uint16", "remark": "预充失败告警0:正常 1:告警"}, + {"key": "0xA01E", "datatype": "uint16", "remark": "BCU电压检测模块出现问题告警0:正常 1:告警"}, + {"key": "0xA01F", "datatype": "uint16", "remark": "BCU温度检测模块出现问题告警0:正常 1:告警"}, + {"key": "0xA020", "datatype": "uint16", "remark": "BCU电流检测模块出现问题告警0:正常 1:告警"}, + {"key": "0xA021", "datatype": "uint16", "remark": "BCU绝缘检测模块出现问题告警0:正常 1:告警"}, + {"key": "0xA022", "datatype": "uint16", "remark": "高压盒内总压检测模块出现问题告警0:正常 1:告警"}, + {"key": "0xA023", "datatype": "uint16", "remark": "高压盒外总压检测模块出现问题告警0:正常 1:告警"}, + {"key": "0xA024", "datatype": "uint16", "remark": "PCS-CAN通信故障告警0:正常 1:告警"}, + {"key": "0xA025", "datatype": "uint16", "remark": "高压盒供电电压过高告警0:正常 1:告警"}, + {"key": "0xA026", "datatype": "uint16", "remark": "绝缘正极故障告警0:正常 1:告警"}, + {"key": "0xA027", "datatype": "uint16", "remark": "绝缘负极故障告警0:正常 1:告警"}, + {"key": "0xA028", "datatype": "uint16", "remark": "绝缘中间侧故障告警0:正常 1:告警"}, + {"key": "0xA029", "datatype": "uint16", "remark": "绝缘故障告警0:正常 1:告警"}, + {"key": "0xA02A", "datatype": "uint16", "remark": "BMU中电压采样线开路告警0:正常 1:告警"}, + {"key": "0xA02B", "datatype": "uint16", "remark": "BMU中NTC采样线短开路告警0:正常 1:告警"}, + {"key": "0xA02C", "datatype": "uint16", "remark": "BMU中采样芯片故障告警0:正常 1:告警"}, + {"key": "0xA02D", "datatype": "uint16", "remark": "BMU中电池温度升高过快告警0:正常 1:告警"}, + {"key": "0xA02E", "datatype": "uint16", "remark": "BMU中电池内部短路告警0:正常 1:告警"}, + {"key": "0xA02F", "datatype": "uint16", "remark": "BMU充电均衡模块出现故障告警0:正常 1:告警"}, + {"key": "0xA030", "datatype": "uint16", "remark": "BMU放电均衡模块出现故障告警0:正常 1:告警"}, + {"key": "0xA031", "datatype": "uint16", "remark": "BMU通信故障告警0:正常 1:告警"}, + {"key": "0xA032", "datatype": "uint16", "remark": "单体内阻过大告警0:正常 1:告警"}, + {"key": "0xA033", "datatype": "uint16", "remark": "单体内阻过小告警0:正常 1:告警"}, + {"key": "0xA034", "datatype": "uint16", "remark": "单体内阻阻差过大告警0:正常 1:告警"}, + {"key": "0xA035", "datatype": "uint16", "remark": "簇内阻过大告警0:正常 1:告警"}, + {"key": "0xA036", "datatype": "uint16", "remark": "簇内阻过小告警0:正常 1:告警"}, + {"key": "0xA037", "datatype": "uint16", "remark": "SOC初始化无效告警0:正常 1:告警"}, + {"key": "0xA038", "datatype": "uint16", "remark": "充电时soc降低故障告警0:正常 1:告警"}, + {"key": "0xA039", "datatype": "uint16", "remark": "放电时soc升高告警0:正常 1:告警"}, + {"key": "0xA03A", "datatype": "uint16", "remark": "静止时SOC跳变告警0:正常 1:告警"}, + {"key": "0xA03B", "datatype": "uint16", "remark": "整簇总电压过高保护0:正常 1:保护"}, + {"key": "0xA03C", "datatype": "uint16", "remark": "整簇总电压过低保护0:正常 1:保护"}, + {"key": "0xA03D", "datatype": "uint16", "remark": "整簇中单体电压过高保护0:正常 1:保护"}, + {"key": "0xA03E", "datatype": "uint16", "remark": "整簇中单体电压过低保护0:正常 1:保护"}, + {"key": "0xA03F", "datatype": "uint16", "remark": "整簇中单体电压偏差过大保护0:正常 1:保护"}, + {"key": "0xA040", "datatype": "uint16", "remark": "整簇中单体温度偏差过大保护0:正常 1:保护"}, + {"key": "0xA041", "datatype": "uint16", "remark": "整簇中单体温度过高保护0:正常 1:保护"}, + {"key": "0xA042", "datatype": "uint16", "remark": "整簇中单体温度过低保护0:正常 1:保护"}, + {"key": "0xA043", "datatype": "uint16", "remark": "整簇总充电电流过高保护0:正常 1:保护"}, + {"key": "0xA044", "datatype": "uint16", "remark": "整簇总放电电流过高保护0:正常 1:保护"}, + {"key": "0xA045", "datatype": "uint16", "remark": "整簇总SOC过高保护0:正常 1:保护"}, + {"key": "0xA046", "datatype": "uint16", "remark": "整簇总SOC过低保护0:正常 1:保护"}, + {"key": "0xA047", "datatype": "uint16", "remark": "高压盒主正接触器粘连保护0:正常 1:保护"}, + {"key": "0xA048", "datatype": "uint16", "remark": "高压盒主正接触器不能吸合保护0:正常 1:保护"}, + {"key": "0xA049", "datatype": "uint16", "remark": "高压盒主负接触器粘连保护0:正常 1:保护"}, + {"key": "0xA04A", "datatype": "uint16", "remark": "高压盒主负接触器不能吸合保护0:正常 1:保护"}, + {"key": "0xA04B", "datatype": "uint16", "remark": "高压盒预充接触器粘连保护0:正常 1:保护"}, + {"key": "0xA04C", "datatype": "uint16", "remark": "高压盒预充接触器不能吸合保护0:正常 1:保护"}, + {"key": "0xA04D", "datatype": "uint16", "remark": "预充失败保护0:正常 1:保护"}, + {"key": "0xA04E", "datatype": "uint16", "remark": "BCU电压检测模块出现问题保护0:正常 1:保护"}, + {"key": "0xA04F", "datatype": "uint16", "remark": "BCU温度检测模块出现问题保护0:正常 1:保护"}, + {"key": "0xA050", "datatype": "uint16", "remark": "BCU电流检测模块出现问题保护0:正常 1:保护"}, + {"key": "0xA051", "datatype": "uint16", "remark": "BCU绝缘检测模块出现问题保护0:正常 1:保护"}, + {"key": "0xA052", "datatype": "uint16", "remark": "高压盒内总压检测模块出现问题保护0:正常 1:保护"}, + {"key": "0xA053", "datatype": "uint16", "remark": "高压盒外总压检测模块出现问题保护0:正常 1:保护"}, + {"key": "0xA054", "datatype": "uint16", "remark": "PCS-CAN通信故障保护0:正常 1:保护"}, + {"key": "0xA055", "datatype": "uint16", "remark": "高压盒供电电压过高保护0:正常 1:保护"}, + {"key": "0xA056", "datatype": "uint16", "remark": "绝缘正极故障保护0:正常 1:保护"}, + {"key": "0xA057", "datatype": "uint16", "remark": "绝缘负极故障保护0:正常 1:保护"}, + {"key": "0xA058", "datatype": "uint16", "remark": "绝缘中间侧故障保护0:正常 1:保护"}, + {"key": "0xA059", "datatype": "uint16", "remark": "绝缘故障保护0:正常 1:保护"}, + {"key": "0xA05A", "datatype": "uint16", "remark": "BMU中电压采样线开路保护0:正常 1:保护"}, + {"key": "0xA05B", "datatype": "uint16", "remark": "BMU中NTC采样线短开路保护0:正常 1:保护"}, + {"key": "0xA05C", "datatype": "uint16", "remark": "BMU中采样芯片故障保护0:正常 1:保护"}, + {"key": "0xA05D", "datatype": "uint16", "remark": "BMU中电池温度升高过快保护0:正常 1:保护"}, + {"key": "0xA05E", "datatype": "uint16", "remark": "BMU中电池内部短路保护0:正常 1:保护"}, + {"key": "0xA05F", "datatype": "uint16", "remark": "BMU充电均衡模块出现故障保护0:正常 1:保护"}, + {"key": "0xA060", "datatype": "uint16", "remark": "BMU放电均衡模块出现故障保护0:正常 1:保护"}, + {"key": "0xA061", "datatype": "uint16", "remark": "BMU通信故障保护0:正常 1:保护"}, + {"key": "0xA062", "datatype": "uint16", "remark": "单体内阻过大保护0:正常 1:保护"}, + {"key": "0xA063", "datatype": "uint16", "remark": "单体内阻过小保护0:正常 1:保护"}, + {"key": "0xA064", "datatype": "uint16", "remark": "单体内阻阻差过大保护0:正常 1:保护"}, + {"key": "0xA065", "datatype": "uint16", "remark": "簇内阻过大保护0:正常 1:保护"}, + {"key": "0xA066", "datatype": "uint16", "remark": "簇内阻过小保护0:正常 1:保护"}, + {"key": "0xA067", "datatype": "uint16", "remark": "SOC初始化无效保护0:正常 1:保护"}, + {"key": "0xA068", "datatype": "uint16", "remark": "充电时soc降低故障保护0:正常 1:保护"}, + {"key": "0xA069", "datatype": "uint16", "remark": "放电时soc升高保护0:正常 1:保护"}, + {"key": "0xA06A", "datatype": "uint16", "remark": "静止时SOC跳变保护0:正常 1:保护"} + ] + }, + "MEM_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "所属通道号1"}, + {"key": "0x0008", "datatype": "uint16", "remark": "电表类型0:储能站总表1:逆变前侧电表2:逆变后侧电表3:配电柜电表4:并网口电表"}, + {"key": "0x0009", "datatype": "uint16", "remark": "电流变比"}, + {"key": "0x000A", "datatype": "uint16", "remark": "电压变比"}, + {"key": "0x000B", "datatype": "uint32", "remark": "A相电压(1V)"}, + {"key": "0x000D", "datatype": "uint32", "remark": "B相电压(1V)"}, + {"key": "0x000F", "datatype": "uint32", "remark": "C相电压(1V)"}, + {"key": "0x0011", "datatype": "int32", "remark": "A相电流(1A)"}, + {"key": "0x0013", "datatype": "int32", "remark": "B相电流(1A)"}, + {"key": "0x0015", "datatype": "int32", "remark": "C相电流(1A)"}, + {"key": "0x0017", "datatype": "uint32", "remark": "AB相电压(1V)"}, + {"key": "0x0019", "datatype": "uint32", "remark": "BC相电压(1V)"}, + {"key": "0x001B", "datatype": "uint32", "remark": "CA相电压(1V)"}, + {"key": "0x001D", "datatype": "int32", "remark": "A相有功(1kW)"}, + {"key": "0x001F", "datatype": "int32", "remark": "B相有功(1kW)"}, + {"key": "0x0021", "datatype": "int32", "remark": "C相有功(1kW)"}, + {"key": "0x0023", "datatype": "int32", "remark": "三相总有功(1kW)"}, + {"key": "0x0025", "datatype": "int32", "remark": "正向总有功总需量(1kW)"}, + {"key": "0x0027", "datatype": "uint32", "remark": "尖段电价(1RMB)"}, + {"key": "0x0029", "datatype": "uint32", "remark": "峰段电价(1RMB)"}, + {"key": "0x002B", "datatype": "uint32", "remark": "平段电价(1RMB)"}, + {"key": "0x002D", "datatype": "uint32", "remark": "谷段电价(1RMB)"}, + {"key": "0x002F", "datatype": "uint32", "remark": "日充电电量(1kWh)"}, + {"key": "0x0031", "datatype": "uint32", "remark": "日放电电量(1kWh)"}, + {"key": "0x0033", "datatype": "uint32", "remark": "日充电费用(1RMB)"}, + {"key": "0x0035", "datatype": "uint32", "remark": "日放电费用(1RMB)"}, + {"key": "0x0037", "datatype": "int32", "remark": "日收益(1RMB)"}, + {"key": "0x0039", "datatype": "uint32", "remark": "日正向尖有功电能(1kWh)"}, + {"key": "0x003B", "datatype": "uint32", "remark": "日正向峰有功电能(1kWh)"}, + {"key": "0x003D", "datatype": "uint32", "remark": "日正向平有功电能(1kWh)"}, + {"key": "0x003F", "datatype": "uint32", "remark": "日正向谷有功电能(1kWh)"}, + {"key": "0x0041", "datatype": "uint32", "remark": "日正向总有功电能(1kWh)"}, + {"key": "0x0043", "datatype": "uint32", "remark": "日反向尖有功电能(1kWh)"}, + {"key": "0x0045", "datatype": "uint32", "remark": "日反向峰有功电能(1kWh)"}, + {"key": "0x0047", "datatype": "uint32", "remark": "日反向平有功电能(1kWh)"}, + {"key": "0x0049", "datatype": "uint32", "remark": "日反向谷有功电能(1kWh)"}, + {"key": "0x004B", "datatype": "uint32", "remark": "日反向总有功电能(1kWh)"}, + {"key": "0x004D", "datatype": "uint32", "remark": "总充电电量(1kWh)"}, + {"key": "0x004F", "datatype": "uint32", "remark": "总放电电量(1kWh)"}, + {"key": "0x0051", "datatype": "uint32", "remark": "总充电费用(1RMB)"}, + {"key": "0x0053", "datatype": "uint32", "remark": "总放电费用(1RMB)"}, + {"key": "0x0055", "datatype": "int32", "remark": "总收益(1RMB)"}, + {"key": "0x0057", "datatype": "uint32", "remark": "总正向尖有功电能(1kWh)"}, + {"key": "0x0059", "datatype": "uint32", "remark": "总正向峰有功电能(1kWh)"}, + {"key": "0x005B", "datatype": "uint32", "remark": "总正向平有功电能(1kWh)"}, + {"key": "0x005D", "datatype": "uint32", "remark": "总正向谷有功电能(1kWh)"}, + {"key": "0x005F", "datatype": "uint32", "remark": "总正向总有功电能(1kWh)"}, + {"key": "0x0061", "datatype": "uint32", "remark": "总反向尖有功电能(1kWh)"}, + {"key": "0x0063", "datatype": "uint32", "remark": "总反向峰有功电能(1kWh)"}, + {"key": "0x0065", "datatype": "uint32", "remark": "总反向平有功电能(1kWh)"}, + {"key": "0x0067", "datatype": "uint32", "remark": "总反向谷有功电能(1kWh)"}, + {"key": "0x0069", "datatype": "uint32", "remark": "总反向总有功电能(1kWh)"} + ] + }, + "TH_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "所属通道号1"}, + {"key": "0x0002", "datatype": "uint16", "remark": "所属温湿度号1~10"}, + {"key": "0x0003", "datatype": "int16", "remark": "温度(0.1℃)"}, + {"key": "0x0004", "datatype": "int16", "remark": "湿度(0.1℃)"} + + ] + }, + "Fire40_YX":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "所属通道号1~10"}, + {"key": "0x0002", "datatype": "uint16", "remark": "主控数量1"}, + {"key": "0x0003", "datatype": "uint16", "remark": "主控ID1"}, + {"key": "0x0004", "datatype": "uint16", "remark": "主控状态0:正常 1:预警 2:火警"}, + {"key": "0x0005", "datatype": "uint32", "remark": "主控硬件版本"}, + {"key": "0x0007", "datatype": "uint32", "remark": "主控软件版本"}, + {"key": "0x0009", "datatype": "uint16", "remark": "主电状态0:使用市电 1:使用备电"}, + {"key": "0x000A", "datatype": "uint32", "remark": "备电电流(0.1A)"}, + {"key": "0x000C", "datatype": "uint32", "remark": "备电电压(0.1V)"}, + {"key": "0x000E", "datatype": "uint32", "remark": "可用容量(0.01Ah)"}, + {"key": "0x0010", "datatype": "uint32", "remark": "可充放容量(0.01Ah)"}, + {"key": "0x0012", "datatype": "uint16", "remark": "警铃是否使用"}, + {"key": "0x0013", "datatype": "uint16", "remark": "警铃状态0:无效 1:掉线 2:正常 3:启动"}, + {"key": "0x0014", "datatype": "uint16", "remark": "瓶头阀是否使用"}, + {"key": "0x0015", "datatype": "uint16", "remark": "瓶头阀状态0:无效 1:掉线 2:正常 3:启动"}, + {"key": "0x0016", "datatype": "uint16", "remark": "手报是否使用"}, + {"key": "0x0017", "datatype": "uint16", "remark": "手报状态0:无效 1:掉线 2:正常 3:启动"}, + {"key": "0x0018", "datatype": "uint16", "remark": "簇控制器数量"}, + {"key": "0x0019", "datatype": "uint16", "remark": "复合探测器总数量"}, + {"key": "0x001A", "datatype": "uint16", "remark": "烟雾探测器总数量"}, + {"key": "0x001B", "datatype": "uint16", "remark": "压力探测器总数量"}, + {"key": "0x001C", "datatype": "uint16", "remark": "吸气式探测器总数量"}, + {"key": "0x001D", "datatype": "uint16", "remark": "PACK探测器总数量"}, + {"key": "0x001E", "datatype": "uint16", "remark": "电池总数量"} + ] + }, + "Cooling_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "remark": "所属通道号1"}, + {"key": "0x0002", "datatype": "uint16", "remark": "所属冷机号1~10"}, + {"key": "0x0003", "datatype": "int16", "remark": "制冷点(0.1℃)"}, + {"key": "0x0004", "datatype": "int16", "remark": "制冷偏差(0.1℃)"}, + {"key": "0x0005", "datatype": "int16", "remark": "高温告警值(0.1℃)"}, + {"key": "0x0006", "datatype": "int16", "remark": "低温告警值(0.1℃)"}, + {"key": "0x0007", "datatype": "int16", "remark": "制热点(0.1℃)"}, + {"key": "0x0008", "datatype": "int16", "remark": "制热偏差(0.1℃)"}, + {"key": "0x0009", "datatype": "int16", "remark": "电芯温度(0.1℃)"}, + {"key": "0x000A", "datatype": "int16", "remark": "环境湿度(0.1℃)"}, + {"key": "0x000B", "datatype": "int16", "remark": "吸气温度(0.1℃)"}, + {"key": "0x000C", "datatype": "int16", "remark": "排气温度(0.1℃)"}, + {"key": "0x000D", "datatype": "int16", "remark": "进水温度/供液温度(0.1℃)"}, + {"key": "0x000E", "datatype": "int16", "remark": "出水温度/回液温度(0.1℃)"}, + {"key": "0x000F", "datatype": "int16", "remark": "进水压力/供液压力(0.1)"}, + {"key": "0x0010", "datatype": "int16", "remark": "出水压力/回液压力(0.1)"}, + {"key": "0x0011", "datatype": "int16", "remark": "高压压力(0.1)"}, + {"key": "0x0012", "datatype": "int16", "remark": "低压压力(0.1)"}, + {"key": "0x0013", "datatype": "int16", "remark": "循环水泵转速"}, + {"key": "0x0014", "datatype": "int16", "remark": "压缩机频率"}, + {"key": "0x0015", "datatype": "int16", "remark": "室外风机转速"} + ] + }, + "Cooling_YX":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "remark": "所属通道号1"}, + {"key": "0x1002", "datatype": "uint16", "remark": "所属冷机号1~10"}, + {"key": "0x1003", "datatype": "uint16", "remark": "开关0:关机,1:开机"}, + {"key": "0x1004", "datatype": "uint16", "remark": "采样模式(0-出水温度 1-电芯温度)"}, + {"key": "0x1005", "datatype": "uint16", "remark": "制冷状态0:关闭,1:启动"}, + {"key": "0x1006", "datatype": "uint16", "remark": "制热状态0:关闭,1:启动"}, + {"key": "0x1007", "datatype": "uint16", "remark": "高温告警0:正常,1:告警"}, + {"key": "0x1008", "datatype": "uint16", "remark": "低温告警0:正常,1:告警"}, + {"key": "0x1009", "datatype": "uint16", "remark": "高压告警0:正常,1:告警"}, + {"key": "0x100A", "datatype": "uint16", "remark": "低压告警0:正常,1:告警"}, + {"key": "0x100B", "datatype": "uint16", "remark": "进水温度传感器0:正常,1:告警"}, + {"key": "0x100C", "datatype": "uint16", "remark": "出水温度传感器0:正常,1:告警"}, + {"key": "0x100D", "datatype": "uint16", "remark": "进水压力传感器0:正常,1:告警"}, + {"key": "0x100E", "datatype": "uint16", "remark": "出水压力传感器0:正常,1:告警"} + ] + }, + "Gateway_YC":{ + "addr":[ + {"key": "40001", "datatype": "uint16", "remark": "模式"}, + {"key": "40002", "datatype": "uint16", "remark": "峰谷时间段"}, + {"key": "40021", "datatype": "uint16", "remark": "自定时间段"}, + {"key": "40038", "datatype": "uint16", "remark": "其他参数"} + ] + }, + "Charger_YC":{ + "addr":[ + {"key": "11", "datatype": "uint16", "remark": "枪1:状态"}, + {"key": "12", "datatype": "uint16", "remark": "枪1:需求电压"}, + {"key": "13", "datatype": "uint16", "remark": "枪1:需求电流"}, + {"key": "14", "datatype": "uint16", "remark": "枪1:需求功率"}, + {"key": "15", "datatype": "uint16", "remark": "枪1:输出电压"}, + {"key": "16", "datatype": "uint16", "remark": "枪1:输出电流"}, + {"key": "17", "datatype": "uint16", "remark": "枪1:输出功率"}, + {"key": "18", "datatype": "uint16", "remark": "枪1:功率限值"}, + {"key": "21", "datatype": "uint16", "remark": "枪2:状态"}, + {"key": "22", "datatype": "uint16", "remark": "枪2:需求电压"}, + {"key": "23", "datatype": "uint16", "remark": "枪2:需求电流"}, + {"key": "24", "datatype": "uint16", "remark": "枪2:需求功率"}, + {"key": "25", "datatype": "uint16", "remark": "枪2:输出电压"}, + {"key": "26", "datatype": "uint16", "remark": "枪2:输出电流"}, + {"key": "27", "datatype": "uint16", "remark": "枪2:输出功率"}, + {"key": "28", "datatype": "uint16", "remark": "枪2:功率限值"} + ] + } +} \ No newline at end of file diff --git a/bin/Release/assets/config-online/regaddrs.json b/bin/Release/assets/config-online/regaddrs.json new file mode 100644 index 0000000..375213f --- /dev/null +++ b/bin/Release/assets/config-online/regaddrs.json @@ -0,0 +1,901 @@ +{ + "EMS_YT":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"EMS工作模式", "remark": "0:无效1:本地控制模式, EMS不接受平台调控2:平台控制模式, EMS接收平台调控指令(-)"}, + {"key": "0x0002", "datatype": "int16", "alert": 0, "name":"有功功率", "remark": "并网恒功率模式下交流侧功率值:<0: 充电功率0: 静置>0: 放电功率(kW)"}, + {"key": "0x0003", "datatype": "uint16", "alert": 0, "name":"PCS开关机", "remark": "0: 关机1: 开机(-)"}, + {"key": "0x0004", "datatype": "uint16", "alert": 0, "name":"主控对象", "remark": "储能遥控对象:0:无效1:华云2:轻舟"}, + {"key": "0x0005", "datatype": "int16", "alert": 0, "name":"A相有功功率", "remark": "(1kW)"}, + {"key": "0x0006", "datatype": "int16", "alert": 0, "name":"B相有功功率", "remark": "(1kW)"}, + {"key": "0x0007", "datatype": "int16", "alert": 0, "name":"C相有功功率", "remark": "(1kW)"}, + {"key": "0x0008", "datatype": "int16", "alert": 0, "name":"三相总有功功率", "remark": "(1kW)"}, + {"key": "0x0009", "datatype": "int16", "alert": 0, "name":"A相无功功率", "remark": "(1kVar)"}, + {"key": "0x000A", "datatype": "int16", "alert": 0, "name":"B相无功功率", "remark": "(1kVar)"}, + {"key": "0x000B", "datatype": "int16", "alert": 0, "name":"C相无功功率", "remark": "(1kVar)"}, + {"key": "0x000C", "datatype": "int16", "alert": 0, "name":"三相总无功功率", "remark": "(1kVar)"}, + {"key": "0x000D", "datatype": "int16", "alert": 0, "name":"A相电流", "remark": "(0.01A)"}, + {"key": "0x000E", "datatype": "int16", "alert": 0, "name":"B相电流", "remark": "(0.01A)"}, + {"key": "0x000F", "datatype": "int16", "alert": 0, "name":"C相电流", "remark": "(0.01A)"}, + {"key": "0x0010", "datatype": "uint16", "alert": 0, "name":"A相电压", "remark": "(1V)"}, + {"key": "0x0011", "datatype": "uint16", "alert": 0, "name":"B相电压", "remark": "(1V)"}, + {"key": "0x0012", "datatype": "uint16", "alert": 0, "name":"C相电压", "remark": "(1V)"}, + {"key": "0x0013", "datatype": "int16", "alert": 0, "name":"A相交流功率因数", "remark": "(0.01)"}, + {"key": "0x0014", "datatype": "int16", "alert": 0, "name":"B相交流功率因数", "remark": "(0.01)"}, + {"key": "0x0015", "datatype": "int16", "alert": 0, "name":"C相交流功率因数", "remark": "(0.01)"}, + {"key": "0x0016", "datatype": "int16", "alert": 0, "name":"A相视在功率", "remark": "(1kVA)"}, + {"key": "0x0017", "datatype": "int16", "alert": 0, "name":"B相视在功率", "remark": "(1kVA)"}, + {"key": "0x0018", "datatype": "int16", "alert": 0, "name":"C相视在功率", "remark": "(1kVA)"}, + {"key": "0x0019", "datatype": "int16", "alert": 0, "name":"正向总有功总需量", "remark": "(1kW)"}, + {"key": "0x001A", "datatype": "int16", "alert": 0, "name":"数据有效性", "remark": "0无效 1有效"}, + {"key": "0x001B", "datatype": "uint16", "alert": 0, "name":"EMS工作模式", "remark": "0:无效1:本地控制模式, EMS不接受平台调控2:平台控制模式, EMS接收平台调控指令(-)"}, + {"key": "0x001C", "datatype": "uint16", "alert": 0, "name":"有功功率", "remark": "并网恒功率模式下交流侧功率值:功率绝对值 没有正负(kW)"}, + {"key": "0x001D", "datatype": "uint16", "alert": 0, "name":"充放电类型", "remark": "0: 关机1: 充电2:放电3:待机(-)"}, + {"key": "0x001E", "datatype": "uint16", "alert": 0, "name":"最大SOC", "remark": ""}, + {"key": "0x001F", "datatype": "uint16", "alert": 0, "name":"最小SOC", "remark": ""}, + {"key": "0x0020", "datatype": "uint16", "alert": 0, "name":"自动并离网", "remark": "0:手动1:自动"}, + {"key": "0x0021", "datatype": "uint16", "alert": 0, "name":"并网离网", "remark": "0:并网1:离网"} + ] + }, + "EMS_YX":{ + "addr":[ + {"key": "0x2001", "datatype": "uint16", "alert": 0, "name":"BMS(电池堆)通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2002", "datatype": "uint64", "alert": 0, "name":"BCU(电池簇)通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2006", "datatype": "uint16", "alert": 0, "name":"PCU(主控)通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2007", "datatype": "uint64", "alert": 0, "name":"PCS(模块)通信状态", "remark": "0:正常1:故障"}, + {"key": "0x200B", "datatype": "uint16", "alert": 0, "name":"电表总接点通信状态", "remark": "0:正常1:故障"}, + {"key": "0x200C", "datatype": "uint32", "alert": 0, "name":"电表通信状态", "remark": "0:正常1:故障"}, + {"key": "0x200E", "datatype": "uint16", "alert": 0, "name":"消防通信状态", "remark": "0:正常1:故障"}, + {"key": "0x200F", "datatype": "uint16", "alert": 0, "name":"UPS通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2010", "datatype": "uint16", "alert": 0, "name":"温湿度总接点通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2011", "datatype": "uint32", "alert": 0, "name":"温湿度通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2013", "datatype": "uint16", "alert": 0, "name":"空调总接点通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2014", "datatype": "uint32", "alert": 0, "name":"空调通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2016", "datatype": "uint16", "alert": 0, "name":"控制干接点(配电系统)状态", "remark": "0:开路1:闭合"}, + {"key": "0x2017", "datatype": "uint16", "alert": 0, "name":"状态干接点(配电系统)状态", "remark": "0:开路1:闭合"}, + {"key": "0x2018", "datatype": "uint16", "alert": 0, "name":"BCU总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x2019", "datatype": "uint16", "alert": 0, "name":"PCU总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x201A", "datatype": "uint16", "alert": 0, "name":"电表总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x201B", "datatype": "uint16", "alert": 0, "name":"消防总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x201C", "datatype": "uint16", "alert": 0, "name":"UPS总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x201D", "datatype": "uint16", "alert": 0, "name":"温湿度总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x201E", "datatype": "uint16", "alert": 0, "name":"空调总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x201F", "datatype": "uint16", "alert": 0, "name":"EMU通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x2020", "datatype": "uint16", "alert": 0, "name":"冷机总通信状态", "remark": "0:正常 1:告警 2:故障"}, + {"key": "0x2021", "datatype": "uint16", "alert": 0, "name":"冷机总接点通信状态", "remark": "0:正常1:故障"}, + {"key": "0x2022", "datatype": "uint16", "alert": 0, "name":"冷机通信状态", "remark": "0:正常1:故障"}, + {"key": "0x207A", "datatype": "uint16", "alert": 0, "name":"判断总表的三相总有功 < -5.0fkW 充电 >5.0fkW放电 否则停机", "remark": "0:充电 1:放电 2:停机"} + ] + }, + "EMS_YC":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "alert": 0, "name":"BMS(电池堆)个数", "remark": "1"}, + {"key": "0x1002", "datatype": "uint16", "alert": 0, "name":"BCU通道个数", "remark": "1~2"}, + {"key": "0x1003", "datatype": "uint16", "alert": 0, "name":"BCU(电池簇)个数", "remark": "1~40"}, + {"key": "0x1004", "datatype": "uint16", "alert": 0, "name":"PCU(主控)个数", "remark": "1~4"}, + {"key": "0x1005", "datatype": "uint16", "alert": 0, "name":"PCU通道个数", "remark": "1~4"}, + {"key": "0x1006", "datatype": "uint16", "alert": 0, "name":"PCS(模块)个数", "remark": "1~40"}, + {"key": "0x1007", "datatype": "uint16", "alert": 0, "name":"电表通道个数", "remark": "1"}, + {"key": "0x1008", "datatype": "uint16", "alert": 0, "name":"电表个数", "remark": "1~10"}, + {"key": "0x1009", "datatype": "uint16", "alert": 0, "name":"消防通道个数", "remark": "1~10"}, + {"key": "0x100A", "datatype": "uint16", "alert": 0, "name":"消防个数", "remark": "1~10"}, + {"key": "0x100B", "datatype": "uint16", "alert": 0, "name":"UPS通道个数", "remark": "1~10"}, + {"key": "0x100C", "datatype": "uint16", "alert": 0, "name":"UPS个数", "remark": "1~10"}, + {"key": "0x100D", "datatype": "uint16", "alert": 0, "name":"温湿度通道个数", "remark": "1"}, + {"key": "0x100E", "datatype": "uint16", "alert": 0, "name":"温湿度个数", "remark": "1~10"}, + {"key": "0x100F", "datatype": "uint16", "alert": 0, "name":"空调通道个数", "remark": "1"}, + {"key": "0x1010", "datatype": "uint16", "alert": 0, "name":"空调个数", "remark": "1~10"}, + {"key": "0x1011", "datatype": "uint16", "alert": 0, "name":"控制干接点(配电系统)个数", "remark": "16"}, + {"key": "0x1012", "datatype": "uint16", "alert": 0, "name":"状态干接点(配电系统)个数", "remark": "16"}, + {"key": "0x1072", "datatype": "uint32", "alert": 0, "name":"系统最大可充电功率", "remark": "(1KW)"}, + {"key": "0x1074", "datatype": "uint32", "alert": 0, "name":"系统最大可放电功率", "remark": "(1KW)"}, + {"key": "0x1076", "datatype": "uint32", "alert": 0, "name":"储能母线电压", "remark": "(0.1V)"}, + {"key": "0x1078", "datatype": "int32", "alert": 0, "name":"储能母线电流", "remark": "(0.1A)"}, + {"key": "0x107A", "datatype": "uint16", "alert": 0, "name":"储能系统SOC", "remark": "(0.1)"}, + {"key": "0x107B", "datatype": "uint16", "alert": 0, "name":"储能系统SOH", "remark": "(0.1)"}, + {"key": "0x107C", "datatype": "uint16", "alert": 0, "name":"电流变比", "remark": ""}, + {"key": "0x107D", "datatype": "uint16", "alert": 0, "name":"电压变比", "remark": ""}, + {"key": "0x107E", "datatype": "uint32", "alert": 0, "name":"A相电压", "remark": "(1V)"}, + {"key": "0x1080", "datatype": "uint32", "alert": 0, "name":"B相电压", "remark": "(1V)"}, + {"key": "0x1082", "datatype": "uint32", "alert": 0, "name":"C相电压", "remark": "(1V)"}, + {"key": "0x1084", "datatype": "int32", "alert": 0, "name":"A相电流", "remark": "(1A)"}, + {"key": "0x1086", "datatype": "int32", "alert": 0, "name":"B相电流", "remark": "(1A)"}, + {"key": "0x1088", "datatype": "int32", "alert": 0, "name":"C相电流", "remark": "(1A)"}, + {"key": "0x108A", "datatype": "uint32", "alert": 0, "name":"AB相电压", "remark": "(1V)"}, + {"key": "0x108C", "datatype": "uint32", "alert": 0, "name":"BC相电压", "remark": "(1V)"}, + {"key": "0x108E", "datatype": "uint32", "alert": 0, "name":"CA相电压", "remark": "(1V)"}, + {"key": "0x1090", "datatype": "int32", "alert": 0, "name":"A相有功功率", "remark": "(1kW)"}, + {"key": "0x1092", "datatype": "int32", "alert": 0, "name":"B相有功功率", "remark": "(1kW)"}, + {"key": "0x1094", "datatype": "int32", "alert": 0, "name":"C相有功功率", "remark": "(1kW)"}, + {"key": "0x1096", "datatype": "int32", "alert": 0, "name":"三相总有功功率", "remark": "(1kW)"}, + {"key": "0x1098", "datatype": "int32", "alert": 0, "name":"当前控制功率", "remark": "(0.1kW)"}, + {"key": "0x109A", "datatype": "uint32", "alert": 0, "name":"负荷率", "remark": "(0.01)"}, + {"key": "0x109C", "datatype": "uint32", "alert": 0, "name":"三相不平衡度", "remark": "(0.01)"}, + {"key": "0x109E", "datatype": "uint32", "alert": 0, "name":"功率因素比率", "remark": "(0.01)"}, + {"key": "0x10A0", "datatype": "int32", "alert": 0, "name":"进线开关柜功率", "remark": "(1kW)"}, + {"key": "0x10A2", "datatype": "int32", "alert": 0, "name":"用户关口表功率", "remark": "(1kW)"}, + {"key": "0x1104", "datatype": "int32", "alert": 0, "name":"正向总有功总需量", "remark": "(1kW)"}, + {"key": "0x1106", "datatype": "uint32", "alert": 0, "name":"尖段电价", "remark": "(1RMB)"}, + {"key": "0x1108", "datatype": "uint32", "alert": 0, "name":"峰段电价", "remark": "(1RMB)"}, + {"key": "0x110A", "datatype": "uint32", "alert": 0, "name":"平段电价", "remark": "(1RMB)"}, + {"key": "0x110C", "datatype": "uint32", "alert": 0, "name":"谷段电价", "remark": "(1RMB)"}, + {"key": "0x110E", "datatype": "uint32", "alert": 0, "name":"日充电电量", "remark": "(1kWh)"}, + {"key": "0x1110", "datatype": "uint32", "alert": 0, "name":"日放电电量", "remark": "(1kWh)"}, + {"key": "0x1112", "datatype": "uint32", "alert": 0, "name":"日充电费用", "remark": "(1RMB)"}, + {"key": "0x1114", "datatype": "uint32", "alert": 0, "name":"日放电费用", "remark": "(1RMB)"}, + {"key": "0x1116", "datatype": "int32", "alert": 0, "name":"日收益", "remark": "(1RMB)"}, + {"key": "0x1118", "datatype": "uint32", "alert": 0, "name":"日正向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x111A", "datatype": "uint32", "alert": 0, "name":"日正向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x111C", "datatype": "uint32", "alert": 0, "name":"日正向平有功电能", "remark": "(1kWh)"}, + {"key": "0x111E", "datatype": "uint32", "alert": 0, "name":"日正向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x1120", "datatype": "uint32", "alert": 0, "name":"日正向总有功电能", "remark": "(1kWh)"}, + {"key": "0x1122", "datatype": "uint32", "alert": 0, "name":"日反向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x1124", "datatype": "uint32", "alert": 0, "name":"日反向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x1126", "datatype": "uint32", "alert": 0, "name":"日反向平有功电能", "remark": "(1kWh)"}, + {"key": "0x1128", "datatype": "uint32", "alert": 0, "name":"日反向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x112A", "datatype": "uint32", "alert": 0, "name":"日反向总有功电能", "remark": "(1kWh)"}, + {"key": "0x112C", "datatype": "uint32", "alert": 0, "name":"总充电电量", "remark": "(1kWh)"}, + {"key": "0x112E", "datatype": "uint32", "alert": 0, "name":"总放电电量", "remark": "(1kWh)"}, + {"key": "0x1130", "datatype": "uint32", "alert": 0, "name":"总充电费用", "remark": "(1RMB)"}, + {"key": "0x1132", "datatype": "uint32", "alert": 0, "name":"总放电费用", "remark": "(1RMB)"}, + {"key": "0x1134", "datatype": "int32", "alert": 0, "name":"总收益", "remark": "(1RMB)"}, + {"key": "0x1136", "datatype": "uint32", "alert": 0, "name":"总正向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x1138", "datatype": "uint32", "alert": 0, "name":"总正向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x113A", "datatype": "uint32", "alert": 0, "name":"总正向平有功电能", "remark": "(1kWh)"}, + {"key": "0x113C", "datatype": "uint32", "alert": 0, "name":"总正向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x113E", "datatype": "uint32", "alert": 0, "name":"总正向总有功电能", "remark": "(1kWh)"}, + {"key": "0x1140", "datatype": "uint32", "alert": 0, "name":"总反向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x1142", "datatype": "uint32", "alert": 0, "name":"总反向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x1144", "datatype": "uint32", "alert": 0, "name":"总反向平有功电能", "remark": "(1kWh)"}, + {"key": "0x1146", "datatype": "uint32", "alert": 0, "name":"总反向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x1148", "datatype": "uint32", "alert": 0, "name":"总反向总有功电能", "remark": "(1kWh)"}, + {"key": "0x11AE", "datatype": "int16", "alert": 0, "name":"交流A相电压", "remark": "(1V)"}, + {"key": "0x11AF", "datatype": "int16", "alert": 0, "name":"交流B相电压", "remark": "(1V)"}, + {"key": "0x11B0", "datatype": "int16", "alert": 0, "name":"交流C相电压", "remark": "(1V)"}, + {"key": "0x11B1", "datatype": "int16", "alert": 0, "name":"交流A相频率", "remark": "(1Hz)"}, + {"key": "0x11B2", "datatype": "int16", "alert": 0, "name":"交流B相频率", "remark": "(1Hz)"}, + {"key": "0x11B3", "datatype": "int16", "alert": 0, "name":"交流C相频率", "remark": "(1Hz)"}, + {"key": "0x11B4", "datatype": "int32", "alert": 0, "name":"总直流功率", "remark": "(1kW)"}, + {"key": "0x11B6", "datatype": "uint32", "alert": 0, "name":"总直流电压", "remark": "(0.1V)"}, + {"key": "0x11B8", "datatype": "int32", "alert": 0, "name":"总直流电流", "remark": "(0.1A)"}, + {"key": "0x121B", "datatype": "int16", "alert": 0, "name":"储能系统温度", "remark": "(0.1℃)"}, + {"key": "0x121C", "datatype": "uint16", "alert": 0, "name":"储能充放电时段hh", "remark": "(时)"}, + {"key": "0x121D", "datatype": "uint16", "alert": 0, "name":"储能充放电时段mm", "remark": "(分)"}, + {"key": "0x121E", "datatype": "uint16", "alert": 0, "name":"储能充放电时段ss", "remark": "(秒)"}, + {"key": "0x121F", "datatype": "int16", "alert": 0, "name":"储能系统各时段功率", "remark": "(1kW)"} + ] + }, + "PCU_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1~4"}, + {"key": "0x0002", "datatype": "uint32", "alert": 0, "name":"充电功率最大许可", "remark": "(1KW)"}, + {"key": "0x0004", "datatype": "uint32", "alert": 0, "name":"放电功率最大许可", "remark": "(1KW)"}, + {"key": "0x0006", "datatype": "uint32", "alert": 0, "name":"交流日总充电量", "remark": "(1KWh)"}, + {"key": "0x0008", "datatype": "uint32", "alert": 0, "name":"交流日总放电量", "remark": "(1KWh)"}, + {"key": "0x000A", "datatype": "uint32", "alert": 0, "name":"交流总充电量", "remark": "(1KWh)"}, + {"key": "0x000C", "datatype": "uint32", "alert": 0, "name":"交流总放电量", "remark": "(1KWh)"}, + {"key": "0x000E", "datatype": "int16", "alert": 0, "name":"有功功率期望值", "remark": "(1KW)"}, + {"key": "0x000F", "datatype": "int16", "alert": 0, "name":"无功功率期望值", "remark": "(1kVar)"}, + {"key": "0x0010", "datatype": "int16", "alert": 0, "name":"PCS侧线电压VAB", "remark": "(1v)"}, + {"key": "0x0011", "datatype": "int16", "alert": 0, "name":"PCS侧线电压VBC", "remark": "(1v)"}, + {"key": "0x0012", "datatype": "int16", "alert": 0, "name":"PCS侧线电压VCA", "remark": "(1v)"}, + {"key": "0x0013", "datatype": "int16", "alert": 0, "name":"PCS侧线A相电压", "remark": "(1v)"}, + {"key": "0x0014", "datatype": "int16", "alert": 0, "name":"PCS侧线B相电压", "remark": "(1v)"}, + {"key": "0x0015", "datatype": "int16", "alert": 0, "name":"PCS侧线C相电压", "remark": "(1v)"}, + {"key": "0x0016", "datatype": "int16", "alert": 0, "name":"PCS侧A相频率", "remark": "(1Hz)"}, + {"key": "0x0017", "datatype": "int16", "alert": 0, "name":"PCS侧B相频率", "remark": "(1Hz)"}, + {"key": "0x0018", "datatype": "int16", "alert": 0, "name":"PCS侧C相频率", "remark": "(1Hz)"}, + {"key": "0x0019", "datatype": "int16", "alert": 0, "name":"PCS侧功率因数A", "remark": "(1)"}, + {"key": "0x001A", "datatype": "int16", "alert": 0, "name":"PCS侧功率因数B", "remark": "(1)"}, + {"key": "0x001B", "datatype": "int16", "alert": 0, "name":"PCS侧功率因数C", "remark": "(1)"}, + {"key": "0x001C", "datatype": "int16", "alert": 0, "name":"PCS侧相电流A", "remark": "(1A)"}, + {"key": "0x001D", "datatype": "int16", "alert": 0, "name":"PCS侧相电流B", "remark": "(1A)"}, + {"key": "0x001E", "datatype": "int16", "alert": 0, "name":"PCS侧相电流C", "remark": "(1A)"}, + {"key": "0x001F", "datatype": "int16", "alert": 0, "name":"PCS侧有功功率A", "remark": "(1kW)"}, + {"key": "0x0020", "datatype": "int16", "alert": 0, "name":"PCS侧有功功率B", "remark": "(1kW)"}, + {"key": "0x0021", "datatype": "int16", "alert": 0, "name":"PCS侧有功功率C", "remark": "(1kW)"}, + {"key": "0x0022", "datatype": "int16", "alert": 0, "name":"PCS侧无功功率A", "remark": "(1kVar)"}, + {"key": "0x0023", "datatype": "int16", "alert": 0, "name":"PCS侧无功功率B", "remark": "(1kVar)"}, + {"key": "0x0024", "datatype": "int16", "alert": 0, "name":"PCS侧无功功率C", "remark": "(1kVar)"}, + {"key": "0x0025", "datatype": "int16", "alert": 0, "name":"PCS侧视在功率A", "remark": "(1kVar)"}, + {"key": "0x0026", "datatype": "int16", "alert": 0, "name":"PCS侧视在功率B", "remark": "(1kVar)"}, + {"key": "0x0027", "datatype": "int16", "alert": 0, "name":"PCS侧视在功率C", "remark": "(1kVar)"}, + {"key": "0x0028", "datatype": "int16", "alert": 0, "name":"PCS侧三相总有功功率", "remark": "(1kW)"}, + {"key": "0x0029", "datatype": "int16", "alert": 0, "name":"PCS侧三相总无功功率", "remark": "(1kVar)"}, + {"key": "0x002A", "datatype": "int16", "alert": 0, "name":"PCS侧三相总视在功率", "remark": "(1kVA)"}, + {"key": "0x002B", "datatype": "int16", "alert": 0, "name":"PCS侧三相总功率因数", "remark": "(1)"}, + {"key": "0x002C", "datatype": "int16", "alert": 0, "name":"PCU模块温度", "remark": "(1℃)"}, + {"key": "0x002D", "datatype": "int16", "alert": 0, "name":"外部温度NTC1", "remark": "(1℃)"}, + {"key": "0x002E", "datatype": "int16", "alert": 0, "name":"外部温度NTC2", "remark": "(1℃)"}, + {"key": "0x002F", "datatype": "int16", "alert": 0, "name":"外部温度NTC3", "remark": "(1℃)"}, + {"key": "0x0030", "datatype": "int16", "alert": 0, "name":"台区负载侧A相电流", "remark": "(1A)"}, + {"key": "0x0031", "datatype": "int16", "alert": 0, "name":"台区负载侧B相电流", "remark": "(1A)"}, + {"key": "0x0032", "datatype": "int16", "alert": 0, "name":"台区负载侧C相电流", "remark": "(1A)"}, + {"key": "0x0033", "datatype": "int16", "alert": 0, "name":"台区负载侧A相有功功率", "remark": "(1kW)"}, + {"key": "0x0034", "datatype": "int16", "alert": 0, "name":"台区负载侧B相有功功率", "remark": "(1kW)"}, + {"key": "0x0035", "datatype": "int16", "alert": 0, "name":"台区负载侧C相有功功率", "remark": "(1kW)"}, + {"key": "0x0036", "datatype": "int16", "alert": 0, "name":"台区负载侧总有功功率", "remark": "(1kW)"}, + {"key": "0x0037", "datatype": "int16", "alert": 0, "name":"台区负载侧A相无功功率", "remark": "(1kVar)"}, + {"key": "0x0038", "datatype": "int16", "alert": 0, "name":"台区负载侧B相无功功率", "remark": "(1kVar)"}, + {"key": "0x0039", "datatype": "int16", "alert": 0, "name":"台区负载侧C相无功功率", "remark": "(1kVar)"}, + {"key": "0x003A", "datatype": "int16", "alert": 0, "name":"台区负载侧总无功功率", "remark": "(1kVar)"}, + {"key": "0x003B", "datatype": "int16", "alert": 0, "name":"台区负载侧A相视在功率", "remark": "(1kVA)"}, + {"key": "0x003C", "datatype": "int16", "alert": 0, "name":"台区负载侧B相视在功率", "remark": "(1kVA)"}, + {"key": "0x003D", "datatype": "int16", "alert": 0, "name":"台区负载侧C相视在功率", "remark": "(1kVA)"}, + {"key": "0x003E", "datatype": "int16", "alert": 0, "name":"台区负载侧总视在功率", "remark": "(1kVA)"}, + {"key": "0x003F", "datatype": "int16", "alert": 0, "name":"台区负载侧A相功率因数", "remark": "(1)"}, + {"key": "0x0040", "datatype": "int16", "alert": 0, "name":"台区负载侧B相功率因数", "remark": "(1)"}, + {"key": "0x0041", "datatype": "int16", "alert": 0, "name":"台区负载侧C相功率因数", "remark": "(1)"}, + {"key": "0x0042", "datatype": "int16", "alert": 0, "name":"台区负载侧总功率因数", "remark": "(1)"}, + {"key": "0x0043", "datatype": "int16", "alert": 0, "name":"负载侧线电压AB", "remark": "(1V)"}, + {"key": "0x0044", "datatype": "int16", "alert": 0, "name":"负载侧线电压BC", "remark": "(1V)"}, + {"key": "0x0045", "datatype": "int16", "alert": 0, "name":"负载侧线电压CA", "remark": "(1V)"}, + {"key": "0x0046", "datatype": "int16", "alert": 0, "name":"负载侧相电压AN", "remark": "(1V)"}, + {"key": "0x0047", "datatype": "int16", "alert": 0, "name":"负载侧相电压BN", "remark": "(1V)"}, + {"key": "0x0048", "datatype": "int16", "alert": 0, "name":"负载侧相电压CN", "remark": "(1V)"}, + {"key": "0x0049", "datatype": "int16", "alert": 0, "name":"负载侧A功率因素", "remark": "(1)"}, + {"key": "0x004A", "datatype": "int16", "alert": 0, "name":"负载侧B功率因素", "remark": "(1)"}, + {"key": "0x004B", "datatype": "int16", "alert": 0, "name":"负载侧C功率因素", "remark": "(1)"}, + {"key": "0x004C", "datatype": "int16", "alert": 0, "name":"负载侧A视在功率", "remark": "(1kVA)"}, + {"key": "0x004D", "datatype": "int16", "alert": 0, "name":"负载侧B视在功率", "remark": "(1kVA)"}, + {"key": "0x004E", "datatype": "int16", "alert": 0, "name":"负载侧C视在功率", "remark": "(1kVA)"} + ] + }, + "PCU_YX":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1~4"}, + {"key": "0x1002", "datatype": "uint16", "alert": 0, "name":"故障状态", "remark": "1故障,0正常"}, + {"key": "0x1003", "datatype": "uint16", "alert": 0, "name":"告警状态", "remark": "1告警,0正常"}, + {"key": "0x1004", "datatype": "uint16", "alert": 0, "name":"设备在线", "remark": "1在线,0无效"}, + {"key": "0x1005", "datatype": "uint16", "alert": 0, "name":"本地远程", "remark": "1本地,0远程"}, + {"key": "0x1006", "datatype": "uint16", "alert": 0, "name":"启停状态", "remark": "1开机,0关机"}, + {"key": "0x1007", "datatype": "uint16", "alert": 0, "name":"电网状态", "remark": "1离网,0并网"}, + {"key": "0x1008", "datatype": "uint16", "alert": 0, "name":"模块状态", "remark": "1开机,0待机"}, + {"key": "0x1009", "datatype": "uint16", "alert": 1, "name":"EPO急停", "remark": "1故障,0正常"}, + {"key": "0x100A", "datatype": "uint16", "alert": 1, "name":"防雷器异常", "remark": "1告警,0正常"}, + {"key": "0x100B", "datatype": "uint16", "alert": 1, "name":"负载电压反序", "remark": "1故障,0正常"}, + {"key": "0x100C", "datatype": "uint16", "alert": 1, "name":"市电电压反序", "remark": "1故障,0正常"}, + {"key": "0x100D", "datatype": "uint16", "alert": 1, "name":"输出相反序", "remark": "1故障,0正常"}, + {"key": "0x100E", "datatype": "uint16", "alert": 1, "name":"过载告警", "remark": "1告警,0正常"}, + {"key": "0x100F", "datatype": "uint16", "alert": 1, "name":"过载超时", "remark": "1故障,0正常"}, + {"key": "0x1010", "datatype": "uint16", "alert": 1, "name":"交流过流保护", "remark": "1故障,0正常"}, + {"key": "0x1011", "datatype": "uint16", "alert": 1, "name":"逆变电压异常", "remark": "1故障,0正常"}, + {"key": "0x1012", "datatype": "uint16", "alert": 1, "name":"内部串口异常", "remark": "1故障,0正常"}, + {"key": "0x1013", "datatype": "uint16", "alert": 1, "name":"485通信故障", "remark": "1故障,0正常"}, + {"key": "0x1014", "datatype": "uint16", "alert": 1, "name":"CAN通信故障", "remark": "1故障,0正常"}, + {"key": "0x1015", "datatype": "uint16", "alert": 1, "name":"E2PROM故障", "remark": "1故障,0正常"}, + {"key": "0x1016", "datatype": "uint16", "alert": 1, "name":"电网过压", "remark": "1故障,0正常"}, + {"key": "0x1017", "datatype": "uint16", "alert": 1, "name":"电网欠压", "remark": "1故障,0正常"}, + {"key": "0x1018", "datatype": "uint16", "alert": 1, "name":"电网过频", "remark": "1故障,0正常"}, + {"key": "0x1019", "datatype": "uint16", "alert": 1, "name":"电网欠频", "remark": "1故障,0正常"}, + {"key": "0x101A", "datatype": "uint16", "alert": 1, "name":"电网快检综合异常", "remark": "1故障,0正常"}, + {"key": "0x101B", "datatype": "uint16", "alert": 1, "name":"电网幅值快检异常", "remark": "1故障,0正常"}, + {"key": "0x101C", "datatype": "uint16", "alert": 1, "name":"电网拖尾异常", "remark": "1故障,0正常"}, + {"key": "0x101D", "datatype": "uint16", "alert": 0, "name":"消防输入信号NO", "remark": "1闭合,0断开"}, + {"key": "0x101E", "datatype": "uint16", "alert": 1, "name":"急停按钮信号NC", "remark": "1急停,0正常"}, + {"key": "0x101F", "datatype": "uint16", "alert": 1, "name":"避雷器NC", "remark": "1故障,0正常"}, + {"key": "0x1020", "datatype": "uint16", "alert": 1, "name":"避雷器断路器NC", "remark": "1故障,0正常"}, + {"key": "0x1021", "datatype": "uint16", "alert": 0, "name":"PCS总断路器NC", "remark": "1闭合,0断开"}, + {"key": "0x1022", "datatype": "uint16", "alert": 0, "name":"电操状态NO", "remark": "1闭合,0断开"}, + {"key": "0x1023", "datatype": "uint16", "alert": 0, "name":"远程关机NO", "remark": "1开机,0无效"}, + {"key": "0x1024", "datatype": "uint16", "alert": 0, "name":"远程开机NO", "remark": "1开机,0无效"}, + {"key": "0x1025", "datatype": "uint16", "alert": 0, "name":"BA故障信号NO", "remark": "1故障,0正常"}, + {"key": "0x1026", "datatype": "uint16", "alert": 0, "name":"PCS_01状态", "remark": "1在线,0掉线"}, + {"key": "0x1027", "datatype": "uint16", "alert": 0, "name":"PCS_02状态", "remark": "1在线,0掉线"}, + {"key": "0x1028", "datatype": "uint16", "alert": 0, "name":"PCS_03状态", "remark": "1在线,0掉线"}, + {"key": "0x1029", "datatype": "uint16", "alert": 0, "name":"PCS_04状态", "remark": "1在线,0掉线"}, + {"key": "0x102A", "datatype": "uint16", "alert": 0, "name":"PCS_05状态", "remark": "1在线,0掉线"}, + {"key": "0x102B", "datatype": "uint16", "alert": 0, "name":"PCS_06状态", "remark": "1在线,0掉线"}, + {"key": "0x102C", "datatype": "uint16", "alert": 0, "name":"PCS_07状态", "remark": "1在线,0掉线"}, + {"key": "0x102D", "datatype": "uint16", "alert": 0, "name":"PCS_09状态", "remark": "1在线,0掉线"}, + {"key": "0x102E", "datatype": "uint16", "alert": 0, "name":"PCS_10状态", "remark": "1在线,0掉线"}, + {"key": "0x102F", "datatype": "uint16", "alert": 1, "name":"PCS_01下发设置", "remark": "1故障,0正常"}, + {"key": "0x1030", "datatype": "uint16", "alert": 1, "name":"PCS_02下发设置", "remark": "1故障,0正常"}, + {"key": "0x1031", "datatype": "uint16", "alert": 1, "name":"PCS_03下发设置", "remark": "1故障,0正常"}, + {"key": "0x1032", "datatype": "uint16", "alert": 1, "name":"PCS_04下发设置", "remark": "1故障,0正常"}, + {"key": "0x1033", "datatype": "uint16", "alert": 1, "name":"PCS_05下发设置", "remark": "1故障,0正常"}, + {"key": "0x1034", "datatype": "uint16", "alert": 1, "name":"PCS_06下发设置", "remark": "1故障,0正常"}, + {"key": "0x1035", "datatype": "uint16", "alert": 1, "name":"PCS_07下发设置", "remark": "1故障,0正常"}, + {"key": "0x1036", "datatype": "uint16", "alert": 1, "name":"PCS_08下发设置", "remark": "1故障,0正常"}, + {"key": "0x1037", "datatype": "uint16", "alert": 1, "name":"PCS_09下发设置", "remark": "1故障,0正常"}, + {"key": "0x1038", "datatype": "uint16", "alert": 1, "name":"PCS_10下发设置", "remark": "1:故障,0正常"}, + {"key": "0x1039", "datatype": "uint16", "alert": 1, "name":"内部DSP通信故障", "remark": "1:故障,0正常"}, + {"key": "0x103A", "datatype": "uint16", "alert": 1, "name":"BMS CAN通信故障", "remark": "1:故障,0正常"}, + {"key": "0x103B", "datatype": "uint16", "alert": 1, "name":"下发设置失败", "remark": "1:故障,0正常"} + ] + }, + "PCS_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"所属主控号", "remark": "1~4"}, + {"key": "0x0002", "datatype": "uint16", "alert": 0, "name":"所属PCS号", "remark": "1~40"}, + {"key": "0x0003", "datatype": "uint32", "alert": 0, "name":"总充电量", "remark": "(1kWh)"}, + {"key": "0x0005", "datatype": "uint32", "alert": 0, "name":"总放电量", "remark": "(1kWh)"}, + {"key": "0x0007", "datatype": "int16", "alert": 0, "name":"散热器温度", "remark": "(1℃)"}, + {"key": "0x0008", "datatype": "int16", "alert": 0, "name":"内部温度", "remark": "(1℃)"}, + {"key": "0x0009", "datatype": "int16", "alert": 0, "name":"最大允许充电功率", "remark": "(0.1kW)"}, + {"key": "0x000A", "datatype": "int16", "alert": 0, "name":"最大允许放电功率", "remark": "(0.1kW)"}, + {"key": "0x000B", "datatype": "int16", "alert": 0, "name":"有功功率期望", "remark": "(1kWh)"}, + {"key": "0x000C", "datatype": "int16", "alert": 0, "name":"无功功率期望", "remark": "(1kVar)"}, + {"key": "0x000D", "datatype": "int16", "alert": 0, "name":"AB线电压", "remark": "(1V)"}, + {"key": "0x000E", "datatype": "int16", "alert": 0, "name":"BC线电压", "remark": "(1V)"}, + {"key": "0x000F", "datatype": "int16", "alert": 0, "name":"CA线电压", "remark": "(1V)"}, + {"key": "0x0010", "datatype": "int16", "alert": 0, "name":"A相电压", "remark": "(1V)"}, + {"key": "0x0011", "datatype": "int16", "alert": 0, "name":"B相电压", "remark": "(1V)"}, + {"key": "0x0012", "datatype": "int16", "alert": 0, "name":"C相电压", "remark": "(1V)"}, + {"key": "0x0013", "datatype": "int16", "alert": 0, "name":"A相频率", "remark": "(1Hz)"}, + {"key": "0x0014", "datatype": "int16", "alert": 0, "name":"B相频率", "remark": "(1Hz)"}, + {"key": "0x0015", "datatype": "int16", "alert": 0, "name":"C相频率", "remark": "(1Hz)"}, + {"key": "0x0016", "datatype": "int16", "alert": 0, "name":"A相功率因数", "remark": "(1)"}, + {"key": "0x0017", "datatype": "int16", "alert": 0, "name":"B相功率因数", "remark": "(1)"}, + {"key": "0x0018", "datatype": "int16", "alert": 0, "name":"C相功率因数", "remark": "(1)"}, + {"key": "0x0019", "datatype": "int16", "alert": 0, "name":"A相电流", "remark": "(1A)"}, + {"key": "0x001A", "datatype": "int16", "alert": 0, "name":"B相电流", "remark": "(1A)"}, + {"key": "0x001B", "datatype": "int16", "alert": 0, "name":"C相电流", "remark": "(1A)"}, + {"key": "0x001C", "datatype": "int16", "alert": 0, "name":"A相有功功率", "remark": "(1kW)"}, + {"key": "0x001D", "datatype": "int16", "alert": 0, "name":"B相有功功率", "remark": "(1kW)"}, + {"key": "0x001E", "datatype": "int16", "alert": 0, "name":"C相有功功率", "remark": "(1kW)"}, + {"key": "0x001F", "datatype": "int16", "alert": 0, "name":"A相无功功率", "remark": "(1kVar)"}, + {"key": "0x0020", "datatype": "int16", "alert": 0, "name":"B相无功功率", "remark": "(1kVar)"}, + {"key": "0x0021", "datatype": "int16", "alert": 0, "name":"C相无功功率", "remark": "(1kVar)"}, + {"key": "0x0022", "datatype": "int16", "alert": 0, "name":"A相视在功率", "remark": "(1kVA)"}, + {"key": "0x0023", "datatype": "int16", "alert": 0, "name":"B相视在功率", "remark": "(1kVA)"}, + {"key": "0x0024", "datatype": "int16", "alert": 0, "name":"C相视在功率", "remark": "(1kVA)"}, + {"key": "0x0025", "datatype": "int16", "alert": 0, "name":"三相总有功功率", "remark": "(1kW)"}, + {"key": "0x0026", "datatype": "int16", "alert": 0, "name":"三相总无功功率", "remark": "(1kVar)"}, + {"key": "0x0027", "datatype": "int16", "alert": 0, "name":"三相总视在功率", "remark": "(1kVA)"}, + {"key": "0x0028", "datatype": "int16", "alert": 0, "name":"三相总功率因数", "remark": "(1)"}, + {"key": "0x0029", "datatype": "int16", "alert": 0, "name":"直流功率", "remark": "(1kW)"}, + {"key": "0x002A", "datatype": "int16", "alert": 0, "name":"直流电压", "remark": "(1V)"}, + {"key": "0x002B", "datatype": "int16", "alert": 0, "name":"直流电流", "remark": "(1A)"}, + {"key": "0x002C", "datatype": "int16", "alert": 0, "name":"充电功率", "remark": "(1kW)"}, + {"key": "0x002D", "datatype": "int16", "alert": 0, "name":"放电功率", "remark": "(1kW)"}, + {"key": "0x002E", "datatype": "int16", "alert": 0, "name":"PF值", "remark": "(1)"}, + {"key": "0x002F", "datatype": "int16", "alert": 0, "name":"UV线/U相电网计量线电压", "remark": "(1V)"}, + {"key": "0x0030", "datatype": "int16", "alert": 0, "name":"VW线/V相电网计量线电压", "remark": "(1V)"}, + {"key": "0x0031", "datatype": "int16", "alert": 0, "name":"WU线/W相电网计量线电压", "remark": "(1V)"}, + {"key": "0x0032", "datatype": "int16", "alert": 0, "name":"U相电网计量电流", "remark": "(1A)"}, + {"key": "0x0033", "datatype": "int16", "alert": 0, "name":"V相电网计量电流", "remark": "(1A)"}, + {"key": "0x0034", "datatype": "int16", "alert": 0, "name":"W相电网计量电流", "remark": "(1A)"}, + {"key": "0x0035", "datatype": "int16", "alert": 0, "name":"正母线电压", "remark": "(1V)"}, + {"key": "0x0036", "datatype": "int16", "alert": 0, "name":"可用功率", "remark": "(1kVA)"}, + {"key": "0x0037", "datatype": "int16", "alert": 0, "name":"负母线电压", "remark": "(1V)"}, + {"key": "0x0038", "datatype": "int16", "alert": 0, "name":"A相IGBT温度", "remark": "(1℃)"}, + {"key": "0x0039", "datatype": "int16", "alert": 0, "name":"B相IGBT温度", "remark": "(1℃)"}, + {"key": "0x003A", "datatype": "int16", "alert": 0, "name":"C相IGBT温度", "remark": "(1℃)"}, + {"key": "0x003B", "datatype": "int16", "alert": 0, "name":"逆变侧AB线电压", "remark": "(1V)"}, + {"key": "0x003C", "datatype": "int16", "alert": 0, "name":"逆变侧BC线电压", "remark": "(1V)"}, + {"key": "0x003D", "datatype": "int16", "alert": 0, "name":"逆变侧CA线电压", "remark": "(1V)"}, + {"key": "0x003E", "datatype": "int16", "alert": 0, "name":"逆变侧A相电压", "remark": "(1V)"}, + {"key": "0x003F", "datatype": "int16", "alert": 0, "name":"逆变侧B相电压", "remark": "(1V)"}, + {"key": "0x0040", "datatype": "int16", "alert": 0, "name":"逆变侧C相电压", "remark": "(1V)"}, + {"key": "0x0041", "datatype": "int16", "alert": 0, "name":"逆变侧A相电流", "remark": "(1A)"}, + {"key": "0x0042", "datatype": "int16", "alert": 0, "name":"逆变侧B相电流", "remark": "(1A)"}, + {"key": "0x0043", "datatype": "int16", "alert": 0, "name":"逆变侧C相电流", "remark": "(1A)"}, + {"key": "0x0044", "datatype": "int16", "alert": 0, "name":"逆变侧A相电流直流分量", "remark": "(1A)"}, + {"key": "0x0045", "datatype": "int16", "alert": 0, "name":"逆变侧B相电流直流分量", "remark": "(1A)"}, + {"key": "0x0046", "datatype": "int16", "alert": 0, "name":"逆变侧C相电流直流分量", "remark": "(1A)"}, + {"key": "0x0047", "datatype": "int16", "alert": 0, "name":"离网频率", "remark": "(1Hz)"}, + {"key": "0x0048", "datatype": "int16", "alert": 0, "name":"A相负载量", "remark": "(1)"}, + {"key": "0x0049", "datatype": "int16", "alert": 0, "name":"B相负载量", "remark": "(1)"}, + {"key": "0x004A", "datatype": "int16", "alert": 0, "name":"C相负载量", "remark": "(1)"}, + {"key": "0x004B", "datatype": "int16", "alert": 0, "name":"总负载量", "remark": "(1)"}, + {"key": "0x004C", "datatype": "int16", "alert": 0, "name":"逆变侧AB线电压直流分量", "remark": "(1A)"}, + {"key": "0x004D", "datatype": "int16", "alert": 0, "name":"逆变侧BC线电压直流分量", "remark": "(1A)"}, + {"key": "0x004E", "datatype": "int16", "alert": 0, "name":"逆变侧CA线电压直流分量", "remark": "(1A)"}, + {"key": "0x004F", "datatype": "int16", "alert": 0, "name":"在线数量", "remark": ""}, + {"key": "0x0050", "datatype": "int16", "alert": 0, "name":"逆变数量", "remark": ""} + ] + }, + "PCS_YX":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "alert": 0, "name":"所属主控号", "remark": "1~4"}, + {"key": "0x1002", "datatype": "uint16", "alert": 0, "name":"所属PCS号", "remark": "1~40"}, + {"key": "0x1003", "datatype": "uint16", "alert": 0, "name":"故障状态", "remark": "1故障,0正常"}, + {"key": "0x1004", "datatype": "uint16", "alert": 0, "name":"告警状态", "remark": "1告警,0正常"}, + {"key": "0x1005", "datatype": "uint16", "alert": 0, "name":"设备在线", "remark": "1在线,0无效"}, + {"key": "0x1006", "datatype": "uint16", "alert": 0, "name":"禁止充电", "remark": "1禁止,0无效"}, + {"key": "0x1007", "datatype": "uint16", "alert": 0, "name":"禁止放电", "remark": "1禁止,0无效"}, + {"key": "0x1008", "datatype": "uint16", "alert": 0, "name":"运行状态", "remark": "1开机,0关机"}, + {"key": "0x1009", "datatype": "uint16", "alert": 0, "name":"充放状态", "remark": "0:待机,1:充电,2:放电,3:搁置"}, + {"key": "0x100A", "datatype": "uint16", "alert": 0, "name":"电网状态", "remark": "1离网,0并网"}, + {"key": "0x100B", "datatype": "uint16", "alert": 0, "name":"逆变供电", "remark": "0禁止,1使能"}, + {"key": "0x100C", "datatype": "uint16", "alert": 0, "name":"缓启动完成", "remark": "0禁止,1使能"}, + {"key": "0x100D", "datatype": "uint16", "alert": 0, "name":"主机标志", "remark": "0禁止,1使能"}, + {"key": "0x100E", "datatype": "uint16", "alert": 0, "name":"并离网状态", "remark": "0:并网, 1:离网"}, + {"key": "0x100F", "datatype": "uint16", "alert": 0, "name":"同步请求标志", "remark": "0:无效;1:动作"}, + {"key": "0x1010", "datatype": "uint16", "alert": 1, "name":"绝缘故障", "remark": "1:故障,0正常"}, + {"key": "0x1011", "datatype": "uint16", "alert": 1, "name":"漏电保护", "remark": "1:故障,0正常"}, + {"key": "0x1012", "datatype": "uint16", "alert": 1, "name":"直流过压", "remark": "1:故障,0正常"}, + {"key": "0x1013", "datatype": "uint16", "alert": 1, "name":"市电幅值异常", "remark": "1:故障,0正常"}, + {"key": "0x1014", "datatype": "uint16", "alert": 1, "name":"市电相序异常", "remark": "1:故障,0正常"}, + {"key": "0x1015", "datatype": "uint16", "alert": 1, "name":"温度开关异常", "remark": "1:故障,0正常"}, + {"key": "0x1016", "datatype": "uint16", "alert": 1, "name":"市电频率异常", "remark": "1:故障,0正常"}, + {"key": "0x1017", "datatype": "uint16", "alert": 1, "name":"IGBT过温", "remark": "1:故障,0正常"}, + {"key": "0x1018", "datatype": "uint16", "alert": 1, "name":"交流接地故障", "remark": "1:故障,0正常"}, + {"key": "0x1019", "datatype": "uint16", "alert": 1, "name":"逆变过流异常", "remark": "1:故障,0正常"}, + {"key": "0x101A", "datatype": "uint16", "alert": 1, "name":"直流缓起故障", "remark": "1:故障,0正常"}, + {"key": "0x101B", "datatype": "uint16", "alert": 1, "name":"直流主继电器故障", "remark": "1:故障,0正常"}, + {"key": "0x101C", "datatype": "uint16", "alert": 1, "name":"风机异常", "remark": "1:故障,0正常"}, + {"key": "0x101D", "datatype": "uint16", "alert": 1, "name":"主接触器异常", "remark": "1:故障,0正常"}, + {"key": "0x101E", "datatype": "uint16", "alert": 1, "name":"均浮充切换超时", "remark": "1:故障,0正常"}, + {"key": "0x101F", "datatype": "uint16", "alert": 1, "name":"硬件故障", "remark": "1:故障,0正常"}, + {"key": "0x1020", "datatype": "uint16", "alert": 1, "name":"机内过温", "remark": "1:故障,0正常"}, + {"key": "0x1021", "datatype": "uint16", "alert": 1, "name":"软启动故障", "remark": "1:故障,0正常"}, + {"key": "0x1022", "datatype": "uint16", "alert": 1, "name":"触摸屏通讯故障", "remark": "1:故障,0正常"}, + {"key": "0x1023", "datatype": "uint16", "alert": 1, "name":"防雷器故障", "remark": "1:故障,0正常"}, + {"key": "0x1024", "datatype": "uint16", "alert": 1, "name":"急停故障", "remark": "1:故障,0正常"}, + {"key": "0x1025", "datatype": "uint16", "alert": 1, "name":"BMS系统故障", "remark": "1:故障,0正常"}, + {"key": "0x1026", "datatype": "uint16", "alert": 1, "name":"BMS通讯故障", "remark": "1:故障,0正常"}, + {"key": "0x1027", "datatype": "uint16", "alert": 1, "name":"BMS干接点通讯故障", "remark": "1:故障,0正常"}, + {"key": "0x1028", "datatype": "uint16", "alert": 1, "name":"远程通讯故障", "remark": "1:故障,0正常"}, + {"key": "0x1029", "datatype": "uint16", "alert": 1, "name":"门禁告警", "remark": "1:故障,0正常"}, + {"key": "0x102A", "datatype": "uint16", "alert": 1, "name":"锁相异常", "remark": "1:故障,0正常"}, + {"key": "0x102B", "datatype": "uint16", "alert": 1, "name":"IGBT过温告警", "remark": "1:故障,0正常"}, + {"key": "0x102C", "datatype": "uint16", "alert": 1, "name":"硬件过流保护", "remark": "1:故障,0正常"}, + {"key": "0x102D", "datatype": "uint16", "alert": 1, "name":"驱动故障", "remark": "1:故障,0正常"}, + {"key": "0x102E", "datatype": "uint16", "alert": 1, "name":"ID冲突", "remark": "1:故障,0正常"}, + {"key": "0x102F", "datatype": "uint16", "alert": 1, "name":"电池过压", "remark": "1:故障,0正常"}, + {"key": "0x1030", "datatype": "uint16", "alert": 1, "name":"电池欠压", "remark": "1:故障,0正常"}, + {"key": "0x1031", "datatype": "uint16", "alert": 1, "name":"直流过流保护", "remark": "1:故障,0正常"}, + {"key": "0x1032", "datatype": "uint16", "alert": 1, "name":"输出电压异常", "remark": "1:故障,0正常"}, + {"key": "0x1033", "datatype": "uint16", "alert": 1, "name":"离网输出电压不符合", "remark": "1:故障,0正常"}, + {"key": "0x1034", "datatype": "uint16", "alert": 1, "name":"输出过载保护", "remark": "1:故障,0正常"}, + {"key": "0x1035", "datatype": "uint16", "alert": 1, "name":"输出短路保护", "remark": "1:故障,0正常"}, + {"key": "0x1036", "datatype": "uint16", "alert": 1, "name":"并机通信异常", "remark": "1:故障,0正常"}, + {"key": "0x1037", "datatype": "uint16", "alert": 1, "name":"电池保险异常", "remark": "1:故障,0正常"}, + {"key": "0x1038", "datatype": "uint16", "alert": 1, "name":"电池重载低压", "remark": "1:故障,0正常"}, + {"key": "0x1039", "datatype": "uint16", "alert": 1, "name":"电池低压告警", "remark": "1:故障,0正常"}, + {"key": "0x103A", "datatype": "uint16", "alert": 1, "name":"一拖二压差过大", "remark": "1:故障,0正常"}, + {"key": "0x103B", "datatype": "uint16", "alert": 1, "name":"电池反接故障", "remark": "1:故障,0正常"}, + {"key": "0x103C", "datatype": "uint16", "alert": 1, "name":"电池电压异常", "remark": "1:故障,0正常"}, + {"key": "0x103D", "datatype": "uint16", "alert": 1, "name":"过载告警", "remark": "1:故障,0正常"}, + {"key": "0x103E", "datatype": "uint16", "alert": 1, "name":"外部接触器异常", "remark": "1:故障,0正常"}, + {"key": "0x103F", "datatype": "uint16", "alert": 1, "name":"IGBT温度传感器异常", "remark": "1:故障,0正常"}, + {"key": "0x1040", "datatype": "uint16", "alert": 1, "name":"整机温度传感器异常", "remark": "1:故障,0正常"}, + {"key": "0x1041", "datatype": "uint16", "alert": 1, "name":"市电CT异常", "remark": "1:故障,0正常"}, + {"key": "0x1042", "datatype": "uint16", "alert": 1, "name":"逆变电流三相不平衡", "remark": "1:故障,0正常"}, + {"key": "0x1043", "datatype": "uint16", "alert": 1, "name":"逆变电流直流分量异常", "remark": "1:故障,0正常"}, + {"key": "0x1044", "datatype": "uint16", "alert": 1, "name":"母线不平衡", "remark": "1:故障,0正常"}, + {"key": "0x1045", "datatype": "uint16", "alert": 1, "name":"逆变电压直流分量异常", "remark": "1:故障,0正常"}, + {"key": "0x1046", "datatype": "uint16", "alert": 1, "name":"主接触器控制异常", "remark": "1:故障,0正常"}, + {"key": "0x1047", "datatype": "uint16", "alert": 1, "name":"逆变电压控制异常", "remark": "1:故障,0正常"}, + {"key": "0x1048", "datatype": "uint16", "alert": 1, "name":"直流霍尔异常", "remark": "1:故障,0正常"}, + {"key": "0x1049", "datatype": "uint16", "alert": 1, "name":"电池单体过压", "remark": "1:故障,0正常"}, + {"key": "0x104A", "datatype": "uint16", "alert": 1, "name":"电池单体欠压", "remark": "1:故障,0正常"}, + {"key": "0x104B", "datatype": "uint16", "alert": 1, "name":"电网过压", "remark": "1:故障,0正常"}, + {"key": "0x104C", "datatype": "uint16", "alert": 1, "name":"电网欠压", "remark": "1:故障,0正常"}, + {"key": "0x104D", "datatype": "uint16", "alert": 1, "name":"电网过频", "remark": "1:故障,0正常"}, + {"key": "0x104E", "datatype": "uint16", "alert": 1, "name":"电网欠频", "remark": "1:故障,0正常"}, + {"key": "0x104F", "datatype": "uint16", "alert": 1, "name":"市电不平衡", "remark": "1:故障,0正常"}, + {"key": "0x1050", "datatype": "uint16", "alert": 1, "name":"参数设置不匹配", "remark": "1:故障,0正常"}, + {"key": "0x1051", "datatype": "uint16", "alert": 1, "name":"SPI通信异常", "remark": "1:故障,0正常"}, + {"key": "0x1052", "datatype": "uint16", "alert": 1, "name":"SCI通信异常", "remark": "1:故障,0正常"}, + {"key": "0x1053", "datatype": "uint16", "alert": 1, "name":"IIC通信异常", "remark": "1:故障,0正常"}, + {"key": "0x1054", "datatype": "uint16", "alert": 1, "name":"Xintf通信异常", "remark": "1:故障,0正常"}, + {"key": "0x1055", "datatype": "uint16", "alert": 1, "name":"零偏校准异常", "remark": "1:故障,0正常"}, + {"key": "0x1056", "datatype": "uint16", "alert": 1, "name":"烟雾告警", "remark": "1:故障,0正常"}, + {"key": "0x1057", "datatype": "uint16", "alert": 1, "name":"无电池组故障", "remark": "1异常,0正常"}, + {"key": "0x1058", "datatype": "uint16", "alert": 1, "name":"环温降频", "remark": "1异常,0正常"}, + {"key": "0x1059", "datatype": "uint16", "alert": 1, "name":"交流过载", "remark": "1异常,0正常"}, + {"key": "0x105A", "datatype": "uint16", "alert": 1, "name":"采样异常", "remark": "1异常,0正常"}, + {"key": "0x105B", "datatype": "uint16", "alert": 1, "name":"24V辅源故障", "remark": "1异常,0正常"}, + {"key": "0x105C", "datatype": "uint16", "alert": 1, "name":"直流欠压异常", "remark": "1异常,0正常"}, + {"key": "0x105D", "datatype": "uint16", "alert": 1, "name":"散热器过温", "remark": "1异常,0正常"}, + {"key": "0x105E", "datatype": "uint16", "alert": 1, "name":"CAN配置故障", "remark": "1异常,0正常"}, + {"key": "0x105F", "datatype": "uint16", "alert": 1, "name":"3.3V辅源故障", "remark": "1异常,0正常"}, + {"key": "0x1060", "datatype": "uint16", "alert": 1, "name":"环境过温", "remark": "1异常,0正常"}, + {"key": "0x1061", "datatype": "uint16", "alert": 1, "name":"A相IGBT逆变过流", "remark": "1异常,0正常"}, + {"key": "0x1062", "datatype": "uint16", "alert": 1, "name":"B相IGBT逆变过流", "remark": "1异常,0正常"}, + {"key": "0x1063", "datatype": "uint16", "alert": 1, "name":"C相IGBT逆变过流", "remark": "1异常,0正常"} + ] + }, + "BMS_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"SOC", "remark": "(0.1)"}, + {"key": "0x0002", "datatype": "uint16", "alert": 0, "name":"SOH", "remark": "(0.1)"}, + {"key": "0x0003", "datatype": "uint32", "alert": 0, "name":"电压", "remark": "(0.1V)"}, + {"key": "0x0005", "datatype": "int32", "alert": 0, "name":"电流", "remark": "(0.1A)"}, + {"key": "0x0007", "datatype": "uint32", "alert": 0, "name":"可充电量", "remark": "(1kWh)"}, + {"key": "0x0009", "datatype": "uint32", "alert": 0, "name":"可放电量", "remark": "(1kWh)"}, + {"key": "0x000B", "datatype": "uint32", "alert": 0, "name":"单次可充电量", "remark": "(1kWh)"}, + {"key": "0x000D", "datatype": "uint32", "alert": 0, "name":"单次可放电量", "remark": "(1kWh)"}, + {"key": "0x000F", "datatype": "int32", "alert": 0, "name":"堆功率", "remark": "(1kW)"}, + {"key": "0x0011", "datatype": "uint32", "alert": 0, "name":"充电量累加", "remark": "(1kWh)"}, + {"key": "0x0013", "datatype": "uint32", "alert": 0, "name":"放电量累加", "remark": "(1kWh)"}, + {"key": "0x0015", "datatype": "uint16", "alert": 0, "name":"簇最大SOC", "remark": "(0.1)"}, + {"key": "0x0016", "datatype": "uint16", "alert": 0, "name":"簇最小SOC", "remark": "(0.1)"}, + {"key": "0x0017", "datatype": "uint16", "alert": 0, "name":"簇最大SOC号", "remark": ""}, + {"key": "0x0018", "datatype": "uint16", "alert": 0, "name":"簇最小SOC号", "remark": ""}, + {"key": "0x0019", "datatype": "uint16", "alert": 0, "name":"簇SOC差值", "remark": "(0.1)"}, + {"key": "0x001A", "datatype": "uint16", "alert": 0, "name":"簇最大电压", "remark": "(0.1V)"}, + {"key": "0x001B", "datatype": "uint16", "alert": 0, "name":"簇最小电压", "remark": "(0.1V)"}, + {"key": "0x001C", "datatype": "uint16", "alert": 0, "name":"簇最大电压号", "remark": ""}, + {"key": "0x001D", "datatype": "uint16", "alert": 0, "name":"簇最小电压号", "remark": ""}, + {"key": "0x001E", "datatype": "uint16", "alert": 0, "name":"簇电压差值", "remark": "(0.1V)"}, + {"key": "0x001F", "datatype": "uint16", "alert": 0, "name":"单体最大电压簇号", "remark": ""}, + {"key": "0x0020", "datatype": "uint16", "alert": 0, "name":"单体最大电压节号", "remark": ""}, + {"key": "0x0021", "datatype": "uint16", "alert": 0, "name":"单体最大电压", "remark": "(mV)"}, + {"key": "0x0022", "datatype": "uint16", "alert": 0, "name":"单体最小电压簇号", "remark": ""}, + {"key": "0x0023", "datatype": "uint16", "alert": 0, "name":"单体最小电压节号", "remark": ""}, + {"key": "0x0024", "datatype": "uint16", "alert": 0, "name":"单体最小电压", "remark": "(mV)"}, + {"key": "0x0025", "datatype": "uint16", "alert": 0, "name":"单体平均电压", "remark": "(mV)"}, + {"key": "0x0026", "datatype": "uint16", "alert": 0, "name":"单体电压差", "remark": "(mV)"}, + {"key": "0x0027", "datatype": "uint16", "alert": 0, "name":"单体最大温度簇号", "remark": ""}, + {"key": "0x0028", "datatype": "uint16", "alert": 0, "name":"单体最大温度节号", "remark": ""}, + {"key": "0x0029", "datatype": "int16", "alert": 0, "name":"单体最大温度", "remark": "(0.1℃)"}, + {"key": "0x002A", "datatype": "uint16", "alert": 0, "name":"单体最小温度簇号", "remark": ""}, + {"key": "0x002B", "datatype": "uint16", "alert": 0, "name":"单体最小温度节号", "remark": ""}, + {"key": "0x002C", "datatype": "int16", "alert": 0, "name":"单体最小温度", "remark": "(0.1℃)"}, + {"key": "0x002D", "datatype": "int16", "alert": 0, "name":"单体平均温度", "remark": "(0.1℃)"}, + {"key": "0x002E", "datatype": "int16", "alert": 0, "name":"单体温度差", "remark": "(0.1℃)"}, + {"key": "0x002F", "datatype": "uint16", "alert": 0, "name":"最大内阻簇号", "remark": ""}, + {"key": "0x0030", "datatype": "uint16", "alert": 0, "name":"最大内阻节号", "remark": ""}, + {"key": "0x0031", "datatype": "uint16", "alert": 0, "name":"最大内阻", "remark": "(mΩ)"}, + {"key": "0x0032", "datatype": "uint16", "alert": 0, "name":"最小内阻簇号", "remark": ""}, + {"key": "0x0033", "datatype": "uint16", "alert": 0, "name":"最小内阻节号", "remark": ""}, + {"key": "0x0034", "datatype": "uint16", "alert": 0, "name":"最小内阻", "remark": "(mΩ)"}, + {"key": "0x0035", "datatype": "uint16", "alert": 0, "name":"单体平均内阻", "remark": "(mΩ)"}, + {"key": "0x0036", "datatype": "uint16", "alert": 0, "name":"单体内阻差", "remark": "(mΩ)"}, + {"key": "0x0037", "datatype": "uint16", "alert": 0, "name":"单体最大SOH簇号", "remark": ""}, + {"key": "0x0038", "datatype": "uint16", "alert": 0, "name":"单体最大SOH节号", "remark": ""}, + {"key": "0x0039", "datatype": "uint16", "alert": 0, "name":"单体最大SOH", "remark": "(0.001)"}, + {"key": "0x003A", "datatype": "uint16", "alert": 0, "name":"单体最小SOH簇号", "remark": ""}, + {"key": "0x003B", "datatype": "uint16", "alert": 0, "name":"单体最小SOH节号", "remark": ""}, + {"key": "0x003C", "datatype": "uint16", "alert": 0, "name":"单体最小SOH", "remark": "(0.001)"}, + {"key": "0x003D", "datatype": "uint16", "alert": 0, "name":"单体最大SOc簇号", "remark": ""}, + {"key": "0x003E", "datatype": "uint16", "alert": 0, "name":"单体最大SOc节号", "remark": ""}, + {"key": "0x0040", "datatype": "uint16", "alert": 0, "name":"单体最大Soc", "remark": "(0.001)"}, + {"key": "0x0041", "datatype": "uint16", "alert": 0, "name":"单体最小SOc簇号", "remark": ""}, + {"key": "0x0042", "datatype": "uint16", "alert": 0, "name":"单体最小SOc节号", "remark": ""}, + {"key": "0x0043", "datatype": "uint16", "alert": 0, "name":"单体最小SOc", "remark": "(0.001)"}, + {"key": "0x0044", "datatype": "uint32", "alert": 0, "name":"系统剩余最大可充电功率", "remark": "(1KW)"}, + {"key": "0x0045", "datatype": "uint32", "alert": 0, "name":"系统剩余最大可放电功率", "remark": "(1KW)"}, + {"key": "0x0047", "datatype": "uint16", "alert": 0, "name":"可充电状态", "remark": ""}, + {"key": "0x0048", "datatype": "uint16", "alert": 0, "name":"可放电状态", "remark": ""}, + {"key": "0x0049", "datatype": "uint16", "alert": 0, "name":"运行状态", "remark": ""}, + {"key": "0x004A", "datatype": "uint16", "alert": 0, "name":"充放电状态", "remark": ""} + ] + }, + "BCU_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1~4"}, + {"key": "0x0002", "datatype": "uint16", "alert": 0, "name":"所属BCU号", "remark": "1~40"}, + {"key": "0x0003", "datatype": "uint32", "alert": 0, "name":"簇电压", "remark": "(0.1V)"}, + {"key": "0x0005", "datatype": "int32", "alert": 0, "name":"簇电流", "remark": "(0.1A)"}, + {"key": "0x0007", "datatype": "int32", "alert": 0, "name":"簇温度", "remark": "(0.1℃)"}, + {"key": "0x0009", "datatype": "uint32", "alert": 0, "name":"簇电阻", "remark": "(1mΩ)"}, + {"key": "0x000B", "datatype": "uint16", "alert": 0, "name":"簇SOC", "remark": "(0.1)"}, + {"key": "0x000C", "datatype": "uint16", "alert": 0, "name":"簇SOH", "remark": "(0.1)"}, + {"key": "0x000D", "datatype": "uint32", "alert": 0, "name":"簇正绝缘电阻", "remark": "(1kΩ)"}, + {"key": "0x000F", "datatype": "uint32", "alert": 0, "name":"簇负绝缘电阻", "remark": "(1kΩ)"}, + {"key": "0x0011", "datatype": "int32", "alert": 0, "name":"簇允许最大充电电流", "remark": "(0.1A)"}, + {"key": "0x0013", "datatype": "int32", "alert": 0, "name":"簇允许最大放电电流", "remark": "(0.1A)"}, + {"key": "0x0015", "datatype": "uint32", "alert": 0, "name":"簇允许最大充电功率", "remark": "(1kW)"}, + {"key": "0x0017", "datatype": "uint32", "alert": 0, "name":"簇允许最大放电功率", "remark": "(1kW)"}, + {"key": "0x0019", "datatype": "uint32", "alert": 0, "name":"簇可充容量", "remark": "(0.1Ah)"}, + {"key": "0x001B", "datatype": "uint32", "alert": 0, "name":"簇可放容量", "remark": "(0.1Ah)"}, + {"key": "0x001D", "datatype": "uint32", "alert": 0, "name":"簇单次累计充容量", "remark": "(0.1Ah)"}, + {"key": "0x001F", "datatype": "uint32", "alert": 0, "name":"簇单次累计放容量", "remark": "(0.1Ah)"}, + {"key": "0x0021", "datatype": "uint32", "alert": 0, "name":"簇总累计充容量", "remark": "(0.1Ah)"}, + {"key": "0x0023", "datatype": "uint32", "alert": 0, "name":"簇总累计放容量", "remark": "(0.1Ah)"}, + {"key": "0x0025", "datatype": "uint32", "alert": 0, "name":"簇可充电量", "remark": "(1kWh)"}, + {"key": "0x0027", "datatype": "uint32", "alert": 0, "name":"簇可放电量", "remark": "(1kWh)"}, + {"key": "0x0029", "datatype": "uint32", "alert": 0, "name":"簇单次充电量", "remark": "(1kWh)"}, + {"key": "0x002B", "datatype": "uint32", "alert": 0, "name":"簇单次放电量", "remark": "(1kWh)"}, + {"key": "0x002D", "datatype": "uint32", "alert": 0, "name":"簇累计充电量", "remark": "(1kWh)"}, + {"key": "0x002F", "datatype": "uint32", "alert": 0, "name":"簇累计放电量", "remark": "(1kWh)"}, + {"key": "0x0031", "datatype": "uint32", "alert": 0, "name":"pack累计簇总压", "remark": "(0.1V)"}, + {"key": "0x0033", "datatype": "uint32", "alert": 0, "name":"簇与pack压差", "remark": "(0.1V)"}, + {"key": "0x0035", "datatype": "uint32", "alert": 0, "name":"簇与PCS压差", "remark": "(0.1V)"}, + {"key": "0x0037", "datatype": "uint16", "alert": 0, "name":"簇中BMU个数", "remark": ""}, + {"key": "0x0038", "datatype": "uint16", "alert": 0, "name":"簇中BMU中单体个数", "remark": ""}, + {"key": "0x0039", "datatype": "uint16", "alert": 0, "name":"簇中BMU中温度个数", "remark": ""}, + {"key": "0x003A", "datatype": "uint16", "alert": 0, "name":"簇中单体个数", "remark": ""}, + {"key": "0x003B", "datatype": "uint16", "alert": 0, "name":"簇中温度个数", "remark": ""}, + {"key": "0x003C", "datatype": "uint16", "alert": 0, "name":"单体最高SOC节号", "remark": ""}, + {"key": "0x003D", "datatype": "uint16", "alert": 0, "name":"单体最高SOC", "remark": "(0.1)"}, + {"key": "0x003E", "datatype": "uint16", "alert": 0, "name":"单体最低SOC节号", "remark": ""}, + {"key": "0x003F", "datatype": "uint16", "alert": 0, "name":"单体最低SOC", "remark": "(0.1)"}, + {"key": "0x0040", "datatype": "uint16", "alert": 0, "name":"单体最高SOH节号", "remark": ""}, + {"key": "0x0041", "datatype": "uint16", "alert": 0, "name":"单体最高SOH", "remark": "(0.1)"}, + {"key": "0x0042", "datatype": "uint16", "alert": 0, "name":"单体最低SOH节号", "remark": ""}, + {"key": "0x0043", "datatype": "uint16", "alert": 0, "name":"单体最低SOH", "remark": "(0.1)"}, + {"key": "0x0044", "datatype": "uint16", "alert": 0, "name":"单体最高电压节号", "remark": ""}, + {"key": "0x0045", "datatype": "uint16", "alert": 0, "name":"单体最高电压", "remark": "(mV)"}, + {"key": "0x0046", "datatype": "uint16", "alert": 0, "name":"单体最低电压节号", "remark": ""}, + {"key": "0x0047", "datatype": "uint16", "alert": 0, "name":"单体最低电压", "remark": "(mV)"}, + {"key": "0x0048", "datatype": "uint16", "alert": 0, "name":"单体电压差", "remark": "(mV)"}, + {"key": "0x0049", "datatype": "uint16", "alert": 0, "name":"单体平均电压", "remark": "(mV)"}, + {"key": "0x004A", "datatype": "uint16", "alert": 0, "name":"单体最高温度节号", "remark": ""}, + {"key": "0x004B", "datatype": "int16", "alert": 0, "name":"单体最高温度", "remark": "(0.1℃)"}, + {"key": "0x004C", "datatype": "uint16", "alert": 0, "name":"单体最低温度节号", "remark": ""}, + {"key": "0x004D", "datatype": "int16", "alert": 0, "name":"单体最低温度", "remark": "(0.1℃)"}, + {"key": "0x004E", "datatype": "int16", "alert": 0, "name":"单体温度差", "remark": "(0.1℃)"}, + {"key": "0x004F", "datatype": "int16", "alert": 0, "name":"单体平均温度", "remark": "(0.1℃)"}, + {"key": "0x0050", "datatype": "uint16", "alert": 0, "name":"单体最高内阻节号", "remark": ""}, + {"key": "0x0051", "datatype": "uint16", "alert": 0, "name":"单体最高内阻", "remark": "(mΩ)"}, + {"key": "0x0052", "datatype": "uint16", "alert": 0, "name":"单体最低内阻节号", "remark": ""}, + {"key": "0x0053", "datatype": "uint16", "alert": 0, "name":"单体最低内阻", "remark": "(mΩ)"}, + {"key": "0x0054", "datatype": "uint16", "alert": 0, "name":"单体内阻差", "remark": "(mΩ)"}, + {"key": "0x0055", "datatype": "uint16", "alert": 0, "name":"单体平均内阻", "remark": "(mΩ)"} + ] + }, + "BCU_YX":{ + "addr":[ + {"key": "0xA001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1~4"}, + {"key": "0xA002", "datatype": "uint16", "alert": 0, "name":"所属BCU号", "remark": "1~40"}, + {"key": "0xA003", "datatype": "uint16", "alert": 0, "name":"蓄电池充放电状态", "remark": "0x11开路0x22待机0x33充电0x44放电"}, + {"key": "0xA004", "datatype": "uint16", "alert": 0, "name":"电池组运行状态", "remark": "0x11跳机 0x22待机 0x33放空 0x44充满 0x55预警 0x66正常"}, + {"key": "0xA005", "datatype": "uint16", "alert": 0, "name":"簇DO1状态", "remark": "1:断开 2:闭合"}, + {"key": "0xA006", "datatype": "uint16", "alert": 0, "name":"簇DO2状态", "remark": "1:断开 2:闭合"}, + {"key": "0xA007", "datatype": "uint16", "alert": 0, "name":"继电器总正", "remark": "0:断开 1:闭合 2:粘连"}, + {"key": "0xA008", "datatype": "uint16", "alert": 0, "name":"继电器总负", "remark": "0:断开 1:闭合 2:粘连"}, + {"key": "0xA009", "datatype": "uint16", "alert": 0, "name":"继电器预充", "remark": "0:断开 1:闭合 2:粘连"}, + {"key": "0xA00A", "datatype": "uint16", "alert": 0, "name":"继电器bmu供电", "remark": "0:断开 1:闭合 2:粘连"}, + {"key": "0xA00B", "datatype": "uint16", "alert": 1, "name":"整簇总电压过高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA00C", "datatype": "uint16", "alert": 1, "name":"整簇总电压过低告警", "remark": "0:正常 1:告警"}, + {"key": "0xA00D", "datatype": "uint16", "alert": 1, "name":"整簇中单体电压过高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA00E", "datatype": "uint16", "alert": 1, "name":"整簇中单体电压过低告警", "remark": "0:正常 1:告警"}, + {"key": "0xA00F", "datatype": "uint16", "alert": 1, "name":"整簇中单体电压偏差过大告警", "remark": "0:正常 1:告警"}, + {"key": "0xA010", "datatype": "uint16", "alert": 1, "name":"整簇中单体温度偏差过大告警", "remark": "0:正常 1:告警"}, + {"key": "0xA011", "datatype": "uint16", "alert": 1, "name":"整簇中单体温度过高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA012", "datatype": "uint16", "alert": 1, "name":"整簇中单体温度过低告警", "remark": "0:正常 1:告警"}, + {"key": "0xA013", "datatype": "uint16", "alert": 1, "name":"整簇总充电电流过高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA014", "datatype": "uint16", "alert": 1, "name":"整簇总放电电流过高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA015", "datatype": "uint16", "alert": 1, "name":"整簇总SOC过高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA016", "datatype": "uint16", "alert": 1, "name":"整簇总SOC过低告警", "remark": "0:正常 1:告警"}, + {"key": "0xA017", "datatype": "uint16", "alert": 1, "name":"高压盒主正接触器粘连告警", "remark": "0:正常 1:告警"}, + {"key": "0xA018", "datatype": "uint16", "alert": 1, "name":"高压盒主正接触器不能吸合告警", "remark": "0:正常 1:告警"}, + {"key": "0xA019", "datatype": "uint16", "alert": 1, "name":"高压盒主负接触器粘连告警", "remark": "0:正常 1:告警"}, + {"key": "0xA01A", "datatype": "uint16", "alert": 1, "name":"高压盒主负接触器不能吸合告警", "remark": "0:正常 1:告警"}, + {"key": "0xA01B", "datatype": "uint16", "alert": 1, "name":"高压盒预充接触器粘连告警", "remark": "0:正常 1:告警"}, + {"key": "0xA01C", "datatype": "uint16", "alert": 1, "name":"高压盒预充接触器不能吸合告警", "remark": "0:正常 1:告警"}, + {"key": "0xA01D", "datatype": "uint16", "alert": 1, "name":"预充失败告警", "remark": "0:正常 1:告警"}, + {"key": "0xA01E", "datatype": "uint16", "alert": 1, "name":"BCU电压检测模块出现问题告警", "remark": "0:正常 1:告警"}, + {"key": "0xA01F", "datatype": "uint16", "alert": 1, "name":"BCU温度检测模块出现问题告警", "remark": "0:正常 1:告警"}, + {"key": "0xA020", "datatype": "uint16", "alert": 1, "name":"BCU电流检测模块出现问题告警", "remark": "0:正常 1:告警"}, + {"key": "0xA021", "datatype": "uint16", "alert": 1, "name":"BCU绝缘检测模块出现问题告警", "remark": "0:正常 1:告警"}, + {"key": "0xA022", "datatype": "uint16", "alert": 1, "name":"高压盒内总压检测模块出现问题告警", "remark": "0:正常 1:告警"}, + {"key": "0xA023", "datatype": "uint16", "alert": 1, "name":"高压盒外总压检测模块出现问题告警", "remark": "0:正常 1:告警"}, + {"key": "0xA024", "datatype": "uint16", "alert": 1, "name":"PCS-CAN通信故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA025", "datatype": "uint16", "alert": 1, "name":"高压盒供电电压过高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA026", "datatype": "uint16", "alert": 1, "name":"绝缘正极故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA027", "datatype": "uint16", "alert": 1, "name":"绝缘负极故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA028", "datatype": "uint16", "alert": 1, "name":"绝缘中间侧故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA029", "datatype": "uint16", "alert": 1, "name":"绝缘故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA02A", "datatype": "uint16", "alert": 1, "name":"BMU中电压采样线开路告警", "remark": "0:正常 1:告警"}, + {"key": "0xA02B", "datatype": "uint16", "alert": 1, "name":"BMU中NTC采样线短开路告警", "remark": "0:正常 1:告警"}, + {"key": "0xA02C", "datatype": "uint16", "alert": 1, "name":"BMU中采样芯片故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA02D", "datatype": "uint16", "alert": 1, "name":"BMU中电池温度升高过快告警", "remark": "0:正常 1:告警"}, + {"key": "0xA02E", "datatype": "uint16", "alert": 1, "name":"BMU中电池内部短路告警", "remark": "0:正常 1:告警"}, + {"key": "0xA02F", "datatype": "uint16", "alert": 1, "name":"BMU充电均衡模块出现故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA030", "datatype": "uint16", "alert": 1, "name":"BMU放电均衡模块出现故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA031", "datatype": "uint16", "alert": 1, "name":"BMU通信故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA032", "datatype": "uint16", "alert": 1, "name":"单体内阻过大告警", "remark": "0:正常 1:告警"}, + {"key": "0xA033", "datatype": "uint16", "alert": 1, "name":"单体内阻过小告警", "remark": "0:正常 1:告警"}, + {"key": "0xA034", "datatype": "uint16", "alert": 1, "name":"单体内阻阻差过大告警", "remark": "0:正常 1:告警"}, + {"key": "0xA035", "datatype": "uint16", "alert": 1, "name":"簇内阻过大告警", "remark": "0:正常 1:告警"}, + {"key": "0xA036", "datatype": "uint16", "alert": 1, "name":"簇内阻过小告警", "remark": "0:正常 1:告警"}, + {"key": "0xA037", "datatype": "uint16", "alert": 1, "name":"SOC初始化无效告警", "remark": "0:正常 1:告警"}, + {"key": "0xA038", "datatype": "uint16", "alert": 1, "name":"充电时soc降低故障告警", "remark": "0:正常 1:告警"}, + {"key": "0xA039", "datatype": "uint16", "alert": 1, "name":"放电时soc升高告警", "remark": "0:正常 1:告警"}, + {"key": "0xA03A", "datatype": "uint16", "alert": 1, "name":"静止时SOC跳变告警", "remark": "0:正常 1:告警"}, + {"key": "0xA03B", "datatype": "uint16", "alert": 0, "name":"整簇总电压过高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA03C", "datatype": "uint16", "alert": 0, "name":"整簇总电压过低保护", "remark": "0:正常 1:保护"}, + {"key": "0xA03D", "datatype": "uint16", "alert": 0, "name":"整簇中单体电压过高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA03E", "datatype": "uint16", "alert": 0, "name":"整簇中单体电压过低保护", "remark": "0:正常 1:保护"}, + {"key": "0xA03F", "datatype": "uint16", "alert": 0, "name":"整簇中单体电压偏差过大保护", "remark": "0:正常 1:保护"}, + {"key": "0xA040", "datatype": "uint16", "alert": 0, "name":"整簇中单体温度偏差过大保护", "remark": "0:正常 1:保护"}, + {"key": "0xA041", "datatype": "uint16", "alert": 0, "name":"整簇中单体温度过高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA042", "datatype": "uint16", "alert": 0, "name":"整簇中单体温度过低保护", "remark": "0:正常 1:保护"}, + {"key": "0xA043", "datatype": "uint16", "alert": 0, "name":"整簇总充电电流过高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA044", "datatype": "uint16", "alert": 0, "name":"整簇总放电电流过高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA045", "datatype": "uint16", "alert": 0, "name":"整簇总SOC过高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA046", "datatype": "uint16", "alert": 0, "name":"整簇总SOC过低保护", "remark": "0:正常 1:保护"}, + {"key": "0xA047", "datatype": "uint16", "alert": 0, "name":"高压盒主正接触器粘连保护", "remark": "0:正常 1:保护"}, + {"key": "0xA048", "datatype": "uint16", "alert": 0, "name":"高压盒主正接触器不能吸合保护", "remark": "0:正常 1:保护"}, + {"key": "0xA049", "datatype": "uint16", "alert": 0, "name":"高压盒主负接触器粘连保护", "remark": "0:正常 1:保护"}, + {"key": "0xA04A", "datatype": "uint16", "alert": 0, "name":"高压盒主负接触器不能吸合保护", "remark": "0:正常 1:保护"}, + {"key": "0xA04B", "datatype": "uint16", "alert": 0, "name":"高压盒预充接触器粘连保护", "remark": "0:正常 1:保护"}, + {"key": "0xA04C", "datatype": "uint16", "alert": 0, "name":"高压盒预充接触器不能吸合保护", "remark": "0:正常 1:保护"}, + {"key": "0xA04D", "datatype": "uint16", "alert": 0, "name":"预充失败保护", "remark": "0:正常 1:保护"}, + {"key": "0xA04E", "datatype": "uint16", "alert": 0, "name":"BCU电压检测模块出现问题保护", "remark": "0:正常 1:保护"}, + {"key": "0xA04F", "datatype": "uint16", "alert": 0, "name":"BCU温度检测模块出现问题保护", "remark": "0:正常 1:保护"}, + {"key": "0xA050", "datatype": "uint16", "alert": 0, "name":"BCU电流检测模块出现问题保护", "remark": "0:正常 1:保护"}, + {"key": "0xA051", "datatype": "uint16", "alert": 0, "name":"BCU绝缘检测模块出现问题保护", "remark": "0:正常 1:保护"}, + {"key": "0xA052", "datatype": "uint16", "alert": 0, "name":"高压盒内总压检测模块出现问题保护", "remark": "0:正常 1:保护"}, + {"key": "0xA053", "datatype": "uint16", "alert": 0, "name":"高压盒外总压检测模块出现问题保护", "remark": "0:正常 1:保护"}, + {"key": "0xA054", "datatype": "uint16", "alert": 0, "name":"PCS-CAN通信故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA055", "datatype": "uint16", "alert": 0, "name":"高压盒供电电压过高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA056", "datatype": "uint16", "alert": 0, "name":"绝缘正极故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA057", "datatype": "uint16", "alert": 0, "name":"绝缘负极故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA058", "datatype": "uint16", "alert": 0, "name":"绝缘中间侧故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA059", "datatype": "uint16", "alert": 0, "name":"绝缘故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA05A", "datatype": "uint16", "alert": 0, "name":"BMU中电压采样线开路保护", "remark": "0:正常 1:保护"}, + {"key": "0xA05B", "datatype": "uint16", "alert": 0, "name":"BMU中NTC采样线短开路保护", "remark": "0:正常 1:保护"}, + {"key": "0xA05C", "datatype": "uint16", "alert": 0, "name":"BMU中采样芯片故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA05D", "datatype": "uint16", "alert": 0, "name":"BMU中电池温度升高过快保护", "remark": "0:正常 1:保护"}, + {"key": "0xA05E", "datatype": "uint16", "alert": 0, "name":"BMU中电池内部短路保护", "remark": "0:正常 1:保护"}, + {"key": "0xA05F", "datatype": "uint16", "alert": 0, "name":"BMU充电均衡模块出现故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA060", "datatype": "uint16", "alert": 0, "name":"BMU放电均衡模块出现故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA061", "datatype": "uint16", "alert": 0, "name":"BMU通信故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA062", "datatype": "uint16", "alert": 0, "name":"单体内阻过大保护", "remark": "0:正常 1:保护"}, + {"key": "0xA063", "datatype": "uint16", "alert": 0, "name":"单体内阻过小保护", "remark": "0:正常 1:保护"}, + {"key": "0xA064", "datatype": "uint16", "alert": 0, "name":"单体内阻阻差过大保护", "remark": "0:正常 1:保护"}, + {"key": "0xA065", "datatype": "uint16", "alert": 0, "name":"簇内阻过大保护", "remark": "0:正常 1:保护"}, + {"key": "0xA066", "datatype": "uint16", "alert": 0, "name":"簇内阻过小保护", "remark": "0:正常 1:保护"}, + {"key": "0xA067", "datatype": "uint16", "alert": 0, "name":"SOC初始化无效保护", "remark": "0:正常 1:保护"}, + {"key": "0xA068", "datatype": "uint16", "alert": 0, "name":"充电时soc降低故障保护", "remark": "0:正常 1:保护"}, + {"key": "0xA069", "datatype": "uint16", "alert": 0, "name":"放电时soc升高保护", "remark": "0:正常 1:保护"}, + {"key": "0xA06A", "datatype": "uint16", "alert": 0, "name":"静止时SOC跳变保护", "remark": "0:正常 1:保护"} + ] + }, + "MEM_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1"}, + {"key": "0x0008", "datatype": "uint16", "alert": 0, "name":"电表类型", "remark": "0:储能站总表1:逆变前侧电表2:逆变后侧电表3:配电柜电表4:并网口电表"}, + {"key": "0x0009", "datatype": "uint16", "alert": 0, "name":"电流变比", "remark": ""}, + {"key": "0x000A", "datatype": "uint16", "alert": 0, "name":"电压变比", "remark": ""}, + {"key": "0x000B", "datatype": "uint32", "alert": 0, "name":"A相电压", "remark": "(1V)"}, + {"key": "0x000D", "datatype": "uint32", "alert": 0, "name":"B相电压", "remark": "(1V)"}, + {"key": "0x000F", "datatype": "uint32", "alert": 0, "name":"C相电压", "remark": "(1V)"}, + {"key": "0x0011", "datatype": "int32", "alert": 0, "name":"A相电流", "remark": "(1A)"}, + {"key": "0x0013", "datatype": "int32", "alert": 0, "name":"B相电流", "remark": "(1A)"}, + {"key": "0x0015", "datatype": "int32", "alert": 0, "name":"C相电流", "remark": "(1A)"}, + {"key": "0x0017", "datatype": "uint32", "alert": 0, "name":"AB相电压", "remark": "(1V)"}, + {"key": "0x0019", "datatype": "uint32", "alert": 0, "name":"BC相电压", "remark": "(1V)"}, + {"key": "0x001B", "datatype": "uint32", "alert": 0, "name":"CA相电压", "remark": "(1V)"}, + {"key": "0x001D", "datatype": "int32", "alert": 0, "name":"A相有功", "remark": "(1kW)"}, + {"key": "0x001F", "datatype": "int32", "alert": 0, "name":"B相有功", "remark": "(1kW)"}, + {"key": "0x0021", "datatype": "int32", "alert": 0, "name":"C相有功", "remark": "(1kW)"}, + {"key": "0x0023", "datatype": "int32", "alert": 0, "name":"三相总有功", "remark": "(1kW)"}, + {"key": "0x0025", "datatype": "int32", "alert": 0, "name":"正向总有功总需量", "remark": "(1kW)"}, + {"key": "0x0027", "datatype": "uint32", "alert": 0, "name":"尖段电价", "remark": "(1RMB)"}, + {"key": "0x0029", "datatype": "uint32", "alert": 0, "name":"峰段电价", "remark": "(1RMB)"}, + {"key": "0x002B", "datatype": "uint32", "alert": 0, "name":"平段电价", "remark": "(1RMB)"}, + {"key": "0x002D", "datatype": "uint32", "alert": 0, "name":"谷段电价", "remark": "(1RMB)"}, + {"key": "0x002F", "datatype": "uint32", "alert": 0, "name":"日充电电量", "remark": "(1kWh)"}, + {"key": "0x0031", "datatype": "uint32", "alert": 0, "name":"日放电电量", "remark": "(1kWh)"}, + {"key": "0x0033", "datatype": "uint32", "alert": 0, "name":"日充电费用", "remark": "(1RMB)"}, + {"key": "0x0035", "datatype": "uint32", "alert": 0, "name":"日放电费用", "remark": "(1RMB)"}, + {"key": "0x0037", "datatype": "int32", "alert": 0, "name":"日收益", "remark": "(1RMB)"}, + {"key": "0x0039", "datatype": "uint32", "alert": 0, "name":"日正向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x003B", "datatype": "uint32", "alert": 0, "name":"日正向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x003D", "datatype": "uint32", "alert": 0, "name":"日正向平有功电能", "remark": "(1kWh)"}, + {"key": "0x003F", "datatype": "uint32", "alert": 0, "name":"日正向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x0041", "datatype": "uint32", "alert": 0, "name":"日正向总有功电能", "remark": "(1kWh)"}, + {"key": "0x0043", "datatype": "uint32", "alert": 0, "name":"日反向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x0045", "datatype": "uint32", "alert": 0, "name":"日反向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x0047", "datatype": "uint32", "alert": 0, "name":"日反向平有功电能", "remark": "(1kWh)"}, + {"key": "0x0049", "datatype": "uint32", "alert": 0, "name":"日反向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x004B", "datatype": "uint32", "alert": 0, "name":"日反向总有功电能", "remark": "(1kWh)"}, + {"key": "0x004D", "datatype": "uint32", "alert": 0, "name":"总充电电量", "remark": "(1kWh)"}, + {"key": "0x004F", "datatype": "uint32", "alert": 0, "name":"总放电电量", "remark": "(1kWh)"}, + {"key": "0x0051", "datatype": "uint32", "alert": 0, "name":"总充电费用", "remark": "(1RMB)"}, + {"key": "0x0053", "datatype": "uint32", "alert": 0, "name":"总放电费用", "remark": "(1RMB)"}, + {"key": "0x0055", "datatype": "int32", "alert": 0, "name":"总收益", "remark": "(1RMB)"}, + {"key": "0x0057", "datatype": "uint32", "alert": 0, "name":"总正向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x0059", "datatype": "uint32", "alert": 0, "name":"总正向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x005B", "datatype": "uint32", "alert": 0, "name":"总正向平有功电能", "remark": "(1kWh)"}, + {"key": "0x005D", "datatype": "uint32", "alert": 0, "name":"总正向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x005F", "datatype": "uint32", "alert": 0, "name":"总正向总有功电能", "remark": "(1kWh)"}, + {"key": "0x0061", "datatype": "uint32", "alert": 0, "name":"总反向尖有功电能", "remark": "(1kWh)"}, + {"key": "0x0063", "datatype": "uint32", "alert": 0, "name":"总反向峰有功电能", "remark": "(1kWh)"}, + {"key": "0x0065", "datatype": "uint32", "alert": 0, "name":"总反向平有功电能", "remark": "(1kWh)"}, + {"key": "0x0067", "datatype": "uint32", "alert": 0, "name":"总反向谷有功电能", "remark": "(1kWh)"}, + {"key": "0x0069", "datatype": "uint32", "alert": 0, "name":"总反向总有功电能", "remark": "(1kWh)"} + ] + }, + "TH_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1"}, + {"key": "0x0002", "datatype": "uint16", "alert": 0, "name":"所属温湿度号", "remark": "1~10"}, + {"key": "0x0003", "datatype": "int16", "alert": 0, "name":"温度", "remark": "(0.1℃)"}, + {"key": "0x0004", "datatype": "int16", "alert": 0, "name":"湿度", "remark": "(0.1℃)"} + ] + }, + "Fire40_YX":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1~10"}, + {"key": "0x0002", "datatype": "uint16", "alert": 0, "name":"主控数量", "remark": "1"}, + {"key": "0x0003", "datatype": "uint16", "alert": 0, "name":"主控ID", "remark": "1"}, + {"key": "0x0004", "datatype": "uint16", "alert": 0, "name":"主控状态", "remark": "0:正常 1:预警 2:火警"}, + {"key": "0x0005", "datatype": "uint16[2]", "alert": 0, "name":"主控硬件版本", "remark": "主控硬件版本"}, + {"key": "0x0007", "datatype": "uint16[2]", "alert": 0, "name":"主控软件版本", "remark": "主控软件版本"}, + {"key": "0x0009", "datatype": "uint16", "alert": 0, "name":"主电状态", "remark": "0:使用市电 1:使用备电"}, + {"key": "0x000A", "datatype": "uint32", "alert": 0, "name":"备电电流", "remark": "(0.1A)"}, + {"key": "0x000C", "datatype": "uint32", "alert": 0, "name":"备电电压", "remark": "(0.1V)"}, + {"key": "0x000E", "datatype": "uint32", "alert": 0, "name":"可用容量", "remark": "(0.01Ah)"}, + {"key": "0x0010", "datatype": "uint32", "alert": 0, "name":"可充放容量", "remark": "(0.01Ah)"}, + {"key": "0x0012", "datatype": "uint16", "alert": 0, "name":"警铃是否使用", "remark": ""}, + {"key": "0x0013", "datatype": "uint16", "alert": 0, "name":"警铃状态", "remark": "0:无效 1:掉线 2:正常 3:启动"}, + {"key": "0x0014", "datatype": "uint16", "alert": 0, "name":"瓶头阀是否使用", "remark": ""}, + {"key": "0x0015", "datatype": "uint16", "alert": 0, "name":"瓶头阀状态", "remark": "0:无效 1:掉线 2:正常 3:启动"}, + {"key": "0x0016", "datatype": "uint16", "alert": 0, "name":"手报是否使用", "remark": ""}, + {"key": "0x0017", "datatype": "uint16", "alert": 0, "name":"手报状态", "remark": "0:无效 1:掉线 2:正常 3:启动"}, + {"key": "0x0018", "datatype": "uint16", "alert": 0, "name":"簇控制器数量", "remark": ""}, + {"key": "0x0019", "datatype": "uint16", "alert": 0, "name":"复合探测器总数量", "remark": ""}, + {"key": "0x001A", "datatype": "uint16", "alert": 0, "name":"烟雾探测器总数量", "remark": ""}, + {"key": "0x001B", "datatype": "uint16", "alert": 0, "name":"压力探测器总数量", "remark": ""}, + {"key": "0x001C", "datatype": "uint16", "alert": 0, "name":"吸气式探测器总数量", "remark": ""}, + {"key": "0x001D", "datatype": "uint16", "alert": 0, "name":"PACK探测器总数量", "remark": ""}, + {"key": "0x001E", "datatype": "uint16", "alert": 0, "name":"电池总数量", "remark": ""} + ] + }, + "Cooling_YC":{ + "addr":[ + {"key": "0x0001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1"}, + {"key": "0x0002", "datatype": "uint16", "alert": 0, "name":"所属冷机号", "remark": "1~10"}, + {"key": "0x0003", "datatype": "int16", "alert": 0, "name":"制冷点", "remark": "(0.1℃)"}, + {"key": "0x0004", "datatype": "int16", "alert": 0, "name":"制冷偏差", "remark": "(0.1℃)"}, + {"key": "0x0005", "datatype": "int16", "alert": 0, "name":"高温告警值", "remark": "(0.1℃)"}, + {"key": "0x0006", "datatype": "int16", "alert": 0, "name":"低温告警值", "remark": "(0.1℃)"}, + {"key": "0x0007", "datatype": "int16", "alert": 0, "name":"制热点", "remark": "(0.1℃)"}, + {"key": "0x0008", "datatype": "int16", "alert": 0, "name":"制热偏差", "remark": "(0.1℃)"}, + {"key": "0x0009", "datatype": "int16", "alert": 0, "name":"电芯温度", "remark": "(0.1℃)"}, + {"key": "0x000A", "datatype": "int16", "alert": 0, "name":"环境湿度", "remark": "(0.1℃)"}, + {"key": "0x000B", "datatype": "int16", "alert": 0, "name":"吸气温度", "remark": "(0.1℃)"}, + {"key": "0x000C", "datatype": "int16", "alert": 0, "name":"排气温度", "remark": "(0.1℃)"}, + {"key": "0x000D", "datatype": "int16", "alert": 0, "name":"进水温度/供液温度", "remark": "(0.1℃)"}, + {"key": "0x000E", "datatype": "int16", "alert": 0, "name":"出水温度/回液温度", "remark": "(0.1℃)"}, + {"key": "0x000F", "datatype": "int16", "alert": 0, "name":"进水压力/供液压力", "remark": "(0.1)"}, + {"key": "0x0010", "datatype": "int16", "alert": 0, "name":"出水压力/回液压力", "remark": "(0.1)"}, + {"key": "0x0011", "datatype": "int16", "alert": 0, "name":"高压压力", "remark": "(0.1)"}, + {"key": "0x0012", "datatype": "int16", "alert": 0, "name":"低压压力", "remark": "(0.1)"}, + {"key": "0x0013", "datatype": "int16", "alert": 0, "name":"循环水泵转速", "remark": ""}, + {"key": "0x0014", "datatype": "int16", "alert": 0, "name":"压缩机频率", "remark": ""}, + {"key": "0x0015", "datatype": "int16", "alert": 0, "name":"室外风机转速", "remark": ""} + ] + }, + "Cooling_YX":{ + "addr":[ + {"key": "0x1001", "datatype": "uint16", "alert": 0, "name":"所属通道号", "remark": "1"}, + {"key": "0x1002", "datatype": "uint16", "alert": 0, "name":"所属冷机号", "remark": "1~10"}, + {"key": "0x1003", "datatype": "uint16", "alert": 0, "name":"开关", "remark": "0:关机,1:开机"}, + {"key": "0x1004", "datatype": "uint16", "alert": 0, "name":"采样模式", "remark": "(0-出水温度 1-电芯温度)"}, + {"key": "0x1005", "datatype": "uint16", "alert": 0, "name":"制冷状态", "remark": "0:关闭,1:启动"}, + {"key": "0x1006", "datatype": "uint16", "alert": 0, "name":"制热状态", "remark": "0:关闭,1:启动"}, + {"key": "0x1007", "datatype": "uint16", "alert": 0, "name":"高温告警", "remark": "0:正常,1:告警"}, + {"key": "0x1008", "datatype": "uint16", "alert": 0, "name":"低温告警", "remark": "0:正常,1:告警"}, + {"key": "0x1009", "datatype": "uint16", "alert": 0, "name":"高压告警", "remark": "0:正常,1:告警"}, + {"key": "0x100A", "datatype": "uint16", "alert": 0, "name":"低压告警", "remark": "0:正常,1:告警"}, + {"key": "0x100B", "datatype": "uint16", "alert": 0, "name":"进水温度传感器", "remark": "0:正常,1:告警"}, + {"key": "0x100C", "datatype": "uint16", "alert": 0, "name":"出水温度传感器", "remark": "0:正常,1:告警"}, + {"key": "0x100D", "datatype": "uint16", "alert": 0, "name":"进水压力传感器", "remark": "0:正常,1:告警"}, + {"key": "0x100E", "datatype": "uint16", "alert": 0, "name":"出水压力传感器", "remark": "0:正常,1:告警"} + ] + }, + "Gateway_YC":{ + "addr":[ + {"key": "40001", "datatype": "uint16", "alert": 0, "name":"模式", "remark": ""}, + {"key": "40002", "datatype": "uint16", "alert": 0, "name":"峰谷时间段", "remark": ""}, + {"key": "40021", "datatype": "uint16", "alert": 0, "name":"自定时间段", "remark": ""}, + {"key": "40038", "datatype": "uint16", "alert": 0, "name":"其他参数", "remark": ""} + ] + }, + "Gateway_YX":{ + "addr":[ + {"key": "cdz", "datatype": "uint16", "alert": 0, "name":"充电桩通讯状态", "remark": "1:在线,0:离线"}, + {"key": "emu", "datatype": "uint16", "alert": 0, "name":"储能通讯状态", "remark": "1:在线,0:离线"} + ] + }, + "Charger_YC":{ + "addr":[ + {"key": "11", "datatype": "uint16", "alert": 0, "name":"枪1:状态", "remark": ""}, + {"key": "12", "datatype": "uint16", "alert": 0, "name":"枪1:需求电压", "remark": ""}, + {"key": "13", "datatype": "uint16", "alert": 0, "name":"枪1:需求电流", "remark": ""}, + {"key": "14", "datatype": "uint16", "alert": 0, "name":"枪1:需求功率", "remark": ""}, + {"key": "15", "datatype": "uint16", "alert": 0, "name":"枪1:输出电压", "remark": ""}, + {"key": "16", "datatype": "uint16", "alert": 0, "name":"枪1:输出电流", "remark": ""}, + {"key": "17", "datatype": "uint16", "alert": 0, "name":"枪1:输出功率", "remark": ""}, + {"key": "18", "datatype": "uint16", "alert": 0, "name":"枪1:功率限值", "remark": ""}, + {"key": "21", "datatype": "uint16", "alert": 0, "name":"枪2:状态", "remark": ""}, + {"key": "22", "datatype": "uint16", "alert": 0, "name":"枪2:需求电压", "remark": ""}, + {"key": "23", "datatype": "uint16", "alert": 0, "name":"枪2:需求电流", "remark": ""}, + {"key": "24", "datatype": "uint16", "alert": 0, "name":"枪2:需求功率", "remark": ""}, + {"key": "25", "datatype": "uint16", "alert": 0, "name":"枪2:输出电压", "remark": ""}, + {"key": "26", "datatype": "uint16", "alert": 0, "name":"枪2:输出电流", "remark": ""}, + {"key": "27", "datatype": "uint16", "alert": 0, "name":"枪2:输出功率", "remark": ""}, + {"key": "28", "datatype": "uint16", "alert": 0, "name":"枪2:功率限值", "remark": ""} + ] + } +} \ No newline at end of file diff --git a/bin/Release/assets/config-online/regaddrsShow.json b/bin/Release/assets/config-online/regaddrsShow.json new file mode 100644 index 0000000..586322e --- /dev/null +++ b/bin/Release/assets/config-online/regaddrsShow.json @@ -0,0 +1,157 @@ +{ + "EMS":{ + "deviceType":101, + "addrYC":[ + ["A相电压", "0x107E", "0.0", " V", "1"], + ["A相电流", "0x1084", "0.0", " A"], + ["B相电压", "0x1080", "0.0", " V", "1"], + ["B相电流", "0x1086", "0.0", " A"], + ["C相电压", "0x1082", "0.0", " V", "1"], + ["C相电流", "0x1088", "0.0", " A"], + ["总有功功率", "0x1096", "0.0", " kW"] + + ], + "addrCurve": ["0x107E", "0x1084", "0x1096"] + }, + "PCS":{ + "deviceType":102, + "addrYC":[ + ["充放状态", "0x1009", "--", ""], + ["电网状态", "0x100A", "--", ""], + ["A相电压", "0x0010", "0.0", " V", "1"], + ["A相电流", "0x0019", "0.0", " A"], + ["B相电压", "0x0011", "0.0", " V", "1"], + ["B相电流", "0x001A", "0.0", " A"], + ["C相电压", "0x0011", "0.0", " V", "1"], + ["C相电流", "0x001B", "0.0", " A"], + ["总有功功率", "0x0025", "0.0", " kW"] + ], + "addrCurve": ["0x0010", "0x0019", "0x0025"] + }, + "PCU":{ + "deviceType":103, + "addrYC":[ + ["电网状态", "0x1007", "--", ""], + ["启停状态", "0x1006", "--", ""], + ["有功功率期望值","0x000E", "0.0", " KW"], + ["无功功率期望值","0x000F", "0.0", " kVar"], + ["A相电压", "0x0013", "0.0", " V", "1"], + ["A相电流", "0x001C", "0.0", " A"], + ["B相电压", "0x0014", "0.0", " V", "1"], + ["B相电流", "0x001D", "0.0", " A"], + ["C相电压", "0x0015", "0.0", " V", "1"], + ["C相电流", "0x001E", "0.0", " A"], + ["总有功功率", "0x0028", "0.0", " kW"] + ], + "addrCurve": ["0x0013", "0x001C", "0x0028"] + }, + "BMS":{ + "deviceType":104, + "addrYC":[ + ["充放状态", "0x004A", "--", ""], + ["堆功率", "0x000F", "0.0", " kW"], + ["SOC", "0x0001", "0", " %", "0.1"], + ["SOH", "0x0002", "0", " %", "0.1"], + ["电压", "0x0003", "0.0", " V", "0.1"], + ["电流", "0x0005", "0.0", " A", "0.1"], + ["单体最电压", "0x0021", "0.0", " V", "0.1"], + ["单体最小电压", "0x0024", "0.0", " V", "0.1"], + ["单体最大温度", "0x0029", "0.0", " ℃", "0.1"], + ["单体最小温度", "0x002C", "0.0", " ℃", "0.1"] + ], + "addrCurve": ["0x0003", "0x0005", ""] + }, + "BCU":{ + "deviceType":105, + "addrYC":[ + ["充放状态", "0xA003", "--", ""], + ["运行状态", "0xA004", "--", ""], + ["簇可充容量", "0x0019", "0.0", " Ah", "0.1"], + ["簇可放容量", "0x001B", "0.0", " Ah", "0.1"], + ["簇SOC", "0x000B", "0", " %", "0.1"], + ["簇SOH", "0x000C", "0", " %", "0.1"], + ["簇电压", "0x0003", "0.0", " V", "0.1"], + ["簇电流", "0x0005", "0", " A", "0.1"], + ["簇温度", "0x0007", "0.0", " ℃", "0.1"], + ["簇电阻", "0x0009", "0.0", " Ω"] + ], + "addrCurve": ["0x0003", "0x0005", ""] + }, + "MEM":{ + "deviceType":3, + "addrYC":[ + ["日充电电量", "0x002F", "0", " kWh"], + ["日放电电量", "0x0031", "0", " kWh"], + ["总充电电量", "0x004D", "0", " kWh"], + ["总放电电量", "0x004F", "0", " kWh"], + ["日充电费用", "0x0033", "0", " 元"], + ["日放电费用", "0x0035", "0", " 元"], + ["总充电费用", "0x0051", "0", " 元"], + ["总放电费用", "0x0053", "0", " 元"], + ["日收益", "0x0037", "0", " 元"], + ["总收益", "0x0055", "0", " 元"], + ["日正向尖电能", "0x0039", "0", " kWh"], + ["日正向峰电能", "0x003B", "0", " kWh"], + ["日正向平电能", "0x003D", "0", " kWh"], + ["日正向谷电能", "0x003F", "0", " kWh"], + ["日正向总电能", "0x0041", "0", " kWh"], + ["日反向尖电能", "0x0043", "0", " kWh"], + ["日反向峰电能", "0x0045", "0", " kWh"], + ["日反向平电能", "0x0047", "0", " kWh"], + ["日反向谷电能", "0x0049", "0", " kWh"], + ["日反向总电能", "0x004B", "0", " kWh"], + ["总正向尖电能", "0x0057", "0", " kWh"], + ["总正向峰电能", "0x0059", "0", " kWh"], + ["总正向平电能", "0x005B", "0", " kWh"], + ["总正向谷电能", "0x005D", "0", " kWh"], + ["总正向总电能", "0x005F", "0", " kWh"], + ["总反向尖电能", "0x0061", "0", " kWh"], + ["总反向峰电能", "0x0063", "0", " kWh"], + ["总反向平电能", "0x0065", "0", " kWh"], + ["总反向谷电能", "0x0067", "0", " kWh"], + ["总反向总电能", "0x0069", "0", " kWh"], + ["A相电压", "0x000B", "0.0", " V"], + ["A相电流", "0x0011", "0.0", " A"], + ["B相电压", "0x000D", "0.0", " V"], + ["B相电流", "0x0013", "0.0", " A"], + ["C相电压", "0x000F", "0.0", " V"], + ["C相电流", "0x0015", "0.0", " A"], + ["总有功总需量", "0x0025", "0.0", " kW"] + ], + "addrCurve": ["0x000B","0x0011","0x0023"] + }, + "TH": { + "deviceType":10, + "addrYC":[ + ["温度", "0x0003", "0.0", " ℃", "0.1"], + ["湿度", "0x0004", "0.0", " %", "0.1"] + ] + }, + "Cooling": { + "deviceType":14, + "addrYC":[ + ["开关", "0x1003", "0", "", "1"], + ["采样模式", "0x1004", "0", "", "1"], + ["制冷状态", "0x1005", "0", "", "1"], + ["制热状态", "0x1006", "0", "", "1"], + ["高温告警", "0x1007", "0", "", "1"], + ["低温告警", "0x1008", "0", "", "1"], + ["高压告警", "0x1009", "0", "", "1"], + ["低压告警", "0x100A", "0", "", "1"] + ] + }, + "Charger": { + "deviceType":106, + "addrYC":[ + ["工作状态", "11", "空闲", ""], + ["需求电压", "12", "0.0", " V", "0.1"], + ["需求电流", "13", "0.0", " A", "0.01"], + ["需求功率", "14", "0.0", " kW", "0.1"], + ["输出电压", "15", "0.0", " V", "0.1"], + ["输出电流", "16", "0.0", " A", "0.01"], + ["输出功率", "17", "0.0", " kW", "0.1"], + ["功率限值", "18", "0.0", " kW", "0.1"] + ], + "addrCurve": ["15", "16", "17"] + } +} \ No newline at end of file diff --git a/bin/Release/assets/config-online/registeraddrErr.json b/bin/Release/assets/config-online/registeraddrErr.json new file mode 100644 index 0000000..8a77108 --- /dev/null +++ b/bin/Release/assets/config-online/registeraddrErr.json @@ -0,0 +1,128 @@ +{ + "103":{ + "addr":[ + {"key": "0x1009", "datatype": "uint16", "remark": "EPO急停1故障,0正常"}, + {"key": "0x100A", "datatype": "uint16", "remark": "防雷器异常1告警,0正常"}, + {"key": "0x100B", "datatype": "uint16", "remark": "负载电压反序1故障,0正常"}, + {"key": "0x100C", "datatype": "uint16", "remark": "市电电压反序1故障,0正常"}, + {"key": "0x100D", "datatype": "uint16", "remark": "输出相反序1故障,0正常"}, + {"key": "0x100E", "datatype": "uint16", "remark": "过载告警1告警,0正常"}, + {"key": "0x100F", "datatype": "uint16", "remark": "过载超时1故障,0正常"}, + {"key": "0x1010", "datatype": "uint16", "remark": "交流过流保护1故障,0正常"}, + {"key": "0x1011", "datatype": "uint16", "remark": "逆变电压异常1故障,0正常"}, + {"key": "0x1012", "datatype": "uint16", "remark": "内部串口异常1故障,0正常"}, + {"key": "0x1013", "datatype": "uint16", "remark": "485通信故障1故障,0正常"}, + {"key": "0x1014", "datatype": "uint16", "remark": "CAN通信故障1故障,0正常"}, + {"key": "0x1015", "datatype": "uint16", "remark": "E2PROM故障1故障,0正常"}, + {"key": "0x1016", "datatype": "uint16", "remark": "电网过压1故障,0正常"}, + {"key": "0x1017", "datatype": "uint16", "remark": "电网欠压1故障,0正常"}, + {"key": "0x1018", "datatype": "uint16", "remark": "电网过频1故障,0正常"}, + {"key": "0x1019", "datatype": "uint16", "remark": "电网欠频1故障,0正常"}, + {"key": "0x101A", "datatype": "uint16", "remark": "电网快检综合异常1故障,0正常"}, + {"key": "0x101B", "datatype": "uint16", "remark": "电网幅值快检异常1故障,0正常"}, + {"key": "0x101C", "datatype": "uint16", "remark": "电网拖尾异常1故障,0正常"}, + {"key": "0x101E", "datatype": "uint16", "remark": "急停按钮信号NC1急停,0正常"}, + {"key": "0x101F", "datatype": "uint16", "remark": "避雷器NC1故障,0正常"}, + {"key": "0x1020", "datatype": "uint16", "remark": "避雷器断路器NC1故障,0正常"}, + {"key": "0x102F", "datatype": "uint16", "remark": "PCS_01下发设置1故障,0正常"}, + {"key": "0x1030", "datatype": "uint16", "remark": "PCS_02下发设置1故障,0正常"}, + {"key": "0x1031", "datatype": "uint16", "remark": "PCS_03下发设置1故障,0正常"}, + {"key": "0x1032", "datatype": "uint16", "remark": "PCS_04下发设置1故障,0正常"}, + {"key": "0x1033", "datatype": "uint16", "remark": "PCS_05下发设置1故障,0正常"}, + {"key": "0x1034", "datatype": "uint16", "remark": "PCS_06下发设置1故障,0正常"}, + {"key": "0x1035", "datatype": "uint16", "remark": "PCS_07下发设置1故障,0正常"}, + {"key": "0x1036", "datatype": "uint16", "remark": "PCS_08下发设置1故障,0正常"}, + {"key": "0x1037", "datatype": "uint16", "remark": "PCS_09下发设置1故障,0正常"}, + {"key": "0x1038", "datatype": "uint16", "remark": "PCS_10下发设置1:故障,0正常"}, + {"key": "0x1039", "datatype": "uint16", "remark": "内部DSP通信故障1:故障,0正常"}, + {"key": "0x103A", "datatype": "uint16", "remark": "BMS CAN通信故障1:故障,0正常"} + ] + }, + "104":{ + "addr":[ + {"key": "0x1010", "datatype": "uint16", "remark": "绝缘故障1:故障,0正常"}, + {"key": "0x1011", "datatype": "uint16", "remark": "漏电保护1:故障,0正常"}, + {"key": "0x1012", "datatype": "uint16", "remark": "直流过压1:故障,0正常"}, + {"key": "0x1013", "datatype": "uint16", "remark": "市电幅值异常1:故障,0正常"}, + {"key": "0x1014", "datatype": "uint16", "remark": "市电相序异常1:故障,0正常"}, + {"key": "0x1015", "datatype": "uint16", "remark": "温度开关异常1:故障,0正常"}, + {"key": "0x1016", "datatype": "uint16", "remark": "市电频率异常1:故障,0正常"}, + {"key": "0x1017", "datatype": "uint16", "remark": "IGBT过温1:故障,0正常"}, + {"key": "0x1018", "datatype": "uint16", "remark": "交流接地故障1:故障,0正常"}, + {"key": "0x1019", "datatype": "uint16", "remark": "逆变过流异常1:故障,0正常"}, + {"key": "0x101A", "datatype": "uint16", "remark": "直流缓起故障1:故障,0正常"}, + {"key": "0x101B", "datatype": "uint16", "remark": "直流主继电器故障1:故障,0正常"}, + {"key": "0x101C", "datatype": "uint16", "remark": "风机异常1:故障,0正常"}, + {"key": "0x101D", "datatype": "uint16", "remark": "主接触器异常1:故障,0正常"}, + {"key": "0x101E", "datatype": "uint16", "remark": "均浮充切换超时1:故障,0正常"}, + {"key": "0x101F", "datatype": "uint16", "remark": "硬件故障1:故障,0正常"}, + {"key": "0x1020", "datatype": "uint16", "remark": "机内过温1:故障,0正常"}, + {"key": "0x1021", "datatype": "uint16", "remark": "软启动故障1:故障,0正常"}, + {"key": "0x1022", "datatype": "uint16", "remark": "触摸屏通讯故障1:故障,0正常"}, + {"key": "0x1023", "datatype": "uint16", "remark": "防雷器故障1:故障,0正常"}, + {"key": "0x1024", "datatype": "uint16", "remark": "急停故障1:故障,0正常"}, + {"key": "0x1025", "datatype": "uint16", "remark": "BMS系统故障1:故障,0正常"}, + {"key": "0x1026", "datatype": "uint16", "remark": "BMS通讯故障1:故障,0正常"}, + {"key": "0x1027", "datatype": "uint16", "remark": "BMS干接点通讯故障1:故障,0正常"}, + {"key": "0x1028", "datatype": "uint16", "remark": "远程通讯故障1:故障,0正常"}, + {"key": "0x1029", "datatype": "uint16", "remark": "门禁告警1:故障,0正常"}, + {"key": "0x102A", "datatype": "uint16", "remark": "锁相异常1:故障,0正常"}, + {"key": "0x102B", "datatype": "uint16", "remark": "IGBT过温告警1:故障,0正常"}, + {"key": "0x102C", "datatype": "uint16", "remark": "硬件过流保护1:故障,0正常"}, + {"key": "0x102D", "datatype": "uint16", "remark": "驱动故障1:故障,0正常"}, + {"key": "0x102E", "datatype": "uint16", "remark": "ID冲突1:故障,0正常"}, + {"key": "0x102F", "datatype": "uint16", "remark": "电池过压1:故障,0正常"}, + {"key": "0x1030", "datatype": "uint16", "remark": "电池欠压1:故障,0正常"}, + {"key": "0x1031", "datatype": "uint16", "remark": "直流过流保护1:故障,0正常"}, + {"key": "0x1032", "datatype": "uint16", "remark": "输出电压异常1:故障,0正常"}, + {"key": "0x1033", "datatype": "uint16", "remark": "离网输出电压不符合1:故障,0正常"}, + {"key": "0x1034", "datatype": "uint16", "remark": "输出过载保护1:故障,0正常"}, + {"key": "0x1035", "datatype": "uint16", "remark": "输出短路保护1:故障,0正常"}, + {"key": "0x1036", "datatype": "uint16", "remark": "并机通信异常1:故障,0正常"}, + {"key": "0x1037", "datatype": "uint16", "remark": "电池保险异常1:故障,0正常"}, + {"key": "0x1038", "datatype": "uint16", "remark": "电池重载低压1:故障,0正常"}, + {"key": "0x1039", "datatype": "uint16", "remark": "电池低压告警1:故障,0正常"}, + {"key": "0x103A", "datatype": "uint16", "remark": "一拖二压差过大1:故障,0正常"}, + {"key": "0x103B", "datatype": "uint16", "remark": "电池反接故障1:故障,0正常"}, + {"key": "0x103C", "datatype": "uint16", "remark": "电池电压异常1:故障,0正常"}, + {"key": "0x103D", "datatype": "uint16", "remark": "过载告警1:故障,0正常"}, + {"key": "0x103E", "datatype": "uint16", "remark": "外部接触器异常1:故障,0正常"}, + {"key": "0x103F", "datatype": "uint16", "remark": "IGBT温度传感器异常1:故障,0正常"}, + {"key": "0x1040", "datatype": "uint16", "remark": "整机温度传感器异常1:故障,0正常"}, + {"key": "0x1041", "datatype": "uint16", "remark": "市电CT异常1:故障,0正常"}, + {"key": "0x1042", "datatype": "uint16", "remark": "逆变电流三相不平衡1:故障,0正常"}, + {"key": "0x1043", "datatype": "uint16", "remark": "逆变电流直流分量异常1:故障,0正常"}, + {"key": "0x1044", "datatype": "uint16", "remark": "母线不平衡1:故障,0正常"}, + {"key": "0x1045", "datatype": "uint16", "remark": "逆变电压直流分量异常1:故障,0正常"}, + {"key": "0x1046", "datatype": "uint16", "remark": "主接触器控制异常1:故障,0正常"}, + {"key": "0x1047", "datatype": "uint16", "remark": "逆变电压控制异常1:故障,0正常"}, + {"key": "0x1048", "datatype": "uint16", "remark": "直流霍尔异常1:故障,0正常"}, + {"key": "0x1049", "datatype": "uint16", "remark": "电池单体过压1:故障,0正常"}, + {"key": "0x104A", "datatype": "uint16", "remark": "电池单体欠压1:故障,0正常"}, + {"key": "0x104B", "datatype": "uint16", "remark": "电网过压1:故障,0正常"}, + {"key": "0x104C", "datatype": "uint16", "remark": "电网欠压1:故障,0正常"}, + {"key": "0x104D", "datatype": "uint16", "remark": "电网过频1:故障,0正常"}, + {"key": "0x104E", "datatype": "uint16", "remark": "电网欠频1:故障,0正常"}, + {"key": "0x104F", "datatype": "uint16", "remark": "市电不平衡1:故障,0正常"}, + {"key": "0x1050", "datatype": "uint16", "remark": "参数设置不匹配1:故障,0正常"}, + {"key": "0x1051", "datatype": "uint16", "remark": "SPI通信异常1:故障,0正常"}, + {"key": "0x1052", "datatype": "uint16", "remark": "SCI通信异常1:故障,0正常"}, + {"key": "0x1053", "datatype": "uint16", "remark": "IIC通信异常1:故障,0正常"}, + {"key": "0x1054", "datatype": "uint16", "remark": "Xintf通信异常1:故障,0正常"}, + {"key": "0x1055", "datatype": "uint16", "remark": "零偏校准异常1:故障,0正常"}, + {"key": "0x1056", "datatype": "uint16", "remark": "烟雾告警1:故障,0正常"}, + {"key": "0x1057", "datatype": "uint16", "remark": "无电池组故障1异常,0正常"}, + {"key": "0x1058", "datatype": "uint16", "remark": "环温降频1异常,0正常"}, + {"key": "0x1059", "datatype": "uint16", "remark": "交流过载1异常,0正常"}, + {"key": "0x105A", "datatype": "uint16", "remark": "采样异常1异常,0正常"}, + {"key": "0x105B", "datatype": "uint16", "remark": "24V辅源故障1异常,0正常"}, + {"key": "0x105C", "datatype": "uint16", "remark": "直流欠压异常1异常,0正常"}, + {"key": "0x105D", "datatype": "uint16", "remark": "散热器过温1异常,0正常"}, + {"key": "0x105E", "datatype": "uint16", "remark": "CAN配置故障1异常,0正常"}, + {"key": "0x105F", "datatype": "uint16", "remark": "3.3V辅源故障1异常,0正常"}, + {"key": "0x1060", "datatype": "uint16", "remark": "环境过温1异常,0正常"}, + {"key": "0x1061", "datatype": "uint16", "remark": "A相IGBT逆变过流1异常,0正常"}, + {"key": "0x1062", "datatype": "uint16", "remark": "B相IGBT逆变过流1异常,0正常"} + ] + } +} \ No newline at end of file diff --git a/bin/Release/assets/config-online/registeraddrs.bak.py b/bin/Release/assets/config-online/registeraddrs.bak.py new file mode 100644 index 0000000..53eebb2 --- /dev/null +++ b/bin/Release/assets/config-online/registeraddrs.bak.py @@ -0,0 +1,77 @@ +import re +import json + +def parse_datatype(text): + datatypes = ["int16", "uint16", "int32", "uint32", "int64", "uint64"] + for index, datatype in enumerate(datatypes): + left, separator, right = text.partition(datatype) + if len(separator) != 0: + return datatype, left + right + return "", text + + +def parse_from_file(filename): + data = "" + with open(filename, "r", encoding='utf-8') as f: # 打开文件 + linedata = "" + for line in f: # 行遍历 + line = line.strip() + #linedata = f.readline() # 读取文件的一行 + flag = bool(re.search(r'0x[0-9A-Fa-f]{4}', line)) + linedata += line.strip() + if flag: + # print(linedata) + # left, separator, right = linedata.partition("0x") + parts = re.split(r'(0x[0-9A-Fa-f]{4})', linedata) + linedata = "" + + key = parts[1] + datatype, remark = parse_datatype(parts[0].strip()) + remark = remark.replace("\t", " ").replace("\"", "") + + item = {} + item["key"] = key + item["datatype"] = datatype + item["remark"] = remark + + if len(data) > 0: + data += ",\n" + data += ("\t\t\t" + json.dumps(item, ensure_ascii=False)) + return data + + +addritems = {} +addritems["EMS_YT"] = ["EMS遥调.txt", 1] +addritems["BCU_YX"] = ["BCU电池簇遥信.txt", 1] +addritems["BCU_YC"] = ["BCU电池簇遥测.txt", 1] +addritems["BMS_YC"] = ["BMS电池堆遥测.txt", 1] +addritems["EMS_YX"] = ["EMS遥信.txt", 1] +addritems["EMS_YC"] = ["EMS遥测.txt", 1] +addritems["EMS_YT"] = ["EMS遥调.txt", 1] +addritems["PCS_YX"] = ["PCS遥信.txt", 1] +addritems["PCS_YC"] = ["PCS遥测.txt", 1] +addritems["PCU_YX"] = ["PCU遥信.txt", 1] +addritems["PCU_YC"] = ["PCU遥测.txt", 1] +addritems["MEM_YC"] = ["多功能电表遥测.txt", 1] +addritems["TH_YC"] = ["温湿度状态遥测.txt", 1] +addritems["Fire40_YX"] = ["消防4.0遥信.txt", 1] +addritems["Cooling_YX"] = ["冷机遥信.txt", 1] +addritems["Cooling_YC"] = ["冷机遥测.txt", 1] + + +with open('registeraddr.json', 'w', encoding='utf-8') as f: + f.write("{") + index = 0 + for key in addritems: + filename = addritems[key][0] + count = addritems[key][1] + print("parse: ", key, filename) + data = parse_from_file(filename) + if len(data) > 0: + data = "\n" + data + "\n\t" + if index != 0: + f.write(",") + f.write("\n\t\"" + key + "\": {\n\t\t\"count\":" + str(count) + ",\n\t\t\"addr\":[" + data + "\t]\n\t}") + index+=1 + f.write("\n}") + diff --git a/bin/Release/assets/config/EMU对外通信点表最终修改1版_v9.xlsx b/bin/Release/assets/config/EMU对外通信点表最终修改1版_v9.xlsx index 097244b994206aa42f6abfc0ecba4acc7816de95..848f7b3710a1372481aeba1269d90306a658fb55 100644 GIT binary patch delta 141761 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 z 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 z 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 diff --git a/bin/Release/assets/config/app.json b/bin/Release/assets/config/app.json index 9096e24..8b270a7 100644 --- a/bin/Release/assets/config/app.json +++ b/bin/Release/assets/config/app.json @@ -6,7 +6,7 @@ "exportpath": "D:/Programs/openresty-1.27.1.1-win64/zdownload", "database": {"host": "localhost", "port": 3306, "user": "root", "passwd": "123456", "dbname": "ess"}, "http": {"token":0, "port": 19801, "encryption":0, "encryptKey":""}, - "mqtt": {"host":"mqtt://118.195.161.113:8883","username":"admin","password":"jsyh@2025", "interval": 120}, + "mqtt": {"host":"mqtt://118.195.161.113:8883","username":"admin","password":"jsyh@2025", "interval": 0}, "topic": { "EMS_YX": {"deviceType":101, "polling":0, "enabled": 1}, "EMS_YC": {"deviceType":101, "polling":0, "enabled": 1}, @@ -32,5 +32,5 @@ "video": { "1":{"host":"", "port":9000, "user":"", "passwd":""} }, - "statistics": {"enabled": 1, "interval": 120} + "statistics": {"enabled": 1, "interval": 60} } \ No newline at end of file diff --git a/bin/Release/assets/config/regaddrsShow.json b/bin/Release/assets/config/regaddrsShow.json index 868671d..586322e 100644 --- a/bin/Release/assets/config/regaddrsShow.json +++ b/bin/Release/assets/config/regaddrsShow.json @@ -18,8 +18,6 @@ "addrYC":[ ["充放状态", "0x1009", "--", ""], ["电网状态", "0x100A", "--", ""], - ["总充电量", "0x0003", "0.0", " kWh"], - ["总放电量", "0x0005", "0.0", " kWh"], ["A相电压", "0x0010", "0.0", " V", "1"], ["A相电流", "0x0019", "0.0", " A"], ["B相电压", "0x0011", "0.0", " V", "1"], @@ -34,11 +32,9 @@ "deviceType":103, "addrYC":[ ["电网状态", "0x1007", "--", ""], - ["模块状态", "0x1008", "--", ""], - ["日充电量", "0x0006", "0.0", " kWh"], - ["日放电量", "0x0008", "0.0", " kWh"], - ["总充电量", "0x000A", "0.0", " kWh"], - ["总放电量", "0x000C", "0.0", " kWh"], + ["启停状态", "0x1006", "--", ""], + ["有功功率期望值","0x000E", "0.0", " KW"], + ["无功功率期望值","0x000F", "0.0", " kVar"], ["A相电压", "0x0013", "0.0", " V", "1"], ["A相电流", "0x001C", "0.0", " A"], ["B相电压", "0x0014", "0.0", " V", "1"], @@ -94,11 +90,31 @@ ["总放电费用", "0x0053", "0", " 元"], ["日收益", "0x0037", "0", " 元"], ["总收益", "0x0055", "0", " 元"], + ["日正向尖电能", "0x0039", "0", " kWh"], + ["日正向峰电能", "0x003B", "0", " kWh"], + ["日正向平电能", "0x003D", "0", " kWh"], + ["日正向谷电能", "0x003F", "0", " kWh"], + ["日正向总电能", "0x0041", "0", " kWh"], + ["日反向尖电能", "0x0043", "0", " kWh"], + ["日反向峰电能", "0x0045", "0", " kWh"], + ["日反向平电能", "0x0047", "0", " kWh"], + ["日反向谷电能", "0x0049", "0", " kWh"], + ["日反向总电能", "0x004B", "0", " kWh"], + ["总正向尖电能", "0x0057", "0", " kWh"], + ["总正向峰电能", "0x0059", "0", " kWh"], + ["总正向平电能", "0x005B", "0", " kWh"], + ["总正向谷电能", "0x005D", "0", " kWh"], + ["总正向总电能", "0x005F", "0", " kWh"], + ["总反向尖电能", "0x0061", "0", " kWh"], + ["总反向峰电能", "0x0063", "0", " kWh"], + ["总反向平电能", "0x0065", "0", " kWh"], + ["总反向谷电能", "0x0067", "0", " kWh"], + ["总反向总电能", "0x0069", "0", " kWh"], ["A相电压", "0x000B", "0.0", " V"], - ["A相电流", "0x000D", "0.0", " A"], - ["B相电压", "0x000F", "0.0", " V"], - ["B相电流", "0x0011", "0.0", " A"], - ["C相电压", "0x0013", "0.0", " V"], + ["A相电流", "0x0011", "0.0", " A"], + ["B相电压", "0x000D", "0.0", " V"], + ["B相电流", "0x0013", "0.0", " A"], + ["C相电压", "0x000F", "0.0", " V"], ["C相电流", "0x0015", "0.0", " A"], ["总有功总需量", "0x0025", "0.0", " kW"] ], diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7026dc2..e02cac7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -87,6 +87,7 @@ ADD_SOURCE_GROUP(protocol) #ADD_SOURCE_GROUP(pv) #ADD_SOURCE_GROUP(pv/pages) ADD_SOURCE_GROUP(qt) +ADD_SOURCE_GROUP(qt/widgets) set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../bin) add_executable(${PROJECT_NAME} ${SOURCE_FILE} "resource.rc") diff --git a/src/app/AppData.cpp b/src/app/AppData.cpp index 509d23d..29c3b92 100644 --- a/src/app/AppData.cpp +++ b/src/app/AppData.cpp @@ -195,19 +195,17 @@ bool AppData::initFromDB() auto station = this->getStation(stationId); if (station) { - station->storageIn = fields.get(DMStatStation::STORAGE_ELECT_IN); - station->storageOut = fields.get(DMStatStation::STORAGE_ELECT_OUT); + //station->storageIn = fields.get(DMStatStation::STORAGE_ELECT_IN); + //station->storageOut = fields.get(DMStatStation::STORAGE_ELECT_OUT); //station->storageNumIn = fields.getFloat(DMStatStation::STORAGE_NUM); //station->storageNumOut = fields.getFloat(DMStatStation::STORAGE_NUM); - station->storageNumErr = fields.get(DMStatStation::STORAGE_NUM_ERR); - - station->solarGen = fields.get(DMStatStation::SOLAR_ELECT_GEN); - station->solarGrid = fields.get(DMStatStation::SOLAR_ELECT_GRID); - station->solarNumErr = fields.get(DMStatStation::SOLAR_NUM_ERR); - - station->chargeElect = fields.get(DMStatStation::CHARGE_ELECT); - station->chargeNum = fields.get(DMStatStation::CHARGE_NUM); - station->chargeNumErr = fields.get(DMStatStation::CHARGE_NUM_ERR); + //station->storageNumErr = fields.get(DMStatStation::STORAGE_NUM_ERR); + //station->solarGen = fields.get(DMStatStation::SOLAR_ELECT_GEN); + //station->solarGrid = fields.get(DMStatStation::SOLAR_ELECT_GRID); + //station->solarNumErr = fields.get(DMStatStation::SOLAR_NUM_ERR); + //station->chargeElect = fields.get(DMStatStation::CHARGE_ELECT); + //station->chargeNum = fields.get(DMStatStation::CHARGE_NUM); + //station->chargeNumErr = fields.get(DMStatStation::CHARGE_NUM_ERR); } else { @@ -216,30 +214,38 @@ bool AppData::initFromDB() } } - { // 初始化场站设备的历史监测数据 - + { // 初始化场站设备的历史监测数据(当天) vector result; - DAO::queryRuntimeData(dao, Utils::dateStr(), result); + DAO::queryRuntimeDataHistory(dao, Utils::dateStr(), result); for (auto& item : result) { int stationId = item.get("station_id"); int deviceId = item.get("device_id"); + int datatype = item.get("datatype"); auto device = this->getDevice(stationId, deviceId); if (device) { - int datatype = item.get("datatype"); std::string value = item.value("value"); - - njson json; - if (JSON::parse(value, json)) - { - std::vector vecVal(json.size()); - for (int i=0; i(json[i]); - } - device->setCache(datatype, vecVal); - } + std::vector vd; + JSON::parseArray(value, vd); + device->setCache(datatype, vd); + } + } + } + { // 初始化预测数据源的历史数据(当天) + vector result; + DAO::queryPredictHistory(dao, Utils::dateStr(), result); + for (auto& item : result) + { + int stationId = item.get("station_id"); + int datatype = item.get("datatype"); + auto station = this->getStation(stationId); + if (station) + { + std::string value = item.value("value"); + std::vector vd; + JSON::parseArray(value, vd); + station->setCache(datatype, vd); } } } diff --git a/src/app/Application.cpp b/src/app/Application.cpp index 6c055a9..a516b09 100644 --- a/src/app/Application.cpp +++ b/src/app/Application.cpp @@ -98,12 +98,13 @@ void Application::runThreadMain() } static TimeTick ttMqttPolling; // 召测 - if (!Config::option.mqtt.host.empty() && ttMqttPolling.elapse(10)) + int mqttInterval = Config::option.mqtt.interval; + if (!Config::option.mqtt.host.empty() && mqttInterval > 0 && ttMqttPolling.elapse(10)) { for (auto& item : appdata.mapStation) { auto& station = item.second; - if (Utils::time() - station->getPollingTS() > Config::option.mqtt.interval) + if (Utils::time() - station->getPollingTS() > mqttInterval) { item.second->polling(); } diff --git a/src/app/Device.cpp b/src/app/Device.cpp index f06c62a..cccb8a9 100644 --- a/src/app/Device.cpp +++ b/src/app/Device.cpp @@ -187,22 +187,9 @@ void Device::getCachePower(std::vector& vec) } } -int64_t GetCurrentTimePos(int step) +void Device::setCache(int datatype, std::vector& vd) { - auto tp = chrono::system_clock::now(); - int64_t tTime = chrono::time_point_cast(tp).time_since_epoch().count(); - std::time_t t = chrono::system_clock::to_time_t(tp); - std::tm* tmlocal = localtime(&t); - tmlocal->tm_hour = 0; - tmlocal->tm_min = 0; - tmlocal->tm_sec = 0; - int64_t tDate = chrono::time_point_cast(chrono::system_clock::from_time_t(mktime(tmlocal))).time_since_epoch().count(); - return (tTime - tDate) / step; -} - -void Device::setCache(int datatype, std::vector& vec) -{ - std::map* mapptr = NULL; + std::map* mapptr = NULL; if (datatype == 1) { mapptr = &mapCacheVoltage; } else if (datatype == 2) { mapptr = &mapCacheCurrent; } else if (datatype == 3) { mapptr = &mapCachePower; } @@ -211,12 +198,12 @@ void Device::setCache(int datatype, std::vector& vec) { const int step = 600; const int N = 86400/step; - - int n = GetCurrentTimePos(step); + int64_t tsSeconds = Utils::timeDaySeconds(); + int npos = tsSeconds / step; for (int i = 0; i>& if (v == "0") v = "并网"; else if (v == "1") v = "离网"; } - if (item.addr == "0x1008") // 模块状态 R uint16 1开机,0待机 0x1008 + if (item.addr == "0x1006") // 启停状态 R uint16 1开机,0关机 0x1008 { - if (v == "0") v = "开机"; - else if (v == "1") v = "待机"; + if (v == "1") v = "开机"; + else if (v == "0") v = "关机"; } } else if (type == int(EDeviceType::PCS)) @@ -466,7 +453,7 @@ void Device::setBCUUnit(std::string k, int pos, int v, int count) if (k == "0x0056") { bcuUnit[0] = float(v) * 0.1f; } else if (k == "0x043E") { bcuUnit[1] = float(v) * 0.1f; } else if (k == "0x0826") { bcuUnit[2] = float(v) * 0.001f; } - else if (k == "0x0C0E") { bcuUnit[3] = float(v); } // * 0.01f + else if (k == "0x0C0E") { bcuUnit[3] = float(v) * 0.01f; } // * 0.01f else if (k == "0x0FF6") { bcuUnit[4] = float(v); } } } diff --git a/src/app/Device.h b/src/app/Device.h index 492a711..82e5586 100644 --- a/src/app/Device.h +++ b/src/app/Device.h @@ -47,7 +47,7 @@ public: void getCachePower(std::vector& vec); // int datatype: 1: 电压,2:电流,3:功率 - void setCache(int datatype, std::vector& vec); + void setCache(int datatype, std::vector& vec); bool cache(int npos); void storeDB(int npos); @@ -87,9 +87,9 @@ public: std::shared_ptr commEntity; int64_t tsDataDate {}; - std::map mapCacheVoltage; - std::map mapCacheCurrent; - std::map mapCachePower; + std::map mapCacheVoltage; + std::map mapCacheCurrent; + std::map mapCachePower; std::map mapParams; std::map mapMyParams; diff --git a/src/app/Station.cpp b/src/app/Station.cpp index 4fc9d39..b739544 100644 --- a/src/app/Station.cpp +++ b/src/app/Station.cpp @@ -203,6 +203,19 @@ void Station::setGarewayWorkMode() mqttCli->publish("Gateway_YT", text); } + +string Station::getGatewayMode() +{ + // 0:手动,1:峰谷套利,2:增网配容,3:应急供电,4:并网保电,5:自定时段 + if (workModeGateway == 0) { return "手动"; } + else if (workModeGateway == 1) { return "峰谷套利"; } + else if (workModeGateway == 2) { return "增网配容"; } + else if (workModeGateway == 3) { return "应急供电"; } + else if (workModeGateway == 4) { return "并网保电"; } + else if (workModeGateway == 5) { return "自定时段"; } + else { return "--"; }; +} + void Station::checkDevice() { for (auto& item: mapDevice) @@ -331,6 +344,7 @@ void Station::readCoolingData(int deviceNo, string addr, int val) void Station::readGatewayMode(int mode) { + this->workModeGateway = mode; if (mode != this->workMode) { //this->setGarewayWorkMode(); @@ -363,20 +377,61 @@ void Station::readGatewayStatus(int cdzStatus, int emuStatus) } } -static std::string MapValueToJson(int npos, std::map& mapV) +static std::string MapValueToJson(int npos, std::map& mapV) { njson jsonarray = njson::array(); for (int i = 0; i<=npos; i++) { - jsonarray.push_back(mapV[i]); + jsonarray.push_back(int(mapV[i])); } return jsonarray.dump(); } +void Station::setCache(int datatype, std::vector& vd) +{ + std::map* mapptr = NULL; + if (datatype == 1) { mapptr = &mapCacheElectIn; } + else if (datatype == 2) { mapptr = &mapCacheElectOut; } + else if (datatype == 3) { mapptr = &mapCacheElectCharger; } + if (mapptr) + { + const int step = 600; + const int N = 86400/step; + int64_t tsSeconds = Utils::timeDaySeconds(); + int npos = tsSeconds / step; + for (int i = 0; i= (600-180) && npos + 1 < 144) + { + npos += 1; + save = true; + } + else if (offset <= 180 && posCache < npos) + { + save = true; + posCache = npos; + } + if (save) + { + mapCacheElectIn[npos] = Utils::random(100, 800); // dayElectIn + mapCacheElectOut[npos] = Utils::random(100, 800); // dayElectOut + mapCacheElectCharger[npos] = Utils::random(100, 800); // 暂无数据源 + } +} void Station::writeStatistic() { auto dao = DaoEntity::create("history_day"); - std::string dt = Utils::dateStr(); int64_t tTime = Utils::time(); int64_t tDate = Utils::date(); @@ -386,7 +441,7 @@ void Station::writeStatistic() for (auto iter = mapDevice.begin(); iter!=mapDevice.end(); ++iter) { auto device = iter->second; - if (device->cache(npos) && device->type == int(EDeviceType::BMS)) + if (device->cache(npos)) { Fields fields; fields.set("dt", dt); @@ -407,7 +462,7 @@ void Station::writeStatistic() } } - if (statData.ts != 0) + if (statData.ts > 0) { Fields fields; fields.set("dt", Utils::dateStr(statData.ts)); @@ -437,15 +492,14 @@ void Station::writeStatistic() }; dao->duplicateUpdate(fields, vecKeys); - { + { // stat_day Fields fields; fields.set("dt", Utils::dateStr(statData.ts)); fields.set("station_id", this->stationId); - fields.set("device_id", 0); fields.set("storage_elect_in", statData.dayElectIn); fields.set("storage_elect_out", statData.dayElectOut); fields.set("income_elect", statData.dayIncome); - DAO::insertStatStation(dao, fields); + DAO::insertStatDay(dao, fields); } { Fields fields; @@ -458,4 +512,25 @@ void Station::writeStatistic() } } + + { + // 预测数据源记录 + dao->setTableName("predict_day"); + + Fields fields; + fields.set("dt", dt); + fields.set("station_id", stationId); + fields.set("datatype", 1); // 1:储能充电,2:储能放电,3:充电桩充电,4:发电 + fields.set("value", MapValueToJson(npos, mapCacheElectIn)); + dao->duplicateUpdate(fields, {"value"}); + + fields.set("datatype", 2); // 1:储能充电,2:储能放电,3:充电桩充电,4:发电 + fields.set("value", MapValueToJson(npos, mapCacheElectOut)); + dao->duplicateUpdate(fields, {"value"}); + + fields.set("datatype", 3); // 1:储能充电,2:储能放电,3:充电桩充电,4:发电 + fields.set("value", MapValueToJson(npos, mapCacheElectCharger)); + dao->duplicateUpdate(fields, {"value"}); + } + } diff --git a/src/app/Station.h b/src/app/Station.h index df192fb..f12f207 100644 --- a/src/app/Station.h +++ b/src/app/Station.h @@ -115,6 +115,8 @@ public: void setGarewayWorkMode(); void checkDevice(); + string getGatewayMode(); + void readAlert(std::shared_ptr device, std::string addr, int v, std::string text); void readRuntimeData(int deviceNo, string addr, int val); void readTHData(int deviceNo, string addr, int val); @@ -123,6 +125,10 @@ public: void readGatewayMode(int mode); void readGatewayStatus(int cdzStatus, int emuStatus); + void setCache(int datatype, std::vector& vd); + void cache(); + int posCache {0}; + void writeStatistic(); int posDayStat {0}; @@ -138,6 +144,7 @@ public: bool isConnected {false}; int workMode {}; // 运行模式 + int workModeGateway { -1 }; // 运行模式 int runPolicyId {}; // 运行策略 /////////////////////////////////////////////////////////////////////////////////////////////// @@ -158,23 +165,19 @@ public: /////////////////////////////////////////////////////////////////////////////////////////////// /// === 日统计 === - double storageIn {}; // 储能充电电量 - double storageOut {}; // 储能放电电量 - - int storageNumIn {}; // 储能充电次数 - int storageNumOut {}; // 储能放电次数 - int storageNumErr {}; // 储能故障次数 - - double solarGen {}; // 光伏发电电量 - double solarGrid {}; // 光伏入网电量 - int solarNumErr {}; // 光伏故障次数 - - double chargeElect {}; // 充电设备充电电量 - int chargeNum {}; // 充电设备充电次数 - int chargeNumErr {}; // 充电设备故障次数 - - double incomeElect {}; // 发电收益金额 - double incomeCharge {}; // 充电收益金额 + //double storageIn {}; // 储能充电电量 + //double storageOut {}; // 储能放电电量 + //int storageNumIn {}; // 储能充电次数 + //int storageNumOut {}; // 储能放电次数 + //int storageNumErr {}; // 储能故障次数 + //double solarGen {}; // 光伏发电电量 + //double solarGrid {}; // 光伏入网电量 + //int solarNumErr {}; // 光伏故障次数 + //double chargeElect {}; // 充电设备充电电量 + //int chargeNum {}; // 充电设备充电次数 + //int chargeNumErr {}; // 充电设备故障次数 + //double incomeElect {}; // 发电收益金额 + //double incomeCharge {}; // 充电收益金额 /////////////////////////////////////////////////////////////////////////////////////////////// /// === 环境 === @@ -200,7 +203,6 @@ public: std::unordered_map> mapDevice; std::map>> mapDeviceGroup; - // 温湿度信息 std::map mapTempHumUnit; // 消防4.0信息 @@ -269,4 +271,14 @@ public: int emuStatus {-1}; std::map mapAlertCache; + + + /////////////////////////////////////////////////////////////////////////////////////////////// + /// 说明:从电表中读取对应数据:每间隔600秒(10分钟)缓存一个点位,存储到数据库,用于绘制一天的电曲线 + // 储能充电量缓存,key:位置索引(0->144),val:电量 + std::map mapCacheElectIn; + // 储能放电量缓存,key:位置索引(0->144),val:电量 + std::map mapCacheElectOut; + // 充电桩充电量缓存,key:位置索引(0->144),val:电量 + std::map mapCacheElectCharger; }; \ No newline at end of file diff --git a/src/common/JsonN.cpp b/src/common/JsonN.cpp index fc30ebc..481108e 100644 --- a/src/common/JsonN.cpp +++ b/src/common/JsonN.cpp @@ -64,15 +64,6 @@ std::string JSON::readStr(njson& json, std::string k) return v; } -void JSON::parse(std::string jsonstr, std::vector& vd) -{ - njson jsonroot; - if (JSON::parse(jsonstr, jsonroot)) - { - vd = jsonroot.get>(); - } -} - std::string JSON::toStr(njson& json) { std::string v; @@ -92,4 +83,6 @@ std::string JSON::toStr(njson& json) break; } return v; -} \ No newline at end of file +} + + diff --git a/src/common/JsonN.h b/src/common/JsonN.h index 96515c6..04ffaa5 100644 --- a/src/common/JsonN.h +++ b/src/common/JsonN.h @@ -90,10 +90,19 @@ public: } static std::string readStr(njson& json, std::string k); - - static void parse(std::string jsonstr, std::vector& vd); - + static std::string toStr(njson& json); + + template + static void parseArray(std::string jsonstr, std::vector& vd) + { + njson json; + if (JSON::parse(jsonstr, json)) + { + try { vd = json.get>(); } + catch (const nlohmann::detail::exception& e) { Spdlogger::info("JSON read error: err={}, json={}", e.what(), json.dump()); } + } + } }; diff --git a/src/common/Utils.cpp b/src/common/Utils.cpp index 9acb97a..86a89f1 100644 --- a/src/common/Utils.cpp +++ b/src/common/Utils.cpp @@ -400,6 +400,24 @@ string Utils::timeStrMS(std::string fmt /*= "%Y-%m-%dT%H:%M:%S"*/) // return true; //} +int64_t Utils::timeDaySeconds() +{ + // 获取当前时间 + auto tpNow = chrono::system_clock::now(); + // 转换为time_t以便使用C库函数 + std::time_t tsNow = std::chrono::system_clock::to_time_t(tpNow); + std::tm* tmLocal = std::localtime(&tsNow); + + // 设置为今日0点 + tmLocal->tm_hour = 0; + tmLocal->tm_min = 0; + tmLocal->tm_sec = 0; + + // 转换回时间戳 + std::time_t tsDay = std::mktime(tmLocal); + return tsNow - tsDay; +} + void Utils::sleep_ms(int ms) { // 计算时间间隔: diff --git a/src/common/Utils.h b/src/common/Utils.h index cc806b6..450cd3b 100644 --- a/src/common/Utils.h +++ b/src/common/Utils.h @@ -60,6 +60,8 @@ public: //static string time_to_string(int64_t dt, std::string fmt="%Y-%m-%d %H:%M:%S"); //static bool time_string_to_tm(string dt, std::tm& t); + static int64_t timeDaySeconds(); + std::string duration_str(int64_t t) { auto h = t / 3600; diff --git a/src/database/Dao.cpp b/src/database/Dao.cpp index 7e2fff7..af11f45 100644 --- a/src/database/Dao.cpp +++ b/src/database/Dao.cpp @@ -440,8 +440,8 @@ Errcode DAO::queryDeviceList(std::shared_ptr dao, vector& res // 分页查询设备信息列表 Errcode DAO::queryDeviceList(PageInfo& pageInfo, vector& result) { - std::string sqlFrom = "FROM " + DMDevice::TABLENAME; - return QueryPagination("*", sqlFrom, pageInfo, result); + std::string sqlFrom = "FROM device d LEFT JOIN station s ON d.station_id =s.station_id"; + return QueryPagination("d.*, s.name station_name", sqlFrom, pageInfo, result); } // 查询设备类型定义 @@ -637,7 +637,7 @@ Errcode DAO::queryPolicyTypeDef(std::shared_ptr dao, vector& return DAO::exec(dao, sql, result); } -Errcode DAO::insertStatStation(std::shared_ptr dao, Fields& fields) +Errcode DAO::insertStatDay(std::shared_ptr dao, Fields& fields) { // 根据主键(dt、station_id、category),写入或更新数据 if (!dao) { dao = DaoEntity::create("stat_day"); } @@ -686,10 +686,18 @@ Errcode DAO::queryRuntimeData(std::shared_ptr dao, std::string dt, in return Errcode(ret); } -Errcode DAO::queryRuntimeData(std::shared_ptr dao, std::string dt, vector& result) +Errcode DAO::queryRuntimeDataHistory(std::shared_ptr dao, std::string dt, vector& result) { - if (!dao) { dao = DaoEntity::create("history_day"); } + if (!dao) { dao = DaoEntity::create(""); } std::string sql = "SELECT * FROM history_day WHERE dt='" + dt + "';"; int ret = dao->exec(sql, result); return Errcode(ret); +} + +Errcode DAO::queryPredictHistory(std::shared_ptr dao, std::string dt, vector& result) +{ + if (!dao) { dao = DaoEntity::create(""); } + std::string sql = "SELECT * FROM predict_day WHERE dt='" + dt + "';"; + int ret = dao->exec(sql, result); + return Errcode(ret); } \ No newline at end of file diff --git a/src/database/Dao.h b/src/database/Dao.h index 9e397c3..bd8abd5 100644 --- a/src/database/Dao.h +++ b/src/database/Dao.h @@ -122,12 +122,14 @@ public: static Errcode queryPolicyTypeDef(std::shared_ptr dao, vector& result); - static Errcode insertStatStation(std::shared_ptr dao, Fields& fields); + static Errcode insertStatDay(std::shared_ptr dao, Fields& fields); /////////////////////////////////////////////////////////////////////////////////////////////// // === 设备历史监测数据管理 === static Errcode insertRuntimeData(std::shared_ptr dao, Fields& fields); static Errcode queryRuntimeData(std::shared_ptr dao, std::string dt, int stationId, int deviceId, vector& result); - static Errcode queryRuntimeData(std::shared_ptr dao, std::string dt, vector& result); + static Errcode queryRuntimeDataHistory(std::shared_ptr dao, std::string dt, vector& result); + + static Errcode queryPredictHistory(std::shared_ptr dao, std::string dt, vector& result); }; \ No newline at end of file diff --git a/src/database/MysqlClient.cpp b/src/database/MysqlClient.cpp index 415c203..f22b201 100644 --- a/src/database/MysqlClient.cpp +++ b/src/database/MysqlClient.cpp @@ -101,6 +101,7 @@ int MysqlClient::exec(std::string sql) int MysqlClient::exec(std::string sql, vector& result) { + if (!mysql_) { return 1; } result.clear(); int err = MysqlQuery(mysql_, sql); if (err != 0) diff --git a/src/protocol/HttpEntity.cpp b/src/protocol/HttpEntity.cpp index 6e13a54..9b754d0 100644 --- a/src/protocol/HttpEntity.cpp +++ b/src/protocol/HttpEntity.cpp @@ -657,6 +657,16 @@ Errcode HttpEntity::updateStation(const httplib::Request& req, njson& json, std: } } } + if (params.contains("station_id") && params.contains("work_mode")) + { + int stationId = params.get("station_id"); + int workmode = params.get("work_mode"); + auto station = Application::data().getStation(stationId); + if (station) + { + station->setGarewayWorkMode(); + } + } return err; }; @@ -702,6 +712,9 @@ Errcode HttpEntity::queryStationOverview(const httplib::Request& req, njson& jso return Errcode(ret); } njson jsonStorage = njson::parse(R"({"category":1, "gateway":0, "count":0, "power":0.0})"); + auto station = Application::data().getStation(Utils::toInt(stationId)); + jsonStorage["workmode"] = station ? station->getGatewayMode() : "--"; + njson jsonCharge = njson::parse(R"({"category":2, "count":0, "power":0.0})"); njson jsonSolar = njson::parse(R"({"category":3, "count":0, "power":0.0})"); njson jsonSecurity = njson::parse(R"({"category":4, "count":0, "power":0.0})"); @@ -1252,6 +1265,13 @@ Errcode HttpEntity::queryStatDayList(const httplib::Request& req, njson& json, s if (!startDate.empty() && !endDate.empty()) { + std::map mapTemp; + for (auto& item: result) + { + auto& dt = item.value("dt"); + mapTemp[dt] = &item; + } + int64_t t0 = Utils::time(startDate + " 00:00:00"); int64_t t1 = Utils::time(endDate + " 00:00:00"); int i = 0; @@ -1262,11 +1282,9 @@ Errcode HttpEntity::queryStatDayList(const httplib::Request& req, njson& json, s njson jsonrow; std::string dt = Utils::dateStr(t); Fields* fields = NULL; - if (isecond; } + jsonrow["dt"] = dt.substr(5); jsonrow["storage_elect_in"] = fields ? fields->value("storage_elect_in") : "0"; jsonrow["storage_elect_out"] = fields ? fields->value("storage_elect_out") : "0"; diff --git a/src/protocol/MqttEntity.cpp b/src/protocol/MqttEntity.cpp index 94154d9..dd8d078 100644 --- a/src/protocol/MqttEntity.cpp +++ b/src/protocol/MqttEntity.cpp @@ -25,8 +25,7 @@ bool MqttClient::load(std::string filename) std::map MqttClient::s_mapTopicInfo; int MqttClient::init(string addr, string clientId, string username, string password) -{ - if (addr.empty()) +{ if (addr.empty()) { return MQTTASYNC_FAILURE; } @@ -43,7 +42,7 @@ int MqttClient::init(string addr, string clientId, string username, string passw int rc {0}; // "tcp://localhost:1883" - std::string str = "ESS-" + std::to_string(Utils::random(1000, 9999)) + "-" +clientId; + std::string str = "ESS-" + clientId + "-" + std::to_string(Utils::time()); rc = MQTTAsync_create(&client, addr.c_str(), str.c_str(), MQTTCLIENT_PERSISTENCE_NONE, NULL); if (rc != MQTTASYNC_SUCCESS) { @@ -303,7 +302,10 @@ int MqttClient::onMessageArrived(char* topic, int topicLen, MQTTAsync_message* m { std::string key = item.key(); auto& val = item.value(); - if (key == "40001") { station->readGatewayMode(val.get()); } + if (key == "40001") + { + station->readGatewayMode(val.get()); + } //else if (key == "40002") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "峰谷时间段"); } //else if (key == "40021") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "自定时间段"); } //else if (key == "40038") { spdlog::info("[mqtt] read register addr: [{}]={}, {}", key, val.dump(), "其他参数"); } @@ -314,7 +316,7 @@ int MqttClient::onMessageArrived(char* topic, int topicLen, MQTTAsync_message* m int cdzStatus = -1; int emuStatus = -1; JSON::read(json, "cdz", cdzStatus); - JSON::read(json, "emu", cdzStatus); + JSON::read(json, "emu", emuStatus); station->readGatewayStatus(cdzStatus, emuStatus); } else @@ -391,7 +393,11 @@ void MqttClient::ParseArrivedMessage(njson& json, string command, std::shared_pt auto addr = iter->first; auto& regUnit = iter->second; spdlog::debug("[mqtt] read [{}]={}, {}{}", addr, val, regUnit.name, regUnit.remark); - + if (command == "BCU_YC" || command == "BCU_YX") + { + //spdlog::info("[mqtt] read [{}]={}, {}{}", addr, val, regUnit.name, regUnit.remark); + } + if (regUnit.alert && val > 0) { station->readAlert(device, addr, val, "[" + command + "]" + regUnit.name + "(" + addr + ")"); diff --git a/src/qt/MainApp.cpp b/src/qt/MainApp.cpp index c793363..b74d608 100644 --- a/src/qt/MainApp.cpp +++ b/src/qt/MainApp.cpp @@ -1,35 +1,16 @@ #include "MainApp.h" #include "common/Spdlogger.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include "app/Config.h" #include "common/Utils.h" -#include "QUI.h" +#include "MyQUI.h" #include "app/Application.h" #include "app/AppData.h" #include "app/Station.h" #include "protocol/MqttEntity.h" -static const std::string QSS_BTN_MENU = -"QPushButton {background:rgba(50,128,218,200);color:white;border-radius:5px;border:2px solid rgb(10,120,215);font:bold 18px;}" -"QPushButton:hover {background-color:rgb(32,164,128);}" -"QPushButton:pressed {border-width:3px 0 0 3px;background-color:rgb(1,32,54);border-style:inset;}" -"QPushButton:disabled {color:rgb(150,150,150);}"; -static const std::string QSS_LINE = -"QLineEdit { background-color: rgb(14, 49, 66); color: #ffffff; border: 1px solid gray; border-radius: 5px; font: bold 13px; }"; MainApp::MainApp() { @@ -101,168 +82,8 @@ public: QGridLayout layout; }; -void PairLine(QWidget* parent, int x, int y, string k, string v) -{ - auto key = new QLabel(parent); - key->setText(k.c_str()); - key->setGeometry(x, y, 80, 26); - auto value = new QLineEdit(parent); - value->setText(v.c_str()); - value->setGeometry(x+80, y, 260, 26); - value->setStyleSheet(QSS_LINE.c_str()); - value->setReadOnly(true); -} -class MyWorkspace : public QWidget -{ -public: - MyWorkspace(QWidget* parent) : QWidget(parent) - { - this->setObjectName("workspace"); - this->setStyleSheet("#workspace { background-color:rgba(100,100,100,50); }"); - - int x=10, y=10; - { - this->groupSys = UI::GroupBox(this, x, y, 1190, 120, "系统"); - auto pw = groupSys.get(); - } - { - x = 10, y += 130; - this->groupHttp = UI::GroupBox(this, x, y, 390, 120, "HTTP"); - auto pw = groupHttp.get(); - PairLine(pw, 20, 20, "服务类型: ", "服务端"); - PairLine(pw, 20, 50, "服务端口: ", Utils::toStr(Config::option.http.port)); - PairLine(pw, 20, 80, "服务状态: ", "运行"); - } - { - x += 400; - this->groupMqtt = UI::GroupBox(this, x, y, 390, 120, "MQTT"); - auto pw = groupMqtt.get(); - PairLine(pw, 20, 20, "服务类型: ", "客户端"); - PairLine(pw, 20, 50, "服务地址: ", Config::option.mqtt.host); - PairLine(pw, 20, 80, "服务状态: ", "---"); - } - { - x += 400; - this->groupDB = UI::GroupBox(this, x, y, 390, 120, "数据库"); - auto pw = groupDB.get(); - PairLine(pw, 20, 20, "数据库名: ", Config::option.database.dbname); - PairLine(pw, 20, 50, "主机地址: ", Config::option.database.host); - PairLine(pw, 20, 80, "用 户 名: ", Config::option.database.user); - - - const std::string QSS_TABLE = // 表格整体样式 - "QTableWidget {" - " background-color: transparent;" // 背景色 - " gridline-color: #C0C0C0;" // 网格线颜色 - " border: 1px solid gray;" // 边框 - " color: white;" // 文字颜色 - "}" - // 表头样式 - "QHeaderView::section {" - " background-color: #404040;" // 表头背景 - " padding: 4px;" // 内边距 - " border: 1px solid #505050;" // 边框 - " min-height: 25px;" // 最小高度 - "}" - // 单元格样式 - "QTableWidget::item {" - " padding-left: 5px;" - " border-bottom: 1px solid gray;" // 底部边框 - "}" - // 选中状态 - "QTableWidget::item:selected {" - " background-color: #B8D6FF;" // 选中背景色 - " color: black;" // 选中文字颜色 - "}"; - - table = std::make_shared(this); - table->setGeometry(10, y += 130, 1190, 300); - table->setStyleSheet(QSS_TABLE.c_str()); - table->horizontalHeader()->setStretchLastSection(true); // 最后一列占满 - table->verticalHeader()->setVisible(false); // 不显示垂直表头 - table->setEditTriggers(QAbstractItemView::NoEditTriggers); // 单元格不可编辑 - table->setSelectionMode(QAbstractItemView::SingleSelection); // 设置为单选模式 - table->setSelectionBehavior(QAbstractItemView::SelectRows); // 设置为整行选中 - - - QTableWidgetItem* headerItem; - QStringList headerText_Row, headerText_Col; - headerText_Row << "站ID" << "站名称" << "站编号" << "站状态" << "MQTT状态" << "召测(秒)" << "说明"; - - // 设置为水平表头 - table->setColumnCount(headerText_Row.size()); - table->setHorizontalHeaderLabels(headerText_Row); - } - - textLog = std::make_shared(this); - textLog->setGeometry(10, y += 310, 1190, 280); - textLog->setStyleSheet("background-color: transparent; border: 1px solid gray; font-weight: 400;"); - textLog->setReadOnly(true); - - { - // 第二个参数是方法函数名称,即调用 QTextEdit的appeng函数; - auto qtSink = std::make_shared(textLog.get(), "append"); - spdlog::default_logger()->sinks().push_back(qtSink); - } - { - //qtSink = std::make_shared(textLog.get()); - //connect(qtSink.get(), &QtTextSink::appendText, textLog.get(), &QTextEdit::append); - } - } - - void setTableCell(int row, int col, std::string text, std::string style="") - { - auto item = table->item(row, col); - if (!item) - { - item = new QTableWidgetItem(); - table->setItem(row, col, item); - } - item->setText(text.c_str()); - if (style == "OK") { item->setForeground(QBrush(Qt::green)); } - else if (style == "ERR") { item->setForeground(QBrush(Qt::red)); } - } - - void onTimer() - { - auto& appdata = Application().data(); - int rowNo = 0; - int tsNow = Utils::time(); - for (auto& item : appdata.mapStation) - { - auto& station = item.second; - if (rowNo >= table->rowCount()) - { - table->insertRow(rowNo); - } - bool isOpen = station->status > 0; - bool isConnected = station->mqttCli->isConnected; - - setTableCell(rowNo, 0, std::to_string(station->stationId)); - setTableCell(rowNo, 0, std::to_string(station->stationId)); - setTableCell(rowNo, 1, station->name); - setTableCell(rowNo, 2, station->code); - setTableCell(rowNo, 3, isOpen ? "启用" : "未启用", isOpen ? "OK" : "ERR"); - setTableCell(rowNo, 4, isConnected ? "连接成功" : "未连接", isConnected ? "OK" : "ERR"); - - int tsPolling = station->getPollingTS(); - setTableCell(rowNo, 5, tsPolling > 0 ? std::to_string(tsNow - tsPolling) + "/" + std::to_string(Config::option.mqtt.interval) : "--"); - rowNo++; - } - } - - // 创建自定义sink - std::shared_ptr qtSink; - - std::shared_ptr groupSys; - std::shared_ptr groupHttp; - std::shared_ptr groupMqtt; - std::shared_ptr groupDB; - std::shared_ptr table {}; - std::shared_ptr textLog; -}; void MainApp::setMyLayout() { @@ -284,9 +105,9 @@ void MainApp::setMyLayout() menu->setSizePolicy(sizePolicy); layout.main->addWidget(menu, 0, 0, 1, 1); - ui.workspace = std::make_shared(this); - ui.workspace->setSizePolicy(sizePolicy); - layout.main->addWidget(ui.workspace.get(), 0, 1, 1, 1); + ui.wigetHome = std::make_shared(this); + ui.wigetHome->setSizePolicy(sizePolicy); + layout.main->addWidget(ui.wigetHome.get(), 0, 1, 1, 1); // 设置列宽和行高 layout.main->setColumnMinimumWidth(0, 200); // 设置第0列的最小宽度为100像素 @@ -303,5 +124,5 @@ void MainApp::setMyLayout() void MainApp::onTimer() { - ui.workspace->onTimer(); + ui.wigetHome->onTimer(); } \ No newline at end of file diff --git a/src/qt/MainApp.h b/src/qt/MainApp.h index 35b15d7..a8ce9ba 100644 --- a/src/qt/MainApp.h +++ b/src/qt/MainApp.h @@ -1,10 +1,9 @@ #include #include #include -#include -#include + #include -#include + #include using namespace std; @@ -14,73 +13,8 @@ using namespace std; #include #include -class QtTextSink : public QObject, public spdlog::sinks::base_sink -{ - Q_OBJECT -public: - // 构造函数接收一个 QTextEdit*,但用 QPointer 来包装它 - explicit QtTextSink(QTextEdit* textEdit, QObject* parent = nullptr) - : QObject(parent), textEdit(textEdit) { - } +#include "widgets/QWHome.h" -signals: - // 定义一个信号,用于在主线程中追加文本 - void appendText(const QString& message); - -protected: - // 重写 sink_it_ 方法,处理每条日志 - void sink_it_(const spdlog::details::log_msg& msg) override { - if (textEdit.isNull()) { - // 如果 QTextEdit 已经被删除,则忽略这条日志 - return; - } - spdlog::memory_buf_t formatted; - formatter_->format(msg, formatted); - QString logMessage = QString::fromStdString(fmt::to_string(formatted)); - // 发射信号,通过Qt的事件循环在主线程中安全地更新UI - emit appendText(logMessage); - } - - void flush_() override {} - -private: - QPointer textEdit; // 关键:使用 QPointer -}; - - - - -class LabelPair -{ -public: - LabelPair(QWidget* parent, int x, int y, int w, int h) - { - title.setParent(parent); - value.setParent(&title); - - title.setGeometry(x, y, w, h); - value.setGeometry(80, 0, w-80, h); - - title.show(); - value.show(); - } - - void setTitle(std::string text) - { - title.setText(text.c_str()); - } - - void setValue(std::string text) - { - value.setText(text.c_str()); - } - - QLabel title; - QLabel value; -}; - - -class MyWorkspace; class MainApp : public QWidget { @@ -97,7 +31,7 @@ private slots: public: struct { std::shared_ptr weburl {}; - std::shared_ptr workspace; + std::shared_ptr wigetHome; } ui; struct { diff --git a/src/qt/MyQUI.cpp b/src/qt/MyQUI.cpp new file mode 100644 index 0000000..db5eade --- /dev/null +++ b/src/qt/MyQUI.cpp @@ -0,0 +1,35 @@ +#include "MyQUI.h" + +static const std::string QSS_GROUP = +"QGroupBox { border: 1px solid gray; margin-top: 8px; border-radius: 5px;}" +"QGroupBox::title { subcontrol-origin: margin; subcontrol-position: top left; left:10px; margin-left: 0px; padding:0 1px; }"; + + +static const std::string QSS_BTN_MENU = +"QPushButton {background:rgba(50,128,218,200);color:white;border-radius:5px;border:2px solid rgb(10,120,215);font:bold 18px;}" +"QPushButton:hover {background-color:rgb(32,164,128);}" +"QPushButton:pressed {border-width:3px 0 0 3px;background-color:rgb(1,32,54);border-style:inset;}" +"QPushButton:disabled {color:rgb(150,150,150);}"; + +static const std::string QSS_LINE = +"QLineEdit { background-color: rgb(14, 49, 66); color: #ffffff; border: 1px solid gray; border-radius: 5px; font: bold 13px; }"; + +std::shared_ptr MyQUI::GroupBox(QWidget* parent, int x, int y, int w, int h, std::string title) +{ + auto groupBox = std::make_shared(title.c_str(), parent); + groupBox->setGeometry(x, y, w, h); + groupBox->setStyleSheet(QSS_GROUP.c_str()); + return groupBox; +} + +void MyQUI::PairLine(QWidget* parent, int x, int y, string k, string v) +{ + auto key = new QLabel(parent); + key->setText(k.c_str()); + key->setGeometry(x, y, 80, 26); + auto value = new QLineEdit(parent); + value->setText(v.c_str()); + value->setGeometry(x+80, y, 260, 26); + value->setStyleSheet(QSS_LINE.c_str()); + value->setReadOnly(true); +} \ No newline at end of file diff --git a/src/qt/MyQUI.h b/src/qt/MyQUI.h new file mode 100644 index 0000000..70ad6d0 --- /dev/null +++ b/src/qt/MyQUI.h @@ -0,0 +1,76 @@ +#pragma once + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#include +using namespace std; + +extern const std::string QSS_GROUP; +extern const std::string QSS_BTN_MENU; +extern const std::string QSS_LINE; + +class LabelPair +{ +public: + LabelPair(QWidget* parent, int x, int y, int w, int h) + { + title.setParent(parent); + value.setParent(&title); + title.setGeometry(x, y, w, h); + value.setGeometry(80, 0, w-80, h); + title.show(); + value.show(); + } + + void setTitle(std::string text) + { + title.setText(text.c_str()); + } + + void setValue(std::string text) + { + value.setText(text.c_str()); + } + + QLabel title; + QLabel value; +}; + +class MyWidget : public QWidget +{ + Q_OBJECT +public: + MyWidget(QWidget* parent) : QWidget(parent) {} + + virtual void onTimer() {}; +}; + + +class MyQUI +{ +public: + static std::shared_ptr GroupBox(QWidget* parent, int x, int y, int w, int h, std::string title); + + static void PairLine(QWidget* parent, int x, int y, string k, string v); + +}; \ No newline at end of file diff --git a/src/qt/QUI.cpp b/src/qt/QUI.cpp deleted file mode 100644 index 8584f30..0000000 --- a/src/qt/QUI.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include "QUI.h" - -static const std::string QSS_GROUP = -"QGroupBox { border: 1px solid gray; margin-top: 8px; border-radius: 5px;}" -"QGroupBox::title { subcontrol-origin: margin; subcontrol-position: top left; left:10px; margin-left: 0px; padding:0 1px; }"; - - -std::shared_ptr UI::GroupBox(QWidget* parent, int x, int y, int w, int h, std::string title) -{ - auto groupBox = std::make_shared(title.c_str(), parent); - groupBox->setGeometry(x, y, w, h); - groupBox->setStyleSheet(QSS_GROUP.c_str()); - return groupBox; -} \ No newline at end of file diff --git a/src/qt/QUI.h b/src/qt/QUI.h deleted file mode 100644 index 27024f1..0000000 --- a/src/qt/QUI.h +++ /dev/null @@ -1,10 +0,0 @@ -#pragma once - -#include - - -class UI -{ -public: - static std::shared_ptr GroupBox(QWidget* parent, int x, int y, int w, int h, std::string title); -}; \ No newline at end of file diff --git a/src/qt/widgets/QWHome.cpp b/src/qt/widgets/QWHome.cpp new file mode 100644 index 0000000..37d7e81 --- /dev/null +++ b/src/qt/widgets/QWHome.cpp @@ -0,0 +1,161 @@ +#include "QWHome.h" +#include "common/Spdlogger.h" +#include "app/Config.h" +#include "common/Utils.h" +#include "app/Application.h" +#include "app/AppData.h" +#include "app/Station.h" +#include "protocol/MqttEntity.h" + +QWHome::QWHome(QWidget* parent) : MyWidget(parent) +{ + this->setObjectName("workspace"); + this->setStyleSheet("#workspace { background-color:rgba(100,100,100,50); }"); + + int x = 10, y = 10; + { + this->groupSys = MyQUI::GroupBox(this, x, y, 1190, 120, "系统"); + auto pw = groupSys.get(); + } + { + x = 10, y += 130; + this->groupHttp = MyQUI::GroupBox(this, x, y, 390, 120, "HTTP"); + auto pw = groupHttp.get(); + MyQUI::PairLine(pw, 20, 20, "服务类型: ", "服务端"); + MyQUI::PairLine(pw, 20, 50, "服务端口: ", Utils::toStr(Config::option.http.port)); + MyQUI::PairLine(pw, 20, 80, "服务状态: ", "运行"); + } + { + x += 400; + this->groupMqtt = MyQUI::GroupBox(this, x, y, 390, 120, "MQTT"); + auto pw = groupMqtt.get(); + MyQUI::PairLine(pw, 20, 20, "服务类型: ", "客户端"); + MyQUI::PairLine(pw, 20, 50, "服务地址: ", Config::option.mqtt.host); + MyQUI::PairLine(pw, 20, 80, "服务状态: ", "---"); + } + { + x += 400; + this->groupDB = MyQUI::GroupBox(this, x, y, 390, 120, "数据库"); + auto pw = groupDB.get(); + MyQUI::PairLine(pw, 20, 20, "数据库名: ", Config::option.database.dbname); + MyQUI::PairLine(pw, 20, 50, "主机地址: ", Config::option.database.host); + MyQUI::PairLine(pw, 20, 80, "用 户 名: ", Config::option.database.user); + + + const std::string QSS_TABLE = // 表格整体样式 + "QTableWidget {" + " background-color: transparent;" // 背景色 + " gridline-color: #C0C0C0;" // 网格线颜色 + " border: 1px solid gray;" // 边框 + " color: white;" // 文字颜色 + "}" + // 表头样式 + "QHeaderView::section {" + " background-color: #404040;" // 表头背景 + " padding: 4px;" // 内边距 + " border: 1px solid #505050;" // 边框 + " min-height: 25px;" // 最小高度 + "}" + // 单元格样式 + "QTableWidget::item {" + " padding-left: 5px;" + " border-bottom: 1px solid gray;" // 底部边框 + "}" + // 选中状态 + "QTableWidget::item:selected {" + " background-color: #B8D6FF;" // 选中背景色 + " color: black;" // 选中文字颜色 + "}"; + + table = std::make_shared(this); + table->setGeometry(10, y += 130, 1190, 300); + table->setStyleSheet(QSS_TABLE.c_str()); + table->horizontalHeader()->setStretchLastSection(true); // 最后一列占满 + table->verticalHeader()->setVisible(false); // 不显示垂直表头 + table->setEditTriggers(QAbstractItemView::NoEditTriggers); // 单元格不可编辑 + table->setSelectionMode(QAbstractItemView::SingleSelection); // 设置为单选模式 + table->setSelectionBehavior(QAbstractItemView::SelectRows); // 设置为整行选中 + table->horizontalHeader()->setFixedHeight(50); + table->horizontalHeader()->setDefaultSectionSize(60); + + QTableWidgetItem* headerItem; + QStringList headerText_Row, headerText_Col; + headerText_Row << "ID" << "站名" << "编号" << "状态" << "MQTT状态" << "召测(秒)" + << "日充电\n电量" << "日放电\n电量" << "总充电\n电量" << "总放电\n电量" + << "日充电\n费用" << "日放电\n费用" << "总充电\n费用" << "总放电\n费用" + << "日收益" << "总收益" << "--"; + + // 设置为水平表头 + table->setColumnCount(headerText_Row.size()); + table->setHorizontalHeaderLabels(headerText_Row); + table->setColumnWidth(0, 50); + table->setColumnWidth(1, 120); + table->setColumnWidth(2, 50); + table->setColumnWidth(4, 80); + + } + + textLog = std::make_shared(this); + textLog->setGeometry(10, y += 310, 1190, 280); + textLog->setStyleSheet("background-color: transparent; border: 1px solid gray; font-weight: 400;"); + textLog->setReadOnly(true); + + { + // 第二个参数是方法函数名称,即调用 QTextEdit的appeng函数; + auto qtSink = std::make_shared(textLog.get(), "append"); + spdlog::default_logger()->sinks().push_back(qtSink); + } +} + +void QWHome::setTableCell(int row, int col, std::string text, std::string style /*= ""*/) +{ + auto item = table->item(row, col); + if (!item) + { + item = new QTableWidgetItem(); + table->setItem(row, col, item); + } + item->setText(text.c_str()); + if (style == "OK") { item->setForeground(QBrush(Qt::green)); } + else if (style == "ERR") { item->setForeground(QBrush(Qt::red)); } +} + +void QWHome::onTimer() +{ + auto& appdata = Application().data(); + int rowNo = 0; + int tsNow = Utils::time(); + for (auto& item : appdata.mapStation) + { + auto& station = item.second; + if (rowNo >= table->rowCount()) + { + table->insertRow(rowNo); + } + bool isOpen = station->status > 0; + bool isConnected = station->mqttCli->isConnected; + + setTableCell(rowNo, 0, std::to_string(station->stationId)); + setTableCell(rowNo, 1, station->name); + setTableCell(rowNo, 2, station->code); + setTableCell(rowNo, 3, isOpen ? "启用" : "未启用", isOpen ? "OK" : "ERR"); + setTableCell(rowNo, 4, isConnected ? "连接成功" : "未连接", isConnected ? "OK" : "ERR"); + + int tsPolling = station->getPollingTS(); + setTableCell(rowNo, 5, tsPolling > 0 ? std::to_string(tsNow - tsPolling) + "/" + std::to_string(Config::option.mqtt.interval) : "--"); + + setTableCell(rowNo, 6, Utils::toStr(station->statData.dayElectIn, 0)); + setTableCell(rowNo, 7, Utils::toStr(station->statData.dayElectOut, 0)); + setTableCell(rowNo, 8, Utils::toStr(station->statData.totalElectIn, 0)); + setTableCell(rowNo, 9, Utils::toStr(station->statData.totalElectOut, 0)); + setTableCell(rowNo, 10, Utils::toStr(station->statData.dayFeeIn, 0)); + setTableCell(rowNo, 11, Utils::toStr(station->statData.dayFeeOut, 0)); + setTableCell(rowNo, 12, Utils::toStr(station->statData.totalFeeIn, 0)); + setTableCell(rowNo, 13, Utils::toStr(station->statData.totalFeeOut, 0)); + setTableCell(rowNo, 14, Utils::toStr(station->statData.dayIncome, 0)); + setTableCell(rowNo, 15, Utils::toStr(station->statData.totalIncome, 0)); + setTableCell(rowNo, 16, station->statData.ts > 0 ? Utils::timeStr(station->statData.ts) : "--"); + + rowNo++; + } +} \ No newline at end of file diff --git a/src/qt/widgets/QWHome.h b/src/qt/widgets/QWHome.h new file mode 100644 index 0000000..7781b2e --- /dev/null +++ b/src/qt/widgets/QWHome.h @@ -0,0 +1,28 @@ +#pragma once + +#include "qt/MyQUI.h" +#include +#include +#include + + +class QWHome : public MyWidget +{ + Q_OBJECT +public: + QWHome(QWidget* parent); + + + // 创建自定义sink + //std::shared_ptr qtSink; + + std::shared_ptr groupSys; + std::shared_ptr groupHttp; + std::shared_ptr groupMqtt; + std::shared_ptr groupDB; + std::shared_ptr table {}; + std::shared_ptr textLog; + + void onTimer() override; + void setTableCell(int row, int col, std::string text, std::string style = ""); +}; \ No newline at end of file diff --git a/src/qt/widgets/QWMonitor.cpp b/src/qt/widgets/QWMonitor.cpp new file mode 100644 index 0000000..e69de29 diff --git a/src/qt/widgets/QWMonitor.h b/src/qt/widgets/QWMonitor.h new file mode 100644 index 0000000..e69de29 diff --git a/web/src/views/monitor.vue b/web/src/views/monitor.vue index 84ea3bd..780f015 100644 --- a/web/src/views/monitor.vue +++ b/web/src/views/monitor.vue @@ -70,7 +70,7 @@ export default { { name: '储能系统', titles: [ - { v: '边缘网关编号', key: 'num' }, + { v: '运行模式', key: 'workmode' }, { v: '总有功功率(台区)', key: 'power', sufix: 'kW' } ], power: 60, @@ -114,10 +114,10 @@ export default { workMode: '', workModes: [ // 0:手动,1:峰谷套利,2:增网配容,3:应急供电,4:并网保电,5:自定时段 - // { - // value: 0, - // label: '手动' - // }, + { + value: 0, + label: '手动' + }, { value: 1, label: '峰谷套利' @@ -188,6 +188,7 @@ export default { res.data.device_group.forEach((Element, index) => { this.systems[index].num = Element.count this.systems[index].power = Element.power + this.systems[index].workmode = Element.workmode }) this.workMode = res.data.work_mode } catch (error) {