[Rock-dev] Replacement for base::actuators::MotorState

Janosch Machowinski Janosch.Machowinski at dfki.de
Tue Feb 19 10:59:54 CET 2013


Included remarks from Matthias,
turns out we have already a base::Temperature.
I did not add constructors yet as this is more about
the layout and fields of the types and if the structure
would cover all of our use cases.

     struct Encoder
     {
     public:
         ///determines weather this is an absolute
         ///or incremental reading
         bool absolute;

         ///Position of the actuator
         base::Angle position;

         ///Speed in radians per second
         double speed;
     };

     struct ActuatorState
     {
     public:
         ///Time of the State
         base::Time time;

         ///The amount of current in A
         ///consumed by the actuator
         float actuatorCurrent;

         ///Torque in Nm applied by the actuator
         double actuatorTorque;

         ///Encoder at the motor shaft
         Encoder motorShaftEncoder;

         ///Encoder at the output side
         ///e.g. behind the gearbox
         Encoder ouputSideEncoder;

         ///Current pwm applied to the actuator
         ///range [-1, 1]
         float pwm;

         ///temperature of the actuator
         base::Temperature actuatorTemperature;

         ///temperature of the motor driver pcb
         base::Temperature motorDriverTemperature;
     };

     struct ActuatorStateSet
     {
     public:
         std::vector<ActuatorState> states;
     };

-- 
  Dipl. Inf. Janosch Machowinski
  SAR- & Sicherheitsrobotik

  Universität Bremen
  FB 3 - Mathematik und Informatik
  AG Robotik
  Robert-Hooke-Straße 5
  28359 Bremen, Germany

  Tel.:     +49 421 178 45-6614
  Zentrale: +49 421 178 45-6611
  Fax:      +49 421 178 45-4150
  E-Mail:   jmachowinski at informatik.uni-bremen.de

  Weitere Informationen: http://www.informatik.uni-bremen.de/robotik



More information about the Rock-dev mailing list