From 2294869130f594fea4f780c4396a34f42877fd1c Mon Sep 17 00:00:00 2001 From: Andrew Date: Mon, 16 Dec 2024 15:09:45 +0300 Subject: [PATCH] =?UTF-8?q?dev:=20=D0=B4=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=B2=D0=BE=D0=B7=D0=BC=D0=BE=D0=B6=D0=BD?= =?UTF-8?q?=D0=BE=D1=81=D1=82=D1=8C=20=D1=83=D1=87=D0=B5=D1=82=D0=B0=20?= =?UTF-8?q?=D0=BA=D0=BE=D0=BC=D0=BF=D0=B5=D0=BD=D1=81=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D0=B8=20=D0=BF=D1=80=D0=BE=D0=B3=D0=B8=D0=B1=D0=BE=D0=B2=20?= =?UTF-8?q?=D0=B2=20=D0=BE=D1=82=D0=BE=D0=B1=D1=80=D0=B0=D0=B6=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D0=B8=20=D0=BF=D0=BE=D0=B7=D0=B8=D1=86=D0=B8=D0=B8=20FE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- params/operator_params.json | 2 +- params/system_params.json | 4 +-- .../passportFormer.cpython-310.pyc | Bin 4241 -> 4286 bytes src/controller/passportFormer.py | 11 +++++--- src/gui/__pycache__/plotter.cpython-310.pyc | Bin 11626 -> 12144 bytes src/gui/plotter.py | 25 +++++++++++++++++- .../base/__pycache__/base.cpython-310.pyc | Bin 16378 -> 16413 bytes src/utils/base/base.py | 9 ++++--- 8 files changed, 41 insertions(+), 10 deletions(-) diff --git a/params/operator_params.json b/params/operator_params.json index f6437ab..16046d2 100644 --- a/params/operator_params.json +++ b/params/operator_params.json @@ -80,7 +80,7 @@ 0.02 ], "distance_l_2": [ - 0.04, + 0.0275, 0.03, 0.033, 0.033, diff --git a/params/system_params.json b/params/system_params.json index c455ac2..7e69d3c 100644 --- a/params/system_params.json +++ b/params/system_params.json @@ -55,8 +55,8 @@ ], "UML_time_scaler": [ 1000.0 - ], + ], "Range ME, mm": [ - 250 + 115.0 ] } \ No newline at end of file diff --git a/src/controller/__pycache__/passportFormer.cpython-310.pyc b/src/controller/__pycache__/passportFormer.cpython-310.pyc index 5d8dba83f4dfd9e68c8586ca4ded23274d50b3ca..be102801b2bc2980f6a6ffd3b6ccd3cfa273f513 100644 GIT binary patch delta 650 zcmXw0zl#$=6n-+;b9F*vx-JQ&+fa&H*4JC>X-z zXQ#llEtry1NIiMaIzL=Ds^Rs#5YWvpTdI~V(bfN60%5Tlax7Lav4I!cz=x;`edP%s zy#i5<)eK#p^aK&QsEm{zFz7*ZQ+~C+$;_^|o;mji(>U7hb}nyECV6GtKjE{JrjlDp zG=DtkC&!a0H+aG6cRTzB{*3%?KP3mU<9uq|#+17Scm?bu+?A@kx0^eo86QUdWWeJn zK{+!yIv$Rv(R`lM!)v)#mgOz?Evd<0Zj17pGVnfLDg{fetEjb$F~5V*AO=y%Il4(H zsTA|Cs>$EpMXyXSZKxJe|47GglD53=x7<3%29&C^+ IvKbux18CHj`2YX_ delta 643 zcmY*WziSjx5T1Frd$+%L?+5C37ZCMA3h^vF5(`NJ3W-G`76FN8-reOA@5J3zG|ZCX z1kXY+JS(xdEyc>l(pJ#Q_BuQN3UPKLf)8efnfHD3eZ2Q&;bg&k!yvw)f#;v7%sKX7&Y+c!g5~4b66-fx!rYSdUbXHVmU}RJ%tS zi)NM9%-T(`-xdq0&8Y)~a=79!1TsJp~Ka#0Az zK@adC^HUA7L)5{;Fe22+M_7oubYwi+!A;P00rZQJw<*KPNZCKR_6{37}g^eCm zd5p);Bc3qbmWRdrnCno)3q>xm1ch_wV{FWem^+H7e;n~~D5uf@l#S7#j+V6hS_m|} z1L>&gPjflR2jH^S&S9{0`^wBPKD8y6u*^fYy&Qc(u z1BvF)vCEJV1$s9iD#!vo#5{DguVPs;2KHM6Vmu8qP-5u>;u&Zq4p-72MLY{QF~BQ4 zXNFjsWm$&h&Zs=k@>bZ4SR+*L<35Ixc`Is0nxk}#I_dZ-v26h>#_~3jJ-{IuZlDrp z0jBp5O-d@DCk8s~05mbA2aQ1V0TwlNc@%Udlt4>_7gzzzo6WIvXc5yi&75`7>@K(g zXD~0CV@#(x;2Wg*SBMT)UTXPdt_>U&v< z6~|Ev(-1GSG81g_XVQT6Zi}J4U-BKFV#`a%yz3Z7kHY3+*_+gb8_89>-CO}v_^~8PZ$@aPg!m+h;s3QYsQ$6g)fO4#aYK&5(;sv_+jF0 zfECA{s^nGiblQ!US#8i0U9nnvclJkcc3%bI&|KIB!^pw5e()BB2-0IfS;wjaFiAi|EdA7Jgpmm16T8L>9~C@zU#r@t7J`(kf^ zK_rsv8FGE&ns{hq+-rmZ%hc}Q;+vVDHxe(w1iq0hx8el&`#240E2Mem(9`c{=s>=h zzd@Vw`+OPozw+%^li3?sP{+5{?_avol&1@i(2;zrpw9OTC!|+Q#1;?`#HHaH{KDi{ z#bZOg$6U=LBIxKN+Vi=7kL=R3)kR9A_sLLXoS++mv`0l2 zLxeEI&NS4{h`3>oAk7rk|6#)zHVYO?46U>kvb~NBoUgr$s0bJ%0zqzgIwk0jqW=p> z@fa37hr5Z)xhxSm$ndx|Bz!hWL>`R<4qWL4$ACG=Lk zxD)Hm@)Y;;^Z^_D3^xJAu{LSpJ1is#24qKsXH+3*rzSQ|23wdGmmOL-YP$#tC#^=r z%`Dkuq68)TPbYJYtW$3BxxE0-oyBX}rK0R)Aj|VuYK#}&V-|WvWh*l6YuqLFRz^$_ z`>lWpeP_q5yo|g#&@gcvW~QCzpa%8-B6&K#frgj|&CP@HoFZ?R z$3{cxNG~9G-eWlGdavk~l(o*TQJh7Im-m9>bj(H0M8m(LA}iH@O* zzhYmPSLfUGefjzP9r^acN5>wZbMP(-zb`;TEI?7xJTr0EnND>YU`c9f5f-BI)M7py z&`g@7A(Z;z+G3CTZX&mJ_@H@$(Yv==+2k#iC8mU_#0MzO$X4ro{W@w#GdmagM%Nik z5M!)@9r@mP=i(*4EI)2NPV4ev>(i8K#AZs|RYIk)@5wvIEA&VC pd.DataFrame: + keys = dataframe.keys() + for signal in signals: + if valid_str in signal["name"] and signal["name"] in keys: + dataframe[signal["name"]] = dataframe[signal["name"]].apply(lambda x: x + shift) + return dataframe + def _build_widget(self, data: list[Any]) -> QWidget: """ @@ -216,6 +227,7 @@ class PlotWidget(BasePlotWidget): dataframe, points_pocket, useful_data = data tesla_time = useful_data["tesla_time"] range_ME = useful_data["range_ME"] + k_prop = useful_data["k_prop"] dataframe_headers = dataframe.columns.tolist() for widget_num, (channel, description) in enumerate(self._plt_channels.items()): @@ -226,14 +238,23 @@ class PlotWidget(BasePlotWidget): ideal_time = 0.0 worst_perf = 2 + # TODO: рассчитать корректный параметр range if settings["mirror ME"]: dataframe = self._mirror_shift_data("ME", description["Real_signals"], dataframe, range_ME) - + # Итерация по точкам for cur_point, point_data in enumerate(points_pocket): # point_data структура: [point_timeframe, ideal_data, point_events] point_timeframe, ideal_dat, point_events, useful_p_data = point_data ideal_data = copy.deepcopy(ideal_dat) + + # TODO: проверить корректность расчетов + if settings["force compensation FE"]: + force = useful_p_data["force"] + F_comp = - force*k_prop/1000 + point_idxs = dataframe[(dataframe["time"] >= point_timeframe[0]) & (dataframe["time"] <= point_timeframe[1])].index + + dataframe.loc[point_idxs] = self._shift_data("FE", description["Real_signals"], dataframe.loc[point_idxs], F_comp) # Модифицируем данные для отображения гарфика if settings["ideals"] and settings["mirror ME"]: @@ -244,11 +265,13 @@ class PlotWidget(BasePlotWidget): if settings["stages"]: self._add_stage_regions(plot_widget, point_events, dataframe_headers, 75) + # TODO: подобрать не вырвеглазные цвета, возможно ограничить зону if settings["workpiece"]: x1 = point_timeframe[0] dx = point_timeframe[1] - x1 y1 = useful_p_data["L2"]*1000 dy = useful_p_data["thickness"]*1000 + rect_item = QGraphicsRectItem(x1, y1, dx, dy) rect_item.setBrush(pg.mkBrush('blue')) rect_item.setPen(pg.mkPen('red', width=2)) diff --git a/src/utils/base/__pycache__/base.cpython-310.pyc b/src/utils/base/__pycache__/base.cpython-310.pyc index d04ddfbb422ac1f70481748ddca5b550720c7f94..579ebe5a9a34aad62c9e21d3b286ff735ca6d9f7 100644 GIT binary patch delta 966 zcmZ{hYe-XJ7{`6iZaST8+T5Jl=9bFToI~f#sohj0(jW-yTd6CSxyjK!WT8PsMj*jM z7?j$@sOW>l@k>RiWp@A24a7^AStcq&GP+2#-sdc|4|NXw&U60%|MR}*Jnv#_=V4I! zR4Qc{yUNu&_w-#?ozy7lRT35kjb^;8DU&H`BhD&tUgMI5i&a)k#UHIDW)2is7wgjQ z_VG1tQ;n~_!R>9_)#UMcO=YD*PwXN<4|Z#fxg1D;aFL9^IN4wP#;L*9ET2^4f*m_oC@8fNe)V*sc19{7w~;~U{C4#$sx54#Qb z;U~Hi4nYw83CCbj*qhh}AQKjnP60&Wabqj2KuES=rfECqP-U^;6;>ITb^wy_Afrk2 z_2zA0L9e+BQdz1Kta#1h2Z_+WDg_`5`%;=97pT_VPnmo|B;!(~rd#!UMuX zY|F`mb3%X4j!?5z&fg^C7U3n~8QL5=d8iLJI}+v3NqvD{hYfm#E=N7U7)CksVHiuD zH{dk}okt=^fMwEIusIFwg?iyqeh0v9EGn?UB-R%+!o^> z6m4q#zLcij`7I3WpT*gT-!VXHHzAKO$iQZ~?2ChVLe>CbIr)^5a{j;mEAqLj%1Ra* zqt>Y+1Ws5v`6;r^h&c1Lfla@c;k- delta 925 zcmZvaZAepL6vub=R(HDcs@t4SH(f5Kl2e;+OT$_Ql76z+FKM-Es8jFehb*uUK|%z| zLHd$L1r;QOTnG%)bY(9}lu_BT@-1SSL`75*(R1#opt=`+&pGG+KhM4QJh%HOEVXGH zwOWmgUB2j=1Mz*@4qn5tOd*qj--H+Was_uK4I863H3OVcniK^d(sj3jw;h}_#&P(wFAgSeM%PqhrQ-D;4#Z`7~;`k zwc?m%2N+mx#m%YPAQ5{~4?(h&yVACT1v}Gvz{;H6V8i>?S&)f+tI`27@o9Pha&U{y z3r_K>ZMzDJa7ETR$PoLo_9K#|0_WY;=)PrnX!Vr$nrb2oxvm?|R-_T|DI zwuBV*9-k1zy1Y!C5oX4S5+}jh}xeMP7zki${3}` zO-ZIm{E}j2#4=4j$+00)ouR_)@9G?um##6>4-h%SXB534ydqQ*77