EtherCAT Hardware aktivieren / deaktivieren

2019-11-05
2019-11-16
  • tino.bohnhardt

    tino.bohnhardt - 2019-11-05

    Hallo zusammen!

    Wir nutzen die Möglichkeit EtherCAT Komponenten per Variable zu aktivieren, bzw. zu deaktivieren.

    Dazu nutzen wir folgenden Befehl:
    PW150_BA_FU_Wickler_SD6.m_pConnector^.dwFlags.0 := 0;

    Das Funktioniert auch, solange keine Module für den Slave notwendig sind.
    Deaktiviere ich über diesen Befehl einen Slave mit Modul, so wird nur der Slave und nicht das Modul deaktiviert. Somit startet der EtherCAT Bus allerdings nicht.

    Deaktiviere ich den Slave per Rechtsklick -> Gerät deaktivieren, wird auch das Modul grau dargestellt und der Bus läuft korrekt.

    Meine Frage ist jetzt, wie kann ich per Variable das Modul deaktivieren?

    Vielen Dank im Voraus!

    IMG: Bild

    IMG: Bild

     
  • eschwellinger

    eschwellinger - 2019-11-08

    Hallo,
    welche version verwendest du genau?
    Ich denke "reconfigure" ... und die Slaves enablen/disablen wäre die aktuelle
    Methode wie es gehen sollte.

    Das mit den Connector flags denke ich ist die schon etwas "betagte" methode - ohne offizielle Schnisttelle.

    Grüße
    Edwin

     
  • tino.bohnhardt

    tino.bohnhardt - 2019-11-08

    Hallo!

    Ich habe 2013 mal die Variante mit m_pConnector von euch empfohlen bekommen und seit dem nichts mehr an dieser Funktion geändert, da sie bisher auch genau das gemacht hat was ich wollte.

    Als Runtime läuft V3.5.13 auf einem CE Gerät von der Firma Christ Electronic.

    Wie würde die Variante mit reconfigure aussehen?

    Danke!

    Gruß Tino

     
  • eschwellinger

    eschwellinger - 2019-11-16

    Hallo,
    die DeviceDiagnose anschalten...dann siehe Screenshot, mit Ethercat geht das genauso..
    Mann muss zusätzlich auch die slaves enablen/disablen. Für Ethercat etwa so...
    https://help.codesys.com/webapp/_ecat_l ... n=3.5.15.0
    Grüße
    Edwin

    IMG: Reconfigure.png

    IMG: enableDeviceDiag.png

     

Log in to post a comment.