Difference between revisions of "Flexure Characterization and Design"

From Mech
Jump to navigationJump to search
Line 3: Line 3:


=Current Design=
=Current Design=

The flexures currently on the PPOD are made of a 1/4" Tygon tubing glued to aluminum mounts.
The flexures currently on the PPOD are made of a 1/4" Tygon tubing glued to aluminum mounts.


=Hardware=
=Hardware=

There are three basic pieces of hardware needed to characterize a flexure: a forcing mechanism that can move in all six degrees of freedom, accelerameters to collect motion data, and a six-axis force sensor to collect the forces and moments. The PPOD was used to force the flexures because it did not require building a separate system, it already collects acceleration data of the plate, and it can control motion in all six degrees of motion at frequencies and amplitudes that flexures will be used at.

==Force Sensor mount==
In order to attach the flexure and force sensor to the PPOD, we had to design a detachable mounting system.


=Data Collection=
=Data Collection=
Line 20: Line 26:


We then have to fit this model to each combination of the accelerations and forces for a total of 36 transfer functions, one for each entry in the mass, damping, and spring matrices. For this we used the MATLAB code found below.
We then have to fit this model to each combination of the accelerations and forces for a total of 36 transfer functions, one for each entry in the mass, damping, and spring matrices. For this we used the MATLAB code found below.

function flexureinfo = flexure_analysis(handles)
flexureinfo = struct('data',[],'fit',[],'amplitudes',[],...
'mass',[],'damping',[],'spring',[]);
data_cell = cell(6,6);
fit_cell = cell(6,6);
data = struct('freqs',[],'complex',[],'mag',[],'phase',[]);
data.freqs = 2*pi*handles.flexureinfo.Gnfreqs_flexure;
for ii = 1:6
for jj = 1:6
data.complex = reshape(handles.flexureinfo.Gn_flexure(jj,ii,:),size(data.freqs));
data.mag = 20*log10(abs(data.complex));
data.phase = filter_phase_data(180/pi*angle(data.complex));
fit = flexure_tf_fit(data);
data_cell{jj,ii} = data;
fit_cell{jj,ii} = fit;
flexureinfo.mass(jj,ii) = fit.params(1);
flexureinfo.damping(jj,ii) = fit.params(2);
flexureinfo.spring(jj,ii) = fit.params(3);
end
end
flexureinfo.amplitudes = [handles.plateinfo.Alin handles.plateinfo.Aang];
flexureinfo.data = data_cell;
flexureinfo.fit = fit_cell;
end





Revision as of 15:59, 10 June 2009

Overview

Flexures are deformable solid bodies used to connect elements in a mechanical system. This flexibility allows for greater freedom of motion of the parts relative to each other than a rigid joint does, but at the cost of complicating the dynamics of the system. As one can imagine, it is important to know the properties of the flexures in order to predict and control the behavior of a system. This project is primarily focused on the flexures used in the PPOD projects in LIMS which are used to connect the linear actuators to the table. In this case the flexures allow the table to move in all six degrees of freedom (three translational and three rotational) which the use of rigid joints would not allow. The goals of this project are to be able to test the performance of the existing flexures and to use this information to design new ones to improve the performance of the PPOD.

Current Design

The flexures currently on the PPOD are made of a 1/4" Tygon tubing glued to aluminum mounts.

Hardware

There are three basic pieces of hardware needed to characterize a flexure: a forcing mechanism that can move in all six degrees of freedom, accelerameters to collect motion data, and a six-axis force sensor to collect the forces and moments. The PPOD was used to force the flexures because it did not require building a separate system, it already collects acceleration data of the plate, and it can control motion in all six degrees of motion at frequencies and amplitudes that flexures will be used at.

Force Sensor mount

In order to attach the flexure and force sensor to the PPOD, we had to design a detachable mounting system.

Data Collection

Transfer Function Fitting

Until now, only a simple approximation has been used to describe the flexures when modeling the system. In reality, a flexure will have a mass, damping, and spring matrix associated with it that maps its motion to the forces it applies.

Here is a vector of forces and moments and is a vector of coordinates. This leads to a transfer function from input acceleration to output force given by:

We then have to fit this model to each combination of the accelerations and forces for a total of 36 transfer functions, one for each entry in the mass, damping, and spring matrices. For this we used the MATLAB code found below.


Results

Next Steps