This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
parallel_flexure_guide [2017/10/12 13:39] mark.naves |
parallel_flexure_guide [2023/06/01 20:50] (current) marijn.nijenhuis [Example: Compute motion/deformations of a parallel flexure guide] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
- | This example shows the static simulation | + | ===== Example: Compute motion/ |
- | {{ : | + | This example shows the static simulation of a parallel flexure guide which moves from -20 mm deflection up to 20 mm deflection in x-direction (the degree of freedom of the parallel flexure guide). Goal is to evaluate the translational stiffness in the supporting directions (y- and z-direction) of the end-effector over the range of motion. |
+ | {{:: | ||
+ | After a successful simulation, SPACAR Light returns the compliance matrix of each node (per loadstep) - see the [[full_syntax|Full Syntax List]]. For a compliance matrix '' | ||
Line 13: | Line 15: | ||
- | + | An example file for providing the input for SPACAR | |
- | An example file for providing the input for Spacar | + | |
<code matlab pfg_example.m> | <code matlab pfg_example.m> | ||
clear | clear | ||
clc | clc | ||
+ | |||
+ | % addpath(' | ||
%% NODE POSITIONS | %% NODE POSITIONS | ||
- | nodes = [-50E-3 0.0 0; | + | nodes = [-50e-3 0.0 0 |
| | ||
0 100e-3 0 %node 3 | 0 100e-3 0 %node 3 | ||
50e-3 100e-3 0 %node 4 | 50e-3 100e-3 0 %node 4 | ||
- | 50e-3 0 0]; %node 2 | + | 50e-3 0 0]; %node 5 |
+ | |||
+ | %node 3 is only added so that the system properties can be evaluated right there | ||
- | |||
%% ELEMENT CONNECTIVITY | %% ELEMENT CONNECTIVITY | ||
elements = [1 2 | elements = [1 2 | ||
Line 33: | Line 36: | ||
3 4 | 3 4 | ||
4 5]; | 4 5]; | ||
- | + | ||
- | + | ||
%% NODE PROPERTIES | %% NODE PROPERTIES | ||
nprops(1).fix = true; %fix begin 1st leafspring | nprops(1).fix = true; %fix begin 1st leafspring | ||
nprops(5).fix = true; %fix end 2nd leafspring | nprops(5).fix = true; %fix end 2nd leafspring | ||
- | + | ||
- | nprops(3).force = [0 -10 0]; %load of 10N on node 3 y-direction | + | nprops(3).force = [0 -10 0];%load of 10N on node 3 y-direction |
nprops(3).mass = 1; %1kg mass at node 3 | nprops(3).mass = 1; %1kg mass at node 3 | ||
nprops(3).displ_initial_x = -20e-3; %initial displacement, | nprops(3).displ_initial_x = -20e-3; %initial displacement, | ||
nprops(3).displ_x = 40e-3; | nprops(3).displ_x = 40e-3; | ||
- | + | ||
+ | |||
%% ELEMENT PROPERTIES | %% ELEMENT PROPERTIES | ||
eprops(1).elems = [1 4]; %both leafsprings | eprops(1).elems = [1 4]; %both leafsprings | ||
- | eprops(1).emod = 210e9; | + | eprops(1).emod = 210e9; |
- | eprops(1).smod = 70e9; %G-mod steel | + | eprops(1).smod = 70e9; %steel |
- | eprops(1).dens = 7800; %rho steel | + | eprops(1).dens = 7800; %steel |
eprops(1).dim = [30e-3 0.5e-3]; | eprops(1).dim = [30e-3 0.5e-3]; | ||
eprops(1).cshape = ' | eprops(1).cshape = ' | ||
- | eprops(1).flex = [2 3 4]; %bending and torsion flexible | + | eprops(1).flex = 1:6; |
eprops(1).orien = [0 0 1]; | eprops(1).orien = [0 0 1]; | ||
- | eprops(1).nbeams = 2; %2 beams for simulation | + | eprops(1).nbeams = 2; %2 beams per element |
- | + | eprops(1).color = [0.8549 | |
- | eprops(2).elems = [2 3]; %end-effector | + | |
- | eprops(2).dens = 2700; %rho alluminium | + | eprops(2).elems = [2 3]; %rigid body |
+ | eprops(2).dens = 2700; %aluminium | ||
eprops(2).dim = [30e-3 10e-3]; | eprops(2).dim = [30e-3 10e-3]; | ||
eprops(2).cshape = ' | eprops(2).cshape = ' | ||
eprops(2).orien = [0 0 1]; | eprops(2).orien = [0 0 1]; | ||
- | eprops(2).color = [1 0 0]; %red color | + | eprops(2).color = [0.1686 |
- | + | ||
- | + | ||
- | %% RELEASES | + | |
- | rls(1).def = [2 3 4 5 6]; | + | |
- | rls(4).def = [3 4]; | + | |
%% OPTIONAL | %% OPTIONAL | ||
opt.gravity = [0 0 -9.81]; | opt.gravity = [0 0 -9.81]; | ||
- | opt.loadsteps = 50; | + | opt.loadsteps = 50; %additional load steps (default 10) to get |
+ | %higher resolution plots | ||
+ | |||
%% DO SIMULATION | %% DO SIMULATION | ||
- | out = spacarlight(nodes, | + | out = spacarlight(nodes, |
- | + | ||
- | %Plot stiffness values over the range of motion | + | |
- | Ky(:) = 1./ | + | |
- | Kz(:) = 1./ | + | |
- | x = out.node(3).x(1,: | + | |
+ | %% POST PROCESS RESULTS | ||
+ | %plot stiffness values over the range of motion | ||
+ | Ky(:) = 1./ | ||
+ | Kz(:) = 1./ | ||
+ | x = out.node(3).p(1,: | ||
+ | |||
fig1 = figure; | fig1 = figure; | ||
hold on | hold on | ||
Line 86: | Line 90: | ||
grid minor | grid minor | ||
xlabel(' | xlabel(' | ||
- | ylabel(' | + | ylabel(' |
- | fig1.Children.YScale = ' | + | fig1.Children.YScale = ' |
- | fig1.Children.YLim = [1e4 1e10] | + | fig1.Children.YLim = [1e4 1e10]; |
- | </ | + | |
- | + | ||
- | <code dat pfg_example.dat> | + | |
- | #NODES | + | |
- | X | + | |
- | X | + | |
- | X | + | |
- | X | + | |
- | X | + | |
- | + | ||
- | + | ||
- | #ELEMENTS | + | |
- | #ELEMENT 1 | + | |
- | X 11 -0.050000 | + | |
- | BEAM 1 1 2 | + | |
- | DYNE 1 2 3 4 | + | |
- | BEAM 2 | + | |
- | RLSE 2 2 3 4 5 6 | + | |
- | + | ||
- | #ELEMENT 2 | + | |
- | BEAM 3 3 4 5 6 0.000000 | + | |
- | + | ||
- | #ELEMENT 3 | + | |
- | BEAM 4 5 6 7 8 0.000000 | + | |
- | + | ||
- | #ELEMENT 4 | + | |
- | X 13 0.050000 | + | |
- | BEAM 5 7 8 | + | |
- | DYNE 5 2 3 4 | + | |
- | BEAM 6 | + | |
- | DYNE 6 2 | + | |
- | RLSE 6 3 4 | + | |
- | + | ||
- | + | ||
- | + | ||
- | #NODE FIXES AND INPUTS | + | |
- | FIX 1 | + | |
- | FIX 2 | + | |
- | INPUTX | + | |
- | FIX 9 | + | |
- | FIX 10 | + | |
- | + | ||
- | + | ||
- | END | + | |
- | HALT | + | |
- | + | ||
- | ESTIFF | + | |
- | ESTIFF | + | |
- | EM 1 0.117000 0.000009 0.000000 0.000009 0.000000 | + | |
- | EM 2 0.117000 0.000009 0.000000 0.000009 0.000000 | + | |
- | ESTIFF | + | |
- | ESTIFF | + | |
- | EM 5 0.117000 0.000009 0.000000 0.000009 0.000000 | + | |
- | EM 6 0.117000 0.000009 0.000000 0.000009 0.000000 | + | |
- | + | ||
- | + | ||
- | # | + | |
- | DELXF 5 0.000000 -10.000000 0.000000 | + | |
- | DELINPX | + | |
- | INPUTX | + | |
- | XM 5 1.000000 | + | |
- | + | ||
- | GRAVITY | + | |
- | ITERSTEP 10 49 0.0000005 1 3 49 | + | |
- | + | ||
- | END | + | |
- | END | + | |
- | + | ||
- | + | ||
- | + | ||
- | VISUALIZATION | + | |
- | + | ||
- | BEAMPROPS | + | |
- | CROSSTYPE | + | |
- | CROSSDIM | + | |
- | + | ||
- | BEAMPROPS | + | |
- | CROSSTYPE | + | |
- | CROSSDIM | + | |
- | GRAPHICS | + | |
- | FACECOLOR | + | |
</ | </ |