NEWS
Ist das Auto Zuhause?
-
Hallo.
Ich bin kein Blockly Experte, daher meine Frage.
Die Suche hat mir leider nicht wirklich weitergeholfen.
Ich möchte wissen, ob mein Auto Zuhause ist.
Hier kann ich nur den Längen- und Breitengrad nutzen, welches mein Auto mir zurückmeldet.
Am Ende möchte true oder fals ausgeben.
Wie kann ich das am besten angehen?Danke vorab für eure Hilfe!
Gruß
Andreas -
@andreask sagte in Ist das Auto Zuhause?:
Wie kann ich das am besten angehen?
Ich würde die vom Auto gemeldeten Koordinaten mit denen des Hauses vergleichen.
Jeweils Längen- und Breitengrad des Hauses von der des Autos subtrahieren und dann ermitteln, wie groß die Differenz ist.
Eine Bogenminute sind eine Seemeile (1,852 km). Eine Bogensekunde ~ 31 m. Es gilt also festzulegen, wie groß die Differenz maximal sein darf um zu sagen: Auto ist zu Hause.Zuerst wäre aber mal zu klären: In welchem Format liegen die Koordinaten vor?
Dezimalgrad? Grad & Dezimalminuten? Grad, Minuten, Sekunden?Edir
Alternative wäre die Geokodierung der Adresse.
Passende Straße und Hausnummer im Bereich von X bis Y könnte auch klappen. -
Macht bei lat und lon nicht eher ein "oder" Sinn?
Theoretisch kann ein Wert ja gleich bleiben und man ist trotzdem weit vom Standort weg.Ich berechne so den Abstand von Koordinate 1 zu 2 so:
-
@david-g sagte in Ist das Auto Zuhause?:
Macht bei lat und lon nicht eher ein "oder" Sinn?
Nicht wirklich. Wenn Du Dich auf dem gleichen Breitengrad in Polen, Russland oder den USA befindest, bist Du ja nicht zu Hause
Theoretisch kann ein Wert ja gleich bleiben und man ist trotzdem weit vom Standort weg.
Deswegen ja auch das
und
. Beide Werte müssen innerhalb bestimmter Grenzen liegen. -
Hast natürlich recht.
Da war es mir wohl was zu Warm im Liegestuhl in der Therme -
bei meinem ID4 wird eine Adresse mit angegeben. Für den Check habe ich mir eine Funktion geschrieben, die mir ein Ergebnis zurück gibt. Könntest du auch auf Koordinaten umbauen. Vielleicht kanns ja sonst einer noch brauchen.
Ich habe es so gelöst, da ich in einem anderen Blockly die Sicherheit des Autos prüfe: wenn es nicht an sicheren Adressen steht und nicht fährt und irgendwas offen ist, bekomme ich Telegran Pushs alle 3 Min bis das Auto sicher ist oder ich es als sicher markiere.
<block xmlns="https://developers.google.com/blockly/xml" type="procedures_defreturn" id="kv/4u/%nz6OcWL(E|tLV" x="-462" y="338"> <field name="NAME">AutoStehtZuHauseCheck</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="variables_set" id="e~b.:Vj728.+w@zhjGAz"> <field name="VAR" id="@fc$X!}u~n%K)#B@2F*W">AdressenZuHause</field> <value name="VALUE"> <block type="lists_create_with" id="f].ye#l:_g.^V9gRb{!$"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="%+i#(ExXz:^vek#/,/Lx"> <field name="TEXT">hackersche höfe, berlin</field> </block> </value> <value name="ADD1"> <block type="text" id="4|]Z5GaFrM66Sn?CqTVI"> <field name="TEXT">hackersche höfe 2, berlin</field> </block> </value> </block> </value> <next> <block type="variables_set" id="!s]ujF7Pxg~xYYp4K|Le"> <field name="VAR" id="j|Pt|`qty/u=H6[Z]@6q">ErgebnisAdressCheck</field> <value name="VALUE"> <block type="lists_indexOf" id="]3wDN[5qCJgny$919!+;"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="h*tPX:v=/bXy{jsdV?S:"> <field name="VAR" id="@fc$X!}u~n%K)#B@2F*W">AdressenZuHause</field> </block> </value> <value name="FIND"> <block type="get_value" id="{7UE{FrO.PPS;ao[F:rn"> <field name="ATTR">val</field> <field name="OID">vw-connect.0.xyz.position.address.displayName</field> </block> </value> </block> </value> <next> <block type="controls_if" id="VATk;neTeDL37fP59!_`"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="y7W*n8sy/?P`_?4-rR9R"> <field name="OP">GT</field> <value name="A"> <block type="variables_get" id="s+c6m$-52$7Q1-L=zF!w"> <field name="VAR" id="j|Pt|`qty/u=H6[Z]@6q">ErgebnisAdressCheck</field> </block> </value> <value name="B"> <block type="math_number" id="?w-%x/V}UO3i+8]#-#d^"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="rR,Px|j(i`;_oCDv^R3p"> <field name="VAR" id="ED(wb~Y=h[bX:%hDq~{k">BoolAutoZuHause</field> <value name="VALUE"> <block type="logic_boolean" id="?Q{5~~;(2je:amh+p9;*"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> <statement name="ELSE"> <block type="variables_set" id="La99OjSxhH(~q{w[+%FL"> <field name="VAR" id="ED(wb~Y=h[bX:%hDq~{k">BoolAutoZuHause</field> <value name="VALUE"> <block type="logic_boolean" id="XT?L%b07V%Cg|E}ctCb;"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> <value name="RETURN"> <block type="variables_get" id="CwaV;GnU(dEt|3W(2!G|"> <field name="VAR" id="ED(wb~Y=h[bX:%hDq~{k">BoolAutoZuHause</field> </block> </value> </block>
-
@mading Du solltest deine Adresse unkenntlich machen...
-
@dragon sagte in Ist das Auto Zuhause?:
@mading Du solltest deine Adresse unkenntlich machen...
Hab ich eben, danke
-
@mading in meiner Anzeige steht immernoch zig mal die adresse drin. Es
-
Bei mir nicht, Refresh, ggf. mit Strg+F5
-
Ich sehe keine Adresse.
Das alte Bild gibt es jedoch immer noch. Kannst du in deinem Profil löschen.Noch mal zum Thema.
Ich Werte sämtliche GPS Daten mit dem Places Adapter aus. Da kann man dann auch geofences anlegen. Einfach mit dem Blockly send to Baustein.EDIT
In deinem Blockly steht noch eine Adresse. -
Jaaaa, das ist eine Fake Adresse
. Wird ein google Maps API Key benötigt?
-
Nur falls du die GPS Daten zu einer Adresse auflösen möchtest mit dem Adapter.
Hab ich aber nie geschafft (den API key zu bekommen. Scheint was zu kosten?).Dafür habe ich ein Blockly das OSM nutzt.
-
@david-g sagte in Ist das Auto Zuhause?:
Nur falls du die GPS Daten zu einer Adresse auflösen möchtest mit dem Adapter.
Hab ich aber nie geschafft (den API key zu bekommen. Scheint was zu kosten?).Dafür habe ich ein Blockly das OSM nutzt.
Es gibt oder gab die Möglichkeit eine bestimmte Anzahl von Requests mit Google Maps kostenlos absetzen zu können. Dafür muss man aber dennoch eine Kreditkarte hinterlegen.
-
Hab mal einen Feature Request für eine OSM Integration erstellt.
Mal sehen, ob sich dem jemand annimmt. Ich kann sowas leider nicht.....https://github.com/iobroker-community-adapters/ioBroker.places/issues/205
-
@mading said in Ist das Auto Zuhause?:
Google Maps
Das muss man ja nicht unbedingt unterstützen.
@david-g said in Ist das Auto Zuhause?:
OSM Integration
Das ist kein Hexenwerk. Dafür gibt's Tools wie Nominatim https://nominatim.org/
Lat/Lon to Addres https://nominatim.org/release-docs/develop/api/Reverse/ -
@hans_999 sagte in Ist das Auto Zuhause?:
Das ist kein Hexenwerk.
Ich weiß, hab es deshalb vorgeschlagen.
Hab ich schon lange am laufen.Hab eben mal einen eigenen Server mit aufgesetzt, er bereitet grad die DB auf.
-
@andreask
Also ich habe das vor 2 Wochen mit dem places-Adapter realisiert. Ging eigentlich recht einfach, du kannst dann sogar verschiedene Standorte ermitteln lassen anstatt nur true/false. Das einzige was du machen musst ist lat/lon übertragen, wenn sich der Standort ändert.rrov1
-
@rrov1 said in Ist das Auto Zuhause?:
Also ich habe das vor 2 Wochen mit dem places-Adapter realisiert
Leider nutzt der proprietäre Angebote von G******
Wäre toll, wenn der als freie Alternative auch OpenStreetMap könnte. Da muss ich nicht mit meinen Daten für's "ksotenlose" Angebot bezahlen. -
Ich mache die Geokodierung hiermit:
url = `https://geocode.maps.co/reverse?lat=${latitude}&lon=${longitude}&api_key=${key}`;