Vibrationsmätning, stillastående - dubbelmassesvänghjul?
Postat: tis 20 jan 2015, 13:11
Ok, håll i er för nu blir det långt och nördigt! Som sett i annan tråd har jag strul med vibrationer i min V50 2.0D-07:a (5vxlad M56). Bland annat en viss vibration när man varvar stillastående som gör att bilen vibrerar liknande att motorn går orent dels runt 1100 v/min, dels runt 2100-2300 v/min. Jag kliar mig i skallen och försöker förstå, vad är det egentligen som händer som skapar dessa vibrationer??
För att försöka förstå har jag gjort lite mätningar. Jag har använt appen "Accelerator monitor", som jag kört på barnens Nexus-7-platta (min egen telefon gav för låg mätfrekvens) för att "spela in" accelerationsdata vid olika varvtal från bilen. Med 200Hz samplingfrekvens fångas alla vibrationer upp till 100Hz. Jag har därefter skapat ett skript i Matlab som analyserar filen och visar vilka frekvenser som signalen innehåller (lägger till skriptet längst ner i inlägget). Så här blev resultatet.

Varvtal: 810V/min (13.5 Hz)
Analys: Vevaxeln snurrar med 13.5Hz vilket gör att motorns tändcykler kommer att synas som dubbla frekvensen (27Hz) (se även avsnittet 'piston speed' i följande länk http://en.wikipedia.org/wiki/Inline-four_engine), finns även komponenter vid 27Hz gånger 2 (54Hz), samt 27Hz gånger 3 (81Hz). Samtliga är naturliga och känns helt normala i bilen.
Förväntade (harmoniska) frekvenser: 13.5, 27, 54, 81Hz
Ej förväntade frekvenser: -

Varvtal: 950V/min
Förväntade frekvenser: (16), 32, 64, 96Hz
Ej förväntade frekvenser: Antydan vid 40 samt 10Hz
Upplevelse: En svag obalans kan anas, inget kraftigt

Varvtal: 1100V/min
Förväntade frekvenser: (18), 37, 73, (108)Hz
Ej förväntade frekvenser: 16, 48, 96, 86
Upplevelse: Tydlig obalans, upplevelse av att motorn inte går rent.
Analys: Jag tror att de ej förväntade frekvenserna uppstår av att svänghjulet "står och skakar", vilket då skulle synas dels som att svänghjulet står och slår (för mig skallrar inte detta läget). Förväntar mig dels en frekvens något högre än grundfrekvensen (20Hz), samt en något lägre. Verkar även som att vibrationen endast syns i bilens x-led (tänk från förardörr till passagerardörr) och inte tydligt i bilens längsled (motsvarande y-led), detta kan jag inte förklara, kan vara att bilen för dessa frekvenser är "rörligare" i x-led och att den så att säga "snurr-vibrerar".

Varvtal: 1200V/min
Förväntade frekvenser: (20), 40, 80, (120)Hz
Ej förväntade frekvenser: (Antydningar) 25, 35, 50, 76
Upplevelse: En liten men tydlig obalans i ryggslutet
Analys: Gissar att obalansen härstammar från frekvenserna 25Hz och 35Hz även om amplituderna är små.

Varvtal: 1390V/min
Förväntade frekvenser: (23), 46, 92, (138)Hz
Ej förväntade frekvenser: (Antydningar) 26, 53, 90
Upplevelse: Jämn gång, ingen obalans
Analys: Varför upplevs gången som jämn trots att det finns frekvenser från obalans (26Hz, 53Hz)? Jag tror att motorns egenfrekvens här börjar bli så kraftig att obalansen "försvinner" och inte märks.

Varvtal: 1600V/min
Förväntade frekvenser: 13, (27), 40, 53, 67, 80, 93 (105)
Ej förväntade frekvenser: -
Upplevelse: Jämn gång, ingen obalans
Analys: Samtliga frekvenser är "harmoniska" med motorns egenfrekvens, dvs. de känns inte som obalanser. (13.3Hz, x2=27Hz, x3=40, x4=53Hz, x5=67Hz, x6=80Hz, x7=93Hz).

Varvtal: 1800V/min
Förväntade frekvenser: 15, (30), 45, 60, 75, 90, (120), (180)Hz
Ej förväntade frekvenser: 16, 21
Upplevelse: Jämn gång, ingen obalans
Analys: Samma som ovan. Samtliga frekvenser harmoniska med motorns egenfrekvens. Störst amplitud vid 78Hz vilket jag inte riktigt kan förklara (hade förväntat mig att 60Hz skulle varit störst).

Varvtal: 2000V/min
Förväntade frekvenser: 17, 33, 50, 67, 83, 100
Ej förväntade frekvenser: spik vid 15, svagt vid 20, samt antydningar vid 39 och 41
Upplevelse: En svag obalans börjar anans.
Analys: Störst amplitud vid 78Hz vilket jag inte riktigt kan förklara (hade förväntat mig att 60Hz skulle varit störst).

Varvtal: 2300V/min.
Förväntade frekvenser: 19, 38, 58, 77, 96
Ej förväntade frekvenser: 26, 46
Upplevelse: En kraftig obalans som känns som att motorn inte går rent.
Analys: Här blir det intressent! Tolkar det som att svänghjulet står och slår och därmed bildar frekvenserna 26 och 46Hz. Märk att svänghjulets egenfrekvens inte syns! Däremot slår motorns normala frekvens igenom som vanligt (76Hz).

Varvtal: 2490V/min.
Förväntade frekvenser: 21, 42, 62, 83, 104
Ej förväntade frekvenser: 35, 48, 55
Upplevelse: Går att ana en obalans, men i det stora hela en "ren" gång.
Analys: Motorns högre amplitud går igenom och döljer svänghjulets slag? Svänghjulet fortfarande synligt i 25, 48 samt 55Hz.

Varvtal: 2600V/min.
Förväntade frekvenser: 22, 43, 65, 87, 108
Ej förväntade frekvenser: 28, 43, 49
Upplevelse: Motorn går rent
Analys: Motorns högre amplitud går igenom och döljer svänghjulets slag? Svänghjulets frekvensband smalnar av och blir mer distinkta(?). Kanske gör detta tillsammans med motorns högre amplitud att de döljs bättre?
Matlab-script:
%------------------------------------------------------------------------------------------------------------
%Importera data från Accelerator monitor, välj bort de översta 8 raderna
%Ange varvtal vid rad 25 (tVarvtal)
%Kör scriptet och spara bilden som jpg.
%Flytta till biblioteket med samplingar, kör skriptet
files = dir('*.txt');
for fileNbr=1:length(files)
%Calculate filename
fileName=files(fileNbr).name
tVarvtal=str2num(fileName(1:length(fileName)-4))
%open and import data
DELIMITER = ' ';
HEADERLINES = 8;
% Import the file
newData1 = importdata(fileName, DELIMITER, HEADERLINES);
% Create new variables in the base workspace from those fields.
vars = fieldnames(newData1);
for i = 1:length(vars)
assignin('base', vars{i}, newData1.(vars{i}));
end
ts=mean(data(:,4))/1000;
Fs = 1/ts % Sampling frequency
T = 1/Fs; % Sample time
L = length(data)-10; % Length of signal
t = (0:L-1)*T; % Time vector
% Sum of a 50 Hz sinusoid and a 120 Hz sinusoid
%x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
%y = x + 2*randn(size(t)); % Sinusoids plus noise
%Produce common vector
%va=sqrt(data(:,1).*data(:,1) + data(:,2).*data(:,2) + data(:,3).*data(:,3));
for i=1:2
if i==4
y=va;
else
y=data(:,i);
end
%subplot(3,1,i), plot(Fs*t(1:50),y(1:50))
%title('Vibrationer från bil - mätning med Accelerator monitor')
%xlabel('time (milliseconds)')
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
if i<4
Y = fft(y,NFFT)/L;
%VA(:,i)=Y;
else
Y=sqrt(VA(:,1).*VA(:,1) + VA(:,2).*VA(:,2) + VA(:,3).*VA(:,3));
end
f = Fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
subplot(2,1,i), plot(f,2*abs(Y(1:NFFT/2+1)))
grid
axis([0 Fs/2 0 0.06])
%tVarvtal=2500;
tFreq=tVarvtal/60;
tPhoneMount='Telefonen liggande plant i bilen';
switch i
case 1
title(['Vibrationer vid ',num2str(tVarvtal),'v.min (',num2str(tFreq,3),' / ',num2str(tFreq*2,3) ,'Hz) ',tPhoneMount,' (x-led) (Hz)'])
case 2
title(['Vibrationer vid ',num2str(tVarvtal),'v.min (',num2str(tFreq,3),' / ',num2str(tFreq*2,3) ,'Hz) ',tPhoneMount,' (y-led) (Hz)'])
case 3
title(['Vibrationer vid ',num2str(tVarvtal),'v.min (',num2str(tFreq,3),' / ',num2str(tFreq*2,3) ,'Hz) ',tPhoneMount,' (z-led) (Hz)'])
end
%xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
end
%Get handle to figure
fig=gcf;
%Save file as jpg
saveas(fig,[num2str(tVarvtal,4),' v.min 2015-01-20.jpg'],'jpg')
end
För att försöka förstå har jag gjort lite mätningar. Jag har använt appen "Accelerator monitor", som jag kört på barnens Nexus-7-platta (min egen telefon gav för låg mätfrekvens) för att "spela in" accelerationsdata vid olika varvtal från bilen. Med 200Hz samplingfrekvens fångas alla vibrationer upp till 100Hz. Jag har därefter skapat ett skript i Matlab som analyserar filen och visar vilka frekvenser som signalen innehåller (lägger till skriptet längst ner i inlägget). Så här blev resultatet.

Varvtal: 810V/min (13.5 Hz)
Analys: Vevaxeln snurrar med 13.5Hz vilket gör att motorns tändcykler kommer att synas som dubbla frekvensen (27Hz) (se även avsnittet 'piston speed' i följande länk http://en.wikipedia.org/wiki/Inline-four_engine), finns även komponenter vid 27Hz gånger 2 (54Hz), samt 27Hz gånger 3 (81Hz). Samtliga är naturliga och känns helt normala i bilen.
Förväntade (harmoniska) frekvenser: 13.5, 27, 54, 81Hz
Ej förväntade frekvenser: -

Varvtal: 950V/min
Förväntade frekvenser: (16), 32, 64, 96Hz
Ej förväntade frekvenser: Antydan vid 40 samt 10Hz
Upplevelse: En svag obalans kan anas, inget kraftigt

Varvtal: 1100V/min
Förväntade frekvenser: (18), 37, 73, (108)Hz
Ej förväntade frekvenser: 16, 48, 96, 86
Upplevelse: Tydlig obalans, upplevelse av att motorn inte går rent.
Analys: Jag tror att de ej förväntade frekvenserna uppstår av att svänghjulet "står och skakar", vilket då skulle synas dels som att svänghjulet står och slår (för mig skallrar inte detta läget). Förväntar mig dels en frekvens något högre än grundfrekvensen (20Hz), samt en något lägre. Verkar även som att vibrationen endast syns i bilens x-led (tänk från förardörr till passagerardörr) och inte tydligt i bilens längsled (motsvarande y-led), detta kan jag inte förklara, kan vara att bilen för dessa frekvenser är "rörligare" i x-led och att den så att säga "snurr-vibrerar".

Varvtal: 1200V/min
Förväntade frekvenser: (20), 40, 80, (120)Hz
Ej förväntade frekvenser: (Antydningar) 25, 35, 50, 76
Upplevelse: En liten men tydlig obalans i ryggslutet
Analys: Gissar att obalansen härstammar från frekvenserna 25Hz och 35Hz även om amplituderna är små.

Varvtal: 1390V/min
Förväntade frekvenser: (23), 46, 92, (138)Hz
Ej förväntade frekvenser: (Antydningar) 26, 53, 90
Upplevelse: Jämn gång, ingen obalans
Analys: Varför upplevs gången som jämn trots att det finns frekvenser från obalans (26Hz, 53Hz)? Jag tror att motorns egenfrekvens här börjar bli så kraftig att obalansen "försvinner" och inte märks.

Varvtal: 1600V/min
Förväntade frekvenser: 13, (27), 40, 53, 67, 80, 93 (105)
Ej förväntade frekvenser: -
Upplevelse: Jämn gång, ingen obalans
Analys: Samtliga frekvenser är "harmoniska" med motorns egenfrekvens, dvs. de känns inte som obalanser. (13.3Hz, x2=27Hz, x3=40, x4=53Hz, x5=67Hz, x6=80Hz, x7=93Hz).

Varvtal: 1800V/min
Förväntade frekvenser: 15, (30), 45, 60, 75, 90, (120), (180)Hz
Ej förväntade frekvenser: 16, 21
Upplevelse: Jämn gång, ingen obalans
Analys: Samma som ovan. Samtliga frekvenser harmoniska med motorns egenfrekvens. Störst amplitud vid 78Hz vilket jag inte riktigt kan förklara (hade förväntat mig att 60Hz skulle varit störst).

Varvtal: 2000V/min
Förväntade frekvenser: 17, 33, 50, 67, 83, 100
Ej förväntade frekvenser: spik vid 15, svagt vid 20, samt antydningar vid 39 och 41
Upplevelse: En svag obalans börjar anans.
Analys: Störst amplitud vid 78Hz vilket jag inte riktigt kan förklara (hade förväntat mig att 60Hz skulle varit störst).

Varvtal: 2300V/min.
Förväntade frekvenser: 19, 38, 58, 77, 96
Ej förväntade frekvenser: 26, 46
Upplevelse: En kraftig obalans som känns som att motorn inte går rent.
Analys: Här blir det intressent! Tolkar det som att svänghjulet står och slår och därmed bildar frekvenserna 26 och 46Hz. Märk att svänghjulets egenfrekvens inte syns! Däremot slår motorns normala frekvens igenom som vanligt (76Hz).

Varvtal: 2490V/min.
Förväntade frekvenser: 21, 42, 62, 83, 104
Ej förväntade frekvenser: 35, 48, 55
Upplevelse: Går att ana en obalans, men i det stora hela en "ren" gång.
Analys: Motorns högre amplitud går igenom och döljer svänghjulets slag? Svänghjulet fortfarande synligt i 25, 48 samt 55Hz.

Varvtal: 2600V/min.
Förväntade frekvenser: 22, 43, 65, 87, 108
Ej förväntade frekvenser: 28, 43, 49
Upplevelse: Motorn går rent
Analys: Motorns högre amplitud går igenom och döljer svänghjulets slag? Svänghjulets frekvensband smalnar av och blir mer distinkta(?). Kanske gör detta tillsammans med motorns högre amplitud att de döljs bättre?
Matlab-script:
%------------------------------------------------------------------------------------------------------------
%Importera data från Accelerator monitor, välj bort de översta 8 raderna
%Ange varvtal vid rad 25 (tVarvtal)
%Kör scriptet och spara bilden som jpg.
%Flytta till biblioteket med samplingar, kör skriptet
files = dir('*.txt');
for fileNbr=1:length(files)
%Calculate filename
fileName=files(fileNbr).name
tVarvtal=str2num(fileName(1:length(fileName)-4))
%open and import data
DELIMITER = ' ';
HEADERLINES = 8;
% Import the file
newData1 = importdata(fileName, DELIMITER, HEADERLINES);
% Create new variables in the base workspace from those fields.
vars = fieldnames(newData1);
for i = 1:length(vars)
assignin('base', vars{i}, newData1.(vars{i}));
end
ts=mean(data(:,4))/1000;
Fs = 1/ts % Sampling frequency
T = 1/Fs; % Sample time
L = length(data)-10; % Length of signal
t = (0:L-1)*T; % Time vector
% Sum of a 50 Hz sinusoid and a 120 Hz sinusoid
%x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
%y = x + 2*randn(size(t)); % Sinusoids plus noise
%Produce common vector
%va=sqrt(data(:,1).*data(:,1) + data(:,2).*data(:,2) + data(:,3).*data(:,3));
for i=1:2
if i==4
y=va;
else
y=data(:,i);
end
%subplot(3,1,i), plot(Fs*t(1:50),y(1:50))
%title('Vibrationer från bil - mätning med Accelerator monitor')
%xlabel('time (milliseconds)')
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
if i<4
Y = fft(y,NFFT)/L;
%VA(:,i)=Y;
else
Y=sqrt(VA(:,1).*VA(:,1) + VA(:,2).*VA(:,2) + VA(:,3).*VA(:,3));
end
f = Fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
subplot(2,1,i), plot(f,2*abs(Y(1:NFFT/2+1)))
grid
axis([0 Fs/2 0 0.06])
%tVarvtal=2500;
tFreq=tVarvtal/60;
tPhoneMount='Telefonen liggande plant i bilen';
switch i
case 1
title(['Vibrationer vid ',num2str(tVarvtal),'v.min (',num2str(tFreq,3),' / ',num2str(tFreq*2,3) ,'Hz) ',tPhoneMount,' (x-led) (Hz)'])
case 2
title(['Vibrationer vid ',num2str(tVarvtal),'v.min (',num2str(tFreq,3),' / ',num2str(tFreq*2,3) ,'Hz) ',tPhoneMount,' (y-led) (Hz)'])
case 3
title(['Vibrationer vid ',num2str(tVarvtal),'v.min (',num2str(tFreq,3),' / ',num2str(tFreq*2,3) ,'Hz) ',tPhoneMount,' (z-led) (Hz)'])
end
%xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
end
%Get handle to figure
fig=gcf;
%Save file as jpg
saveas(fig,[num2str(tVarvtal,4),' v.min 2015-01-20.jpg'],'jpg')
end