How things work - can perspective be used instead of vision or only as addition to it?

Hi All
Fundamental question: can perspective be used instead of vision or only as addition to it in complex screens.
My understanding is that in simple cases (like elective study - building in perspective in inductiveuniversity) it was sufficient. Perspective have flexi containers which display things nicely on mobile or tablet.
However my understanding is that it cannot replace vision functionality in complex screen setups with many valve/motor instances etc. so both vision and perspective have unique use cases. Vision is faster as well and has a lot more properties ready to use.
Can you share your understanding as well please?

There are some limitations, such as local file access, etc, that currently Vision wins over Perspective.

However, please review e.g. Nader's work with Perspective on comples P&ID screens with Perspective. It is sure possible, however the methodology to accomplish is completely different.

Personally, my approach is, if it doesn't need to be on mobile, then use Vision. However, that's because I've been on the platform since 7.7 and my background is mechatronics not web dev. Vision is easier to me. I do use perspective when there is a requirement for mobile.

Additionally, Vision is cheaper.


Perspective can do anything you need and I prefer it over Vision, personally.


What if you need to reliably lock down a particular operation to a client on a single computer? Behind a NAT? Perspective can't do it. Vision can. Vision can even probe its environment for things like motherboard serial numbers, if you have that need.

What if you need to reliably handle a barcode scanner or RFID reader, or similar device, no matter what page the client is looking at? Perspective can't do it. Vision can.

What if you need to use a physical security token with certificate or with a challenge-response API? Perspective can't do this. Vision can.

Do you have a hard requirement for some kind of machine jog with momentary pushbuttons? That needs to reliably release? Perspective can't do this. Vision can (not really out of the box, but possible).

I hope that some of this will be integrated into Perspective Workstation and Mobile before too long. But for now, Perspective has some gaping holes that are commonly used in machine HMIs.

One other missing piece: Vision can launch local applications of any kind, monitor their operation, exchange data with them, and kill them off. Perspective cannot do this. And likely never will.


Oh, one more thing. Run a query for a graph or table that yields a million or more rows. Compare the behavior between the two client technologies, especially when panning/zooming/scrolling all over the data.


Maybe I should say "anything most people need"

1 Like

I can't think of a single RSView/FactoryTalk/WonderWare/whatever conversion project that didn't have at least one of these gotchas. So, no, I disagree that Perspective has what most people need.

Perspective has what IT types and management types need, and is a slam dunk win for anything mobile. Not so much for on-machine HMIs, particularly when converting lame legacy stuff.


I've done a few Iconics, Citect, and Wonderware upgrades and haven't needed anything you mentioned :man_shrugging:

I guess you did mention momentary push buttons but we handle the unlatching logic in the PLC


You unlatch immediately? That would not suit a jog operation. Or you unlatch after a timeout? Which limits jogging to very short periods, unless you permit a substantial amount of "crunch" time.

A button that just sets a bit that something else unsets is usually not even called a momentary button.


I suppose my definition of a momentary push button would just be a button that unlatches when the user releases it. I don't think it would be too difficult to script a button in Perspective to perform a jogging function as you describe, but maybe I'm oversimplifying it.

Personally, I just love the mobile design aspect of Perspective and it can do everything that I imagine an average user would need. Just my opinion though , and of course, I'd need some information about the average user to validate that claim. Thanks for the info on some of the shortcomings, though!

1 Like

Right. That's a momentary button. It is remarkably difficult to ensure that the bit gets reset when the button is released. You should study this.


I do think perspective has some short comings, but I'm the same in that I prefer it over vision.

1 Like

For jogs, we increment a plc tag in scada as fast as possible, with the plc checking for a change against its own copy. If no change in x ms, then unlatch output, if not, latch it on.

For momentary buttons, I use an on value change event handler. If the value is on, write it to off, including on initialChange. Or, more typically, the PLC will unlatch all SCADA command tags automatically.


Yes, that's the technique I recommend for Vision Momentary buttons. Since the timing loop to fire those increments runs in the real client, you have complete coverage from client to PLC if there are hiccups that would prevent button release.

There's no current solution for Perspective that has the complete comms path from button to PLC covered. It will take a custom component, at the very least.


Thanks again Phil for sharing your knowledge


As has already been said, Vision is great for on-site HMIs where the screen doesn't migrate within the site, and situations where you need access to local file systems or system information for one reason or another. Perspective's strengths lie in responsive handling to differing screen sizes, which is most often encountered when designing Pages for users which might be using multiple types of devices (desktop, or tablet, while in landscape or portrait layouts), or in situations where Clients (Sessions) are on mobile devices.

I'm HEAVILY biased, but I love designing Perspective projects, even though you have to plan much further ahead when designing them; with Vision, you could practically just throw components into a Window and move things around to make it all fit - in Perspective, you have to plan out which components should be grouped together in different types of Containers, and whether each View needs some sort of mobile-centric layout before you start building the View.


And, of course, with Perspective there is no application installation required. Just share the URL and anyone can instantly browse in (with authentication, if required).


I think the primary objective of Perspective was to provide good mobile interface which as missing in Vision for a long time. However, Its scope became larger, acting as a replacement for Vision. Its near-impossible to achieve everything in perspective what vision has, as pointed out by @Ptrumel, due to differences in the underlying technologies. Perhaps a smaller version of perspective could have been created first that provides most essential features required in a mobile interface missing in Vision's mobile module while leaving the rest to Vision like P&ID and other good features it has which are difficult to achieve in perspective. Now its Vision or Perspective decision rather than Vision and perspective decision.


I agree with most of what is said here. @pturmel and @cmallonee are both good sources for information.

I have a strong preference for Perspective and use it in every situation that I can but there are limitations that have already been noted. It is harder to make a good looking UI in Perspective because you have a learning curve with CSS and imo you really want to be able to import custom SVGs. It is a very flexible design because you can draw things exactly how you want them in an SVG editor and manipulate the SVGs with bindings in perspective.

Customers are generally really impressed with Perspective despite its limitations. I have found that most customers are happy with a more limited HMI that they can load on any device than they are with a more fleshed out system. There's still a place for Vision and Vision Edge.

I prefer to avoid momentary buttons where possible and I agree that there is not a good way to do a momentary button in Perspective. There are some kludges that can produce an unreliable result. I don't like unreliable results...

1 Like