Está en la página 1de 19

TRABAJO COLABORATIVO 2

GRUPO: 203037_14

EDGAR FRANCISCO RUALES CORDOBA, CÓDIGO: 1085244353


FREDDY CAÑAR, CODIGO: 102962990

MIGUEL ANGEL CORDOBA, CODIGO: 1061774870

MARIO FERNANDO PAREDES, CODIGO:

ANDREA ARGOTTY, CODIGO:

TUTOR: ALEXANDER FLOREZ

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD


INGENIERIA ELECTRONICA
SOFTWARE AVANZADO PARA INGENIERIA
ABRIL 2018
INTRODUCCION

En la siguiente actividad se realiza el desarrollo del trabajo colaborativo 2 donde


en su contenido se evidencian cada uno de los aportes realizados por los
integrantes del grupo, siguiendo las pautas planteadas en la guía de actividades,
como son los enlaces publicados individualmente de la creación de un juego de
dados desarrollado en el software labview, como también la socialización y
agrupación de la información obtenida gracias a la investigación para el
desarrollo del juego de parejas su algoritmo y desarrollo de la parte inicial de la
programación.
ENLACES DE LOS VIDEOS CREADOS POR CADA INTEGRANTE

MARIO FERNANDO https://www.youtube.com/watch?time_continue=8&v=jOc


PAREDES w4_43M-Q

ANDREA ARGOTY https://www.youtube.com/watch?v=gpP2yfrskEY

KIRMAN FREDDY https://www.youtube.com/watch?v=RmWQyobMK5M


CAÑAR

MIGUEL ANGEL https://www.youtube.com/watch?v=NwSppMLzGNQ&feat


CORDOBA ure=youtu.be
EDGAR RUALES https://youtu.be/lfwOe5_i7m0
INFORMACIÓN RECOPILADA

Una interfaz gráfica interactiva es un tipo de interfaz de usuario que permite a las personas
interactuar con la computadora (en este caso), por medio de íconos gráficos, indicadores
visuales y controles gráficos; todo esto en contraposición a una interfaz basada en texto.
Así, en las interfaces gráficas, las acciones se realizan generalmente por medio de la
manipulación directa de los elementos gráficos.

Con la llegada de las versiones estudiantiles de software para simulación, se inició el


interés en aplicar estas herramientas al proceso de enseñanza-aprendizaje. Es así como
los cursos de ingeniería electronica se han enriquecido con simulaciones por
computadora, al punto que casi todos los textos incorporan alguna forma de herramienta
computarizada. Las simulaciones han permitido las investigaciones del tipo ¿qué tal si?,
aún en situaciones donde el acceso a hardware o a experimentos, por una u otra razón,
son imprácticos o imposibles. Si bien las simulaciones fallan en lograr algunos de los
objetivos de las experiencias con hardware, las simulaciones presentan muchas más
alternativas poderosas a los ejemplos e ilustraciones estáticas, permitiendo además la
interacción con el sistema simulado, la evaluación de parámetros, la predicción de
comportamiento, etc.

Tales programas se han utilizado para crear aplicaciones que permiten modelar, simular,
animar y controlar sistemas en forma interactiva, y es allí donde se propone el uso de
LabVIEW, en particular, como herramienta para el desarrollo de módulos gráficos
aplicados a la enseñanza.

El contenido de los cursos de sistemas de comunicación es altamente teórico y


matemático, tendiendo a apoyarse su enseñanza en un modelo analítico. Sin embargo, se
ha observado (no con un método científico, sino de la experiencia) se sugiere el apoyo de
otros métodos como experimental, perceptivo, cognitivo y de comportamiento para elevar
el nivel de comprensión y aprendizaje de estos cursos. Un medio que brinda algunas de
las ventajas de estos últimos métodos es el de las interfaces gráficas para simulación y
animación propuestas aquí.

El componente de simulación / animación, es decir, los MGEs, está integrado


directamente en los cursos, principalmente de Comunicaciones I y Comunicaciones II
para Ingeniería, de forma quese pueda llevar a cabo un aprendizaje progresivo y
coordinado con el material de las clases. Los módulos que se están desarrollando incluyen
los siguientes temas genéricos: análisis de señales, modulación lineal de amplitud,
modulación exponencial de ángulo, desempeño de sistemas analógicos en presencia de
ruido, muestreo y codificación de pulso, principios de transmisión de datos digitales,
fundamentos de procesos aleatorios y ruido AWG, de modulación y detección de señales
banda base y de señales pasa banda, análisis de enlaces de comunicación, y codificación
de canal.
Interfaces gráficas:

En todo desarrollo de aplicaciones interactivas con una interfaz gráfica hay dos pasos
importantes: el diseño del panel frontal, y el diseño del propio proceso. El panel frontal,
o interfaz, es el punto de contacto entre el usuario y la computadora. Es lo que el usuario
ve y siente. El diseño del proceso se refiere a la creación del código mismo que es el que
permite la funcionalidad del programa incluyendo las interacciones con el usuario. Para
esto se deben considerar algunos conceptos y resultados del campo de la interacción
hombre-máquina (HCI – human computer interaction) [5].

El HCI es un campo multidisciplinario que combina la psicología cognitiva y las ciencias


computacionales. En general se puede decir que es una disciplina que trata con el diseño,
la evaluación y la implementación de sistemas computacionales interactivos y los
fenónemos que los rodean. Su objetivo es mejorar la capacidad humana de uso,
funcionalidad e interacción con las computadoras. Por lo tanto, es importante en el diseño
de los MGEs considerar algunas características humanas de sensación, percepción,
memoria, razonamiento, y aprendizaje.

Debemos recordar que los MGEs tienen dos fines principales: comunicación e
interactividad. Por eso, el proceso de diseño debe incluir la determinación del uso del
MGE y la audiencia o usuario del mismo. El diseño del panel frontal debe ser simple,
consistente, familiar con otros instrumentos ya conocidos, permitir la recuperación o
acciones reversibles, y una respuesta inmediata. La parte gráfica debe tener una alto
contraste, espacios vacíos y mostrar organización.

El diseño del proceso, es decir, el desarrollo del código, dependerá del software de
aplicación que se utilice. En este caso, LabVIEW es una plataforma de programación
gráfica y para ello se utiliza lo que se conoce como diagrama de bloques. Es aquí donde
se procesan las señales y datos tanto provenientes del panel frontal como de otras fuentes
(tarjetas de adquisición de datos, etc.) y se muestran resultados o se toman acciones en
dispositivos de entrada / salida.

Los programas de LabVIEW se denominan instrumentos virtuales (VIs), por su


apariencia y operación que imita los instrumentos físicos, tales como osciloscopios o
multímetros. Para la creación de los VIs, se provee un conjunto extenso de herramientas
y funciones para adquirir, analizar, mostrar y almacenar datos, así como herramientas
para escribir y depurar el código [6].

Los VIs contienen tres componentes principales: el panel frontal, el diagrama de bloques
y el panel de conectores o ícono.Como ya se ha indicado, el panel frontal es la interfaz de
usuario, y para crearlo se utilizan controles e indicadores. El diagrama de bloques es la
ventana que contiene el código fuente, el cual es un lenguaje gráfico. Y finalmente, el
panel de conexión se utiliza cuando se quiere usar un VI como un subVI dentro de otro
VI (en forma equivalente a un subprograma o función) y se necesitan especificar las
terminales de entrada y salida para intercambiar datos.

Los Beneficios de la Programación Gráfica en LabVIEW

Visión General

Durante más de 20 años, NI LabVIEW se ha utilizado por millones de ingenieros y


científicos para desarrollar test sofisticados y aplicaciones de medida y control. Además
de que LabVIEW provee de una variada gama de características y herramientas de
asistentes e interfaces de usuario configurables, se diferencia por ser un lenguaje de
programación gráfico de propósito general (conocido como G), con su compilador
asociado, su enlazador, y herramientas de depuración.

LabVIEW: Programación gráfica de flujo de datos

LabVIEW es diferente de la mayoría de lenguajes de propósito general principalmente en


dos vertientes. Primero, la programación G se desarrolla cableando iconos gráficos en un
diagrama que compila directamente a código máquina de modo que los procesadores del
ordenador pueden ejecutarlo. Aunque se representa gráficamente en lugar de texto, G
contiene los mismos conceptos de programación que se pueden encontrar en la mayoría
de los lenguajes tradicionales. Por ejemplo, G incluye todas las construcciones estándar
tales como tipos de datos, ciclos, eventos, variables, recursividad y programación
orientada a objetos.
Figura 1. Un ciclo While en G se representa por un lazo gráfico que se ejecuta hasta que
se cumple una condición de parada.

El segundo diferenciador principal es que el código G desarrollado en LabVIEW se


ejecuta de acuerdo con las reglas del flujo de datos en lugar del acercamiento más
tradicional (en otros términos, una serie secuencial de comandos para ser llevados a cabo)
que se encuentran en la mayoría de los lenguajes de programación basados en texto como
C y C++. Los lenguajes de flujo de datos como G (también VEE de Agilent, Microsoft
Visual y Apple Quartz Composer) promueven los datos como concepto principal detrás
de cualquier programa. La ejecución de un datagrama es dirigida por el dato o dependiente
del mismo. El flujo de datos entre los nodos del programa, líneas no secuenciales de texto,
determina el orden de ejecución.

Esta distinción puede ser menor a priori, pero el impacto es extraordinario ya que presenta
rutas de datos entre partes del programa para ser el centro de atención del desarrollador.
Los nodos en un programa de LabVIEW (en otras palabras, funciones y estructuras como
ciclos y subrutinas) tienen entradas, procesan datos y generan salidas. Una vez que todas
las entradas de los nodos dados contienen un dato válido, el nodo ejecuta su lógica,
produce datos de salida y pasa los datos al siguiente nodo en la secuencia del flujo de
datos. Un nodo que recibe datos de otro, se puede ejecutar solo después de que el primero
complete su ejecución.

Beneficios de la programación G:

Programación gráfica intuitiva:

Como todo el mundo, los ingenieros y científicos aprenden observando y procesando


imágenes sin necesidad de pensamiento consciente. Se denominan “pensadores visuales”,
ya que son especialmente adeptos a organizar información con procesamiento visual. En
otras palabras, piensan mejor en imágenes. Esto se refuerza a menudo en facultades y
universidades donde se anima a los estudiantes a modelar soluciones a problemas como
diagramas de proceso. Sin embargo, la mayoría de los lenguajes de programación de
propósito general requieren el empleo de cantidades ingentes de tiempo en aprender la
sintaxis necesaria asociada con el lenguaje y mapear la estructura del mismo al problema
a solventar. La programación gráfica con G provee de una experiencia más intuitiva.

El código G es más sencillo de entender por ingenieros y científicos porque están


familiarizados con la visualización y la modelización gráfica de procesos y tareas en
términos de diagramas de bloque y diagramas de flujo (que siguen también las reglas del
flujo de datos). Además, ya que los lenguajes de flujo de datos requieren basar la
estructura del programa en el propio flujo, a usted se le anima a pensar en términos del
problema que quiere solucionar. Por ejemplo, y programa típico en G puede adquirir, en
primer lugar, de varios canales de datos de temperatura, después pasarlos a una función
de análisis y finalmente escribirlos a disco. En conjunto, el flujo de datos y los pasos
involucrados en este programa son sencillos de comprender en el diagrama de LabVIEW.
Figura 2. Los datos se originan en la función de adquisición y luego fluyen a las funciones
de análisis y almacenamiento a través de los cables.

Información recopilada de http://www.ni.com/white-paper/14556/es/

Tipo de Dato Cadena de Caracteres

Una cadena es una secuencia de caracteres ASCII visibles o no visibles. Las cadenas de
caracteres ofrecen un formato independiente a la plataforma para información y datos.
Algunas de las aplicaciones más comunes de cadena de caracteres incluyen las siguientes:
-Crear mensajes de texto simples.
-Controlar instrumentos al enviar comandos de texto al instrumento y regresar valores de
datos en la forma de ASCII o cadena de caracteres binarias, las cuales después puede
convertir en valores numéricos.
-Almacenar datos numéricos a disco. Para almacenar datos numéricos en un archivo
ASCII, primero debe convertir datos numéricos en cadena de caracteres antes de escribir
a un archivo de disco.
-Instruir o advertir al usuario con ventanas de diálogo.
En el panel frontal, las cadenas de caracteres aparecen como tabla, cuadros de texto y
etiquetas. LabVIEW incluye VIs integrados y funciones que puede usar para manipular
secuencias, incluyendo formateo de cadena de caracteres, análisis de cadena de caracteres
y otras ediciones. LabVIEW representa datos de cadena de caracteres en color rosa.
Tipo de Dato Numérico
LabVIEW representa datos numéricos como números de punto flotante, números de
punto fijo, números enteros, números enteros sin signo y números complejos. Precisión
doble o simple, así como datos numéricos complejos son representados con el color
naranja en LabVIEW. Todos los datos numéricos enteros son representados con el color
azul.
Nota: La diferencia entre los tipos de datos numéricos es el número de bits que usan para
almacenar datos y los valores de datos que representan.
Ciertos tipos de datos también ofrecen opciones de configuración extendida. Por ejemplo,
puede asociar unidades físicas de medida con datos de punto flotante, incluyendo
números complejos y usted puede configurar la codificación y rango para datos de punto
fijo.
Tipo de Dato Booleano

LabVIEW almacena datos Booleanos como valores de 8 bits. Un Booleano puede ser
usado en LabVIEW para representar un 0 o 1 o un TRUE o FALSE. Si el valor de 18 bits
es cero, el valor Booleano es FALSE. Cualquier valor no igual a cero representa TRUE.
Las aplicaciones comunes para datos Booleanos incluyen representar datos digitales y
servir como un control de panel frontal que actúa como un conmutador que tiene una
acción mecánica generalmente usada para controlar una estructura de ejecución como una
estructura de Caso. Un control Booleano generalmente es usado como la declaración
condicional para terminar un Ciclo While. En LabVIEW el color verde representa datos
Booleanos.

Tipo de Dato Dinámico

La mayoría de los Express VIs aceptan y/o regresan tipos de datos dinámicos, los cuales
aparecen como una terminal de color azul obscuro.
Al usar los Convert to Dynamic Data y Convert from Dynamic Data VIs, usted puede
convertir datos Booleanos o numéricos de punto flotante de los siguientes tipos de datos:
-Arreglo 1D de forma de onda
-Arreglo 1D de escalares
-Arreglo 1D de escalares – valor más reciente
-Arreglo 1D de escalares – un solo canal
-Arreglo 2D de escalares – columnas son canales
-Arreglo 2D de escalares – filas son canales
-Un solo escalar
-Una sola forma de onda
Cablear el tipo de datos dinámicos a un indicador que puede presentar mejor los datos.
Los indicadores incluyen una gráfica, tabla o numérico o indicador Booleano. Sin
embargo, ya que los datos dinámicos experimentan una conversión automática para
igualar al indicador al cual están cableados, los Express VIs pueden bajar la velocidad de
ejecución del diagrama de bloques.
El tipo de datos dinámico es para uso con Express VIs. La mayoría de los VIs y funciones
que se venden con LabVIEW no aceptan este tipo de datos. Para usar una función o VI
integrada para analizar o procesar los datos que incluye el tipo de datos dinámico, debe
convertir el tipo de datos dinámico.
Estructuras de Datos en LabVIEW

Algunas veces es benéfico agrupar datos relacionados entre sí. Use arreglos y clusters
para agrupar datos relacionados en LabVIEW. Los arreglos combinan el mismo tipo de
datos en una estructura de datos y los clusters combinan datos de múltiples tipos de datos
en una estructura de datos.
Arreglos
Un arreglo consiste de elementos y dimensiones. Los elementos son los datos que
componen el arreglo. Una dimensión es la longitud, altura o profundidad de un arreglo.
Un arreglo puede tener una o más dimensiones y tantos como (231) – 1 elemento por
dimensión, si la memoria lo permite.

Puede construir arreglos de tipos de datos numéricos, Booleano, paths, cadena de


caracteres, forma de onda y cluster. Considere usar arreglos cuando trabaje con una
colección de datos similares y cuando realice cálculos repetitivos. Los arreglos son ideales
para almacenar datos que colecta desde formas de onda o datos generados en ciclos, donde
cada iteración de un ciclo produce un elemento del arreglo.

Nota: Los índices de arreglo en LabVIEW están basados en cero. El índice del primer
elemento en el arreglo, sin importar su dimensión, es cero.

Los elementos del arreglo son ordenados. Un arreglo utiliza un índice, así usted puede
tener acceso fácilmente a cualquier elemento en particular. El índice está basado en cero,
lo cual significa que está en el rango de 0 a n – 1, donde n es el número de los elementos
en el arreglo. Por ejemplo, n = 12 para los doce meses del año, así el índice va de 0 a 11.
Marzo es el tercer mes, así que tiene un índice de 2.
La Figura 1 muestra un ejemplo de un arreglo de numéricos. El primer elemento que se
muestra en el arreglo (3.00) está en el índice 1 y el segundo elemento (1.00) está en el
índice 2. El elemento en el índice 0 no se muestra en esta imagen, porque el elemento 1
está seleccionado en la imagen del índice. El elemento seleccionado en la imagen del
índice siempre se refiere al elemento que se muestra en la parte superior izquierda de la
imagen del elemento.

Figura 1. Imagen del Índice de Arreglo, Arreglo del Control Numérico


Crear Controles e Indicadores tipo Arreglo

Cree un control o indicador tipo arreglo en el panel frontal al añadir una estructura de
arreglo al panel frontal, como se muestra en la Figura 2 y arrastrar un objeto de datos o
elemento, como un control numérico o de cadena de caracteres, a la estructura del arreglo.
Figura 2. Colocar un Control Numérico en una Estructura de Arreglo
Si intenta arrastrar un control inválido o indicador en la estructura del arreglo, no podrá
colocar el control o indicador en la estructura del arreglo.

Debe insertar un objeto en la estructura del arreglo antes de usar el arreglo en el diagrama
de bloques. De lo contrario, la terminal del arreglo aparece en negro con un paréntesis
vacío y no tiene tipo de datos asociado.
Arreglo en 2D
Los ejemplos anteriores usan arreglos en 1D. Un arreglo en 2D almacena elementos en
una cuadrícula. Requiere un índice de columna y un índice de fila para ubicar un
elemento, ambos basados en cero. La Figura 3 muestra un arreglo en 2D de 8 columnas
por 8 filas, el cual contiene 8 × 8 = 64 elementos.

Figura 3. Arreglo en 2D

Para añadir un arreglo multidimensional al panel frontal, haga clic con botón derecho en
la imagen del índice y seleccione Add Dimension desde el menú de acceso directo.
También puede cambiar el tamaño de la imagen índice del arreglo hasta que obtenga la
cantidad de dimensiones que desea.
Iniciar Arreglos
Puede iniciar un arreglo o dejarlo sin inicializar. Cuando un arreglo es iniciado, usted
define el número de elementos en cada dimensión y el contenido de cada elemento. Un
arreglo sin inicializar contiene un número fijo de dimensiones pero no elementos. La
Figura 4 muestra un control arreglo en 2D sin configurar. Note que todos los elementos
están atenuados. Esto indica que el arreglo no está configurado.
Figura 4. Arreglo en 2D sin Configurar
En la Figura 5, seis elementos son iniciados. En un arreglo en 2D, después de que inició
un elemento en una fila, los elementos restantes en esa fila son iniciados y aparecen con
el valor predeterminado para el tipo de datos. Por ejemplo, en la Figura 5, si proporciona
4 en el elemento en la primera columna, tercera fila, los elementos en la segunda y tercera
columna en la tercera fila aparecen automáticamente con un 0.

Figura 5. Un Arreglo en 2D Iniciado con Seis Elementos

Crear Constantes tipo Arreglo


Para crear una constante del arreglo en el diagrama de bloques, seleccione una Array
Constant en la paleta Funciones, coloque la estructura del arreglo en el diagrama de
bloques y coloque una constante de cadena de caracteres, constante numérica, constante
Booleano o constante cluster en la estructura del arreglo. Puede usar una constante de
arreglo para almacenar datos constantes o como un punto de comparación con otros
arreglos.
Regresar al inicio
Usar Arreglos con Ciclos

Entradas de Arreglo Auto-indexing


Si cablea un arreglo a o desde un Ciclo For o Ciclo While, puede enlazar cada iteración
del ciclo a un elemento en ese arreglo al habilitar auto-indexing La imagen de túnel
cambia de ser un cuadrado sólido a la imagen para indicar auto-indexing. Haga clic con
botón derecho en el túnel y seleccione Enable Indexing o Disable Indexing desde el menú
de acceso directo para modificar el estado del túnel.

Entradas de Arreglo
Si habilita auto-indexing en un arreglo cableado a una terminal de entrada de Ciclo For,
LabVIEW establece la terminal de conteo al tamaño del arreglo para que no tenga que
cablear la terminal de conteo. Ya que puede usar Ciclos For para procesar los arreglos de
un elemento al mismo tiempo, LabVIEW habilita auto-indexing de forma predeterminada
para cada arreglo que cablee a un Ciclo For. Puede deshabilitar auto-indexing si no
necesita procesar arreglos de un elemento a la vez.

En la Figura 6, el Ciclo For se ejecuta un número de veces igual al número de elementos


en el arreglo. Normalmente, si la terminal Loop Count del Ciclo For no está cableada, el
botón de ejecución esta roto. Sin embargo, en este caso el botón Run Arrow no aparece
roto.

Figura 6. Arreglo Usado para Establecer Conteo de Ciclo For

Si habilita auto-indexing para más de un túnel o si cablea la terminal de conteo, el número


actual de iteraciones se ejecuta la opción menor. Por ejemplo, si dos arreglos de auto-
indexing entran en el ciclo, con 10 o 20 elementos respectivamente y cablea un valor de
15 a la terminal de conteo, el ciclo solamente se ejecuta 10 veces, incluyendo todos los
elementos del primer arreglo pero solamente los primeros 10 del segundo arreglo.
Salidas de Arreglo
Cuando aplica auto-indexing a un túnel de salida de arreglo, el arreglo de salida recibe un
nuevo elemento desde cada iteración del ciclo. Por lo tanto, los arreglos de salida de auto-
indexing son siempre iguales en tamaño al número de iteraciones. El cable desde el túnel
de salida al indicador del arreglo se vuelve más grueso conforme cambia a un arreglo en
el borde del ciclo y el túnel de salida contiene paréntesis cuadrados representando un
arreglo.
Figura 7. Salida de Auto-Indexing
Haga clic con botón derecho en el túnel en el borde del ciclo y seleccione Enable
Indexing o Disable Indexing desde el menú de acceso directo para activar o desactivar
auto-indexing. Auto-indexing para los Ciclos While están deshabilitados de forma
predeterminada. Por ejemplo, deshabilite auto-indexing si solamente necesita el último
valor que pasó por el túnel.
ALGORITMO DE JUEGO DE PAREJAS
Pseudocódigo:

La entrada la escoge el jugador y determina la cantidad de parejas a jugar.

Lee y valida y verifique si el número es mayor e igual a 10, si la condición se cumple el


ciclo continua, si la condición no se cumple el ciclo se detiene.

Lea este número y lo divida en dos

Convierta este número en una serie de números consecutivos (de acuerdo al número
ingresado)

Realice a cada número de esta lista otro igual (realizar pares de este mismo número hasta
llegar a la cantidad que digito el usuario)

Los números a mostrar son números de tipo enteros.

Mostrar la misma cantidad de cartas que el número digitado por el usuario, que cada carta
muestre un número (el numero tiene que repetirse en otra carta)

Diseñar una condición la cual permita que se giren las cartas, al momento que se giren
comparar los números mostrados y ver si son iguales, si son iguales guardarlos y contarlo
como un acierto, guardar este dato en un contador

Si no son iguales comparar y volver a dejarlas a revés para que el jugador intente
nuevamente.

Al completar todas las cartas y dejarlas descubiertas terminar el juego

La puntuación debe ser calificada por la cantidad de intentos realizados y el tiempo


utilizado, el tiempo no va a tener límite, la condición será a más tiempo y más intentos
menor puntuación.
PRIMERA INTERFAZ O PANEL FRONTAL QUE TENDRÁ LA SOLUCIÓN
AL PROBLEMA

También podría gustarte