pvt motion
This commit is contained in:
@@ -45,19 +45,22 @@ class MPLCanvasVelo(FigureCanvas):
|
||||
self.fig=fig
|
||||
self.ax=ax
|
||||
|
||||
def InitChild(self,vel):
|
||||
|
||||
def InitChild(self,meta,vel):
|
||||
fig=self.fig
|
||||
ax=self.ax
|
||||
|
||||
velxAct,velxDes,velyAct,velyDes=vel
|
||||
velxAct,velxDes,velyAct,velyDes,velAct,velDes=vel
|
||||
l=velxAct.shape[0]
|
||||
hl = []
|
||||
hl += ax.plot(velxAct, 'g-',label='vel x act')
|
||||
hl += ax.plot(velxDes, 'g--',label='vel x des')
|
||||
hl += ax.plot(velyAct, 'b-',label='vel y act')
|
||||
hl += ax.plot(velyDes, 'b--',label='vel y des')
|
||||
ax.xaxis.set_label_text('time (10x servo cycle)')
|
||||
ax.yaxis.set_label_text('pos-error um')
|
||||
hl += ax.plot(velxAct, 'b-',label='vel x act')
|
||||
hl += ax.plot(velxDes, 'b--',label='vel x des')
|
||||
hl += ax.plot(velyAct, 'g-',label='vel y act')
|
||||
hl += ax.plot(velyDes, 'g--',label='vel y des')
|
||||
hl += ax.plot(velAct, 'r-',label='vel act')
|
||||
hl += ax.plot(velDes, 'r--',label='vel des')
|
||||
|
||||
ax.xaxis.set_label_text('datapoint (timebase: %g ms per data point)'%meta['timebase'])
|
||||
ax.yaxis.set_label_text('um/ms')
|
||||
legend = ax.legend(loc='upper right', shadow=True)
|
||||
#axvline(linewidth=4, color='r')
|
||||
#mpl.axvline(linewidth=4, color='r')
|
||||
@@ -136,16 +139,24 @@ class MAVelocityFrame(wx.Frame):
|
||||
|
||||
toolbar=ut.AddToolbar(canvas,sizer)
|
||||
|
||||
meta = doc.fh['meta'].item()
|
||||
try:
|
||||
vel=doc.vel
|
||||
except AttributeError:
|
||||
tb=meta['timebase']
|
||||
#data points are um
|
||||
#datapoint timebase: 2 ms () per data point
|
||||
#velocity: um/ms (deltatau desVel= motor units per serco cycle)
|
||||
rec=doc.fh['rec']
|
||||
velxAct = np.diff(rec[:, 1])
|
||||
velxDes = np.diff(rec[:, 4])
|
||||
velyAct = np.diff(rec[:, 2])
|
||||
velyDes = np.diff(rec[:, 5])
|
||||
doc.vel = vel = (velxAct,velxDes,velyAct,velyDes)
|
||||
canvas.InitChild(vel)
|
||||
velxAct = np.diff(rec[:, 1])/tb
|
||||
velxDes = np.diff(rec[:, 4])/tb
|
||||
velyAct = np.diff(rec[:, 2])/tb
|
||||
velyDes = np.diff(rec[:, 5])/tb
|
||||
velAct = np.sqrt(velxAct**2+velyAct**2)
|
||||
velDes = np.sqrt(velxDes**2+velyDes**2)
|
||||
doc.vel = vel = (velxAct,velxDes,velyAct,velyDes,velAct,velDes)
|
||||
|
||||
canvas.InitChild(meta,vel)
|
||||
|
||||
self.Centre()
|
||||
|
||||
@@ -184,7 +195,6 @@ class MAVelocityFrame(wx.Frame):
|
||||
canvas = self.canvas
|
||||
ax = canvas.ax
|
||||
len = usrData
|
||||
err = self.doc.err
|
||||
hl = canvas.hl
|
||||
#hl[0].set_data(rec[:len, 4], rec[:len, 5])
|
||||
#hl[3].set_data(rec[:len, 1], rec[:len, 2])
|
||||
|
||||
Reference in New Issue
Block a user