Skip to content

Commit 151a8ba

Browse files
committed
organizing project
1 parent aaaa85d commit 151a8ba

File tree

5 files changed

+49
-64
lines changed

5 files changed

+49
-64
lines changed
-35.2 KB
Binary file not shown.

MotionModelGP_SingleTrack_nominal.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
%
3131
%--------------------------------------------------------------------------
3232

33-
properties
33+
properties(Constant)
3434
M = 500 *1.5 % vehicle mass
3535
I_z = 600 *1.5 % vehicle moment of inertia (yaw axis)
3636
g = 9.81 % gravitation

MotionModelGP_SingleTrack_true.m

Lines changed: 2 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
%
3131
%--------------------------------------------------------------------------
3232

33-
properties
33+
properties(Constant)
3434
M = 500 % vehicle mass
3535
I_z = 600 % vehicle moment of inertia (yaw axis)
3636
g = 9.81 % gravitation
@@ -48,21 +48,10 @@
4848
C_f = 8; % shape factor (Pacejka) (front wheel)
4949
D_f = 4560.4; % peak value (Pacejka) (front wheel)
5050
E_f = -0.5; % curvature factor (Pacejka) (front wheel)
51-
5251
B_r = 0.45; % stiffnes factor (Pacejka) (rear wheel)
5352
C_r = 8; % shape factor (Pacejka) (rear wheel)
5453
D_r = 4000; % peak value (Pacejka) (rear wheel)
5554
E_r = -0.5; % curvature factor (Pacejka) (rear wheel)
56-
57-
% B_f = 10.96; % stiffnes factor (Pacejka) (front wheel)
58-
% C_f = 1.3; % shape factor (Pacejka) (front wheel)
59-
% D_f = 4560.4; % peak value (Pacejka) (front wheel)
60-
% E_f = -0.5; % curvature factor (Pacejka) (front wheel)
61-
%
62-
% B_r = 12.67; % stiffnes factor (Pacejka) (rear wheel)
63-
% C_r = 1.3; % shape factor (Pacejka) (rear wheel)
64-
% D_r = 3947.81; % peak value (Pacejka) (rear wheel)
65-
% E_r = -0.5; % curvature factor (Pacejka) (rear wheel)
6655
end
6756

6857
properties(Constant)
@@ -220,55 +209,6 @@
220209
%------------------------------------------------------------------
221210
gradu = zeros(obj.m,obj.n);
222211
end
223-
224-
function testTyres(obj)
225-
c_f = 14000; % = 1*g*M/deltamax % front coornering stiffness (C*delta=Fy~M*a)
226-
c_r = 14000; % = 2*g*M/deltamax % rear coornering stiffness
227-
228-
% Pacejka lateral dynamics parameters
229-
B_f = 0.4; % stiffnes factor (Pacejka) (front wheel)
230-
C_f = 8; % shape factor (Pacejka) (front wheel)
231-
D_f = 4560.4; % peak value (Pacejka) (front wheel)
232-
E_f = -0.5; % curvature factor (Pacejka) (front wheel)
233-
234-
B_r = 0.45; % stiffnes factor (Pacejka) (rear wheel)
235-
C_r = 8; % shape factor (Pacejka) (rear wheel)
236-
D_r = 4000; % peak value (Pacejka) (rear wheel)
237-
E_r = -0.5; % curvature factor (Pacejka) (rear wheel)
238-
239-
B_f = 10.96; % stiffnes factor (Pacejka) (front wheel)
240-
C_f = 1.3; % shape factor (Pacejka) (front wheel)
241-
D_f = 4560.4; % peak value (Pacejka) (front wheel)
242-
E_f = -0.5; % curvature factor (Pacejka) (front wheel)
243-
244-
B_r = 12.67; % stiffnes factor (Pacejka) (rear wheel)
245-
C_r = 1.3; % shape factor (Pacejka) (rear wheel)
246-
D_r = 3947.81; % peak value (Pacejka) (rear wheel)
247-
E_r = -0.5; % curvature factor (Pacejka) (rear wheel)
248-
249-
a_r = deg2rad(-25:0.1:25);
250-
a_f = deg2rad(-25:0.1:25);
251-
W_Fy_r = D_r*sin(C_r*atan(B_r*a_r-E_r*(B_r*a_r -atan(B_r*a_r)))); % rear lateral force
252-
W_Fy_f = D_f*sin(C_f*atan(B_f*a_f-E_f*(B_f*a_f -atan(B_f*a_f)))); % front lateral force
253-
254-
figure('Color','w'); hold on; grid on;
255-
plot(rad2deg(a_r),W_Fy_r/1000,'DisplayName','Pacejka tyre model')
256-
plot(rad2deg(a_r),a_r*c_r/1000,'DisplayName','Constant coornering stiffness model')
257-
title('Rear tyre')
258-
xlabel('Slip angle [deg]');
259-
ylabel('Tyre lateral force [kN]')
260-
legend
261-
262-
figure; hold on; grid on;
263-
plot(rad2deg(a_f),W_Fy_f/1000,'DisplayName','Pacejka tyre model')
264-
plot(rad2deg(a_f),a_r*c_f/1000,'DisplayName','Constant coornering stiffness model')
265-
title('Front tyre')
266-
xlabel('Slip angle [deg]');
267-
ylabel('Tyre lateral force [kN]')
268-
legend
269-
end
270-
271-
212+
272213
end
273-
274214
end

main_singletrack.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
maxiter = 30; % max NMPC iterations per time step
1919
N = 10; % NMPC prediction horizon
2020

21-
loadPreTrainedGP = false;
21+
loadPreTrainedGP = true;
2222
GPfile = fullfile(pwd,'/simresults/20-01-15-out-GP-without-GP.mat');
2323
% GPfile = fullfile(pwd,'/simresults/20-01-15-out-GP-with-GP-optimized.mat');
2424
useGP = false;

test-files/tyres_diff.m

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
2+
clear all; close all; clc;
3+
4+
% Linear wheel dynamics from nominal model
5+
c_f = MotionModelGP_SingleTrack_nominal.c_f;
6+
c_r = MotionModelGP_SingleTrack_nominal.c_r;
7+
8+
9+
% Pacejka lateral dynamics parameters
10+
B_f = MotionModelGP_SingleTrack_true.B_f; % stiffnes factor (Pacejka) (front wheel)
11+
C_f = MotionModelGP_SingleTrack_true.C_f; % shape factor (Pacejka) (front wheel)
12+
D_f = MotionModelGP_SingleTrack_true.D_f; % peak value (Pacejka) (front wheel)
13+
E_f = MotionModelGP_SingleTrack_true.E_f; % curvature factor (Pacejka) (front wheel)
14+
15+
B_r = MotionModelGP_SingleTrack_true.B_r; % stiffnes factor (Pacejka) (rear wheel)
16+
C_r = MotionModelGP_SingleTrack_true.C_r; % shape factor (Pacejka) (rear wheel)
17+
D_r = MotionModelGP_SingleTrack_true.D_r; % peak value (Pacejka) (rear wheel)
18+
E_r = MotionModelGP_SingleTrack_true.E_r; % curvature factor (Pacejka) (rear wheel)
19+
20+
a_r = deg2rad(-30:0.1:30);
21+
a_f = deg2rad(-30:0.1:30);
22+
W_Fy_r = D_r*sin(C_r*atan(B_r*a_r-E_r*(B_r*a_r -atan(B_r*a_r)))); % rear lateral force
23+
W_Fy_f = D_f*sin(C_f*atan(B_f*a_f-E_f*(B_f*a_f -atan(B_f*a_f)))); % front lateral force
24+
25+
figure('Color','w'); hold on; grid on;
26+
plot(rad2deg(a_r),W_Fy_r/1000,'DisplayName','Pacejka tyre model')
27+
plot(rad2deg(a_r),a_r*c_r/1000,'DisplayName','Constant cornering stiffness model')
28+
% title('Rear tyre')
29+
xlabel('Slip angle [deg]');
30+
ylabel('Tyre lateral force [kN]')
31+
legend('Location','northwest')
32+
xlim([-30,30])
33+
ylim([-6,6])
34+
fp.savefig('rear_tyre')
35+
36+
figure('Color','w'); hold on; grid on;
37+
plot(rad2deg(a_f),W_Fy_f/1000,'DisplayName','Pacejka tyre model')
38+
plot(rad2deg(a_f),a_r*c_f/1000,'DisplayName','Constant cornering stiffness model')
39+
% title('Front tyre')
40+
xlabel('Slip angle [deg]');
41+
ylabel('Tyre lateral force [kN]')
42+
legend('Location','northwest')
43+
xlim([-30,30])
44+
ylim([-6,6])
45+
fp.savefig('front_tyre')

0 commit comments

Comments
 (0)