Leider hängt die Antwort vom SPS-Hersteller ab, den Sie verwenden. Die meisten von ihnen speichern ihren Code in proprietären Dateiformaten, so dass es schwierig ist, die reguläre Quellcodeverwaltung zu verwenden.
Rockwell bietet FactoryTalk AssetCenter an, wenn Sie Allen-Bradley verwenden. Ich habe es nicht festgesetzt, aber es ist wahrscheinlich teuer. Es kann jedoch mehr als nur die Quellcodeverwaltung.
Ich habe die normale (Mercurial) Quellcodeverwaltung mit Beckhoff TwinCAT PLC-Dateien verwendet. Das scheint in Ordnung zu sein, aber ich musste mich nie mit jemandem zusammenschließen. Die neue Version von TwinCAT (3), die später in diesem Jahr herauskommt, soll auf Visual Studio 2010 aufbauen, und ich gehe davon aus, dass es viel bessere sofort einsatzbereite Angebote für die Versionskontrollintegration geben wird. Daumen drücken.
Starten Sie Bearbeiten
Ich wollte nur hinzufügen, dass ich jetzt das neue TwinCAT 3-Produkt verwendet habe und Mercurial (TortoiseHg und das VisualHg-Add-In für Visual Studio) verwende. Es funktioniert ziemlich gut. Zunächst fühlt sich VisualHg sehr gut in die von TwinCAT 3 verwendete Visual Studio 2010-IDE integriert an. Der Quellcode für TwinCAT 3-Programme wird jedoch in der Regel in XML-Dateien gespeichert. Dies ist eine enorme Verbesserung gegenüber den proprietären Binärformaten anderer Hersteller, die ich verwendet habe, aber sie lassen sich immer noch nicht gut zusammenführen. Einige der Dateien haben keine Zeilenumbrüche im XML (ich habe Beckhoff darüber geschrieben), was bedeutet, dass ein zeilenweises Quellcodeverwaltungssystem nicht viel bewirkt. Da es sich um XML handelt, scheint sich die Reihenfolge der Knoten in der XML-Datei auch dann zufällig zu ändern, wenn Sie keine Änderungen vornehmen. Ebenfalls, Ich denke, es generiert manchmal neue IDs für einige Knoten, wenn dies nicht erforderlich ist, was zu überflüssigen Änderungen führt, die Hg aufnimmt. Dies macht es effektiv unmöglich, Änderungen an einem TwinCAT 3-Programm von 2 Programmierern gleichzeitig vorzunehmen und die Änderungen dann zusammenzuführen. Es ist ein bedauerliches Versehen der TwinCAT 3-Entwickler, die die Quellcodeverwaltung zweifellos regelmäßig in ihrer eigenen Arbeit einsetzen und nicht den Vorteil sahen, dass wir Programmierer mit geringer Automatisierung auf ähnlich leistungsfähige Tools zugreifen können. :( die die Quellcodeverwaltung zweifellos regelmäßig in ihrer eigenen Arbeit einsetzen und nicht den Vorteil für uns Programmierer mit geringer Automatisierung sahen, Zugang zu ähnlich leistungsfähigen Tools zu haben. :( die die Quellcodeverwaltung zweifellos regelmäßig in ihrer eigenen Arbeit einsetzen und nicht den Vorteil für uns Programmierer mit geringer Automatisierung sahen, Zugang zu ähnlich leistungsfähigen Tools zu haben. :(
Bearbeiten beenden
Starten Sie Edit # 2
Ich möchte darauf hinweisen, dass TwinCAT 3.1 nun über Dateiformate verfügt, die besser für die Quellcodeverwaltung geeignet sind, insbesondere die strukturierten Textsprachendateien. Tatsächlich ist das Produkt jetzt so konzipiert, dass es die Integration in Team Foundation Server unterstützt, glaube ich.
Bearbeiten # 2 beenden
Die andere Alternative ist, dass die meisten SPS-Programme in Textdateien exportiert werden können. Beispielsweise exportiert RSLogix 5000 seine Projekte in eine L5K-Datei, die nur aus Text besteht. Ich habe bereits Skripte für diese Dateien ausgeführt - sie sind relativ einfach zu analysieren. Sie würden gut mit der Quellcodeverwaltung funktionieren. Das bedeutet natürlich, jedes Mal zu exportieren, was scheiße ist.
Wenn Sie mit einer Standard-Versionskontrolle arbeiten, empfehle ich dringend ein verteiltes VCS wie Git oder Mercurial, da Sie bei SPSen die Hälfte der Zeit vor Ort sind und keine Verbindung zu Ihrem Heimserver herstellen können, sodass Sie lokale Festschreibungen vornehmen können ist ein echter Bonus.
Außerdem müssen Sie feststellen, dass einige SPS-Programmierumgebungen wie RSLogix bereits ein Diff-Tool enthalten, mit dem Sie Diffs für zwei Versionen Ihrer Projekte ausführen können. In Verbindung mit dem täglichen Speichern einer neuen Datei mit dem heutigen Datum scheinen die meisten Automatisierungsgeschäfte damit auszukommen.