Asen 3112 Lab 2

Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

University of Colorado Boulder

ASEN 3112 - Lab 2


Lab 1 ASEN 3112 Section 011

LAB 2

Student Authors:
Skylar Edwards
109224424

Author: Samuel Hatton

Author: Skylar Edwards


Professors:
Author: Amanda Marlow Francisco Jimenez
Lab Instructor:
Katie Rae Williamson
Author: Alexander Bergemann

Author: Andrew Supuppo

Author: Ryan Charles


108981088

1 November, 2021
I. Question 1: Experimental Results

Fig. 1 Linear Regression of Displacement (LVDT) vs Internal Force (𝐹3 )

In Fig. 1 it is shown that as the displacement becomes more negative as the internal force increases. This regression
line is extremely linear due to its correlation coefficient being -0.9444. The closer the correlation coefficient is to -1 or 1
means the more linear our data appears to fall. The uncertainty in the regression line is 0.000087. This is relatively low
meaning our regression model fits our data very accurately.

1
Fig. 2 Linear Regression of Displacement (LVDT) vs Reaction Forces

In Fig. 2 it is shown as the displacement becomes more negative as the reaction forces increases. These regression
lines are extremely linear due to their correlation coefficients being -0.9685, -0.9712, and -0.9670 respectively. The
closer the correlation coefficient is to -1 or 1 means the more linear our data appears to fall. The uncertainty in the
regression lines are 6.6e-5, 6.3e-5, and 6.7e-5 respectively. These are relatively low meaning our regression models fit
our data very accurately.
The equation used for the correlation coefficient is
Í𝑛
(𝑥 𝑖 − 𝑥) (𝑦 𝑖 − 𝑦)
𝑟 = √︃Í 𝑖=1 (1)
𝑛
(𝑥 − 𝑥) 2 (𝑦 − 𝑦) 2
𝑖=1 𝑖 𝑖

Where 𝑥𝑖 is the force for each data point, 𝑥 is the mean of the forces for every data point, 𝑦 𝑖 is the displacement for each
data point, 𝑦 is the mean of the displacements for every data point.

II. Question 2: Analytical and FEM Results

A. Discussion of FEM Simplifications


We have made several simplifying assumptions in our finite element model of the truss structure. There are physical
dimensions of the truss structure we are neglecting: The node joints have threads that will feel different kinds of stress,
the bars may experience some bending moments, the real loading is not two point forces, the in-line load cell changes the
material properties of that element, the model assumes the bars are weightless, etc... None of this is modeled in ANSYS,
instead, it is all just idealized as simple rods connected together by magic. Additionally, there are characteristics of the
loading that we are neglecting: we assume that each element is in tension or compression only. In reality, some of the
bars will experience some bending moments and twisting torques due to a combination of the interactions between the
elements and connection joints and of the non-ideal load distribution from using weights rather than point forces. We
also simplified the boundary conditions for our FEM: in the model, the ends are magically restricted from any type of
movement, but in real life, there is some interplay between the truss and the load cells, the load cells and their bases, and
their bases and the floor. All of these interplays introduce slop and friction into the system. This may mean that the ends

2
of the truss move in ways the model doesn’t track, and it may also mean that it doesn’t move in ways that the model
thinks in will, depending on how free each direction of freedom actually is.

B. ANSYS Results
Fig. 3 and Fig. 4 show the truss displacement of the ANSYS model at full loading; that is, 222.4 Newtons in the
negative y-direction on the middle of the truss. The truss deforms in the way we would expect, bending down in the
middle under the load, with its ends staying

Fig. 3 Displacement in Loaded vs. Unloaded Structure, XY-Plane

Fig. 4 Displacement in Loaded vs. Unloaded Structure, Isomorphic

Fig. 5 shows the internal forces felt by each element of the truss at full loading. Labeled on it you can see the
minimum and maximum internal forces; these are -440.02 N on element 325 and 450.14 N on element 338, respectively.
Table 1 contains the reaction forces at each of the nodes we restricted from moving. These are directly analogous to
the reaction forces plotted in Fig. 2. 𝐹0 and 𝐹1 , the experimental reaction forces, are measured at the same place as the
forces in Nodes 1 and 68. 𝐹2 , measured on the left end of the real truss, accounts for the reaction forces measured at
both Node 17 and 68; there is only one load cell on this side in the experimental setup, but ANSYS gives us the reaction
forces at the individual loads, and so 𝐹2 should be approximately equal to the sum of 𝐹𝑦,17 and 𝐹𝑦,68 . Notice that here,
these nodes don’t have any reaction force in the x-direction. This is by the nature of the ANSYS setup: the nodes are
approximated as being free in the x-direction only. In reality, there might be some friction or other things going on that
would create some reaction force at these nodes, but they should be small and so we are neglecting all of that.

Node 𝐹𝑥 𝐹𝑦 𝐹𝑧
1 -1.1295 55.562 1.0874
17 0 55.638 1.0040
52 1.1295 55.638 -1.1580
68 0 55.562 -0.93342
Table 1 Reaction Solutions per Node

3
Fig. 5 Tension and Compression in Truss Elements

C. Equivalent Beam Calculation


The first step of estimating the displacement of the truss structure via an equivalent beam is to come up with an
area moment of inertia value for the equivalent beam. Is value will be the sum of each individual bar’s area moment
of inertia about the center axis of the truss, calculated with the parallel axis theorem. The area of each individual
tube is taken as 𝐴 = 𝜋(( 𝑑2 ) 2 − ( 𝑑2𝑡 ) 2 ) = 2.18 × 10−5 [𝑚 2 ], where 𝑑 = 9.53 × 10−3 [𝑚] is the diameter of the tube and
𝑑𝑡 = 7.94 × 10−3 [𝑚] is the diameter of the tube cutout. Eq. 2 is the area moment of inertia of the tube; this evaluates to
𝐼 = 2.012 × 10−10 [𝑚 4 ]. Eq. 3 is the second area moment of the same single tube about the central length-wise axis
of the truss structure; this evaluates to 𝐼𝑐 = 6.806 × 10−7 [𝑚 4 ]. What we need for the beam calculation is an 𝐼 which
represents all four of the tubes, so we can just multiply 𝐼𝑐 by four: 𝐼 𝑧𝑧 = 4 ∗ 𝐼𝑐 = 2.72 × 10−6 [𝑚 4 ].
 
𝜋 4
𝐼= 𝑑 − 𝑑𝑡4 (2) 𝐼𝑐 = 𝐼 + 𝐴ℎ2 (3)
64

Now that we have approximated the truss structure as a simple beam, we can set up our standard energy-based beam
bending problem to predict the displacement at the central section of our truss: here we’ll call this point B, and the
Í
displacement 𝑣 𝐵 . Our problem set up is shown in Fig. 6. Making cuts and looking at 𝑀 = 0 gives us Eq. 4.
(
111.2𝑥 0≤𝑥≤2
𝑀 (𝑥) = (4)
111.2𝑥 − 444.8 2 ≤ 𝑥 ≤ 4
To solve for 𝑣 𝐵 , we will solve 𝑊𝑒 = 𝑈, where 𝑊𝑒 and 𝑈 are Eqs. 5 and 6. As a note, here 𝐸 = 69 GPa.

4
Fig. 6 Equivalent Beam Calculation Set-up Diagram

𝑀 (𝑥) 2

1 1
𝑊𝑒 = − 𝑃𝑣 𝐵 (5) 𝑈= 𝑑𝑥 (6)
2 2 𝐿 𝐸 𝐼 𝑧𝑧
Solving:

𝑊𝑒 = 𝑈
𝑀 (𝑥) 2

1 1
− 𝑃𝑣 𝐵 = 𝑑𝑥
2 2 𝐿 𝐸 𝐼 𝑧𝑧
∫ 2 !
∫ 4
1 2 2
−𝑃𝑣 𝐵 = (111.2𝑥) 𝑑𝑥 + (111.2𝑥 − 444.8) 𝑑𝑥
𝐸 𝐼 𝑧𝑧 0 2
−65949
𝑣𝐵 =
𝑃𝐸 𝐼 𝑧𝑧
−65949
=
(222.4) (69 × 109 ) (2.72 × 10−6 )
= −1.5786 × 10−3 [𝑚]

Our Ansys model reports a maximum net deflection in the Y direction at Node 43, right in the center of our truss
underneath the load. This predicted displacement is 𝑣 𝑝 = −1.5625 × 10−3 [𝑚]. We can compare this to our number
from the equivalent beam bending model. Solving Eq. 7 shows that the two numbers are remarkably close: the midspan
displacement from the equivalent beam bending model comes within about 1% of that from the FEM model.
𝑣𝐵 − 𝑣 𝑝
Percent Error = × 100 = 1.0301% (7)
𝑣𝑝
There are several obvious reasons why these numbers should be different. The real truss is made up of a couple
hundred discrete tubes held together with fasteners, while the beam model hides all of that by pretending the truss is a
simple 1D beam. The joints might behave differently then a uniform beam, affecting the way stress propagates through
the structure. Similarly, the FEM model looks at each element as being purely in tension or compression, whereas
the beam model assumes the solid beam is bending, implying some internal tension and compression as well as some
shear stress. On the whole, the FEM and beam deflections models assume similar things about loading and material
properties, and so it makes sense that they are as close as less than 10%.

5
III. Question 3: Uncertainty Analysis

A. Quantitative Measures of the Differences Between FEM and Experimental Measurements


To better understand what is happening to the real world system, the experimental results can be compared to the
FEM model. This is shown in Fig. 7 below.

Fig. 7 Load vs Displacement

B. Potential Sources of Difference


The experimental measurements are not performed in a perfect environment. Some possible sources of error are
imperfect joints, free-play, friction, manufacturing imperfections, non-uniform axial stress, in addition to others. The
modeling of the effects of the potential sources of difference can be described using Fig 8 below.

6
Fig. 8 Load vs Displacement

The error between the FEM data and the experimental data decreases as the stiffness is increased, (i.e. Young’s
Modulus increased, Cross-Sectional Area Increased, of Length decreased. This was not the expected result, as it was
expected that many of the potential sources of differences would result in experimental data that behaves as a system
with a lower stiffness. One explanation is that the supports in the experimental data do not overcome static friction, so
the behavior of the system is more similar to the FEM model where the supports are modeled as pinned joints. In figure
8 one can see that modeling both ends of the truss as pinned yields the most accurate results.
Imperfect joints may result in struts shifting while experiencing a load. This may reduce the effective stiffness of the
bars. The bar containing the in-line load cell allows for it’s pins to move axially, due to the nature of the measuring
device. This, in turn, means that that particular member’s stiffness is decreased, while the FEM simulation has perfectly
modelled members with the exact same characteristics.
Manufacturing imperfections means that not every member will have the same characteristics. Not every joint will
be identically distant from each other and the cross-section of the struts will not all be identical. This results in different
experimental results when compared to the perfectly modeled FEM simulation. The FEM model assumes that the struts
have no internal bending moments. However, in the experiment the joints can transmit bending moments and the struts
provide a bending stiffness. We could have modeled the truss elements as beams to simulate bending moments, but the
process is involved and, despite the deadline extension, it was not feasible. Likely, supporting moments decreases the
overall displacement per external load of the structure. If the external load is the same for a truss with only internal
tension and a truss with both internal tension and bending, then all of the load will go into tension in the first, but it
will split between tension and bending in the second. Hence, the second truss will in effect be more stiff, displacing
less overall. Our ANSYS model with higher stiffness has less error, as does our pinned model. It seems likely that an
ANSYS model which included moments and pinned the ends might yield results with less error. Some other possible
sources that may impact measurements could be the error within the measuring devices, vibrations, and fatigue.

C. Factor of Safety
All of the approximations we make in our models lead to discrepancies between the predicted behavior of a structure
and the actual behavior of that structure in real world conditions. This means that, in order to make safe structures, we
either need to have perfect models, or account for the error using factors of safety. This means designing structures so
that they can theoretically withstand loading that is some percentage larger than the largest expected real life loading

7
Percent Error from Experimental
Pinned 37.5006
Larger Stiffness 43.5107
Smaller Stiffness 49.4233
Anysis Data 46.0700
Table 2 Discrepencies between ANSYS and Experimental data sets

conditions. Larger factors of safety mean more margin for error.


According to Google, the tensile yield strength for the 6061-T6 Aluminum used in the truss is around 241 MPa.
Doing some quick math using the cross sectional area assumed in the equivalent beam calculation section above, an
internal stress of 241 MPa corresponds to an internal element force of around 5.2 kN. This is much larger than the
maximum internal force in our ANSYS model, which was 450.14 N in element 338. This internal load corresponds
to an external load of 222.4 N. All of our analysis in previous parts tells us that the relationship between the external
loading, displacements, and internal loading is generally linear: we can approximate that for every Newton of load
placed on the midpoint of the truss, the lower horizontal elements at the midpoint will experience approximately 2
Newtons of tension. This would mean that our theoretical maximum load at midpoint is about 2.6 kN.
In earlier parts of Question 3 we discussed the average error between the experimental values and the predicted
values for our model. In general our model is off by around 20%. This takes into account things like imperfect joints,
free play in the joints, and friction between the truss and the floor. In order to account for life time changes, maybe
fatigue and long term elongation or warping of the elements, as well as other factors we’re not thinking about, we can
add 10%. If we’re only sure of our model to within about 30%, then we should have a maximum allowable load that’s
30% less then our theoretical yield strength. 70% of 2.6kN rounds down to 1.8 kN; we will use this as our maximum
load. If we then say that our actual loading must not be greater than 70% of that value (1.27 kN), we would get a factor
of safety of approximately 1.42. If we calculate the factor of safety using the loading conditions from this lab, we get a
factor of just over 8.

IV. Appendix

A. Participation Report
In our first meeting, the team divided up work and set internal deadlines for various portions of this report. Listed in
the table below are the explicit responsibilities of each group member. Along with completing their individual portions,
each team member helped others, wrote and edited portions of the report document, and assisted in group decision
making. The corresponding scores are based upon a survey filled out by each group member, scoring themselves and
their teammates.
Student Responsibility Contribution Factor
Alexander Bergemann P3, Code, Report 100%
Ryan Charles P2, ANSYS Model, Report 92%
Skylar Edwards P3, Code, Report 96%
Samuel Hatton ANSYS Model, Group Lead 100%
Amanda Marlow P2, ANSYS Model, Report 100%
Andrew Supuppo P1, Code, Report 100%

8
B. MATLAB Code

1 %% ASEN 3112 - Lab 2 - Main


2
3 clear
4 clc
5 close all
6 set(groot,'defaultAxesTickLabelInterpreter','latex');
7 set(groot,'defaulttextinterpreter','latex');
8 set(groot,'defaultLegendInterpreter','latex');
9 set(groot,'defaultAxesFontSize',12);
10 set(groot,'defaultLineLineWidth',1.2);
11
12 %% Question 1
13
14 X = load("Lab2-Dataforgroup1-5.txt");
15
16 Load = X(:,1) * 4.44822162; % [N]
17 F0 = X(:,2) * 4.44822162; % [N]
18 F1 = X(:,3) * 4.44822162; % [N]
19 F2 = X(:,4) * 4.44822162; % [N]
20 F3 = X(:,5) * 4.44822162; % [N]
21 LVDT = X(:,6) / 39.3700787; % [m]
22
23
24 % F3
25 delta3 = (length(F3) * sum(F3.^2)) - ((sum(F3))^2);
26 A3 = ((sum(F3.^2) * sum(LVDT)) - (sum(F3) * sum(F3.*LVDT))) / delta3; % Y-intercept of ...
the linear regression
27 B3 = ((length(F3) * sum(F3.*LVDT)) - (sum(F3) * sum(LVDT))) / delta3; % Slope of the ...
linear regression
28
29 y3 = A3 + (B3*F3); % Linear regression ...
line formula
30
31 dumb = zeros(1,length(F3));
32 for i = 1:length(F3)
33 dumb(i) = (LVDT(i)-A3-(B3*F3(i)))^2;
34 end
35
36 sigmaY3 = sqrt( (1/(length(F3)-2)) * sum(dumb) ); % Uncertainty in ...
linear regression line
37 sigmaA3 = sigmaY3 * sqrt( sum(F3.^2)/delta3 ); % Uncertainty in ...
y-intercept
38 sigmaB3 = sigmaY3 * sqrt( length(F3)/delta3 ); % Uncertainty in slope
39
40 aa = zeros(1,length(F3));
41 bb = zeros(1,length(F3));
42 cc = zeros(1,length(F3));
43 for i = 1:length(F3)
44 aa(i) = F3(i) - mean(F3); % Part of ...
denominator of correlation coefficient
45 bb(i) = LVDT(i) - mean(LVDT); % Part of ...
denominator of correlation coefficient
46 cc(i) = aa(i) * bb(i); % Numerator of ...
correlation coefficient
47 end
48
49 r3 = sum(cc) / sqrt( sum(aa.^2) * sum(bb.^2) ); % Calculates ...
correlation coefficient
50
51 fprintf("The correlation coefficient for F3 is: %.4f with linear regression uncertantiy: ...
%.6f\n", r3, sigmaY3)
52
53 figure % Internal Force vs Displacement Graph
54 plot(F3,LVDT, '.', 'MarkerSize', 15)
55 hold on

9
56 plot(F3, y3, 'LineWidth', 1.5)
57 title("Displacement (LVDT) vs Internal Force ($F_3$)")
58 ylabel("LVDT [m]")
59 xlabel("$F_3$ [N]")
60 legend("$F_3$ data", "$F_3$ Regression", 'Location', 'best')
61 grid on
62 hold off
63
64
65 % F0
66 delta0 = (length(F0) * sum(F0.^2)) - ((sum(F0))^2);
67 A0 = ((sum(F0.^2) * sum(LVDT)) - (sum(F0) * sum(F0.*LVDT))) / delta0; % Y-intercept of ...
the linear regression
68 B0 = ((length(F0) * sum(F0.*LVDT)) - (sum(F0) * sum(LVDT))) / delta0; % Slope of the ...
linear regression
69
70 y0 = A0 + (B0*F0); % Linear regression ...
line formula
71
72 dumb = zeros(1,length(F0));
73 for i = 1:length(F0)
74 dumb(i) = (LVDT(i)-A0-(B0*F0(i)))^2;
75 end
76
77 sigmaY0 = sqrt( (1/(length(F0)-2)) * sum(dumb) ); % Uncertainty in ...
linear regression line
78 sigmaA0 = sigmaY0 * sqrt( sum(F0.^2)/delta0 ); % Uncertainty in ...
y-intercept
79 sigmaB0 = sigmaY0 * sqrt( length(F0)/delta0 ); % Uncertainty in slope
80
81 aa = zeros(1,length(F0));
82 bb = zeros(1,length(F0));
83 cc = zeros(1,length(F0));
84 for i = 1:length(F0)
85 aa(i) = F0(i) - mean(F0); % Part of ...
denominator of correlation coefficient
86 bb(i) = LVDT(i) - mean(LVDT); % Part of ...
denominator of correlation coefficient
87 cc(i) = aa(i) * bb(i); % Numerator of ...
correlation coefficient
88 end
89
90 r0 = sum(cc) / sqrt( sum(aa.^2) * sum(bb.^2) ); % Calculates ...
correlation coefficient
91
92 fprintf("The correlation coefficient for F0 is: %.4f with linear regression uncertantiy: ...
%.6f\n", r0, sigmaY0)
93
94
95 % F1
96 delta1 = (length(F1) * sum(F1.^2)) - ((sum(F1))^2);
97 A1 = ((sum(F1.^2) * sum(LVDT)) - (sum(F1) * sum(F1.*LVDT))) / delta1; % Y-intercept of ...
the linear regression
98 B1 = ((length(F1) * sum(F1.*LVDT)) - (sum(F1) * sum(LVDT))) / delta1; % Slope of the ...
linear regression
99
100 y1 = A1 + (B1*F1); % Linear regression ...
line formula
101
102 dumb = zeros(1,length(F1));
103 for i = 1:length(F1)
104 dumb(i) = (LVDT(i)-A1-(B1*F1(i)))^2;
105 end
106
107 sigmaY1 = sqrt( (1/(length(F1)-2)) * sum(dumb) ); % Uncertainty in ...
linear regression line
108 sigmaA1 = sigmaY1 * sqrt( sum(F1.^2)/delta1 ); % Uncertainty in ...
y-intercept

10
109 sigmaB1 = sigmaY1 * sqrt( length(F1)/delta1 ); % Uncertainty in slope
110
111 aa = zeros(1,length(F1));
112 bb = zeros(1,length(F1));
113 cc = zeros(1,length(F1));
114 for i = 1:length(F1)
115 aa(i) = F1(i) - mean(F1); % Part of ...
denominator of correlation coefficient
116 bb(i) = LVDT(i) - mean(LVDT); % Part of ...
denominator of correlation coefficient
117 cc(i) = aa(i) * bb(i); % Numerator of ...
correlation coefficient
118 end
119
120 r1 = sum(cc) / sqrt( sum(aa.^2) * sum(bb.^2) ); % Calculates ...
correlation coefficient
121
122 fprintf("The correlation coefficient for F1 is: %.4f with linear regression uncertantiy: ...
%.6f\n", r1, sigmaY1)
123
124
125 % F2
126 delta2 = (length(F2) * sum(F2.^2)) - ((sum(F2))^2);
127 A2 = ((sum(F2.^2) * sum(LVDT)) - (sum(F2) * sum(F2.*LVDT))) / delta2; % Y-intercept of ...
the linear regression
128 B2 = ((length(F2) * sum(F2.*LVDT)) - (sum(F2) * sum(LVDT))) / delta2; % Slope of the ...
linear regression
129
130 y2 = A2 + (B2*F2); % Linear regression ...
line formula
131
132 dumb = zeros(1,length(F2));
133 for i = 1:length(F2)
134 dumb(i) = (LVDT(i)-A2-(B2*F2(i)))^2;
135 end
136
137 sigmaY2 = sqrt( (1/(length(F2)-2)) * sum(dumb) ); % Uncertainty in ...
linear regression line
138 sigmaA2 = sigmaY2 * sqrt( sum(F2.^2)/delta2 ); % Uncertainty in ...
y-intercept
139 sigmaB2 = sigmaY2 * sqrt( length(F2)/delta2 ); % Uncertainty in slope
140
141 aa = zeros(1,length(F2));
142 bb = zeros(1,length(F2));
143 cc = zeros(1,length(F2));
144 for i = 1:length(F2)
145 aa(i) = F2(i) - mean(F2); % Part of ...
denominator of correlation coefficient
146 bb(i) = LVDT(i) - mean(LVDT); % Part of ...
denominator of correlation coefficient
147 cc(i) = aa(i) * bb(i); % Numerator of ...
correlation coefficient
148 end
149
150 r2 = sum(cc) / sqrt( sum(aa.^2) * sum(bb.^2) ); % Calculates ...
correlation coefficient
151
152 fprintf("The correlation coefficient for F2 is: %.4f with linear regression uncertantiy: ...
%.6f\n", r2, sigmaY2)
153
154
155 figure % Reaction Forces vs Displacement Graph
156 plot(F0, LVDT, '.', 'MarkerSize', 15, 'Color','b')
157 hold on
158 plot(F0, y0, 'LineWidth', 1.5, 'Color','b')
159 hold on
160 plot(F1, LVDT, '.', 'MarkerSize', 15, 'Color','r')
161 hold on

11
162 plot(F1, y1, 'LineWidth', 1.5, 'Color','r')
163 hold on
164 plot(F2, LVDT, '.', 'MarkerSize', 15, 'Color','g')
165 hold on
166 plot(F2, y2, 'LineWidth', 1.5, 'Color','g')
167 hold on
168 title("Displacement (LVDT) vs Reaction Forces")
169 ylabel("LVDT [m]")
170 xlabel("Reaction Forces [N]")
171 legend("$F_0$ data", "$F_0$ Regression", "$F_1$ data", "$F_1$ Regression", "$F_2$ data", ...
"$F_2$ Regression", 'Location', 'best')
172 grid on
173 hold off

12

You might also like