Project Chrono: chrono::vehicle::ChInteractiveDriverVSG Class Reference

Public Member Functions | Friends | List of all members
chrono::vehicle::ChInteractiveDriverVSG Class Reference
VEHICLE module » Driver system

## Description

VSG-based interactive driver for the a vehicle.

This class implements the functionality required by the base ChInteractiveDriver class using keyboard inputs.

`#include <ChInteractiveDriverVSG.h>`

Inheritance diagram for chrono::vehicle::ChInteractiveDriverVSG:
[legend]
Collaboration diagram for chrono::vehicle::ChInteractiveDriverVSG:
[legend]

## Public Member Functions
| ChInteractiveDriverVSG (ChVehicleVisualSystemVSG &vsys)
virtual void | Initialize () override
| Initialize this driver system.
void | IncreaseThrottle ()
| Increase Throttle.
void | DecreaseThrottle ()
| Decrease Throttle.
void | SteeringLeft ()
| Steering Left.
void | SteeringRight ()
| Steering Right.
void | IncreaseClutch ()
| Increase Clutch.
void | DecreaseClutch ()
| Decrease Clutch.
void | SteeringCenter ()
| Center Steering.
void | ReleasePedals ()
| Release Pedals.
Public Member Functions inherited from chrono::vehicle::ChInteractiveDriver
| ChInteractiveDriver (ChVehicle &vehicle)
| Construct an interactive driver.
virtual bool | HasJoystick () const
| Check if joystick is supported.
virtual void | Synchronize (double time) override
| Update the state of this driver system at the specified time.
virtual void | Advance (double step) override
| Advance the state of this driver system by the specified time step.
void | SetInputMode (InputMode mode)
| Set the current functioning mode.
void | SetThrottleDelta (double delta)
| Set the increment in throttle input for each recorded keypress (default 1/50).
void | SetSteeringDelta (double delta)
| Set the increment in steering input for each recorded keypress (default 1/50).
void | SetBrakingDelta (double delta)
| Set the increment in braking input for each recorded keypress (default 1/50).
void | SetClutchDelta (double delta)
| Set the increment in clutch input for each recorded keypress (default 1/50).
void | SetStepsize (double val)
| Set the step size for integration of the internal driver dynamics.
void | SetGains (double steering_gain=1, double throttle_gain=1, double braking_gain=1, double clutch_gain=1)
| Set gains for internal dynamics.
void | SetInputDataFile (const std::string &filename)
| Set the input file for the underlying data driver.
Public Member Functions inherited from chrono::vehicle::ChDriver
| ChDriver (ChVehicle &vehicle)
| Construct a driver subsystem associated with the given vehicle.
double | GetThrottle () const
| Get the driver throttle input (in the range [0,1]).
double | GetSteering () const
| Get the driver steering input (in the range [-1,+1]).
double | GetBraking () const
| Get the driver braking input (in the range [0,1]).
double | GetClutch () const
| Get the driver clutch input (in the range [0,1]).
DriverInputs | GetInputs () const
| Get all current inputs at once.
bool | LogInit (const std::string &filename)
| Initialize output file for recording driver inputs.
bool | Log (double time)
| Record the current driver inputs to the log file.
void | SetSteering (double steering)
| Overwrite the value for the driver steering input (input is clamped in [-1,+1]).
void | SetThrottle (double throttle)
| Overwrite the value for the driver throttle input (input is clamped in [0,+1]).
void | SetBraking (double braking)
| Overwrite the value for the driver braking input (input is clamped in [0,+1]).
void | SetClutch (double clutch)
| Overwrite the value for the clutch braking input (input is clamped in [0,+1]).

## Friends
class | ChVehicleVisualSystemVSG

## Additional Inherited Members
Public Types inherited from chrono::vehicle::ChInteractiveDriver
enum class | InputMode { LOCK , KEYBOARD , DATAFILE , JOYSTICK }
| Functioning modes for a ChInteractiveDriver. More...
Protected Attributes inherited from chrono::vehicle::ChInteractiveDriver
InputMode | m_mode
| current mode of the driver
double | m_steering_target
| current target value for steering input
double | m_throttle_target
| current target value for throttle input
double | m_braking_target
| current target value for braking input
double | m_clutch_target
| current target value for clutch input
double | m_stepsize
| time step for internal dynamics
double | m_steering_delta
| steering increment on each keypress
double | m_throttle_delta
| throttle increment on each keypress
double | m_braking_delta
| braking increment on each keypress
double | m_clutch_delta
| clutch increment on each keypress
double | m_steering_gain
| gain for steering internal dynamics
double | m_throttle_gain
| gain for throttle internal dynamics
double | m_braking_gain
| gain for braking internal dynamics
double | m_clutch_gain
| gain for clutch internal dynamics
double | m_time_shift
| time at which mode was switched to DATAFILE
std::shared_ptr< ChDataDriver > | m_data_driver
| embedded data driver (for playback)
Protected Attributes inherited from chrono::vehicle::ChDriver
ChVehicle & | m_vehicle
| reference to associated vehicle
double | m_throttle
| current value of throttle input
double | m_steering
| current value of steering input
double | m_braking
| current value of braking input
double | m_clutch
| current value of clutch input

## Member Function Documentation

## ◆ Initialize()

void chrono::vehicle::ChInteractiveDriverVSG::Initialize | ( |  | ) |
| overridevirtual

Initialize this driver system.

Reimplemented from chrono::vehicle::ChDriver.

The documentation for this class was generated from the following files:

- D:/W/B/src/chrono-9.0.1/src/chrono_vehicle/driver/ChInteractiveDriverVSG.h
- D:/W/B/src/chrono-9.0.1/src/chrono_vehicle/driver/ChInteractiveDriverVSG.cpp