Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
raumkurvenplotter [2022/04/11 22:50] – [Umsetzung] wschwabe | raumkurvenplotter [2022/04/18 16:49] (aktuell) – [Benutzung] wschwabe |
---|
==== Idee ==== | ==== Idee ==== |
| |
Die Mathematik versteht unter Kurven parametrisierte Linienbeschreibungen. Sie werden meist mit zweidimensionalen Funktionsgraphen assoziiert. Diese bilden jedoch nur den Spezialfall ab, dass eine Dimension dem Eingabeparameter selbst entspricht. Wenn der zeitliche Verlauf des Eingabeparameters von der Linienbeschreibung entkoppelt wird, kann jeder Dimension eine eigene Funktion zugeordnet werden, welche den Verlauf der Kurve innerhalb dieser Dimension spezifiziert. Zudem lässt sich das Konzept auf beliebig viele Dimensionen ausweiten, wobei ab drei Dimensionen von Raumkurven gesprochen wird. Auf diese Weise können nahezu beliebige Linienfiguren erzeugt werden. Viele solcher Figuren wirken ästhetisch ansprechend und laden zur Auseinandersetzung mit den zugrundeliegenden analytischen und geometrischen Zusammenhängen ein. Allerdings lassen sich dreidimensionale Figuren auf einem zweidimensionalen Bildschirm als Projektion nur unvollständig darstellen. Wir möchten die Darstellung näher an die räumliche Intuition bringen, indem der Darstellungswinkel der Kurve per kinematischer Eingabe an die eigene Handbewegung gekoppelt wird. So kann diese im eigenen Tempo aus allen Winkeln frei erkundet werden. | Die Mathematik versteht unter Kurven parametrisierbare Linien. Sie werden meist mit zweidimensionalen Funktionsgraphen assoziiert. Diese bilden jedoch nur den Spezialfall ab, dass eine Dimension der Parametrisierung dem Eingabeparameter selbst entspricht. Wenn der Verlauf des Eingabeparameters vom Verlauf der Linie entkoppelt wird, kann jeder Dimension eine beliebige eigene Funktion zugeordnet werden, welche den Verlauf der Kurve innerhalb dieser Dimension spezifiziert. Zudem lässt sich das Konzept auf beliebig viele Dimensionen ausweiten, wobei ab drei Dimensionen von Raumkurven gesprochen wird. Auf diese Weise können nahezu beliebige Linienfiguren erzeugt werden. Viele solcher Figuren wirken ästhetisch ansprechend und laden zur Auseinandersetzung mit den zugrundeliegenden analytischen und geometrischen Zusammenhängen ein. Allerdings lassen sich dreidimensionale Figuren auf einem zweidimensionalen Bildschirm als Projektion nur unvollständig darstellen. Wir möchten die Darstellung näher an die räumliche Intuition bringen, indem der Darstellungswinkel der Kurve per kinematischer Eingabe an die eigene Handbewegung gekoppelt wird. So kann diese im eigenen Tempo aus allen Winkeln frei erkundet werden. |
| |
---- | ---- |
Lissajous-Figuren entstehen aus der orthogonalen Überlagerung zweier Sinusse mit ganzzahligem Frequenzverhältnis. Das Prinzip funktioniert für beliebig viele Dimensionen. Das ganzzahlige Frequenzverhältnis sorgt für eine periodische Synchronisierung der Periodenanfänge der Einzelfunktionen, wodurch eine geschlossene Kurve entsteht. Durch Veränderung der Amplituden, Frequenzen und Phasenverschiebungen der Sinusse können sehr unterschiedliche Figuren entstehen. | Lissajous-Figuren entstehen aus der orthogonalen Überlagerung zweier Sinusse mit ganzzahligem Frequenzverhältnis. Das Prinzip funktioniert für beliebig viele Dimensionen. Das ganzzahlige Frequenzverhältnis sorgt für eine periodische Synchronisierung der Periodenanfänge der Einzelfunktionen, wodurch eine geschlossene Kurve entsteht. Durch Veränderung der Amplituden, Frequenzen und Phasenverschiebungen der Sinusse können sehr unterschiedliche Figuren entstehen. |
| |
TODO: video vom arduino in hand mit plot auf bildschirm | {{:motionplot-moving-lissajous.mp4}} |
| |
==== Benutzung ==== | ==== Benutzung ==== |
Auf einem Raspberry Pi kann durch das Modifizieren einer dedizierten Pythonfunktion in unserem Plotprogramm eine Kurve spezifiziert werden. Dies kann per dedizierter Tastatur und Bildschirm oder remote per Laptop erfolgen. Statt des Raspberry Pi hätte grundsätzlich auch direkt ein Laptop verwendet werden können. Der Raspberry Pi macht das Setup aber etwas mobiler, weil eine Modifikation der Kurvenspezifikation auch via Weboberfläche per Smartphone erfolgen könnte (aus Zeitgründen nicht umgesetzt). Die Kurve wird dann als Projektion auf die xy-Ebene auf einem Röhrenfernseher dargestellt. | Auf einem Raspberry Pi kann durch das Modifizieren einer dedizierten Pythonfunktion in unserem Plotprogramm eine Kurve spezifiziert werden. Dies kann per dedizierter Tastatur und Bildschirm oder remote per Laptop erfolgen. Statt des Raspberry Pi hätte grundsätzlich auch direkt ein Laptop verwendet werden können. Der Raspberry Pi macht das Setup aber etwas mobiler, weil eine Modifikation der Kurvenspezifikation auch via Weboberfläche per Smartphone erfolgen könnte (aus Zeitgründen nicht umgesetzt). Die Kurve wird dann als Projektion auf die xy-Ebene auf einem Röhrenfernseher dargestellt. |
| |
Die Kurve steht zunächst still. Mit einer handgroßen Kugel kann die Perspektive dann beliebig rotiert werden. Die Kugel ist transparent und muss zunächst auf dem Tisch so ausgerichtet werden, dass der darin befindliche Arduino mit dem USB-Anschluss parallel entlang des Lots der Bildschirmmitte des Fernsehers zeigt, damit die Drehrichtungen des Plots den Handbewegungen entsprechen. Anschließend wird der Arduino per Switch an der Kugel angeschalten. Dazu muss die Kugel zunächst bewegungslos auf dem Tisch verbleiben. Der Arduino benötigt dann einige Sekunden, um sich mit dem Raspberry Pi zu verbinden und sein Gyrometer automatisch zu kalibrieren. Danach wird die Bereitschaft durch Leuchten einer LED signalisiert und die Kugel kann frei mit der Hand gedreht werden. Die Darstellung der Kurve ist an die Handbewegung gekoppelt und wird synchron rotiert. | Die Kurve steht zunächst still. Mit einer handgroßen Kugel kann die Perspektive beliebig rotiert werden. Die Kugel ist transparent und muss zunächst auf dem Tisch so fixiert werden, dass der darin befindliche Arduino mit dem USB-Anschluss parallel entlang des Lots der Bildschirmmitte des Fernsehers zeigt, damit die Drehrichtungen des Plots später den Handbewegungen entsprechen. Anschließend wird der Arduino per Switch an der Kugel angeschalten. Der Arduino benötigt dann einige Sekunden, um sich mit dem Raspberry Pi zu verbinden und sein Gyrometer automatisch zu kalibrieren. Danach signalisiert eine LED, dass die Kugel mit der Hand aufgenommen werden kann. Die Darstellung der Kurve ist an die Drehbewegungen der Hand gekoppelt und wird synchron rotiert. |
| |
==== Verknüpfung mit Analogtechnik ==== | ==== Verknüpfung mit Analogtechnik ==== |