Ich selbst habe mal einen Controller
LS146 von Logosol verwendet (Vertrieb in D durch ISEL) und er müßte Deinen Anforderungen ungefähr entsprechen. Aber die gibt es ähnlich auch von etlichen anderen Firmen. Zieh Dir mal das Datenblatt und beschäftige Dich damit, bei Fragen kann ich weiterhelfen. Du brauchst dann im und zum PC keine andere Hardware als diesen Controller. Die Anschlüsse für Referenz- End- und weitere Schalter sind mit auf dem Controller. Der Controller hat zwar ein Serielle Schnittstelle, aber damit hast Du programmtechnisch nichts zu tun Der Zugriff erfolgt über eine DLL-Funktionsbibliothek, wozu es auch LabVIEW Treiber gibt. Und selbstverständlich muß man nicht alles vom Urschleim an programmieren, die vorhandenen Funktionen sind schon recht komplex, also beispielsweise ist die Bewegung von A nach B inklusiver Beschleunigung und Abbremsung eine solche Funktion, oder eine andere Funktion ist der Lauf zur Referenzposition.
An Hardware brauchst Du dann noch den Schrittmotor und ein Netzteil für z.B 24V je nach Motor.
Mit so einem Controller und noch mit den zugehörigen LV-Treibern hast Du sehr gute Voraussetzungen, das Programm in endlicher Zeit fertigzustellen, was Dir mit Hardware aus einem Bastel-Laden nie und nimmer gelingen wird. Oder anders ausgedrückt: Beim Programmieren kannst Du voll den Schwerpunkt auf Bedienungsomfort, Ästhetik und Funktionssicherheit legen, da Dir die Mühen der unteren Ebene wegen der bereits vorhandenen komfortablen Funktionen erspart bleiben.