Road Profile as Input in Simulink
    12 views (last 30 days)
  
       Show older comments
    
Hi, i just created a PSD Road Profile, using the following code.
k = 3; % Values For ISO Road C-D Roughness Classification, from 3 to 9
V=40; % Car Velocity Km/h
L  = 250;  % Length Of Road Profile (m)
N=L/(V/3.6)*100; %  Number of data points
B  = L/N ; % Sampling Interval (m)
dn = 1/L;  % Frequency Band
n0 = 0.1;        % Spatial Frequency (cycles/m)
n  = dn : dn : N*dn; % Spatial Frequency Band
phi =  2*pi*rand(size(n)); % Random Phase Angle
Amp1 = sqrt(dn)*(2^k)*(1e-3)*(n0./n); % Amplitude for Road  Class A-B
x = 0:B:L-B; % Abscissa Variable from 0 to L
hx = zeros(size(x));
for i=1:length(x)
    hx(i) = sum(Amp1.*cos(2*pi*n*x(i)+ phi));
end
plot(x,hx)
Now, I need to use this road profile as input in a simulink half car suspension model that I have built. Hx and X are two 1x2250 arrays. Is there any way to do it? Thanks in advance.
1 Comment
  Mert Buyukkopru
 on 4 Apr 2022
				You can use from workspace block to get road input (your h(x) ) from Matlab workspace.  You also need to create time vector start from 0 until vehicle stop.
Answers (1)
  Haritha
      
 on 24 Oct 2018
        Create a call back function in Simulink by using model explorer.
1 Comment
  Pankaj Chaurasia
 on 26 Feb 2022
				I am having same doubt, and i have created a call back function, now how to use this call back function it is not having an output port and i want to use it as input sourse for my system kindly tell me... 
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!