Linux 5.2 Will Introduce The Fieldbus Subsystem (phoronix.com) 59
"The new Fieldbus system has been deemed ready to be released into the staging area of the Linux kernel," writes jwhyche (Slashdot reader #6,192).
Phoronix reports: This newest subsystem for the Linux kernel benefits industrial systems. Fieldbus is a set of network protocols for real-time distributed control of automated industrial systems. Fieldbus is used for connecting different systems/components/instruments within industrial environments. Fieldbus is used for connecting facilities ranging from manufacturing plants up to nuclear energy facilities. The Fieldbus specification has been around for decades while now seeing a formal subsystem within the Linux kernel.
The subsystem allows for devices to exchange data over a Fieldbus whether it be Profinet, FLNet, or one of the other implementations. The subsystem provides a generic framework for exposing switches, lights, actuators, motors, and other hardware... The Linux kernel's Fieldbus subsystem has gone through over ten rounds of public revisions in recent months and has been deemed ready to premiere with Linux 5.2 [which] should debut in July.
Phoronix reports: This newest subsystem for the Linux kernel benefits industrial systems. Fieldbus is a set of network protocols for real-time distributed control of automated industrial systems. Fieldbus is used for connecting different systems/components/instruments within industrial environments. Fieldbus is used for connecting facilities ranging from manufacturing plants up to nuclear energy facilities. The Fieldbus specification has been around for decades while now seeing a formal subsystem within the Linux kernel.
The subsystem allows for devices to exchange data over a Fieldbus whether it be Profinet, FLNet, or one of the other implementations. The subsystem provides a generic framework for exposing switches, lights, actuators, motors, and other hardware... The Linux kernel's Fieldbus subsystem has gone through over ten rounds of public revisions in recent months and has been deemed ready to premiere with Linux 5.2 [which] should debut in July.
Re: (Score:3)
Meh. (Score:2)
Profinet is a Siemens thing to retain their customer with a strong vendor lock-in.
Better structured protocols and buses are used that dont really come with this heavy old layout.
So it's kind of "Meh."
Re:Meh. (Score:5, Informative)
Today I Learned Profinet is a Siemens thing used for vendor locking. As you can imagine this came as a surprise to me considering how I've used Profinet extensively in my career but have yet to touch a Siemens product.
Re: (Score:2)
Re: Ok. So what? (Score:1)
You act like you can't do this already. There are plenty of python modules that will work on a pi for Ethernet/ip or modbus/tcp.
I already use this for my bottling lines including building my own HMIs on them..
Re:Ok. So what? (Score:5, Informative)
Can anyone explain what this is going to do for whom?
Basically the Linux kernel allows you to do a LOT of things including some very specialised applications such as real-time control. By mainlining support for common fieldbusses the kernel can now natively communicate with field instruments as part of a control system.
The actual impact of this change is close to non-existent for any normal use of Linux, but for those looking at using the kernel as small base for a control processor in an industrial / commercial control system this now makes it easier for them.
Re: (Score:2)
field bus ha (Score:1)
Create a good design, guys, minimize the surface of your interface.
Re: (Score:2)
Re: (Score:1)
It's pretty difficult to do real time fieldbus networks without realtime support from the kernel.
Re: (Score:2)
It does if you want to use the Linux kernel in your control processor for realtime control. Ultimately this change here won't impact anyone outside of a few automation vendors and the odd person using Linux as a RTOS which apparently there's a few people who do.
Re: (Score:3)
This isn't so much the so-called "Internet of Things" but more about industrial environments. Say I have a Retro Encabulator, and I need to control the magneto reactance feeding my cardinal grameter. In modern systems, this is all done through a fieldbus.
This is purely for industrial applications, probably trying to replace programmable logic controllers.
Re: (Score:2)
Other buses? (Score:2)
Re:Other buses? (Score:4, Informative)
What happened to KDBUS?
It was scrapped because it was a wreck [lwn.net] and was dropped in favor of a more generic solution called BUS1 [bus1.org]. It doesn't look like BUS1 has been included in the mainline kernel and at this point I think interest in doing so has waned.
Why in kernel? Why not something more current? (Score:2)
Well, I guess it's kinda cool that kernel developers recognize industrial automation exists, but...it's not like there aren't already better linux options...
Ethernet/IP from ODVA (Rockwell...)
https://github.com/EIPStackGro... [github.com]
Profi* the standard throughout Europe:
https://www.rtautomation.com/s... [rtautomation.com]
And this one, is still around, too
http://profim.sourceforge.net/ [sourceforge.net]
Modbus for process automation and DCS sorta stuff
https://github.com/stephane/li... [github.com]
etc. ..
etc.
etc.
D'oh--they mean fieldbus, not Fieldbus (Score:5, Informative)
In the words of Roseanne-Rosanadana... "Never Mind".
This is actually pretty cool; it provides kernel support for any industrial network (a fieldbus, not specifically Foundation Fieldbus).
They started with Profinet (I would have preferred ENet/IP, but that's just because of where I work).
Re: (Score:2)
Yeah I did this too. When read it I was like "WTF would anyone bother putting Foundation Fieldbus in the kernel"
Re: (Score:3)
Not sure if this new support is what I hope it is, but what you need when designing an industrial control system is that your underlying system provides you with easy interface to the hardware. So when the machine is in state "production" you need to monitor some variables to remain within allowed ranges. A monitor program should then be as simple as
while (1) {
read (mydevice, &myvariable, sizeof (myvariable));
if ((myvariable
SUPERBUG (Score:2)
no, you're an intentionally created SUPERBUG.
How about a secured system? (Score:2)
Low slashdot numbers. (Score:2, Funny)
> (Slashdot reader #6,192).
A long time ago I decided I wouldn't play along with the "grab a low user number" game. So I waited a while before registering.
Pfff 6192 ha! wimp! :-)