Cedrat Actuator
-
-
-
-Table of Contents
- -
-
-
-
-1 Documentation
-
-
--
-
- Blocked force: \(1400\ N\) -
- Stiffness: \(10.8\ N/\mu m\) -
- Resonance (free-free): \(6450\ Hz\) -
- Resonance (blocked-free): \(1750\ Hz\) -
- Height: \(H = 45\ mm\) -
- Length: \(L = 80\ mm\) -
- Width: \(22\ mm\) -
- Mass: \(160\ g\) -
-
--
-
-
-
-2 Parameters
-
-
-
-
-
-cedrat.L = 80; % Total Width of the Actuator[mm] -cedrat.H = 45; % Total Height of the Actuator [mm] -cedrat.L2 = sqrt((cedrat.L/2)^2 + (cedrat.H/2)^2); % Length of the elipsoidal sections [mm] -cedrat.alpha = 180/pi*atan2(cedrat.L/2, cedrat.H/2); % [deg] -cedrat.mtot = 0.160; % Total mass of the Actuator [kg] -cedrat.m = cedrat.mtot/6; % Mass of each single element [kg] --
-
-
-cedrat.k = 1e9; % Linear Stiffness of each "blade" [N/m] -cedrat.c = 0.1*sqrt(cedrat.mtot*cedrat.k); % [N/(m/s)] - -cedrat.ka = 5e7; % Linear Stiffness of the stack [N/m] -cedrat.ca = 0.1*sqrt(cedrat.mtot*cedrat.ka); % [N/(m/s)] - -cedrat.kr = 10; % Rotation Stiffness [N*m/(deg)] -cedrat.cr = 0.0001; % Rotation Damping [N*m/(deg/s)] --
-
-
-K_iff = tf(0); --
-
-% dummy_mass = 140; % [kg] -dummy_mass = 1; % [kg] --
-
-
-3 Identification
-
-
-
-
-
-
-
-%% Options for Linearized -options = linearizeOptions; -options.SampleTime = 0; - -%% Name of the Simulink File -mdl = 'cedrat_piezo'; - -%% Input/Output definition -io(1) = linio([mdl, '/F'], 1, 'input'); -io(2) = linio([mdl, '/Fz'], 1, 'input'); -io(3) = linio([mdl, '/Dw'], 1, 'input'); -io(4) = linio([mdl, '/Dz'], 1, 'output'); -io(5) = linio([mdl, '/Fm'], 1, 'output'); - -%% Run the linearization -G = linearize(mdl, io, options); -G.InputName = {'F', 'Fz', 'Dw'}; -G.OutputName = {'Dz', 'Fm'}; --
-
-
-4 Integral Force Feedback
- -
-
-5 Damped System
-
-
-
-
-
-
-
-%% Options for Linearized -options = linearizeOptions; -options.SampleTime = 0; - -%% Name of the Simulink File -mdl = 'cedrat_piezo'; - -%% Input/Output definition -io(1) = linio([mdl, '/F'], 1, 'input'); -io(2) = linio([mdl, '/Fz'], 1, 'input'); -io(3) = linio([mdl, '/Dw'], 1, 'input'); -io(4) = linio([mdl, '/Dz'], 1, 'output'); -io(5) = linio([mdl, '/Fm'], 1, 'output'); - -%% Run the linearization -G_iff = linearize(mdl, io, options); -G_iff.InputName = {'F', 'Fz', 'Dw'}; -G_iff.OutputName = {'Dz', 'Fm'}; --