Easy Data Collection in Industrial Environments with InfluxDB and the inray OPC Router
Session date: Oct 22, 2019 08:00am (Pacific Time)
Big Data projects and extensive data collection build the foundation to achieve today’s challenge of making businesses more efficient and effective. To understand the potential of optimizing industrial and commercial processes there is a need to gather available data from different data sources. This data helps to analyze, understand and optimize your business. This web session will show you an easy way to connect InfluxDB with almost any industrial and commercial system by using an OPC Router’ software to enable seamless bidirectional communication.
Watch the Webinar
Watch the webinar “Easy Data Collection in Industrial Environments with InfluxDB and the inray OPC Router” by filling out the form and clicking on the download button on the right. This will open the recording.
[et_pb_toggle _builder_version=”3.17.6” title=”Transcript” title_font_size=”26” border_width_all=”0px” border_width_bottom=”1px” module_class=”transcript-toggle” closed_toggle_background_color=”rgba(255,255,255,0)”]
Here is an unedited transcript of the webinar “Easy Data Collection in Industrial Environments with InfluxDB and the inray OPC Router”. This is provided for those who prefer to read than watch the webinar. Please note that the transcript is raw. We apologize for any transcribing errors.
- Chris Churilo: Director Product Marketing, InfluxData
- Thorsten Weiler: Head of Sales and Marketing, inray
Chris Churilo: 00:00:02.969 All right. We’ll go ahead and get started. So good morning, good afternoon, good evening everybody. Thanks for joining us today in today’s webinar. Today we have a really great friend, Thorsten, from inray Industries, that’s going to be sharing with us how they use InfluxDB, and also how they created an OPC router to help you to be able to collect the data from the various machines, sub-units, etc. using the OPC protocol, and putting that time series data into InfluxDB. So with that, Thorsten, I will let you take it away.
Thorsten Weiler: 00:00:37.264 Thank you very much, Chris, and good morning or good afternoon to everybody. This is Thorsten speaking from inray, a German industrial software company. And I’m glad that you take the time to listen and inform yourself about how you maybe can transfer data out of automation systems or other systems into InfluxDB with a third-party product, which is called OPC router. I hope you can see my screen. I hope you can hear me loud and clear. And I hope you can see my laser pointer icon. If not, just let Chris know in the chat.
Chris Churilo: 00:01:19.881 We can see all of it. It’s great.
Thorsten Weiler: 00:01:21.506 Perfect. So giving you a short overview over the agenda, I am spending maybe half a minute about who inray is because I think that’s less important. I think the topic mainly is why it makes sense to collect data in industrial environments. Most of you, when you’re working in the industrial sector, you already know why you collect data and what you need it for, but maybe you can get some other ideas, what it can be used for, and then I will explain a bit about OPC router and the philosophy of the product, what it does, and then the combination of course of combining OPC router in such a high effective database like InfluxDB, in a high-performing database. So about inray as a company, so we’re a small company, almost 25 years on the market. We are not too big. We are about 70 employees, located in the northern Germany, so if anybody knows Germany, we are about 50 kilometers north from Hamburg, somewhere between Hamburg and Denmark. And we are just creating a distribution network for OPC router, and at the moment, we have about 40 - no, 50 partners worldwide, which cover more than 30 countries at the moment. And we have several thousand software licenses implemented worldwide. The trends we see at the moment in the automation industry since a few years, all these trends are in different regions. They are called differently. So it’s Industry 4.0 in Germany, and Central Europe, it’s IoT and IIoT, worldwide, digitalization. In the end, it means that more and more, systems today and production processes today are automated, and that leads also to more and more intelligent and flexible systems like sensors, motors that can send some data information, also machines like plastic molding machines for example, and so on and so on.
Thorsten Weiler: 00:03:43.015 So there is a lot of more data available which can be used to save cost, to make businesses and processes more efficient. So there are some buzz words like machine learning, so get the data out of your machine and using a software which learns how the machine can be run more effectively and more efficient. There are topics like condition-based monitoring and predictive maintenance. Customers would like to know before they have a downtime of their equipment that they need to do a maintenance, for example, when the temperature rises, when the machine needs more and more power, if the motor is getting too hot, if it’s having more than 20,000 running hours, and so on, just to save money and to prevent their equipment from downtime. And then there’s also of course the reason if there should be validated or regulated processes. You usually find them in the chemicals industry, pharmaceuticals, and also food and beverage industry. So customers have the burden of proof for batch or lot IDs that they really were running the machine within the specified area and a validated area. Also, customers use this information to do some IoT monitoring, just to see how the machines are running, if there is a downtime, if there is issue, if they need to react to something. We also already have customers that are trying to and already using decision automation processes. So they are using that data to learn how they can run a process to reach a specific target. For example, the target today is to use as few energy as possible, then the system would be configured automatically based on the existing data, yeah, to use as few energy as possible. Or it can be the goal to have the most output, the maximum of output, or the highest quality or whatever. So systems are getting more intelligent, which can lead to cost reduction if you use the data wisely or increase of quality, or at least also do more customer service so the customers are happy to get more information about the production of the product. So there are several reasons to collect data in the end, but it’s not only about collecting so you also need to have an idea what to do with that data.
Thorsten Weiler: 00:06:37.484 So why using InfluxDB then? I’m not an InfluxDB specialist but our customers are using InfluxDB because it’s an open source time series database which can process very high loads of data. So usually, this database is much faster than the automation equipment they are using, but with that, they are making sure that all the data points they would like to transfer into the database will also reach that database so that they don’t lose any data point. Also, an advantage of InfluxDB is that it can be used as a cloud service, so especially in companies where they don’t have special IT skills, so maybe we’re talking about the OT sector or the automation guys, if they don’t have any special IT skills or an IT department which can help them to set up such database systems for them, it’s easy to use InfluxDB because they just need to rent service, which is cloud based. They don’t need to host any separate server hardware. They don’t need to buy and maintain that hardware. They don’t need to have administration costs for updates and monitoring, etc. So it’s also a pricing reasons for a lot of customers. And also, InfluxDB is offering a lot of tools to visualize and analyze the data that has been implemented or imported into InfluxDB. So there’s Chronograf, for example, from Influx. There are other tools like Grafana or Telegraf, or you can use the database languages, Flux or InfluxQL. So a lot of tools which enables customers to do some queries to learn about the data and how to use the data and to set several different data points in context with each other.
Thorsten Weiler: 00:08:47.840 So which now leads me to OPC router. So what is OPC router doing and then why are our customers using it in combination with InfluxDB? There’s some added value, and it’s reasonable added value. So OPC router connects typical OT and IT systems through some kind of communication software platform with specialized plug-ins. So it can get data out of shop-floor systems and transfer them into top-floor systems. For example, it can exchange data between a POC or a database and send it to SAP, and then get some data from SAP back and send it to a printer, and then getting maybe an error message from a printer and send that information via email or a Telegram message to the maintenance team. So several reasons and lot of different kind of systems that can easily be connected using the OPC router software. What it does is it’s an automated data exchange software between PLCs, databases, MES systems, HMI and SCADA systems, SAP, or other ERP systems like Oracle, or Infor, or Microsoft Dynamics, you name them, cloud systems, so you can use MQTT and REST protocols for communication and so on. So there are a lot of possibilities to transfer data between different systems and make them really communicate. You can use time and event-based triggering to enable data transfer. So it can be every three seconds, data should be transferred, or on value change, the data should be transferred, or if a critical value has been reached, then please transfer some data, or whatever it might be, several kinds of trigger options you have.
Thorsten Weiler: 00:10:46.957 There are no limits on number of users, tags, transfers, or systems. So the system supports as much users, variables, tags, and transfers as you like. And I think the main argument to use OPC router for our customers is that it’s a really easy to use software. So you don’t need to be an automation skilled guy. You don’t need to know how to script. You don’t need to be an IT expert. You just can create your connections between different systems, just via drag and drop. So it’s really that easy. And there’s [inaudible] structure. So for example, customers that only want to transfer data from an OPC data source like a PLC, to InfluxDB. So they only need these two plug-ins. They only need the OPC protocol and the transfer to Influx. But after that, maybe they would like to also connect a printer or SAP or an RFID system or a bar code reader system, and then they can add these plug-ins, licenses, afterwards. So it’s pretty and very, very scalable. And maybe to give you an idea of what kind of systems can be connected, that might be a good graphic to visualize that. So there’s the OPC router data platform in between, and all this arrows you see here, they are just showing possible kind of connections. So it could be, for example, that there is data coming from a field system, like a sensor or a PLC or an OPC server. So you get the data, for example, via OPC and send them directly to InfluxDB with a time stamp, with other data from other systems maybe. But also at the same time, you can communicate with SAP and get a production order out of SAP, send a production order to a PLC, the PLC then would like to connect to a printer and start printing labels for the product that needs to be produced, so it’s connected directly to a printer. And if the printer is shutting off for down time or facing an issue, it could send out an email or a Telegram message to a maintenance guy who can answer that message and, yeah, help to set up the system again. One single communication software platform which can communicate with all these different systems at the same time.
Thorsten Weiler: 00:13:31.332 And how it especially works in combination with InfluxDB is that the user using OPC router can define the measurements and tags and fields individually. So there’s only one interface where this data can be configured. And the final few keys will be the tags where the final data will go to. After that, you just can create your connections via drag and drop. So this is the OPC router software. This is how it looks like. And this is the area where you can develop your connections. In this case, you maybe would like to transfer some information about a production line number, some production values like temperature, pressure, filling quantity. You would like to get that information stored in a database, so it would be ideal to use for example, InfluxDB. So in that case, you just drag and drop the constant value box from here, over here, let it go. You double click on it. You choose line one as your data point. You do the same with an OPC data source. So you choose OPC as a data source over here, drag and drop it here, double click on it. You can browse the tags of your OPC data source and you can check the temperature and pressure and filling quantity, or select them, and then you choose your data target in that case, which would be InfluxDB. So you’re going to InfluxDB, dragging and dropping it here, double click on it. You choose your final key fields where you would like to enter the data, and in the end you just need to draw an arrow from here to here, also by just clicking and letting go. So connect that arrow, connect the temperature value with the temperature tag in InfluxDB, the pressure tag of the OPC data source with the pressure tag in InfluxDB, and so on. And the only thing you need to do is to decide when the data transfer should happen, so when all these data points should be transferred to Influx, which can be based on an event, or in that case, it’s a time-based trigger, which is only I think every six seconds, the data will be transferred. But it can be on data change. It can be, I don’t know, 50 milliseconds, or if critical values are reached. So there are different kind of triggers you can use. And that’s it. So it’s really that easy to create such a connection and to get data out of different data sources into one Influx database.
Thorsten Weiler: 00:16:33.707 So I said there are several options that need to be configured when creating so a connection. So one thing you see is on the left side of the screenshot, on that side. In that area you will see the plug-ins that are available, MQTT, ThingWorx, REST protocol, SAP, and so on and so on, and also InfluxDB. You can see your transfer object, data sources, and data destination, so where data is coming from and where the data is meant to go to. Then you can create your data connections just by clicking and drawing your arrows, and then you need to define your trigger function, which can be a database trigger. It can be a time-based trigger, cron trigger, Euromap if you’re working in the plastic molding machine sector, so we’re also supporting Euromap 63 and 77, OPC triggers, SAP triggers, and so on and so on. And that’s it. It’s really that simple to connect different systems with each other just by clicking and dragging and dropping. So looking at that example, for example it would be feeding data out of your production process from an OPC data source, into SAP. But in parallel also, it is with some data maybe not the same. Maybe the same data points, maybe additional data points to InfluxDB. For example it can take a time stamp and some constant values like production line or product number or user, username, or whatever. So you just create these boxes, you draw the connections, and the process will run from the top left to the bottom right. So this data will be - the data on the left will be transferred to the systems on the right in parallel, so not first feeding InfluxDB and then SAP. These will be two processes running in parallel, at the same time feeding the data into Influx and into SAP. In that case, not sure if somebody of you is an SAP expert. We are supporting SAP standards, so it’s a certified SAP plug-in we are using, and we support SAP BAPI, RFC, and IDOC, as protocols. And we also support SAP HANA for example.
Thorsten Weiler: 00:19:16.033 So what is also possible using OPC router is to monitor your data transfers. So you have your data transfer process down below here, so that’s the same than we had in the previous slide. And on top you can see the monitoring of the connection. You can see the green points, or the green dots, which are showing that the data transfer has happened, you see the time when it happened, and you can see how long the data transfer took. So in that case, these are very, very long data transfers. So there are some which are 400 milliseconds long, and some which are more than a second. So maybe this is an indicator to find out if the performance is okay or if there should be some optimization of the process. So for example, if a data transfer should not work out, so if there should be an issue, that dot will be red. And as soon as you click on that red dot, you will see the actual values down below, so you can see where the issue is. And for example, if SAP should lose connection in that scenario, there would be a red frame around SAP and an arrow message so that you know what the issue is and why the connection to SAP failed. So it’s very easy to resolve these kinds of issues. Of course InfluxDB will never fail so that [inaudible] an option. But you can find out all the other issues you might have in a connection and you can monitor it and see what’s happening. You can answer a lot of questions. So how long a data transfer take, if all the data transfers work out. You will get automated emails from OPC router, which is telling you if there have been issues, how many data transfers happened, and so on. So it’s a pretty simple to use tool, not only for specialists.
Thorsten Weiler: 00:21:24.165 And I think the real value of OPC router and InfluxDB is in the combination of both products. Because you can send data from all your different data sources, if it’s an OT system or an IT system, if it’s coming from a shop floor POC or SAP. You can send all that data into Influx. So you can feed Influx with a lot of data, which maybe belongs together, with the same time stamp into InfluxDB, and you have one standardized solution where you don’t need any scripting, where you don’t need to create individual interfaces which nobody wants to maintain. It’s extremely easy to set up and to use and it’s definitely worth the money. So for example, if we have a connection between an OPC data source and InfluxDB, such a solution would be 2,200 or about $2,500, including software maintenance. So that’s not really expensive and enables you to do such a lot good stuff with it. And I would say that’s enough for a rough overview over the system, over the combination of InfluxDB and OPC router. I would like to motivate you just to get your free demo. It’s fully functional. You can use the InfluxDB plug-in. You can use SAP plug-in or OPC plug-in. Everything is available. And you can download the free demo under opc-router.com, or you can of course connect to your Influx team or Chris, and ask for my contact details if you should have any questions. We are having, I said, partners all over the world. We also have a partner in the US. We have several partners in Europe, several partners in Asia. So there’s always someone close that is happy to help you. And I would say that’s it from my side.
Chris Churilo: 00:23:41.841 Very cool. Can we go back a couple of slides?
Thorsten Weiler: 00:23:44.487 Yes, of course. You say stop.
Chris Churilo: 00:23:46.973 There we go. So I think it’s a great, very easy to follow UI, but let’s spend a little bit of time here and just talk about what a tag is in the InfluxDB vernacular. And so you can see on the left-hand side the type of data that you can grab via the OPC UA router, is that you can have some value, let’s just call it maybe a temperature value that you’re measuring over the value of time, and you may want to put those things into InfluxDB because it is a time series database and those things are - things like temperature are what you might want to track over time. But one of the things that you can also do in InfluxDB is in I think it was the previous UI, you showed where people can define what these tags are.
Thorsten Weiler: 00:24:40.069 This one.
Chris Churilo: 00:24:40.705 Yeah. So just for everybody who’s on the call, so this is where you can basically come up with other descriptors about the data and where the data’s coming from, because you might want to be able to do reports on it. And when you do reports on these values, you may want to be able to group them in certain categories. So maybe a very simplistic example is you might want to tag all the units in the factory floor that are on the east side of the building, and so you might have a tag of “east” or “east side of the building”, so that if you wanted to build a report that says, “Oh, tell me the temperatures of all the units that are on the east versus that are on the west,” because you suspect that maybe there is an air conditioning problem on one side of the building or other. So it’s a very unlikely example that I’m giving but I wanted to make sure that people understood what that is. And I love this UI. This just makes it super easy for you guys if you are using this inray user interface to be able to add those tag keys very easily. And they get all fed into InfluxDB and then they’ll be in a nice - you can build some pretty nice reports with this information.
Thorsten Weiler: 00:25:57.261 Yeah. Thanks, Christine. I think it’s an excellent example because maybe it’s not the east part of the west part, it also can be a special production line, so you want to track all data during the production of a product, which is happening on the same production line, just to understand how your machine is working, if there are some dependencies between special values like the temperature and the pressure. So these are typical use cases, yeah. I think there are a lot of ideas how to use that.
Chris Churilo: 00:26:34.674 Yeah. And then in fact, just thinking about what you were saying in some of the other slides, so if you think about all those great benefits that you articulated, the chance to save money, to be more efficient, to increase quality and customer satisfaction, etc. etc. The more detail in this kind of data you can provide to your teams, then more likely you’re going to be able to find those cost savings for those places having some kind of quality control. So with your customers that are using your products and services, what were some of those learnings or cost savings or opportunities for increased quality, where do those things happen the quickest with data? Or alternately, what took a little bit more time with data? Do you have any examples you can share?
Thorsten Weiler: 00:27:31.049 Not really. Because the Influx plug-in we have is pretty new, so it’s since three months available. But we also have the first customers and most of them are using it for finding out dependencies. So they are really collecting data from different systems at the same time and they try to understand how these systems and values depend on each other. Maybe it’s now how they can increase the output of their production line. So finding some background on what would be the ideal speed of the conveyor belt or something like this, which in the end saves costs and increases the output. But I could also imagine that InfluxDB would be an ideal tool for regulated businesses where people need to collect data to do some reports, so in food and beverage, chemicals, and pharmaceuticals industries. What I also could imagine is that maybe customers could use the data in InfluxDB to calculate the cost for a special order, for a special customer, or that they can create individual pricing to the individual customers, depending on the kind of product they would like to have. So some products are maybe more expensive to produce than others, and customers can find out by just collecting data from all of their systems, if it’s SAP or the production system.
Chris Churilo: 00:29:12.192 Yeah, that’s right. And you also mentioned a little bit about machine learning. And the thing with any kind of predictive modelling that you want to do, it requires a lot of time series data, right? When we talk about being able to do this kind of analysis, we’re not really predicting the future. We’re using the historical data to model what could happen. So the more historical data that we have, especially in regards to the time series data, then the better our models are going to work. And the nice thing is InfluxDB as Thorsten already mentioned, it can handle really high workloads, which is going to be great because then you can collect all that data and then apply whatever algorithms you want. And things like Holt-Winters already comes with InfluxDB, so it’s really, really simple to just apply that to your historical data to start to understand what are some of the potential forecasts, to help you with projects like understanding predictive maintenance, etc. I think another example that we should just let people know is that sometimes there are things that are happening in this environment that, just as humans, we don’t realize that there is some kind of correlation or some kind of connection between these different machines that can present us with opportunities to save. And so we’ve heard - some examples in some of these factories is the moments they started really tracking how much energy was being consumed by every single piece of equipment and every single sub-unit attached to these equipment, then they could really start to understand when they could actually turn the energy off, especially when doing things like maintenance, right?
Chris Churilo: 00:31:07.355 We’ve heard a number of instances where the maintenance is being done on one machine, so of course that machine shut off, but it didn’t occur to the teams to shut off all the other machines that are connected to that. And in retrospect they feel like, “Yeah, I should have known that.” But what led them to that discovery was that they had these reports that were showing energy consumption across all the different units. And then that’s when they had that epiphany and said, “Hey, let’s be smart with this and shut that energy off when it’s not necessary.” And it’s all because the more data that we get, the more curious we get, the more understanding we’re trying to get, and the more we’re starting to even look at what are the appropriate thresholds. And we really can become a day-driven, which is kind of a cliché, or a metric-driven organization. That’s going to help us to look at data and start to question what I call the folklore that often exists in a number of these locations. Thorsten, you must have heard a lot of those kind of folklore at some of your customers where some supervisor says, “Oh, we must clean this machine every six hours,” and it’s not based off of any kind of data. It’s just some kind of thought that somebody had at one point. And the good thing is you don’t want to question it just to make someone wrong but you definitely, if you have the data, can just question it and just say, “Hey, we might be able to be more efficient if we look at when the machine is actually in a situation where it needs to be maintained or cleaned or etc.”
Thorsten Weiler: 00:32:44.690 Yeah, exactly. So we have some customers that are using a database like InfluxDB just to learn about optimizing the scheduling of their production systems. For example, they are producing chocolate bar with peanuts inside, and the next product is something which is meant for people that might be allergic to peanuts, so they need to clean the pipes before they can produce the next product. And then they can optimize their production scheduling by just putting the production orders, yeah, in the right order so that, for example, the product without peanuts start first, after that, they do the peanut bars, and so on, and they can optimize the cleaning time. And yeah.
Chris Churilo: 00:33:37.167 Yeah. And then also, I think back to your point about they can also then offer that burden of proof, because everything is already monitored and documented for the purposes of being efficient. But it’s like if there were ever a situation where somebody got ill, they can also say, “Hey, this is the processes that we followed to try to minimize that kind of an effect happening on somebody.”
Thorsten Weiler: 00:34:01.022 Yeah, absolutely. And it makes it easier to track, so even if such a case should appear, the companies can find out which lot IDs and batches could be - how you say? Could have that issue. And it’s easier to find which kind of products they should not send out to the customer or which they need to recall. So that also saves a lot of cost.
Chris Churilo: 00:34:29.723 Very cool. So for everybody, I think there’s one other point that I want to point out, besides the fact that I think this inray product looks really intriguing and looks really easy to use, is that we’ve always talked about how we focus on the developer, and you can see this is a perfect example of how an organization was able to take the TICK stack and really kind of blend it into their own products. I mean, you see that they built their own UI. They built a really simple way for people to be able to connect to the OPC UA router to InfluxDB, very easy way to be able to visualize that, all within their own product. So the flexibility of InfluxDB is really meant so that all of you developers that are out there who want to build something similar are able to do that. And then on the flip side, if you realize that, yeah, you could build it but you would prefer to use a very easy to use tool like what Thorsten just shared with us from inray, of course that’s a wonderful option as well. And the openness of InfluxDB means that you can have your own InfluxDB instance that’s collecting that information, and do what you’d like with it. So, Thorsten, any last words before we ask one more - actually I don’t think I even asked anybody. I apologize. If anyone has any questions, please put your questions in the chat in Q and A. I sometimes get a little bit carried away when I see a really great presentation. So if you do - but in the meantime, any other thoughts, Thorsten, about what you guys are accomplishing and what you see going forward?
Thorsten Weiler: 00:36:12.544 Not really. I think there’s the need to connect different kind of systems today, so following the digitalization process. And this is where InfluxDB also as a component fits in very well. So even if customers are only sending data between their shop floor and their ERP system and a printer and something else, they can add InfluxDB as an additional data storage which can be easily used and which can be fitted with all the data in parallel, so, yeah, just to be able to also improve the processes, instead of just keep the processes running. So I think that’s a great combination of these kinds of tools.
Chris Churilo: 00:36:58.466 Very good. Well, thank you so much, Thorsten. We don’t have any questions but if we do, as I mentioned, or if you guys in the audience have questions, just send me a note and I will connect you. After a quick edit of this, I will put it in the - I’ll upload it so you can take another listen to it on demand. And I appreciate everyone’s time and I definitely appreciate your presentation, Thorsten. I thought it was really great.
Thorsten Weiler: 00:37:21.208 Thank you very much. And thanks to all the audience for taking the time.
Chris Churilo: 00:37:27.100 Thank you so much. We’ll see you later. Bye-bye.
Thorsten Weiler: 00:37:30.133 See you later. Have a good day. Bye bye.
Head of Sales and Marketing, inray
Thorsten Weiler currently works at inRay, a leading specialist for industrial software providing consulting and implementation support for Industrial systems such as HMI/SCADA, MES, and MDA-/PDA-systems. He has almost 20 years of experience with ERP and Automation software, and specifically over 12 years, experience with Industrial automation software such as Wonderware, Status, and Ocean Data Systems. This experience has allowed him to help his customers easily and efficiently acquire, process, distribute, analyze, and visualize their automation data. Thorsten has a degree in Business Administration with a focus on IT and organization theory from Wirtschaftsakademie Schleswig-Holstein.