2 trapezoidal velocity trajectory
6 #ifndef LUA_LIBA_TRAJTRAP_H
7 #define LUA_LIBA_TRAJTRAP_H
12 trapezoidal velocity trajectory
13 @field t total duration
14 @field p0 initial position
15 @field p1 final position
16 @field v0 initial velocity
17 @field v1 final velocity
18 @field vc constant velocity
19 @field ta time before constant velocity
20 @field td time after constant velocity
21 @field pa position before constant velocity
22 @field pd position after constant velocity
23 @field ac acceleration before constant velocity
24 @field de acceleration after constant velocity
27 #if defined(__cplusplus)
29 #endif /* __cplusplus */
32 constructor for trapezoidal velocity trajectory
33 @treturn a.trajtrap trapezoidal velocity trajectory userdata
36 int liba_trajtrap_new(lua_State
*L
);
39 generate for trapezoidal velocity trajectory
40 @tparam number vm defines the maximum velocity during system operation
41 @tparam number ac defines the acceleration before constant velocity
42 @tparam number de defines the acceleration after constant velocity
43 @tparam number p0 defines the initial position
44 @tparam number p1 defines the final position
45 @tparam[opt] number v0 defines the initial velocity
46 @tparam[opt] number v1 defines the final velocity
47 @treturn number total duration
50 int liba_trajtrap_gen(lua_State
*L
);
53 calculate position for trapezoidal velocity trajectory
54 @tparam number x difference between current time and initial time
55 @treturn number position output
58 int liba_trajtrap_pos(lua_State
*L
);
61 calculate velocity for trapezoidal velocity trajectory
62 @tparam number x difference between current time and initial time
63 @treturn number velocity output
66 int liba_trajtrap_vel(lua_State
*L
);
69 calculate acceleration for trapezoidal velocity trajectory
70 @tparam number x difference between current time and initial time
71 @treturn number acceleration output
74 int liba_trajtrap_acc(lua_State
*L
);
76 #if defined(__cplusplus)
78 #endif /* __cplusplus */
80 #endif /* trajtrap.h */