{"id":15130,"date":"2020-07-31T18:19:24","date_gmt":"2020-07-31T16:19:24","guid":{"rendered":"http:\/\/blog.wenzlaff.de\/?p=15130"},"modified":"2020-08-02T08:21:52","modified_gmt":"2020-08-02T06:21:52","slug":"tracken-der-iss-mit-dem-raspberry-pi-und-nodered-ueber-open-webservices","status":"publish","type":"post","link":"http:\/\/blog.wenzlaff.de\/?p=15130","title":{"rendered":"Tracken der ISS mit dem Raspberry Pi und NodeRed \u00fcber Open-Webservices"},"content":{"rendered":"<p>Mit einen einfachen NodeRed Flow wollen wir mal die ISS tracken.<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss.png\" alt=\"\" width=\"2906\" height=\"1974\" class=\"aligncenter size-full wp-image-15132\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss.png 2906w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-300x204.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-1024x696.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-768x522.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-1536x1043.png 1536w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-2048x1391.png 2048w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>Es gibt einen \u00f6ffentlichen <a href=\"http:\/\/open-notify.org\/Open-Notify-API\/ISS-Location-Now\/\">Open-Notify<\/a> Web-Service der die Position der ISS liefert. Und auch wieviel Leute da im moment sind (zwei sind eben gegangen 2.7.2020).<\/p>\n<p>Also mal eben einen kleinen NodeRed-Flow zusammen geklickt, der den Webservice alle 10 Sekunden abfragt und das Ergebniss in eine CSV-Datei auf dem Raspberry Pi speichern.<\/p>\n<p>Der Webservice liefert das JSON Format, z.B.<\/p>\n<pre class=\"lang:default decode:true \" >{\"message\":\"success\",\"timestamp\":1596176595,\"iss_position\":{\"longitude\":\"87.1150\",\"latitude\":\"2.4840\"}}\r\n{\"message\":\"success\",\"timestamp\":1596176610,\"iss_position\":{\"longitude\":\"87.6557\",\"latitude\":\"3.2446\"}}\r\n{\"message\":\"success\",\"timestamp\":1596176625,\"iss_position\":{\"longitude\":\"88.1973\",\"latitude\":\"4.0047\"}}\r\n{\"message\":\"success\",\"timestamp\":1596176640,\"iss_position\":{\"longitude\":\"88.7401\",\"latitude\":\"4.7645\"}}<\/pre>\n<p>und wird in das CSV Dateiformat umgewandelt: timestamp, longitude, latitude<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-node-red-flow.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-node-red-flow.png\" alt=\"\" width=\"1748\" height=\"816\" class=\"aligncenter size-full wp-image-15122\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-node-red-flow.png 1748w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-node-red-flow-300x140.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-node-red-flow-1024x478.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-node-red-flow-768x359.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-node-red-flow-1536x717.png 1536w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>Dann die Daten mal f\u00fcr eine Erdumrundung (= 93 Minuten) laufen gelassen und mit einer Visualisierung mit OpenStreetMap unterlegt:<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap.png\" alt=\"\" width=\"2100\" height=\"1846\" class=\"aligncenter size-full wp-image-15135\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap.png 2100w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap-300x264.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap-1024x900.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap-768x675.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap-1536x1350.png 1536w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-opensteetmap-2048x1800.png 2048w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>Hier 4 Umrundungen:<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal-.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal-.png\" alt=\"\" width=\"2264\" height=\"1640\" class=\"aligncenter size-full wp-image-15137\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal-.png 2264w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal--300x217.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal--1024x742.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal--768x556.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal--1536x1113.png 1536w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-4-mal--2048x1484.png 2048w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>Und hier mit \u00dcberflug am Horizont von Langenhagen:<\/p>\n<p><a href=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-lgh.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-lgh.png\" alt=\"\" width=\"2014\" height=\"1770\" class=\"aligncenter size-full wp-image-15140\" srcset=\"http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-lgh.png 2014w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-lgh-300x264.png 300w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-lgh-1024x900.png 1024w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-lgh-768x675.png 768w, http:\/\/blog.wenzlaff.de\/wp-content\/uploads\/2020\/07\/iss-lgh-1536x1350.png 1536w\" sizes=\"auto, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px\" \/><\/a><\/p>\n<p>Und hier der NodeRed-Flow<!--more--><\/p>\n<pre class=\"lang:default decode:true \" >[\r\n    {\r\n        \"id\": \"ab7bad7.968425\",\r\n        \"type\": \"tab\",\r\n        \"label\": \"iss\",\r\n        \"disabled\": false,\r\n        \"info\": \"\"\r\n    },\r\n    {\r\n        \"id\": \"763a2a37.7faecc\",\r\n        \"type\": \"inject\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"alle 10 Sekunden\",\r\n        \"topic\": \"\",\r\n        \"payload\": \"\",\r\n        \"payloadType\": \"date\",\r\n        \"repeat\": \"10\",\r\n        \"crontab\": \"\",\r\n        \"once\": false,\r\n        \"onceDelay\": 0.1,\r\n        \"x\": 170,\r\n        \"y\": 80,\r\n        \"wires\": [\r\n            [\r\n                \"9c04f3a9.8378a\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"4d064986.fe84e\",\r\n        \"type\": \"debug\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"Debug Data\",\r\n        \"active\": false,\r\n        \"tosidebar\": true,\r\n        \"console\": false,\r\n        \"tostatus\": false,\r\n        \"complete\": \"payload\",\r\n        \"targetType\": \"msg\",\r\n        \"x\": 690,\r\n        \"y\": 200,\r\n        \"wires\": []\r\n    },\r\n    {\r\n        \"id\": \"9c04f3a9.8378a\",\r\n        \"type\": \"http request\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"Open Data von open-notify.org abfragen\",\r\n        \"method\": \"GET\",\r\n        \"ret\": \"obj\",\r\n        \"paytoqs\": false,\r\n        \"url\": \"http:\/\/api.open-notify.org\/iss-now.json\",\r\n        \"tls\": \"\",\r\n        \"persist\": false,\r\n        \"proxy\": \"\",\r\n        \"authType\": \"basic\",\r\n        \"x\": 240,\r\n        \"y\": 200,\r\n        \"wires\": [\r\n            [\r\n                \"f387efbd.b5b6\",\r\n                \"4d064986.fe84e\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"12fc9796.6ae6d8\",\r\n        \"type\": \"file\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"In Datei iss-standort.csv speichern\",\r\n        \"filename\": \"\/home\/openhabian\/iss-data\/iss-standort.csv\",\r\n        \"appendNewline\": true,\r\n        \"createDir\": false,\r\n        \"overwriteFile\": \"false\",\r\n        \"encoding\": \"none\",\r\n        \"x\": 480,\r\n        \"y\": 380,\r\n        \"wires\": [\r\n            []\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"3c15c01e.ab9e\",\r\n        \"type\": \"comment\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"(c) 2020 Thomas Wenzlaff   www.wenzlaff.info\",\r\n        \"info\": \"\",\r\n        \"x\": 690,\r\n        \"y\": 80,\r\n        \"wires\": []\r\n    },\r\n    {\r\n        \"id\": \"5277f66f.cc79e\",\r\n        \"type\": \"debug\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"Debug Ausgabe\",\r\n        \"active\": false,\r\n        \"tosidebar\": true,\r\n        \"console\": false,\r\n        \"tostatus\": false,\r\n        \"complete\": \"payload\",\r\n        \"targetType\": \"msg\",\r\n        \"x\": 700,\r\n        \"y\": 280,\r\n        \"wires\": []\r\n    },\r\n    {\r\n        \"id\": \"f387efbd.b5b6\",\r\n        \"type\": \"function\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"CSV Format erzeugen\",\r\n        \"func\": \"var nachricht=msg.payload.timestamp + \\\",\\\" + msg.payload.iss_position.longitude + \\\",\\\" + msg.payload.iss_position.latitude;\\n\\nmsg.payload = nachricht;\\n\\nreturn msg;\",\r\n        \"outputs\": 1,\r\n        \"noerr\": 0,\r\n        \"x\": 400,\r\n        \"y\": 280,\r\n        \"wires\": [\r\n            [\r\n                \"5277f66f.cc79e\",\r\n                \"12fc9796.6ae6d8\"\r\n            ]\r\n        ]\r\n    },\r\n    {\r\n        \"id\": \"34f57175.37802e\",\r\n        \"type\": \"comment\",\r\n        \"z\": \"ab7bad7.968425\",\r\n        \"name\": \"Tracke ISS Position\",\r\n        \"info\": \"\",\r\n        \"x\": 390,\r\n        \"y\": 80,\r\n        \"wires\": []\r\n    }\r\n]<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Mit einen einfachen NodeRed Flow wollen wir mal die ISS tracken. Es gibt einen \u00f6ffentlichen Open-Notify Web-Service der die Position der ISS liefert. Und auch wieviel Leute da im moment sind (zwei sind eben gegangen 2.7.2020). Also mal eben einen kleinen NodeRed-Flow zusammen geklickt, der den Webservice alle 10 Sekunden abfragt und das Ergebniss in &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/blog.wenzlaff.de\/?p=15130\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eTracken der ISS mit dem Raspberry Pi und NodeRed \u00fcber Open-Webservices\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[220,1023,2713],"tags":[4035,1566,2325,4036,726,4037],"class_list":["post-15130","post","type-post","status-publish","format-standard","hentry","category-anleitung","category-raspberry-pi","category-statistik","tag-iss","tag-lan","tag-lon","tag-open","tag-tracker","tag-webservice"],"_links":{"self":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/15130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=15130"}],"version-history":[{"count":0,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=\/wp\/v2\/posts\/15130\/revisions"}],"wp:attachment":[{"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=15130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=15130"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.wenzlaff.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=15130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}