IoT Projekte

Mit Ubidots die Internationale Raumstation verfolgen

Agustin Pelaez
· 3 Minuten Lesezeit
Per E-Mail versenden

Sind Sie ein Weltraum-Enthusiast und träumen davon, eines Tages die Sterne zu erreichen? Dieses schnelle und einfache Projekt könnte Ihr erster Schritt dorthin sein. Verfolgen Sie die Internationale Raumstation mit Ubidots und erhalten Sie jedes Mal eine Benachrichtigung, wenn die Station vorbeifährt.

Die Internationale Raumstation (ISS) ist ein bemannter Satellit mit niedriger Umlaufbahn, der seit seinem ersten Start im November 1998 Experimente durchführt und Weltraumdaten sammelt. Mit jeweils sechs Besatzungsmitgliedern umkreist dieses Raumschiff ständig die Erde und übermittelt Millionen von Satelliten Datenpunkte pro Tag. Daten, die in der Weltraum-, chemischen, biologischen und phykologischen Forschung zum Nutzen von uns allen genutzt werden, die noch immer auf der Erde leben.

Letztes Jahr haben sich die IT-Führungskräfte Texas Instrument und NASA zusammengeschlossen, um das Bewusstsein und die Aktivität von Mittel- und Oberstufenschülern für die Erforschung von Naturwissenschaften, Technik, Ingenieurwesen und Mathematik (STEM) zu steigern und sie für Problemlösung, Argumentation und Modelle für die Praxis zu begeistern Kernlehrplan für MINT-Fächer, den Fachleute jeden Tag nutzen, um die Internationale Raumstation zu unterstützen.

Als Unterstützer von MINT und allem, was mit IT zu tun hat, wollten Ubidots und unsere Ingenieure an diesem Spaß teilhaben und einen Weg finden, unsere IoT -Software bei einigen der coolen MINT-Projekte zu nutzen, die in Klassenzimmern auf der ganzen Welt stattfinden. Und da STEM, die Internationale Raumstation und Ubidots allesamt globale Organisationen sind, gibt es keinen besseren Weg, mit der ISS zusammenzuarbeiten, als sie zu verfolgen und Sie zu benachrichtigen, wenn sie über Ihnen hinwegfliegt.

Mit dem Nathan Bergey ermöglichten Open Notify können Sie Aktualisierungen der ISS-Position ganz einfach in Echtzeit an Ubidots . Durch das Lesen der Live-Daten von Open Notify sind wir in der Lage, die Entfernung zwischen der ISS und Boston zu messen (wenn ich diesen Blog schreibe) und dann die gesamten Daten zu Ihrem Sehvergnügen Ubidots

Geben Sie dazu den untenstehenden Quellcode mit dem Texteditor Raspberry Pi Aktualisieren Sie Ihre Anmeldeinformationen unbedingt mit Ihrem eigenen API-Schlüssel und Ihrer Variablen-ID und ändern Sie die Koordinaten entsprechend Ihrem Standort. Um zu erfahren, wie Sie einen Kontext an die Ubidots -API senden, schauen Sie sich unsere Dokumentation an.

Hinweis: Dieses Skript verfolgt lediglich die ISS-Position und verwendet eine Standardformel, um deren Entfernung zu einem bestimmten Punkt auf der Erde zu berechnen. Es spiegelt keine tatsächlichen Sichtungsmöglichkeiten wider, da diese mehr von Wetter- und Zeitvariablen als nur von der Nähe (dh dem Standort relativ zu Ihnen) abhängen.

Haben Sie eine Projektidee, um etwas in Echtzeit zu verfolgen?

Klicken Sie hier, Ubidots zu beginnen .

from ubidots import ApiClient import request,time from math import * #Connect to Ubidots api = ApiClient('a21ebaf64e14d195c0044fcxxb9f6dab9d653af3') #Instantiate local variable from Ubidots local_distance = api.get_variable('54ca7a2176254xxxfd4b9493f') def main(): while(1): #Aktuelle ISS-Position abrufen req_iss = request.get('http://api.open-notify.org/iss-now.json') dict = req_iss.json() latlong = dict['iss_position']; lat1 = latlong['latitude'] lon1 = latlong['longitude'] #Entfernung zum Zuhause berechnen lat2 = 50,085305 lon2 = -5,315853 d = getDistance(lat1,lon1,lat2,lon2) d = Round(d,1) #Senden Wert zu Ubidots local_distance.save_value({'value':d,'context':{'lat':lat1,'lng':lon1}}) time.sleep(1) def getDistance(lat1,lon1,lat2,lon2) : R = 6371; #Radius der Erde in km dLat = deg2rad(lat2-lat1); # deg2rad unten dLon = deg2rad(lon2-lon1); a = sin(dLat/2) * sin(dLat/2) + cos(deg2rad(lat1)) * cos(deg2rad(lat2)) * sin(dLon/2) * sin(dLon/2) c = 2 * atan2 (sqrt(a), sqrt(1-a)); d = R * c; # Distanz in km return d; def deg2rad(deg): return deg * (pi/180) if __name__ == '__main__': main()

Sobald die Daten an Ubidots gesendet wurden, können Sie einen Alarm planen, der ein Ereignis auslöst, wenn die Station in der Nähe vorbeifährt. Hier haben wir eine Benachrichtigung erstellt, dass ich eine E-Mail erhalte, wenn die ISS weniger als 300 m von Boston entfernt ist.

Projekthinweis: Dieses Skript verfolgt die ISS-Position und verwendet eine Standardformel, um ihre Entfernung zu einem bestimmten Punkt auf der Erde zu berechnen. Dies wird nicht die tatsächlichen Sichtungsmöglichkeiten widerspiegeln, da diese von mehr als nur der Nähe (z. B. Tageszeit und Wetter) abhängen.

Viel Spaß beim Hacken 🙂