47 lines
1.3 KiB
Matlab
47 lines
1.3 KiB
Matlab
%% test_nhexa_1_suspended_table.m
|
|
|
|
%% Clear Workspace and Close figures
|
|
clear; close all; clc;
|
|
|
|
%% Intialize Laplace variable
|
|
s = zpk('s');
|
|
|
|
%% Path for functions, data and scripts
|
|
addpath('./mat/'); % Path for Data
|
|
addpath('./src/'); % Path for functions
|
|
addpath('./STEPS/'); % Path for STEPS
|
|
addpath('./subsystems/'); % Path for Subsystems Simulink files
|
|
|
|
%% Initialize Parameters for Simscape model
|
|
table_type = 'Rigid'; % On top of vibration table
|
|
device_type = 'None'; % On top of vibration table
|
|
payload_num = 0; % No Payload
|
|
|
|
% Simulink Model name
|
|
mdl = 'test_nhexa_simscape';
|
|
|
|
%% Colors for the figures
|
|
colors = colororder;
|
|
|
|
%% Frequency Vector
|
|
freqs = logspace(log10(10), log10(2e3), 1000);
|
|
|
|
%% Configure Simscape Model
|
|
table_type = 'Suspended'; % On top of vibration table
|
|
device_type = 'None'; % No device on the vibration table
|
|
payload_num = 0; % No Payload
|
|
|
|
%% Input/Output definition
|
|
clear io; io_i = 1;
|
|
io(io_i) = linio([mdl, '/F'], 1, 'openinput'); io_i = io_i + 1;
|
|
io(io_i) = linio([mdl, '/F_v'], 1, 'openoutput'); io_i = io_i + 1;
|
|
|
|
%% Run the linearization
|
|
G = linearize(mdl, io);
|
|
G.InputName = {'Fx', 'Fy', 'Fz', 'Mx', 'My', 'Mz'};
|
|
G.OutputName = {'Vdx', 'Vdy', 'Vdz', 'Vrx', 'Vry', 'Vrz'};
|
|
|
|
%% Compute the resonance frequencies
|
|
ws = eig(G.A);
|
|
ws = ws(imag(ws) > 0);
|