Files
FAT-Servo-Load-Test/Matlab/plot_messung.m
T
2026-09-16 06:25:24 +02:00

58 lines
1.7 KiB
Matlab

% ==========================================
% KONFIGURATION
% ==========================================
% Name der Variablen-Struktur als String festlegen:
messung_name = 'Messung_6';
% Zeitachse wählen:
% true = Realzeit aus .t (datetime/dauer) verwenden
% false = 1-Sekunden-Abtastung verwenden
use_real_time = false;
% ==========================================
% SKRIPT-AUSFÜHRUNG
% ==========================================
% Dynamisches Laden der Struktur aus dem Workspace über ihren Namen
daten = evalin('base', messung_name);
% 1. Zeitachse vorbereiten
if use_real_time
% Zeitstempel relativ zum Start in Minuten umrechnen
if isdatetime(daten.t)
x_zeit = minutes(daten.t - daten.t(1));
else
x_zeit = daten.t; % Falls t bereits ein Zahlenvektor ist
end
x_label_text = 'Zeit [min]';
else
% 1-Sekunden-Sampling (0, 1, 2, 3... Sekunde)
x_zeit = (0:length(daten.temp)-1)';
x_label_text = 'Zeit [s] (Abtastung: 1 s)';
end
% 2. Plot erstellen
figure('Name', sprintf('Auswertung: %s', messung_name), 'Position', [100, 100, 900, 450]);
% Linke Y-Achse: Temperatur
yyaxis left
plot(x_zeit, daten.temp, 'LineWidth', 1.5, 'Color', '#0072BD');
ylabel('Temperatur (°C)');
grid on;
% Rechte Y-Achse: Bremse
yyaxis right
stairs(x_zeit, daten.bremse, 'LineWidth', 1.5, 'Color', '#D95319');
ylabel('Bremse Manuell (0 = Aus, 1 = Ein)');
ylim([-0.1, 1.1]);
% Achsenbeschriftung und Titel
xlabel(x_label_text);
title(daten.titel, 'Interpreter', 'none');
% Zeitmarker auf der X-Achse (bei Realzeit alle 5 Min, sonst dynamisch)
if use_real_time
xticks(0:5:max(x_zeit));
else
% Alle 60 Sekunden ein Grid-Marker bei Abtastrate
xticks(0:60:max(x_zeit));
end