Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Vehicle modelisation on WeBots

Tags:

webots

I would like to know how the vehicle's objects are modeled in WeBots and its dynamics equations. I know that two types of control can be used: using cruising speed, with targets a final velocity but with a constant acceleration (proportional to the time0to100 value in the PROTO file), and using the throttle which controls the torque of the vehicle.

Since I want to control the vehicle with a controller at high frequencies, the only option to realistically emulate a real vehicle is the torque control. But to predict the behavior of the vehicle in this case I need to know how the torque is calculated, the transmission equations and the how all of this is implemented with ODE. I read the Car and Driver library pages and both of then had some details and descriptions about how the system works, but these explanations wasn't detailed enough. I would also like to understand how the interaction between tires and asphalt is modeled.

Thanks,

like image 929
Nelson Avatar asked Dec 02 '25 05:12

Nelson


1 Answers

Control in torque is indeed the most realistic option.

About the equations, the various engine models are described in detail here: https://www.cyberbotics.com/doc/automobile/driver-library#engine-models

In addition, the transmission and Ackermann mechanism is used to convert/transmit the torque from the motor to the two/four wheels, this is not documented, but the code is accessible here (part specific to vehicles): https://github.com/omichel/webots/blob/master/projects/default/libraries/vehicle/c/driver/src/driver.c#

In particular, the engine models + transmission is implemented here: https://github.com/omichel/webots/blob/master/projects/default/libraries/vehicle/c/driver/src/driver.c#L126

Which is then split between the 2/4wheels: https://github.com/omichel/webots/blob/master/projects/default/libraries/vehicle/c/driver/src/driver.c#L299

About interaction between tires an asphalt, this is defined as regular contact properties in Webots (which are then used to create ODE contact joints: http://ode.org/wiki/index.php?title=Manual#Contact):

https://www.cyberbotics.com/doc/reference/contactproperties

like image 194
David Mansolino Avatar answered Dec 08 '25 09:12

David Mansolino



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!