Variablenzugriff in SPS über Symbolkonfiguration

Deutsch
ventus
2020-09-11
2020-09-14
  • ventus

    ventus - 2020-09-11

    Hallo, ich beschäftige mich nun mit Codesys V3.5 und hätte vorab ein paar Fragen, da ich dazu noch nicht fündig geworden bin.

    Gibt es direkt in Codesys eine Möglichkeit, so ähnlich wie bei Beckhoff über den ADS Server Informationen über die im Projekt vorkommenden Variablen heraus zu kriegen? Und bei diesen dann auch den Wert auszulesen oder den Wert neu zu beschreiben? Ich habe gesehen in der Symbolkonfiguration von Codesys kann man bestimmte Variablen aus dem Projekt auswählen und sozusagen "freischalten". Dabei wird ein XML File erzeugt welches ich dann eventuell in der SPS auslesen und durchparsen könnte. Doch wie kann ich dann schreiben und lesen?

    Das ganze soll direkt im PLC Code Möglich sein.

    Oder gibt es hierzu vielleicht schon eine andere Möglichkeit auch ohne dem XML? Sprich dass man auf die freigegebenen Symbole aus der Symbolkonfiguration direkt im PLC Code zugreifen kann.

    Danke schon mal für die Infos

    Grüsse

     
  • eschwellinger

    eschwellinger - 2020-09-12

    Kommt darauf an welche CODESYS SPS du genau verwendest.
    Wenn es ein SL Produkt aus dem CODESYS Store ist, kannst du über OPC UA von außen auf die Variablen zugreifen... ( Symbolkonfiguration anlegen im CODESYS Projekt usw..)
    Die externe Applikation müsste dan ein OPC UA Client sein.

    Aber vielleicht musst du noch genauer beschrieben welche Geräte in welcher Version zum Einsatz kommen.
    Grüße
    Edwin

     
  • ventus

    ventus - 2020-09-14

    Guten Morgen Edwin, danke für die Antwort. Das mit dem OPC UA hatte ich auch schon im Kopf. Würde natürlich gehen, heisst aber immer dass man die kostenpflichtige OPC UA Software von Codesys brauch. Mehr suche ich aber eine Lösung das direkt auf der SPS zu machen. Also um vieleicht kurz auszuholen, ich komme eigentlich aus der Beckhoff Welt. Denke das ist dir sicher auch ein Begriff. Und da kann man jede Info zur Variable und auch das lesen und schreiben über ihren ADS Server machen. Und das direkt mit Funktionsbausteinen aus der SPS, also PLC Code heraus. Daher bräuchte ich eben einmal die Funktion mit der ich herausfinden kann wieviele und welche Art von Variabeln im SPS Projekt vorkommen. Also im Prinzip das was man in der Symboltabelle drinnen mit dem Häckchen versetzt. Die Symboltabelle muss diese Informationen ja auch irgendwo her bekommen. ;) Und danach brächte ich eben noch die Möglichkeit lesend oder schreibend auf die jeweiligen Variabeln zuzugreifen. Funktionieren sollte das ganze dann Grundsätzlich mit jeder SPS oder Gerät das direkt mit Codesys V3 programmiert werden kann. Ich nutze momentan nur meinen Windows PC als SPS mit Version 3.5 SP16.

    Danke

    Grüße

     
  • eschwellinger

    eschwellinger - 2020-09-14

    hm.. so richtig verstehe es ich immer noch nicht, du meinst du willst über verschiedene SPSen auf diese weise zugrreifen
    können, weil innerhalb deiner SPS kannst du doch jede x beliebie Variable schreiben lesen usw...
    irgendwas fehlt da noch an deiner Beschreibung.

     
  • Thomas

    Thomas - 2020-09-14

    Moin,
    das der ADS Server an jede Variable heran kommt, kann ich mir fast nicht vorstellen. Aber man lernt ja nie aus.

    An die, über die Symbolkonfiguration exportierten Variablen kommst Du in der Steuerung über die Lib "IecVarAccess". Die Umsetzung wird aber sicherleich kein Spass.

    Gruß Thomas

     
  • ventus

    ventus - 2020-09-14

    Hallo, genau so wie Thomas beschrieben hat. Also ich bekomme Werte von einer Variable über einen Application Layer in die SPS, das kann z.b. Mqtt, HTTP, Websocket usw sein... Und diesen Werte muss ich dann natürlich auf die jeweils richtige Variable schreiben können. Doch das möchte ich natürlich nicht manuell machen, sondern soll automatisch passieren. Oder umgekehrt der Weg. Ich möchte den Wert von bestimmten Variablen in der SPS verschicken können, damit ich Sie auf einem Dashboard z.b. anzeigen kann...Daher das ganze lesend und schreibend.Das ganze wie gesagt funktioniert in Twincat gut über den ADS Server. Habe dort das ganze auch schon so umgesetzt. Und daher die Frage ob man eben genau sowas auch mit Codesys machen kann.

    Komme ich denn über die lecVarAccess Lib auch an die Infos der Symbolkonfiguration? Oder kann damit nur gelesen und geschrieben werden? Ist diese Bibliothek standartmässig immer mitinstalliert?

    Danke nochmals

    Grüße

     
  • Thomas

    Thomas - 2020-09-14

    Moin,
    genau dafür ist Sie da und ja, ist in der Entwicklungsumgebung enthalten.

    Ich habe mal ein wenig damit "rumgespielt" und es dann verworfen.
    Daher werde ich Dir nicht weiterhelfen können.

    Gruß Thomas

     
  • ventus

    ventus - 2020-09-14

    Ok, aber danke schon mal für den Hinweis.

    Grüße

     

Log in to post a comment.