Search
Close this search box.
By Tebello Masedi
16 October 2020

How-To: Create Seamless Integration Between Ignition Scada And Canary Historian

Share

Table of Contents

Transcript


00:00
Lenny
Last week, we had a very great session about how do you get your PLC status tags into ignition. If you already have a project with some standards, how would you get them into ignition and start building out your udts. And this week, we’re going to move a little bit to the Canary story, and we’re going to look at how can I now take the data that I’m getting from our plcs into the ignition SCADA platform and. And integrate that within the Canary historian. Obviously, the Canary historian is a purpose built manufacturing historian. And we’re going to look at a little bit of the methods and techniques that we can utilize to actually get data into Canary being from the ignition SCADA solution. 


00:42
Lenny
Before we do that, I just quickly want to go over a little bit of an agenda and a little bit of architecture of what we’re going to see and how we can actually get data into Canary itself. So what we’ll be discussing today is just very briefly, we’ll have a little bit of an overview on the architecture of Canary. How would you actually deploy that on a manufacturing environment? And then after that, we will go into a little bit of deeper dive into the different ways that we can actually get data connectivity into my Canary story. Now, there’s numerous ways that we can do this with ignition. We can use the UA connectivity, being that ignition does act as an UA server, so we can utilize that to get our tags into the Canary story. 


01:30
Lenny
Obviously, we can also use the MQTT protocol to push data from, potentially a remote station right into a Canary historian. And then lastly, we’ll look at the purpose build ignition module from Canary, where you can actually now extend your history provider inside of ignition to push the data directly into the Canary historia. So that’s the three options that we’re going to explore this afternoon, and I’ll show you how to do all three of these connectivity types to get data into Canary. Just a little bit about Canary itself. It’s a very simple process to actually start analyzing historical data from your plant. We’re going to focus today on step number one, which is actually collecting the data and pushing it into the Canary historian. Now, the Canary historian has a numerous amount of collectors. They call it connectors or collectors. Sorry. 


02:27
Lenny
And that is how we can actually get data, real time process data into my Canary historian. Now, there’s numerous ones. We spoke about them a little bit when we talked about the introduction of the agenda. Obviously, we can utilize MQTT with the Sparkflapp protocol on top of that to automatically populate and push data into my tags, we’re also going to look at the OPC UA connectivity. You can also do da with the canary historian scada systems. Just as there’s a module specifically written for the ignition SCADA system, they do have other components to get data from other types of SCADA systems into the canary story as well. And then obviously we can also go and integrate data that sits into SQL databases, CSV files, and they also have a very good web and. 


03:19
Lenny
Net API that you can utilize to not only get data into the Canary storion, but also get data out of it. All right, now, if we look at a typical type of architecture of how you would deploy these collectors, it’s pretty simple on your site environment. So obviously we would like to get the collectors to as close as our source of where the data covered as possible. So in this scenario, it’s a very typical kind of architecture that we see on manufacturing environments. We’ve got our plcs or we devices, we’ve got some sort of OPC server or translation server or driver server that can communicate to these plcs and translate the data either out to the OPC, UA or DA so that other systems like SCaDA systems, et cetera, can communicate and can source that data. 


04:10
Lenny
So what we’ll do from a canary perspective is if it’s allowed, and if we can, we would like to go and add what we call our Canary sender server right there on the same node or the same box as where your OPC server is running. Then obviously we can either utilize UA or DA to communicate to that OPC server and start pushing data into our actual canary of, and then obviously that will push the data to the historian. The historian can be local on site, the historian can be hosted the eastore and forward technology to get the data from the canary sender service into the Canary historian. So it all depends on the use case and the architecture that needs to be deployed for the typical or the client’s needs. At the end of the day, we can do exactly the same with MQTT. 


05:07
Lenny
So if you have an MQTT broker now, that broker can be local, it can be in the cloud. What we will do is we’d also connect the Canary sender service to that MQTT broker and then any tag that’s been pushed to that MQTT broker that adheres to the spark plug B protocol, that canary sender service will be able to consume that payload. And obviously, if that tag did not exist in the historian, it will go and create it. It will build it for us, it will start historizing the data inside of the canary story. So that’s typical kind of architecture that we’ll deploy either utilizing OPC or utilizing NQTT to get the data into our Canary storing solution. All right, that’s it from a PowerPoint perspective. So we’re going to go straight into demo again. It’s my trusty old Tesla demo slide here. 


06:04
Lenny
I’m still waiting for the day that I’m going to break the window and my demo is going to go horribly wrong. But just to tell you guys, this is a live demo. So I’m going to go and build this out live right here in front of us. Okay, so let’s look at a few things here. I’m going to switch to my actual vm that I’ve got running. That’s not too far. And let’s have a look at where we ended off last week. So last week I’ve got my ignition Scada up and running. So I’ve got some data from my plcs into my ignition Scada. And as I mentioned, the ignition SCADA solution is in actual fact an UA server as well. 


06:44
Lenny
So if I open up my Internet explorer here and I go to my gateway, my ignition gateway, and I go to the configuration section of my gateway, if I browse down a little bit, you’ll notice that there is an OPC client connection option here. If I click on that OPc client connection, it will show me that there’s already an UA server connected. And in the description there, it says this is a loopback connection to the ignition’s own OPC UA server. So this client connection is actually connecting to my current ignition OPC UA server. If I drop down on the more button here and I look at the endpoint, I can see actually at which endpoint this client is connecting. So ignition is actually starting up an OPC UA server on port 62541 here. That can be changed. 


07:42
Lenny
So in the ignition server settings here, I can go and obviously configure this to tell me what is the actual port number that I need to spin this UA server up on. What is the security policies that it will enable from an UA perspective. And you can specify multiple security protocols that it will allow to bound and you can go and specify different host names to actually bound that OPC UA server port on. So that’s all configurable. By default. It will be on port 62541. All right, so if I look at my modules here from an ignition perspective, my OPC UA module is running. So technically I should be able to connect to this OPC UA server that’s running on my gateway here. So how do I do this from a canary perspective? Now, I’ve already got the Canary historian installed on this box. 


08:36
Lenny
I’m going to go to my start menu here, type in to connect to the canary admin tool, and I’m going to launch that up. Now, this is a very user friendly kind of environment where I can now go and set up my different ways that I can get data into my canary historian. Notice that I’ve got a whole bunch of different data sets configured in this historian just for the purpose of this demo. There’s an OPC UA data set that I’ll obviously go push in all my OPC UA data. There’s an ignition data set where I would be pushing in the native integration from ignition into canary. And then there’s also an element eight data set that I will utilize for the MQTT protocol. 


09:18
Lenny
Now, these data sets, think of them as logical ways that you can go and group your data together from a site to start isolating particular site areas with data, et cetera. So it’s very flexible in these data sets that you can configure to actually start pushing your data in from your different plant sources. Right. So I’m going to obviously utilize this OPC UA data source that I’ve got there. Now. You’ll notice on the home menu, I’ve got my OPC collector interface here. So obviously I’ll use that to connect to this UA server. So I’m going to go and select that. Currently, I’ve got one session that I’ve configured previously. It’s not active, so you notice it’s light gray. So this collector is actually not connecting any data from that perspective. But I’m going to make a new one. 


10:10
Lenny
So I’m going to go and create a new session. I’m going to call this session my changemaker Friday session, and I’m going to connect to my local canary historian, and I’m going to push the data that I’m collecting from this UA source, obviously, to my UA data set that I’ve got here. You’ll notice now that it’ll also ask me what is my hostname or URL for my OPC server that I need to connect to. So obviously, I’m running the same OPC UA server on the same node. So I’m going to connect to localhost, and then I also need to type in the port name. Now, as you remembered from what I shown in the previous slide the default port for the OPC UA server on Canary is 62541. 


10:59
Lenny
All right, I’ve enabled the non security protocol on the OPC UA server in ignition so I don’t have to use security in this example. So technically this is all that I have to configure to get a connection to that OPC server going. Notice at the top here it’s got this nice red bar that says I need to apply the changes. So I’m just going to save the changes that I’ve got here. And currently it will automatically create one group where I can group my tags together. But currently there’s no tags in this tag group to start historizing. If I click on the browse option here, what it will do is it will actually connect to that UA server. And you’ll notice that I’ve got a whole bunch of devices that I’ve already connected. 


11:43
Lenny
There’s the one from last week, the Siemens, I’ve got a dairy plant and an SLC as well. So I can actually now go and browse the UA configuration. There’s some amps and data that I’ve got there so I can go and select these guys, hit the apply button, it will start adding them into my list here. Obviously I can add a little bit more. So I’m going to add motor eight as well, et cetera. So you guys get the idea that I can go and browse this and start adding in the tags that’s available from an OPC UA perspective. So I’m just going to add a few of them in here and hit the apply button here. All right, so the back end, what it will do obviously is we’ll go and add all of these tags. 


12:25
Lenny
And if I apply the apply button here, it will just save my configuration for this group. And all that’s left for me now to do is to actually hit the play button to actually enable this. So if I hit on the play button there, it will now activate the session, it will actually connect to this OPC server and it will start historizing these tags that I’ve added to the node. So let’s have a look at that. I’m going to go back to the home section here. I’m going to go to my historian and by soon you’ll notice that it will start writing data into this OPC UA data block that I’ve got here. 


13:03
Lenny
So that’s how simple it is to actually browse that OPC server, get the data in, add it into the OPC UA collector from Canary and start historizing the data from the ignition system. So that’s one way that we can do it is by means of the OPC UA component. Now if I look at my home section here, you’ll also notice that I’ve got an MQTT collector. Now currently this MQTT collector is pointed to a broker in the cloud. And I can use that broker centric architecture to also get data into my Canary historia. So I can do that as well. So currently you’ll notice that it is connected, it’s logging amount of tags in there and there’s some tags actually coming through into that from the NQTT side as well. 


13:57
Lenny
Now to get ignition to push data out into that broker, they’ve got a very special module that I’ve installed already and that is called the MQTT transmission module. So the MQTT transmission module will now take tags that’s sitting inside my ignition system and will start pushing them out to whatever broker I’ve got it connected to. So if we look at my settings for my MQTT transmission module, I’ve got a server that’s running in the cloud. So there is my actual MQTT broker. It’s a broker that we’ve got in an AWS instance running in the cloud and it will start pushing data to that cloud hosted browser. Which tags will it actually go and send to that? You’ve got this capability to go and configure a tag path. 


14:53
Lenny
So any tag that is seen into a specific tag path, it will go and push out to the broker. Right. So all I need to do technically is just drag tags into this NQTT path and it will start pushing the tags out to that. So let’s have a look at that. So I’m going to open up my ignition designer that I had open in the last session that we had where I actually had some tags and some data pulling through. So notice that in my tag path there is that MqTT tag folder what the transmission module will go and look for to start pushing out to my broker. Currently I’ve got two tags that’s actively changing. 


15:39
Lenny
So if I go back to my canary administrator here, go look in my historian, open up my element eight data set where I am busy writing this data into. There’s the data set block for today. And if I look at that, I can see all the data that’s being pushing into it. And there is amps one and amps one that’s thought busy pushing in from this node here. So if I click on that, I can see all the raw data that’s now starting to be historized in this historia. So let’s add a few more. So I’m going to go into my designer here, and I’m going to browse my devices that I’ve added in this example. I’m just going to go to this dairy plant that I’ve got. I’ve got a whole bunch of motors in here. 


16:25
Lenny
And let’s add a few more amperages from these motors to get pushed to my broker. So I’m going to do that. I’m going to drag that into this Plc tag here. So there’s amps number two, going to drag another one in. Amps number three, going to drag another one in. Amps number four. All right, so I’ve added in 1234 tags into there, and it will now start getting the data out for me. So there we go. I’ve got data. It’s getting pulled from my device. So all I have to do now is to tell my MQTT transmitter module that there’s some new tags that it needs to start pushing into that cloud as well. So you’ll notice in the transmission control here, you’ll notice that it will tell you that you added some new tags. You need a refresh. 


17:18
Lenny
I’m just going to hit this refresh option here. And if I go back to my canary, hopefully when I do that, I will see the new tags getting added to the list. There we go. Two has been added, three has been added, four has been added, and it’s already starting to start pushing in the data for me automatically. Now I can subscribe to the same data from any other device or anything that understands the Spark Plug B protocol. So just to show you that MQTT can be used not just between ignition and a canary historian, as an example, I can actually use MQTT to get data to any other device. So I’ve got a little MQTT client app here, and I’m going to connect to that same broker that I’ve got in the cloud here, hit the connect button. 


18:08
Lenny
And there you can see I’m getting all my tags for my Spark plug B protocol, all the data packages that’s been pushed from this edge node, and I can see all of the data that’s been pushed. Obviously, you need to understand the payload for Sparkluck B, but any other device can also get the data that’s been pushed not just into my actual Canary historian. So just to show you guys that as well. But there you go. I haven’t had to create the tags into in canary because it understands the protocol. It was able to go and create these tags automatically for me inside of the tool. All right? So if I click on these things, it will automatically go and populate the data and start pushing it out so that I can see it in the trending tools of Canary itself. 


18:57
Lenny
So that’s how simple it is to get MQTT data into Canary. And that’s one of the means that we can utilize, especially if we have stranded assets sitting in our production facility that’s not connected to our wan, not connected to our land, and use this broker centric kind of architecture to push the data out. Now, the last way that we can get data into Canary is we mentioned that Canary also supports a whole bunch of SCADA connectors. All right? So the whole concept of the ignition SCADA is that you can extend the functionality of the platform by installing different modules. Now, if I go to my web browser and I go to info@canarylabs.com they have released a specific module for the ignition SCADA platform. All right? 


19:52
Lenny
All the documentation about the module, the different versions of ignition that it does support, the different projects that it support, the installation guide of how you actually install this module and the configuration that you need to do, everything is available for you on this web page. And the module is for free to download. So technically I can hit the little download button here at the top, and that will go and download the module for me that I can now go and pull into my ignition project. So there we go. Got the module, and I can now go and import it into ignition. How do we import modules in the ignition? SCADA solution, we go to our gateway again. We go to the configuration section of the gateway, and obviously we have our modules part underneath the system component. 


20:45
Lenny
So here’s all my modules, my Alan Bradley modules, my DMP, three modules, my modbus drivers, OPC, so all of the modules that ship with ignition is installed, and then also my NQTT modules that are used to push the data out to my NQTT brokers right at the bottom. There’s an option here to install or upgrade a module. So obviously I need to install this canary module that I’ve downloaded. So I’m going to do that. I’m going to browse to my downloads file here. And there we go. I’ve downloaded this morning as well. I’m just going to go and select that and install this module here, accept the certificate for the module, and I’m going to go and install it. All right, quick, simple to do. Now I’ve got a new module, the gateway will restart and I will get a reconnection on my project. 


21:40
Lenny
Right, so there we go. I’ve got the Canary historian module, the current version of that module, and then just the description of the module. And very important, it runs on the two hour demo period as well. So it will run in trial mode for 2 hours, as per any other module inside of the SCada solution. Right, so now if I go and look at my config system here, you’ll notice that automatically I’ve got a new section that I can configure and that is now a canary section. To configure the canary module, obviously, I need to tell the module where does it need to push the data? All right, so that will be a collector, but I can also tell it. 


22:27
Lenny
So if I want to utilize the building trending tools, the spark lines, all the graphical components inside of the ignition SCadA, what Canary historians can act as a provider of historical data to my ignition solution. So I can go and configure both of them within this module section here. So I’m going to go and configure this collector, obviously. Currently I’ve got no historian collectors configured, so I’m going to do that, I’m going to create a new one. I’m going to call it Canary. My historian sits on my same node and my sender service is also installed on the same box. So I’m going to just leave that as local host. The sender service port address is as default as it’s been when I installed the canary solution. So I’m not going to play with that. I’m going to do anonymous authentication. 


23:18
Lenny
By default, it is configured, and the only thing I now need to tell it as well is where is the actual Canary historian located? For me, it’s on the same box as my tender service. So that will be the same node that I can add in there. And then into which data set do I actually want to push this data in? Now, if we go back to our admin tool here and I go back to the home section and click on the historian component, you’ll notice that I have made. If I go to the config database. Sorry, just go back out of this data block. I’ve made an ignition data set, so I’m going to push the data into this ignition data set that I’ve got here. So I’m going to type in here. Ignition looks like I’ve done this before. Anyway. 


24:07
Lenny
All right, so I’m going to do that then. There’s one interesting option here that if you want to, you can force all your tags to be lowercase. In my case, I only use the exact same tag names, so I’m not going to tick that button from that perspective. All right, so technically, that’s all you have to configure for this. I don’t have a username and password because I’m using anonymous authentication. So I’m just going to clear this out of that option as well. All right. And I’m going to go and create this new collector. And there we go. I’ve successfully created the collector side. If I want to see the data now in my trends and get the historical data in my SCadA, obviously, underneath the canary option, I also need to configure a provider. 


24:55
Lenny
So I’m going to go and select that option there. Currently, I’ve got no providers created, so I am going to go and create a new provider again. I’m going to call it canary again. It’s on the same box as what I currently have. So my historian is on the same box. I’m going to use the same port from a communication perspective. Again. I’m going to use anonymous authentication that you can set up. I’m going to blank out my admin details here because I’m not going to be able to use that. And that’s it for this one, I don’t have to specify a data set that I need to read the data from because I want to potentially read all the data that’s in all my data sets to be visualized. 


25:39
Lenny
So I can use any Data set that I’ve configured in the canary story to be available for me to put on my trends, et cetera. All right, so let’s hit the create new Canary provider button there. And I’ve successfully created a new Canary provider. Cool. Now, a few things has happened in the background. Obviously, there was some gateway changes that was made. I had my project open. The gateway actually reloaded, so it will ask me to reload my designer to take in effect this new changes that I made on the gateway. If you want to, you can export your files just to make it a safe keep option. I’m going to say no because I didn’t really build anything on the solution, so I don’t really have to back anything up. 


26:27
Lenny
So I’m just going to close it, and it’s going to just restart my designer here. All right. I’m going to log in again. Okay. And I’m going to go and open up my test project that I’ve got. All right, now, it works a little bit different on the tags that I’ve now got in my project. So all of these motor amps, I need to go and historize them. Now, you’ll notice they’re already historizing, and that’s probably historizing it to the ignitions data source as well. So what I’m going to do is I’m going to go into these MQTT tags that I’ve got here. I’m going to double click on this amp tags that I’ve got, and I’m going to go and enable these guys for historization. All right, so history enabled is currently false. I’m going to make that true. 


27:34
Lenny
And now if I’m lucky and I drop down the storage provider. Here we go. It’s got Canary as a storage provider. As I set it up in my gateway, as well as the default mysql database that I’ve created for my ignition project, I’m going to select Canary as a storage provider. So it will now start pushing this tag into the Canary historian, hit the apply button. And again, you’ll notice that I’ve got the little easterization traits icon next to my apps. I can do it for a few more just to make sure we’ve got some data going. I’m going to make the history enable true. And from the drop down, I’m going to go and select Canary as my easterization provider. And let’s just do it for another one just to make 100% sure. 


28:26
Lenny
All right, drop that down, select canary, and say, okay, I think I didn’t press apply. I did. Cool. Now, if I’m lucky and I go to Canary, I should see some data getting pushed to this ignition data set here. So let’s have a look. And it is blank. That is great for a Friday. I’m just going to quickly go and restart the scenary module here, and then let’s see it comes alive. Sorry about the size. Let’s see. We should immediately see some writes and some updates happening. So if I’ve done everything correct, it should just start writing data into that ignition system. I have found in the past that you might probably have to just bounce the gateway as well. So as a last resort, I’ll do that as well and see if that will start writing data into my engine data source. 


30:02
Lenny
Okay, still no luck. Let’s quickly do that, and then we hopefully get some data going here. Sorry about this. Eventually I could have spelled wrong as well. So I’ll just have to check that as well. But I’m just going to click my gateway, a quick restart here so it cool. It’ll take some time and it will reconnect and hopefully start writing data into it. Cool. While that’s busy going, let’s see on how I can get data out of the canary. Data blocks into an ignition screen as an example. I’m just waiting for my gateway to reconnect here. And as soon as it reconnected, we can go and add some screens or some screens to look at some trends from our canary as well. There we go. Connection is restored. Perfect. All right, so let’s build a new window. 


31:16
Lenny
And on this window, I’m just going to call it my charting window here. And on that chart I’m going to go filter for my easy charts option. Easy chart, much more simpler. And let’s drag the easy chart onto the screen here. There we go. All right. Going to resize it a bit. And let’s quickly configure this chart. All right. So I can add some history pings to it. I’m going to click on the plus button. I can give it a name and then I can also go. So this will be just my pv of my ants that I want to go and historize. And you’ll notice at the bottom here that there’s a tag path that I can browse to. I can click on this tag path. 


32:11
Lenny
And now it will show me two historical providers like the providers that we set up in my gateway. So I’ve got the canary and I’ve got the Me SQl as well. So this will now browse and show me all my data sets. Remember, I did not specify a data set when I set up the provider because I potentially want to use all of them. Right. So in this case, let’s go to those MQtT tags. I know they are updating. So let’s go and add one of those tags in here. And that will be my pv tag and hit on the ok button. And there’s some historical data already there that I can see. If I hit the play button and go and browse that to that data part over there, it will start to get the historical data out of my canary historia. 


33:02
Lenny
Let’s have a look. There should be some data coming through here. All right, let’s see if I’ve got still no data coming through here. All right, let’s do this. We’re going to quickly make a new data set here. Let’s call it Change Maker Friday. Create that. And let’s change our connector here to push to that data set. Sorry about this collector. And let’s edit this to set to that change maker Friday. Data set it. Cool. Friday. Save it. All right, let’s see if I’m lucky. There we go. Tag counts three. Sorry, there was something issue with that data set. Let’s have a look. If I go to my home, go to my historian, let’s go back to the databases. Change maker Friday, today’s date. And there we go. 


34:24
Lenny
The tag that I’ve selected to be pushed directly from ignition will now be automatically created for me. And you’ll notice that it will use the full tag path that’s in ignition. So it will go MqtT tags plc one. Amps. And that is exactly the same tag path as what I’ve got here. So I need tags. MqtT tags plc one. There we go. So take that entire tag hierarchy to automatically go and generate the tags inside of ignition. So let’s just, for safe measure, do this as well. Let’s enable the history for this guy. And again, select my canary as a source. Hit apply, say, okay, so now if I go back to admin. There we go. Automatically again, created the tag inside of the data set. And obviously I’ve only enabled it now, but it starts pushing data into my canary. Historian. 


35:18
Lenny
Let’s see if I add these guys to the chart, if they will come alive. Someone add another one here. This will be my amps again. I can browse my storium source canary. Now, this new data set that I’ve created just now will be available for me to select. And let’s select ant number one. Hit. Okay. Hit. Okay. And hopefully, if I play it, I will get some data going. All right. I don’t know why I’m not getting data. Let’s see if I can get some other player configuration here. I it basic average. All right. Sorry about this. I don’t understand why I’m not seeing the collector data now. Let’s try this park line as well. Tag history, canary tag. Browse for the tag itself. Right. It’s going to be historical. I can configure. Is it a min or a max? 


37:13
Lenny
And I just need to bind a start and an end date. And I’m going to bind the start and the index to the exact same start and end date that’s on my chart, like end date. And I just want a basic average or time weighted average of that. There we go. There’s some data let’s just change this guy to this tag as well, to a specific or a time weighted average, and I should see something. Sorry, there’s not a lot of historical data currently because I only added the historization now to them. Let’s see. I can get some points where they don’t look okay. Sorry about that, guys. I’m struggling a little bit to just get the historical data in my charting here. There we go. So there’s definitely some data there. 


38:40
Lenny
The sparkline did update with that date range that I’ve selected, so it is starting probably to just get me some data that’s in there as well. But the point is that I can very quickly, just by enabling that canary connector there, using that module, setting it up inside of my, in my system, I can enable my tags that’s inside of my ignition solution to now push data out not to just the ignition standard historian provider, but also the Canary historian. And it will go and create the data seamlessly for me inside of whatever data set that I have created inside of my canary historian. Cool. I hope that makes sense. I hope that showed you guys the different options that’s available to get data out of ignition into canary. And as I said, doesn’t have to be ignition. 


39:41
Lenny
We use MQTT or any other SCADA solution or OPC UA. We can go and get the data into our Canary historians as well. So that is what I’ve got for today. I don’t know if there’s any questions or answers. I see there’s a few familiar faces on the participant list here today, so I can open it up for some q as good and good. 


40:14
Damien
Good. Listen, just out of curiosity, can you, do, you know, inside of ignition, you can do a database query. Can you do that into the ignition of the Canary historian? 


40:26
Lenny
Yes, you can. So there’s two ways that you can actually do that. The one way is that you can actually use the APIs of Canary inside of the historian. But what you can also do is if I just open up a table here, I can just stop my solution here quickly, and I can add a power table as an example. Sorry. My real estate is getting a bit. And I go and I click on the properties of this power table and I go down to the actual data part of it. Sorry. And I bind it. I can actually bind this to that same tag history provider. I can use a table and I can browse either to the ignition one or to the normal SQL one that comes with ignition. 


41:31
Lenny
I can actually browse to this and I can go and select that and again, bind it, obviously to a time and a date range quickly while we talk. So I can bind that and that will then query the data and put it into a table format for me. So, yes, I can get the historical data out as a data sent. Depends if you want to use this normal table chart or not. But basically using the same kind of technique that we’ve got. Sorry, I’m missing something. I probably need to add a tag. That will help. There we go. And there we go. There’s the values right there. And it’s now pulled from that same historian source. 


42:17
Damien
Yeah. Specifically, you know that when you go tools up there in the top of ignition. 


42:26
Lenny
Yeah. 


42:27
Damien
I think there’s also a database query browser. So can I access it via that as well, or would I have to? 


42:35
Lenny
Right. So this query browser here is for data that you can actually write a query against. 


42:43
Damien
Okay. And the story you can’t. 


42:45
Lenny
And you’ll see when I drop it down, you can’t do it that way. But Canary Story also has an OBC OLEDB provider, so you can write equal queries against it. So you could have created OLEDB connection to that historian, added it as a normal then SQL connection into the ignition platform, and then write whatever, select statements or queries you want to do that. Yes. Okay. 


43:11
Damien
That makes sense. 


43:14
Lenny
Cool. 


43:15
Damien
The other thing is just the MQTT data that you store. Can you also publish again from the Canary story or is it mostly just to store? 


43:26
Lenny
They do have in the newer version, so they released version 20.2 about a week or two ago. And in that they did create the capability to push data out again out of the Canary historian to another NQTT broker. Yes. So they added in a NQTT transmitter into the version of the historian. So, yes, that you can push the data out again as well. 


43:49
Damien
Okay, thanks. 


43:52
Lenny
Any other questions? 


43:55
Damien
Yes, hello, Lenny, it’s Damien here. All right. I just want to find out the tag history splitter. I’m assuming because we can create that history provider for Canary, we can just use that as well for the history splitter so that we can historize the two separate databases. 


44:19
Lenny
Oh, yes, technically, remember, I can add, if I go back to my gateway, I can add as many collectors here as I want. Right. So I can potentially push to two canaries. You’re going to have two tags in ignition to obviously do that. But yes, I can push to two canaries, and if I really want to, I can make a third tag that then pushes to the internal database connection that I’ve got from that Microsoft SQL as well. But unfortunately yes. So you can do that. You can have multiple connectors or multiple collectors configured. It’s not just the one that I’ve got set up here. 


44:59
Damien
Definitely no, but I mean the actual history splitter where you configure the history providers. When you create the new connection you can choose to instead of making a database connection, it uses the tag history splitter. So if you go to the historical tag providers, yes, and you create a new one and we use the history splitter there, I’m assuming over here we can also add the Canary historian as the second connection or the first connection. Okay, good. There we go. That answers my question. 


45:43
Lenny
Yes, sorry, I was a little bit lost on the split apart there for a moment. Wow, cool. Any other questions you? If not, I say thank you very much. If there’s something else that you want to see me do, there’s still a few minutes left on the session today, but we obviously will have this recording. We’ll send that out to the guys that registered that was unable to join us today. If there’s no other questions, I just want to go back to my presentation here quickly and just talk a little bit of what we’re going to do next week or in two weeks time. The 21 August. So 21 August we’re now going to talk flow. We’re going to talk about how flow takes this time series data that sits in the canary and aggregate that data. 


46:42
Lenny
So we’re going to talk about the different type of aggregation methods that sits inside of flow and just discuss a little bit what will it do to the raw data before it pushes it into the flow database. We’ll also touch a little bit about the concept of what we call a boundary value and how those boundary values affect our aggregation methods, as well as touch a little bit about custom stuff. If the normal min max average doesn’t do you justice and you want to do some crazy stuff, we’ll touch a little bit about creating your own custom aggregation methods within the flow system, pulling data essentially out of this community, storing that we’ve got. Also, I want to just quickly note that our offices is pretty much, well, it’s almost done. Our training room is kind of set up. 


47:29
Lenny
We can’t host the entire room due to Covid. So we still have to do a little bit of social distancing in that regard. But we are starting to roll out training. So please guys, visit our website elementate co za. Look at the training tab at the top you can see the different courses that we deliver and when the dates are for those courses. You can contact us if you want to book and see if there’s still space available for the courses. Currently, the courses are done here in our offices in always. So please have a look at that as well. Just a question, Lenny. Cool. Thanks, Graham. You’re talking about the training cost. Can your system integrators resell the training to their customers? Yeah. So training can be resold to your end clients. And that is for all three products. 


48:30
Lenny
Mission flow and canary for our sis, though, if it’s not an end user and you are part of our changemaker program, training will be delivered to sis at no cost. But yes, definitely training can be a nice revenue stream for you where you can sell that onto your end clients as well. And obviously, your discount will be applied, whatever your discount current structure is, depending on your partner program status. Definitely. Cool. There’s no other questions, I’d say. Thank you so much for joining me again on a Friday. Sorry, there was a one or two little bit of hiccups. We got to work around them.