disclaimer:I have great respect for you for being the only person in this industry I've met (well, not MET, actually, "interacted with anonymously in the internet", maybe?) who actually tries to use math to design a control system. I've mostly given up trying to advocate for that. I do not do motion control on a daily basis, and definitely not hydraulics.
We have what we call our basic hydraulic system. It is easy to control. Disconnected our controller. We changed out the SSI MDT rod for an analog MDT rod so we could use analog inputs and output from the PLC.
I/we are not done yet. That article will not come out for another two months or so.
It is not my intention to bash PLCs.
Why not use the SSI encoder with the PLC, as well? Might as well set up an apples to apples comparison. It feels like you're setting up a straw man, where a PLC is limited to slow things with old tech, and motion controllers are fast with new features. The lines are a lot more blurred than they used to be.
I'm willing to bet there are people on this forum that would be willing to help you maximize the capabilities of your various attempted PLC solutions. Some things could be use Y hardware instead of Z hardware, which may be too late to change, but there may be software best practices you're missing. I know from my experience that there can be many ways to use a system, but usually there is one way the system WANTS to be used, and it often isn't obvious.
Post a project; I'm curious what the response would be.
I don't know for sure. I can find out on Monday. Assume it is the S7-1511.
I can make allowances for the speed but the motion blocks are a joke.
One thing I want to do is test the Siemens target generator. This is the most difficult part of a motion controller to write that actually does motion. The Ethernet code is a killer too.
Note that a 1518 is literally 60x faster (by bit processing speed) than a 1511, so picking the right CPU has a huge effect on what motion is possible. It can also handle 25x the axes at that 4ms time. Faster times become available in faster processors, but I'd be surprised if 4ms were the fastest even at the 1511.
Note also that there is a T variant (t for technology) for some of the processors that allows for added motion capability in an otherwise identical unit. I've never bumped into something called a target generator, but I'd be surprised if it were impossible. The motion instructions in the regular processors exist mostly to allow users to do position control with VFDs. The Ts are relatively new, and gaining functionality with every release, but it might be true that it really require Simotion to do it right.
That said, the precanned instructions are mostly puzzle pieces you use to make your own solution. I saw a hydraulics library mentioned on the support site, but it looks like it isn't freely available.
Maybe that's the difference between PLC and motion controller in your definition I'm missing? How much of the application is precanned?