Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Fehler erkennung Ethercat_Can_open

mauskopf
2017-10-29
2017-11-05
  • mauskopf - 2017-10-29

    Guten Abend,
    ich möchte einige Fehler auswerten auf meinem Raspberry.
    Ich verwende einen Ek1100 und einen El6751 auf dem ich einen Can Open Master betreibe.
    Auf dem Can Open Master hängen einige Slaves. Wie erkenne ich wenn sich ein Slave verabschiedet?
    Meine Slaves haben alle Hartbeat aktiv.
    Wie erkenne ich wenn mein EK1100 zb nicht mehr arbeitet?
    Lg
    Peter

     
  • mauskopf - 2017-10-30

    Danke Edwin für deine Antwort.
    einiges ist mir noch nicht völlig klar.
    Was macht der Befehl
    EL2008();
    wenn ich zB einen Can Open Slave mit dem Nahmen Slave_X habe wie kontrolliere ich ob dieser korrekt läuft? Bzw Online ist?

    Wie kann ich auf nmt Emergency Meldungen vom Slave reagieren?

    Lg
    Peter

     
  • eschwellinger

    eschwellinger - 2017-10-31

    Hallo Peter,

    es ist so das CODESYS für jeden Slave, der in deinem Baum hängt, implizit eine FB Instanz anlegt und diese Aufruft.
    D.h zu kannst bei Ethercat über diese Instanz in deinem Projekt Zusatzinformationen zum Slavezustand bekommen.

    Das ist leider nicht für alle Feldbusse gleich realisiert (u.a deshalb weil Details eben die Feldbusse unterschiedlch sind)
    daher der Ansatz das Ganze über die Device Diagnose zu vereinheitlichen. (Also was generisches "Feldbusunabhängiges")

    Die Emergency Nachrichten / SDO's usw musst du über die CIA405 lib abfragen:

    Grüße
    Edwin

    IMG: cia405.jpg

     
  • mauskopf - 2017-11-01

    Guten Tag und Danke für deine Antwort.
    Habe eben etwas experimentiert. Leider habe ich keine Resultate erreicht.
    Habe versucht den FB Get_State aus der von dir genannten Lib zu verwenden.
    Aber etwas scheine ich falsch zu machen.

    IMG: Get_State.PNG

     
  • mauskopf - 2017-11-01

    Wo sehe ich die netzwerk nummer?
    Lg

     
  • mauskopf - 2017-11-01

    Was heißt das in meinem Fall? Ich verstehe nicht ganz wie das mit der Netzwerknummer gemeint ist:(

    NETWORK := CANbus.NetId + 1, //CODESYS NetId starts by 0 (the number entered into the CANbus configurator); CiA405 NETWORK by 1; That is the reason why we have to increment it here.

    Danke Für Deine Geduld Edi:)

    Lg

     
  • mauskopf - 2017-11-05

    Hallo Edi:)
    Sorry das ich dich nochmals frage aber ich bekomme mein Problem nicht im Griff.
    Habe mit verschiedenen Netzwerknummern probiert aber ich kriege es nicht hin das ofline gehen der slaves zu erkennen.
    Die Entwicklungsumgebung erkennt es sofort und der entsprechende Slave wird von grün auf orange gestellt.
    Lg
    Peter

     
  • mauskopf - 2017-11-05

    Hallo Edi,
    habe leider mein Problem noch nicht gelöst.
    Habe mit mehreren Netzwerknummern probiert aber immer ohne Resultat.
    lg
    Danke schon jetzt für deine kompetente Hilfe

     

Log in to post a comment.