Compare commits
	
		
			1 Commits
		
	
	
		
			571dfbffb4
			...
			f6194333a6
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| f6194333a6 | 
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							@@ -3436,28 +3436,32 @@ function [nano_hexapod] = initializeNanoHexapodFinal(args)
 | 
			
		||||
arguments
 | 
			
		||||
    %% Bottom Flexible Joints
 | 
			
		||||
    args.flex_bot_type      char {mustBeMember(args.flex_bot_type,{'2dof', '3dof', '4dof', 'flexible'})} = '4dof'
 | 
			
		||||
    args.flex_bot_kRx (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRy (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRx (6,1) double {mustBeNumeric} = ones(6,1)*5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRy (6,1) double {mustBeNumeric} = ones(6,1)*5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRz (6,1) double {mustBeNumeric} = ones(6,1)*260 % Torsionnal stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kz  (6,1) double {mustBeNumeric} = ones(6,1)*8e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_bot_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0 % Axial Damping [N/(m/s)]
 | 
			
		||||
    args.flex_bot_kz  (6,1) double {mustBeNumeric} = ones(6,1)*7e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_bot_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Axial Damping [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
    %% Top Flexible Joints
 | 
			
		||||
    args.flex_top_type      char {mustBeMember(args.flex_top_type,{'2dof', '3dof', '4dof', 'flexible'})} = '4dof'
 | 
			
		||||
    args.flex_top_kRx (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRy (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRx (6,1) double {mustBeNumeric} = ones(6,1)*5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRy (6,1) double {mustBeNumeric} = ones(6,1)*5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRz (6,1) double {mustBeNumeric} = ones(6,1)*260 % Torsionnal stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kz  (6,1) double {mustBeNumeric} = ones(6,1)*8e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_top_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0 % Axial Damping [N/(m/s)]
 | 
			
		||||
    args.flex_top_kz  (6,1) double {mustBeNumeric} = ones(6,1)*7e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_top_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Axial Damping [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
    %% Jacobian - Location of frame {A} and {B}
 | 
			
		||||
    args.MO_B (1,1) double {mustBeNumeric} = 150e-3 % Height of {B} w.r.t. {M} [m]
 | 
			
		||||
 | 
			
		||||
    %% Relative Motion Sensor
 | 
			
		||||
    args.motion_sensor_type char {mustBeMember(args.motion_sensor_type,{'struts', 'plates'})} = 'struts'
 | 
			
		||||
 | 
			
		||||
    %% Actuators
 | 
			
		||||
    args.actuator_type char {mustBeMember(args.actuator_type,{'2dof', 'flexible frame', 'flexible'})} = 'flexible'
 | 
			
		||||
    args.actuator_Ga  (6,1) double {mustBeNumeric} = zeros(6,1) % Actuator gain [N/V]
 | 
			
		||||
@@ -3473,10 +3477,13 @@ arguments
 | 
			
		||||
    % For Flexible Frame
 | 
			
		||||
    args.actuator_ks (6,1) double {mustBeNumeric} = ones(6,1)*235e6 % Stiffness of one stack [N/m]
 | 
			
		||||
    args.actuator_cs (6,1) double {mustBeNumeric} = ones(6,1)*1e1 % Stiffness of one stack [N/m]
 | 
			
		||||
    % Misalignment
 | 
			
		||||
    args.actuator_d_align (6,3) double {mustBeNumeric} = zeros(6,3) % [m]
 | 
			
		||||
 | 
			
		||||
    args.actuator_xi  (1,1) double {mustBeNumeric} = 0.01 % Damping Ratio
 | 
			
		||||
 | 
			
		||||
    %% Controller
 | 
			
		||||
    args.controller_type char {mustBeMember(args.controller_type,{'none', 'iff', 'dvf'})} = 'none'
 | 
			
		||||
    args.controller_type char {mustBeMember(args.controller_type,{'none', 'iff', 'dvf', 'hac-iff-struts'})} = 'none'
 | 
			
		||||
end
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
@@ -3613,36 +3620,39 @@ else
 | 
			
		||||
end
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
2dof
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
nano_hexapod.actuator.k  = args.actuator_k;  % [N/m]
 | 
			
		||||
nano_hexapod.actuator.ke = args.actuator_ke; % [N/m]
 | 
			
		||||
nano_hexapod.actuator.ka = args.actuator_ka; % [N/m]
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.c  = args.actuator_c;  % [N/(m/s)]
 | 
			
		||||
nano_hexapod.actuator.ce = args.actuator_ce; % [N/(m/s)]
 | 
			
		||||
nano_hexapod.actuator.ca = args.actuator_ca; % [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.Leq = args.actuator_Leq; % [m]
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
Flexible frame and fully flexible
 | 
			
		||||
Mechanical characteristics:
 | 
			
		||||
#+begin_src matlab
 | 
			
		||||
switch args.actuator_type
 | 
			
		||||
  case '2dof'
 | 
			
		||||
    nano_hexapod.actuator.k  = args.actuator_k;  % [N/m]
 | 
			
		||||
    nano_hexapod.actuator.ke = args.actuator_ke; % [N/m]
 | 
			
		||||
    nano_hexapod.actuator.ka = args.actuator_ka; % [N/m]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.c  = args.actuator_c;  % [N/(m/s)]
 | 
			
		||||
    nano_hexapod.actuator.ce = args.actuator_ce; % [N/(m/s)]
 | 
			
		||||
    nano_hexapod.actuator.ca = args.actuator_ca; % [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.Leq = args.actuator_Leq; % [m]
 | 
			
		||||
 | 
			
		||||
  case 'flexible frame'
 | 
			
		||||
    nano_hexapod.actuator.K = readmatrix('APA300ML_b_mat_K.CSV'); % Stiffness Matrix
 | 
			
		||||
    nano_hexapod.actuator.M = readmatrix('APA300ML_b_mat_M.CSV'); % Mass Matrix
 | 
			
		||||
    nano_hexapod.actuator.P = extractNodes('APA300ML_b_out_nodes_3D.txt'); % Node coordinates [m]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.ks = args.actuator_ks; % Stiffness of one stack [N/m]
 | 
			
		||||
    nano_hexapod.actuator.cs = args.actuator_cs; % Damping of one stack [N/m]
 | 
			
		||||
    nano_hexapod.actuator.xi = args.actuator_xi; % Damping ratio
 | 
			
		||||
 | 
			
		||||
  case 'flexible'
 | 
			
		||||
    nano_hexapod.actuator.K = readmatrix('full_APA300ML_K.CSV'); % Stiffness Matrix
 | 
			
		||||
    nano_hexapod.actuator.M = readmatrix('full_APA300ML_M.CSV'); % Mass Matrix
 | 
			
		||||
    nano_hexapod.actuator.P = extractNodes('full_APA300ML_out_nodes_3D.txt'); % Node coordiantes [m]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.d_align = args.actuator_d_align; % Misalignment
 | 
			
		||||
    nano_hexapod.actuator.xi = args.actuator_xi; % Damping ratio
 | 
			
		||||
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.xi = args.actuator_xi; % Damping ratio
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.ks = args.actuator_ks; % Stiffness of one stack [N/m]
 | 
			
		||||
nano_hexapod.actuator.cs = args.actuator_cs; % Damping of one stack [N/m]
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
** Geometry
 | 
			
		||||
@@ -3744,6 +3754,8 @@ switch args.controller_type
 | 
			
		||||
    nano_hexapod.controller.type = 2;
 | 
			
		||||
  case 'dvf'
 | 
			
		||||
    nano_hexapod.controller.type = 3;
 | 
			
		||||
  case 'hac-iff-struts'
 | 
			
		||||
    nano_hexapod.controller.type = 4;
 | 
			
		||||
end
 | 
			
		||||
#+end_src
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -3,28 +3,32 @@ function [nano_hexapod] = initializeNanoHexapodFinal(args)
 | 
			
		||||
arguments
 | 
			
		||||
    %% Bottom Flexible Joints
 | 
			
		||||
    args.flex_bot_type      char {mustBeMember(args.flex_bot_type,{'2dof', '3dof', '4dof', 'flexible'})} = '4dof'
 | 
			
		||||
    args.flex_bot_kRx (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRy (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRx (6,1) double {mustBeNumeric} = ones(6,1)*5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRy (6,1) double {mustBeNumeric} = ones(6,1)*5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kRz (6,1) double {mustBeNumeric} = ones(6,1)*260 % Torsionnal stiffness [Nm/rad]
 | 
			
		||||
    args.flex_bot_kz  (6,1) double {mustBeNumeric} = ones(6,1)*8e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_bot_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0 % Axial Damping [N/(m/s)]
 | 
			
		||||
    args.flex_bot_kz  (6,1) double {mustBeNumeric} = ones(6,1)*7e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_bot_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_bot_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Axial Damping [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
    %% Top Flexible Joints
 | 
			
		||||
    args.flex_top_type      char {mustBeMember(args.flex_top_type,{'2dof', '3dof', '4dof', 'flexible'})} = '4dof'
 | 
			
		||||
    args.flex_top_kRx (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRy (6,1) double {mustBeNumeric} = ones(6,1)*3.5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRx (6,1) double {mustBeNumeric} = ones(6,1)*5 % X bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRy (6,1) double {mustBeNumeric} = ones(6,1)*5 % Y bending stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kRz (6,1) double {mustBeNumeric} = ones(6,1)*260 % Torsionnal stiffness [Nm/rad]
 | 
			
		||||
    args.flex_top_kz  (6,1) double {mustBeNumeric} = ones(6,1)*8e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_top_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0 % Axial Damping [N/(m/s)]
 | 
			
		||||
    args.flex_top_kz  (6,1) double {mustBeNumeric} = ones(6,1)*7e7 % Axial Stiffness [N/m]
 | 
			
		||||
    args.flex_top_cRx (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % X bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRy (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Y bending Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cRz (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Torsionnal Damping [Nm/(rad/s)]
 | 
			
		||||
    args.flex_top_cz  (6,1) double {mustBeNumeric} = ones(6,1)*0.001 % Axial Damping [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
    %% Jacobian - Location of frame {A} and {B}
 | 
			
		||||
    args.MO_B (1,1) double {mustBeNumeric} = 150e-3 % Height of {B} w.r.t. {M} [m]
 | 
			
		||||
 | 
			
		||||
    %% Relative Motion Sensor
 | 
			
		||||
    args.motion_sensor_type char {mustBeMember(args.motion_sensor_type,{'struts', 'plates'})} = 'struts'
 | 
			
		||||
 | 
			
		||||
    %% Actuators
 | 
			
		||||
    args.actuator_type char {mustBeMember(args.actuator_type,{'2dof', 'flexible frame', 'flexible'})} = 'flexible'
 | 
			
		||||
    args.actuator_Ga  (6,1) double {mustBeNumeric} = zeros(6,1) % Actuator gain [N/V]
 | 
			
		||||
@@ -40,10 +44,13 @@ arguments
 | 
			
		||||
    % For Flexible Frame
 | 
			
		||||
    args.actuator_ks (6,1) double {mustBeNumeric} = ones(6,1)*235e6 % Stiffness of one stack [N/m]
 | 
			
		||||
    args.actuator_cs (6,1) double {mustBeNumeric} = ones(6,1)*1e1 % Stiffness of one stack [N/m]
 | 
			
		||||
    % Misalignment
 | 
			
		||||
    args.actuator_d_align (6,3) double {mustBeNumeric} = zeros(6,3) % [m]
 | 
			
		||||
 | 
			
		||||
    args.actuator_xi  (1,1) double {mustBeNumeric} = 0.01 % Damping Ratio
 | 
			
		||||
 | 
			
		||||
    %% Controller
 | 
			
		||||
    args.controller_type char {mustBeMember(args.controller_type,{'none', 'iff', 'dvf'})} = 'none'
 | 
			
		||||
    args.controller_type char {mustBeMember(args.controller_type,{'none', 'iff', 'dvf', 'hac-iff-struts'})} = 'none'
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
nano_hexapod = struct();
 | 
			
		||||
@@ -142,32 +149,37 @@ else
 | 
			
		||||
    nano_hexapod.actuator.Gs = args.actuator_Gs; % Sensor gain [V/m]
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.k  = args.actuator_k;  % [N/m]
 | 
			
		||||
nano_hexapod.actuator.ke = args.actuator_ke; % [N/m]
 | 
			
		||||
nano_hexapod.actuator.ka = args.actuator_ka; % [N/m]
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.c  = args.actuator_c;  % [N/(m/s)]
 | 
			
		||||
nano_hexapod.actuator.ce = args.actuator_ce; % [N/(m/s)]
 | 
			
		||||
nano_hexapod.actuator.ca = args.actuator_ca; % [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.Leq = args.actuator_Leq; % [m]
 | 
			
		||||
 | 
			
		||||
switch args.actuator_type
 | 
			
		||||
  case '2dof'
 | 
			
		||||
    nano_hexapod.actuator.k  = args.actuator_k;  % [N/m]
 | 
			
		||||
    nano_hexapod.actuator.ke = args.actuator_ke; % [N/m]
 | 
			
		||||
    nano_hexapod.actuator.ka = args.actuator_ka; % [N/m]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.c  = args.actuator_c;  % [N/(m/s)]
 | 
			
		||||
    nano_hexapod.actuator.ce = args.actuator_ce; % [N/(m/s)]
 | 
			
		||||
    nano_hexapod.actuator.ca = args.actuator_ca; % [N/(m/s)]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.Leq = args.actuator_Leq; % [m]
 | 
			
		||||
 | 
			
		||||
  case 'flexible frame'
 | 
			
		||||
    nano_hexapod.actuator.K = readmatrix('APA300ML_b_mat_K.CSV'); % Stiffness Matrix
 | 
			
		||||
    nano_hexapod.actuator.M = readmatrix('APA300ML_b_mat_M.CSV'); % Mass Matrix
 | 
			
		||||
    nano_hexapod.actuator.P = extractNodes('APA300ML_b_out_nodes_3D.txt'); % Node coordinates [m]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.ks = args.actuator_ks; % Stiffness of one stack [N/m]
 | 
			
		||||
    nano_hexapod.actuator.cs = args.actuator_cs; % Damping of one stack [N/m]
 | 
			
		||||
    nano_hexapod.actuator.xi = args.actuator_xi; % Damping ratio
 | 
			
		||||
 | 
			
		||||
  case 'flexible'
 | 
			
		||||
    nano_hexapod.actuator.K = readmatrix('full_APA300ML_K.CSV'); % Stiffness Matrix
 | 
			
		||||
    nano_hexapod.actuator.M = readmatrix('full_APA300ML_M.CSV'); % Mass Matrix
 | 
			
		||||
    nano_hexapod.actuator.P = extractNodes('full_APA300ML_out_nodes_3D.txt'); % Node coordiantes [m]
 | 
			
		||||
 | 
			
		||||
    nano_hexapod.actuator.d_align = args.actuator_d_align; % Misalignment
 | 
			
		||||
    nano_hexapod.actuator.xi = args.actuator_xi; % Damping ratio
 | 
			
		||||
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.xi = args.actuator_xi; % Damping ratio
 | 
			
		||||
 | 
			
		||||
nano_hexapod.actuator.ks = args.actuator_ks; % Stiffness of one stack [N/m]
 | 
			
		||||
nano_hexapod.actuator.cs = args.actuator_cs; % Damping of one stack [N/m]
 | 
			
		||||
 | 
			
		||||
nano_hexapod.geometry = struct();
 | 
			
		||||
 | 
			
		||||
Fa = [[-86.05,  -74.78, 22.49],
 | 
			
		||||
@@ -224,6 +236,8 @@ switch args.controller_type
 | 
			
		||||
    nano_hexapod.controller.type = 2;
 | 
			
		||||
  case 'dvf'
 | 
			
		||||
    nano_hexapod.controller.type = 3;
 | 
			
		||||
  case 'hac-iff-struts'
 | 
			
		||||
    nano_hexapod.controller.type = 4;
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
if nargout == 0
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user