Leveraging Ignition Quick Start to Rapidly Build Real Projects

Using Powerful Tools for Faster Industrial Application Development

61 min video  /  46 minute read View slides
 

Speakers

Kent Melville

Director of Sales Engineering

Inductive Automation

Development is rarely an easy process, and getting started is often one of the hardest things about it. What if there was a way to get your next screen or application off the ground more quickly?

In this webinar, we’ll show you how to get projects started and finished more rapidly than ever by using Quick Start and other features of Ignition, an unlimited industrial platform for SCADA and much more. This is a great starting point for Ignition beginners and anyone interested in designing basic automation projects in a short amount of time.

  • Go from a blank screen to a working project quickly
  • Easily elevate your project with history, charts & more
  • Speed up development with pre-built resources
  • Learn through experimentation

Webinar Transcript

00:00
Kent: Hello. Welcome to today's webinar, Leveraging Ignition Quick Start to Rapidly Build Real Projects, using powerful tools for faster industrial application development. My name is Kent Melville, and I'll be presenting today's webinar, I'm the sales engineering manager at Inductive Automation, and that means I get to meet with customers throughout the world, talk to them about their needs, their requirements, their pain points with existing softwares and talk to them about how Ignition can solve all those things. So I get to do a lot of architecture discussions, best practice discussions, sales discussions and all that kind of stuff. Here's kind of the agenda for today, I'll be giving a brief overview of the Ignition software platform and its capabilities for rapid application development, and that will lead us into an overview of the new Quick Start feature in Ignition, then I'll give an extended demo of Quick Start and after that, I'll talk about using Inductive University, the user manual for additional training, the exchange, and we'll kinda finish up by answering your questions.

01:01
Kent: So, some basic facts about our company, Inductive Automation. We've been in business since 2003, our Ignition software platform, which turned 10 this year, is used by thousands of industrial organizations worldwide for HMI, SCADA, MES and IIoT. In fact, Ignition is used by 54% of the Fortune 100 and over 29 of the Fortune 500. So far, over 2,300 systems integrators have joined our integrator program as well. So why do they like using us? Well, certainly it gives people an industrial or a universal platform for HMI, SCADA, MES and IIoT. It's got an unlimited licensing model, cross-platform compatibility, IT standard technologies, and a scalable server-client architecture, it's web-based and web-managed with a web-deployed designer and clients, modular configurability and rapid development and deployment tools, which is really the focus of today's webinar. One of the reasons that we wanted to do this webinar is that we know from experience that development tends not to be an easy process, especially when you're new to Ignition. One of our long-standing goals for Ignition has been to make development easier, faster, more practical and more affordable, and actually our founder and CEO, Steve Hechtman, used to be a control system integrator, and he set out to create a new software platform because he was fed up with the limitations of traditional SCADA software.

02:31
Kent: And he said that the name Ignition was chosen because it helps you get projects up and running quickly. And that's even reflected in our mission statement that you can see here, which says, "Our mission is to create industrial software that empowers our customers to swiftly turn great ideas into reality, by removing all technological and economic obstacles". And that brings us to the Ignition designer. The designer is integrated right into the Ignition platform and is specifically made for rapid development. It provides a unified environment where you can design anything, and that means that you can design in different applications without having to leave the designer window. It also supports concurrent development and provides unlimited design clients so that multiple developers are able to work on the same project simultaneously, which cuts down on project development time. Another great thing about the Ignition designer is that it doesn't require you to purchase individual licenses for each design client, which distinguishes it from the design applications in other HMI/SCADA software packages that you may have used before.

03:39
Kent: The Ignition also lets you use drag and drop design or scripting to build applications, if you have little or no knowledge of scripting, don't worry, you can build projects just by dragging and dropping components onto Windows and binding components to data tags. If you do wanna use scripting to develop projects, Ignition has a powerful built-in Python scripting engine for that. And you can certainly mix and match that where it's some drag and drop, some scripting, and that's kinda what we'll be doing today. But these attributes of our designer application have been part of the Ignition platform for a long time. But in our quest for rapid development, that didn't end there. So just last month, we released the latest major version of Ignition, which is 8.1. 8.1 has a lot of new features that are great for rapid development and for new users. And Ignition is really quick to download and install. We're actually gonna do that today, but if you've never used it before, once it's installed, you get a blank screen, and it can take a little while to orient yourself, to figure out what to do with it.

04:41
Kent: So we thought we'd make it a little easier for new users to have a really good first time experience in Ignition and set them on a path to success. So we created this new feature in Ignition 8.1 called Quick Start. So now when you do a fresh install and commissioning of Ignition, you're given the option to choose this Quick Start mode, so to speak. And there are a number of different features in Quick Start, including a pre-configured sample project. This project includes core Ignition features and gives you the opportunity to use them, break them apart, add to them and play around with them so that you can get a better idea of how Ignition actually works. And it's made to be reverse engineer in the designer, so that new users have a chance to learn through experimentation. Quick Start also includes automatic configurations for a sample tag provider, an internal historian, and connections to a simulator device, and then an included database. There are simple tutorials for gateway configuration and project setup that you can follow along with as well. When we do our development today, I'll be using the Ignition perspective module, which is our premier module for visualization and application building.

05:53
Kent: In 8.1, we improved perspective with perspective symbols, which have dynamic data models that can make it easy to bind them, to process values as well as built-in animations that automatically change based on your data, also we added the perspective power chart, which lets you easily generate ad-hoc charts within a perspective session, along with many other features. And perspective workstation which deploys perspective projects as desktop applications without needing a third-party web browser. I went into detail about perspective workstation at last month's webinar, so if you're interested more in workstation, you can certainly go check that out, it's on our website. So with that all being said, let's actually get into a demo and show off how you get to Quick Start, how it's configured, and then how you can use it to build something pretty cool. And I have the installer for Ignition 8.1.1 RC 1, that was just released, I think, two days ago. We're just gonna do the latest of Ignition, so installing the RC. If you're not familiar with this, you can certainly go on our website, inductiveautomation.com, and in the top right, there's a download button, and then you can download Ignition for yourself as well.

07:15
Kent: Yeah, from there, you can also select other versions, so you could grab... Right now, if you just click the standard download button, you'd get 8.1.0, but I went to other versions and grabbed 8.1.1 RC 1. So you can grab pre-release versions to test out new features and such. I did 8.1.1 RC because we added a couple additional screens, like a prospective Power Chart and things like that to the Quick Start mode in 8.1.1. So this is the installer. I'm just leaving everything as the defaults here. You can, of course, come in and choose which modules you wanna install, but I'm just gonna leave everything typical here. And what this is gonna do is, this installer includes all the modules. I don't need to come in and install other modules separately after it's installed. It's creating a service so that if I restart my computer or my server that I have installed Ignition on, it automatically comes back up. And then it's gonna take me through a commissioning phase where I can choose what ports I want this to run on, and what my default user is. And then, the last part of that will be where we actually choose whether or not we're gonna start with Quick Start, and in this case, yes, absolutely, we are.

08:36
Kent: This installer... I guess while I'm waiting, I'll tell you more about it. But when you go to upgrade, so I'd say, I had installed Ignition 8.1.0 and I wanted to upgrade to 8.1.1, the installer is all you need. So you'd just download the new installer, run it on top of the other one, it'll detect that it already exists, and it will just do an upgrade for you. My install just finished, and it opened up on my other browser here, but when you get to commissioning, the first thing it asks you to do is choose which edition of Ignition you're wanting to run. So most of the time you're gonna select this middle one, Ignition, as our standard platform. We do have Ignition Edge over here on the right for lightweight applications, that edge-of-network type things. We also have Ignition Maker Edition, which is our free version that you can use for personal and non-commercial use. So today, we're just doing the standard Ignition. And I agree to the terms and conditions, I'm gonna create a user here. And this is gonna be the user that we sign into the gateway when we start doing configuration. It's also what we're gonna use to sign in to the designer. You can certainly make additional users or connect to Active Directory or identity providers, all that kind of stuff.

09:54
Kent: And then I'm gonna leave the default ports, but if I wanted to change which ports this was running on, I could certainly do that as well. Ignition is now taking those ports, launching its service on those ports and everything, and then it'll take us to what we call the gateway webpage. And the first thing we'll be prompted to do on that gateway webpage is to choose whether or not we want Quick Start. Like I said before, we will definitely say yes. Take a moment to appreciate our design team. It's pretty recent that we upgraded this installer, and you can see all these fun moving graphics as you do the install process, more interesting than just a typical loading bar or a spinning circle or something. But yeah, so Ignition is just gonna start up. Before we just jump straight into the designer and start building something, we are going to just show you inside the gateway webpage, what you got out of the box when you choose Quick Start. And we talked about it a little bit in the slides before. We'll kinda go through, and we'll show you inside the gateway webpage where all those things were added and what they look like and how you could modify them.

11:00
Kent: It's worth noting with all of those elements, we tried to prefix them, so that if you do use this as kind of a springboard to start developing your application, you'd know which things you could go and remove later that had been part of Quick Start. So Ignition is now fully installed, fully set up. And this is our prompt, "Enable Quick Start? Do you want to do this?" And I'm gonna say yes, I'm gonna enable Quick Start, you certainly don't have to when you do install, and it's gonna prompt you to log in. As I said before, this is gonna be the same user that I just created during that commissioning phase. And the other part of Quick Start is, if you're doing an upgrade, then it's not gonna show you Quick Start as an option, only from a fresh install, and that's because you wouldn't want it to overwrite things you'd already done or mess up things that were in your existing projects, so Quick Start only shows up on a fresh install. So this is our gateway webpage. When you install Ignition, the first thing I want to highlight if you are not aware, when you download Ignition and install it from our website, you get a 2-hour trial mode. And that 2-hour trial is infinitely resettable, so you can just keep resetting every two hours if you'd like. When you get a license key, then you just activate it, that banner goes away.

12:21
Kent: But you can see on the right-hand side, we have this Explore Ignition bar. This is part of Quick Start mode, and it says like, "Hey, you already completed two out of five steps. You installed Ignition, and you enabled the starter configuration." And it's got three recommendations for next steps that you could take. We're gonna take those in just a second, but before I do, I wanted to come and show you the things that had been added. So I went to the configuration tab, and the things I wanted to show you, first is, if I come to Projects, we have a project, and it's called Sample Quick Start. And we'll go ahead and launch this here in a minute, but I just wanna show you first, you have a project. The second thing that you have is an audit log. So you can see here, they've added an audit profile so that it can log everything that users do when they sign in and click on stuff and all that, but where is it actually storing that audit log? That's the next thing it added for you. It added a built-in SQLite database connection, and so we have a database that we can store history to, store the audit log to. And also, that we can store this alarm journal too. That's the next thing that was created automatically for us, something to track all alarms logged into that database, so we can see alarm history.

13:44
Kent: It also created a real-time tag provider. So, those familiar with Ignition will know that when you install Ignition, you always get this default tag provider, that's just really a parent level folder that you can put tags in. Rather than having some sample tags for you inside default, we create a separate tag provider for this Quick Start mode called sample tags. And so that you can keep them separate from real tags you might have. And then the last thing to show you here is if I come to device connections, then we have a sample device, that's a programmable device simulator that is connected, and so we can already be able to see some of those tags and that new tag provider we have. So, with that being said, that's kind of what you get from a Quick Start mode automatically configured for you. So, if I come back to home, then we can start going through these steps on the side. First one being, get this designer launcher that you would download. And we'll show you what the install process looks like. You just click install, and when that finishes, that will be what you use to actually launch the designer here. And so, I already have it installed and so it's telling me, "Hey, don't actually do this." So, I'm just gonna exit there.

15:12
Kent: But the next thing to do would be to actually open up the starter project inside the designer, so I'm gonna go ahead and open my designer launcher here. And you can see I have connected up to a bunch of gateways over time. So, one designer launcher can connect to many different projects, many different applications on those projects, or many different projects on different gateways and things like that. But I'm just gonna connect to my local computer here, the local host, where we just installed Ignition. And as this comes up, I'll be able to see that project that we already had connected because of Quick Start. That's called the Quick Start project, and we'll go ahead and launch that. And of course, I'm prompted to log in with my same credentials I created during the commissioning phase, and so here I can see sample Quick Start, so sample Quick Start Project, and I can open that. As that's opening, we've completed that step here. And so, if I come back to my gateway, when this actually does finish loading, you'll see that this updates and show that that is complete. And then the last step here is to actually launch a session on the client side to see what's in that project.

16:41
Kent: So, since this is still loading, to keep this moving today, I'm gonna go ahead and launch a session. So I can see my active projects here. I click launch project, and here is my sample project that I have created for me by Quick Start. And I just wanted to highlight a couple of things that are on here for you, and then we'll actually develop something new using this as a guide. So, we have four tabs represented inside this project; home, which is what we're on right now, and then we have Ignition 101. This is gonna show you various features of Ignition, things that you do with the application, and so right now I'm on bindings. And so, I can see how there are different elements on screen and how I can interact with them, how they affect things. Like here, I can change the speed on that motor. This is one of those new perspective symbols, so is this vessel here. But yeah, I can kinda play around with this, see how it works. There's lots of different screens in here, I could see how Transforms work, I could see how Themes work inside Ignition. Like right now, I'm in this light theme and I could toggle this to dark and see how everything updates and changes for me. We'll show that off in a little bit here if we have time.

18:23
Kent: Certainly, there's a concept of embedded views, as in create templates essentially and then put them inside other projects or other screens. Certainly, you can create real-time status and control type screens or historical screens, see alarming. All of these screens are built to be simple, so that you can go into the designer and reverse engineer them, like we've talked about, kinda see how they're built, how you'd accomplish these things inside Ignition. Now, on the layouts tab, this one is pretty cool because this is showing you different ideas for how to organize your application. And so, if I click open on List Panes here, when this comes up here then you can see I've got these list items, and then as I select these, I could have details show up on the right-hand side here, maybe I have a parent navigation that's changing some kind of settings here, so it shows you a potential layout. There are other ones as well, fluid columns, box fluid, all these kinds of things. And so you can certainly check these out, and we're actually gonna be using one of these today to give us the look and feel we want for our project.

19:53
Kent: Now the last tab here inside this project is called Components, and here we have this chart range selector, where I can come and see history, I can see, alright, we have gauges inside Ignition, I can see different ways I might configure that gauge component. Some people get confused in the designer, they think when I drag a component on screen, it only has one look and feel, but this shows you there are a lot of different ways to configure it, change the look and feel, and if you want to know how to do that, you can just see these as samples, kinda reverse engineer them. Same would go for pie charts or our new power chart component. You could see this in action, actually being able to take tags and add them to a chart dynamically to create something on the fly. Simple gauges, we're actually gonna use one of these today as well. When you drag it on, it just shows this 180-degree arc. We'll switch it to a 360-degree arc, all that kind of stuff. Yeah, really, this is just meant to kinda show you that there are lots of different things you can build inside Ignition. Does this project replace our online demo project? No, we still have the online demo project so that you can see more complete applications that are focused on specific industries or showing off specific features of Ignition, but this is meant to be a simple project to allow you to digest it a little more easily.

21:33
Kent: So yeah, there's a page for each of the components inside Ignition. And so, say I wanted to learn how the dashboard component works. That's a pretty cool one. That one could be confusing if I just access it in the designer, but in this environment, I can see, oh, well, I can come here and select, I wanna see this as a weather component. I wanna view a bunch of stuff here as a time series chart. Maybe I wanted to have something on here that is alarm status, something on here that is a gauge or an LED display. It's easy to use this dashboard component to start building interesting things quickly. So you can certainly check that out here, see how that all works. Other things in this project are cool, LED displays, oh, you can change the colors, maybe you didn't know that, and so on. So long story short, there's a lot of different things you could check out in here. The only other ones that I really want to hit real quick is that, it shows off a flex repeater, we're gonna be checking out this screen later to see how they do that. Talks about embedded views, you can embed other views inside other views, use templates. We'll do a little bit of that today. And then, certainly, we have all the new symbol graphics down here as part of Perspective symbols.

23:12
Kent: And these are cool as well because it's a people graphic that has all these different properties, so I could say I actually want this to look like a P&ID or a mimic, and then I can set my state here to be down to a state tag in the PLC, and when it's running, that actually has graphics that move and such. If I switch the default, you can see it changes the look and feel. So yeah, you can learn a lot just by going through this project, but since we're approaching halfway through this webinar, we gotta get to some development. So with that being said, I'm gonna jump here into the designer that we had launched. And the first thing to note here is, if you're unfamiliar with the Ignition designer, you have a project browser in the top left, and this is where you can go through and select various things to do. So I could come and develop Perspective applications, I could come and develop Vision applications, I could come and develop reports. You can see as I click on any of these, it changes my workspace here of what I can develop. Today, we're just gonna develop a Perspective application. And if I come into this view structure, you can see I have Home, Ignition 101, Layouts, and Components, so I have all the same folders as I had tabs along the top of my project, that's how we've broken it up. We also have Framework, which is just embedded views that we're using throughout.

24:53
Kent: So, today, if I wanted to go through and say like, "Oh, the XY charts was pretty cool. How do I really leverage that? How do I see how those are configured?" Then you would just come in and say, alright, I'd go to Components, Component Views here, that was under Charts, I could open XY Charts, and I'd be able to see as this loads, that I have three different charts here. And if I wanted to see, "Oh, how does this work?" Well, maybe I click into this chart down here, and for this guy inside Ignition, you can see as I click on things, it actually expands my view in the project browser, so I can see the hierarchy of things. So I can see that I've got this flex container. If I hover over things, it'll show me what these are. I have a flex container that is called Charts, it's got all my charts in it, and then I have another container that is my top two charts, and then underneath that, I have just this XY chart. And so if I've selected XY chart on the right-hand side, it's gonna show me some properties here, and so maybe I'm like, "Oh, this is kinda cool, how it's got these angles here, this step motion," and so then I could go into my series here and say, "Oh look, my renderer... " That you can't see very well, let me pull this out. "My renderer is set to a step line, that's how you do that."

26:24
Kent: And then, I'm like, "Does that apply everywhere?" And I could come into this other chart and say, "Oh okay, well, what if I come into my series here?" Let's see, this one... That's my column, what if I wanna change that line to step, then you can see that it updated that to show steps. So you can kind of reverse engineer, that's what we're talking about, that you could come in, you could see something cool, you could look at the properties, you could see how it's done, and then you could try applying that in other places. So with that being said, I'm gonna go ahead and close the XY chart and talk about what we're gonna build today. So, what we're gonna build is... I really like this layout that we have, created by Ray from our team, if you looked at some of our design webinars, but he created this List Panes, and to me, this kinda looks like a type of project where you'd have sites listed on the side, and maybe have a high-level overview of something going on at those sites, and then as I select those sites, I'd see details about that site inside this center area. And so, today we're going to create maybe a little solar project or something that shows power on these, and I can click on them and it'll show me some history in the center area.

27:50
Kent: And so, to get started, we're going to come in and find our layouts folder, and I can see Panes here is gonna be what is the equivalent of that layout that we were just looking at. And so, I'm going to copy this, and I'm gonna create a new folder. And for this folder, let's call it "site dashboard". That's what we're gonna create today, a site dashboard. And in my site dashboard, I'm going to paste that layout that was created for me. And in my case, it's got a parent called main, and inside it's got a main large and a main small, so that it could be responsive. Today, all we're gonna have time for is to affect the main large, but you could take everything we do there and apply it to the main small as well. But I'm going to add a page configuration. So inside the browser, when I go to actually launch a perspective project, it's based on these page configurations that translates to a URL. And so I'm gonna add a new one, and we're just gonna call this site, and the primary view for this, I'm gonna go into our new site dashboard folder and to panes, and I'm gonna just go straight to main large. So yeah, that's gonna allow me to launch this project, and so I'll actually go and modify the main large now to allow us to start changing the look and feel of this thing.

29:43
Kent: So how do I even go about doing that? Well, we are gonna start to reverse engineer this, now we're gonna start replacing items in it with items that we would want. And so if I click on this "list a heading". The first thing I wanna do is change this so that instead of saying "list a heading", it says "sites list", for example. So I can see when I click on this, oh, it's got a property. It says "list a heading", that's probably this "list a heading" right there. So I could just come in here and change this to say "sites list". But I see that there's this little blue link next to it, and if I click on that, that shows me, oh, well, this is actually based on an expression binding that was grabbing something else. I don't care about any of that, so I'm just gonna remove the binding. Mine will now say "sites list". But also down here, I see another binding on background color. If I go look at that, it looks like, oh, we're setting an active color for this guy, and it's coming from the view, so I go, "Well, I do like this purple, but maybe I wanna switch this to gray or something." Instead of just changing it on this one element, when I look at that binding, I'm like, that active color probably applies to everything. And so then I can come up to my view, main large, and I do see that, I see an active color.

31:05
Kent: I see that this is bound to being selective for A, B or C, which is this navigation on the side. We're not gonna use that today, so I'm gonna go ahead and remove that binding, and instead, we're just gonna change the color that it's attached to. But this doesn't look like any color I've seen before, and so then I'm like, "Well, what is this?" It's something that changes the colors, and so then maybe I will go to our online user manual, as you're kind of reverse engineering this thing, and you are looking for styles, you're looking for themes. And so, if I come to our Perspectives themes page, which you'd find pretty quickly, I could go down and say, well, hey, there's actually all these built-in theme colors that I can use, and these would be safe to use when people change the theme from a light mode to a dark mode, that kind of stuff. We were using this purple in here. But we're gonna make ours a little simpler, I'm just gonna use a gray. So let's change ours to neutral 30. I come back into the designer, come back into main large, come to active color. I'm gonna make it neutral 30. Great, so now I've got gray, but then I might see that it's pretty light and my text is all light. So let's actually come back to this heading here, and now I want to change the color of this. Well, how do I do that?

32:58
Kent: Well, I have the style element here. I could see that I was able to add a background color. And so, then you could discover inside styles. Oh, I actually have the ability to change all different kinds of things here. And in my case, I could come here and make this red or something. But we just saw that I can apply things that are themes safe. And so I'm gonna do that here. I'm gonna make it so that rather than tying this to a specific color, I'm gonna put in that this is going to be neutral 90, for example. My dash is at the beginning of that. Alright. So we've got something dark there. So pretty simple so far, I've just changed the color, I've changed the label. Next, I wanna actually change these list items to be actual things about sites. Well, I don't have anything that is a site yet. How is this even working? These list items? Well, I can see on the side, I've got this list item object. If I hover over that, I can see it's a flex repeater. And so, now I look at the properties and I can see it's got a path, then it's got all these instances. And so, the path is pointing to another view, in this case, a container label. So we probably need to create a view that's gonna be for our sites and put it as the path here, and then we can have all these instances. So let's do that.

34:37
Kent: So I'm gonna come into my site dashboard folder, I'm gonna create a new view and we're just gonna call this, Site. And I'm gonna make a flex view, create that. And this is pretty big, I need to go into a little repeating box here, so I'm gonna change this to a width of 300 and a height of, let's say, 250. So now I've got this container here, and so let's start putting things in it. So I've got my perspective components over on the side. On the top, let's go ahead and add a label. I come in and add the label, and then underneath that, I'm going to want to have a simple gauge, let's do. So my simple gauge, I want that to take up the full width, so I'm gonna switch this to a one. My label seems a little small, so I'm gonna change my basis here to, let's say, 50. And align-wise, I'm gonna make it on the bottom, give me a little more padding on the top. And I learned about styles here, so I'm going to switch this to the size of, let's say, 25, and let's also center it. So I come in, text. And text align, center. So that's great, except that I want my color also to be something that is gonna be safe for themes. So let's also come in here and say, for my color here we're gonna use that same syntax here, var neutral dash, we'll say 90.

36:58
Kent: Alright. So we've got something we're kind of putting together here, but I want my label to say, "This is site one", for example. So now I've got something simple here, and if I wanted to change my gauge here, I'm like, "Oh well, this is a cool gauge, but I wanna do that 360 effect that I had before". I see that there's some angles here, but maybe I don't know what those are, as far as what I need to set them to, to make it go all the way around. 'Cause I can see that the end angle is already 360. I thought that from my geometry back in the day, 360 was all the way around. So maybe I go into components and I go in and I look at charts. I open our simple gauge example, and I say, "Of these charts, this last one, this one goes all the way around". So if I click on that, let's see what they had those settings set to. And you can do this a lot with the Quick Start project of trying to reverse engineer things, use them in other places. And so this one, and so I can say, "Oh, I used a start angle of 90 and an end angle of 450". So let's go do that for ours as well. If I come back into Site, I could say, "Oh, my start angle here is 90 and my end angle here is 450". Great, now it goes all the way around. Easy-peasy.

38:47
Kent: Now, this is cool, in the sense that if I go to main large again, if I save this, I could come into my flex repeater, and I can now change my path to use the site. But the problem with this is that now all of them are showing site one. Well, that's not really what I wanted, and actually I want this gauge to be a little bigger too. So I am gonna come in here and change my element position to 250, make them all a little taller, but I still have this problem on site one. How did I do that before with these instances? Well, if I look in, it has a label that was being passed into each instance, and they all said something specific. So how does the label tie in with these different components? So if I wanted to try to reverse engineer this, maybe once again, I say, "Well, you know what? I remember that I saw that flex repeater when I was looking through the project." Let's go ahead and launch that screen, see how it works. Well, if I come in here, I can see this one has text that says "view instance one", and the next one says "view instance two". So somehow they're passing text into whatever this path is, and so here I can see, alright, well, what is this opening? This is opening inside Component Views, Framework, View Template.

40:19
Kent: So let's do the same thing. If we go into Framework, and we open up the view template, then I can see, oh, this has a parameter that is associated with it called value, set to "value", and I see that it shows "value" right there. To test my theory, if that's what it's connected to, I could change this to "test value", and hey, it is changing that. I could click and see, well, it's really here. Oh, there's a binding, so it must be passed to this parameter, and I could go, or watch the video on Inductive University about flex repeaters, or look at the documentation about flex repeaters, I'd be able to see, yes, you can pass parameters into things, and that can make them dynamic. But you'd be prompted of what to look for in Inductive University or our user manual by going through these projects, and so, let's do that here, I'm gonna go back to Site. On my site, I'm gonna add a param, and in my case, I'm gonna make it site num. I'll go ahead and make mine a one, and then for my text here, I'm going to do this as an expression where I concat site, and gonna grab that parameter that we're passing in here, so go to params, site num, okay. So that's gonna give me a text string that says "site one" or "site two" or "site three", whatever site num parameter is passed to them.

42:07
Kent: So if I come back to main large now, you can see that this still says "site one", "site one", "site one", and that's because we need to come in, and for each instance now, I need to change the parameter I'm passing in to be site num, and for my first one, it's gonna be a one, and for this next one, I'm gonna pass in a two, and for this next one, bet you can guess, I'm gonna pass in a three, and so on all the way down. Now you could certainly have multiple parameters here that you build out. I'll just do a few of these here.

[pause]

43:12
Kent: Yeah, that's plenty, let's go ahead and just delete these last two for the sake of time. Alright, so now I've got all these different sites, I can see that my number's being passed in, but I actually wanna show data on here. Well, there's some sample tags that come with the Quick Start project, but I would really prefer to start using some real tags, so I'm actually going to import some tags that I have that are... In my case, they're just memory tags, but this is where you'd start pulling in tags from your real devices, so you can marry it up with your real project you start building based on Quick Start. So in my case here, what I'm going to do... What's the easiest way for me to do this real quick? I'm going to import... Oh, well... Oh, yeah, I went into the root. So import, yes. What am I importing? Inside my desktop, I have my site UDT that I've created, and then in here, I'm going to import my site text. Just for the sake of time, I created these ahead of time so that we could get through this a little faster. But now these are really simple, they're actually just memory tags, not even changing, but I've got a complex tag called "site". Inside that I have power and voltage, and I've created a bunch of instances of those, one for each site.

45:03
Kent: And so now they've got these tags. Then if I come back to Site here, then I want the value property of my gauge, my simple gauge here to be based on power, say, and so I could take power, drag that into value, I'm now seeing that show up here. Now this is pointing directly to site one, which works for this, but I actually want that to be dynamic, based on the parameter that's being passed in here, and so what we're gonna do is, you could certainly go and check somewhere else in the project, see how this is being done, like on our... Real-time stats control has good examples of this. For the sake of time, I'm just gonna add it here, but we're gonna say, alright, site one is actually gonna be a variable we pass in here, and it's gonna be based on my parameter "site num". And so if I do that, hit Apply, I can see it's getting back the proper tag, so that's good. That's now working. If I come back to the main large... Yeah, now these all have different values. I can see that those values are all pretty small, so let's go back to our gauge, and then I might say, "Hey, you know, I don't actually want this to be out of 100, I want this to be out of 10, 'cause we're not making that many megawatts of power."

46:50
Kent: And so, other things to do here, I'm thinking we only have about 10 minutes left, I wanna make sure we have some time for questions and things, so what I'm gonna do really quick here is, now I'll come back to main large, and we're gonna say, "Alright, this middle section, I'm just gonna make this History," so let's click over here. First off, I can see that this is really light and grayed out. If I come and really click on that, I can see that there's an opacity that's set. I'm gonna delete that for the selected item details here. We wanna actually just replace that, and so instead I'm gonna put in a power chart. So coming into Details, we add this power chart. And it didn't put it where I wanted it to, so I'm gonna delete that real quick. There's a good example here, actually, of... So this right here is just... This is where I wanna... I wanna make sure I'm inside Details. Alright, so good example there. You always gotta make sure you're deep selected where you wanna do an action, so I'm gonna come in here now, choose my power chart, perfect. And then I'm going to just delete what I had here. And so now I've got this chart here, and if I wanted to start configuring this power chart, I can actually just do that inside the client. Go into preview mode, select some tags, come down here.

48:47
Kent: In my case, I wanna grab, say, site one, and show power and voltage, add these. But I don't want somebody to have to come in and actually... Did it add those? Yes it did. And I don't wanna show the last eight hours, 'cause we've only been working for 30 minutes or so, so I'll change this to the last 30 minutes. Alright. So we've got this data that's now coming in, but that's only gonna ever show site one, or somebody would have to come and change it from site two, so what I'm gonna do is... Be the same process we were doing before, I'm gonna come look at this chart here. I'm gonna come in and say, "Alright, we've got various pens that were added to this, in our case, two of 'em. I can come to Data, I can see Source, my source is pointing directly to site one, that's what I dragged on, but I want to come in here and make this dynamic, so I'm gonna actually do it to an expression, and we're gonna use that concat again. And what I wanna concat is my parameter. Oops. Well, I need to add it here. [chuckle] Let me cancel this real quick. Yeah, we're out of time.

50:33
Kent: So things to do really quick, I could certainly come and make that dynamic by adding an expression. What I am gonna do real quick is, on this power chart, I'm gonna show you that I could have added a custom property on this, and that custom property could be the site that's selected. [chuckle] Well, let's try to think how to use the last five minutes to show something that's a little more complete here. Let us do this. I'm gonna wrap this guy... Well, no, that'll be fine. So we're gonna add a value here, this is gonna be "site num", and I'm gonna set it to one, and then we can come into our pens again, we're going to come to Data for our source here. Like I was talking about, we're gonna do an expression, and for this, we're gonna use concat, like I talked about. And as part of that, we're gonna replace this site one here. And what are we gonna replace it with? We are going to replace it with that custom proper we just added, so I can come into my power chart, I can see custom, I can see site num, and add that right there. And I'm gonna copy this whole thing, Control C, say okay, and do the same thing for my other pen here.

52:41
Kent: But for this one, we're not using power, we are using voltage. Say okay. And so now we just need to figure out when we click on one of these sites, how do we make it so that it shows the appropriate data? And so what you can do is, we could have kinda checked out this nav section, 'cause when we clicked on this, we knew it changed the color of everything, and if we clicked on that, we would have discovered that this is a... Embedded view, I could come to nav. And on this, I would see that it did like a sendMessage, we could certainly look into that, learn about sendMessage. In my case, I'm gonna keep it really simple. We only have four minutes left. So what I'm gonna do now is, I actually have this in a more complete state on another machine, so let me actually just switch to a more complete state. I'll show you that. I apologize, we didn't get to everything today. If you're interested in seeing more of this, certainly reach out to your sales person, and we could schedule a meeting. I'd be happy to show it to you individually, but I'm gonna go ahead and log into this other system real quick, just to show you what this could look like, complete.

54:19
Kent: And thank you for bearing with me here as I sign into this. But I just wanted to kinda highlight a couple things while I'm doing this, that were additional slides. So as you saw here, Quick Start is gonna be a great tool to kinda reverse engineer, see how things could be done, start building out a project, use these layouts to start doing something interesting. But then also, it's still gonna need to be supplemented by additional resources that we have out there. And so those resources that would be available to you would be, first of all, Inductive University. So if you're not familiar with Inductive University, Inductive University is our free online training at inductiveuniversity.com. There's over 600 free videos there that you could check out, and they walk you through the basics of installing Ignition from scratch, all the way up to creating interesting projects. And it can be something that you start from the beginning, and you just kinda watch every video in order, or it can be something that you just kind of bounce around, and either way is fine. One great thing is that we have seen that there have been people who have actually used it as a training tool, so that they can have all their new hires go through that to get up to speed.

56:03
Kent: And one example of that is Vertech, Titus Crabb. He has all of his people do that. It's seen great success. We actually have 4500 different companies that are using Inductive University as training tools for their engineers, so we're excited about that. It gives you the ability to track it, and, sorry, I am just about to launch this thing here. So yeah, definitely check out Inductive University, use it as a tool. And then, sorry, this is now here, let me see if I can pull this over. Alright, so this is what the project would look like if we had a little bit more time, so have a chart, have a site. When I click on these sites, it's actually toggling the site that's shown over here. I'm doing that with a sendMessage, which is a scripting function you could check out, or you can kinda reverse engineer it, looking at these nav buttons here, 'cause they're doing the same thing. If I'd had more time, what I would have done here is, I pulled in the content view of the fluid layout as well, so you could come and check that out. I also went to the themes page and copied that, so you could see here that I could switch this to dark cool. And because we're choosing all of those theme-safe variables for assigning our colors to, everything just changes really nicely there.

57:38
Kent: And you could build out a project like this, if we had another 10-15 minutes. Lastly, if I come back to our presentation here... We talked about Inductive University, and about how people are using it as part of their onboarding. You can also certainly check out the user manual, there's a lot of good stuff in there, I highly recommend you check it out. And also we have a bunch of pre-built things on the Ignition Exchange, you should check that out too. This is something that's near and dear to my heart. Me and my team and I try to put a lot of resources here on cool things you can just check out, download, add to your projects, use free of charge, and the whole community is doing that as well, so everybody can go upload and share resources. Try it yourself. If you wanna see more, certainly reach out to your Account Executive. You can call us at 1-800-266-7798. We'd be happy to show you Ignition, show you Quick Start, help you get started. I'm gonna take a quick look here at these questions. We did have a series of questions that have come in. People said, related to online demo projects, which sectors/industries are approached? We have a water demo project available at demo.inductiveautomation.com, also oil and gas, and working on an automotive project, so stay tuned, that will be added soon.

58:57
Kent: And then we just have some other generic projects that show RFID scanning and things like that. Let's see other things. What exactly is the unlimited licensing model? Yeah, so you purchase a server, and you can max out whatever that server can handle. So it doesn't mean that you buy one license and you can run that at unlimited sites with unlimited servers, things like that, but for a single server, you can connect to as many devices as you want, you can connect as many visualization clients as you want, you can connect to as many devices as you want, up until what that server can handle, and what that really means is about 250,000 tags, about 250 perspective clients running on a single machine. And once again, people are asking about that demo project on the website, it's demo.inductiveautomation.com, that you can navigate to it. People are asking, Can you put sample Quick Start on the project exchange? Yes, that's a good idea. That's something that we've talked about, and so we will be putting the Quick Start project on the exchange, or at least we're gonna be adding it to our online demo projects and we've included with the download for that.

1:00:02
Kent: But yeah, I recognize that it's maybe difficult sometimes to go do a fresh install and pull this out, and so being able to just download it from the exchange would be very useful, so we will certainly add that to our list of things. I appreciate everyone's time today. I'll also see if I can maybe take this project that I created and make that available, the final product as well, so you could come and see kinda how that all works, make that available too, but I appreciate your time today. Thank you everyone. Have a great day.

Posted on November 9, 2020