This commit is contained in:
2018-11-23 08:15:43 +01:00
parent d401667442
commit 53592c05a3
2 changed files with 16 additions and 14 deletions

View File

@@ -147,15 +147,17 @@ class MAMainFrame(wx.Frame):
for i in range(lenPts):
l=rec[idx:idx+rng,(3,2)]-pts[i,:]
l2=l[:,0]**2+l[:,1]**2
ofs=l2.argmin()
#print(l2[ofs])
try:
ofs=l2.argmin()
except ValueError:
break#print(l2[ofs])
idx+=ofs
idxInPos.append(idx)
idx+=rng/2
doc.idxInPos=idxInPos=np.array(idxInPos)
self.SetStatusText('scaling of DesTimeBase: %f'%(float(idxInPos[-1])/idxTrigger[idxInPos.shape[0]-1]))
idx=min(idxInPos.shape[0],idxTrigger.shape[0])-1
self.SetStatusText('scaling of DesTimeBase: %f'%(float(idxInPos[idx])/idxTrigger[idx]))
#self.PlotJitter()
self.wxTimeCtrl.slider.SetRange(0,lenRec-1)

View File

@@ -459,24 +459,24 @@ class ShapePath(MotionBase):
for i in range(lenPts):
l=rec[idx:idx+rng,(3,2)]-pts[i,:]
l2=l[:,0]**2+l[:,1]**2
ofs=l2.argmin()
#print(l2[ofs])
try:
ofs=l2.argmin()
except ValueError as e:
break
idx+=ofs
idxInPos.append(idx)
idx+= rng/2
idxInPos = np.array(idxInPos)
jitter=idxTrigger[:idxInPos.shape[0]]-idxInPos
num = min(idxInPos.shape[0], idxTrigger.shape[0])
jitter=idxTrigger[:num]-idxInPos[:num]
fig = plt.figure('trigger jitter')
ax = fig.add_subplot(1, 1, 1)
hl = []
hl += ax.plot(jitter*ts, 'b-',label='jitter')
ax.xaxis.set_label_text('position idx')
ax.yaxis.set_label_text('jitter motion (ms)')
print('scaling of DesTimeBase: %f'%(float(idxInPos[-1])/idxTrigger[idxInPos.shape[0]-1]))
print('scaling of DesTimeBase: %f'%(float(idxInPos[num-1])/idxTrigger[num-1]))
plt.show()
def bode_plot(self,xy=(0,1),mode=25,db=True):
@@ -639,9 +639,9 @@ if __name__=='__main__':
#sp.setup_gather(acq_per=1) #Gather.MaxLines=116508 580pts
sp.setup_gather(acq_per=2)
#setup_sync(self, crdId=1, prgId=2, plcId=2, mode=0, **kwargs):
#sp.setup_sync() #no sync at all
sp.setup_sync() #no sync at all
#sp.setup_sync(mode=1) #sync with timing system (PROG)
sp.setup_sync(mode=2) #sync with timing system and PLC to sync speed (PROG)
#sp.setup_sync(mode=2) #sync with timing system and PLC to sync speed (PROG)
#sp.gen_grid_points(w=2,h=2,pitch=50,rnd=.2);sp.sort_points(xy);sp.setup_motion(fnPrg=fn+'.prg',mode=1,pt2pt_time=10,acq_per=1)
#sp.gen_swissmx_points(width=1000,ofs=(-500,0));sp.setup_motion(fnPrg=fn+'.prg',mode=1,pt2pt_time=40,acq_per=1)
@@ -651,7 +651,7 @@ if __name__=='__main__':
#sp.gen_grid_points(w=2,h=20,pitch=50,rnd=0);sp.setup_motion(fnPrg=fn+'.prg',mode=1,pt2pt_time=10,acq_per=1)
#sp.gen_rand_points(n=500, scale=1000);sp.sort_points(xy);sp.setup_motion(fnPrg=fn+'.prg',mode=1,pt2pt_time=10,acq_per=1)
#sp.gen_grid_points(w=30,h=30,pitch=50,rnd=0.2);sp.sort_points(xy);sp.setup_motion(fnPrg=fn+'.prg',mode=1,pt2pt_time=40)
sp.gen_rand_points(n=400, scale=1000);sp.sort_points(xy);sp.setup_motion(fnPrg=fn+'.prg',mode=1,pt2pt_time=40)
sp.gen_rand_points(n=400, scale=1000);sp.sort_points(xy);sp.setup_motion(fnPrg=fn+'.prg',mode=1,pt2pt_time=10)
#>>>setup gather and sync<<<