Desarrollando Aplicaciones con el LabVIEW Statechart...
Transcript of Desarrollando Aplicaciones con el LabVIEW Statechart...
![Page 1: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/1.jpg)
Desarrollando Aplicaciones con el
LabVIEW Statechart Module
![Page 2: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/2.jpg)
Herramientas de Desarrollo de Alto Nivel
Flujo de Datos Código C Matemáticas Textuales Modelado
Diagramas de
Estado
Plataforma de Diseño Gráfico de Sistemas
MacintoshLinux® Windows Tiempo Real FPGA Micro
Plataforma de Escritorio Plataforma Embebida
Linux® is the registered trademark of Linus Torvalds in the U.S. and other
countries. Tux penguin is courtesy of Larry Ewing.
![Page 3: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/3.jpg)
¿Qué son los “Diagramas de Estado”?
Sistema
Entradas Salidas
“Diagramas de Estado” es una representación
visual de sistemas reactivos (basados en
eventos).
![Page 4: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/4.jpg)
Diferencias entre Diagramas de Estado y
Máquinas de Estados FinitosAmbos contienen los mismos conceptos
básicos:
� Estados
� Transiciones
Diagramas agregan más conceptos:� Jerarquía
� Concurrencia
� Paradigma basado en eventos
� Pseudoestados y conectores
BotBotóón Presionadon Presionado
HH
Basado en la especificación UML del Diagrama de Estados
![Page 5: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/5.jpg)
Sistemas Reactivos
• Sistemas de comunicaciones
• Protocolos digitales
• Aplicaciones de control
� Lógica secuencialMáquinas de Estado
� Procesamiento por lote
� Respuesta a eventos
� Control no lineal
• Implementación de interfaz de usuario
• Modelación de sistemas para prototipos virtuales
(simulación)
![Page 6: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/6.jpg)
Beneficios de Diagramas de Estados
• Abstracción
� Semántica simple para representar sistemas complejos
� Vista a nivel sistema
� Auto documentación
![Page 7: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/7.jpg)
Control de Máquinas y Procesos
concurrenciajerarquía
![Page 8: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/8.jpg)
Lógica FPGA
jerarquía
![Page 9: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/9.jpg)
Interfaces de UsuarioHistoria
![Page 10: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/10.jpg)
• Abstracción
� Semántica simple para representar sistemas complejos
� Vista a nivel sistema
� Auto documentación
• Escalabilidad
Beneficios de Diagrama de Estados
• Escalabilidad
� Aplicaciones fácilmente extendibles
� Plataforma de software abierta
• Generación Automática de Código
� Tecnología embebida de LabVIEW
![Page 11: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/11.jpg)
1. Construir el diagrama de
estados
2. Definir transiciones y
estados
Desarrollo con el Módulo LabVIEW Statechart
estados
3. Generar subVI de diagrama
de estados
4. Colocar en el diagrama de
bloques de LabVIEW
![Page 12: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/12.jpg)
Ejemplo – Ventilador
• Señales de
disparo
� Interruptor de
alimentación
� Interruptor de
ventilador
Power No Power
Ventilador Luz Ventilador Luz
AltoEncendido
ApagadoMedio
Bajoventilador
� Interruptor de luz
• Salidas
� Luz
� Velocidad de
ventilador
ApagadoBajo
ApagadoApagado
![Page 13: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/13.jpg)
Ejemplo – Ventilador• Señales de disparo
� Interruptor de
alimentación
� Interruptor de ventilador
� Interruptor de luz
Power No Power
Ventilador Luz Ventilador Luz
Encendido Encendido
Apagado
• Salidas
� Luz
� Velocidad de ventilador
• Datos Internos
� Velocidad de ventilador
Apagado
Apagado Apagado
![Page 14: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/14.jpg)
1. Construir Diagrama de Estados
![Page 15: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/15.jpg)
1. Construir Diagrama de Estados
![Page 16: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/16.jpg)
1. Construir Diagrama de Estados
![Page 17: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/17.jpg)
2. Definir Transiciones y Estados
• Cada transición contiene tres componentes
� Disparo – eventos que causan una transición
� Guardia – lógica que puede prevenir una transición
� Acción – que ocurre cuando se hace transición
Estado Actual– puerta cerrada
Disparo – timbre de la puerta
Guardia – ¿adulto en casa?
Acción – abrir puerta
Estado Nuevo – puerta abierta
Si el timbre suena y
un adulto esta en
casa, abrir la puerta.
![Page 18: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/18.jpg)
2. Definir Transiciones y Estados
• Cada transición contiene tres componentes
� Disparo – eventos que causan una transición
� Guardia – lógica que puede prevenir una transición
� Acción – que ocurre cuando se hace transición
• Cada estado contiene tres tipos de acciones
� Entrada – lo que sucede cuando llega
� Salida – lo que sucede cuando sale
� Estática – lo que sucede mientras está en él
![Page 19: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/19.jpg)
2. Definir Transiciones y EstadosDisparo-Guardia-Acción
Disparos
![Page 20: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/20.jpg)
2. Definir Transiciones y EstadosReacción estática Disparo-Guardia-Acción
Entradas Datos de Estado Salidas
![Page 21: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/21.jpg)
3. Construir SubVI de Diagrama de Estados
![Page 22: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/22.jpg)
4. Colocarlo en el Diagrama de Bloques de
LabVIEW
Uso asíncrono� Interfaz de Usuario� Interfaz de Usuario
� Manejo de interrupciones
� Modelado de sistemas
basados en eventos
![Page 23: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/23.jpg)
4. Colocarlo en el Diagrama de Bloques de
LabVIEW
Uso síncrono� Aplicaciones embebidas� Aplicaciones embebidas
� Protocolos de comunicación
� Implementaciones de control
![Page 24: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/24.jpg)
Ejecución del Diagrama de Estado
• Evaluar la lógica de disparo/guardia para
las transiciones que salen del estado actual
• En la primer transición válida:
� Ejecutar la(s) acción(es) de salida para
estado(s) actual(es)
� Ejecutar la acción de transición
� Ejecutar las acciones de entrada para todos los � Ejecutar las acciones de entrada para todos los
estados a los cuales se están cambiando
• Si no hay transiciones válidas:
� Evaluar la lógica disparo/guardia para todas las
reacciones estáticas configuradas para el estado
actual
� Ejecutar el código acción para todas las
reacciones válidas
![Page 25: Desarrollando Aplicaciones con el LabVIEW Statechart …download.ni.com/pub/branches/latam/nidays_2007/desarrollando... · Plataforma de Diseño Gráfico de Sistemas ... ¿adulto](https://reader031.fdocuments.net/reader031/viewer/2022030408/5a883f917f8b9afc5d8e529a/html5/thumbnails/25.jpg)
Siguiente paso?
• Visite ni.com/statechart
� Videos con demostraciones
� Documentos prácticos de diagramas de estado
� Notas técnicas de diagramas de estado con � Notas técnicas de diagramas de estado con
LabVIEW FPGA
� Pruebe el módulo de LabVIEW Statechart en línea
• Demostración de un Ingeniero de Campo local