ݺߣ

ݺߣShare a Scribd company logo
Chibi12 1st presen_1
Contents

            (         )


       


       
AMSL
or
AMSL (Autonomous Mobile Systems Laboratory)
                     

                ?? 1995
 AMSL          ?? 1995
                ??
AMSL           ??
                ??
               ??

                ??                Micro-5.4
       1        ??
               ??             MIT Micro-5.4
                                   -(2004.2005)
   1           ??             MIT    -(2004.2005)

                ?? 2006
       2        ??
               ?? 2006
                ?? Micro-6-Project
   2           ??
               ?? Micro-6-Project
def v_pro?le(t, upv):
	

  ta=fabs( (upv.vt-upv.v0)/upv.a0);
	

  td=upv.tf - fabs( (upv.vf-upv.vt)/upv.af);
	

	

	

     if t<ta:
     	

   v=upv.v0+t*upv.a0;                            
	

  elif ta <= t and t <= td:
	

  	

   v=upv.vt;
	

  else:
	

  	

   v=upv.vt+(t-td)*upv.af;
	

   if t>upv.tf:
	

   	

   v=upv.vf;
	

	

   return v
def curv_pro?le(t, upv, upk, dt):
	

  s=0
	

	

     for time in arange(0, t+dt, dt):
     	

   s=s+v_pro?le(time, upv)*dt
                                                             &
	

	

  k=interp.splev(s,upk.param,der=0)
	

  return k
def terminalState(x, k1, kf, sf, uv, uk, dt, v_param):
	

  x=x[:]
	

  upk=CurvParam(uk.k0,k1,kf,sf)
	

  upv=VelParam(uv.v0, uv.a0, uv.vt, uv.af, uv.vf)
	

	

  upv.tf=estimate_time(upv, upk)
	

   upk.param=make_spline(upk)
	

   u=CtrlParam(upv, upk)








   ES
2007
2008              (                 )
2009
2010
2011
2012          




  2007 2008           2009   2010
Chibi12 1st presen_1
Chibi12 1st presen_1
Chibi12 1st presen_1
JAXA(   )   (   )
Chibi12 1st presen_1
2011   infant              Micro6
 4
 5
 6
 7                  1       @JAXA

 8
 9              2       3

10                  4

11          5

12
 1
Chibi12 1st presen_1
_pro?le(t, upv):
 a=fabs( (upv.vt-upv.v0)/upv.a0);
 d=upv.tf - fabs( (upv.vf-upv.vt)/upv.af);
f t<ta:
      v=upv.v0+t*upv.a0;
elif ta <= t and t <= td:
      v=upv.vt;
else:
      v=upv.vt+(t-td)*upv.af;
f t>upv.tf:
     v=upv.vf;
 eturn v
urv_pro?le(t, upv, upk, dt):
 =0
or time in arange(0, t+dt, dt):
     s=s+v_pro?le(time, upv)*dt
k=interp.splev(s,upk.param,der=0)
 eturn k
 rminalState(x, k1, kf, sf, uv, uk, dt, v_param):
x=x[:]
upk=CurvParam(uk.k0,k1,kf,sf)
upv=VelParam(uv.v0, uv.a0, uv.vt, uv.af, uv.vf)
upv.tf=estimate_time(upv, upk)
upk.param=make_spline(upk)
u=CtrlParam(upv, upk)

More Related Content

Chibi12 1st presen_1

  • 2. Contents ( ) AMSL
  • 3. or
  • 4. AMSL (Autonomous Mobile Systems Laboratory) ?? 1995 AMSL ?? 1995 ?? AMSL ?? ?? ?? ?? Micro-5.4 1 ?? ?? MIT Micro-5.4 -(2004.2005) 1 ?? MIT -(2004.2005) ?? 2006 2 ?? ?? 2006 ?? Micro-6-Project 2 ?? ?? Micro-6-Project
  • 5. def v_pro?le(t, upv): ta=fabs( (upv.vt-upv.v0)/upv.a0); td=upv.tf - fabs( (upv.vf-upv.vt)/upv.af); if t<ta: v=upv.v0+t*upv.a0; elif ta <= t and t <= td: v=upv.vt; else: v=upv.vt+(t-td)*upv.af; if t>upv.tf: v=upv.vf; return v def curv_pro?le(t, upv, upk, dt): s=0 for time in arange(0, t+dt, dt): s=s+v_pro?le(time, upv)*dt & k=interp.splev(s,upk.param,der=0) return k def terminalState(x, k1, kf, sf, uv, uk, dt, v_param): x=x[:] upk=CurvParam(uk.k0,k1,kf,sf) upv=VelParam(uv.v0, uv.a0, uv.vt, uv.af, uv.vf) upv.tf=estimate_time(upv, upk) upk.param=make_spline(upk) u=CtrlParam(upv, upk)
  • 6.
  • 7. ES
  • 8. 2007 2008 ( ) 2009 2010 2011 2012 2007 2008 2009 2010
  • 12.
  • 13. JAXA( ) ( )
  • 15. 2011 infant Micro6 4 5 6 7 1 @JAXA 8 9 2 3 10 4 11 5 12 1
  • 17. _pro?le(t, upv): a=fabs( (upv.vt-upv.v0)/upv.a0); d=upv.tf - fabs( (upv.vf-upv.vt)/upv.af); f t<ta: v=upv.v0+t*upv.a0; elif ta <= t and t <= td: v=upv.vt; else: v=upv.vt+(t-td)*upv.af; f t>upv.tf: v=upv.vf; eturn v urv_pro?le(t, upv, upk, dt): =0 or time in arange(0, t+dt, dt): s=s+v_pro?le(time, upv)*dt k=interp.splev(s,upk.param,der=0) eturn k rminalState(x, k1, kf, sf, uv, uk, dt, v_param): x=x[:] upk=CurvParam(uk.k0,k1,kf,sf) upv=VelParam(uv.v0, uv.a0, uv.vt, uv.af, uv.vf) upv.tf=estimate_time(upv, upk) upk.param=make_spline(upk) u=CtrlParam(upv, upk)
  • 18.
  • 19.
  • 20.