Corso Systems

View Original

Ignition Retro-Perspective

Back when Ignition’s Perspective Module was still in Release Candidate mode, Corso Systems built a SCADA solution for monitoring landfills. The platform was pretty bare bones back then, but has improved greatly in the dozens of releases since. As Ignition’s Perspective module improves, it can be difficult to use and understand everything that has come out with each release. This post is intended to show you the most exciting and useful features in each release, and will be updated on a regular basis as new releases come out.

Ignition 8.1.10 - Pipes, Tooltips, Charts, and Key Events, Oh My!

For SCADA systems where a P&ID style diagram is the most useful way to display information, a piping tool can be invaluable. Most piping “tools” are lines you can style to look like a pipe. You still had to manually line up all the ends, selecting the various termination points to get bends and tees. Needless to say making those connections look good with these very finicky systems is difficult.

The only SCADA solution that has made good pipe tool in the past is the WinCC Open Architecture (WinCC OA) platform from Siemens. They have a tool that lets you draw the pipes and automatically handles bends and tees for you.

Now, after over a decade on the market, Ignition now has capability! Using the Pipe Tool—we have a detailed Perspective pipe tool post here—you can draw complex piping arrangements and automatically snap them to the connection points onto the Perspective Symbols (which have been in use for a few versions now). Similar to the symbols, you can now configure the pipes to be Simple, Mimic, or P&ID style with different looks. You can also customize the style of the pipes for different colors or whatever you need. Very excited to see this feature rolled out!

8.1.10 also enabled tooltips on Perspective components. Since mobile devices don’t have "hover” capabilities like using a mouse, you can use scripting functions to tie tooltip visibility to a button, checkbox, property, or tag to show/hide them accordingly.

Key Events are now part of Perspective as well. This looks at the keyboard and lets you execute scripts when individual keys or combinations are pressed. You can also use regex patterns to integrate with things like USB barcode scanners that may have a header indicating they are sending data that needs to be parsed.

Ignition 8.1.9 - Bug Fix for Gateway Ports

The moral of the story might be wait for odd numbered releases, as 8.1.9 fixes an issue where an upgrade to 8.1.8 would reset the HTTP, HTTPS, and Metro ports on the gateway back to their default values of 8088, 8043, and 8060, respectively. Release 8.1.8 is no longer available for download.

Ignition 8.1.8 - Small Improvements

Menu Tree Components can now be reset using the resetOnClick property to reset them back to the root menu after an item is clicked.

A lastActive session property was added to the Perspective model, tracking the timestamp of the last action a user has taken.

You can also now set a custom logout message using scripting.

Themes get an update with a dropdown to select the desired theme instead of having to manually type in a string or copy/paste.

The Report Viewer gets an update in the Designer with a dropdown to select the report you want to view, rather than typing in a string.

Finally, you can now opt out of seeing quality overlays when switching views. This hides the red quality overlay that will normally show up when bindings resolve as a view is first loaded. This functionality is now on by default, making for an overall better user experience.

Ignition 8.1.7 - Bug Fix for UDTs

8.1.7 almost immediately replaced 8.1.6 after a bug related to UDT overrides was found and patched. No other notes for 8.1.7.

Ignition 8.1.6 - Update ALL THE THINGS!

There are a handful of items in this release. Let’s review them all:

First, the Icon Picker is a major quality of life improvement! It now gives you a visual representation of all of the icons in Ignition, and allows you to select them directly. Before this update, you had to look up the icon you wanted in the documentation or the Material UI library, copy/paste the name, and then hope it was in your version of Ignition. The new Icon Picker lets you see all available icons and select them directly in the Designer.

Next, Perspective Workstation now has Fallback Redirection functionality. Just like with Vision, Fallback Redirection will let you select an alternative gateway in the event of a connection failure. This feature works in exactly the same way as it does with Vision Clients.

Viewport Dimensions are now available to set specific viewport sizes for breakpoint containers. This new feature gives developers granular control over the look and feel of their screens on any device.

A workflow improvement called Modify Source View is now built-in so you can edit the source view from an embedded view instance. This works very similarly to Vision’s Modify Template Master feature and will save time when developing highly object oriented and templatized projects.

In a modern web browser with tabs, each tab will display a title of the currently open page. Perspective now gives you a Tab Title page property to set the tab title for each page in your perspective application.

Table Row Heights are now configurable directly in Perspective Tables. This feature allows us to avoid having to set cell padding parameters which required a lot of effort to get right.

Updates to the Perspective Map Component:

The Custom Map Control Panel lets you pull in a custom view directly into the map interface. It will stay fixed in the corner of the map and allows you to add links and buttons to easily navigate around the map. This feature simplifies building pages with the map component, before you would have needed to use another container to add buttons which could cause scaling issues depending on screen size and orientation.

Finally there is an onVectorClick event on the map component. This lets you define shapes to show on the map so users can click on the shapes to interact with them. This is similar to some of the functionality used in the Corso Systems Geofence Ignition Exchange Resource.

Ignition 8.1.5 - Navigation Improvements

This release improves the navigation options available in Ignition Perspective.

First, you can now use the system.perspective.navigate() function to open a page in a new browser tab. This feature is very handy for data analysis applications where users might want to quickly swap between different time periods or production line dashboards in their browser.

Second, Inductive Automation added forward and back navigation capabilities to views using the “Browser” navigation action. You can now build your own forward/back navigation into applications used by Perspective Workstation instead of relying on the native web browsers.

Finally they added a navigateForward and a navigateBackward function call to the system.perspective namespace. These allow you to tie into the browser’s navigation history to move forward and back from the Perspective application directly.

Outside of Navigation, there is now an option to disable the “pull down to refresh” functionality in the mobile app. This is helpful when you have “tall” screens that may require scrolling and will prevent users from accidentally refreshing the app when they scroll through a view.

Ignition 8.1.4 - Quality of Life Updates for Embedded Views and Workstation Keyboard Support

When using embedded view in Perspective, you will likely need to work with the parameters. Prior to Ignition version 8.1.4, you would need to select each embedded view to see the parameters. Now, in 8.1.4 you can now directly drill down into the view parameters from the parent view. There is also a “Sync Params” option to automatically add all parameters from the embedded view to the embedded instance, saving time if you are adding parameters to the views during development—or after they have been embedded.

This release also has better on-screen keyboard support for Perspective Workstation. This works similar to the on-screen keyboard in Vision, pulling it up when you select an input component. It also uses the native keyboard on the device, which will use the appropriate locale settings based on the device’s location.

Ignition 8.1.3 - Minor Perspective Additions

8.1.3 has a few minor items for Perspective.

Barcodes with background colors other than white can now be read with auto detection. Light and dark settings are also available.

Alarm Status and Alarm Journal Tables now have translation support for their modal popups, and there is a sessionID parameter as part of the system.perspective.isAuthorized function. This function allows you to pass in a specific sessionID to check authorization.

Ignition 8.1.2 - Quality of Life for Components

Ignition 8.1.2 brings clarity to the Perspective Component Palette with thumbnails of each component. Now it is much easier to find components! Some components now come with pre-defined property options for the most commonly used properties, saving you configuration time when using them.

This release also includes more detailed properties on the Power Chart and Pie Chart, giving you more configuration options for which panels are displayed and how the charts are formatted.

Ignition 8.1.1 - Taking a Breather for Perspective

After a huge Perspective feature set in 8.1.0, the Ignition 8.1.1 update takes a break and only adds general bug improvements.

Ignition 8.1.0 - A Huge Perspective Update!

One slightly limiting factor for Perspective before this update was that it required a browser or a mobile device to run. Yes, you can simulate a Vision style client by auto-launching a browser into full screen mode, but that isn’t an ideal solution—it also made multi-monitor support next to impossible.

Perspective Workstation solves these issues by giving you a dedicated application for running Perspective in either a windowed or kiosk mode. Basically, Perspective Workstation gives you the same type of Vision Client functionality you are accustomed to with Perspective. It has built-in multi-monitor support, and lets you better lock down the computer running Perspective Workstation to keep operators focused on the SCADA screens.

Ignition 8.1.0 also includes the first release of Perspective Symbols. These are a new addition to the Perspective Component Palette used to represent real world equipment in P&ID style screens.

All of the usual suspects: pumps, motors, valves, sensors, and tanks are there, and you can also create your own symbols as needed. Each symbol has three levels of detail: High Performance, Standard, and High Definition (the less cool, official names are Simple, P&ID, and Mimic) with different graphics and animations you can use on your screens. They also have different orientations built in so you can build your screens to fit any format. Each symbol has snap points at the obvious locations, like the outlet of a pump so you can easily snap lines to them when drawing your screens.

This release also includes the Perspective Power Chart which is basically the trend chart everyone has copy/pasted from the original Vision demo into every SCADA project ever made with Ignition, but is now in Perspective. It includes a built-in tag picker, time/date selection tools, and buttons to switch between various modes without having to right click.

The power chart is a huge step up from the time series charts from version 8.0.3 and makes developer’s lives much easier.

Ignition 8.0.16 - Inactivity Timeout

8.0.16 includes an inactivity timeout property in Perspective. This allows you to check how long it has been since a user has interacted with a session. If it has been longer than a desired period of time, you can switch to a user with a lower authentication level, or log them out entirely.

While this is a valuable functionality, in most SCADA applications the HMI is up and running 100% of the time. This isn’t a feature we imagine using in many projects at Corso Systems.

Ignition 8.0.15 - Action Options Galore!

Ignition 8.0.15 brings some nice quality of life improvements to the event engine in Perspective.

First it gives you a “Prevent Default” option which will override the default behavior of a web browser when interacting with the Perspective application. Most notabl,y it will prevent the web browser’s default right click menu from popping up if you right click on something in the app. This isn’t a critical piece of functionality, but can prevent some inadvertent navigation issues.

The other feature is a “Stop Propagation” property. This feature is useful when using nested views and containers. It prevents the other containers surrounding the one you are interacting with from receiving the click event when you don’t need them to be clicked. For example, the Stop Propagation property will be useful for creating component-specific right click menus. You can click on the outermost container to get one menu, and the innermost to get a different menu—without also triggering the outermost container’s click event.

The following GIF is an example. The top section has Stop Propagation off, so every container surrounding the container you clicked on will receive a click event. The containers on the bottom have Stop Propagation on, and will not propagate clicks through the parent containers.

Ignition 8.0.14 - Ignition Polka! (With Accordions)

In Ignition 8.0.2, Inductive Automation released the Display property on Flex Containers. This allowed you to build accordion style components, but required some configuration overhead. This new component is a native way to build accordions.

Accordions are popular as web application components, so this is a minor but welcome addition to Perspective.

Ignition 8.0.13 - Themes

If you have ever tried “Dark Mode” on your computer, it’s exactly what Themes are in Perspective. You can do dark mode, light mode, or any mode you want to set up. Essentially, themes allow you to write a global CSS file tied to a particular theme, and you can load a theme based on a session property. For example if a user selected Dark Mode as their preferred theme, they can load Dark Mode colors in Perspective.

This was POSSIBLE to do with styles in previous versions, but was not an ideal situation if you really wanted to implement it. Using themes simplifies the process. We will save the discussion about Dark Mode for another time if you are interested in that.

Ignition 8.0.12 - The Next Release That Wasn’t

8.0.12 fixes a bug where UDT Parameters were returning a double when evaluated as an offset. Ignition 8.0.12 was a maintenance release to 8.0.11, so no new Perspective functionality was released.

Ignition 8.0.11 - Sign on the Dotted Line

8.0.11 gives us the Signature Pad component in Perspective. For people who need signatures integrated into their SCADA platforms, this is great! For people who don’t, you probably won’t use this component. Because it is fairly niche, we have a blog post detailing how to use the Signature Pad Component.

Ignition 8.0.10 - REPORTS!

While maybe not the most glaring omission from previous releases, Ignition 8.0.10 adds a Report Viewer component to Perspective. This works with the existing reports you already have if you are using Ignition’s Reporting Module. Read our full post about how to use the Report Viewer functionality.

Ignition 8.0.9 - The Release That Wasn’t

Ignition 8.0.9 was a quick release to fix a bug with 8.0.8 and the style classes which removed all of the margin functionality from the application. This is a pretty problematic thing to leave out of a web-based application, so Inductive Automation patched 8.0.8 a week after release and put out Ignition 8.0.9 to fix the issue.

Ignition 8.0.8 - Audit Logging in Perspective and Alarm Journals

The Ignition 8.0.8 update adds the Audit Log functionality into Perspective for the first time. The Audit Log allows you to track user actions in Perspective applications similar to the Audit Log in Vision. While it doesn’t provide 100% coverage, most of the major items like tag writes, login/logout, and authentication level changes are logged. Presumably, more automatically logged actions will come in future releases.

This release also brings us the Alarm Journal Table Component. Alarm Journals exist at the Ignition Gateway level, so you could still use them with Perspective, but before this update you needed to build your own custom table to view the Alarm Journal. This component brings the functionality into a first-party component. This component follows the usual Perspective strategy of building in useful functionality like calendar pickers directly. This speeds up development times and makes standardizing components much easier than in Vision.

8.0.8 also includes an updated Style Editor for Perspective Style classes. This makes editing style classes much more user friendly with dropdowns instead of text boxes where available. Visual aids are also added for margins and padding—settings that may not be immediately obvious to someone without a background in web development.

Ignition 8.0.7 - Perspective Buzz and No Sleep Mode

The 8.0.7 Ignition update is light on Perspective features. The first feature gives us the ability to vibrate a mobile device from the Native Perspective Application. We can now use tactile feedback in the Perspective app, similar to many popular apps on the market today. You can configure the duration of the vibration to alert operators when something needs attention.

The other feature is the ability to keep the mobile device “open” when using the app by preventing it from going into sleep mode. This could be useful if you were using a tablet for an HMI for example, but overall is a minor update.

Ignition 8.0.6 - Perspective Usability Features

With the release of the built-in video player, the 8.0.6 Ignition update is great for building training tools. The video player has bindings on the status of the video so you can see when the video is paused or ended. This would be an interesting option for building out a new Inductive University client running in Perspective. It can play video files stored on the Ignition web server, as well as hosted videos from other services, and live-streamed video.

The other new component in this release is the View Canvas. Similar to the Template Canvas in Vision, View Canvas allows you to embed Perspective Views and set their coordinate positions. The Template Canvas also utilizes CSS transitions for viewing instances so you can make dynamic animations and move the view around the canvas.

8.0.6 also gives us icons and badges on the various components in the project tree for Perspective views and components. These icons indicate if there is a binding or a script set up on a component. This was a glaring omission in early releases and caused headaches when looking at a new project or going back to a screen you haven’t worked on in a while. Perspective will now be much easier for developers to use.

The 8.0.6 Ignition release also improves on the rotation functionality for components on views. While it’s not the most common tool we use, making it more user-friendly is helpful when you need to rotate a component on the screen.

Ignition 8.0.5 - The Biggest Perspective Update Yet!

The 8.0.5 Ignition update release includes one of the most useful components to date, the Dashboard Component. This tool allows you to configure widgets and views that users can combine in the client to build custom dashboards. This functionality simply doesn’t exist in Vision. The Dashboard Component is very useful for large facilities where users want to configure dynamic dashboards for use on TV displays or for realtime analytics on mobile devices. We imagine that this tool will get a lot of use in many Corso Systems Perspective projects in the future.

In addition to the dashboard component, Ignition 8.0.5 includes RFID support for Identity Providers (IdP). While this won’t be applicable in every situation, it is a powerful option for companies who use RFID badges in their facilities.

This release also adds Bluetooth support for the Native Perspective App on iOS and Android, allowing you to tie mobile devices into Bluetooth networks. This will be most useful when using Bluetooth Beacons for applications like location tracking to automatically navigate to particular screens as operators move through a plant.

Ignition 8.0.4 - Minor Perspective Updates

After a relatively jam-packed release for 8.0.3, Ignition 8.0.4 focuses on other areas of Ignition instead of Perspective.

Here we get some scripting functions for the map component enabling better user interaction with the map, and a flyTo method you can use to fly to different coordinates.

We also see scripting improvements for Perspective as a whole including a print statement! This saves time when generating debugging messages in Perspective, and is a very welcome addition to the platform.

Ignition 8.0.3 - Perspective Does SCADA and Modern Web Applications

Ignition 8.03 adds Time Series Charts and the Chart Range Selector. These new features give you the ability to create the common trend charts you would expect to see in any SCADA system. While they aren’t as powerful as the Easy Chart in Vision, they are more capable than the standard charts in previous releases.

The next item is the Horizontal Menu, which adds the capability of a top of the page navigation strategy, much like the one you see at the top of this page. This feature is probably something that should have been in the first version of Perspective, but we’re excited to see it now. It makes building Perspective projects similar to modern web applications much more straightforward.

Ignition 8.0.3 also includes a new interface in the gateway for managing SSL Certificates. This great simplifies the process of securing your Ignition Gateway with an SSL Certificate.

The final major item is the Alarm Status Table!

It is almost impossible to build a SCADA system without a way to handle alarms. While there is a lot of functionality baked into the Alarm Status Table, it was a sorely missed component in the initial releases.

This is the first release where Perspective can begin approaching becoming a world class SCADA solution. It finally has the basic tools needed to create nearly any SCADA project.

Ignition 8.0.2 - Perspective Around the World!

Ignition 8.0.2 saw the release of Translation in Perspective. This is a very powerful tool for projects that utilize it, although it is not commonly used on a lot of US-based projects.

The new translation feature now provides the same translations from the Vision Module in an Ignition project in Perspective. Perspective can also use your browser’s locale property to automatically set the translation based on your location.

8.0.2 is also where we start to see more useful functionality come into play. Security Level Helper functions, give you the ability to validate the security level of a session or user anywhere in the project.

This release also includes the addition of a “Display” property on Flex Containers, giving you much more control in how things operate in a Flex Container. It’s now much more straightforward to create collapsible divider sections like you might see in a modern web application.

Ignition 8.0.1 - Maintenance Release

There was a push to get Perspective out the door way back at ICC 2018, and it simply wasn’t ready for prime time. At the risk of a community mutiny, Inductive Automation Released it at the ARC Conference in 2019. While it definitely got the job done, it also included bugs, which wwew the focus of Ignition 8.0.1.

The update also included a new feature, the file upload component which gave users the ability to interact with mobile device cameras when using the native mobile apps.

Ignition 8.0 - Perspective’s First Version

Ignition 8.0 was the first Perspective Release. It contained the basic Perspective browser-based client, and the native mobile app for iOS and Android. While it was pretty bare bones in terms of functionality, it gave us everything we needed to build a fully featured SCADA application, including VR Models of the San Timeteo Landfill giving rise to a full digital twin experience.

This version also started on the idea of using Identity Providers (IdP) in Ignition. This enabled Single Sign On (SSO) using various identity providers, and integrated Ignition with SAML and OpenID for the first time.

Ignition 8.0 also included the Map component enabling us to develop the GeoFence resource which we released on the Ignition Exchange!

Updated - 7/7/2022