Profibus is a hot topic around our offices right now. Our whiz kids on the other side of the wall from me are releasing Profibus to ASCII, Modbus RTU, Modbus TCP, EtherNet/IP and a whole bunch of other gateways.
Profibus is an interesting technology for a lot of reasons. It is still the dominant protocol of Europe. Profinet has made a start there but it will be years and years before the number of Profinet nodes is anywhere close to Profibus.
Every August I go to the Profinet International (PI) conference in Phoenix. (Why in August? It’s cheap. Who wants to be in Phoenix in August?) Carl Henning, the Assistant Sheriff of Profinet International, always shows a chart with phenomenal numbers for Profibus. Something like 11, 12 or 13 million nodes. Not sure where they are now but it’s huge.
By the way, you’ll know Carl if you see him. Since I designated him the Assistant Sheriff of PI, he’s been wearing a 10 gallon hat and a badge. I guess he kind of likes the title and the outfit. All city boys want to be cowboys.
Like everything else German, Profibus has a couple of variations. There’s Profibus FMS (Fieldbus Message Specification), Profibus PA (Process Automation) and Profibus DP (Decentralized Periphery). DP is all I am going to talk about here. Honestly, I know almost nothing about the others beyond how to spell them. DP is the one with the majority of the nodes anyway.
So, why is Profibus so dominant? One factor is that it is the preferred way to connect to a Siemens PLC. Rockwell has a lot of traction in the US but Siemens is worldwide and growing strong in the US.
I was shocked a few years ago when US Navy ships started using Siemens PLCs. Thought for sure that Rockwell could have leaned on a few senators to make sure that our ships would have American made programmable controllers but that didn’t happen. Siemens is a very tough competitor for Rockwell.
Probably the biggest factor in its success is its speed. Profibus DP operates at a startling 12 Meg. That’s 24 times DeviceNet’s max speed. It’s not Ethernet but it’s plenty fast for most everything except some Motion Control Applications.
They get this amazing speed by using a souped up RS485. Special connectors and components are necessary to achieve that kind of performance.
Profibus is a Master – Slave kind of network. Masters, also called Controllers are usually Siemens S7 PLCs. Masters send outputs to Slave devices. Slave devices send Inputs back to the Masters. You can have up to 127 Slave devices and like DeviceNet, there is only one Master per network.
It doesn’t move a lot of data. The IO transfer size is adequate at 244 bytes, but for the kinds of devices used in Discrete Automation, 244 bytes is just fine.
Just like many of the other protocols, there is a buffer in the PLC (Profibus Master) that gets moved to the device (Profibus Slave) and a buffer in the device that gets moved to the Master. These buffers are moved cyclically. Lots and lots of my customers tend to think that just because there is data moving in two directions that it must be request – response. It’s not.
The data representation causes some heartache for a device vendor. There is some confusing terminology. It’s vastly different than Modbus RTU, Modbus TCP, EtherNet/IP or DeviceNet data representations.
Profibus devices look like an I/O rack to the controller. An I/O rack has some number of slots. Each slot can have a module in it. Just like in a physical world, a Profibus device with a virtual I/O rack could have a 16-bit Input module in Slot 1 and a 4 channel Analog output device in Slot 2. Even if the device is a weigh scale, it has to somehow adapt its data to this I/O rack data representation. It takes a bit for a device designer to wrap their head around that.
The GSD file is how that data representation is communicated to the Controller. The GSD is the Profibus equivalent of the DeviceNet EDS file only it’s more functional. The GSD tells the controller not only about the I/O rack configuration but is the link to integrating that configuration with the data table of the controller. And, of course, everything better match or nothing works right.
There are a few things I don’t like about Profibus. For one, it’s expensive. You really can’t implement it in software – there are performance and system issues that make it extremely difficult.
There are two ways to get into the Profibus DP world. One, you buy the ASIC from Siemens or one of a few other vendors. The ASICs aren’t cheap. Especially in low quantities. Or you could buy something like NetX from Hilscher. That works fine but you are going to pay even more for all the additional functionality that you get in a NetX product. (NetX, by the way, is another one of those amazing German automation products.)
You need special connectors on your product for Profibus, special cables, and a way to configure your device. Configuration is usually done with three switches to set the Profibus address (1-127). I’ll admit that’s a plus, generally you just set the address and you’re done.
I also don’t particularly care for the data representation. It’s kind of an anachronism in 2012. We’re tied to a structure developed 50 years ago and can’t get away from it. Don’t see a way out of it though.
The real upside for the user community is that there are a lot of Profibus devices around. They’re fast, reliable and highly functional. You do get value for your money in the Profibus world.
As I said earlier, don’t expect Profibus to go away. It’s too functional and too good at moving data in and out of a controller to be displaced by Ethernet.