function [nano_hexapod] = initializeSimplifiedNanoHexapod(args) arguments args.type char {mustBeMember(args.type,{'none', 'stewart'})} = 'stewart' end stewart = initializeStewartPlatform(); switch args.type case 'none' stewart.type = 0; case 'stewart' stewart.type = 1; end stewart = initializeFramesPositions(stewart, ... 'H', 95e-3, ... 'MO_B', 150e-3); stewart = generateGeneralConfiguration(stewart, ... 'FH', 15e-3, ... 'FR', 120e-3, ... 'FTh', [220, 320, 340, 80, 100, 200]*(pi/180), ... 'MH', 15e-3, ... 'MR', 110e-3, ... 'MTh', [255, 285, 15, 45, 135, 165]*(pi/180)); stewart = computeJointsPose(stewart); stewart = initializeStrutDynamics(stewart, ... 'type', 'apa300ml', ... 'k', 0.3e6, ... 'ke', 4.3e6, ... 'ka', 2.15e6, ... 'c', 18, ... 'ce', 0.7, ... 'ca', 0.35, ... 'ga', -2.7, ... 'gs', 0.53e6); stewart = initializeJointDynamics(stewart, ... 'type_M', '4dof', ... 'type_F', '2dof_axial', ... 'Kf_M', 4.83, ... 'Cf_M', 1e-2, ... 'Kt_M', 260, ... 'Ct_M', 1e-2, ... 'Ka_M', 94e6, ... 'Ca_M', 1e-2, ... 'Kf_F', 4.83, ... 'Cf_F', 1e-2, ... 'Ka_F', 94e6, ... 'Ca_F', 1e-2); stewart = initializeCylindricalPlatforms(stewart, ... 'Fpm', 5, ... 'Fph', 10e-3, ... 'Fpr', 150e-3, ... 'Mpm', 5, ... 'Mph', 10e-3, ... 'Mpr', 150e-3); stewart = initializeCylindricalStruts(stewart, ... 'Fsm', 1e-3, ... 'Fsh', 60e-3, ... 'Fsr', 5e-3, ... 'Msm', 1e-3, ... 'Msh', 60e-3, ... 'Msr', 5e-3); stewart = computeJacobian(stewart); stewart = initializeStewartPose(stewart, ... 'AP', zeros(3,1), ... 'ARB', eye(3)); nano_hexapod = stewart; if exist('./mat', 'dir') if exist('./mat/nass_model_stages.mat', 'file') save('mat/nass_model_stages.mat', 'nano_hexapod', '-append'); else save('mat/nass_model_stages.mat', 'nano_hexapod'); end elseif exist('./matlab', 'dir') if exist('./matlab/mat/nass_model_stages.mat', 'file') save('matlab/mat/nass_model_stages.mat', 'nano_hexapod', '-append'); else save('matlab/mat/nass_model_stages.mat', 'nano_hexapod'); end end end