meta data for this page
  •  

This is an old revision of the document!


Besenstiel -- gruppe342

Der Versuch wurde durchgeführt von: Julius Riekenberg und Lukas Köpp
Die Wiki-Seite wurde angelegt am: 17 December 2020 15:21

Vorüberlegungen

Wir betrachten im Versuch kippender Besenstiel einen Starren Körper, der um einen festen Drehpunkt durch den Einfluss der Gravitation kippt. Wir richten den Besenstiel dabei immer so aus, dass dieser immer in dieselbe Richtung kippt.

Wir erhalten folgende Bewegungsgleichung für den Winkel $\phi$ des Körpers in Bezug auf das Drehmoment $J$

$ J \ddot{\phi} = F_G \cdot \frac{l}{2} = m \cdot g \cdot sin(\phi) \cdot \frac{l}{2}$

Für J ohne Luftreibung gilt:

$ J = \int_{0}^{l} x^2 \cdot \frac{m}{l} \,dx = \frac{m \cdot l^2}{3} $

Es ergibt sich nun die Differentialgleichung $ \ddot{\phi} = \frac{3 \cdot g}{2 \cdot l} \cdot sin(\phi) $ und wir erkennen, dass die Masse bei einer reibungsfreien Bewegung irrelevant ist.

Die Länge $l$ tritt antiproportional in der Gleichung auf, ist also die Länge größer so wird auch die Fallzeit größer

Gleiches gilt hier für das Ausbalancieren eines Besens. Ist die Masse nicht homogen verteilt, so drehen wir den Besen, dass der massereiche Anteil weit entfernt ist. Dies erhöht das Trägheitsmoment und der Besen kommt nicht so schnell aus der Balance.

Der Anfangswinkel $\phi_0$ spielt eine entscheidene Rolle. Für $\phi_0 = 0$ befinden wir uns auf einem instabilen Extremum, was theoretisch eine unendlich lange Fallzeit haben kann. Real wird der Besenstiel irgendwann aus der Ruhe gebracht. Durch Erhöhung vom Anfangswinkel erreichen wir natürlcih kürzere Fallzeiten, bis wir bei $\phi_0 = \pi/2$ beim Boden ankommen.

Messung

1. Messung

Zuerst betrachten wir einen Besen. Dieser hat die Länge $l_{Besen} = 1,30 \pm 0,03m$.

Wir messen die Starthöhe und bestimmen $\phi_0 = \arctan{s/h_k}$, wobei $s$ die Entferneung entlang der Küchenzeile und $h_k$ bei die Höhe der Kückenzeile ist.

Ab einer gewissen Entfernung reicht der Besen nicht mehr bis zur Küchenplatte. Nun messen wir die Höhe $h$ bei einem festen Abstand $s_{Mark}$ und bestimmen den Winkel erneut als $\phi_0 = \arctan{s_{Mark}/h}$.

Unsicherheiten:

$ u(s$ bzw. $h) = 0,03m, u(T) = 0.1s $

$ u(\phi_0) = \sqrt{(\frac{h^2 \cdot u(s)}{h \cdot (h^2 + s^2)})^2 + (\frac{- s\cdot h^2 \cdot u(h)}{h^2 \cdot (h^2 + s^2)})^2} = \frac{0.03m}{\sqrt{h^2 + s^2}} \leq 2^° $

Den Fehler von einem Satz von Messpunkten $T_i$ erhalten wir aus der Standardabweichung.

Wir lassen den Stab mit zwei Fingern los, sodass er keinen Schwung bekommt. Die Zeit wird mit der akkustischen Stoppuhr gemessen. Dabei klopfen wir beim Loslassen auf die Küchenzeile.

Höhe Küchenzeile $h_k = 0,92 \pm 0,03m$.

Entfernung Markierung $s_{Mark} = 0,90 \pm 0,03m$.

Fallzeit/s Messung Nr.
Messung/m 1 2 3 4 5
Längenmessung
0,160 0,685 0,733 0,749 0,742 0,768
0,365 0,552 0,518 0,572 0,583 0,585
0,665 0,436 0,451 0,394 0,387 0,406
0,930 0,353 0,383 0,372 0,337 0,399
Höhenmessung
0,655 0,315 0,299 0,315 0,304 0,292
0,320 0,255 0,197 0,268 0,241 0,262

2. Messung

Wir messen aufgrund von Mangel an Alternativen einen Metallstab mit Länge $l = 1,02 \pm 0,01m$, der eine Verstärkung einer Regalrückwand werden soll.

Wir messen analog zu zuvor.

Fallzeit/s Messung Nr.
Messung/m 1 2 3 4 5
Längenmessung
0,160 0,723 0,667 0,708 0,681 0,637
0,365 0,490 0,513 0,519 0,493 0,531
0,665 0,369 0,381 0,433 0,409 0,410
0,930 0,362 0,346 0,339 0,375 0,400
Höhenmessung
0,655 0,286 0,307 0,333 0,283 0,303
0,320 0,227 0,220 0,235 0,203 0,237

Messfehler

$u(T)$ erhalten wir über die Standardabweichung der Messwerte. $u(\phi_0) = 2°$ erhalten wir aus der Fehlerrechnung von oben.

Computerprogramm

Numerisches Verfahren

1 Bestimmung der Fallzeit

numerical.py
  1. import numpy
  2. import matplotlib.pyplot as plt
  3.  
  4.  
  5. def evaluate(length, phi0, timestep): # length in m, phi0 in rad, timestep in s
  6. tau_quadrat = ((2 * length) / (3 * 9.81))
  7. phi = phi0
  8. v_phi = 0
  9. time = 0
  10. while phi < numpy.pi / 2:
  11. a_phi = numpy.sin(phi) / tau_quadrat
  12. v_phi += timestep * a_phi
  13. phi += timestep * v_phi
  14. time += timestep
  15. return time
  16.  
  17.  
  18. # testing the evaluation
  19. prec_test = 0.01
  20. phi0s_test = [0 + prec_test * i for i in range(1, round(2 * numpy.pi / prec_test) + 1)]
  21. sols_test = [evaluate(1.45, phi0, 0.01) for phi0 in phi0s_test]
  22. plt.plot(phi0s_test, sols_test, label='test', ls='', marker='.')
  23. plt.legend()
  24. plt.show()
  25. print('Wir lesen aus dem Grafen ab: 0.81\nSelbst gerechneter Wert:', evaluate(1.45, 0.25, 0.01))
  26.  
  27.  
  28. def find_sol(length, phi0, prec): # length in m, phi0 in rad, prec is the number of decimal places
  29. prev = None
  30. for i in range(10):
  31. sol = evaluate(length, phi0, 0.1 ** i)
  32. if prev and abs(sol - prev) < 0.5 * 0.1 ** prec:
  33. break
  34. prev = sol
  35. return sol
  36.  
  37.  
  38. def find_sols(lengths, phi0s, prec):
  39. sols = {}
  40. for length in lengths:
  41. phi_sols = []
  42. for phi0 in phi0s:
  43. phi_sols += [find_sol(length, phi0, prec)]
  44. sols[length] = [phi0s, phi_sols]
  45. return sols

2 Beschleunigung des Endes

Die Winkelbeschleunigung beträgt $ \ddot{\phi} = \frac{3 \cdot g \cdot sin(\phi)}{2 \cdot l} $. Dann beträgt die Beschleunigung am Ende des Stabes $ a = \frac{3 \cdot g \cdot sin(\phi)}{2} $. Diese ist senkrecht zu dem Stab ausgerichtet, aber uns interessiert der Anteil senkrecht zum Boden, also $ a_z = \frac{3 \cdot g \cdot sin(\phi)^2}{2} $. Diese Beschleunigung ist g genau dann, wenn $ 1 = \frac{3 \cdot sin(\phi)^2}{2} \Leftrightarrow \phi = arcsin(\sqrt{\frac{2}{3}}) = 0.955 = 54.7^° $

Messung

messung.py
  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3.  
  4. h_kueche = 0.92
  5. s_mark = 0.9
  6.  
  7. s1 = [0.160, 0.365, 0.665, 0.930]
  8. h1 = [0.655, 0.320]
  9.  
  10. winkel = [np.arctan(x/h_kueche) for x in s1] + [np.arctan(s_mark/x) for x in h1]
  11. print('winkel1', winkel)
  12.  
  13. t_laengen1 = [[0.685, 0.733, 0.749, 0.742, 0.768],
  14. [0.552, 0.518, 0.572, 0.583, 0.585],
  15. [0.436, 0.451, 0.394, 0.387, 0.406],
  16. [0.353, 0.383, 0.372, 0.337, 0.399]]
  17. t_laengen1 = [sum(x)/len(x) for x in t_laengen1]
  18.  
  19. t_hoehen1 = [[0.315, 0.299, 0.315, 0.304, 0.292],
  20. [0.255, 0.197, 0.268, 0.241, 0.262]]
  21. t_hoehen1 = [sum(x)/len(x) for x in t_hoehen1]
  22. t1 = t_laengen1 + t_hoehen1
  23.  
  24. print('t1', t1)
  25.  
  26. # Winkel wie gehabt
  27.  
  28. t_laengen2 = [[0.723, 0.667, 0.708, 0.681, 0.637],
  29. [0.490, 0.513, 0.519, 0.493, 0.531],
  30. [0.369, 0.381, 0.433, 0.409, 0.410],
  31. [0.362, 0.346, 0.339, 0.375, 0.400]]
  32. t_laengen2 = [sum(x)/len(x) for x in t_laengen2]
  33.  
  34. t_hoehen2 = [[0.286, 0.307, 0.333, 0.283, 0.303],
  35. [0.227, 0.220, 0.235, 0.203, 0.237]]
  36. t_hoehen2 = [sum(x)/len(x) for x in t_hoehen2]
  37. t2 = t_laengen2 + t_hoehen2
  38.  
  39.  
  40. #relativer Fehler
  41. n=5
  42. index = 19
  43. abs_error1 = [abs(t1_mean[i] - t1[i][k]) for k in range(n) for i in range(len(t1_mean))]
  44. rel_error1 = [abs_error1[i*n+k]/t1_mean[i] for k in range(n) for i in range(len(t1_mean))]
  45.  
  46. string = '|'
  47. for i, el in enumerate(rel_error1):
  48. string += str(round(el, 3)) + '|'
  49. if i%5 == 4:
  50. print(string)
  51. string = '|'
  52.  
  53. rel_error1.sort()
  54. print(len(rel_error1), rel_error1[index])
  55.  
  56.  
  57. abs_error2 = [abs(t2_mean[i] - t2[i][k]) for k in range(n) for i in range(len(t2_mean))]
  58. rel_error2 = [abs_error2[i*n+k]/t2_mean[i] for k in range(n) for i in range(len(t2_mean))]
  59.  
  60. string = '|'
  61. for i, el in enumerate(rel_error2):
  62. string += str(round(el, 3)) + '|'
  63. if i%5 == 4:
  64. print(string)
  65. string = '|'
  66.  
  67. rel_error2.sort()
  68. print(len(rel_error2), rel_error2[index])
  69.  
  70.  
  71. x_err, y_err = 0, 0
  72.  
  73. fig, axes = plt.subplots(1, 2, figsize=(10,5))
  74. ax1, ax2 = axes
  75.  
  76. cols = ['orange', 'green']
  77.  
  78. ax1.errorbar(winkel, t1_mean, xerr=x_err, yerr=y_err, marker='o', ls='', c='red', label='Mittelung')
  79. ax2.errorbar(winkel, t2_mean, xerr=x_err, yerr=y_err, ls='', marker='o', c='blue', label='Mittelung')
  80.  
  81. ax1.scatter(winkel_5, t1, c='black', label='Messpunkte')
  82. ax1.set_title('Besen, l=1,32m')
  83.  
  84. ax2.scatter(winkel_5, t2, c='black', label='Messpunkte')
  85. ax2.set_title('Eisenstab mit l=1,02m')
  86.  
  87. # plt.scatter(winkel_5, t1, marker='x', c='orange', label='Messung Besen')
  88. # plt.scatter(winkel_5, t2, marker='x', c='grey', label='Messung Eisenstab')
  89.  
  90. for i, length in enumerate(laengen_numerisch):
  91. axes[i].plot(sols[length][0], sols[length][1], c=cols[i],
  92. label='Numerisch ' + str(length) + 'm')
  93. axes[i].set_xlabel('Winkel in rad')
  94. axes[i].set_ylabel('Fallzeit in s')
  95. axes[i].legend()
  96.  
  97. plt.show()

Der Übersichtlichkeit halber zeichnen wir die numerischen Graphen kontinuierlich, obwohl wir diese nur für $N=100$ Punkte berechnet haben. Der Übersichtlichkeit zeichnen wir die Fehlerbalken ebenfalls nicht ein.

Weitere Messunsicherheiten

Wir betrachten weitere Störquellen.

In Bezug auf die Schallreflexion mit $c \approx 300 m/s$ haben wir bei unserer Küche mit ca. 3m Länge bereits bei Reflexion von zum Beispiel $R \approx 80 \% $ schon nach $t=0.1s$ eine Dämpfung auf $0,9^{10} \approx 10 \% $ der Ausgangsleistung. Außerdem vermuten wir, dass die Erkennung des Anstiegs des Schallpegels über einen Treshhold nicht von der Relflexion beeinflusst wird, bzw. im Aufschlag des Besen der ersten Schallpeak in jeder Messung deutlich abgefallen ist.

Die Reflexivität der Wand ist vermutlich deutlich kleiner.

Beim Erzeugen des ersten Audio-Peaks durch Klopfen auf den Boden und gleichzeitigen Loslassens kann jedoch leicht ein Zeitfehler entstehen, da man dazu neigt, das Klopfen mit dem Aufschlag zu synchronisieren. Dies könnte verantwortlich sein für die systematisch zu geringe gemessene Fallzeit.

Luftreibung

Wir betrachten als Modell für die Luftreibung eine Form der Newton Reibung für turbulente Fluide. Wir erhalten als Reibungsmodell also

$ F_R = ½ A c_w \rho_{Luft} v^2$

wobei $A$ die Querschnittsfläche, $c_w$ der Luftwiderstandsbeiwert, $\rho_{Luft} \approx 1$ die Luftdichte. Wir vereinfachen weiter und nehmen die Stäbe als Flächen an. Wir erhalten also $A = rl$ für den Stabradius $r$ und die Stablänge $l$. Auf Wikipedia finden wir den (geometrieabhängigen) $ 0,4 \leq c_w \leq 1,2 $ für einen Zylinder abhängig von der Reynolds-Zahl, die sich im Versuchsverlauf jedoch auch ändert. Wir nehmen $c_w \approx 1$ an. Wir betrachten die Geschwindigkeit als konstant über dem Vierteilkreisbogen für den Schwerpunkt

$ v = S/T = \pi/2 \cdot l/2 \cdot 1/T $

Wir erhalten für den Besen mit $r_B \approx 0.011 m$ und und $l_{Besen} = 1,30 m$ und dem Eisenstab mir $r_E = 0.004 m$ und $l_{Besen} = 1,02 m$ für $T = 0,5s$ also

$ F_{R, Besen} \approx ½ r l (\pi/2 \cdot l/2 \cdot 1/T)^2 \approx 0,030 N \\ F_{R, Eisen} \approx 0,005 N $

Verglichen mit der Gravitation sind wir also um mindestens zwei Größenordnungen kleiner, selbst wenn die effektive Gravitation $g_{eff} \leq 9.81$ etwas kleiner als der Ortsfaktor durch durch den $\sin{\phi}$ ist. Wir betrachten den Einfluss der Luftreibung zumindest für die im Versuch verwendeten Geometrien als irrelevant.

You could leave a comment if you were logged in.