Anfänger sucht Hilfe bei CANopen Mastermodul CX1500-M510

wolfi999

Level-1
Beiträge
55
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute,

Vorab schon Danke für eure Hilfe.

Vorab - Informationen:
Ich habe schon einige Programme geschrieben (Schrittmotoransteuerungen, etc.) Mit dem System Manager und PLC Control kenne ich mich ein bischen aus.

Verwendete Komponenten:

  • CX1000
  • CX1500 - M510 CANopen Mastermodul
  • Gross Funksteuerung (besitzt 4 Taster und 2 Steuerungshebel)
  • einige Eingangs und Ausgangsklemmen
  • zwei Schrittmotorklemmen
Istsituation:
Alle Klemmen, CX und CANopen Mastermodul habe ich im System Manager über Boxen scannen gefunden. Bei einem weiteren Klick auf das CANopen Mastermodul (Boxen suchen) findet er eine General Node Box. Soweit wie in der Istsituation beschrieben stehe ich. (Frage 1: stimmt das was ich bis jetzt gemacht habe?)

Ziel:
Ich möchte nun über die Gross - Funksteuerung (besser gesagt über die Taster und Steuerungshebel) diverse Endkomponenten über die Ausgangsklemme ansteueren, d.h. zum Beispiel wenn ich einen Taster bei der Funksteuerung drücke, dass ein Licht angeht (hängt an einer Ausgangsklemme), etc. Wie kann ich jetzt die Eingangssignale mit meinen Variablen in der PLC Control verbinden?
Weiters besitze ich ein eds - File meiner Funksteuerung. Kann ich diese irgendwie einbinden?

Ich arbeite zum ersten mal mit dem CANopen Mastermodul. Mir fehlt das notwendige Hintergrundwissen wie ich dies ansteuern kann. Im internet bzw. auf der homepage finde ich nur 3 Seiten über die konfiguration im System Manager, alles andere sind Konfigurationeinstellungen mit dem ich nichts anfangen kann.

Ich würde mir wünschen, dass mir einer erklärt wie von A bis Z das CANopen Mastermodul konfigurieren kann, in ein PLC Programm einbinden kann, etc. Vielleicht hat einer ja Schulungsunterlagen, ein Tutorial etc. für mich, damit ich mich einlesen kann. Wäre für jede hilfe sehr dankbar.

Danke.

mfg wolfi
 
Hmm normalerweise müsste die Fernsteuerng ihr eds (elektronisches Datenblatt) an den CANopen Master übertragen wenn du sie scannst. Damit weis dann der Master wie die PDOs konfiguriert sind.

Wenn du nach Boxen scannst, zeigt dir der Systemmanager unten in der Statusleiste an wieviele Nodes er gefunden hat?
Musst du evtl. die Funke noch konfigurieren? (Node ID zuweisen etc ?!?)
Ist deine Verdrahtung korrekt? (Thema Abschlusswiderstände ... )
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Also wenn ich nach Boxen scanne, bekomme ich ein General Node, dieser hat 2 TxPDO mit jeweils 8 Eingängen und 1 RxPDO mit 8 Ausgängen.

Wie meinst du das mit Node ID zuweisen??
Gibt es eine einfache Möglichkeit um zu testen ob meine Verdrahtung korrekt ist?

Danke.

mfg wolfi
 
Was sagt denn die Doku der Fernbedienung? Da sollte ja die Belegung der PDOs erläutert sein oder ?
Kann gut sein das der General Node (obwohl die bei uns immer "Box" heißen ?!?) dein Gerät von Grossfunk ist. Wenn die Funke 16x1 Byte sendet und 8x1 Byte empfängt dann passt es doch.
(kannst ja mal auf der Fernbedienung rumdrücken, es sollten sich ja dann einige Werte in den TxPDOs ändern)
Musst halt nur rausfinden was dann jedes einzelne Byte bedeutet und sie dann mit den Variablen aus deinem Programm auf der SPS verknüpfen.

NodeID: jeder CANopen Client hat ne eigene ID (1-127 glaub ich), sonst könnten ja nicht mehrere Clients über den Bus kommunizieren. normalerweise kann man die ID selber festlegen (idR über Dip-Schalter am Client.). Per default ist meistens die 1 eingstellt und wenn du keine anderen Clients im selben Bus hast dürfte das kein Problem sein.
 
Zuletzt bearbeitet:
Hallo,

Danke für deine Antworten.

Wie du gesagt hast, bekomme ich über die TxPDO und RxPDO´s im Karteireiter "online" (im free run Betrieb) schon die Signale herein.

Eine Frage noch:
Ich kann ja zusätzlich eine Variable einfügen. Kann ich den Wert dieser Variable auch festlegen?

Grund zu dieser Frage:
Es ist so, dass 2 Taster in dergleichen Variable (Var-in) sind, jedoch in einer unterschiedlichen Bytegröße. Damit ich diese mit meinem SPS - Programm verknüpfen kann, müssen diese doch aufgeteilt werden, oder? Oder gibt es hier einen anderen Trick?

Danke.

mfg
wolfi
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Der Trick ist ganz einfach.
Die Taster sind die einzelnen Bits des Bytes.

z.b. 0000 0000 kein Taster gedrückt
0000 1010 => Taster 2 und 4 gedrückt ect. pp
Angezeigt wird dir aber der Dezimalwert des Bytes (10), der aber nicht wirklich interessiert.

Verknüpf also einfach ne Byte Variable mit dem Eingang und werte die einzelnen Bits in TwinCat mit

Var: Byte;

Var.1= true/false .... aus.

(Var.0, Var.1 , Var.2 ... Var.7)
 
Hallo,

Dann kann ich die Variablen gar nicht im System Manager schon aufsplitten (damit ich pro Funkeingang auch ein Eingang im PLC habe)?

Was kann ich dann mit der Funktion "Var. einfügen" machen?

Danke.

mfg
wolfi
 
Keine Ahnung. Bei CANopen bringts die Funktion nicht viel, weil ja die Variablen im EDS beschrieben sind. Macht vieleicht für andere Bussysteme Sinn, die man manuell konfigurieren muss.

Und 8 Bools mit einem Byte verknüppern geht nicht im Systemmanager (nach meinem Wissensstand).

Du kannst aber in deinem Programm die einzelnen Bits der BYTE Variablen selber an BOOL Variablen übergeben, sozusagen als selbstgebaute Enum Funktion. So mach ich das jedenfalls immer. Die Zuweisung kannst du ja in einer Unteraktion deines Hauptprogramms durchführen, dann werden die Variablen ständig aktualisiert und es sieht recht sauber programmiert aus.
 
Zurück
Oben