Capítulo 11. Autoevaluación y conclusiones
Si bien al principio se realizó un cronograma base para encarar el proyecto,
debemos recalcar que no es lo mismo afrontar la tarea con un plan semanal que
uno anual. La realización y el seguimiento del cronograma es muy importante
para cumplir exitosamente el objetivo planteado. El beneficio en la
organización y seguimiento del proyecto es sustancial. Basados en nuestra
experiencia de este año de trabajo, creemos que es muy importante plantearse
objetivos intermedios y a corto plazo, además de los objetivos a largo plazo y
las grandes etapas del proyecto.
Por otra parte, la división, organización y cumplimiento de las tareas es
extremadamente importante. Es necesario definir el responsable de cada tarea y
el plazo que se le da a la misma. Se trata de un trabajo de equipo por lo que
todas las partes del mismo deben funcionar de manera coordinada y aceitada de
la misma forma que lo hacen los engranajes de un sistema mecánico. Si una de
las partes no cumple con el objetivo o el plazo, todo el equipo se verá
demorado y perjudicado. Tomando este ejemplo, si un engranaje deja de
funcionar, hasta que éste no cumpla su función, el sistema no podrá operar. La
división de las tareas es un punto importante a tener en cuenta. Es fundamental
que éstas se distribuyan correctamente puesto que una sola parte no podría
realizar las tareas de todos. También debemos recalcar que resulta más
productivo y eficaz asignar a cada miembro del grupo aquellas tareas en las
cuales su participación sea la más idónea ya que actuará en su ámbito de
conocimiento aumentando así su comodidad y eficiencia.
También creemos que el acceso a Internet hoy en día es imprescindible (y no
solamente para un proyecto de este tipo) puesto que la red cuenta con
incontables recursos e información, mucho más que cualquier biblioteca local.
Además, los datos están actualizados.
La herramienta de colaboración en línea que hemos utilizado (TWiki) ha hecho
posible que cada integrante del grupo pueda trabajar de forma colaborativa y
simultánea ya que la información está siempre disponible y es actualizada en
línea, por lo que nunca ocurre un "desfasaje" de los datos entre los distintos
integrantes, como ocurriría en caso de trabajar con archivos de Word y utilizar
el mail como medio de intercambio. El uso de herramientas colaborativas en
línea es una técnica cada vez más utilizada hoy en día.
En cuanto al proyecto en sí, hemos aprendido varias lecciones en base a las
experiencias vividas. Se ha podido comprobar las dificultades que se tienen al
trabajar a altas frecuencias lo cual, hasta ahora, era solo "un mito teórico".
También aprendimos que no es lo mismo tomar medidas preventivas para evitar
inconvenientes que enfrentar el problema real. Un factor importante a tener en
cuenta es el hecho de haber trabajado sobre una placa universal en lugar de un
circuito impreso (PCB) lo cual limita ciertos aspectos del funcionamiento pero
era inevitable por la naturaleza del proyecto. Sería impensable mandar a
fabricar un nuevo PCB cada vez que se realiza un cambio a los esquemáticos, al
menos en las primeras etapas donde no hay nada estable.
Nos hubiera gustado llegar a fabricar el PCB pues hubiéramos aprendido mucho
más, pero desgraciadamente el presupuesto, el tiempo y la falta de un diseño
estable nos impidió hacerlo.
Afortunadamente el equipo funciona correctamente a 8Mhz, pero el objetivo es
aumentar la frecuencia de trabajo para cumplir las objetivos propuestos
originalmente de 20 MSPS. Creemos firmemente que la fabricación de un circuito
impreso adecuado es la forma de lograr este objetivo por el inconveniente de
las altas frecuencias ya mencionado.
Otro tema no menor en la realización de este tipo de proyectos es la
dependencia del equipamiento necesario para trabajar. A diferencia de un
proyecto de software (como puede ser el caso de comprar una placa de desarrollo
y programar sobre ella) nuestro proyecto exigió el uso de osciloscopios y
herramientas de laboratorio no disponibles a nivel residencial. Si fuéramos a
realizar nuevamente el proyecto elaboraríamos una lista de instrumentos y
herramientas necesarias para el desarrollo y procuraríamos buscar una forma de
disponer de los mismos en todo momento.
Finalmente, otra lección aprendida es la de prever con anticipación las
necesidades, problema que tuvimos que sufrir con la falta de disponibilidad de
los componentes y que nos ha retrasado en el comienzo de la fabricación de la
placa. De haber tenido conciencia de esto, ordenar los componentes con
anticipación nos hubiese dado una ventaja en los tiempos.
En cuanto al firmware, la experiencia que nos dejó su desarrollo es que, si
bien el uso de C para programarlo fue de gran utilidad, hay aplicaciones (como
el trigger por hardware) que sería más conveniente implementar en assembler.
Además el MPLAB C18 implementa una versión de C con ciertas limitaciones, y
dichas limitaciones no están correctamente documentadas (por un tema comercial
quizás) lo cual generó atrasos considerables en el desarrollo y la depuración
del código.
A nivel de software, debemos admitir que nos sorprendió la sencillez y
flexibilidad brindada por el lenguaje python, hasta el punto de convencernos de
que no hubiéramos podido elegir un mejor lenguaje para escribir el código.
Tanto el lenguaje en sí como sus librerías hacen que sea irresitiblemente
simple y divertido de implementar hasta las operaciones más complejas. La
razón de esto se la atribuimos a un muy inteligente diseño del lenguaje junto
con una excelente documentación. Recomendamos fuertemente python como lenguaje
de propósito general y, en particular, para prototipado de aplicaciones.
Si bien las especificaciones completas del proyecto no pudieron ser alcanzadas
en esta primera instancia, estamos conformes con los resultados obtenidos y
creemos que el prototipo puede ser fácilmente extendido para cumplir con los
requisitos propuestos inicialmente.
Por último debemos confesar que la etapa más difícil del proyecto fue sin duda
el comienzo pues carecíamos de un rumbo definido a seguir y teníamos gran
dificultad en enfocarnos en un tema concreto, por miedo a estar perdiendo el
tiempo o de llegar a un callejón sin salida. En cambio, ya en etapas
posteriores, con las ideas claras y los objetivos inmediatos bien definidos nos
resultó más interesante y ameno el trabajo. Es más, nos gustaría seguir
trabajando en este proyecto pues la etapa donde nos encontramos ahora es muy
divertida, pero lo vemos poco viable debido a la falta de tiempo, capital y
herramientas apropiadas de trabajo.