C A N S A T

LISTADO DE RECUSOS

Recusos educativos editados por la ESA aquí.

Python para astronomía aquí.

Leer datos puerto serie con python y guardarlos en un fichero csv aquí.

Copérnico recoge nuestro proyecto preliminar de CANSAT.

Dibujo explicativo del cálculo del paracaídas


En su caída el paracaídas está sometido a la fuerza del peso y al rozamiento. Cuando la velocidad es constante la resultante es nula.
Puedes descargar un pdf con la explicación del cálculo de un paracaídas hemiesférico.

Sensor ultravioleta


Hemos elegido este sensor ultravioleta.
Es muy simple: consta de una alimentación a 5 V y una salida analógica. En la página web nos informan que es lineal, y que 0,5 V de salida corresponde a una radiación UV de nivel 5.
Conectamos la salida en la entrada analógica A0 del arduino. El convertidor analógico-digital de 10 bits transforma 5 V en un valor digital de 1023. Por tanto, con un sencillo cálculo llegamos a que UV=LecturaDigital/20,46.
Puedes descargar el programa de aquí .

Radiación ultravioleta
Color Riesgo Índice UV
Verde Bajo < 2
Amarillo Moderado 3 - 5
Naranja Alto 6 - 7
Rojo Muy alto 8 - 10
Violeta Extremadamente alto > 11

Sensor de presión y temperatura


Hemos elegido el BMP 280 de adafruit.
Su funcionamiento es más complejo. Necesitamos tener instaladas dos librerías en arduino. Puedes descargar los ficheros zip de:
Adafruit_Sensor
Adafruit_BMP280_Library
o bien buscarlas en el administrador de bibiotecas del IDE de arduino.
El tipo de conexión que usa menos hilos es el bus I2C: requiere únicamente dos cables para su funcionamiento, uno para la señal de reloj (CLK) y otro para el envío de datos (SDA).
En el bus cada dispositivo dispone de una dirección, que se emplea para acceder a los dispositivos de forma individual. Esta dirección puede ser fijada por hardware (en cuyo caso, frecuentemente, se pueden modificar los últimos 3 bits mediante jumpers o interruptores) o totalmente por software. Puedes obtener más información en la página de Luis Llamas
Puedes descargar el programa de aquí .

Para que el sensor nos proporcione una altura fiable hemos de proporcionarle la presión local al nivel del mar (la que habría en nuestra localización si esta estuviera al nivel del mar). El sketch incluye un #define P_LOCAL_NM 1025 que hay que actualizar antes de comenzar las medidas.

GPS


Usaremos el sensor Goouuu Tech GT-U7.
Necesitamos usar dos librerías en arduino:
SoftwareSerial, instalada por defecto.
TinyGPS, podemos instalarla con el gestor de librerías del IDE de arduino.

La primera librería es para crear una conexión serie distinta de la que tiene el microcontolador por defecto en los pines 0 y 1. Esta la usaremos para la radio. La nueva, en los pines 4 (RX) y 3 (TX) es la que usaremos para la comunicación con el GPS.

La librería TinyGPS nos facilitará la comunicación con el GPS: los métodos de los que dispone nos ayuda a recoger de un modo sencillo los datos que envía el GPS.

Puedes obtener más información en esta página de Luis Llamas

Hay dos programas: con el primero se recoge "en bruto" la información enviada por el GPS. El segundo usa TinyGPS , y se recoge con facilidad los datos que buscamos.
Puedes descargar el programa de aquí .

Radio

Usaremos los módulos inalámbricos APC-220. Uno se conecta mediante un adaptador al puerto USB del PC. El otro a la conexón serie del arduino. Los datos enviados con un print desde el arduino son enviados por radio a una frecuencia ajustable entre 418 y 455 MHz.

La información se modula en frecuencia: necesitamos un rango de frecuencia alrededor de la usada para la transmisión y así evitar solapamientos de frecuencias con otros usuarios cercanos.

Tenemos que aprender a cambiar la frecuencia y poder así fijar la que nos asignen durante las pruebas. Se puede utilizar este programa. Para poder usarlo con garantías hay que practicar con él. Obviamente hemos de usar idéntica frecuencia en los dos módulos.

Podemos probar la radio utilizando cualquiera de los sensores anteriores. En lugar de usar el cable USB para comunicarnos con arduino colocamos uno de los módulos de radio con su adaptador USB en el PC y el otro en el arduino (ver esquema de conexión adjunto). Podremos ver los datos enviados por arduino en el monitor serial, como antes cuando usábamos el cable.

Como el módulo de radio está colocado en el CANSAT tenemos que poder programarlo sin desmontarlo: para esto colocaremos unos jumpers que permitirán conectar el módulo en modo programación (ver la placa más abajo).

Antena

La atmósfera es transparente para las ondas de radio, pero hay pérdidas: incluso en el vacío. Parte de la pérdida se debe a la manera de trasmisión en varias direcciones: no recibimos toda la señal transmitida, sino únicamente la fracción del cono que intercepta nuestra antena.

Free Space path Loss (Pt y Pr: potencia transmitida y recibida)

FSPL=Pt/Pr=(4 π R / λ)² (R: radio de la esfera con centro el transmisor)

FSPL(dB)=10log10 (4 π R f / c)² =20log10 (4 π R f / c)

Las frecuencias entre 300 MHz y 3 Gh corresponden a la banda UHF, con longitudes λ de 1m a 10 cm. En el CANSAT utilizaremos una Antena monopolo. Consiste en un hilo conductor de una longitud λ/4. Podemos ver que esta, para las frecuencias de la radio elegida, varía de 18 a 16 cm. Para 434 MHz son 17,3 cm. Esta va montada en el transmisor. Se puede fabricar con un cable de antena, pelando la malla de modo que quede libre la longitud de la antena, pero sin quitar el aislante del núcleo (si este tocara algún elemento de la electrónica podríamos destruir el transmisor).

Para recibir la señal usamos una antena Yagi. Consta de un elemento receptor, uno reflector y varios directores. Sus dimensiones deben ser acordes con la frecuencia de transmisión.

Puedes encontrar cómo construir una en esta página de EcuRed

Nuestra antena es de un dipolo, un reflector y cuatro directores y para una frecuencia de 434 MHz.

Medidas para el diseño de antenas de 5 elementos
Reflector (150/Frecuencia)
Dipolo (143/Frecuencia)
Director1 (138/Frecuencia)
Director2 (130/Frecuencia)
Director3 (125/Frecuencia)
Director4 (120/Frecuencia)

Separación entre Reflector y Dipolo (48/Frecuencia)
Separación entre Dipolo y Director1 (30/Frecuencia)
Separación entre Director1 y Director2 (30/Frecuencia)
Separación entre Director2 y Director3 (45/Frecuencia)
Separación entre Director3 y Director4 (60/Frecuencia)

Armazón del CANSAT

Es muy sencillo: el diseño está hecho con FreeCad. Tres anillos unidos con varillas roscadas de 4 mm forman la estructura.

Aquí está el modelo de FreeCad.

Placa del CANSAT

Los componentes se pueden distribuir en la placa preperforada como se indica en este dibujo realizado con inkscape.

Además de los sensores y el módulo de radio se ha añadido un interruptor general (IG), un jumper para alimentar la placa (A) donse se enchufará la batería, dos más (TX y RX) que se quitarán para permitir programar el arduino mediante el conector USB y cuando hayamos de modificar los parámetros de la radio y los tres necesarios para programar la radio (TX1, RX1 y SET). Estos estarán normalmente sacados.

Aunque el programa para modificar los parámetros de la radio tiene una ayuda no está de más ponerla aquí:
commands:
r : Read apc220 radio config
e : go into echo mode: receive char, add 1 and return
n : no more echo - back to normal
w : Write apc radio config ...

w FFFFFF R P B C - number of letters indicates precise number of digits
FFFFFF: frequency: 434000 (434 MHz) range 418000-455000
R: Rf data rate - 1/2/3/4 equals 2400/4800/9600/19200bps
P: Radio output power - 0 .. 9 9 equals 13dBm(20mW)
B: UART baudrate - 0/1/2/3/4/5/6 equals 1200/2400/4800/9600/19200/38400/57600bps
C: Byte Chek Parity - 0/1/2 equals NoCheck(8N1)/EvenParity(8E1)/OddParity(8O1)

Write example: w 434000 3 9 3 0 is...
434,000 MHz 9600 baud in air, 20mW, 9600baud on UART, No Parity(8N1)

After 30 seconds with no keyboard input we will emit a char every two second

La comunicación se hace con la consola del IDE de arduino.