Laelaps  2.3.5
RoadNarrows Robotics Small Outdoor Mobile Robot Project
laeKin.h File Reference

The Laelaps kinematics and dynamics class interface. More...

#include <sys/time.h>
#include <time.h>
#include <pthread.h>
#include <vector>
#include <map>
#include "rnr/rnrconfig.h"
#include "rnr/log.h"
#include "Laelaps/RoboClaw.h"
#include "Laelaps/laelaps.h"
#include "Laelaps/laeUtils.h"
#include "Laelaps/laeDesc.h"
#include "Laelaps/laeTune.h"
#include "Laelaps/laeMotor.h"
#include "Laelaps/laeGpio.h"
#include "Laelaps/laeTraj.h"
#include "Laelaps/laePowertrain.h"
#include "Laelaps/laePlatform.h"

Go to the source code of this file.

Classes

class  laelaps::LaeKinematics
 Laelaps kinematics class. More...
 
class  laelaps::LaeKinAction
 Laelaps kinematics base action class. More...
 
class  laelaps::LaeKinActionVelocity
 Laelaps kinematics velocity action class. More...
 
class  laelaps::LaeKinActionDutyCycle
 Laelaps kinematics duty cycle action class. More...
 
class  laelaps::LaeKinActionTwist
 Laelaps kinematics velocity action class. More...
 

Namespaces

 laelaps
 The Laelaps namespace encapsulates all Laelaps related constructs.
 

Detailed Description

The Laelaps kinematics and dynamics class interface.

The class instance starts a kinematics thread to sense kinematic chain dynamics, control forward geometry kinematics, and monitor servo health.

The kinematics includes all physical kinematic chains. The individual chains are controlled by the higher-level interfaces such as MoveIt!

The kinematics thread performs several functions:

  • Position, velocity, acceleration (future), and torque monitoring.
  • Goal motor position and velocity PID control.
  • Torque limiting override control.
  • Servo health monitoring.
Kinedynamics Algorithm:
* sense()
*   for each powertrain
*     sense dynamics (x reads)
* react()
*   for each powertrain
*     stop motion if necessary (x writes)
* plan()
*   for each powertrain
*     plan motion.
* act()
*   sync write (x writes)
* monitor()
*   health of motor controller with two motors  (x reads)
* block wait for next cycle time
* 
Author
Robin Knight (robin.nosp@m..kni.nosp@m.ght@r.nosp@m.oadn.nosp@m.arrow.nosp@m.s.co.nosp@m.m)
Copyright
© 2015-2017. RoadNarrows LLC.
http://www.roadnarrows.com
All Rights Reserved

Definition in file laeKin.h.