Update links from index and publish html files

This commit is contained in:
2020-03-25 19:23:22 +01:00
parent ccfe1a3bb8
commit 27f15fdf78
34 changed files with 3135 additions and 484 deletions

View File

@@ -77,7 +77,7 @@ It is then compare to the wanted position of the Sample $\bm{r}_\mathcal{X}$ in
\draw[->] (Kl.south) -- (addF.north);
\draw[->] (subx.east) -- (Kx.west) node[above left]{$\bm{\epsilon}_\mathcal{X}$};
\draw[->] (Kx.east) node[above right]{$\bm{\tau}_\mathcal{X}$} -- (addF.west);
\draw[->] (Kx.east) node[above right]{$\bm{\tau}^\prime$} -- (addF.west);
\draw[->] (addF.east) -- (G.west) node[above left]{$\bm{\tau}$};
\draw[->] ($(outputL.east) + (0.4, 0)$)node[branch](L){} |- (subl.east);
@@ -294,6 +294,100 @@ The design of the associated decentralized controller is explained in [[file:con
K_dvf = -K_dvf*eye(6);
#+end_src
* Uncertainty Improvements thanks to the LAC control
#+begin_src matlab
K_dvf_backup = K_dvf;
initializeController('type', 'hac-dvf');
#+end_src
#+begin_src matlab
masses = [1, 10, 50]; % [kg]
#+end_src
#+begin_src matlab
%% Name of the Simulink File
mdl = 'nass_model';
%% Input/Output definition
clear io; io_i = 1;
io(io_i) = linio([mdl, '/Controller'], 1, 'input'); io_i = io_i + 1; % Actuator Inputs
io(io_i) = linio([mdl, '/Tracking Error'], 1, 'output', [], 'En'); io_i = io_i + 1; % Position Errror
#+end_src
#+begin_src matlab :exports none
Gm = {zeros(length(masses))};
K_dvf = tf(zeros(6));
Kx = tf(zeros(6));
for i = 1:length(masses)
initializeSample('mass', masses(i));
%% Run the linearization
G = linearize(mdl, io, 0);
G.InputName = {'Fnl1', 'Fnl2', 'Fnl3', 'Fnl4', 'Fnl5', 'Fnl6'};
G.OutputName = {'Ex', 'Ey', 'Ez', 'Erx', 'Ery', 'Erz'};
Gm(i) = {G};
end
#+end_src
#+begin_src matlab :exports none
Gm_iff = {zeros(length(masses))};
K_dvf = K_dvf_backup;
Kx = tf(zeros(6));
for i = 1:length(masses)
initializeSample('mass', masses(i));
%% Run the linearization
G = linearize(mdl, io, 0);
G.InputName = {'Fnl1', 'Fnl2', 'Fnl3', 'Fnl4', 'Fnl5', 'Fnl6'};
G.OutputName = {'Ex', 'Ey', 'Ez', 'Erx', 'Ery', 'Erz'};
Gm_iff(i) = {G};
end
#+end_src
#+begin_src matlab :exports none
freqs = logspace(0, 3, 1000);
figure;
ax1 = subplot(2, 1, 1);
hold on;
for i = 1:length(Gm_iff)
set(gca,'ColorOrderIndex',i);
plot(freqs, abs(squeeze(freqresp(Gm{i}(1, 1), freqs, 'Hz'))), '-');
set(gca,'ColorOrderIndex',i);
plot(freqs, abs(squeeze(freqresp(Gm_iff{i}(1, 1), freqs, 'Hz'))), '--');
end
hold off;
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
ylabel('Amplitude [m/N]'); set(gca, 'XTickLabel',[]);
ax2 = subplot(2, 1, 2);
hold on;
for i = 1:length(Gm_iff)
set(gca,'ColorOrderIndex',i);
plot(freqs, 180/pi*angle(squeeze(freqresp(Gm{i}(1, 1), freqs, 'Hz'))), '-', ...
'DisplayName', sprintf('$M = %.0f$ [kg]', masses(i)));
set(gca,'ColorOrderIndex',i);
plot(freqs, 180/pi*angle(squeeze(freqresp(Gm_iff{i}(1, 1), freqs, 'Hz'))), '--', ...
'HandleVisibility', 'off');
end
hold off;
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'lin');
ylabel('Phase [deg]'); xlabel('Frequency [Hz]');
ylim([-180, 180]);
yticks([-180, -90, 0, 90, 180]);
legend('location', 'southwest');
linkaxes([ax1,ax2],'x');
xlim([freqs(1), freqs(end)]);
#+end_src
* High Authority Control - $\bm{K}_\mathcal{X}$
** Identification of the damped plant
#+begin_src matlab

File diff suppressed because it is too large Load Diff

View File

@@ -82,12 +82,16 @@ Now that the dynamics of the Model have been tuned and the Disturbances have inc
Tomography experiments are simulated and the results are presented [[./experiments.org][here]].
* Effect of support's compliance uncertainty on the plant ([[file:uncertainty_support.org][link]])
In this document, is studied how uncertainty on the micro-station compliance will affect the uncertainty of the isolation platform to be designed.
* Active Damping Techniques on the Uni-axial Model ([[./active_damping_uniaxial.org][link]])
Active damping techniques are applied to the Uniaxial Simscape model.
* Active Damping Techniques on the full Simscape Model ([[file:control_active_damping.org][link]])
Active damping techniques are applied to the full Simscape model.
* Control of the Nano-Active-Stabilization-System ([[file:control.org][link]])
* Useful Matlab Functions ([[./functions.org][link]])
Many matlab functions are shared among all the files of the projects.

View File

@@ -1458,7 +1458,7 @@ The =sample= structure is saved.
:END:
#+begin_src matlab
arguments
args.type char {mustBeMember(args.type,{'open-loop', 'iff', 'dvf', 'hac-dvf', 'ref-track-L', 'ref-track-iff-L', 'cascade-hac-lac'})} = 'open-loop'
args.type char {mustBeMember(args.type,{'open-loop', 'iff', 'dvf', 'hac-dvf', 'ref-track-L', 'ref-track-iff-L', 'cascade-hac-lac', 'hac-iff'})} = 'open-loop'
end
#+end_src
@@ -1491,6 +1491,8 @@ First, we initialize the =controller= structure.
controller.type = 6;
case 'cascade-hac-lac'
controller.type = 7;
case 'hac-iff'
controller.type = 8;
end
#+end_src

View File

@@ -993,7 +993,7 @@ If a very stiff isolation platform is used, the uncertainty will be high around
It will then be high around $\omega_0$ and probably be higher than one.
Thus, if a stiff isolation platform is used, the recommendation is to have the largest possible resonance frequency, as the control bandwidth will be limited by the first resonance of the isolation platform (if not already limited by the resonance of the support).
* Numerical Analysis for the NASS
* Numerical Analysis for the NASS :noexport:
<<sec:nass>>
** Introduction :ignore: