From cd30e178826b4a164c5332e714c701e9728e5b08 Mon Sep 17 00:00:00 2001 From: esea_info Date: Tue, 11 Apr 2023 18:42:43 +0800 Subject: [PATCH] uart not save --- __pycache__/viper.cpython-38.pyc | Bin 10973 -> 11393 bytes __pycache__/yiwinframe.cpython-38.pyc | Bin 17304 -> 17278 bytes app.py | 2 +- config.yml | 2 +- data/{ => 20210305}/ABSORPTI.DAT | 0 data/{20210305 => }/ABSORPTI(5).dat | 0 data/output/A04E.csv | 8 +++++ data/output/A05D.csv | 19 +++++++++++ viper.py | 46 ++++++++++++++------------ yiwinframe.py | 10 +++--- 10 files changed, 59 insertions(+), 28 deletions(-) rename data/{ => 20210305}/ABSORPTI.DAT (100%) rename data/{20210305 => }/ABSORPTI(5).dat (100%) create mode 100644 data/output/A05D.csv diff --git a/__pycache__/viper.cpython-38.pyc b/__pycache__/viper.cpython-38.pyc index 09e0be585940e0960857b1be31040f94fedca2d5..6b0ae26d7c24c705cca6a93ed78d8e9ceafb11ca 100644 GIT binary patch delta 4276 zcmaJ^TW}lI8Q!znl~%X4WXYE0i>$cmzIg-TSmRVQc! zosbc7G(&U3M%alM5h8&v0KTXZbz(+Llocq)jkvH?TX))wHem@|aBC(wMlt*YwOCxNW*w(3x zZ{kMigTZw-2NFYy(e!a>L5ptD6sz3Ew`yDJK_W@632K~Y`j3LfQG?J0#YodP5wCqM2(VFbWDEyiVF250{ z@tWL}iR9{yHvUXFF6+DaY`EIVisf<33)ohf_2O2mQ>;{W`G&~UMzQsz#8xe_t#RDe zL)LhyY+7Y{AGE0C0VJ7!9GS^35eT*myvE$|=m-gJ2b1mOXJb9N&0x+FF-0N8de9L= z*p0AWOEtkQ0*a7U+ zy=a0zw4L3v)X+h}PftdoGpk~{CCBnD>`cdB7h=9h)k; zPcXZs13#JUBX99D$qRQ-bYTEkA3_eHAE2Q4i82MYM@%EgicgwPF8W^nqxOFOS~AMt zZNE(J=f_e8`5ONyHArsdpQi2{ULqDoyJ=1_YpTdBb8M2CmEuwBU4Aer&li- zzQM9)5csq3%pVhVl1 z6npq<*?aC2tjI$rwhW-43N9GI(V|UD%m~BV^qIx5O&OtOV^2cer*kX210=r$5xfZM zXT@TrqAl|WdM>OHIUf^=U8EG4Ujb2ft*O>=Ps6xTKGORNImQ3fo6r6L=Uxlo#hB$x z9<@xjSUFr_r@7L1+nQN_cRXdRS{`i~%F`=lvsz@X2^nG)X^M~cZLjyj&O@xEaS7tq z?g9&D$ajc1jX<3n0hB`UD-9JbHwbp5HHmrk4nUu-y);=1h!tfU-O!;&ECJb@5l1#K zxX`|_LR(2ulg}yiUH1{)Z9pglM4}dsUKFNpSO$Dl5P%K_Y5!FVW!LNzx=ox*;(m zBt~>ugW5rUYks(nf)s>Dh|=(qw1kMsBD#2G!uToktWX<4wA>H`PFqCJ9n(l-q?%u^ z3MvK#6@wUf@Te1!npB^N(h$|=38ywc1rTspg*d9k~WSVuTa=RK?U~X5V8*h%& zD7!t4-de!zs|g_%<(ya;sVTL<46L6bMfF`(JO;16-MsqB_pi?V{QC2kufFi~zb?J= z$@`~TXzP2w%-K5h_Y<(A|c&jk|nNVrQUw0gE5UVi92z!Xbdql0yg93^{9tXnttN z=Aj2R4?R@q_xaPnHU|;@Kc$hwbtVWKnJ270IW8E>-oWky2!jZCfGs$>$FL|eVjL}T zmXy#M1@N?r%f`fwB5Y5Bh@;86(LI3xXR5>w1EApJ_p>ipjpvIeyG{$Uy*60bLKR(y zBwr1U1<7R%F5o`RbAsX#A_L76azY-IAqnIJNdWOrbnGilS!`tCSbRr5q2r1I@Q56E zgg?Lh?$yBb5FX7Y9HkKd&`nuVb_vNTefIh1pI`qkKtcQQz~+9TChTW0NXydMOHj9) zKR%EqXNqZR~Ra z;kO7a?S2V$bncVE^<*tZ^tys=VDBXM4!{X{>lm8@qY&|G_QesV=V zC-i2iRp5{|zr3P$$37fHW|!dQsY2f7Z+39?1~%X~d1TSG4r&+$nC3@sIWR2x6CsH= zt{NX;i^ZSg<@oS$jy%OXhu3TP0fl9_(BWMDHf;P=1QbtCu}d)PU0D7?U?0JvDcpx9 zCv9e6`B4OsD|iDG6!$`9T4bzv+-JQYH&V?%8-(z`f<;hUiTw)UC9yde6NVe^Cl7uc z`w-!aj}R9A-Nw=Y_*8J^pvHZgszr5GPiZ-=OY7D{@QZ0$qBoJyB6?WY;Fr;JdKB$M zQV(ge7{k*{(LCVTo_?v@Omgt=iUBBvu9QVH)ATS-Dz?sR{Bwn$)v7 delta 3723 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 diff --git a/__pycache__/yiwinframe.cpython-38.pyc b/__pycache__/yiwinframe.cpython-38.pyc index a005fccf7a997325771f579fbec3776624fb3f39..a44a1250a8e2a3bdaea62c9aaf7d01fe905016b1 100644 GIT binary patch delta 345 zcmbQy&iJp5kvEi=mx}=iSS(Fb)^6l|#mUB*lb@WJv-uaNrRZdH9kI#Y^6`uun^(&V za5FMb?vs`93jr!GVW?qhW=vtsW-hX;VaQ@!z*NJukgb{fPyH@V+P zg5^ArImtl8yXXQ)Ob|p|1QC}&#AOg+10rlegdK>u0wS)02zwB54M^N#ODrfz%}Xh| p4idRBnafyT_$H7U#g>zqml|(gbPFU7aZ0@LLYPxFvzbof0{}mxU#tKC delta 421 zcmXxeJ4*vW5C`y`yLg(!i!l;NY$Ae%UJ<=SMDS4r(WI~uEo`E4QKBY<^Xv`;14(D$ zHlod4VJCu~wI3ky{YXq|3nLbO0mYfZh5a!z`(Ji{OK?;Mc~O=<43|7Gs?{#!Pq!#- zpiF(Rpn_vl)G+A22 z&SkaP4DdcylF@E;XaefCnJwVVV|cAjO4}l^e87+`pC;M>%;?g@BJ6|47TBO`UI% list: # 读取配置文件 - # print( "==============" ) - # print( self.raw_wavelength ) for i in range( len(self.raw_wavelength)): print(f"i {i} {self.raw_wavelength[i]}") if self.raw_wavelength[i] None: + if self.devicesn == []: + raise Exception(" 请读取设备序列号!!") self.res = b'' self.set_serial() self.uart_thread.remove_tasks() @@ -296,21 +293,22 @@ class Viper(object): self.uart_thread.add_task( self.device_wl, args=() ) self.uart_thread.sequently_execute_tasks() self.uart_thread.remove_tasks() - # self.uart_thread.add_task_2_act( ) - # self.uart_thread.execute_one_act() self.raw_wavelength = self.convert_buf_2_float(self.res) # 获得截取的开始 结束点 self.get_begin_end() self.get_output_wavelength() msg = "起始波长 : "+str(self.output_wavelength[0]) +" , 结束波长 : "+ str(self.output_wavelength[-1]) - log.info(msg) self.__set_msg ("notice", msg ) pub.sendMessage(self.msg) func( self.output_wavelength ) - # self.__set_msg( "wl", {} ) - # pub.sendMessage("update", msg= self.msg) + def log_uart_thread(self, func)-> None: + if self.output_wavelength == []: + raise Exception("没有波长文件,请读取设备波长!!") + # 准备测量,保存文件的准备 + self.__prepare_for_save() + self.res = b'' self.set_serial() self.uart_thread.remove_tasks() @@ -329,8 +327,11 @@ class Viper(object): # 纯水系数校正 data = self.correction_pure_water( data ) data = data.tolist() - # 浊度 纯水校正 - func(data) + # 保存文件 + tm = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) + self.mydir.setContent( data , TOKEN, tm ) + self.mydir.writeContent() + func(tm, data) def device_sn(self, func)-> None: self.res =b'' @@ -338,9 +339,9 @@ class Viper(object): self.uart.connect() self.uart.write() self.res = self.uart.OneMeasure() - sn = self.res[-6:-2].decode() + self.devicesn = self.res[-6:-2].decode() self.res = b'' - func( sn ) + func( self.devicesn ) # pub.sendMessage("update",msg=self.msg) def device_wl(self, )-> None: @@ -397,4 +398,7 @@ if __name__ == '__main__': # m = 1000 * math.log(10,math.e) / 150 # print(m) + + tm = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) + print(tm) diff --git a/yiwinframe.py b/yiwinframe.py index b118834..8fc7f10 100644 --- a/yiwinframe.py +++ b/yiwinframe.py @@ -86,7 +86,7 @@ class YiwinFrame( wx.Frame ): self.result = '' self.displayData:list = [] self.interval = 0 - self.measure_time = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime()) + self.measure_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) super(YiwinFrame, self).__init__( parent, title=self.title, size = size ) @@ -287,7 +287,7 @@ class YiwinFrame( wx.Frame ): def OnTimer(self, event): ''' 定时器实现 ''' # log.info( f"OnTimer .... " ) - self.__OnDeviceLog(event) + self.__OnDeviceLog( ) pass def __read_config(self,): @@ -387,12 +387,12 @@ class YiwinFrame( wx.Frame ): self.popDialog( e ) pass - def get_device_data( self, data_buf ): + def get_device_data( self,tm, data_buf ): if len(data_buf) != 0: self.device_data = self.viper.convert_buf_2_float( data_buf ) self.plotpanel.clear_past() self.plotpanel.plot_one( - time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime()) + tm , self.output_wl_ndarray ,np.array(data_buf) ) @@ -415,7 +415,7 @@ class YiwinFrame( wx.Frame ): # self.dataplot.set_file_path() self.__OnDeviceStop() self.plotpanel.set_title_x_y( *self.plotpanel.purewater_legend ) - time_ = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime()) + time_ = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) wl = np.array(self.viper.purewater_wavelength) att = np.array(self.viper.purewater_attenuation)