Robot

Dependencies:   mbed QEI

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MotionCommand.h Source File

MotionCommand.h

00001 #ifndef MOTIONCOMMAND_H
00002 #define MOTIONCOMMAND_H    
00003     #include "mbed.h"
00004     #include "Ro/Robot.h"
00005     #include "Ro/Trajectory.h"
00006     
00007 class MotionCommand{
00008     private:
00009     Robot* _Robot;
00010     float* Initial_point;
00011     float* Final_point;
00012     float SamplingTime;
00013     Vector<float> PrevPosition;
00014     Trajectory* _Trajectory;
00015     int CurrentCycle;
00016     int TotalCycle;
00017     bool IsFinalized;
00018     
00019     int Zone;
00020     int index;
00021     Ticker TimInterrupt;
00022     
00023     void Trapezoid(float q0,float q1, float qd, float qdd,float stime,float Constraints_v,float Contrains_a);
00024     int SCurve(float q0,float q1, float qd0,float qdf, float qdd,float stime,float Constraints_v,float Constraints_a, float Constraints_j);
00025     void Spline_5th (float q0,float q1, float qd0, float qd1, float qdd,float stime,float tfin,float Constraints_v ,float Constraints_a);
00026     void Spline_7th(float q0,float q1, float qd0, float qd1, float qdd,float stime,float tfin,float Constraints_v ,float Constraints_a);
00027     void TimFunctionMoveL1();
00028     void StartMoveL1();
00029     void StopMoveL1();
00030     
00031     void TimFunctionMoveL2();
00032     void StartMoveL2();
00033     void StopMoveL2();
00034     
00035     public:
00036     
00037     enum Trajectory_Types {TRAPEZOIDAL, SCURVE, SPLINE5, SPLINE7};
00038     
00039     MotionCommand(Robot* Robot1);
00040     ~MotionCommand();
00041     
00042     void MoveJ(End_Effector qf,float v0,float v1,float a,float samplingtime,float time,int zone,Trajectory_Types _trajectory);
00043     void MoveL1(End_Effector qf, float v, float a,float samplingtime);
00044     void MoveL2(End_Effector qf, float v, float a,float samplingtime);
00045     
00046 
00047 };
00048 
00049 template <typename T>
00050 inline T  sign (T  a);
00051 
00052 
00053 #endif //MOTIONCOMMAND_H