2018-10-24 15:08:23 +02:00
|
|
|
function [rz] = initializeRz(opts_param)
|
|
|
|
%% Default values for opts
|
|
|
|
opts = struct('rigid', false);
|
|
|
|
|
|
|
|
%% Populate opts with input parameters
|
|
|
|
if exist('opts_param','var')
|
|
|
|
for opt = fieldnames(opts_param)'
|
|
|
|
opts.(opt{1}) = opts_param.(opt{1});
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2018-06-16 22:57:54 +02:00
|
|
|
%%
|
|
|
|
rz = struct();
|
|
|
|
|
2018-10-24 15:08:23 +02:00
|
|
|
% Estimated mass of the mooving part
|
2018-10-12 13:22:29 +02:00
|
|
|
rz.m = 250; % [kg]
|
2018-06-16 22:57:54 +02:00
|
|
|
|
2018-10-24 15:08:23 +02:00
|
|
|
% Estimated stiffnesses
|
2018-06-16 22:57:54 +02:00
|
|
|
rz.k.ax = 2e9; % Axial Stiffness [N/m]
|
|
|
|
rz.k.rad = 7e8; % Radial Stiffness [N/m]
|
2018-10-24 15:08:23 +02:00
|
|
|
rz.k.rot = 100e6*2*pi/360; % Rotational Stiffness [N*m/deg]
|
|
|
|
|
|
|
|
if opts.rigid
|
|
|
|
rz.k.tilt = 1e10; % Vertical Rotational Stiffness [N*m/deg]
|
|
|
|
else
|
|
|
|
rz.k.tilt = 1e2; % TODO what value should I put? [N*m/deg]
|
|
|
|
end
|
2018-06-16 22:57:54 +02:00
|
|
|
|
2018-10-24 15:08:23 +02:00
|
|
|
% TODO
|
|
|
|
rz.c.ax = 2*sqrt(rz.k.ax/rz.m);
|
|
|
|
rz.c.rad = 2*sqrt(rz.k.rad/rz.m);
|
|
|
|
rz.c.tilt = 100*sqrt(rz.k.tilt/rz.m);
|
|
|
|
rz.c.rot = 100*sqrt(rz.k.rot/rz.m);
|
2018-06-16 22:57:54 +02:00
|
|
|
|
2018-10-11 10:25:57 +02:00
|
|
|
%% Save
|
|
|
|
save('./mat/stages.mat', 'rz', '-append');
|
2018-06-16 22:57:54 +02:00
|
|
|
end
|