Como presentar el diseño de un proyecto con microcontroladores?

Hola a todos!
Muchos de nosotros somos buenos a la hora de hacer qUE funcione algo, diseñar el hardware, el software. Pero pesimos a la hora de hacer qUE los demas entiendan nuestras ideas, sobre todo cuando se trata de un proyecto de fin de carrera.
Tengo un gran problema, hice el diseño de un sistema de monitoreo, el cual en parte aun quedo como diseño y otra parte importante pudo ser realizada cumpliendo los objetivos planteados.

Mi duda es la siguiente, teniendo el sistema en funcionamiento, tengo qUE hacer la redaccion de todo el diseño, tanto de firmware, hardware y software. Tengo claras la mayoria de idea, pero que necesito es lo siguiente:

-que tipo de diagramas debo utilizar para presentar el funcionamieto de cada uno de los modulos (procesos, eventos, flujo de datos)
-como logro unificar todo esto para generar la idea global de lo q se trata.
-QUE herramientas son las mejores para hacer los diagramas?
-Que informacion se debe incluir en la presentacion para la defensa.

Creo que este es un punto debil para la mayoria de los ings, quisiera crear este hilo como algo general y no especifico para e proyecto que lleve a cabo, a ver si nos sirve a todos, mejor aun si se puede tener ciertos ejemplos para tener una idea mas visual.

Saludos a todos, y espero que el tema pueda servir a todos
 
Última edición por un moderador:
yo creo que cuando mas documentado presentes todo es mejor,yo no apenas soy un nuevito en esto y no se mucho,trato de aportar y solo ise un solo post con todo la mas que pude y espero que le sirva a todos ya que quiero agradecer de alguna forma toda la informacion que obtube de esta comunidad y voy a tratar de ayudar lo mas que pueda ya que estoy muy contento de pertenecer a esta gran comunidad,asi amigo nos ayudamos entre todos
 
Esto lo he descripto en algún lugar del Foro, pero no recuerdo donde.

Un buen comienzo es escribir correctamente
 
ale_nevermind: Aprende con el ejemplo. Es raro pero, a veces encuentras en Google, articulos muy bien hechos... Pues es el ejemplo a seguir. Otro buen modelo son los articulos de las revistas. Recuerdo una en especial: Popular Electronics. Sus articulos eran tan bien presentados y tan claros que daba mucho placer estudiarlos y hacerlos. Salu2.
 
Yo presento los siguientes datos en el reporte:

- Diagrama de bloques
- Diagramas esquematicos
- Diagrama de Flujo del programa
- Indice de rutinas usadas y de variables que ocupa cada una
- Descripcion de cada rutina
- Descripcion general de comportamiento del circuito
- Recomendaciones de uso
 
Yo les puedo recomendar mucho la herramienta doxygen, es para generar documentación a partir del código fuente (correctamente comentado), es muy facil de usar y me agrada bastante los resultas obtenidos.
 
gracias a todos por sus respuestas, pero a lo q me referia en todo caso era precisamente a como hacer los diagramas de la mejor forma posble, como organizarlos, cuanta informacion deben contener, sobre todo por que aprendi recientemente el manejo de VS C#, y con eso programe mi interfaz grafica, pero como se usan muchos formularios, eventos, clases, objetos, estructuras de datos, la verdad que no se por donde empezar para que sea claro.

Efectivamente el programa funciona y esta comentado, pero no se como hacer el diagrama en este caso.. Vi alguna vez un diagrama que eran un circulos con flechas q volvian a si mismo, incluso en algunas materias de la parte informatica nos intentaban explcar con eso, pero no recuero muy bien como se los hace ni como se llaman, ya que solo los utilizamos en pocos ejemplos.

Saludos!
 
No me queda claro, es solo un programa? necesitas hacer el diagrama de flujo y explicar los modulos?

O tambien incluye el diseño electronico... Etapas como buffers, osciladores, amplificadores, demultiplexores, etc...

Francamente, antes de iniciar un proyecto, primero organizo mis ideas, no al revez. Es decir, antes de sentarme, primero veo lo que necesito y despues empiezo a "proyectar" mi solucion, tanto hardware como software, en el caso que implica ambas cosas.
Esto es. Primero organizo mis ideas, y empiezo a documentarlo, y una vez que tengo una idea general, entonces ya me siento a arrojar codigo y diagramas.

Esto te lo digo porque es un error comun incluso entre colegas y compañeros. Es cuestion de orden. Pero en este punto te puedo dar algunas preguntas que te pueden ayudar a empezar a desenredar la madeja que ya tienes hecha.

¿Cual es el fin del proyecto/dispositivo?
¿Cual es el problema o demostracion por el cual se realiza el proyecto como respuesta y/o experimento?
¿Que bloques fundamentales lo componen?
¿Que funcion realiza cada uno?"en esta parte, suelo dar nombres especificos a cada parte o etapa, y dar una explicacion breve"

Y para cada apartado:
¿Que funcion realiza? Aqui si se explaya la explicacion concreta de cada etapa o parte
¿que se utiliza para su construccion? ¿por que razones?
Se explican simulaciones y diagramas.

Y por punto final, se explica el resultado del dispositivo completo, si cumple el objetivo proyectado, si existen problemas o situaciones no previstas, si es posible mejorar o corregir.
Y en la ultima hoja, las infaltables conclusiones personales, objetivas y las referencias bibliograficas.

Para poder seguirte ayudando, necesitas organizar tu proyecto, necesitas hacer bloques concretos de funcionamiento y como van conectados y porque. Si no sabes o no entiendes eso, es muy dificil que yo personalmente pueda seguir ayudandote, ya que no se que estabas pensando a la hora que hiciste cada parte y cada linea de código.

Orden, orden y mas orden.
 
ale_nevermind: Mirá, no entiendo muy bien lo que buscas concretamente.

Los diagramas que se usan para describir un código o proceso en materias con Informatica se los suele llamar, Diagramas de Flujo. Para esto tenés programas como el "Microsoft Visio". Donde tenés varias plantillas de Diagramas distintas (Según los datos a representar).

Al estudiar programación, se suele hacer el bosquejo de lo que hace el código, pero con diagramas. Pero si es muy extenso el código .. mm no creo que sea de mucha ayuda para explicar.

En tesis que he visto, se explica el funcionamiento, y el código se adjunta (No se explica paso por paso, o a lo sumo partes concretas).

Comenza por una buena "introducción" general .. y luego trata de dar un concepto de cada etapa. Hardware y luego Software .. y al final documentos adjuntos.

Bueno mucho más no puedo decir, todo depende del proyecto en cuestión..

Saludos!
 
ale_nevermind: Mirá, no entiendo muy bien lo que buscas concretamente.

Los diagramas que se usan para describir un código o proceso en materias con Informatica se los suele llamar, Diagramas de Flujo. Para esto tenés programas como el "Microsoft Visio". Donde tenés varias plantillas de Diagramas distintas (Según los datos a representar).

Al estudiar programación, se suele hacer el bosquejo de lo que hace el código, pero con diagramas. Pero si es muy extenso el código .. mm no creo que sea de mucha ayuda para explicar.

En tesis que he visto, se explica el funcionamiento, y el código se adjunta (No se explica paso por paso, o a lo sumo partes concretas).

Comenza por una buena "introducción" general .. y luego trata de dar un concepto de cada etapa. Hardware y luego Software .. y al final documentos adjuntos.

Bueno mucho más no puedo decir, todo depende del proyecto en cuestión..

Saludos!


Muchas gracias por la respuesta.

Uso los diagramos de flujo, de bloque, y ademas estos mismos los dibujo con visio... tal como indican... mi pregunta es como puedo describir de mejor forma toda la estructura completa del programa y del proyecto, y q tan especificos deben ser estos diagramas, anteriormente utilize la programacion de forma lineal como sucede en los micros, donde el programa empieza en un punto, y acaba en otro, o sino en una rutina infinita, y por otro lado tenemos alguna que otra interrupcion, donde suelo hacer un diagrama totalmente por separado.

En la parte de la programacion de VS C# es donde mas problemas tengo, de q partes debe constar la descripcion del programa, actualmente puedo hacerlo en texto por completo. Pero cuando hay tantos elementos en el programa resulta muy complejo explicar uno por uno con diagramas y la relacion q hay entre ellos, ya que como dije anteriormente uso muchas clases, objetos y sobre todo eventos.
 
Me gustaria si es que es posible me mandes o postees el sistema de monitoreo para poder compararlo estoy haciendo un proyecto para levantar imagnes con camaras de seguridad o camaras ip con pics o si alguien me puede ayudar con esto quisiera hacer un sistema de control de camaras con pics que muestre por pantalla las imagenes de distintas camaras.
La idea es que por pantallas salgan las imagenes de las cmaras en pantalla al mismo tiepo pero qie el pcs me permita decidir cual ver en un determinado momento. gracias necesito su ayuda.
 
En la parte de la programacion de VS C# es donde mas problemas tengo, de q partes debe constar la descripcion del programa, actualmente puedo hacerlo en texto por completo. Pero cuando hay tantos elementos en el programa resulta muy complejo explicar uno por uno con diagramas y la relacion q hay entre ellos, ya que como dije anteriormente uso muchas clases, objetos y sobre todo eventos.

Mirá, si querés documentar correctamente las cosas con las que estás teniendo problemas (lo que te marqué en negrita), tenés que empezar por saber como se diseña un programa utilizando Programación Orientada a Objetos, y uno de los pasos claves para eso es construir el modelo del programa.
Si no modelás el programa entonces estás escribiendo código por prueba y error (al boleo le decimos acá) y eso no solo va a provocar un código plagado de errores y difícil de modificar, sino que también te va a impedir documentarlo.
Lo que pusiste acá es una clara muestra de lo que te digo:
ale_nevermind dijo:
Vi alguna vez un diagrama que eran un circulos con flechas q volvian a si mismo, incluso en algunas materias de la parte informatica nos intentaban explcar con eso, pero no recuero muy bien como se los hace ni como se llaman, ya que solo los utilizamos en pocos ejemplos.
Eso que usaste en pocos ejemplos y que tiene circulos, cuadrados y flechas muy probablemente sea UML (Unified Modeling Languaje) y eso es precisamente lo que tenés que usar para modelar el sistema, ya que a la vez es autodocumentado.

NO HAY OTRA COSA UTIL para documentar sistemas informáticos que no sea el UML, aunque algunos "científicos" han ideado algunas metodología nuevas, pero lo que se usa y se exige en la industria es UML.

Conclusión: Estudiá UML, por que sin eso, no vas a ninguna parte.
 
Atrás
Arriba