r41 - 20 Jun 2006 - 14:49:28 - PabloHoffmanYou are here: pablohoffman.com >  Oscusb Web  >  OscusbDocumentacion > DocCap01Intro

Capítulo 1. Introducción

Introducción

En este capítulo se realiza una introducción al proyecto presentando los objetivos, motivaciones y aspiraciones del mismo. También cuenta como fue el proceso de planificación y las herramientas utilizadas para llevarlo adelante.

Licencia

La presente documentación se encuentra liberada bajo la licencia GNU Free Documentation License (FDL).

Asimismo, todo el resto del proyecto se encuentra liberado bajo la licencia GNU General Public License (GPL), en cuyo contexto "código fuente" debe entenderse como:

  • los esquemáticos del osciloscopio
  • el código fuente del firmware
  • el código fuente del software
  • la especificación del protocolo

Ambas licencias son de libre distribución y se encuentran disponibles en el Apéndice VII. Licencias .

Objetivos y motivaciones

El objetivo del proyecto fue el diseño y construcción del prototipo de un dispositivo digital de captura de señales eléctricas (también conocido con el nombre del osciloscopio) con conexión a la PC.

Las aspiraciones fueron lograr un osciloscopio lo suficientemente robusto y confiable como para uso académico, de forma para poder comercializarlo en liceos, facultades, escuelas técnicas, etc.

El osciloscopio debiera competir en prestaciones contra un osciloscopio típico de laboratorio universitario, pero con un costo menor. Esto permitiría su fácil inserción en esta área, e incluso extender su uso a otros niveles educativos como la educación secundaria.

El producto también será de alto atractivo para entusiastas ya que el diseño completo del proyecto es libre y abierto lo cual brinda a los usuarios finales la posibilidad de modificarlo y extenderlo a gusto, sin ninguna restricción.

Las motivaciones principales para desarrollar este proyecto fueron las siguientes:

  • tema de gran interés por parte de ambos integrantes del grupo
  • alta posibilidad de inserción en el mercado, a nivel educativo
  • escasez de proyectos similares en el mundo (osciloscopios abiertos)

Prestaciones

El osciloscopio debería poseer una serie de requisitos básicos para que pueda ser usado con comodidad, y así poder aspirar a sustituir un osciloscopio tradicional. Ellos son:

  • protección y aislación contra sobrevoltajes
  • buena interfaz de control para un manejo confortable
  • otras características
  • ancho de banda mayor a 10Mhz.
  • buen rango de tensiones de entrada.
  • ser compacto y fácilmente transportable
  • bajo consumo para poder prescindir de una fuente externa y ser alimentado directamente del puerto USB, lo cual le brindaría una gran portabilidad
  • funcionamiento multi-plataforma, para poder utilizarlo en Windows, Linux o Mac
  • posibilidad de actualización de firmware

Si bien no todas estas características fueron alcanzadas en el prototipo, las mismas fueron tenidas siempre presentes durante el desarrollo para al menos poderlas dejar contempladas en el hardware, siempre que fuera posible.

Teniendo en cuenta que hoy en día un osciloscopio analógico típico de uso académico (Tektronix 2205 / 20 Mhz) está en el entorno de los U$S 600 o más, la meta fue diseñar y construir un dispositivo que pueda ser comercializado a un precio menor pero con características similares o, en algunos casos, superiores, para compensar la robustez de un osciloscopio de marca.

Además de cumplir con los requisitos básicos, se espera que el osciloscopio, por su naturaleza digital, cuente con algunas prestaciones adicionales como ser:

  • Detección inteligente de transitorios (por software)
  • Procesamiento digital de los resultados
  • Almacenamiento de señales capturadas (tanto en formato gráfico como numérico) para su posterior procesamiento en programas de cálculo
  • Análisis de espectro en tiempo real

Mentalidad y pautas de diseño

La idea sobre la cual trabajamos fue la de realizar el equipo físico lo mas sencillo posible, volcando todo el procesamiento hacia el lado del PC, siempre que fuera posible. En otras palabras, el hardware debería encargarse únicamente de digitalizar los datos y enviarlos al ordenador. Luego el PC es quién se encargará de analizarlos los datos, procesarlos, realizar cuentas, etc. El hardware se limitaría a recibir solicitudes de captura y ejecutarlo con ciertos parámetros como ser: velocidad de adquisición y rango de entrada.

El prototipo implementado está basado en un microcontrolador central que controla la lógica de funcionamiento de la placa, y es el encargado de comandar a todos los componentes para llevar a cabo la captura y transferencia de los datos.

En cuanto a la placa misma, podemos dividirla en varios bloques funcionales, que son los siguientes:

  • Bloque de control principal - compuesto por el microprocesador
  • Bloque de entrada - encargada de la adquisición y adaptación de la señal
  • Bloque de captura - etapa de alta velocidad donde se realizarán la digitalización de las señales y el almacenamiento de las muestras
  • Bloque de salida - sonde se realiza la conexión al puerto USB de la PC (incluye protección)

Un dato interesante a destacar es que, para altas velocidades, el bloque de captura trabaja una velocidad mucho mayor de la que es capaz de controlar el microprocesador, por lo cual éste no podrá ser usado para controlar directamente el proceso de captura. Más adelante veremos como se resolvió este problema.

En cuanto al software, el mismo intentará replicar lo más posible la interfaz de un osciloscopio estándar para permitir una operación sencilla e intuitiva y minimizar la curva de aprendizaje. Este posee controles de velocidad de barrido y rango de tensiones de entrada, con la posibilidad de seleccionar cualquiera de los dos canales independiente o simultáneamente.

El software será el encargado de enviar el comando apropiado de captura, según la frecuencia de trabajo (división horizontal) seleccionada, exonerando así al microprocesador de esta decisión y aliviando su lógica de funcionamiento haciendo más sencilla su tarea. La aplicación del osciloscopio deberá ser capaz también de permitir cambiar los parámetros de captura "al vuelo" mientras se está capturando, sin que el usuario tenga que que detener y volver a disparar la captura.

El siguiente es un diagrama de la interconexión de los diferentes componentes de la placa:


Fig 1.1 Diagrama de interconexión de componentes

Si bien se ha logrado prototipo completamente funcional, hay ciertos puntos que aún quedan pendientes en su implementación, que debieron dejarse de lado por razones de tiempo. Estos puntos son discutidos con más profundidad a lo largo de toda la documentación y se encuentran resumidos en el Capítulo 10. Temas pendientes y rentabilidad .

Planificación

Las primeras dos semanas del proyecto fueron dedicadas exclusivamente a la planificación del mismo. En estas semanas se fijaron las pautas generales a seguir, se definieron las etapas a cubrir, objetivos, plazos y aspiraciones. Además, se escogió la herramienta a utilizar para el seguimiento y trabajo conjunto del proyecto.

Herramientas de trabajo

Wiki

Como primera instancia se eligió una herramienta a utilizar para realizar el seguimiento del proyecto y trabajo en conjunto. Dicha herramienta debía cumplir los siguientes requisitos:

  • versionado: permitir la edición conjunta del contenido guardando un registro de cambios (para tener un seguimiento de los mismos y no perder nada)
  • notificaciones: tener un sistema de notificación (via mail) cada vez que se realiza algún cambio
  • documentación: servir como herramienta para escribir la documentación de forma colaborativa y simultánea
  • seguimiento: permitir llevar una lista de las tareas pendientes y un registro de las tareas terminadas
  • accesibilidad: ser accesible sin restricciones desde cualquier plataforma (Windows, Linux, Mac) o lugar de trabajo (ie. accesible desde Internet)

Luego de evaluar estas requisitos se encontró que la herramienta que más se ajustaba a estas necesidades era una herramienta wiki. El uso de herramientas wiki ha crecido mucho últimamente en popularidad gracias a proyectos como la Wikipedia que hacen uso de ellas. Básicamente, una aplicación Wiki permite tener un sitio web cuyas páginas son editables por los mismos usuarios que las acceden.

Esto permite editar los documentos y trabajar sobre la información de forma colaborativa, es decir, editar conjuntamente las páginas sin que ocurran conflictos ya que todos los cambios quedan registrados. Al realizarse algún cambio la herramienta wiki notifica de los cambios a las personas suscritas a dichas páginas para que éstos puedan entrar acceder directamente a la página que cambió y ver sus cambios. Esto brinda una gran flexibilidad a la hora de trabajar colaborativamente de forma remota.

Por consiguiente, esta fue la herramienta escogida para el seguimiento y documentación del proyecto. El Wiki escogido en particular es el ama TWiki y fue utilizada para llevar a cabo las siguientes tareas:

  • bitácora de reuniones con el tutor
  • apuntes y seguimiento de las investigaciones (bitácora de investigación)
  • registro de mails importantes relacionados con el proyecto
  • tormenta de ideas para el diseño
  • documentación (esta documentación fue escrita en TWiki)
  • seguimiento del progreso del proyecto con la posibilidad de ver cuales fueron los últimos documentos modificados y que fue lo que cambió
  • proveer una web pública del proyecto (para su divulgación y difusión) lo cual es un requisito para proyecto de naturaleza abierta como este.
  • almacenamiento de información administrativa (carta del proyecto, pautas, etc)
  • seguimiento de compras y presupuesto disponible

A continuación se listan, a modo de ejemplo, algunas de las páginas pertenecientes al TWiki y su función.

Dichas páginas pueden ser accedidas libremente desde Internet. En todo momento,el sitio web del proyecto estuvo abierto a cualquier persona interesada. Esto nos pareció una idea interesante desde el principio, no solo para promocionar el proyecto, sino también para recibir ideas y comentarios de otras personas, lo cual efectivamente ocurrió.

La siguiente captura de pantalla muestra la página principal de TWiki.

twikiwebhome.jpg
Fig 1.2 Página principal de TWiki (sitio web del proyecto)

Por último, vale mencionar que TWiki es una herramienta de software libre liberada bajo licencia GPL cuyo código es abierto y está disponible para bajar en su página web: http://twiki.org.

CAD electrónico

La segunda herramienta que se seleccionó fue el CAD para diseñar y dibujar los esquemáticos. Al igual que el Wiki, la elección de un CAD adecuado nos parece una tarea crucial para asegurar el desarrollo óptimo del proyecto, por lo cual se optó por dedicar un tiempo considerable a evaluar alternativas.

Los puntos que consideramos importantes a la hora de seleccionar un CAD fueron:

  • que la interfaz de uso (para crear pistas, mover e interconectar componentes, buses, etc) del programa fuera ágil e intuitiva
  • que tuviera una gran librería de partes y un buen editor de componentes
  • que tuviera un simulador potente
  • que tuviera la posibilidad de encapsular sub-circuitos como bloques tipo caja negra

Los programas que evaluamos fueron los siguientes:

  1. Circuit Maker 2000
  2. CadSoft Eagle
  3. Orcad 10
  4. Electronics Workbench Multisim 8

Los resultados de dicha evaluación se detallan a continuación:

1. Circuit Maker 2000

El primer CAD que probamos fue el Circuit Maker 2000, ya que es el CAD electrónico oficial de la ORT. Si bien la interfaz en si es bastante sencilla de usar, el simulador que trae es muy pobre. Otra carencia que le encontramos fue la reducida librería de componentes y una interfaz no muy cómoda para el diseño de nuevos componentes. Todas estas razones nos llevaron a descartar el Cicuit Maker como CAD de diseño.

2. CadSoft Eagle

En segunda instancia probamos el Eagle de CadSoft. Este CAD es muy popular entre entusiastas y aficionados ya que posee dos grandes ventajas:

  • es gratuito para usos sin fines de lucro (como el nuestro)
  • hay versiones para Windows, Linux y Mac

Las características de ser multiplataforma y gratuito le han hecho ganar mucha popularidad en el mercado. Sin embargo (y a diferencia de los otros) no tiene simulador, razón por la cual optamos por descartarlo. Si bien al principio no sabíamos si íbamos a utilizar el simulador, consideramos importante tener prevista esta necesidad a priori.

3. Orcad 10

El Orcad nos pareció un CAD extremadamente potente (incluso más que el Multisim) y con una muy buena librería de componentes. Sin embargo, el gran problema que le encontramos fue su interfaz extremadamente compleja y algunas carencias de la misma como la de la conexión rápida de buses, que el Multisim sí posee.

4. Electronics Workbench Multisim 8

El Multisim fue el programa que decidimos utilizar como CAD electrónico pues cuenta con las siguientes características muy útil carentes en todas (o algunas) de las demás alternativas:

  • capacidad de trazar e interconectar rápidamente buses (muy necesario para nuestros esquemáticos)
  • interfaz sencilla e intuitiva de manejo, fácil colocación y movimiento de los componentes y sus interconexiones
  • poderoso y cómodo editor de partes para poder crear componentes de forma rápida, completa y concisa
  • buena librería de componentes
  • muy buen simulador: potente y fácil de usar

Cronograma

En las primeras dos semanas de planificación se definieron las etapas del proyecto junto con el cronograma a seguir. El mismo se presenta a continuación:

  Jun/05 Jul Ago Set Oct Nov Dic Ene Feb Mar Abr/06
Planificación  
Análisis    
Presentación oral    
Diseño    
Implementación    
Documentación    
Entrega    
Defensa    
Fig 1.3 Diagrama de Gantt del proyecto

Del cronograma se pueden distinguir 3 grandes etapas: análisis, diseño e implementación (que son las etapas donde ocurrió efectivamente el desarrollo del proyecto) y otras etapas administrativas como la presentación, entrega y defensa.

Para nuestro asombro, podemos afirmar que el cronograma fue seguido con bastante rigurosidad, prácticamente sin desvíos respecto a la propuesta original, con la excepción de la etapa de diseño que se solapó con la de implementación, aunque esto también había sido previsto y fue comentado en el documento de presentación.

Referencias

toggleopenShow attachmentstogglecloseHide attachments
Topic attachments
I Attachment Action Size Date Who Comment
pngpng bloques_pic.png manage 40.4 K 27 May 2006 - 08:57 MartinSzmulewicz Diagrama de bloques
pngpng demo_software.png manage 352.4 K 27 May 2006 - 09:17 MartinSzmulewicz screenshot
jpgjpg twikiwebhome.jpg manage 105.1 K 28 May 2006 - 11:39 PabloHoffman Página principal de TWiki
Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r41 < r40 < r39 < r38 < r37 | More topic actions
Oscusb.DocCap01Intro moved from Oscusb.DocIntro on 27 May 2006 - 21:08 by PabloHoffman - put it back

Osciloscopio USB


Esta Web
Cronograma
  • DONE planificación
  • DONE análisis
  • DONE presentación oral
  • DONE diseño
  • DONE implementación
  • DONE documentación
  • DONE imprevistos
  • DONE defensa
  • MOVED TO... correcciones
 
Powered by pablohoffman.com
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding pablohoffman.com? Send feedback