1. Ahora te toca a ti
Ha llegado el momento de que demostréis todo lo que habéis aprendido creando vuestro propio tracker. En lugar del Sistema Solar utilizaremos los datos de diferentes sistemas exoplanetarios. Esos datos los podréis obtener del catálogo de exoplanetas de la NASA.
En este caso volveremos a trabajar en parejas y vuestro tracker deberá al menos recoger datos de la estrella o el sistema estelar que hayáis elegido y al menos 7 planetas; no se considerarán válidos trackers para sistemas exoplanetarios más pequeños).
Para que os sirva de guía os recuerdo brevemente los pasos que tendréis que realizar para poder llegar a buen puerto.
Investigación y recopilación de datos
Como bien sabes se han encontrado más 5000 exoplanetas distribuidos en más de 4000 sistemas planetarios. Así que la primera fase de vuestro proyecto deberá ser la de elegir un sistema exoplanetario que se ajuste a las condiciones mencionadas anteriormente y recopilar información sobre él.
Para esto último la mejor opción es utilizar el catálogo de exoplanetas de la NASA con el que, a través de su buscador, podréis acceder a todo tipo de datos sobre cada uno de los objetos que vayáis a utilizar; masa, radio, distancia al Sol, método y año de detección, tipología del exoplaneta...
Si quieres acceder a este catálogo haz clic sobre la imagen que aparece bajo estas líneas.
Si quieres saber más sobre los exoplanetas que aparecen en los pósteres, la NASA ha preparado unos completos dossieres sobre ellos en los que encontrarás animaciones, representaciones artísticas de su superficie. Accede a ellos a través de los botones que aparecen bajo estas líneas.
Crea una base de datos
En primer lugar deberemos definir los diferentes campos que van a tener nuestras hojas de cálculo de acuerdo con los datos a los que tendremos acceso a través del catálogo de exoplanetas de la NASA. Teniendo esto en cuenta, en la imagen que aparece bajo estas líneas podéis ver que campos aparecerán en nuestra hoja de cálculo (utilizaremos Google Spreadsheet para crearlas).
Veamos con algo más de atención que datos aparecen en la tabla anterior:
- id: Corresponde a la nomenclatura que recibe el exoplaneta en considerado. Dicha letra hace referencia a la fecha de confirmación de su existencia y no a su distancia en relación a la estrella a la orbita.
- name: Corresponde al nombre que la iau (Unión Astronómica Internacional) le ha dado a ese exoplaneta. Sigue siempre la misma estructura: Nombre de estrella + id exoplaneta.
- discoveredBy: Corresponde al nombre del observatorio (terrestre o en órbita) que lo descubrió.
- discoveredDate: Corresponde al año en que cada exoplaneta se descubrió.
- discoveredMethod: Corresponde al método empleado para descubrirlo.
- habitability: Indica si el exoplaneta se encuentra en la zona de habitabilidad de su estrella (VERDADERO) o no (FALSE)
- distance: Corresponde a la distancia media de la estrella que orbita el exoplaneta al Sol. Está medido en años luz.
- mass: Corresponde a la masa del planeta medida en masa terrestres (salvo que se indique lo contrario).
- radius: Corresponde al radio del planeta medida en radios terrestres (salvo que se indique lo contrario).
- orbitRadius: Corresponde al radio de la órbita del planeta alrededor de su estrella. Está medida en unidades astronómicas (UA).
- orbitPeriod: Corresponde al periodo de la órbita del planeta alrededor de su estrella. Está medida en días (salvo que se indique lo contrario).
- eccentricity: Es un parámetro que indica cuánto se ha desviado la órbita del exoplaneta considerado respecto de una órbita perfectamente circular. Cuanto más próximo esté este valor a 0 más circular es la orbita.
Convierte tu hoja de cálculo en una API
Una vez que hayamos creado la hoja de cálculo debemos convertirla en una API. Lo primero que tenemos que tener claro es que convertir una Google Sheets en una API no es difícil si sabes cómo y si sabemos manejar un poco Google Apps Script aunque siempre tenemos una versión más sencilla usando Sheety.co o Sheetdb.io que es una web que permite convertir directamente nuestras hojas de cálculo de Google en una API sin tener conocimiento alguno de programación. También podríamos haber estudiado la estructura de la API del catálogo de exoplanetas de la NASA.
Dado que la versión gratuita de Sheety.co es muy limitada (aunque con capacidades de sobra para un proyecto como este) aprenderemos a utilizar algunas cuestiones básicas de Google Apps Script para hacerlo.
En este caso particular lo que vamos a hacer es convertir cada fila de la Google Sheet como un objeto JSON listo para ser tratado dentro del código de arduino. Para saber hacer esto podéis echarle un ojo a este magnífico vídeo-tutorial de Jesús Álvarez que sin duda conseguirá que a cualquiera le resulte más sencillo entender el proceso.
Para ello, en primer lugar vamos a crear las hojas de cálculo con los datos que conocemos sobre los diferentes exoplanetas de los sistemas Kepler-296 y Trappist. Pondremos los nombres de las columnas en inglés para mantener al máximo la estructura del código que ya hemos creado. Es importante notar que, como la API del Sistema Solar que hemos manejado anteriormente proporcionaba los nombres de los objetos y la información sobre ellos en diferentes idiomas, al configurar el objeto JSON habíamos tenido que seleccionar únicamente los datos que aparecían en inglés. Eso en este caso, dado que toda la información va a aparecer en un único idioma no tendremos que hacerlo así que está modificación del código, junto con la de la información a la que tendremos acceso de cada objeto del sistema exoplanetario, deberemos tenerla en cuenta y llevarla a cabo para evitar problemas en su ejecución.
A modo de ejemplo de la estructuras de las hojas de cálculo os facilito las correspondientes a los sistemas exoplanetarios Kepler-256 y Trappist-1 (no podrán ser considerados para realizar vuestros proyectos). Haciendo clic sobre los botones que aparecen bajo estas líneas podréis acceder a ellos.
A partir de las hojas de cálculo y siguiendo los pasos establecidos por Jesús Álvarez, podéis consultar las API's asociadas a cada uno de los sistemas exoplanetarios haciendo clic sobre los botones que aparecen junto a estas líneas. Es importante tener en cuenta que esas API's son ejemplos de las que deberemos usar como punto de partida para los trackers de ambos sistemas exoplanetarios "clonando el que ya hicimos para el sistema solar.
Crea el código de arduino emulando lo que hemos hecho para el sistema solar
Análogamente a como hemos creado el código del tracker del Sistema Solar deberemos crear el de nuestro tracker. Si necesitas repasar cómo lo hicimos haz clic en el siguiente enlace.
A través de los botones que aparecen bajo estas líneas podrás descargar, a modo de ejemplo, a los códigos de los trackers de los sistemas exoplanetarios Trappist-1 y Kepler-256.
Aún te quedan muchos mundos por explorar
Dado que ha día de hoy se han encontrado más de 3000 sistemas exoplanetarios son muchas las posibilidades que brinda esta práctica a todos los estudiantes que estén interesados en replicar y mejorar lo que os hemos presentado aquí. Para aquellos que se aventuren a explorar los confines de nuestro universo, un buen punto de partida será el NASA Exoplanet Catalogue donde podréis encontrar toda la información sobre cada uno de los exoplanetas descubiertos. Haz clic en la imagen iniciar tu investigación.