martes, 23 de septiembre de 2008

Día Vigésimoprimero (21º) - 8/08/08

Seguímos en otra. Cabe aclarar que la foto anterior era meramente ilustrativa. Es invierno en este país y no existen playas que se le parezcan ni remotamente a la de la foto aquí.

Día Vigésimo (20º) - 1/08/08

Celebramos nuestro vigésimo día de trabajo tomandonos unas merecidisimas vacaciones. Volveremos el 15/08/08.

Día Decimonoveno (19º) - 25/7/08

Comenzamos la clase dedicandonos a rediseñar el programa de apogeo que habíamos creado la clase anterior. Nos propusimos otro enfoque para programarlo ya que el otro se basaba en un método bastante más grosero y propenso a fallas (recordamos que nunca funcinó). Le damos las gracias al Profesor Mariano Foullier por la idea.

El primer programa, lo llamaremos Apogeo 1.0, consistía en la siguiente secuencia de programación:

  • Se crea una variable de un solo Byte llamada Index y un array 16 de Bytes llamado Array
  • Index se inicializa en 00 y se utiliza para direccionar a Array
  • Se ingresa un dato en Array{Index}
  • Se incrementa Index
  • Se ingresa otro dato en Array{Index}
  • Se compara Array{Index} con Array{Index-1} si es mayor Array{Index-1} se vuelve a empezar, sino continua
  • Se incrementa Index nuevamente
  • Se ingresa un tercer dato en Array{Index}
  • Se realiza la misma comparación, si es mayor Array{Index-1} se vuelve a empezar, sino continua
  • Apogeo Detectado (Sub-rutina de Apogeo)

Es decir, el programa tomaba una muestra, luego otra, y las comparaba, si la primera era mayor que la segunda, el cohete estaba descendiendo, para evitar que el ruido haga activar la rutina de apogeo se tomaba una tercera muestra que compruebe definitivamente el descenso del cohete. Este programa era altamente falible y de hecho nunca anduvo como debía.

Es por esto que programamos el programa que llamamos Apogeo 2.0, cuya secuencia de programación era:

  • Se crea un Array de 16 Bytes y una variable de 1 Byte que lo direcciona, son Array e Index.
  • Se crea una variable de 1 Byte usada para contar llamada Cont inicializada en 0.
  • Se inicializan todos los elementos en 0
  • Se ingresa el primer dato en Array{0}
  • Se rotan todos los datos hacia el final del Array (Array{0} pasa a Array{1}, etc.) el último dato se pierde.
  • Se comparan los datos contiguos desde el principio del Array hasta el final, si los valores van en ascenso es porque el cohete va en descenso, cada vez que hay un descenso de un valor al contiguo se suma Cont.
  • Si al finalizar la comparación de todo el Array Cont es 3 o más, se ejecuta la subrutina de apogeo. Si no, se ingresa otro dato en Array{0} y se sigue desde ese paso.

Este programa era mucho más efectivo. lo que hacía era ir ingresando los datos de a uno en un Array vacío y compararlo con los demás. De esta forma, cada vez que se ingresa un dato, se ejecuta la comparación completa del Array. Hasta que no haya 3 descensos seguidos, no se salta a la sub-rutina de Apogeo. Este programa si funcionó correctamente y cumple con nuestras necesidades.

lunes, 22 de septiembre de 2008

Dia Decimooctavo (18°) - 18/7/08

Se cumple otro año de impunidad y se sigue sin culpables por el atentado a la AMIA.
Concurrimos al acto realizado, en memoria de las victimas.

viernes, 19 de septiembre de 2008

Dia Decimoseptimo (17°) - 11/7/08

Comenzamos el día probando el programa de apogeo que previamente habíamos programado vía Internet. A efectos de simular el ascenso y posterior descenso del cohete utitilizamos un potenciómetro que regulamos manualmente, primero subiendo su resistencia y luego haciendola descender, de esta forma pretendíamos que el programa confunda nuestro accionar con el del cohete en vuelo. El programa falló en todas las ocasiones, activandose antes de tiempo o no activandose en ningún momento. Nuestro tutor, Edgardo, nos dijo que el método que utilizabamos para simular el apogeo del cohete no era el apropiado que que la forma de la señal de entrada que estábamos generando se correspondía muy poco con la forma real de la señal, es por esto que nos recomendó utilizar un circuito RC (recomendamos entrar en el link, hay un applet muy explicativo del funcionamiento y la forma de la señal), que se ajustaría más a lo que el programa debía interpretar. Sin embargo, luego de este cambio el programa tampoco funcionó.

Circuito RC:

Gráfico de la señal durante la Carga (Interruptor cerrado) versus descarga (Interruptor abierto):


Por otra parte, terminamos de soldar el circuito que nos permitiría programar el PIC sin utilizar el ChipMax ni sacarlo del Protoboard (mencionado en el post anterior).
Por último nos dispusimos a probar el circuito altímetro para ver como sería el funcionamiento de este. A efectos de hacerlo solicitamos una Campana de Vacío que nos permite reducir la presión del aire dentro de ella y de esta forma simular altura en el altímetro (recuerde que el altímetro es en realidad un circuito medidor de presión).

Campana de Vacío: Ninguno de los dos sensores funcionó correctamente, en un futuro deberemos rediseñarlos.

lunes, 1 de septiembre de 2008

Día Decimosexto (16°) - 4/7/08

A partir de esta fecha Ezequiel Wajs se retira por primera vez y hasta el 30 de Agosto a los entrenamientos para las XII Olimpíadas Iberoamericanas de Física (OIF) a realizarse en Morelia, México del 27 de Septiembre al 3 de Octubre. Los entrenamientos de la selección Argentina se realizan semana de por medio en la Universidad Nacional de Rio Cuarto (UNRC) en Rio Cuarto, Pcia. de Córdoba.
Es por esto que el proyecto se vera ralentizado debido a que semana de por medio faltará uno de los dos integrantes.
Matias se avocó al desarrollo de una plaqueta y su correspondiente set de cables que permitirán reemplazar definitivamente al módulo programador de memorias ChipMax debido a que este no suele funcionar en las nuevas computadoras del laboratorio y nos fuerza a utilizar una Notebook que resulta incomoda para trabajar en el aula debido al cableado que requiere para funcionar como una máquina cualquiera de la red. Esta plaqueta programadora se comunica con la computadora sirviendose del puerto paralelo. Esta nueva plaqueta nos permite programar el PIC sin retirarlo siquiera del Protoboard haciendo la programación mucho más velóz. Dedicó el resto del día en la puesta a punto de la placa de cobre/fibra de vidrio para luego someterla al tratamiento con Cloruro Férrico que más tarde daría a lugar al circuito impreso sobre el cual montar los componentes de la plaqueta.
A pesar de estar a más de 800Km. el grupo estuvo en contacto mediante Internet. Ezequiel pidió prestada una computadora de la Universidad mientras que Matias utilizó una del Laboratorio, la comunicación fue posible gracias a un cliente de mensajería instantanea que permitió un ida y vuelta de ideas y datos en vivo. Ezequiel Wajs realizó en Rio Cuarto un programa que detectara el apogeo del cohete es decir el punto más alto que alcanzará en vuelo. Suponiendo que la gravedad será la única fuerza que actuará sobre el cohete luego del impulso inicial proveido por el combustible explosivo (y descartando los cambios de momento que causará la pérdida de masa a medida que el combustible se queme), el vuelo del cohete podrá representarse en función del tiempo con forma de parábola, cuyo vértice será el punto más alto de la trayectoria. Aquí un ejemplo aunitario de la parabola que representa la trayectoria del cohete:Cabe destacar que lo que se ve en el gráfico es la Altura en función del Tiempo, el desplazamiento (teóricamente) se realiza completamente sobre la misma linea recta que es aquella vertical en la cual se lanza el cohete y no un gráfico que denota desplazamiento en el eje X e Y.