Jaenz Geschrieben April 23, 2016 at 11:14 Share Geschrieben April 23, 2016 at 11:14 Hallo zusammen, ich würde gerne eine Geschwindigkeitsmessung in meinen Kicker integrieren, die beim Torschuss die Geschwindigkeit ermittelt. Ich dachte daran das UV Light Bricklet zu verwenden zusammen mit einer UV-Diode. Das Ganze würde ich dann oberhalb der Torlinie anbringen. Sobald der Ball durchs Tor schießt wird der Strahl unterbrochen. Auf Basis der Unterbrechung (und dem bekannten Durchmesser des Balls) kann man dann ja die Geschwindigkeit berechnen. Allerdings bin ich mir nicht sicher, in wiefern ich die Refeshtime bei dem Bricklet einstellen kann? In der angehängten Datei steht lediglich, dass man sie einstellen kann.. Vielleicht habt ihr auch andere Ideen? Das Probleme an der ganze Sache sind die kurzen Zeiten denke ich.. Viele Grüße Jens Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
remotecontrol Geschrieben April 23, 2016 at 13:14 Share Geschrieben April 23, 2016 at 13:14 Hallo Jens, die minimale Updatezeit der Bricklets liegt bei 1ms. Wenn sich der Ball mit 2m pro Sekunde bewegt und ca. 2cm Durchmesser hat, dann bräuchten die 2cm ca. 1/100 Sekunde = 10ms um die Torlinie zu passieren (oder habe ich mich jetzt vertan?). Das könnte man vermutlich messen, geht auch einfach per Interrupt. Aber je höher die Geschwindigkeit, umso ungenauer wird das. Ich hab kein Gefühl, wie schnell zu ein Ball sein kann. Ich vermute schon mehr als 2m/s. Und wie ist das mit der UV Diode gedacht? Viele Grüße Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
markus5766h Geschrieben April 23, 2016 at 14:20 Share Geschrieben April 23, 2016 at 14:20 Bei einem Kicker kann die Ballgeschwindigkeit deutlich über 2m/s sein, daher wird dies wohl so nicht funktionieren bzw. sehr ungenau werden, denn immerhin muss ja exact der Punkt bestimmt werden, an dem der Ballradius die "Lichtschranke" passiert - und das zwei mal in ggf. weniger als 1ms. Eine Möglichkeit wäre, die "Lichtschranke" zwei mal im Abstand des Balldurchmessers aufzubauen und bei Bedämpfung jeweils ein Signal an die Software zu senden. Die Message kann dann jeweils den TimeStamp vom PerformanceCounter in µs-Auflösung erhalten, wodurch sich dann die Geschwindigkeit berechnen lässt, hier spielt dann auch eine evt. Verzögerung im UV-Modul keine Rolle, da die Verzögerung ja bei beiden Modulen annähernd gleich wäre. Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
markus5766h Geschrieben April 25, 2016 at 17:13 Share Geschrieben April 25, 2016 at 17:13 ...Allerdings bin ich mir nicht sicher, in wiefern ich die Refeshtime bei dem Bricklet einstellen kann? In der angehängten Datei steht lediglich, dass man sie einstellen kann... das wird Dir auch nicht viel bringen : stell Dir vor, Du hast ein CallBack-Intervall von 2 mS - und genau zwischen zwei Callbacks löst der Ball ein Signal aus --> dann hast Du schon eine Ungenauigkeit in der Messart, deshalb lieber auf eine Aktion des Balls reagieren, das wird in jedem Fall genauer. Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
Jaenz Geschrieben April 28, 2016 at 18:15 Autor Share Geschrieben April 28, 2016 at 18:15 Die Update-Zeit scheint wirklich ein Problem zu sein für die Messung. Mir ist dazu ne andere Idee gekommen. Wir hatten im Studium mal das Thema VPS (leider nur am Rande, da ich Maschbau studiere..). Ich habe mich jetzt gefragt, ob es nicht die Möglichkeit gibt eine VPS mit einem Mikrocontroller zu verbinden, da VPS ja im Prinzip die schnellstmögliche Steuerung ist. Die Idee wäre, dass bei einer Unterbrechung einer Lichtschranke ein Zählbaustein (gibt es soetwas?) fängt hochzuzählen, dieser wird gestoppt, wenn die Lichtschranke nicht mehr unterbrochen ist. Den entsprechenden Wert würde dann der Mikrocontroller an einem digitalen Eingang abgreifen..Die entsprechende Steuerung müsste man doch mit &-Gatter etc. zusammenbauen können. Weiß nicht, ob ich da auf dem Holzweg bin, da ich jetzt wahrlich nicht der Experte in E-Technik bin Edit: Wenn ich das richtig verstehe, gibt es so etwas wie Logik IC's, mit denen man interupt timers bauen kann Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
markus5766h Geschrieben April 28, 2016 at 19:57 Share Geschrieben April 28, 2016 at 19:57 ist theoretisch so machbar, hat allerdings einen kleinen Haken - jedenfalls in Verbindung mit den TF-Komponenten : Du kannst das mit einem Generator, einige 100 KHz, und einem Zähler hinbekommen, allerdings hast Du dann ein 16-Bit-Wort (min.), für das Du dann 16 Eingänge benötigst, mit zwei "einfachen" Lichtschranken benötigst Du nur zwei Eingänge. Logikbausteine : https://de.wikipedia.org/wiki/Liste_von_integrierten_Schaltkreisen_der_74xx-Familie Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
kreaktiv Geschrieben April 29, 2016 at 04:38 Share Geschrieben April 29, 2016 at 04:38 Die Idee wäre, dass bei einer Unterbrechung einer Lichtschranke ein Zählbaustein (gibt es soetwas?) fängt hochzuzählen, dieser wird gestoppt, wenn die Lichtschranke nicht mehr unterbrochen ist. Da sehe ich noch ein ganz anderes Problem. Misst die Lichtschranke den Unterbruch aber nicht genau in der Mitte vom Ball so ist der Durchmesser nicht bekannt. Somit wird eine Berechnung unmöglich. Ich denke es führt kein Weg an zwei Lichtschranken vorbei, möglichst mit Abstand. Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
Jaenz Geschrieben April 29, 2016 at 06:43 Autor Share Geschrieben April 29, 2016 at 06:43 Ich glaube ich hatte einen Denkfehler bei dem Vorschlag von Markus. Ich hoffe ich habe es jetzt richtig verstanden Mir war nicht bewusst, dass die Steuerung zwar nur alle 2ms das Signal erneut einlesen kann, ich jedoch einen "exakten" Timestamp erhalte (also in µs-Auflösung). Bedeutet das auch, das ich Zeitunterschiede von unter 2ms messen kann, sofern ich die Lichtschranken an zwei verschiedene Eingänge klemme oder gilt diese 2ms für alle Eingänge? Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
markus5766h Geschrieben April 29, 2016 at 14:06 Share Geschrieben April 29, 2016 at 14:06 ich rede hier nicht von einem getimedten CallBack ! Es soll nur ein Signal (pro Lichtschranke) bei Bedämpfung an den PC gegeben werden, hier erhälst Du dann parallel zur eingehenden Message den TimeStamp vom Performance Counter https://msdn.microsoft.com/de-de/library/system.diagnostics.performancecounter(v=vs.110).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/ms644904(v=vs.85).aspx also : Ball passiert die erste Lichtschranke --> Signal an PC --> TimeStamp holen Ball passiert die zweite Lichtschranke --> Signal an PC --> TimeStamp holen --> aus der Differenz der TimeStamps und dem bekannten Abstand der Lichtschranken kann die Geschwindigkeit errechnet werden. Zitieren Link zu diesem Kommentar Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.