Beruflich Dokumente
Kultur Dokumente
Overview
The Supervisory Control and Data Acquisition System sample project demonstrates how to implement a supervisory control and data acquisition (SCADA) system with scalable architecture for
building systems with a large number of I/O points.
Table of Contents
1. Developer Walkthrough
2. Features
3. Basis
4. System Requirements
5. Overview
6. Running this Sample Project
7. Modifying this Sample Project
8. Additional Resources
1. Developer Walkthrough
Get the developer walkthrough of the Supervisory Control and Data Acquisition System sample project.
2. Features
SCADA serverThe SCADA server manages I/O points in the system, logs data and alarms in the historical database, and regularly archives data from the logging database to the archive
database.
Administrator consoleThe administrator console allows the system administrator to configure and manage the SCADA server.
ClientThe client allows the operators to monitor the system status and I/O points. The operator can view the values of the I/O points, alarms, and historical trends in different detailed views.
Simulated CompactRIO system and simulated PLC-based systemA simulated CompactRIO system and a simulated PLC-based system are included in this sample project. The systems
demonstrate how to connect to third-party devices. You can replace the simulated systems with a real CompactRIO system and a real PLC-based system.
ScalabilityYou can use this sample project as a starting point to scale to a large system by adding a large number of I/O points or adding many subsystems in this sample project.
3. Basis
This sample project is based on the Queued Message Handler template and uses LabVIEW Datalogging and Supervisory Control Module features, such as HMI design, third-party connectivity,
historical data logging, and alarm logging. Refer to the Queued Message Handler template and its documentation, available from the Create Project dialog box, for information about how the
Queued Message Handler template works.
4. System Requirements
LabVIEW Base, Full, or Professional Development System (32-bit)
LabVIEW Datalogging and Supervisory Control Module
5. Overview
This sample project consists of two main parts: the server and the client. Both the server and the client are based on the Queued Message Handler template.
The server consists of the following components:
Server MainShows the server running log. Server Main is the main user interface of the SCADA server and is responsible for managing shared variables, data logging, and data archiving.
Server Main includes the following loops running in parallel:
Event Handling LoopProcesses user interface events and sends messages to the UI Message Loop.
UI Message LoopHandles UI messages from the server and transmits messages for message loops.
Shared Variable Management LoopManages shared variables.
Archive Management LoopHandles archiving functionality.
Timer LoopActs as a timer to trigger archiving. This timer loop pauses when archiving is disabled.
Administrator ConsoleSends configuration changes to the server. When the server receives the changes, the server applies the changes. Administrator Console includes the following
loops running in parallel:
Event Handling LoopProcesses user interface events and sends messages to the Message Handling Loop.
Message Handling LoopHandles messages for the Administrator Console.
The client consists of the following components:
Client MainDisplays an overview of the SCADA system and lists valid subsystems. Client Main includes the following loops running in parallel:
Event Handling LoopProcesses user interface events and sends messages to the Message Handling Loop.
Message Handling LoopHandles messages for the client.
Detailed ViewShows detailed information of a subsystem. Detailed View includes the following loops running in parallel:
Event Handling LoopProcesses user interface events and sends messages to the Message Handling Loop.
Message Handling LoopHandles messages for the Detailed View.
Detailed View also includes the following detailed subviews:
Subsystem ViewShows a graph of systems and a list of I/O points for a specified subsystem.
Alarm & Event ListShows a list of alarms and events for a specified subsystem.
Historical TrendShows the historical trends for a specified subsystem.
The following illustration shows the structure of this sample project and the relationships between the user interface loops and the user interface VIs.
Note A VI that is not a subVI of its caller VI is highlighted with a gray dotted line. For example, the Administrator Console VI is not a subVI of the Server Main VI. The Server Main VI uses the
Administrator Console VI by starting an asynchronous call.
1/3
www.ni.com
2/3
www.ni.com
4. Right-click Channel and select Paste from the shortcut menu to open the Device Properties dialog box.
5. Specify the properties for the new channel and click OK. LabVIEW creates a new subsystem IO template under Channel.
6. Select FileSave.
7. In the Project Explorer window, right-click IO SimulationPLC1.lvlib and select Deploy from the shortcut menu.
Tip You also can add a simulated PLC-based process by deploying a copy of the existing simulated PLC-based library.
Adding Subsystems Bound to Simulated Processes Using the Server Dialog Box
You can add subsystems that are bound to a simulated CompactRIO process or a simulated PLC-based process by configuring the Server dialog box. Before you can create a bound subsystem,
you must create a simulated process in the variable engine.
1. In the Project Explorer window, open and run My ComputerServer Main.vi to display the Server dialog box.
2. Click the Administrator Console button in the Server dialog box to open the Administrator Console dialog box.
3. Click the Configure System button to open the Configure System Dialog dialog box.
4. Click the add button next to the Subsystems field to open the Add Subsystem Dialog dialog box.
5. Specify a name and binding simulated process URL for the subsystem.
6. Click the OK button to apply the changes and close the dialog box.
8. Additional Resources
Supervisory Control and Data Acquisition Sample Project Detailed Documentation
Copyright
2013 National Instruments. All rights reserved.
Under the copyright laws, this publication may not be reproduced or transmitted in any form, electronic or mechanical, including photocopying, recording, storing in an information retrieval system,
or translating, in whole or in part, without the prior written consent of National Instruments Corporation.
National Instruments respects the intellectual property of others, and we ask our users to do the same. NI software is protected by copyright and other intellectual property laws. Where NI software
may be used to reproduce software or other materials belonging to others, you may use NI software only to reproduce materials that you may reproduce in accordance with the terms of any
applicable license or other legal restriction.
End-User License Agreements and Third-Party Legal Notices
You can find end-user license agreements (EULAs) and third-party legal notices in the following locations after installation:
Notices are located in the <National Instruments>\_Legal Information and <National Instruments> directories.
EULAs are located in the <National Instruments>\Shared\MDF\Legal\license directory.
Review <National Instruments>\_Legal Information.txt for information on including legal information in installers built with NI products.
Trademarks
Refer to the NI Trademarks and Logo Guidelines at ni.com/trademarks for information on National Instruments trademarks. Other product and company names mentioned herein are trademarks or
trade names of their respective companies.
Patents
For patents covering the National Instruments products/technology, refer to the appropriate location: HelpPatents in your software, the patents.txt file on your media, or the National Instruments
Patent Notice at ni.com/patents.
3/3
www.ni.com