Presentation on theme: "Building Web-Based HMI’s in Visual Studio .NET"— Presentation transcript:
1 Building Web-Based HMI’s in Visual Studio .NET Introduction toOPC Systems.NETHello everyone, thank you for joining us on this webinar. My name is slim-shady and I am excited to show you how you can rapidly build scalable SCADA/HMI systems without writing any lines of code. I would agree that this sounds like an impossible task, but today we’re going to see just how this is indeed possible.Win WorrallApplications/Development EngineerDirect Line: +1 (704)
2 Agenda We’ll get here quickly! Talk about Web-Applications, why they matter!Briefly discuss the merits of a web-based applicationIntroduce OPC Systems.NETLive Demo – Creating HMI Screens for the BrowserSummaryQuestions & AnswersWe’ll get here quickly!Here’s the agenda for today. We’ll start-out discussing why people are interested in Web-based HMI’s and why you should consider them if you don’t already have one. Then we’ll briefly discuss the different types of web-development as there many methods. We’ll then introduce the OPCSystems.NET software development platform and will explore why it is the premier choice for building Web-based HMI’s. We’ll move as quickly as we can to get to the live demo where we’ll actually create a web-based HMI. We’ll then wrap-up with a summary, finishing off by answering your questions.
3 Web-Applications matter! Why are we here? Why web-applications?Accessible via Browser such as Internet Explorer and Firefox.iPhone, Smart Phone, Internet Tablets etc.Security already built-into the Web-Server.Single application to maintain and deploy.No software or components to deploy.Accessible via LAN & InternetDevelopment is easier than ever!Let’s begin by explaining WHAT the OPCSystems.NET product-line is…First, it is a complete suite of tools that allows you to build a complete HMI/SCADA solution in Visual Studio.NET, be it C# or VB.NET etc.The whole thing is extremely easy to setup and configure, and we’ll see that in the live demo.The development tools available for developing Windows applications, Web Applications or Windows Mobile applications allow for code-less development, that is to say, you can create applications using just your mouse – so you lock your keyboard in a box somewhere as you won’t be needing it to do any coding.You’ll enjoy the convenience of SmartClient Technology that will make deployment a breeze. If you’ve heard of 1-click deployment, well, this is that!A Data logging tool is part of the suite, so you won’t need to build one or buy a separate Data Logger.Reporting your historical data is always important, well you can build reports and have them automatically build at specific times or on events and have them automatically printed and ed to you etc.Ditto on the logging of your Alarms, and being notified when alarms are active.Last of all, the big one, the entire system has an open API which means that you can create your own applications to control the system, to add more functionality, to use the existing functionality – basically, you have complete access which means your own imagination is your limiting factor. Now you don’t hear that too often do you?
4 “Web Benefits” that matter! Firewall-friendly HTTP:No need to open firewall PortsNo DCOM headachesSecurity built-in:Assign access-rights to users/groups for the entire site, or per-pageUse SSL for secure connections insuring data-integrity and privacyAbundance of security tools available“Cluster” Server(s) and Application(s) for High AvailabilityThere are some benefits to web-applications that are just too important to overlook:Web applications use the trusted HTTP protocol over trusted Port 80. Most firewalls already have this port open, so there may be no need to open additional ports on your corporate firewall. Oh, and the HTTP protocol is used, not DCOM.Security is a huge concern nowadays, and rightly so. Web Servers already offer industry and world-wide accepted standards. You can use that security to your advantage, for example you might choose to completely restrict access to your website or individual webpages so that a select few users or groups of users can access them.Concerned about somebody eavesdropping your data as it goes over the wire? Then enable SSL for your website, now the communications between your browser and the web-server are encrypted insuring privacy.There are so many other tools available too that can further enhance the security of your web-applications.Lastly, high availability can be readily accomplished using Clustering technology that already exists for web servers and operating systems. You can then rest-assured that should a web-server fail, your end-user experience could be completely unaffected because of hot-standby or “load balanced” systems picking-up the extra workload.
5 Web Development Changed Code-less, no more learning “languages”AJAX delivers dynamic pages, no reloadWinform/Webform development = same!Easy debugging with Visual Studio.NET“Streaming” OPC data is now Easy!
6 Web-App Capabilities Display data from OPC Servers Get user-input for writing to OPC ItemsTrending/Charting live OPC DataAlarm displays and acknowledgements
7 Web-HMI, does it make sense? (AJAX Polling) When it makes senseNot a good fit!Simple screens with few graphicsData response can be slowRestrict access to users/groupsMust be accessibleInside/outside LANDesktop, Laptop, Phone etc.Large quantities of data on-screen.High-speed data (sub 1-second)High concurrent user # with above.Continuous process control / monitoringWe have other solutions that meet these needs
8 OPC Systems .NET Benefits OPC Systems .NET provides these benefits:Central “always-on” tag repository = faster performanceTag data can come from OPC DA and/or DatabasesMulti-Threaded for faster, and more Reliable operationsBuffers data, eliminating data-loss for short outages as well as maximizing the performance of your web-linkModular, components available separately or as a suiteAffordable, not as expensive as you might thinkOPC Self-Certified, for assurance in qualityNO MORE DCOM HEADACHESAlright, so we now know what the point of this system is, so lets quickly gain an understanding of some of the benefits in the system, the very things that you can’t see, hear, smell or touch…Scalability: you know you need it! The system you implement today is likely going to grow tomorrow, and when those needs arise, you’ll need a system/platform that will give you that flexibility. Well, it’s in there and we’ll see what this means in just a moment.Multi-threaded: concurrent processing enables the software to be more responsive and utilize your computing power more efficiently. Likewise, put this system on a multi-processor PC and watch the performance increase.Buffers data: Zero data-loss is possible even with temporary network outages. Obviously this is a big deal, but you’ll see what this means in just a moment.Modular: Means you can buy just what you need, to keep costs down, or maximize on your investment and savings and go with the entire suite.Affordable: You’re about to see that there’s a lot to this system, but you’ll be surprised at how affordable and cost-effective this solution is.OPC Self-Certified: This is a big-deal. If you use OPC software, it should be Self-Tested by a minimum, if not, don’t use it. This is a seal of quality, meaning that the software has been to OPC Interoperability Workshops where it has been tested against other vendors software, but also tested by the OPC Foundation’s error injection server that passes bad and invalid information to the client to ensure that it gracefully handles and recovers from problematic situations.Oh, what’s that bottom bullet? Oh yeah, no more DCOM headaches… why? Because OPCSystems.NET is based on .NET technology and consequently uses .NET Remoting instead – which is the platform that Microsoft wanted us to migrate towards so that DCOM could die a peaceful death.
9 OPC Systems .NET Service (Tag Repository) How it works…Tag repository stores Data, and some historyData can come from OPC ServersOPC Connection is always ON eliminating connectivity overheadBrowsers see OPC Data when page opensAsync polling retrieves data to be shown in page, no refresh!AJAX PollingOPC Systems .NET Service (Tag Repository)Data SourceOPC ServerSo here’s a picture of how all the pieces fit together…In the middle of the picture is the heart of the system, the OPC Systems .NET Service. This is your Tag Repository. This is the center of the universe. All of your tags are defined here, as well as where the values of those tags come from – which could by an OPC Server, a database or your own application.All of the OPC Systems.NET applications and components communicate directly to the OPC Systems .NET Service. Notice how they don’t communicate to the OPC Server? That’s by design. If they went directly to the OPC Server then you would be using DCOM and we don’t want to use that now do we? So we go to the Service instead using .NET Remoting.Well, let’s talk about these Client application connections…PLCDCSOther
10 OPC Systems .NET Service (Tag Repository) How it works…Browser requests an “update” of the items/tags it needs.OPC Systems .NET Server responds with values that have changed:If value remains same, empty data-set returnedIf 1-value changed, that value is returnedIf the value changed multiple times, all updates sentAJAX PollingOPC Systems .NET Service (Tag Repository)Data SourceOPC ServerSo here’s a picture of how all the pieces fit together…In the middle of the picture is the heart of the system, the OPC Systems .NET Service. This is your Tag Repository. This is the center of the universe. All of your tags are defined here, as well as where the values of those tags come from – which could by an OPC Server, a database or your own application.All of the OPC Systems.NET applications and components communicate directly to the OPC Systems .NET Service. Notice how they don’t communicate to the OPC Server? That’s by design. If they went directly to the OPC Server then you would be using DCOM and we don’t want to use that now do we? So we go to the Service instead using .NET Remoting.Well, let’s talk about these Client application connections…PLCDCSOther
11 OPC Systems .NET Service (Tag Repository) ToleranceOPC Systems .NET Service (Tag Repository)Client ApplicationQueueLocalNetworkInternetTag Repository individually “caches” data to each clientIf a client goes temporarily offline, it will “catch-up” on the next update.Applies to ALL OPC Systems .NET Clients (data logging, alarms, WinForms, WebForms etc.)
12 Live DemoSetup the Tag repository, creating tags coming from multiple OPC ServersCreate a multi-page Web SiteDisplay some real-time dataUser-entry form, for writing values to TagsCharting pageAlarm display and acknowledgement pageOk, here we are, live demo time… so we have quite a lot of things to demo here. This will be a good test of all those things I’ve been talking about are true, can I show all of this in the remaining time?We’ll setup our Tag repository to acquire tags from an OPC Server.We’ll data-log those tags to a Text File.We’ll then create a simple Windows HMI application with some data, charting and alarming capabilities. Then we’ll see how to deploy it.We’ll quickly create a web-based HMI screen.So let’s switch over to our Virtual PC and demo all of this stuff.
13 Affordable Licenses start at $595 for Webforms License the entire system for just $1,995.00No OPC Server Connection or Tag CountsNo Client counts at the OPCSystems ServiceNo Text File or Database Connection CountsCode-less development tools are Runtime-freeFully documented, lots of examplesSmartClient Technology readySo what do you think? Not bad eh? There’s a lot in there huh?I’ll bet you’re wondering “yeah, but what’s the damage?” – well, you can get the whole thing for just $Now, we don’t care or count things like OPC Server connections, tag points, how many files or databases you’re going to log to. Likewise, the development tools are Runtime-free. All the documentation and tutorials are part of the package. And the SmartClient technology is a benefit of the .NET Framework and Visual Studio .NET, so guess what? That’s FREE.
14 Other Features Available Data Logging (text files and databases)Report generationAlarm logging and notificationWindows Forms development toolsRecipe management
15 Summary Convenience: Quickly and easily build & deploy HMIs Scalable Framework: allowing your system to growReliable: OPC Self-Certified, plus BufferingAlerting: Data Logging, Reporting, Alarming & NotificationsOpen: API provides interface for your apps to controlAffordable: modular, buy what you need.So to wrap-up:We’ve seen what convenience means in terms of rapid development and easy deployment meansWe understand some of the ways in which you can scale-up your systemWe can trust the software because of its OPC Self Certified status, and also trust in the communications infrastructure which can eliminate data-loss for short network outages.You’ve got the alerting capabilities for alarms and reports.You’ve got an open API for those developers out there that want and/or need to build custom software to further enhance/extend their overall systems.And it’s affordable folks. Go out there and add-up the cost of equivalent tools giving this functionality – that’s assuming that you don’t have to re-invent parts of the system yourself.
16 More Information www.softwaretoolbox.com/opcsystems … get through to an expert!Questions:Win Worrall:Tel: +1 (704)Technical Support:Tel: +1 (704)Web:So at this point, we have finished the Presentation and now I’d like to open-up the phones for Questions and Answers.