Mein Team hat beschlossen, eine SPS zur Steuerung eines industriellen Prozesses zu verwenden, der eine einfache Echtzeit-E / A für externe Geräte mit minimaler Verarbeitung erfordert. Wir erwarten jedoch, dass die genauen Ausgaben zwischen den Läufen variieren (tatsächlich wird ein bestimmter Lauf sehr selten wiederholt), und der Bediener verfügt über keine Erfahrung in der SPS- / Softwareprogrammierung.
Obwohl ich das tatsächliche Produkt nicht offenlegen kann, wäre die beste Analogie, dass wir einen industriellen Smoothie-Hersteller entwerfen, bei dem die SPS das Öffnen und Schließen verschiedener Ventile in Echtzeit genau steuert. Der Bediener verwendet unsere Software, um eine benutzerdefinierte Abfolge von Zugaben verschiedener Reagenzien und das Ein- und Ausschalten relevanter schwerer Maschinen (z. B. eines Industriemischers) zu entwerfen.
Hier ist die Herausforderung: Unser aktueller Ansatz besteht darin, einen eigenen Compiler zu schreiben, der die Anweisungen des Bedieners (Ventil A für 10 ms öffnen, Ventil B für 20 ms öffnen) in Kontaktplanlogik und SPS-Maschinencode übersetzt. Wir würden dann unser selbst kompiliertes Programm direkt über die serielle Schnittstelle in die SPS herunterladen. All dies müsste automatisiert werden, damit der Bediener erst auf eine Schaltfläche klicken muss, nachdem er seine Schrittfolge festgelegt hat.
Trotz meiner Recherchen habe ich jedoch keinen einzigen SPS-Anbieter gefunden, der beide 1) einen Compiler mit API hat oder genügend Informationen über seinen SPS-Maschinencode veröffentlicht, um einen Compiler schreiben zu können, 2) das direkte Herunterladen von Programmen in die SPS unterstützt ohne Verwendung der Programmiersoftware des Herstellers (CX-Programmierer, Atmel Studio usw.).
Ich bin zu der Überzeugung gelangt, dass wir möglicherweise den falschen Ansatz verfolgen oder zumindest nicht wissen, nach welchem Produkt wir suchen sollen. Die E / A ist einfach genug, um den Aufbau eines eigenen Boards nicht zu rechtfertigen, aber die gesuchte Funktionalität, nämlich die SPS-Interaktion mit PC-Software auf hoher Ebene, scheint nicht verfügbar zu sein.
Im Idealfall möchten wir das gesamte Programm auf einmal in die SPS herunterladen und keine Anweisungen einzeln senden. Die Ausführung aller Anweisungen auf der SPS (oder dem Gerät, das wir letztendlich verwenden) muss in Echtzeit erfolgen.
Gibt es im Handel erhältliche SPS, die das Kompilieren und Herunterladen von Maschinencode unterstützen, sodass der gesamte Prozess durch ein größeres Programm automatisiert werden kann? Gibt es eine andere Möglichkeit, ein Echtzeitprogramm auf eine SPS herunterzuladen, die von einer PC-Software in einer Hochsprache geschrieben wurde?