SPS als Robotergehirn

Speicherprogrammierbare Steuerungen (SPS) werden heutzutage vor allem in der industriellen Automation eingesetzt. Im Zuge des enormen technologischen Fortschritts und der damit verbundenen Leistungssteigerung von Prozessoren übernehmen SPS jedoch je länger, je mehr auch regelungstechnische Aufgaben, wie z.B. die Steuerung eines mobilen Roboters. Die Grenzen solcher Anwendungen werden dabei häufig nicht mehr durch die Hardware, sondern die Softwareentwicklung erreicht.

Jonas Krüsi

11. April 2016

Sowohl im industriellen als auch im privaten Umfeld ist ein starker Zuwachs autonomer, mobiler Roboter erkennbar. Ob sie zu logistischen Zwecken in Lagersystemen, als Unterstützungsfahrzeuge im landwirtschaftlichen Umfeld oder zum Mähen des privaten Rasens eingesetzt werden, hat grossen Einfluss auf die Anforderungen der Hard- und Software. Zur Ansteuerung solcher Fahrzeuge eignet sich vor allem bei Prototypen oder Ausbildungsgeräten die Kombination aus Industrie-PC und Hardware-SPS.

Eine zyklusorientierte SPS liest zu Beginn jedes Zyklus die Werte der Eingänge aus und arbeitet anschliessend das Anwenderprogramm sequentiell (Zeile für Zeile) ab. Aus den Berechnungen und Anweisungen im Programm gehen die Zustände der Ausgänge hervor. Ein mobiler Roboter ist oftmals mit vielen Sensoren ausgestattet, deren Status bei jedem Zyklus abgefragt werden muss. Da sich bei einer SPS die Sensoren und Antriebe aufgrund des modulartigen Aufbaus von Baugruppen und Interfacekarten sehr einfach ansteuern lassen, liegt die Verwendung einer der typischen SPS-Programmiersprachen nahe. Ein strukturierter Programmaufbau ist bei solch komplexen Anwendungen jedoch wesentlich aufwendiger als bei einer objektorientierten Programmiersprache wie C++.
Am besten lassen sich die verschachtelten Softwarestrukturen eines mobilen Roboters mit der Programmiersprache Strukturierter Text (ST) realisieren. Der Aufbau erinnert an Pascal, und es können im Vergleich zu den anderen SPS-Sprachen (AWL, AS, FUP oder KOP) auch anspruchsvolle Funktionsblöcke in hochsprachenähnlicher Art in das Programm eingebunden werden. Vor allem bei der Verwendung von Funktionsbausteinen mit einer Vielzahl von Parametern ist mit ST ein übersichtlicher Aufbau möglich.
Die SPS sind trotz Leistungssteigerungen und wachsender Funktionalität noch nicht vollumfänglich im Bereich der mobilen Robotik angekommen. Erste industrielle Anwendungen zeigen jedoch das vorhandene Potenzial.