Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 21

Thema: Zwei gleiche CAN Nachrichten (telegramm) senden mit CANOPEN EL6751 ohne inhibit Time

  1. #11
    Registriert seit
    31.07.2014
    Ort
    Niedersachsen
    Beiträge
    61
    Danke
    7
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo ihr alle,

    ich möchte gern diesen Beitrag wieder aktualisieren. Ich habe aber ein anderes Problem mit der Klemme EL6751-0010.
    Ich habe zurerst mit CANopen Node über einen "Allgeneinen CAN-Node" erfolgreich versucht, um CAN-Signal über PDOs mit einem CAN_Analyze auszutauschen. Dabei funktionierte die Klemme mit normalen CAN Node und verwendet kein NMT.
    Dann habe ich mit EL6751-0010 Slave verwendet. Ich kann nicht die Box EL6751_0010 (CANopen Slave) über einen "Allgeneinen CAN-Node" einstellen, da EL6751-0010 ein Slave_Klemme ist und immer kein NMT verwendet(siehe Links).

    http://infosys.beckhoff.com/index.ph...erface&id=8029

    Ich habe dabei versucht, Daten über PDO_1 an den CAN-Bus zu senden und über CAN_Analyze zu beobachten, aber ohne Erfolg. Ich weiß nicht warum und vermute den Fehler, da ich kein Master auf dem Bus hatte. Der CAN_Analyze hat keine Datenvon PDO_1 empfangen. Ich glaube, dass ich noch was parametrieren muss, aber keine Ahnung.

    Hat jemand von Euch schon mal die Klemme EL6751_0010 verwendet? Es ist sehr dankbar, wenn jemand mir Tipps geben könnte

    Freundliche Grüße,

    Phuong
    Geändert von PhuongTran1983 (19.05.2015 um 17:31 Uhr)

  2. #12
    Registriert seit
    01.04.2009
    Beiträge
    143
    Danke
    0
    Erhielt 30 Danke für 29 Beiträge

    Standard

    Die EL6751-0010 ist eine CANopen Slave Klemme und auch genau für diesen Zweck gemacht worden. Wenn du keinen CANopen Master hast warum dann die Klemme? Du willst aber CAN Layer 2 Daten verschicken. Das sind Feature die nur in der EL6751 vorhanden sind, also solltest du die Klemme wechseln. Mit der EL6751 kannst du fast alles machen was man über CAN machen kann - sogar CANopen
    Schau dir mal den NodeState im SystemManger an (unter deinem allgemeinen CAN Node), der ist bei dir sicher 129, oder?

    Gruß

  3. #13
    Registriert seit
    31.07.2014
    Ort
    Niedersachsen
    Beiträge
    61
    Danke
    7
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Hallo Feldbus,

    danke Dir zuerst für die schnelle Antwort.

    ich werde morgen mal im im Büro gucken und schreibe Dir dann Bescheid.

    Dir einen schönen restlichen Abend.

    Gruß Phuong

  4. #14
    Registriert seit
    31.07.2014
    Ort
    Niedersachsen
    Beiträge
    61
    Danke
    7
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Guten Morgen Feldbus,

    Du hast Recht. Ich habe gerade geguckt und der NodeState lautet 129. Aber der sagt mir was? Könntest Du mir bitte etwas erklären.

    In meiner Arbeit habe ich später einen Master aber kein CANopen-Master. Ich will ja CAN Layer 2 Daten verschicken. Kann ich den Test für reine CAN-Nachrichten ohne Master mit einem CAN_Analyser machen oder nicht? Oder soll ich zusätzlich die Klemme EL6751 einsetzen, dann die Datentransfer zwischen zwei CAN_Node testen?

    Ein offener Punkt steht noch, dass ich nicht sicher bin, ob in der EL6751-0010 die CAN Layer 2 Schnittstelle intergiert ist oder nicht? Es kann sein, dass die nur CANopen-Nachrichten übertragen kann. Mein CAN-Analyser kann vielleicht nur normale CAN-Nachrichten übertragen, von daher konnte er keine Nachricht empfangen.

    Mit deiner Hilfe wird mein Verständnis ja klarer sein.

    Danke dir und viele Grüße,

    Phuong
    Angehängte Grafiken Angehängte Grafiken
    Geändert von PhuongTran1983 (20.05.2015 um 13:51 Uhr)

  5. #15
    Registriert seit
    01.04.2009
    Beiträge
    143
    Danke
    0
    Erhielt 30 Danke für 29 Beiträge

    Standard

    Du musst die CAN Klemmen in den OP Modus bringen, dafür gibt es zwei Möglichkeiten...
    1. du schickst von deinen anderen Knoten, dafür musst du im Slave aber eine Layer 2 Node angelegt haben mit einer Adresse - das rote ist für dich wichtig!
    Statusübergänge

    Die Netzwerkmanagement-Nachrichten haben einen sehr einfachen Aufbau: CAN-Identifier 0 mit zwei Byte Dateninhalt. Das erste Datenbyte enthält den sogenannten Command-Specifier (cs), das zweite Datenbyte die Knotenadresse, wobei die Knotenadresse 0 alle Knoten anspricht (Broadcast).
    11-bit Identifier 2 Byte Nutzdaten
    0x00 cs Node-ID

    Die folgende Tabelle gibt einen Überblick über alle CANopen Statusübergänge und die dazugehörigen Kommandos (Command Specifier im NMT Master-Telegramm):
    Statusübergang Command Specifier cs Erläuterung
    (1) - Der Initialisierungs-Status wird beim Einschalten selbsttätig erreicht
    (2) - Nach der Initialisierung wird der Status Pre-Operational automatisch erreicht - dabei wird die Boot-Up-Nachricht abgeschickt.
    (3), (6) cs = 1 = 0x01 Start_Remote_Node.
    Startet Modul, gibt Ausgänge frei, Startet Übertragung von PDOs.
    (4), (7) cs = 128 = 0x80 Enter_Pre-Operational. Stoppt PDO-Übertragung, SDO weiter aktiv.
    (5), ( cs = 2 = 0x02 Stop_Remote_Node.
    Ausgänge gehen in den Fehlerzustand, SDO und PDO abgeschaltet.
    (9), (10), (11) cs = 129 = 0x81 Reset_Node. Führt Reset durch. Alle Objekte werden auf Power-On Defaults zurückgesetzt.
    (12), (13), (14) cs = 130 = 0x82 Reset_Communication. Führt Reset der Kommunikationsfunktionen durch. Objekte 0x1000 - 0x1FFF werden auf Power-On Defaults zurückgesetzt
    2 Oder aus der SPS Heraus per ADS:
    (* Set manual in OP if Data > 0 if Data = 0 then PreOp *)
    Data:=1; (* 1=OP; 0=PREOP *)
    ADSWRITE(
    NETID:='172.16.6.36.2.1' , (* Net Id from the EL6751-0010 *)
    PORT:=100 ,
    IDXGRP:=16#1F880 ,
    IDXOFFS:=0 ,
    LEN:=1 ,
    SRCADDR:=ADR(Data) , (* Set in OP if Data > 0 if Data = 0 then PreOp *)
    WRITE:= ,
    TMOUT:= ,
    BUSY=> ,
    ERR=> ,
    ERRID=> );

    An deiner stelle würde ich aber die EL6751 einsetzen, du kommst schnell an Grenzen mit der EL6751-0010 und deiner Layer 2 Kommunikation.
    Aber vielleicht reicht das schon...

  6. Folgender Benutzer sagt Danke zu Feldbus für den nützlichen Beitrag:

    PhuongTran1983 (21.05.2015)

  7. #16
    Registriert seit
    31.07.2014
    Ort
    Niedersachsen
    Beiträge
    61
    Danke
    7
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Hallo Feldbus,

    danke Dir für deine stetige Infos. Ich habe bereits erfolgreich geschafft, Daten mit dem CAN_Analyser über erste Variante auszutauschen.

    Ich versuche jetzt anhand deiner Tipps die 2. Möglichkeit zu schaffen.


    Eine Sache habe ich Dich nicht verstanden, was Du an Grenze mit der EL6751-0010 gedacht hast?

    ''An deiner stelle würde ich aber die EL6751 einsetzen, du kommst schnell an Grenzen mit der EL6751-0010 und deiner Layer 2 Kommunikation. ''


    Viele Grüße,

    Phuong

  8. #17
    Registriert seit
    01.04.2009
    Beiträge
    143
    Danke
    0
    Erhielt 30 Danke für 29 Beiträge

    Standard

    Wie gesagt ich weiß ja nicht was du vor hast, vielleicht reicht dir das ja auch aus was die Slave Klemme kann. Nur noch mal der Hinweis die Slave Klemme ist ein CANopen Slave und nicht für die Art der Kommunikation die du jetzt machst, geeignet - aber wenn es dir so reicht dann soll es gut sein. Mal sehen mit welchen Forderungen du noch kommst .... irgendwann wird es dann einen Punkt geben wo ich dir mit der HW nicht mehr helfen kann

    Gruß

  9. #18
    Registriert seit
    01.02.2016
    Beiträge
    2
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Zusammen,
    ich projektiere gerade ein Projekt mit einer Beckhoff CX5020 und einer EL6751-0010 CanOpen Slave im TwinCat2.
    Die Funktion später sieht so aus: 1 Master kommuniziert mit 2 Slave Teilnehmer. Die Slave Teilnehmer haben die Knoten ID 12 und 13.
    Aktuell habe ich eine EL6751-0010 Slave Karte vorgesehen. Im System Manager kann ich aber dieser Karte nur eine Knoten ID (z.B. 12) vergeben. Nun meine Frage gibt es eine Möglichkeit das der Master (z.B. über MNT) dem Slave Teilnehmer eine Knoten ID zuweist und ich dann über die CPU auswerten kann für welchen Knoten die Informationen in den PDOs sind bestimmt sind?

  10. #19
    Registriert seit
    01.04.2009
    Beiträge
    143
    Danke
    0
    Erhielt 30 Danke für 29 Beiträge

    Standard

    Wenn du die B510 Schnittstelle des CX5020 verwenden würdest könntest du gleich zwei oder mehr Slaves anlegen, dann brauchst du kein MNT mehr. Die Node ID muss bei TC start schon bekannt sein daher geht das mit MNT nicht da die Steuerung ja bereits läuft. Du kannst aber auch die EL6751 nehmen und hier das CAN Interface aktivieren, Vorteil du kannst damit alles machen, Nachteil du empfängst alle Daten und musst auch den kompletten CANopen Teil "nachprogrammieren". Ich denke der Aufwand steht in keinem Verhältnis zu deinem nutzen. Aber vielleicht wisst du ja einfach nur CAN machen dann hast du es ja selber im Griff was du machen willst und kannst...

  11. #20
    Registriert seit
    01.02.2016
    Beiträge
    2
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Feldbus,
    danke für deine Antwort. Wenn ich dich richtig verstehe gibt es eine CX5020 mit der Schnittstellenoption B510. Diese CanOpen Slave Schnittstelle ist in der Lage mehrere Slaves mit unterschiedlicher Knoten ID zu verwalten.
    MNT benötige ich auf jeden Fall da mein Can Master über MNT von pre-operational in operational wechseln muss. Die Schnittstelle B510 kann dann aber auch MNT wenn es mehrere Slaves gibt, Richtig?
    Wenn ich mein Vorhaben mit der CanSlave Karte EL6751-0010 umsetzen möchte führt kein Weg an einer zweiten Karte vorbei.

Ähnliche Themen

  1. CAN mit CANOpen EL6751
    Von dschoni im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 17.04.2013, 16:33
  2. Can Nachrichten senden / empfangen
    Von fdisk im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 10.08.2011, 12:14
  3. Can Nachrichten senden / empfangen
    Von fdisk im Forum CODESYS und IEC61131
    Antworten: 0
    Letzter Beitrag: 09.08.2011, 16:30
  4. Antworten: 0
    Letzter Beitrag: 17.08.2010, 10:46
  5. Beckhoff EL6751 Master mit CanOpen Encoder SOD bzw. PDO Einstellungen
    Von temporunner13 im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 17.02.2010, 07:13

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •