Work on HAC-LAC, Control architectures
This commit is contained in:
		@@ -30,7 +30,7 @@ mdl = 'stewart_platform_model';
 | 
			
		||||
%% Input/Output definition
 | 
			
		||||
clear io; io_i = 1;
 | 
			
		||||
io(io_i) = linio([mdl, '/Disturbances/F_ext'],      1, 'openinput');  io_i = io_i + 1; % External forces [N, N*m]
 | 
			
		||||
io(io_i) = linio([mdl, '/Absolute Motion Sensor'],  1, 'openoutput'); io_i = io_i + 1; % Absolute Motion [m, rad]
 | 
			
		||||
io(io_i) = linio([mdl, '/Absolute Motion Sensor'],  1, 'output'); io_i = io_i + 1; % Absolute Motion [m, rad]
 | 
			
		||||
 | 
			
		||||
%% Run the linearization
 | 
			
		||||
C = linearize(mdl, io, options);
 | 
			
		||||
 
 | 
			
		||||
@@ -30,7 +30,7 @@ mdl = 'stewart_platform_model';
 | 
			
		||||
%% Input/Output definition
 | 
			
		||||
clear io; io_i = 1;
 | 
			
		||||
io(io_i) = linio([mdl, '/Disturbances/D_w'],        1, 'openinput');  io_i = io_i + 1; % Base Motion [m, rad]
 | 
			
		||||
io(io_i) = linio([mdl, '/Absolute Motion Sensor'],  1, 'openoutput'); io_i = io_i + 1; % Absolute Motion [m, rad]
 | 
			
		||||
io(io_i) = linio([mdl, '/Absolute Motion Sensor'],  1, 'output'); io_i = io_i + 1; % Absolute Motion [m, rad]
 | 
			
		||||
 | 
			
		||||
%% Run the linearization
 | 
			
		||||
T = linearize(mdl, io, options);
 | 
			
		||||
@@ -63,8 +63,8 @@ if args.plots
 | 
			
		||||
  han = axes(fig, 'visible', 'off');
 | 
			
		||||
  han.XLabel.Visible = 'on';
 | 
			
		||||
  han.YLabel.Visible = 'on';
 | 
			
		||||
  ylabel(han, 'Frequency [Hz]');
 | 
			
		||||
  xlabel(han, 'Transmissibility [m/m]');
 | 
			
		||||
  xlabel(han, 'Frequency [Hz]');
 | 
			
		||||
  ylabel(han, 'Transmissibility [m/m]');
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
T_norm = zeros(length(freqs), 1);
 | 
			
		||||
 
 | 
			
		||||
@@ -7,7 +7,7 @@ function [controller] = initializeController(args)
 | 
			
		||||
%    - args - Can have the following fields:
 | 
			
		||||
 | 
			
		||||
arguments
 | 
			
		||||
  args.type   char   {mustBeMember(args.type, {'open-loop', 'iff', 'dvf'})} = 'open-loop'
 | 
			
		||||
  args.type   char   {mustBeMember(args.type, {'open-loop', 'iff', 'dvf', 'hac-iff', 'hac-dvf'})} = 'open-loop'
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
controller = struct();
 | 
			
		||||
@@ -19,4 +19,8 @@ switch args.type
 | 
			
		||||
    controller.type = 1;
 | 
			
		||||
  case 'dvf'
 | 
			
		||||
    controller.type = 2;
 | 
			
		||||
  case 'hac-iff'
 | 
			
		||||
    controller.type = 3;
 | 
			
		||||
  case 'hac-dvf'
 | 
			
		||||
    controller.type = 4;
 | 
			
		||||
end
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user