Besenstiel -- gruppe311

Der Versuch wurde durchgeführt von: Bjarne Knut Herrmann und Jan Klenke
Die Wiki-Seite wurde angelegt am: 5 January 2021 16:10

Die Messungen

Für die Messungen wurden verwendet ein 1,17m langer Kunststoff Besenstiel und ein 87 cm langer Alu-Wischmop mit defekter Teleskop-Funktion. Diese nicht geraden optimalen “Besenstiele” sind leider die einzigen mit zur verfügung stehenden Objekte. Um die Nachbarn nicht zu stüren wurde das ganze auf einer Jogamatte durchgeführt und um den Winekl abzumessen wurde eine Winkelanzeige auf ein blatt papier gedruckt und im Rotationspunkt des Objektes an der Wand befestigt (siehe Bilder ).

Anschließend habe ich ein video von mir aufgenommen in welchem ich die Besenstiele 5 mal hintereinadner auf den gleichen Winkel gebracht habe und anschließend fallen ließ. Da nur 2mb gorße dateien erlaubt sind kann ich eines der Acht über 50 mb großen Videos hier nicht einfügen.

Anschließend habe ich in Davinci Resolve (Einem videoschnitt Programm) die Videos in ihre einzelden Experimente geschnitten. dann habe ich über das video ab dem Frame geschnitten an welchem ich den Stiel loslasse und wo der stiel auf der matte aufkommt. Beim aufkommen war hilfreich, das an der AUdiospur klar erkennbar war wann der stab auftrifft.

Anchließend wurde die länge der einzelnden abschnitte genmessen (Bild). Auf dem Bild wird gerade “Video 2” gemessen, und wie oben echts zu sehen ist, ist er 24 Frames lang. Dabei wurden alle aufnahmen bei 30 Frames per Second gemacht.

Dieser Vorgang wurde mit allen Clips durchgeführt und und Tabellarisch aufgenommen.

Dabei ist die Obere Tabelle der Besenstiel und die Untere der Wischmop. Der obere teil jeder Tabelle ist dabei in Frames bzw wenn der CLip länger als 30 Frames ist in x Sekunden und Y Frames. Der untere ist in Sekunden umgerechnet. Die unterste Zeile ist der Durchschnittswert in Sekunden.

Computerprogramm

Für die numerische Lösung der DGl (1) aus der Versuchsanleitung wurde der beschriebene Lösungsalgorithmus in Python programmiert. Der Algorithmus besteht darin, ausgehend von den Initialbedingungen die Gleichung für $\ddot{\varphi}$ iterativ in sehr kleinen Zeitschritten aufzuintegrieren. Mit jeder der aufintegrierten Variablen wurde danach ein Eintrag im Array sol gefüllt, auf den der Lösungsalgorithmus im nächsten Iterationsschritt zugreift, um die Gleichung für einen weiteren Schritt aufzuintegrieren. Weiterhin müssen bei der Anwendung der definierten solve-Routine ein Maximalwert für die Zeit tmax und die Anzahl der Zeitschritte steps angegeben werden. In den unteren Schritten wird eine Liste mit so berechneten Fallzeiten aufgestellt, um danach einen mit der Abbildung 3 aus der Versuchsanleitung vergleichbaren Plot zu erstellen. Bei unserem Code haben wir zusätzlich eine Abbruchbedingung mit dem break-Befehl erstellt, um die Berechnung zu beenden, sobald $\varphi$ einen Winkel von 90° überschreitet. Die Fallzeit kann so einfach bestimmt werden, indem die Variable im entsprechenden Array ausgelesen wird. Die Genauigkeit kann so also einfach verbessert werden, indem ein tmax knapp über der Fallzeit und ein möglichst großes steps gewählt wird.

besenstiel.py
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Tue Jan 5 15:49:07 2021
  4.  
  5. @author: bjarne
  6. """
  7.  
  8. import math
  9. import numpy as np
  10. import matplotlib.pyplot as plt
  11.  
  12. #Initialbedingungen
  13. phi0=0.25 #Anfangswinkel in rad
  14. l=1.45 #Länge des Stabes in m
  15. g=9.81 #erdbeschleunigung in m/s^2
  16.  
  17. #Definition Parameter tau
  18.  
  19. def tau():
  20.  
  21. tau = math.sqrt(2*l/(3*g))
  22.  
  23. return tau
  24.  
  25. #Solver
  26.  
  27. def solve(phi0,tmax,steps):
  28.  
  29. sol = list()
  30.  
  31. sol.append([0,phi0,0,math.sin(phi0) / (tau()**2)])
  32.  
  33. tstep = tmax / steps
  34.  
  35. for e in range(steps):
  36. ddotphi = math.sin(sol[len(sol)-1][1]) / (tau()**2)
  37.  
  38. dotphi = sol[len(sol)-1][2] + tstep * sol[len(sol)-1][3]
  39.  
  40. phi = sol[len(sol)-1][1] + tstep * sol[len(sol)-1][2]
  41.  
  42. sol.append([sol[len(sol)-1][0]+tstep,phi,dotphi,ddotphi])
  43.  
  44. if phi>=math.pi/2:
  45.  
  46. break
  47.  
  48. return np.array(sol)
  49.  
  50.  
  51.  
  52. #Berechnung der Fallzeit für verschiedene Anfangswinkel
  53. philist=np.linspace(0.2,1.2,100,endpoint=False)
  54. def falltime():
  55.  
  56. timelist = list()
  57.  
  58. for i in range(len(philist)):
  59.  
  60. timelist.append([philist[i],solve(philist[i],10,10000)[len(solve(philist[i],10,10000))-1][0]])
  61.  
  62. return np.array(timelist)
  63.  
  64.  
  65.  
  66.  
  67. #Erstellung des Plots
  68. path='D:/Studium/Praktikum2python' #Speicherpfad
  69. #Achseneinstellungen
  70. xstart=0 #Anfang der x-Achse
  71. xend=1.4 #Ende der x-Achse
  72. xticks=xend/7 #Unterteilung der Achsen
  73. ystart=0 #Anfang der y-Achse
  74. yend=1 #Ende der y-Achse
  75. #Bildeinstellungen
  76. plt.figure(figsize=(20,10), dpi=100)
  77. plt.grid(True)
  78. plt.axis([xstart,xend,ystart,yend])
  79. plt.title('Lösung für den Winkel')
  80. plt.xticks(np.arange(xstart,xend,xticks))
  81.  
  82.  
  83. plt.plot(falltime()[:,0], falltime()[:,1], markersize=0.5) #zu plottendes Array
  84. plt.legend(['numerische Lösung']) #Legende
  85. plt.xlabel('$\phi$ in rad') #Beschriftung x-Achse
  86. plt.ylabel('Zeit in s') #Beschriftung y-Achse
  87. plt.savefig(path+'/timeplot.jpg') #Dateiname
  88. plt.close

Dieser Code erzeugt einen Plot ähnlich zu Abbildung 3 aus der Versuchsanleitung:

Luftwiderstand

Für die Betrachtung des Einflusses der Luftreibung wurde der Besenstiel zusätzlich mit einer Pappfläche beklebt. Dabei war der Mittelpnkt der rechteckigen Pappe immer am gleichen Punkt des Besenstiels angebracht. Dann wurde der bekannte Versuch für einen Anfangswinkel von 10° durchgeführt und die Pappfläche verkleinert. So haben wir den Einfluss der Luftreibung für Flächen von 5040, 3780, 2520 und 1260 cm2 untersucht. Der Besenstiel mit Pappfläche, die Position des Mittelpunkts der Fläche wurde an dem Loch ausgerichtet.

Die Auswertung erfolgte auf dem selben Weg wie oben:

You could leave a comment if you were logged in.