Proyectos IoT

Seguimiento de la Estación Espacial Internacional con Ubidots

Agustín Peláez
· 3 min de lectura
Enviar por correo electrónico

¿Eres un entusiasta del espacio y sueñas con alcanzar las estrellas algún día? Este proyecto rápido y sencillo podría ser el primer paso para llegar allí. Rastree la Estación Espacial Internacional con Ubidots y reciba una alerta cada vez que pase la estación.

La Estación Espacial Internacional (ISS) es un satélite tripulado de órbita baja que ha estado realizando experimentos y recopilando datos espaciales desde su lanzamiento inicial en noviembre de 1998. Con una tripulación de 6 miembros a la vez, esta nave está constantemente orbitando la Tierra y transmitiendo millones de puntos de datos cada día. Datos que se utilizan en investigaciones espaciales, químicas, biológicas y psicológicas para beneficiar a todos los que todavía ocupamos la Tierra.

El año pasado, los líderes de TI Texas Instrument y la NASA se unieron para aumentar la conciencia y la actividad de los estudiantes de secundaria y preparatoria para explorar la ciencia, la tecnología, la ingeniería y las matemáticas (STEM) e involucrarlos en la resolución de problemas, razonar y modelar para practicar el Plan de estudios básico STEM que los profesionales utilizan todos los días para apoyar la Estación Espacial Internacional.

Como partidarios de STEM y todo lo relacionado con TI, Ubidots y nuestros ingenieros querían unirse a la diversión y encontrar una manera de utilizar nuestro software IoT con algunos de los interesantes proyectos STEM que se llevan a cabo en las aulas de todo el mundo. Y, dado que STEM, la Estación Espacial Internacional y Ubidots son organizaciones globales, qué mejor manera de trabajar con la ISS que poder rastrearla y notificarle cada vez que pase por encima.

Utilizando Open Notify , posible gracias a Nathan Bergey, puede enviar fácilmente actualizaciones de la posición de la ISS en tiempo real a Ubidots . Al leer sus datos en vivo desde Open Notify, podemos medir la distancia entre la ISS y Boston (cuando escribo este blog) y luego publicar todos los datos en Ubidots para su placer visual.

Para hacer esto, ingrese y actualice el código fuente a continuación con de su Raspberry Pi . Asegúrese de actualizar sus credenciales con su propia clave API e identificación de variable, además de cambiar las coordenadas para que coincidan con su ubicación. Para saber cómo enviar un contexto a la Ubidots , consulte nuestra documentación.

Nota: Este script simplemente rastrea la posición de la ISS y utiliza una fórmula estándar para calcular su distancia a un punto específico de la Tierra. No refleja oportunidades reales de avistamiento, ya que depende más de las variables climáticas y horarias que de la simple proximidad (es decir, la ubicación relativa a usted).

¿Tiene una idea de proyecto para rastrear algo en tiempo real?

Haga clic aquí para comenzar con Ubidots .

de ubidots importar solicitudes de importación de ApiClient, tiempo de importación matemática * #Conectar a Ubidots api = ApiClient('a21ebaf64e14d195c0044fcxxb9f6dab9d653af3') #Crear una instancia de la variable local de Ubidots local_distance = api.get_variable('54ca7a2176254xxxfd4b9493f') def main(): mientras(1): #Obtener la posición actual de la ISS req_iss = request.get('http://api.open-notify.org/iss-now.json') dict = req_iss.json() latlong = dict['iss_position']; lat1 = latlong['latitud'] lon1 = latlong['longitude'] #Calcular distancia al hogar lat2 = 50.085305 lon2 = -5.315853 d = getDistance(lat1,lon1,lat2,lon2) d = round(d,1) #Enviar valor para Ubidots local_distance.save_value({'value':d,'context':{'lat':lat1,'lng':lon1}}) time.sleep(1) def getDistance(lat1,lon1,lat2,lon2) : R = 6371; #Radio de la tierra en km dLat = deg2rad(lat2-lat1); # grados2rad debajo de dLon = grados2rad(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)); re = R * c; # Distancia en km retorno d; def grados2rad(grados): devuelve grados * (pi/180) si __nombre__ == '__main__': principal()

Una vez que los datos se envían a Ubidots , puedes programar una alerta para activar un evento cada vez que la estación pase cerca. Aquí creamos una notificación de que siempre que la ISS esté a menos de 300 m de Boston, recibiré un correo electrónico.

Aviso del proyecto: este script rastrea la posición de la ISS y utiliza una fórmula estándar para calcular su distancia a un punto específico de la Tierra. Esto no reflejará oportunidades reales de avistamiento, ya que depende de algo más que la simple proximidad (es decir, la hora del día y el clima).

Feliz piratería 🙂