GCOP  1.0
Public Member Functions | Public Attributes
gcop::Bulletrccar1 Class Reference

#include <bulletrccar1.h>

Inheritance diagram for gcop::Bulletrccar1:
Inheritance graph
[legend]
Collaboration diagram for gcop::Bulletrccar1:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Bulletrccar1 (BulletWorld &m_world, vector< double > *zs_=0)
 ~Bulletrccar1 ()
double Step (Vector4d &xb, double t, const Vector4d &xa, const Vector2d &u, double h, const VectorXd *p, Matrix4d *A=0, Matrix42d *B=0, Matrix4pd *C=0)
double Step1 (Vector4d &xb, const Vector2d &u, double h, const VectorXd *p=0, Matrix4d *A=0, Matrix42d *B=0, Matrix4pd *C=0)
double Step3 (Vector4d &xb, const Vector2d &u, const Vector4d &w, double h, const VectorXd *p=0, Matrix4d *A=0, Matrix42d *B=0, Matrix4pd *C=0, Matrix4d *D=0)
bool reset (const Vector4d &x, double t=0)
bool NoiseMatrix (Matrix4d &Q, double t, const Vector4d &x, const Vector2d &u, double dt, const VectorXd *p)

Public Attributes

int rightIndex
 right of the car index in terms of x,y,z assigns the coordinate sys of car
int upIndex
int forwardIndex
double carmass
btVector3 car_halfdims
double gEngineForce
double gBreakingForce
double maxEngineForce
double maxBreakingForce
double gVehicleSteering
double steeringClamp
double torqueClamp
double wheelRadius
double wheelWidth
double wheelFriction
double suspensionStiffness
double suspensionDamping
double suspensionCompression
double rollInfluence
btScalar suspensionRestLength
btScalar m_defaultContactProcessingThreshold
btVector3 wheelDirectionCS0
btVector3 wheelAxleCS
double initialz
double kp_steer
btTransform offsettrans
btTransform offsettransinv
vector< double > * zs
 Height of the rccar only used for visualization only x and y are used in optimization.
int count_zs
bool reset_drivevel
 Used to make sure the velocity of the chassis is used just after reset instead of vehicle vel.
btRigidBody * m_carChassis
btRaycastVehicle * m_vehicle
btCollisionShape * m_wheelShape
btRaycastVehicle::btVehicleTuning m_tuning
btVehicleRaycaster * m_vehicleRayCaster
BulletWorldm_world

Detailed Description

A simple rear-drive Rccar model with 2nd order dynamics.

The state is $ \bm x = (x,y,\theta, v) \in\mathbb{R}^4$ and controls are $ \bm u = (drive torque, steer_angles ) \in\mathbb{R}^5$

This uses bullet to propagate the dynamics of the car. To be consistent with bullet #TODO Add steering angle to state since, the control has been changed to cmded steering angle instead of true steering angle demos and OpenGL coordinate system, we use coordinate system of y being up, x being to right, z being to the back of the car. This may be weird but makes it simple for display purposes

Author: Marin Kobilarov marin(at)jhu.edu Modified: Gowtham Garimella


Constructor & Destructor Documentation

Bulletrccar1::Bulletrccar1 ( BulletWorld m_world,
vector< double > *  zs_ = 0 
)

Member Function Documentation

bool Bulletrccar1::NoiseMatrix ( Matrix4d Q,
double  t,
const Vector4d &  x,
const Vector2d &  u,
double  dt,
const VectorXd *  p 
)
bool Bulletrccar1::reset ( const Vector4d &  x,
double  t = 0 
)
double Bulletrccar1::Step ( Vector4d &  xb,
double  t,
const Vector4d &  xa,
const Vector2d &  u,
double  h,
const VectorXd *  p,
Matrix4d A = 0,
Matrix42d B = 0,
Matrix4pd C = 0 
) [virtual]

Reimplemented from gcop::Rccar.

References reset(), and Step1().

double Bulletrccar1::Step1 ( Vector4d &  xb,
const Vector2d &  u,
double  h,
const VectorXd *  p = 0,
Matrix4d A = 0,
Matrix42d B = 0,
Matrix4pd C = 0 
)
double Bulletrccar1::Step3 ( Vector4d &  xb,
const Vector2d &  u,
const Vector4d &  w,
double  h,
const VectorXd *  p = 0,
Matrix4d A = 0,
Matrix42d B = 0,
Matrix4pd C = 0,
Matrix4d D = 0 
)

References m_carChassis, and Step1().


Member Data Documentation

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by reset(), and Step1().

Referenced by Bulletrccar1().

Referenced by reset().

Referenced by reset(), and Step1().

Referenced by reset(), and Step1().

Referenced by reset().

Referenced by Bulletrccar1(), reset(), Step1(), and Step3().

btRaycastVehicle::btVehicleTuning gcop::Bulletrccar1::m_tuning

Referenced by Bulletrccar1().

btRaycastVehicle* gcop::Bulletrccar1::m_vehicle

Referenced by Bulletrccar1(), reset(), and Step1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1(), reset(), and Step1().

Referenced by Bulletrccar1(), and Step1().

Referenced by Bulletrccar1(), and Step1().

Used to make sure the velocity of the chassis is used just after reset instead of vehicle vel.

Referenced by reset().

right of the car index in terms of x,y,z assigns the coordinate sys of car

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1(), and Step1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

Referenced by Bulletrccar1().

vector<double>* gcop::Bulletrccar1::zs

Height of the rccar only used for visualization only x and y are used in optimization.

Referenced by reset(), and Step1().


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