Bei andere Software ist natürlich auch nicht alles perfekt. Die Dokumentation bei Beckhoff ist mehr als nur Semi und ich habe mehr als einmal geflucht und geschimpft, abstürze waren auch ein Thema.
Aber die Frage mit den Parametern als Startwert zu übernehmen kann ich auch nicht beantworten.
Ich kann aber gegenfragen stellen die mir bei TIA total fehlen:
- Wie kann ich einem Funktionsbaustein Methoden oder Aktionen hinzufügen?
- Wie kann ich die Vererbung in TIA Realisieren?
- Wie kann ich die Hardware Schnittstelle direkt im Funktionsbaustein deklarieren?
- Wie kann ich in einem UDT auch Instanzen von Funktionsbausteinen deklarieren?
- Wie kann ich an einen Funktionsbaustein ein Array
[*] of Funktionsbausteinen übergeben?
- Wo finde ich die Funktion SizeOf und MemCpy?
- Wie kann ich beliebige UDTs in einer XML oder JSON Datei speichern und wieder lesen?
- Wo stelle ich die Zykluszeit ein?
- Wie füge ich einer grafischen Schrittkette komplexe Anweisungen in Strukturierten Text hinzu?
- Wie kann ich mit TIA für eine alte Software Version die Software bearbeiten ohne sie hochzurüsten?
- Wie kann ich meine komplette Software inkl. Hardware in gängige Versionsverwaltungssysteme verwalten (Git und co)?
- ...
Also auf meine Hauptfrage gab es leider keine Antwort, sorry IMHO: so lange ein SPS Anbieter nicht ein mal die Eingestellten Werte zurück ins Programm lesen kann, kann ich dies nicht als eine SPS bezeichnen.
PS: Beckhoff. SPS austauschen, CF Karte raus und in die neue "SPS" rein, läuft das? (Antwort, nein, da die Lizenzen nicht passen, abgesehen davon, dass heute TC2 und TC3 Runtimes gern vertaucht werden.)
so zu den Fragen:
-Wie kann ich einem Funktionsbaustein Methoden oder Aktionen hinzufügen?
Was ist den damit gemeint? wie man in FB einen anderen FB aufruft, wie überall, man ruft den auf =)
- Wie kann ich die Vererbung in TIA Realisieren?
Vererbung, sind damit Klassen wie in Java/C++/C#/etc... gemeint? Wenn ja, das wird auch bei TW nicht gehen, da das einfach SCL nicht unterschutzt, und ja, sorry aber in SPS Welt soll sowas auch nicht geben (wie alles andere nur IMHO)
- Wie kann ich die Hardware Schnittstelle direkt im Funktionsbaustein deklarieren?
Wollen Sie Hardware Konfig in der Laufzeit erstellen und/oder anpassen, oder wollen Sie einfach eine Schnittstelle für Erstellung des HWs? Wenn es das 2. ist, Tia Openness + DotNet. Wenn Sie das erste meinen, mit Remote IO müsste es zum Teil gehen, ich selber würde aber sowas nie machen, was hat das für einen Sinn? Bitte um einen Beispiel. Oder war damit der AnyPointer gemeint? Also, eventuell die Frage besser formulileren.
- Wie kann ich in einem UDT auch Instanzen von Funktionsbausteinen deklarieren?
Wenn man so will, kann man immer noch ein UDT mit Struct mit gleichen IO Variablen verwenden wie in DB, und denn wieder in einen UDT verwenden.
- Wie kann ich an einen Funktionsbaustein ein Array
[*] of Funktionsbausteinen übergeben?
Gegen Frage: ich will es sehen wie es in TC3 geht =) da ich es einfach nicht glaube, und auch ein Beispiel einer Anwendung wäre schön.
- Wo finde ich die Funktion SizeOf und MemCpy?
Size Of, bei S1500 schon mal nach "
ATTR_DB" geschaut? zu MemCpy: "BLK_MOVE"?
- Wie kann ich beliebige UDTs in einer XML oder JSON Datei speichern und wieder lesen?
Tia Openness + DotNet
- Wo stelle ich die Zykluszeit ein?
Eigenschaften eines Cyclus OB's (Bsp. OB35), da kann man es festlegen.
- Wie füge ich einer grafischen Schrittkette komplexe Anweisungen in Strukturierten Text hinzu?
Von aßen verschalten, oder wolles Sie es alles in einem Graph Plan haben, damit die Übersicht gegen 0 (Null) sterbt?
- Wie kann ich mit TIA für eine alte Software Version die Software bearbeiten ohne sie hochzurüsten?
Gegen Frage, wie kann ich das gleiche machen in TC, wenn ich die Runtime Version nicht auf dem Rechner habe?
- Wie kann ich meine komplette Software inkl. Hardware in gängige Versionsverwaltungssysteme verwalten (Git und co)?
Ohne weiteres geht das nicht,
aber entweder Versiondog, oder Openness + DotNet + eigene Configs für HW/SPS/HMI in Textform, dann könnte man machen was man will.