I don't understand why you want to count prox switches either.
I have some experience with plating lines, 25-32 stations, with 6-8 hoists in a system. I can't claim I programmed much of it, but I did reprogram the trolley/hoist movement logic so I've got some sense of it.
Depending on how accurate the hoist placement needs to be, you might be able to get away with prox switch detection, however you'll never reliably detect your prox, and stop the trolley/hoist in a a position that maintains the prox, unless you create some larger sensing area. The logic is pretty simple, I'm messing with ST so here you go:
Code:
IF Moving_To_Station = 15 THEN
IF Station_15_Prox THEN
Hoist_At_Station_15 := Station_15_Prox;
ELSE
Hoist_At_Station_15 := False;
END_IF
END_IF
Our trolley/hoists were controlled by VFDs and had High Speed and Low Speed settings, accuracy was important as we approached, but so was speed to ensure throughput. Once we got 'close' to the station we slowed down until the target was reached. We had laser measurement sensors to monitor position in relation to the station position. It also allowed us to determine direction. We also had prox switches that served as a
confirmation the target position was reached. If we lost the prox there was logic to jog the hoist slowly until position was reached again. Simply to correct for an overshoot/undershoot situation. We had to be very accurate as the basket was lowered onto a shaft so it could be rotated while at the station.
I would add some type of position feedback if possible, but again if your target tolerance isn't that important you probably can get away with it.