TwinCat 3 Text aus Textliste lesen

Zuviel Werbung?
-> Hier kostenlos registrieren
Ich will anhand einer Nummer (ID) einen Text in einer Bestimmten Sprache (LangID) aus einer Tabelle auswählen und in einen String schreiben. Es je werden je nach Auswahl verschiedene Textbausteine mit Parametern zu einem Text kombiniert und dann entweder an einen Drucker übergeben, in eine Datenbank oder Datei geschrieben und am HMI angezeigt.

Und damit ich die Daten komfortabler pflegen kann, wäre eine TextList wohl das schnellste und einfachste.
 
Ich will anhand einer Nummer (ID) einen Text in einer Bestimmten Sprache (LangID) aus einer Tabelle auswählen und in einen String schreiben. Es je werden je nach Auswahl verschiedene Textbausteine mit Parametern zu einem Text kombiniert und dann entweder an einen Drucker übergeben, in eine Datenbank oder Datei geschrieben und am HMI angezeigt.

Und damit ich die Daten komfortabler pflegen kann, wäre eine TextList wohl das schnellste und einfachste.
Ah, OK, da folgt dann gleich die nächste Frage, welches HMI (Webvisu/Target Visu oder TF2000)?
Es gibt Funktionen für die Textlisten, aber die funktionieren nur, wenn eine Target Visu vorhanden ist. Ob das auch mit der Webvisu funktioniert weiß ich gerade nicht. Siehe hier im Infosys, allerdings sind die Möglichkeiten dort auch eingeschränkt, man kann nur den Text der aktuellen Sprache auslesen.
 
Was in Deinem Fall im gewissen Rahmen eine Alternative sein könnte wäre die Textliste (n) als CSV zu exportieren, auf der Steuerung ablegen und von Deinem Programm auslesen.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich sehe schon, so einfach wie ich mir das vorgestellt habe wird es mal wieder nicht. Aber bevor ich mit CSV anfange, dann mache ich lieber gleich XML. Da bin ich wesentlich flexibler.
 
Wenn es sich um TF1800 handelt, kann man es zur SPS Laufzeit auslesen:


Code:
PROGRAM TEST
VAR
    sTextList : STRING := 'Port_851.MessageList';
    sTextListID : STRING := '4100';
END_VAR

sMessage := VisuElems.cmpDynamictext.DynamicTextGetText(ADR(sTextList), ADR(sTextListID))^;

Das liest den Textlisteneintrag in der Sprache aus in der die Visu gerade läuft.
Man konnte aber glaube auch eine beliebige andere Sprache auslesen.
 
Die TF2000 kam erst später, da gab es TC3 ja schon eine Weile und die TF1800 war der Standard. Aber auch wenn ich auf ein Produkt bloß meinen Namen draufschreibe sollte man schauen dass die Doku dazu passt. Aber die Doku Qualität bei Beckhoff lässt zumindest was die Software angeht an einigen Stellen zu wünschen übrig...
 
Zurück
Oben