User Events in LabVIEW RT

Slides:



Advertisements
Similar presentations
Real Time Versions of Linux Operating System Present by Tr n Duy Th nh Quách Phát Tài 1.
Advertisements

© 2007 Eaton Corporation. All rights reserved. LabVIEW State Machine Architectures Presented By Scott Sirrine Eaton Corporation.
Categories of I/O Devices
Using MapuSoft Instead of OS Vendor’s Simulators.
COM vs. CORBA.
TCP/IP MODEL Maninder Kaur
An Overview of Data Communication in LabVIEW
Developing User Interfaces with Event-driven Programming
MotoHawk Training Model-Based Design of Embedded Systems.
Application Design Patterns in LabVIEW™
Chapter 7 Protocol Software On A Conventional Processor.
MIGSOCK Migratable TCP Socket in Linux Demonstration of Functionality Karthik Rajan Bryan Kuntz.
Multiprocessors ELEC 6200: Computer Architecture and Design Instructor : Agrawal Name: Nam.
Department of Electrical and Computer Engineering Texas A&M University College Station, TX Abstract 4-Level Elevator Controller Lessons Learned.
© Lethbridge/Laganière 2001 Chap. 3: Basing Development on Reusable Technology 1 Let’s get started. Let’s start by selecting an architecture from among.
CROSSBAR LAN TEAM 8 CURTIS PETE D. ERIC ANDERSON DANIEL HYINK JOHN MUFARRIGE.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
VSP Video Station Protocol Presented by : Mittelman Dana Ben-Hamo Revital Ariel Tal Instructor : Sela Guy Presented by : Mittelman Dana Ben-Hamo Revital.
NetComm Wireless SMS Forwarding Feature Spotlight.
LabView Users Group Meeting June 20 th, 2006 Process Control Using Compact Field Point/Labview Real-time Michael Tockstein Microelectronics Technology.
New Features of APV-SRS-LabVIEW Data Acquisition Program Eraldo Oliveri on behalf of Riccardo de Asmundis INFN Napoli [Certified LabVIEW Developer] NYC,
1 Input/Output. 2 Principles of I/O Hardware Some typical device, network, and data base rates.
LSU 10/22/2004Serial I/O1 Programming Unit, Lecture 5.
1 Albert Ferrer-Florit, Steve Parkes Space Technology Centre University of Dundee QoS for SpaceWire networks SpW-RT prototyping.
1 Chapter Client-Server Interaction. 2 Functionality  Transport layer and layers below  Basic communication  Reliability  Application layer.
Remote Control of a Furby Toy with Bluetooth
CINEMA’s UbiComp Subsystem Stefan Berger and Henning Schulzrinne Department of Computer Science Columbia University
ITEC 502 컴퓨터 시스템 및 실습 Chapter 8-1: I/O Management Mi-Jung Choi DPNM Lab. Dept. of CSE, POSTECH.
Chapter 7 Low-Level Protocols
BLU-ICE and the Distributed Control System Constraints for Software Development Strategies Timothy M. McPhillips Stanford Synchrotron Radiation Laboratory.
Vassil Roussev 2 A socket is the basic remote communication abstraction provided by the OS to processes. controlled by operating system.
Κώστας Γρηγορίου Sales Engineer Ιούνιος 26, 2007 Connect Your Serial Device to Ethernet ADAM – 4570 / 71 / 77 / 79.
Making LabVIEW look like an IOC Kay-Uwe Kasemir, LANL May 2002.
Lecture 3 Process Concepts. What is a Process? A process is the dynamic execution context of an executing program. Several processes may run concurrently,
Frontiers in Massive Data Analysis Chapter 3.  Difficult to include data from multiple sources  Each organization develops a unique way of representing.
Lab 2: TCP /IP communication Southern Methodist University Bryan Rodriguez.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
Prepared by: Azara Prakash L.. Contents:-  Data Transmission  Introduction  Socket Description  Data Flow Diagram  Module Design Specification.
An Architecture to Support Context-Aware Applications
Advanced LabVIEW Topics Dustin Cruise. Who is this guy? Graduate Student in Mechanical Engineering at Purdue University Specialty Areas: Combustion Control.
Connecting EPICS with Easily Reconfigurable I/O Hardware EPICS Collaboration Meeting Fall 2011.
1. LabVIEW and EPICS Workshop EPICS Collaboration Meeting Fall 2011.
Anritsu Automation Platform (AAP) AAP PC Connects to the system via IP connection (system switch) AAP was developed to add features that were requested.
Ryan Rasmussen Maggie Krause Jiajun Yang. Hardware Progress Mechanical assembly complete Received APM case and power module last week Connected wi-fi.
Connecting LabVIEW to EPICS network
Computer Communication: An example What happens when I click on
Voice Over Internet Protocol (VoIP) Copyright © 2006 Heathkit Company, Inc. All Rights Reserved Presentation 5 – VoIP and the OSI Model.
Slide 1 2/22/2016 Policy-Based Management With SNMP SNMPCONF Working Group - Interim Meeting May 2000 Jon Saperia.
4000 Imaje 4020 – Software Imaje 4020 – Content ■ Content of Chapter Software: 1. Flash Up 2. Netcenter 3. FTP 4. Active X 5. XCL commands 6. Exercise.
LonWorks Introduction Hwayoung Chae.
Chapter 4: server services. The Complete Guide to Linux System Administration2 Objectives Configure network interfaces using command- line and graphical.
OPERATING SYSTEM REVIEW. System Software The programs that control and maintain the operation of the computer and its devices The two parts of system.
Wednesday NI Vision Sessions
Using COTS Hardware with EPICS Through LabVIEW – A Status Report EPICS Collaboration Meeting Fall 2011.
Distributed Systems1 Socket API  The socket API is an Interprocess Communication (IPC) programming interface originally provided as part of the Berkeley.
What does LinkConnect do?
National Centre for Nuclear Research, Poland
Current Generation Hypervisor Type 1 Type 2.
Data Transport for Online & Offline Processing
MCA – 405 Elective –I (A) Java Programming & Technology
LabVIEW EPICS Client I/O Server
CS703 - Advanced Operating Systems
Chapter 3: Windows7 Part 4.
Measurement & Automation Explorer
Serial Data Hub (Proj Dec13-13).
Go4 CHEP 2001 Multithreaded Inter-Task Communication with ROOT -
LabVIEW Performance Issues David Thomson Droplet Measurement Technologies May 20, 2010 Droplet Measurement Technologies, 2545 Central Avenue, Boulder,
Time Gathering Systems Secure Data Collection for IBM System i Server
QlikView for use with SAP Netweaver Version 5.8 New Features
Presentation transcript:

User Events in LabVIEW RT Colorado ALARM User Group 17 November 2011 STEVE SOLGA | ELECTROMECHA LLC

Event Structure under LabVIEW RT RT TARGETS ONLY SUPPORT USER EVENTS Event structures on RT targets do not support events associated with user interface objects, such as VI panels or controls (i.e. no Value Change or Mouse Down type events) The options for associating the Value Change event with a control still exist in LabVIEW RT but they have no effect

Inter-Process Communication Mechanism AN ALTERNATIVE RT COMMUNICATION MECHANISM User Events in LabVIEW RT are another way to communication between parallel processes More common communication mechanisms include Queues, RT-FIFO’s, and Shared Variables RT SOFTWARE STANDARD METHODS ALTERNATIVE METHOD

Moving from Windows UE’s to RT UE’s MULTIPLE TASK (MULTIPLE CONTROL LOOP) COMMUNICATION METHOD In many applications, the RT controller runs multiple control processes that need to communicate with each other This presentation demonstrates a general state machine architecture which uses a Cluster of State Command Enum and Variant for the State Queue, User Event [UE], and Notifier data types WINDOWS CODE QUICKLY PORTS TO RT Code transfers nicely from Windows to LabVIEW RT when control Value Change Events are converted to User Events. Each User Event can then have a dedicated State to handle required logic GOOD FOR QUICK PROTOTYPING Using Networked Shared Variables (NSV) to communicate between the Host PC and the RT simplifies basic communication and utilizes existing communication methods (User Events) already existing in software architecture Host modules (Touch Panels, Tables, Windows PC Hosts) can fire User Events on the RT in a round-about way using Network Shared Variables

SYSTEM ARCHITECTURE Host Communicates with RT Hardware via Networked Shared Variables RT Asynchronous Processes Communicate via RT User Events RT HARDWARE HOST INTERFACE Module A UE API SHARED VARIABLES Module B UE API

RT CONTROLLER MODULE Low priority loop in RT Controller Module polls Network Shared Variable for State and Data Commands from Host. New State Commands fire User Events on the RT Controller Module RT CONTROLLER MODULE Poll ‘RT Cmd’ NSV for States other than ‘Idle’. Fire associated State | Data Command as RT User Event

Fundamentals Components of a Module The general state machine architecture uses a State Command Enum and a Variant data for both the State Queue and User Event [UE] data types. Type Defined Cluster of Command | Data Mechanism for sharing the Created User Event to other Modules User Event UE Publishing Mechanisms Global Shared Variable Command Queue for Module State Machine LV2 Functional Global Notifier Type Defined Main Cluster for data internal to the Module Single Element Queue

UE handling in a Module A Module’s State Machine handles the specific State Command sent to the Module via the User Event. Variant Data is converted back to the LabVIEW data type for further processing Need to know the original data type in order to convert the variant data back to LV data type properly Specific States type defined in the Command Enum can be used to handle any number of unique User Events Use Type Defined Controls for Complex Data Types Convert Variant to LabVIEW data type and process accordingly

Sending a UE to a Module Modules are ideally standalone processes that are often required to be command remotely or may need to patched into a higher level controller using sub panels. Only sending one type of Registered User Event, a cluster of Command Enum and Variant Data Each Module has an API that provides access to it’s registered user events Other modules can use the API to send User Events to the specific Module

User Event API for a Module Provides access to the Dynamic Event registered for a Module Incorporates a Notifier that can be used for confirmation of commanded User Event

Run Demo Run Demo code on cRIO-9075 embedded controller Run Host Module and send commands to RT Controller Module which in turns commands Modules A and B via RT User Events

More Potentially Useful Information Alternative Host – RT Communication Mechanisms TCP/IP UDP Data Socket Network Streams (LV ≥ 2010) http://zone.ni.com/devzone/cda/tut/p/id/12267 Serial 232, 484, CANbus, GPIB Real-time VI to Host VI Communication Knowledgebase http://digital.ni.com/public.nsf/allkb/48D244EC86971D3986256BD4005CCC28#other NI’s cRIO DEVELOPER GUIDE https://decibel.ni.com/content/groups/large-labview-application-development Questions Thanks!