|
Robotran C Documentation
|
Go to the documentation of this file.
6 #ifndef _MBS_TRAJECTORIES_H_
7 #define _MBS_TRAJECTORIES_H_
9 #ifndef _USE_MATH_DEFINES
10 #define _USE_MATH_DEFINES // to use M_PI in Windows
11 #endif // !_USE_MATH_DEFINES
35 double delta_q,
double v12,
double a01,
double a23,
double t0);
55 int mbs_ramp_3_order(
double *q,
double *qd,
double *qdd,
double tsim,
double t0,
double t1,
double qmax);
75 int mbs_ramp_5_order(
double *q,
double *qd,
double *qdd,
double tsim,
double t0,
double t1,
double qmax);
98 int mbs_ramp_2_order_3_piece(
double *q,
double *qd,
double *qdd,
double tsim,
double t0,
double t1,
double t2,
double t3,
double qmax);
121 int mbs_ramp_3_order_3_piece(
double *q,
double *qd,
double *qdd,
double tsim,
double t0,
double t1,
double t2,
double t3,
double qmax);
145 int mbs_ramp_4_order_3_piece(
double *q,
double *qd,
double *qdd,
double tsim,
double t0,
double t1,
double t2,
double t3,
double qmax);
186 void mbs_cosine_signal(
double tsim,
double ampl,
double phi,
double f,
double off,
double* q,
double* qd,
double* qdd);
204 void mbs_sine_signal(
double tsim,
double ampl,
double phi,
double f,
double off,
double* q,
double* qd,
double* qdd);
224 void sweep(
double tsim,
double t0,
double f0,
double t1,
double f1,
double zmax,
double* z,
double* zd,
double *zdd);
241 void mbs_sigmoid(
double tsim,
double lambda,
double t0,
double* q,
double* qd,
double* qdd);
259 void mbs_add_signal(
double q1,
double qd1,
double qdd1,
double q2,
double qd2,
double qdd2,
double* q3,
double* qd3,
double* qdd3);
277 void mbs_sub_signal(
double q1,
double qd1,
double qdd1,
double q2,
double qd2,
double qdd2,
double* q3,
double* qd3,
double* qdd3);
295 void mbs_mult_signal(
double q1,
double qd1,
double qdd1,
double q2,
double qd2,
double qdd2,
double* q3,
double* qd3,
double* qdd3);
314 int mbs_div_signal(
double q1,
double qd1,
double qdd1,
double q2,
double qd2,
double qdd2,
double* q3,
double* qd3,
double* qdd3);
int mbs_ramp_4_order_3_piece(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double t2, double t3, double qmax)
Compute a 3-piece 4-order ramp trajectory.
Definition: mbs_trajectories.c:218
int mbs_div_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the division of 2 signals.
Definition: mbs_trajectories.c:329
int mbs_ramp_2_order_3_piece(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double t2, double t3, double qmax)
Compute a 3-piece 2-order ramp trajectory.
Definition: mbs_trajectories.c:112
void mbs_error_msg(char *msg,...)
Send an error message.
Definition: mbs_message.c:102
void mbs_mult_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the multiplication of 2 signals.
Definition: mbs_trajectories.c:322
void sweep(double tsim, double t0, double f0, double t1, double f1, double zmax, double *z, double *zd, double *zdd)
Compute a frequency sweep on a sine signal.
Definition: mbs_trajectories.c:272
int mbs_ramp_4_order_3_piece(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double t2, double t3, double qmax)
Compute a 3-piece 4-order ramp trajectory.
Definition: mbs_trajectories.c:218
int mbs_ramp_3_order_3_piece(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double t2, double t3, double qmax)
Compute a 3-piece 3-order ramp trajectory.
Definition: mbs_trajectories.c:163
int mbs_ramp_2_order_3_piece_from_acc_vel(double *q, double *qd, double *qdd, double tsim, double v12, double a01, double a23, double t0, double qmax)
Compute a 3-piece 2-order ramp trajectory.
Definition: mbs_trajectories.c:94
int mbs_ramp_5_order(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double qmax)
Compute a 5-order ramp trajectory.
Definition: mbs_trajectories.c:62
int mbs_div_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the division of 2 signals.
Definition: mbs_trajectories.c:329
void mbs_add_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the sum of 2 signals.
Definition: mbs_trajectories.c:308
void mbs_sub_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the substraction of 2 signals.
Definition: mbs_trajectories.c:315
void mbs_cosine_signal(double tsim, double ampl, double phi, double f, double off, double *q, double *qd, double *qdd)
Compute a cosine trajectory.
Definition: mbs_trajectories.c:293
void sweep(double tsim, double t0, double f0, double t1, double f1, double zmax, double *z, double *zd, double *zdd)
Compute a frequency sweep on a sine signal.
Definition: mbs_trajectories.c:272
void mbs_sigmoid(double tsim, double lambda, double t0, double *q, double *qd, double *qdd)
Compute a sigmoid signal.
Definition: mbs_trajectories.c:300
int mbs_get_ramp_time(double *t1, double *t2, double *t3, double delta_q, double v12, double a01, double a23, double t0)
Compute the time related to a ramp trajectory.
Definition: mbs_trajectories.c:10
void mbs_sine_signal(double tsim, double ampl, double phi, double f, double off, double *q, double *qd, double *qdd)
Compute a sine trajectory.
Definition: mbs_trajectories.c:285
int mbs_ramp_2_order_3_piece_from_acc_vel(double *q, double *qd, double *qdd, double tsim, double v12, double a01, double a23, double t0, double qmax)
Compute a 3-piece 2-order ramp trajectory.
Definition: mbs_trajectories.c:94
void mbs_sub_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the substraction of 2 signals.
Definition: mbs_trajectories.c:315
int mbs_ramp_5_order(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double qmax)
Compute a 5-order ramp trajectory.
Definition: mbs_trajectories.c:62
void mbs_mult_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the multiplication of 2 signals.
Definition: mbs_trajectories.c:322
int mbs_ramp_3_order_3_piece(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double t2, double t3, double qmax)
Compute a 3-piece 3-order ramp trajectory.
Definition: mbs_trajectories.c:163
int mbs_get_ramp_time(double *t1, double *t2, double *t3, double delta_q, double v12, double a01, double a23, double t0)
Compute the time related to a ramp trajectory.
Definition: mbs_trajectories.c:10
void mbs_sigmoid(double tsim, double lambda, double t0, double *q, double *qd, double *qdd)
Compute a sigmoid signal.
Definition: mbs_trajectories.c:300
void mbs_cosine_signal(double tsim, double ampl, double phi, double f, double off, double *q, double *qd, double *qdd)
Compute a cosine trajectory.
Definition: mbs_trajectories.c:293
int mbs_ramp_3_order(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double qmax)
Compute a 3-order ramp trajectory.
Definition: mbs_trajectories.c:31
void mbs_add_signal(double q1, double qd1, double qdd1, double q2, double qd2, double qdd2, double *q3, double *qd3, double *qdd3)
Compute the sum of 2 signals.
Definition: mbs_trajectories.c:308
int mbs_ramp_2_order_3_piece(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double t2, double t3, double qmax)
Compute a 3-piece 2-order ramp trajectory.
Definition: mbs_trajectories.c:112
void mbs_sine_signal(double tsim, double ampl, double phi, double f, double off, double *q, double *qd, double *qdd)
Compute a sine trajectory.
Definition: mbs_trajectories.c:285
int mbs_ramp_3_order(double *q, double *qd, double *qdd, double tsim, double t0, double t1, double qmax)
Compute a 3-order ramp trajectory.
Definition: mbs_trajectories.c:31