trick/trick_sims/SIM_wheelbot
Nino Tarantino 31961f482c Don't override the CC and C++ environment variables
Fixes an issue where some makefiles override the user's CC and C++
environment variables.
2024-12-06 08:39:20 -06:00
..
images Documentation updates for Graphics, Guidance, and Control models. Ref #1011 2020-07-27 18:04:40 -05:00
models Don't override the CC and C++ environment variables 2024-12-06 08:39:20 -06:00
Modified_data Documentation updates for Graphics, Guidance, and Control models. Ref #1011 2020-07-27 18:04:40 -05:00
RUN_test Home Button and End Behavior Improvments to Wheelbot 2020-08-03 10:09:34 -05:00
README.md Home Button and End Behavior Improvments to Wheelbot 2020-08-03 10:09:34 -05:00
S_define Disable unneeded SimObjects from default_trick_sys.sm in Trick exampl… (#1719) 2024-05-23 10:12:27 -05:00
S_overrides.mk Move the Wheelbot models to the SIM_wheelbot directory 2016-02-22 11:59:11 -06:00

SIM_wheelbot


SIM_wheelbot is a simulation of a two-wheeled electric vehicle that follows a set of waypoints.

Picture of Vehicle

Building the Simulation

In the SIM_wheelbot directory, type trick-CP to build the simulation executable. When it's complete, you should see:

=== Simulation make complete ===

Now cd into models/Graphics/ and type make. This builds the display client for the simulation.

Running the Simulation

In the SIM_wheelbot directory:

% S_main_*.exe RUN_test/input.py

Inputs

Variable Type Units Default Value
veh.vehicle.distanceBetweenWheels double m 0.183
veh.vehicle.wheelRadius double m 0.045
veh.vehicle.wheelSpeedLimit double rad/s 8.880
veh.vehicle.headingRateLimit double rad/s 𝛑/4
veh.vehicle.wheelDragConstant double -- 1.875
veh.vehicle.corningStiffness double -- 10.0
veh.vehicle.slowDownDistance double -- 0.5
veh.vehicle.arrivalDistance double -- 0.1

Picture of Vehicle

Adding Waypoints

Waypoints, for the vehicle to follow, are added with a call to

veh.vehicle.add_waypoint( double N, double W )

Adding Home point

A home point is designated by the last waypoint in the waypoint file.

Input/Output

Variable Type Units
veh.vehicle.position double[2] m
veh.vehicle.velocity double[2] m
veh.vehicle.heading double rad
veh.vehicle.headingRate double rad

Outputs

Variable Type Units
veh.vehicle.acceleration double[2] m
veh.vehicle.headingAccel double rad
veh.vehicle.driveForce double[2] N
veh.vehicle.lateralTireForce double[2] N
veh.vehicle.rollingResistForce double[2] N
veh.vehicle.forceTotal double[2] N
veh.vehicle.vehicleZTorque double N*m