Projects
What is a project?β
Ignition has two main parts, the Gateway and your projects. The Gateway holds all the shared information like database connections, device connections, and Tags. Projects hold all the designed elements that do the real work. Your projects can hold both interactive elements (like controls, charts, reports, and entry forms) and persistent elements (like historical loggers, automated reports, etc.).
Projects are predominantly used to create the screens that your users can interact with, the visualization part of Ignition. Here you can create any system you want, from copying existing HMI/SCADA applications to whole new systems with anything you could want to do. The windows in your project can be used for history charts, reports, database forms, alarms, drawing components, scripting, and templates.
In Ignition, a project is a unit of configuration that contains:
- Windows and components: The HMI and SCADA controls to interact with tags and databases
- Transaction Groups: A bi-directional link between databases and PLCs
- Templates: A collection of components that can be re-used and quickly updated
- Reports: PDF reports for displaying and recording data
- Scripts: Timer and event based scripts used throughout the system
- General settings and properties: The settings that control access, resource connections, layout, timing, and more
You use the Designer to configure and create projects. The projects are then viewed in the runtime (Vision Clients or Perspective Sessions). You can create as many projects as you want, and users can easily jump between projects on the fly or open multiple projects at the same time.
Visualization Systems - Vision and Perspectiveβ
When starting a new project, there are many things to consider, such as who the users will be, how much data you need, what kind of time and resources you have to work with, visualization needs, and so forth. Deciding whether to use Vision or Perspective really comes down to which module best fits your project at the visualization level.
When to Use Vision for a Projectβ
Vision is the best choice for traditional industrial plant-floor and desktop screens , standalone HMIs, and the like. If you need a full, production-ready application right now, then it is best to choose Vision. If youβre using multi-monitor or multi-desktop workstations, dedicated control panels and applications, desktop-dedicated or dedicated-access applications, terminals, or parallel screens, then Vision is the best way to go.
When to Use Perspective for a Projectβ
If you need to build mobile-responsive applications, then Perspective is the recommended way to go. If your application needs to run on a mobile OS , namely iOS or Android, then choose Perspective. If you need Two-Factor Authentication or federated identities for the application you're building, choose Perspective.
With Perspective, you can automatically adapt to fit any screen size using mobile-optimized container types. It provides the ability to use your device's sensors and intuitive touch commands, as well as message handling, flexible property bindings, and CSS3 styles.
Designing a Projectβ
When you launch the Designer, you're prompted to select or create a project. The Designer then launches the project and you can set and modify the different types of project settings and resources. In the Designer, you can create any number of projects using either Vision or Perspective. Projects that contain viewable elements, such as Vision Windows and Perspective Pages, will have a launch link on the Gateway homepage. Non-viewable elements such as Transaction Groups, Named Queries, SFCs and Reports exist in a project and execute in the Gateway. These resources do not have a runtime, and run independently of any Vision Clients or Perspective Sessions being open.
There are no limits to the number of projects that can be created on a Gateway, but each runtime Client, Session, or Designer can operate only on one project at a time.
You use the different tools in Ignition such as components, shapes, images, Symbol Factory graphics, and Scalable Vector Graphics (SVGs) to create the components. Configuring components is the bulk of the designer's work when designing a project. The basic workflow is to take a component from the palette and drop it into a container on a Vision Window or Perspective View. You can use the Property Editor panel to alter the component's properties which changes the component's appearance and behavior.
To make the component do something useful, like display dynamic information or control a device register, you configure property bindings for the component. To make the component react to user interaction, you configure event handlers for it. It is primarily through property bindings that you bring windows to life, and have them do useful things. A property binding simply links one component's property to another on the same window.
Switching Between Projectsβ
When you launch an Ignition client, it opens a single project to display. If you want to open multiple projects you can have multiple clients open on the same computer, or you can use Ignition's Retargeting system to make seamless transitions between projects. The Retargeting feature allows you to jump from one project to another without closing the client. This allows your users to jump from area to area while still allowing you to keep your designs compartmentalized in multiple projects.
Your projects may all use different authentication sources or role sets for security. This means as your users jump from project to project, they may be able to use some or all of the controls on one project, but only see what is happening on another project.
Project Workflowβ
Getting up and running quickly with your project is simple:
- Open the Designer
- Choose either Perspective or Vision.
- Start designing!
The only challenge is figuring out exactly what you want to make with your system. For additional information, see Creating a Project.
Project Export and Importβ
In Ignition, a project backup and restore is referred to as Project Export and Import. Projects are exported individually and only include project-specific resources such as Perspective Views, Perspective properties, Vision Windows, Vision Templates, client event scripts, alarm pipelines, named queries to name a few. They do not include any Gateway resources like database connections and Tag Providers. A project is exported to a .zip file, and you can import it to any other Gateway that you have permission to access.
When you import a project from the .zip
file, it will be merged into the existing Gateway. If a project already exists on the Gateway you are attempting to import it on, you have the option of renaming the project or overwriting the existing project.
Project Export and Import are covered in detail on the Project Export and Import page.
Project Versioning and Historyβ
Project versioning is handled outside of Ignition. The file system that stores data in Ignition stores everything as a series of files. You can use any tool you'd like to save or export theses files outside of Ignition, including using versioning software to keep track of your changes.
Project Examplesβ
Ignition is such a diverse application that it can work in any field you can imagine. Just a few examples: Oil and gas, food and beverage, automotive, medical, air traffic control, water and waste water. You can get anything you want set up in Ignition. To see a few live example screens, check out our online demo project examples. They are packed with samples of the features and functions you might want to use from reporting, to history, to HMI optimization.
What is Not in a Project?β
The Designer allows you to create and modify several types of resources that are shared by ALL projects. Depending on the resource, this means that either they run independently of the projects, or they are available for use by any project. Here are a few of them:
- Alarm Pipelines - Control alarm notification (runs independently).
- Sequential Function Charts (SFC) - Logic to step through a process (runs independently).
- Transaction Groups - Perform various actions such as storing data historically, synchronizing database values to OPC, or loading recipe values.
- Project Library - Blocks of scripting code (available to all projects).
- Tags - Basic or UDT Tags provide realtime data (available to all projects).
- Alarming - Alarms exist on Tags, and so are not in a project (available to all projects).
In addition to these resources, the Gateway connections and settings are available to all projects and are set up in the Gateway. These include resources such as database connections, OPC server and device connections, and more.