chrono::viper::ViperDCMotorControl Class Reference

Description

Concrete Viper driver class for a simple DC motor control.

This implements a simplistic DC motor control by directly applying torques to the rover's driveshafts. Control of the steering is left to the caller (through SetSteering).

#include <Viper.h>

Inheritance diagram for chrono::viper::ViperDCMotorControl:
Collaboration diagram for chrono::viper::ViperDCMotorControl:

Public Member Functions

void SetMotorStallTorque (double torque, ViperWheelID id)
 Set motor stall torque for the specified wheel (default: 300).
 
void SetMotorNoLoadSpeed (double speed, ViperWheelID id)
 Set DC motor no load speed (default: pi).
 
- Public Member Functions inherited from chrono::viper::ViperDriver
void SetSteering (double angle)
 Set current steering input (angle: negative for left, positive for right).
 
void SetSteering (double angle, ViperWheelID id)
 Set current steering input (angle: negative for left turn, positive for right turn). More...
 
void SetLifting (double angle)
 Set current lift input angle. More...
 

Additional Inherited Members

- Public Types inherited from chrono::viper::ViperDriver
enum  DriveMotorType { DriveMotorType::SPEED, DriveMotorType::TORQUE }
 Type of drive motor control. More...
 
- Protected Attributes inherited from chrono::viper::ViperDriver
Viperviper
 associated Viper rover
 
std::array< double, 4 > drive_speeds
 angular speeds for drive motors
 
std::array< double, 4 > steer_angles
 angles for steer motors
 
std::array< double, 4 > lift_angles
 angles for lift motors
 

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono_models/robot/viper/Viper.h
  • /builds/uwsbel/chrono/src/chrono_models/robot/viper/Viper.cpp