Hallo liebe Programmierer, ich suche jemanden, der mir ein Programm schreiben kann. Was das Programm beinhalten soll, erkläre ich weiter unten. Einmal zur groben Orientierung: Vorhanden sind 3 ESP LOLIN32, davon sollen 2 Transmitter sein und einer Receiver. Der Transmitter überwacht einen Taster. Wenn der Taster betätigt wird, wird ein Zeitwert (Zeitpunkt der Betätigung) an den Receiver übertragen. Wichtig ist, die Zeit beider Transmitter müssen synchron laufen (Millisekunden genau). Fall 1: Wird Transmitter A betätigt, sendet der seine Zeit an den Receiver. Der Receiver lässt LED A leuchten. Fall 2: Wird Transmitter B betätigt, sendet der seine Zeit an den Receiver. Der Receiver lässt LED B leuchten. Fall 3: Wird Transmitter A und Transmitter B betätigt, werden die Zeiten an den Receiver gesendet und verglichen. Ist die Differenz kleiner als 350ms, lässt der Receiver LED A und LED B leuchten. Fall 4: Wird Transmitter A und Transmitter B betätigt, werden die Zeiten an den Receiver gesendet und verglichen, ist die Differenz größer als 350ms, lässt der Receiver den zuerst betätigten leuchten. Die Leuchtdauer beträgt 4 Sekunden. Während eine der beiden, oder beide LEDs leuchten, darf keine weitere Messung signalisiert werden. (Transmitter A = LED A, Transmitter B = LED B) Die LEDs befinden sich am Receiver, nicht am Transmitter. Soweit schonmal zum Programmablauf. (Optional) Ein wenig kniffliger wird es jetzt: Die beiden Transmitter, sowie der Receiver haben eine Masse. Die Taster sind elektrisch leitend (Taster sind aus Metall) und sollen erkennen, ob sie auf eine Masse oder nicht getroffen haben. Liegt Masse an (schon bei Berührung) darf keine Zeit an den Receiver gesendet werden. Erst wenn der Taster wieder auf einem massefreien Material betätigt wird, darf das Programm wie oben reagieren. Für die Zeit, die Transmitter A „Masse“ hat, soll am Receiver die LED C aufleuchten. Für die Zeit, die Transmitter B „Masse“ hat, soll am Receiver die LED D aufleuchten. Beispiele: Taster von Transmitter A berührt die Masse von Transmitter B oder Masse von Receiver, darf nur A nicht auslösen, B kann auslösen. (Vorrausgesetzt, B hat keine Masse von A oder vom Receiver) Taster von Transmitter B berührt die Masse von Transmitter A oder Masse von Receiver, darf nur B nicht auslösen, A kann auslösen. (Vorrausgesetzt, A hat keine Masse von B oder vom Receiver) Ich hoffe es ist einigermaßen verständlich erklärt und dargestellt. Wichtig ist natürlich ein gesichertes W-LAN, Datenpakete dürfen nicht verloren gehen, Programmierung in C/C++ und die einzelnen Programmzeilen sollen durch Kommentare nachvollziehbar sein. Bei Unklarheiten und/oder ernsthaftem Interesse, gebe ich gerne über PN meine Telefonnummer bekannt. Bei einem persönlichen Gespräch sind Rückfragen sicher leichter zu beantworten. Falls wer wen kennt, der oder die sich der Aufgabe gewachsen fühlen könnte, bitte per PN melden. Wenn die Zusammenarbeit gut klappt, habe ich noch Folgeaufträge gleichen Umfangs. Vielen Dank und viele Grüße Exinger
:
Verschoben durch User
Der zweite Teil mit der Masse erinnert mich an die Elektronik beim Fechten. Da habe ich vor Jahren mal dran gebastelt. Wie wird (oder soll) denn sichergestellt werden, dass beide Transmitter die gleiche Zeit haben? sntp oder wird das in Hardware erledigt?
Warum überhaupt eine Zeit? Der Master sieht doch welcher Slave zuerst und wann kommt. Für den Fall einer Funkblockade kann der Slave das Alter des Signals mitsenden. Das erübrigt dann die Zeitsynchronisation.
Ich vermute, dass die Latenz per Wlan viel zu stark für die Aufgabe schwankt.
Der Falk B. macht Dir das bestimmt ganz schnell für kleines Geld. Wenn du Geduldig bist, macht er auch gerne mal was kostenlos, sobald alle Infos zusammen getragen sind.
[quote]Wie wird (oder soll) denn sichergestellt werden, dass beide Transmitter die gleiche Zeit haben? sntp oder wird das in Hardware erledigt?[/quote] Ich dachte daran, dass die Transmitter zeitgleich einen Impuls an einem Pin bekommen und der einen Interrupt, quasi die Uhr anstößt.
Wie präzise müssen denn die 350 ms stimmen ? WLAN ist nicht gerade berühmt für Echtzeit... Das Konzept an sich ließe sich auch leicht mit ein paar 433 MHz Module umsetzen bei denen man ein engeres timing Zustand bringen könnte.
Stephan B. schrieb: > Ich dachte daran, dass die Transmitter zeitgleich einen Impuls an einem > Pin bekommen und der einen Interrupt, quasi die Uhr anstößt. Wenn da schon ein Kabel liegt, genügt vielleicht auch ein Transmitter. Mir ist das Gesamtkonstrukt noch ziemlich unklar.
Max D. schrieb: > Wie präzise müssen denn die 350 ms stimmen ? > WLAN ist nicht gerade berühmt für Echtzeit... > > Das Konzept an sich ließe sich auch leicht mit ein paar 433 MHz Module > umsetzen bei denen man ein engeres timing Zustand bringen könnte. Die 350ms sind nur die Differenz beider Zeiten der Transmitter. Denn die Zeit wird schon im Transmitter gestoppt und weitergeleitet. Die Übertragung der Zeiten selbst könnte theoretisch auch bis zu 1-2 Sekunden dauern, wenn das so ein großes Problem ist.
Die Uhren in den beiden Sendern werden dir unweigerlich weglaufen. Solange nicht Platz für eine Atomuhr ist auch in absehbarer Zeit. Die muss regelmäßig (per Funk) synchronisiert werden. Diese Synchronisierung erzeugt unweigerlich Abweichungen. Daher nochmal die Frage: Wie präzise müssen die 350 ms stimmen ?
Stefan: Butthurt? Wie wär's mit Pfandflaschen sammeln anstatt im Forum kreatives Schreiben zu üben?
Schnauze schrieb: > Nein, aber du ja scheinbar auch nicht, also was solls. Ich hab Falk B. empfohlen.
Max D. schrieb: > Die Uhren in den beiden Sendern werden dir unweigerlich weglaufen. > Solange nicht Platz für eine Atomuhr ist auch in absehbarer Zeit. Die > muss regelmäßig (per Funk) synchronisiert werden. > Diese Synchronisierung erzeugt unweigerlich Abweichungen. > > Daher nochmal die Frage: Wie präzise müssen die 350 ms stimmen ? Sollten schon genau stimmen, wenn es möglich ist. Angenommen, ich habe eine Station auf der die Transmitter durch einen Impuls synchronisiert werden können, kann ich das auch jede Stunde machen. Würde dann doch noch im Rahmen bleiben, oder etwa nicht? Wenn die Synchronisation ein so großes Problem darstellt, kann das sonst auch erstmal ausgeklammert werden.
> Sollten schon genau stimmen, wenn es möglich ist.
Möglich ist viele, nur kann der Aufwand extrem hoch sein. Was heißt denn
"genau stimmen" für dich? Um wie viele Promille dürfen die Uhren
zueinander abweichen? Oder drücke es in Sekunden pro Tag aus, wenn Dir
das leichter fällt.
Stephan B. schrieb: > Würde dann doch > noch im Rahmen bleiben, oder etwa nicht? Was IST der Rahmen ? Wenn der Rahmen jetzt +- 1 ns ist, dann spielt die Ausbreitungsgeschwindigkeit der Signale (Lichgeschwindigkeit) ja schon eine Rolle. Wenn der Rahmen jetzt +-1 s ist, dann braucht man nichtmal einen Quarz.
>> Wie wird (oder soll) denn sichergestellt werden, dass beide >> Transmitter die gleiche Zeit haben? > > Ich dachte daran, dass die Transmitter zeitgleich einen Impuls an einem > Pin bekommen und der einen Interrupt, quasi die Uhr anstößt. Dann kannst du auch gleich den Taster zum anderen Sender rüberlegen ...
Max D. schrieb: > Stephan B. schrieb: >> Würde dann doch >> noch im Rahmen bleiben, oder etwa nicht? > > Was IST der Rahmen ? > Wenn der Rahmen jetzt +- 1 ns ist, dann spielt die > Ausbreitungsgeschwindigkeit der Signale (Lichgeschwindigkeit) ja schon > eine Rolle. > Wenn der Rahmen jetzt +-1 s ist, dann braucht man nichtmal einen Quarz. Der Rahmen sollte sein, in 1-2 Stunden Betrieb +- 3ms. > Dann kannst du auch gleich den Taster zum anderen Sender rüberlegen ... Die sind nicht dauerhaft zusammen, die sitzen auf einer Station, bekommen ihr high Signal und werden dann heruntergenommen. So in der Art war mein Lösungsansatz.
Stephan B. schrieb: > Die sind nicht dauerhaft zusammen, Wie lange sind sie nicht zusammen und wie weit dürfen sie in dieser Zeit auseinander laufen? Max 2 Stunden getrennt und max. 3ms auseinander? Oder würden sie auch innerhalb der 2 Stunden wieder in die "Station" zurück kommen?
:
Bearbeitet durch User
Np R. schrieb: > Stephan B. schrieb: >> Die sind nicht dauerhaft zusammen, > > Wie lange sind sie nicht zusammen und wie weit dürfen sie in dieser > Zeit auseinander laufen? > > Max 2 Stunden getrennt und max. 3ms auseinander? Ja, genau. > Oder würden sie auch innerhalb der 2 Stunden wieder in die "Station" > zurück kommen? Die Transmitter können jederzeit wieder auf die Station, um sich ihren Impuls abzuholen.
Eine DS3231 RTC läuft (mit 2 ppm, ziemlich präzise für einen Quarz) in 1 h gut 7 ms weg. Nennenswert besser wird es nicht ohne Atomuhr.
Max D. schrieb: > Eine DS3231 RTC läuft (mit 2 ppm, ziemlich präzise für einen > Quarz) in 1 > h gut 7 ms weg. > Nennenswert besser wird es nicht ohne Atomuhr. Atomuhren sind nicht teuer: Mit GPS* & Co. sollte es gehen. Stephan B. schrieb: > Die beiden Transmitter, sowie der Receiver haben eine Masse. Die Taster > sind elektrisch leitend (Taster sind aus Metall) und sollen erkennen, ob > sie auf eine Masse oder nicht getroffen haben. Werden das Anschlagplatten für irgendeinen Sport? Warum ist das eigentlich im Forum Platinen? *Global Positioning System *Anzeige-Link
Tuxpilot schrieb: > Max D. schrieb: >> Eine DS3231 RTC läuft (mit 2 ppm, ziemlich präzise für einen >> Quarz) in 1 >> h gut 7 ms weg. >> Nennenswert besser wird es nicht ohne Atomuhr. > > Atomuhren sind nicht teuer: Mit GPS* & Co. sollte es gehen. Wenn es nicht weltweit funktionieren soll, reicht auch schon ein DCF77-Empfänger. Das DCF77-Signal wird ebenfalls über eine Atomuhr erzeugt. Ach, falls es nur um die Zeitdifferenz geht: Warum nicht einfach irgendein beliebiges Funksignal nehmen?
Stefanus F. schrieb: > Der Falk B. macht Dir das bestimmt ganz schnell für kleines Geld. Interessant, wie Du so einfach über die Ressourcen anderer Leute bestimmst. Wenn sich hier jemand von sich aus anbietet, dann ist das ja okay. Aber einfach den TO direkt an jemand unbeteiligten weiterzureichen und dann direkt die Höhe des Geldes festzulegen, geht einfach zu weit.
Stephan B. schrieb: > Ich dachte daran, dass die Transmitter zeitgleich einen Impuls an einem > Pin bekommen und der einen Interrupt, quasi die Uhr anstößt. Wo kommt der Impuls an dem Pin her? Über ein gemeinsames Kabel?
:
Bearbeitet durch Moderator
Frank M. schrieb: > Wo kommt der Impuls an dem Pin her? Über ein gemeinsames Kabel? Stephan B. schrieb: > Die sind nicht dauerhaft zusammen, die sitzen auf einer Station, > bekommen ihr high Signal und werden dann heruntergenommen.
Der "Receiver" könnte ja auch regelmäßig (z.B. jede Sekunde) nen Sync per Broadcast senden ...
DanielF schrieb: > Der zweite Teil mit der Masse erinnert mich an die Elektronik beim > Fechten. > Da habe ich vor Jahren mal dran gebastelt. Hallo Stephan B., kannst du dich dazu mal äußern? Auch ich habe früher mal gefochten und deine Beschreibung hört sich stark nach diesem Anwendungsfall an... Der Grund, warum man im Fechtsport hier ein Kabel benötigt ist ganz simpel: Beide Sportler benötigen ein gemeinsames Massepotential, damit die Elektronik funktionieren kann. Mit 2 Funksendern, die jeweils ihr eigenes Massepotential haben, kannst du nicht feststellen, ob Fechter A die Masse von Fechter B berührt hat. En garde.
Joe F. schrieb: > Auch ich habe früher mal gefochten und deine Beschreibung hört sich > stark nach diesem Anwendungsfall an... Wenn man nach "Fechten 350ms" googelt, findet man tatsächlich etwas. Allerdings scheinen die 350ms seit 2004 überholt zu sein. Zitat aus erstem Google-Treffer: ---- "Beim Säbelfechten wird das Zeitintervall, innerhalb dessen ein Treffer von Fechter B nach einem bereits erfolgen Treffer von A noch angezeigt wird (Doppeltrefferzeit) von 350ms auf 120ms reduziert. Beim Florettfechten wird die Doppeltrefferzeit von 750ms auf 300ms reduziert und die Kontaktzeit für die Anzeige eines Treffers (d.h. die Zeit die die gedrückte Spitze auf der Trefffläche verweilen muss) von 4 auf 15ms erhöht." ---- Von der Mindest-Verweildauer von 4 bzw. 15ms des "Tasters" beim Florettfechten hat der TO allerdings noch gar nichts erzählt. Wahrscheinlich wird da noch etwas an Infos salamischeibchenweise hinterhergeschoben...
:
Bearbeitet durch Moderator
Ich hätte durchaus Interesse, allerdings ist mir noch einiges unklar. Hier mal ein paar Fragen, die mir so auf Anhieb einfallen: Ist die Hardware schon vorhanden? Was ist der konkrete Anwendungsfall? Gibt es dafür evtl. schon Lösungen zu kaufen? Muss es wirklich Funk sein? Was ist der preisliche Rahmen? Was ist der zeitliche Rahmen? Reicht die Differenz der Zeiten oder muss es eine absolute Zeitangabe sein (aktuell klingt es danach, als ob eine relative Zeit ausreichend wäre)? Wie weit sind Transmitter und Reciever maximal auseinander? Wie lange muss der Akku halten? Gruß
Stefanus F. schrieb: > Der Falk B. macht Dir das bestimmt ganz schnell für kleines Geld. > Wenn du Geduldig bist, macht er auch gerne mal was kostenlos, sobald > alle Infos zusammen getragen sind. Bist du wirklich immer noch angefressen, weil Falk die Programmänderungen gratis gemacht hat, die du eigentlich machen wolltest?
Vielen Dank für die Kritiken. Ich bin ehrlich gesagt nicht davon ausgegangen, dass es tatsächlich so dermaßen umständlich ist. Daher specke ich das ganze einfach ab und beschreibe die Vorraussetzungen neu: Vorhanden sind 3 ESP LOLIN32, davon sollen 2 Transmitter sein und einer Receiver. Der Transmitter überwacht einen Taster. Wenn der Taster betätigt wird, wird ein Signal an den Receiver übertragen. Fall 1: Wird Transmitter A betätigt, sendet ein Signal an den Receiver. Der Receiver lässt LED A leuchten. Fall 2: Wird Transmitter B betätigt, sendet der ein Signal an den Receiver. Der Receiver lässt LED B leuchten. Fall 3: Wird Transmitter A und Transmitter B betätigt, werden die Signale an den Receiver gesendet. Der Receiver lässt LED A und LED B leuchten. Die Leuchtdauer beträgt 4 Sekunden. Während eine der beiden, oder beide LEDs leuchten, darf kein weiteres Signal signalisiert werden. (Transmitter A = LED A, Transmitter B = LED B) Die LEDs befinden sich am Receiver, nicht am Transmitter. Viele Grüße, Stephan
Ist das Timing jetzt völlig egal? Warum hast du dich auf diese WLAN Module eingeschossen? Was haben die wichtiges zu bieten, was andere nicht können? Ich frage weil diese Module meine letzte Wahl wären. Ich sehe zahlreiche Nachteile gegenüber anderen Alternativen. Ich befürchte, dass ich dir auf Basis dieser Hardware keine zufriedenstellende Lösung bieten kann. Da musst du mir schon etwas bieten um mich zu ködern.
Und was ist jetzt mit dem gegenseitigen Massekontakt? Rausgefallen aus dem Konzept? Sag doch mal, wofür das ganz ist, dann kann man sich eher vorstellen, wie man das sinnvoll umsetzen kann.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.