Rigidbody Modelling of a Quarter of Suspension

Official Python bindings with a focus on reinforcement learning and robotics.
Post Reply
cajnetko
Posts: 2
Joined: Wed Mar 25, 2020 4:21 pm

Rigidbody Modelling of a Quarter of Suspension

Post by cajnetko »

Hi,
I am trying to model a quarter of vehicle suspension in pybullet however I'm struggling where to even begin. It would be a double wishbone suspension where the wheel could go up and down with respect to reference position as well as turn. The chassis mounting points would be fixed in space and the rest should be actuated. It should have 2 revolute joints, 3 spherical and one universal/constant velocity to have fully defined kinematics and 4 rigidbodies in total (upper and lower wishbone, tie rod and wheel carrier- I don't need the wheel itself, however it would be useful to have a disc (representing wheel center) rigidly attached to wheel carrier).
I don't need the forces and acceleration outputs (for now), I just want to have as an output coordinates of suspension hardpoints when the wheel moves for instance 20mm up and that's it. Also, I want to model all the bodies inside the pybullet, however I still don't understand the logic behind pybullet. I imagine that an example of some four bar linkage code in pybullet would help me clarify all I need for setting up this suspension model however I couldn't find any on the internet.
So finally my questions are, do you people think that modelling suspension as briefly described above is possible in pybullet (since it would need forward kinematics of 3D "double" closed loop), give me some general directions on which features in pybullet should I explore to make this computationally efficient (since I only need point positions) and can someone share me some code of a four-bar linkage (or similar) in pybullet?
Also, I'm sorry if this question has popped up before and I'm repeating, but after few days of search I didn't manage to find something helpful.
Thanks in advance

https://en.wikipedia.org/wiki/Double_wi ... suspension
cajnetko
Posts: 2
Joined: Wed Mar 25, 2020 4:21 pm

Re: Rigidbody Modelling of a Quarter of Suspension

Post by cajnetko »

I have managed to position all components using one Multibody with all links created inside pybullet, no urdf or similar files used. However, now when I try to start the simulation it blows up.
I have used exclusively fixed joints and revolute joints to simulate spherical joints within multibody. I have confirmed that all multibody links are in position by changing all revolute joints with fixed joints.
I have also read here on forums that this problem can be resolved by activating double precision in bullet, however I don't see API for doing that in pybullet, so could someone please guide me how to activate double precision in pybullet or tell me what else can I do to make a successful simulation.
Post Reply