Seguimiento de la Estación Espacial Internacional con Ubidots
¿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 tu primer paso para lograrlo. Rastrea la Estación Espacial Internacional con Ubidots y recibe una alerta cada vez que pase cerca.
La Estación Espacial Internacional (EEI) 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 capacidad para seis tripulantes, esta nave orbita constantemente la Tierra y transmite millones de datos diariamente. Estos datos se utilizan en la investigación espacial, química, biológica y psicológica para beneficio de todos los que aún habitamos 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, el razonamiento y el modelo de prácticas del currículo STEM central que los profesionales usan todos los días para apoyar la Estación Espacial Internacional.
Como promotores de STEM y de todo lo relacionado con las TI, Ubidots y nuestros ingenieros quisieron sumarse a la diversión y encontrar la manera de utilizar nuestro software IoT con algunos de los interesantes proyectos STEM que se llevan a cabo en aulas de todo el mundo. Y, dado que STEM, la Estación Espacial Internacional y Ubidots son organizaciones globales, ¿qué mejor manera de colaborar con la EEI que poder rastrearla y recibir notificaciones cuando pase por encima?.
Con Open Notify, gracias a Nathan Bergey, puedes enviar fácilmente actualizaciones de la posición de la ISS en tiempo real a Ubidots . Al leer los datos en vivo de Open Notify, podemos medir la distancia entre la ISS y Boston (en el momento de escribir este blog) y luego publicar todos los datos en Ubidots para que los disfrutes.
Para ello, introduce y actualiza el código fuente a continuación con de tu Raspberry Pi . Asegúrate de actualizar tus credenciales con tu clave API y el ID de la variable, además de modificar las coordenadas para que coincidan con tu ubicación. Para saber cómo enviar un contexto a la Ubidots , consulta nuestra documentación.
Nota: Este script simplemente rastrea la posición de la EEI 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 variables meteorológicas y temporales que de la simple proximidad (es decir, la ubicación relativa a usted).
¿Tienes una idea de proyecto para rastrear algo en tiempo real?
Haga clic aquí para comenzar a utilizar Ubidots .
de ubidots importar ApiClient importar solicitudes, tiempo de math importar * #Conectarse a Ubidots api = ApiClient('a21ebaf64e14d195c0044fcxxb9f6dab9d653af3') #Instanciar variable local de Ubidots local_distance = api.get_variable('54ca7a2176254xxxfd4b9493f') def main(): while(1): #Obtener la posición actual de la ISS req_iss = requests.get('http://api.open-notify.org/iss-now.json') dict = req_iss.json() latlong = dict['iss_position']; lat1 = latlong['latitud'] lon1 = latlong['longitud'] #Calcular distancia a casa lat2 = 50.085305 lon2 = -5.315853 d = getDistance(lat1,lon1,lat2,lon2) d = round(d,1) #Enviar valor a 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); # deg2rad a continuación 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)); 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, se puede programar una alerta para que active un evento cuando la estación pase cerca. Aquí creamos una notificación que indica que, cuando la EEI esté a menos de 300 m de Boston, recibiré un correo electrónico.
Aviso del proyecto: Este script rastrea la posición de la EEI y utiliza una fórmula estándar para calcular su distancia a un punto específico de la Tierra. Esto no reflejará las posibilidades reales de avistamiento, ya que depende de factores que van más allá de la simple proximidad (es decir, la hora del día y el clima).
Feliz hackeo 🙂