Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Integrantes:
o Huaman Acuña, Yhan pier
o Muñante Morales, Rogger
o Barraza Clares, Marco
Profesor:
Mendoza Ramírez, Jorge
2023-II
Programación Aplicada a la Industria
Índice
INTRODUCCIÓN ............................................................................................................ 3
OBJETIVOS ..................................................................................................................... 5
DISEÑO ........................................................................................................................... 5
PROCEDIMIENTO ......................................................................................................... 6
EJERCICIO 1 ............................................................................................................... 6
EJERCICIO 2 ............................................................................................................. 14
CONCLUSIONES .......................................................................................................... 17
RECOMENDACIONES ................................................................................................ 17
OBSERVACIONES ....................................................................................................... 17
REFERENCIAS ............................................................................................................. 18
2
Programación Aplicada a la Industria
INTRODUCCIÓN
El patrón de diseño productor/consumidor se basa en el patrón maestro/esclavo y está
diseñado para mejorar el intercambio de datos entre múltiples ciclos que se ejecutan a
diferentes velocidades. El patrón productor/consumidor se utiliza para separar procesos
que producen y consumen datos a diferentes velocidades. Los ciclos paralelos del patrón
productor/consumidor se dividen en dos categorías; los que producen datos y los que
consumen los datos producidos.
COMUNICACIÓN EN BÚFER
Por ejemplo:
considere que una aplicación tiene dos procesos; el primer proceso realiza la adquisición
de datos y el segundo proceso toma esos datos y los coloca en una red. El primer proceso
opera a tres veces la velocidad del segundo proceso. Si se utiliza el patrón de diseño
productor/consumidor para implementar esta aplicación, el proceso de adquisición de
datos actuará como productor y el proceso de red como consumidor. Con una cola de
comunicación (búfer) suficientemente grande, el proceso de red tendrá acceso a una gran
cantidad de datos que adquiere el ciclo de adquisición. Esta capacidad de almacenar datos
en búfer minimizará la pérdida de datos.
3
Programación Aplicada a la Industria
Supongamos que desea escribir una aplicación que acepte datos mientras los procesa en
el orden en que se recibieron. Debido a que poner en cola (producir) estos datos son
mucho más rápido que el procesamiento actual (consumir), el patrón de diseño
productor/consumidor es el más adecuado para esta aplicación. Esto permitirá que el ciclo
consumidor procese los datos a su propio ritmo, permitiendo que el ciclo productor ponga
en cola datos adicionales al mismo tiempo.
COMUNICACIÓN EN RED
La comunicación en red requiere dos procesos para operar al mismo tiempo y a diferentes
velocidades: el primer proceso sondearía constantemente la línea de la red y recuperaría
paquetes, y el segundo proceso tomaría estos paquetes recuperados por el primer proceso
y los analizaría. En este ejemplo, el primer proceso actuará como productor porque está
proporcionando datos al segundo proceso, que actuará como consumidor. Esta aplicación
se beneficiaría del uso del patrón de diseño productor/consumidor. Los ciclos paralelos
de productor y consumidor manejarán la recuperación y el análisis de datos fuera de la
red, y la comunicación en cola entre los dos permitirá el almacenamiento en búfer de los
paquetes de red recuperados. Este almacenamiento en búfer se volverá muy importante
cuando la comunicación en red esté ocupada. Con el almacenamiento en búfer, los
paquetes se pueden recuperar y comunicar más rápido de lo que se pueden analizar.
4
Programación Aplicada a la Industria
OBJETIVOS
Utilizar la plantilla Productor/Consumidor (Evento) para crear una consola de cola de
impresión que envíe trabajos a una impresora y monitorice la cola de impresión.
DISEÑO
Los controles y los enums de definición de tipo necesarios para este proyecto ya están
creados. Su tarea es utilizar la plantilla del patrón de diseño Productor/Consumidor que
incluye LabVIEW para crear el VI de consola de impresión. La tabla 3-1 muestra los
controles e indicadores utilizados en el panel frontal del VI de consola de impresión.
Tabla 1.
Controles/Indicadores y descripciones del panel frontal
5
Programación Aplicada a la Industria
PROCEDIMIENTO
EJERCICIO 1
Slide: Este componente es una regla de posicionamiento, lo que permite mover un objeto
en un rango determinado.
Gauge: Esta etiqueta indica una brújula, que es un instrumento que mide la cantidad de
algo en una escala. En este caso, parece ser una medida de los fondos disponibles.
DBL: Estas etiquetas indican valores numéricos dobles. En este caso, parecen ser
cantidades.
STOP: Esta etiqueta indica una señal de detención, que es una señal que detiene la
ejecución de un proceso.
6
Programación Aplicada a la Industria
Figura 1
En el caso del panel frontal, la barra de estado muestra varios indicadores de estado, como
la memoria usada (5039 bytes). Además, también se muestra una barra de desplazamiento
horizontal que indica el nivel de uso de los recursos del sistema.
En el caro de “a” y “b” es una multiplicación asi como vemos en la imagen mostrada
cuando “a” es 2 y “b” es 2 es una multiplicación que se vera reflejada en el Gauge que da
4 asi mismo para otras multiplicaciones.
7
Programación Aplicada a la Industria
Figura 2
Figura 3
8
Programación Aplicada a la Industria
Figura 4
Figura 5
Ventana de stop
9
Programación Aplicada a la Industria
En la sección "Editar Eventos", se puede ver una lista de eventos existentes. Para agregar
un nuevo evento, haga clic en el botón "+" y seleccione un evento en la lista desplegable.
Figura 6
Editar evento
10
Programación Aplicada a la Industria
Figura 7
Cuando ocurre el evento específico (por ejemplo, una intrusión), el registro de eventos se
actualiza con el evento y se envía una señal a la salida de tiempo del LIN para que se
inicie la secuencia de tiempo.
Este ejercicio ilustra cómo un sistema puede utilizar un registro de eventos y una
secuencia de tiempo para responder a eventos específicos y programar acciones en el
futuro
11
Programación Aplicada a la Industria
Figura 8
Comportamiento de un dispositivo.
La fuente de tiempo (TIM) genera señales de tiempo que se utilizan para marcar la
duración de la medición de datos de velocidad (DAQ).
La alarma también activa la señal de evento stop_daq, que se utiliza para detener la
medición de datos de velocidad (DAQ).
12
Programación Aplicada a la Industria
Figura 9
Diagrama de bloque
En esta imagen vemos un Knob lo cual nos va indicar una máxima velocidad que seria 8
lo cual indican en el Knob.
En numeric sería el número de veces que se va realizar la operación de Knob esto nos
va indicar cuantas veces se realizo
13
Programación Aplicada a la Industria
Figura 10
EJERCICIO 2
14
Programación Aplicada a la Industria
Estos son los 4 elementos principales del programa, en este caso solo necesitamos uno de
ellos para generar el bucle de gestión de colas, pero crearemos dos bucles, uno para
transferir datos de tipo DBL y otro para transferir cosas de tipo booleano
15
Programación Aplicada a la Industria
Primero creamos tipos de variables que tendrán administración de colas, una parte
booleana y otra DBL, podemos crearlas todas usando get queue elementos, luego creamos
un registro de desplazamiento con dos While y otro while sin registro de desplazamiento,
uno de ellos se llama productor while y otro consumidor. Esto se debe a que el productor
while tiene un elemento de fila, mientras que el consumidor tiene un elemento de fila. La
propiedad del elemento Enqueue es agregar elementos o datos a la cola creada, luego
almacenarlos mientras están en la memoria y pasarlos al elemento de la cola. El elemento
en cola es responsable de recuperar elementos y luego "eliminarlos", contando así y luego
continuando leyendo. Guion. En realidad, no se elimina, sino que se reemplaza, pero
según el método FIFO (primero en entrar, primero en salir).
16
Programación Aplicada a la Industria
CONCLUSIONES
• Se destaca la importancia de los componentes y etiquetas mencionados para
garantizar un control preciso y eficiente del sistema, lo cual es crucial para el
funcionamiento correcto de la aplicación.
• El texto muestra una evolución en el enfoque de programación, desde la
programación convencional hasta la propuesta de utilizar programación basada en
eventos. Esto sugiere una adaptación a prácticas más avanzadas y eficientes en el
desarrollo de software.
• La introducción de la Event Structure y su aplicación en la simulación de un
dispositivo proporciona una visión práctica de cómo se pueden utilizar conceptos
avanzados en situaciones del mundo real para mejorar el rendimiento y la
respuesta del sistema
RECOMENDACIONES
• Aunque se proporciona información detallada, algunas secciones podrían
beneficiarse de una redacción más clara y concisa. Esto ayudará a mejorar la
comprensión, especialmente para aquellos menos familiarizados con la
terminología técnica.
• La inclusión de ejemplos prácticos adicionales aumenta la comprensión de los
conceptos propuestos. Por ejemplo, brinde ejemplos específicos de cómo se
utilizan las etiquetas y los componentes en situaciones del mundo real.
• A medida que se introduzcan conceptos avanzados como la programación
orientada a eventos y las estructuras de eventos, explicaciones más detalladas y
ejemplos adicionales ayudarán a los lectores a comprender mejor sus usos y
beneficios.
OBSERVACIONES
• El texto explica en detalle los distintos elementos (como deslizadores, contadores,
TF, DBL y STOP) y sus funciones en el sistema. Se enfatiza la importancia de
estos componentes para garantizar un control preciso del sistema.
17
Programación Aplicada a la Industria
REFERENCIAS
• Sitio web de National Instruments (NI): https://www.ni.com/
Documentación de LabVIEW en línea: https://www.ni.com/documentation/es/
18