Malik Posted June 18, 2013 at 05:26 PM Posted June 18, 2013 at 05:26 PM Mir ist nicht klar, wie man mehrere gleiche Bricklets (z.B. 3 x Temepratur) unterscheiden kann, wenn man den Callback Enumerate (TCP/IP API) benutzt. Das Vorgehen mit diesem Callback ist ja in 'Dokumentation/Tutorials/Robuster Ansatz' beschrieben. Meine Frage dazu ist: Werden unterschiedliche 'Device_Identifier' für den gleichen Typ Bricklet gemeldet? Wenn ja, wie kann ich feststellen, welches Bricklet welchen Identifier hat? Oder ganz praktisch gefragt: Woher weiß ich, welcher "temp"-Wert die Außentemperatur meldet? ratlos Malik Quote
AuronX Posted June 18, 2013 at 05:42 PM Posted June 18, 2013 at 05:42 PM Alle deine Temperature-Bricklets haben den gleichen Device-Identifier, denn sie sind alle Temperature-Bricklets. Wenn du jetzt mehrere gleiche Bricklets mit unterschiedlichen Aufgaben hast, dann geht das nicht voll-automatisch, sondern du musst es konfigurieren. Option 1: UIDs kennen Du kennst zu jeder UID die "Aufgabe", also außen/innen/oben/unten. Das bietet sich dann an, wenn du dein setup eh nur einmal aufbaust. Option 2: Anschlussort kennen Hier weißt du nur: "Der Außensensor wird immmer an Port A angeschlossen, innen immer an Port B". Das sind Daten die du auch beim enumerate bekommst. Das bietet sich an, wenn du mehrere gleiche Aufbauten hast, etwa Wetterstationen o.ä. Advanced: Stell dir vor du hast 8 Temperatursensoren, dann musst du nicht nur unterscheiden, ob sie an Port A oder B angeschlossen sind, sondern auch ob es Port A vom ersten oder vom zweiten Brick ist. Quote
Malik Posted June 18, 2013 at 05:56 PM Author Posted June 18, 2013 at 05:56 PM OK, Danke Dann muss ich also "position" auch noch abfragen. Das ist zwar nur halb-automatisch, wie Du sagst, aber es würde funktionieren. Quote
AuronX Posted June 18, 2013 at 06:06 PM Posted June 18, 2013 at 06:06 PM Naja... Am Ende musst du halt einen Mechanismus finden der für dich funktioniert. Ein beispiel fällt mir gerade noch ein, funktioniert aber nur bei korrekten Umgebungsbedingungen: Falls der Sensor einen Wert bis maximal 12 °C ausgibt, dann ist es ein Außensensor. Bei über 15 °C ein Innensensor. Das funktioniert im Winter in Deutschland vermutlich recht zuverlässig. Das ist zwar nur halb-automatisch, wie Du sagst, aber es würde funktionieren. Wenn man weiter darüber nachdenkt frage ich mich, wie es noch automatisierter gehen sollte? Also welchen Vorteil hättest du zum Beispiel bei unterschiedlichen Device-Identifiern für alle Temp-Bricklets? Du müsstest dir dann auch wieder merken welcher Identifier zu außen und welcher zu innen gehört. Das hängt ja immer davon ab, wofür du es benutzt. Quote
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.