2.4.4.B

Gegeben

../../../../_images/2.4.4.B.png

Größen:

\[\begin{split}F &= 1\,{\mathrm{N}} \\ a &= 600 \,{\mathrm{mm}} \\ b &= 6 \,{\mathrm{mm}} \\ h_a = h(x=a)&=30\,{\mathrm{mm}}\end{split}\]

Balken mit Rechteckquerschnitt mit veränderlicher Höhe.

a) Lagerreaktionen

Berechnen Sie die Lagerreaktionen bei A.

Lösung

b) Schnittgrößen

Berechnen Sie die Schnittgrößen:

\[\begin{split}N(x)&=\dots \\ Q(x)&=\dots \\ M(x)&=\dots\end{split}\]

Lösung

c) Widerstandsmoment

Das Widerstandsmoment für einen Rechteckquerschnitt ist:

\[W_y = \tfrac{bh^2}{6}\]

Zeigen Sie, dass das Widerstandsmoment am rechten Rand bei \(h(x=a)=30\,{\mathrm{mm}}\) ist:

\[W_y(x=a)=900\,{\mathrm{mm}}^3\]

Lösung

Das zeigt man durch Einsetzen.

d) Maximale Normalspannung

Berechnen Sie die maximale Normalspannung bei A \(\sigma_{\mathsf{max}}\), nämlich:

\[\sigma_{\mathsf{max}} = \tfrac{\left|M(x=a)\right|}{W_y}\]

Lösung

\[\left|M(x=a)\right| = 600 \,{\mathrm{Nmm}}\]

Und damit:

\[\sigma_{\mathsf{max}} = \tfrac 2 3 \tfrac{\mathrm{N}}{\mathrm{mm}^2}\]

e) Gleiche Normalspannung bei gegebener Höhe

An welcher Stelle \(x^*\) mit \(h(x^*)=10\,{\mathrm{mm}}\) ist die maximale Normalspannung genauso groß ist wie die maximale Normalspannung bei A?

Berechnen Sie \(x^*\) in \(\mathrm{mm}\) (Millimeter) gerundet auf Rundestellenwert \(0{,}1\).

Lösung

Laut Aufgabenstellung:

\[h^* := h(x^*) = 10\,{\mathrm{mm}}\]

Und damit bekannt:

\[W(x^*) = \tfrac{b{h^*}^2}{6}\]

Damit die maximalen Biegespannungen gleich sind, muss gelten:

\[\sigma_{\mathsf{max}} = \tfrac{\left|M(a)\right|}{W_y(a)} = \tfrac{\left|M(x^*)\right|}{W_y(x^*)}\]

Dies ist eine (lineare) Gleichung zur Berechnung von \(x^*\), nämlich:

\begin{align} \label{eq-2.4.4.B-1} \tfrac{Fa}{W_y(a)} = \tfrac{F x^*}{W_y(x^*)} \tag{1} \end{align}

Lösung:

\[\begin{split}x^* &= \tfrac{200 \,{\mathrm{mm}}}{3} \\ & \stackrel{\scriptscriptstyle{0{,}1}}{\approx} 66{,}7\,{\mathrm{mm}}\end{split}\]

f) Gleiche Normalspannung überall

Geben Sie de Funktion \(h(x)\) an, sodass an jeder Stelle die maximale Normalspannung genauso groß ist wie die maximale Normalspannung bei A.

Und zeichnen Sie den Funktionsgraph der (dimensionslosen) Funktion \(h(x) \, / \, h_a\) über \(x \, / \, a\).

Lösung

Laut (1) muss für alle \(x\) gelten:

\[\begin{split}\tfrac{Fa}{W_y(a)} &= \tfrac{F x}{W_y(x)} \\ \tfrac{Fa}{\tfrac16 b {h_a}^2} &= \tfrac{F x}{\tfrac16 b {(h(x))^2}} \\ \left( \tfrac{h(x)}{h_a} \right)^2 &= \tfrac{x}{a}\end{split}\]

Und damit:

\begin{align} \label{eq-2.4.4.B-2} h(x) &= h_a \sqrt{\tfrac{x}{a}} \tag{2} \\ &= h_a \sqrt{\xi} \end{align}

mit \(\xi = \tfrac x a\).

../../../../_images/2.4.4.B_sqrt.png

SymPy

Source Code eines Programms dazu:

from sympy.physics.units import kg, m, s
from sympy import pi, S, pprint, symbols, cos, sin, Matrix, Eq, solve, sqrt, exp, simplify
from sympy import lambdify
import matplotlib.pyplot as plt
from numpy import linspace, array

# Units:
N         =  kg*m/s**2
k, M, G   =  10**3, 10**6, 10**9
kN        =  k*N
Pa        =  N/m**2
MPa, GPa  =  M*Pa, G*Pa
deg       =  pi/180
half      =  S(1)/2
cm        =  m/100
mm        =  m/1000

# Rounding:
def iso_round(x, pv):
    try:
        x = float(x)
        tmp = round(x, pv)
    except TypeError:
        x = x.evalf()
        from functools import partial
        func = partial(round, ndigits = pv)
        tmp = x.applyfunc(func)
    return tmp

# Printing:
def printout(x, unit=1, prec="nil", sub_list=[]):
    x = x.subs(sub_list)
    x /= unit
    try: 
        x = x.applyfunc(simplify)
    except:
        tmp = x.simplify()
        if tmp != None:
            x = tmp
    if prec != "nil":
        x = iso_round(x, prec)
    pprint(x)
    return

# ---

F, a, b, ha = symbols("F, a, b, ha")
x, hx = symbols("x, hx")

sub_list=[
    ( F,    1 *N  ),
    ( a,  600 *mm ),
    ( b,    6 *mm ),
    ( ha,  30 *mm ),
    ( hx,  10 *mm ),
    ]

def Wy(b,h):
    return  b/6 * h**2

pprint("\nWy(a):")
Wa = Wy(b, ha)
pprint(Wa)
pprint("\nWy(a) / mm³:")
printout(Wa, unit=mm**3, prec=0, sub_list=sub_list)

Mx = -x*F
Mx_max = abs(Mx.subs(x,a))
pprint("\n|M(a)|:")
pprint(Mx_max)

pprint("\ns_max:")
s_max = Mx_max / Wa
pprint(s_max)
pprint("\ns_max / (N / mm²):")
printout(s_max, unit=N/mm**2, prec=3, sub_list=sub_list)

pprint("\nx*:")
Wx = Wy(b,hx)
eq = Eq( F*a/Wa, F*x/Wx )
x_star = solve(eq,[x])[0]
tmp = x_star
pprint(x_star)

# xi  = x / a
xia = linspace(float(0), float(1),5000)

# function to be plotted:
xi = symbols("xi")
f = xi**0.5
f = lambdify(xi,f,"numpy")
f = array(f(xia))

tmp = plt.plot(xia, f, "b-", label="$h(x) \\, / \\, h_a$")

tmp = plt.xlabel("$x \\, / \\, a$")
# tmp = plt.ylabel("$h(x) \\, / \\, h_a$")
tmp = plt.legend(loc="best")
tmp = plt.grid()

plt.savefig("2.4.4.B_sqrt.svg", transparent=True)
plt.show()

Programm ausführen? Dazu:

  1. Copy: Source Code in die Zwischenablage kopieren.

  2. Paste: Source Code ins Eingabefeld hinter [ ]: einfügen.

  3. Play: Knopf ▶ drücken.