What is Sparkplug B for MQTT?

  Рет қаралды 22,779

4.0 Solutions

4.0 Solutions

Күн бұрын

Пікірлер: 38
@EmileAckbarali
@EmileAckbarali 3 жыл бұрын
What is especially great about this video is that Walker not only gives a 10,000 foot view of Sparkplug B from a technical side, but just as importantly gives the reasons for it and where it can be used to yield the most benefit. The latter is something that is missing from most technical explanations, a "when to use what" side of things. Well done 4.0!
@walkerreynolds973
@walkerreynolds973 3 жыл бұрын
Thank you Emile!
@4.0Solutions
@4.0Solutions 2 жыл бұрын
Thank you!
@geoffrobinson5440
@geoffrobinson5440 3 жыл бұрын
If I understand correctly the Sparkplug namespace (SNS) is basically independent from the rest of the namespace and can typically only interact with a subset of clients. Further to this, because the Sparkplug B spec dictates that the format of the topic structure is governed by the topology of the EON Nodes, it isn't necessarily possible to structure the SNS to align with a Plant/Area/Line/Cell factory model - especially if you plan to use something like Highbyte where it can be the Sparkplug B EON Node for the whole plant. This means SNS clients can't rely on the SNS topic structure to be normalised from plant to plant - this could only occur within the payload metric naming. Does it make sense to think of the SNS as a distinctly different layer from the UNS, each with their own strengths? SNS data can be translated and/or transformed by SNS Clients and published up to the UNS where required for comsumption by more plain-speaking clients that rely on a normalised factory model.
@marktaylor6266
@marktaylor6266 Жыл бұрын
Awesome thanks Walker and Team 🤟
@pedromarquez2308
@pedromarquez2308 3 жыл бұрын
I have seen a lot of your content on KZbin and I learn a lot from your videos and I thank you for that. I would like you to talk a little about LoRa and other forms of wireless networks, which ones do you use the most and what do you think is the future in this field.
@EmileAckbarali
@EmileAckbarali 3 жыл бұрын
Question: It's excellent that Sparkplug B natively supports Store & Forward. In a plant situation this might not be as important due to the fact that the networks would be "wired" and super reliable. But in a case of let's say cellular connections (which are sucky) it would be very important. What I am curious about is the use of flat MQTT 3.1.1 over cellular. In these types of implementations that you all have done over the years, did you all have to do custom coding to implement Store & Froward? How did you all handle prevention of data loss over "unreliable" connections such as cellular, using just plain ole vanilla MQTT?
@walkerreynolds973
@walkerreynolds973 3 жыл бұрын
Correct -- we did two things to create S&F with vanilla MQTT. 1. We designed the payload as a JSON, with a key: value pair for each event 2. We buffered on the edge and published the full JSON with the 'history' in key: value pairs. spB made it much easier.
@EmileAckbarali
@EmileAckbarali 3 жыл бұрын
OK so I am having a nerd overload here ... that is freaking brilliant. Using the fact that you can toss anything you want into the MQTT payload and using JSON, which gives the structure you need but in a nice light-weight package. OK so that is very cool. Thanks a million!
@anuragpant2053
@anuragpant2053 Жыл бұрын
You remind me of Hank from breaking bad so much XD Great content!
@4.0Solutions
@4.0Solutions Жыл бұрын
Thanks! 😃
@fatonaoladimeji9697
@fatonaoladimeji9697 Жыл бұрын
Great Video. I watched this a year ago and I am now Implementing SparkplugB for one of our projects. Quick question: Do all SparkplugB clients support store and forward as a default property?
@sunasrariyaz
@sunasrariyaz Жыл бұрын
Thanks a lot for the videos. I really wanted to understand what is IIOT but not only I got the answer to it but a lot lot more. All your topics are nicely explained and i couldn't have asked for more.
@4.0Solutions
@4.0Solutions Жыл бұрын
Love to hear it! We’re glad to help! If you want to learn more about IIoT, you should take our free IIoT mini course: www.iiot.university/iiot-mini-course
@krisknee1225
@krisknee1225 7 ай бұрын
Hi! Is there a way to configure everything in a SP namespace to publish even if the values have not changed and just publish the latest value for everything?
@OKEKOBEB
@OKEKOBEB 3 жыл бұрын
One thing I had difficulty understanding is when the SPb publisher is sending binary data over the wire and you mentioned that vanilla 3.1.1 broker cannot decipher but can pass on to another SPb subscriber. How do they align on the proto file that would be needed to pack/unpack the data? Do I manually maintain the proto files for both sides? Or is there some inherent maintenance in the standard?
@walkerreynolds973
@walkerreynolds973 3 жыл бұрын
Great question -- proto buf is only used in the NDATA, DDATA, NDEATH, NCMD, NBIRTH and DBIRTH sub-topics. One can navigate to these topics via MQTT 3.1.1 clients: spBv1.0/GroupID/EdgeNodeID/{NDATA, DDATA, NDEATH, NCMD, NBIRTH, DBIRTH} but will need to unpack the payloads in the braced topics with your spB client.
@4.0Solutions
@4.0Solutions 2 жыл бұрын
Thank you for answering Walker!
@hobbes1069
@hobbes1069 3 жыл бұрын
So in the flat 3.1.1 example, if you publish a temperature, you can't (easily) publish extra context? Such as Fahrenheit or Celsius? Certainly you could add extra topics covering that, or whether it's a HIGH or LOW temperature for the day (on in the context of a machine, HIGH or LOW for process controls), but this seems tedious and less scalable.
@walkerreynolds973
@walkerreynolds973 3 жыл бұрын
Yes ... you can... and with MQTT 5, its even easier (because of meta data)
@walkerreynolds973
@walkerreynolds973 3 жыл бұрын
The key way to do that is to publish a json payload that contains value, timestamp, unit etc and parse on broker side (for 3.1.1)
@hobbes1069
@hobbes1069 3 жыл бұрын
@@walkerreynolds973 so something simple like: { timestamp: "2021-09-03-etc..." outdoorTemp_value: 75 outdoorTemp_UofM: "F" }
@walkerreynolds973
@walkerreynolds973 3 жыл бұрын
@@hobbes1069 you got it!
@JorgenKvinge
@JorgenKvinge Жыл бұрын
Thanks for another great video, you really are creating great eduactional content and this helps a lot for the understanding of how to digitally transform a business and select the best tools for the job. Coming back to this video a second time after learning about UNS, MQTT and all the great benefits that comes with it, I have a few questions; 1. The MQTT broker, does that typically live on premise or in the cloud? And does it serve as the UNS? 2. Also for the SparkplugB do you run this on premise (I would guess yes)? 3. Where does HighByte or other DataOps softwares live in the ecosystem? Between the legacy equipment not running MQTT natively, or does it replace SparkplugB? 4. When connecting the UNS to an ERP system, if the ERP system does not support MQTT natively, what do you put inbetween the UNS and ERP? Thanks
@4.0Solutions
@4.0Solutions Жыл бұрын
Thank you for the compliments and the great questions! We want to be sure you saw that Walker answered them in today's podcast > kzbin.info/www/bejne/pKTWYnmXfshnY8U
@JorgenKvinge
@JorgenKvinge Жыл бұрын
@@4.0Solutions indeed I did, perfect timing, thanks guys!
@nielskeijsers
@nielskeijsers 3 жыл бұрын
I'm researching the possibilities wits a Siemens S7-1500 PLC, Siemens has a library that supports MQTT 3.1.1. Because the library is MQTT 3.1.1 does this mean it supports Sparkplug B or not? If not do I have to buy an EoN device that is connected to the Siemens PLC wich is compatible with Sparkplug B? And where can I find out if my EoN device is compatible with Sparkplug B? Hope you or someone can help me, it is hard to find the answers to these questions.
@4.0Solutions
@4.0Solutions 3 жыл бұрын
It does not support sparkplug B but that isn’t an issue because a broker can support 3.1.1 and sparkplug B at the same time.
@dhanavathvishnu4179
@dhanavathvishnu4179 3 жыл бұрын
While using Spark plug B , the bandwidth requirement for payload transfer is higher right, how that will be suitable to lightweight MQTT protocol??
@walkerreynolds973
@walkerreynolds973 3 жыл бұрын
Only on birth -- because on birth, you send the entire namespace (anything that will be reported on) in the first publish. However, over time SPb is lighter weight than flat MQTT because you have the option of using aliases for each topic (so a topic: ####/#####/##### can become topic: 1 which reduces overhead) and we can apply compression natively.
@4.0Solutions
@4.0Solutions 2 жыл бұрын
Thank you for asking!
@sherylmccrary9045
@sherylmccrary9045 3 жыл бұрын
Excellent information!
@4.0Solutions
@4.0Solutions 3 жыл бұрын
Thanks Sheryl!
@bartinos3929
@bartinos3929 3 жыл бұрын
The topic structure is standardized. Aren't just two levels of hierarchy a big limitation for large implementations?
@4.0Solutions
@4.0Solutions 3 жыл бұрын
You can have structured payloads right along side unstructured. Check out the IIoT Shootout video with Rick Bullotoa we just posted.
@bartinos3929
@bartinos3929 3 жыл бұрын
@@4.0Solutions Thank you, I will definitely check that out!
@topicsinfinity3204
@topicsinfinity3204 10 ай бұрын
Can one node be in more number of groups?
@4.0Solutions
@4.0Solutions 4 ай бұрын
if the client supports it. you can in theory publish to multiple places, but probably not an anticipated use-case for most so it's likely they implimentation of SPB on the device limits you to one.
The "Official" OPC-UA vs MQTT 2-HOUR DEBATE!
2:02:01
4.0 Solutions
Рет қаралды 9 М.
What is the Unified NameSpace?
17:58
4.0 Solutions
Рет қаралды 25 М.
The Ultimate Sausage Prank! Watch Their Reactions 😂🌭 #Unexpected
00:17
La La Life Shorts
Рет қаралды 8 МЛН
How Much Tape To Stop A Lamborghini?
00:15
MrBeast
Рет қаралды 215 МЛН
When u fight over the armrest
00:41
Adam W
Рет қаралды 31 МЛН
Use KME Smart App with ESP32|NO Code App
4:40
ADTechKnow
Рет қаралды 4
MQTT + Sparkplug B, What They Are and Why Use Them
14:40
AVEVA Operations Control
Рет қаралды 8 М.
Unified Namespace and Historians
22:30
4.0 Solutions
Рет қаралды 7 М.
MQTT Sparkplug B data simulator
8:05
Amine Amaach
Рет қаралды 2,4 М.
What is MQTT? - Part II - "The MQTT Stack"
22:45
4.0 Solutions
Рет қаралды 21 М.
Beginners guide to MQTT Sparkplug
17:00
Steve Cope
Рет қаралды 3,3 М.
What is MQTT? - Part I - The Foundation
12:42
4.0 Solutions
Рет қаралды 40 М.
The Ultimate Sausage Prank! Watch Their Reactions 😂🌭 #Unexpected
00:17
La La Life Shorts
Рет қаралды 8 МЛН