Magic Formula in Multibody model

5 visualizzazioni (ultimi 30 giorni)
Panagiotis
Panagiotis il 17 Ago 2024
Commentato: Sam Chak il 17 Ago 2024
Hello,
I am using Magic Formula for contact forces in a Multibody Vehicle model (Simscape). The COG of vehicle is free to move about World Frame through a 6-DOF joint, where I kept the internal mechanics (stifness/damping to zero).
I have the following problem using Magic Formula. My body is bouncing to the ground the whole simulaiton time. Looking on the wheel forces through magic formula I get a sinus pfofile of Fz(front,rear) with not enough damping. Also after some time the front wheel Fz is to high that makes the front axle to bounce much and lose contact.
I tried to put some stifness and damping on the 6-DOF joint for Pz or change the .tir file vertical/stifness/damping. Only by giving a high Pz stifness to the joint makes the body move properly, however I see some weird response on the wheel Fz afterwards.
Could you please give me some advice or any ideas to solve that issue?
  1 Commento
Sam Chak
Sam Chak il 17 Ago 2024
Have you tried using your own "Magic Formula"?
You can create one by taking the derivative of the product of a linear function and a relatively fast saturating sigmoidal curve. However, the inverse tangent, , is 'too slow' because it takes a very large value to saturate at .
x = linspace(-1, 1, 2001);
k1 = 3; % parameter 1
k2 = 5; % parameter 2
y1 = k1*x; % Linear function, where k1 > 0
y2 = erf((sqrt(pi)/2)*k2*x); % Gaussian Integral function (aka Error function)
y3 = (2/pi)*atan(pi/2*k2*x); % Inverse tangent
y = y1.*y2;
dy = gradient(y)./gradient(x);
figure
plot(x, [y1; y2; y3; y]), grid on
xlabel('x'), ylabel('y')
title('Find Your Own Magic Formula')
legend('Linear fcn (y_{1})', 'Sigmoid (y_{2})', 'ArcTan (y_{3})', 'y_{1}·y_{2}', 'location', 'best')
figure
plot(x, dy, 'linewidth', 2, 'color', '#265EF5'), grid on
xlabel('Slip ratio'), ylabel('Longitudinal Force')
title('Your Tire Model')

Accedi per commentare.

Risposte (0)

Prodotti


Release

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by