True three positions cylinders like the one shown above have a few downsides that should be noted.
If you used two stacked equal-stroke double-acting cylinders, you would get three unique positions with two solenoids. Each solenoid has two positions, which really gives you four positions. When stacked, two of those positions are essentially duplicates of one another. One retracted, one extended, or one extended, one retracted. Basically the same thing relative to where they mount depending on stroke lengths. Obviously with different stroke lengths you could get 4 positions.
With the three position cylinder, you run in to an issue where the outer most cylinder rod cannot be held at nominal force in all three positions when loaded while both extending and retracting. See below:
With some tricky software, you can make this work for most applications that do not need full force in both extension and retraction (such as a neutral position in a gearbox where minimal force is needed to hold position). If you need full force in extension and retraction in the middle position, you should use a different type of cylinder, or two double-acting cylinders stacked as described above.
Hope this helps.