trick/trick_sims/SIM_robot/S_define

38 lines
1.0 KiB
Plaintext
Raw Normal View History

/************************TRICK HEADER*************************
PURPOSE:
( Simulate kinematic, planar 2 degree-of-freedom manipulator )
LIBRARY DEPENDENCIES:
(
(manipulator/manipulator.cc)
)
*************************************************************/
#define TRICK_NO_MONTE_CARLO
#define TRICK_NO_MASTERSLAVE
#define TRICK_NO_INSTRUMENTATION
#define TRICK_NO_REALTIMEINJECTOR
#define TRICK_NO_ZEROCONF
#include "sim_objects/default_trick_sys.sm"
##include "include/trick/exec_proto.h"
##include "manipulator/manipulator.hh"
class ManipulatorSimObject : public Trick::SimObject
{
public:
PlanarManip robot;
ManipulatorSimObject(int ndof): robot(ndof)
{
(0.050, "scheduled") robot.calcKinematics();
(0.050, "scheduled") robot.control();
("derivative") robot.stateDeriv();
("integration") trick_ret = robot.updateState();
}
};
ManipulatorSimObject Manip2D(2);
IntegLoop armIntegLoop(0.050) Manip2D;