# SIM\_wheelbot --- SIM\_wheelbot is a simulation of a two-wheeled electric vehicle that follows a set of waypoints. ![Picture of Vehicle](images/Figure1.png) --- ### 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](images/Figure2.png) #### Adding Waypoints Waypoints, for the vehicle to follow, are added with a call to veh.vehicle.add_waypoint( double N, double W ) ### 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