Modicon M340 mit Beckhoff BK9050

Buddy_91

Level-2
Beiträge
31
Reaktionspunkte
5
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute!

Ich brauche wiedermal Hilfe.

Ich versuche seit Stunden einen BK9050 mit diversen I/O Karten mit einer Modicon M340 auszulesen und zu schreiben.

IP Adresse habe ich dem BK9050 zugewiesen, in der Modicon wird eine NOE 0100 Netzwerkkarte verwendet.
Eine bestehende Kommunikation zu 4 SEW Umrichtern ist kein Problem die läuft (leider weis keiner mehr wie das gemacht wurde).

In der Modicon habe ich den Teilnehmer mittels IP Adresse "registriert" und ein sowie ausgangs Merkwörter zugewiesen.
Dennoch wenn ich einen Eingang beschalte bekomme ich nichts auf die Modicon. auch nicht wenn ich einen Ausgang schalte.

Ich hänge noch ein Bild der Konfiguration der Modicon an.

Als Software arbeite ich mit der KS2000 für Beckhoff und dem Unity Pro XL für die Modicon.


Wenn jemand eine Idee hat bitte her damit auch wen sie weit hergeholt ist Danke!


mfg Andi
 

Anhänge

  • bild.JPG
    bild.JPG
    121,9 KB · Aufrufe: 34
Hi,
hast du denn die Adressen in der BK9050 richtig zugeordnet?
Du liest ja mit der M340 aus der BK9050 aus dem MW4. Ist das so richtig? Die Eingänge direkt kannst du ja nicht auslesen.
Was hast du denn in der BK9050 programmiert?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
hast du denn die Adressen in der BK9050 richtig zugeordnet?
Du liest ja mit der M340 aus der BK9050 aus dem MW4. Ist das so richtig? Die Eingänge direkt kannst du ja nicht auslesen.
Was hast du denn in der BK9050 programmiert?
Hej

Hmm ich habe nach so einer Einstellung gesucht aber ich kenne mich in der KS2000 Software mit den Möglichkeiten zu wenig aus.

Kannst du mir sagen wo das zum einsehen ist? [emoji848]

Mfg

Gesendet von meinem ONEPLUS A3003 mit Tapatalk
 
Also bei der Software kenne ich mich leider auch nicht aus.
Weiß halt nur, dass es so nicht klappen kann :) Aber da bei der KS2000 Software muss mal ein anderer bei schauen, der sich auskennt.
 
Die Doku vom BK9050 hast du schon gelsen?
https://download.beckhoff.com/download/document/io/bus-terminals/bk9000de.pdf
Kapitel 6.6.5.4: Lesen der physikalischen Eingänge mit Function 3, Adresse 0x0 -0xFF
Kapitel 6.6.5.10: Schreiben der pyhsiaklsichen Ausgänge mit Function 16, Adresse 0x800 - 0x8FF

=> Da ich nicht weiss was/wie die Modicon nutzt und du auch nichts zum Fehlerbild (Fehlermeldung o.ä.) geschreiben hast.
1: Mach testweise zwei Einträge für den BK9050. Einmal lesen, einmal schreibend.
2: Check mal ob die Modicon mit 0 oder mit 1 bei den Adressen anfängt zu arbeiten. Bei Beckhoff ist es die 0.
3: Beachte dass die Modbus-Adressen der HW des BK9050 nicht zwingend der Reihenfolge von links nach rechts läuft (Stichwort complex, simple).
4: Nutze Wireshark um zu schauen welche Funktion die Modicon Steuerung nun schickt.

Guga
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Ihr beiden Danke für die Antworten und sorry für meine Abwesenheit hatte privat ziemlichen Stress.

Aber jetzt wieder bei der Sache :).

Oke Die Beschreibung habe ich gelesen allerdings wusste ich nicht nach was ich suchen sollte bzw. zu wenig wissen um es erlesen zu haben aber jetzt werde ich mir die beiden Kapitel nochmal genau ansehen.

Fehlermeldungen bekomme ich leider keine. Ich kann nur nicht auslesen oder schreiben (schreiben wäre ja relative einfach wenn ich dann mal auf den Richtigen Adressbereich schreibe *gg*) dann sollte eine LED angehen bei den Ausgängen.

zu 3: An das dachte ich noch gar nicht.

zu 4: Programm kenne ich hmm mal sehen ob ich damit was raus finde.

mfg Andi
 
So auch nach wieder mehrstündigem Probieren. Lesen der Hilfen zu Unity Pro/Modicon/der Netzwerkkarte, KS2000 Software und des BK9050.
Hat es nicht geklappt das einzige was ich weiß ist das die Steuerung eine Verbindung per IP aufbauen kann (Ping von der SPS zum BK passt).

Allerdings konnte ich nicht herausfinden welche Startadresse im BK genommen wird, die ich dann auslesen sollte.
Ich konnte auch nicht herausfinden wo sie startet habe etwas gelesen von 128 allerdings auch das hat nicht funktioniert.

Die Modicon verwendet anscheinend Modbus TCP als Verbindung auf Basis Ethernet 2.
Ob die Adressen verkehrt herum sind wie bei den S7-300 habe ich auch nicht herausgefunden allerdings kann man in der KS2000 Software dies drehen. (Motorola oder Intel)

Mit Wireshark habe ich mal rein gesehen. Nur wenn ich den BK abstecke dann ruft die Steuerung die ganze Zeit nach ihm er soll sich melden und wen er angesteckt ist dann habe ich nichts raus lesen können.

Hat wer von euch noch eine Idee dazu?
Auch gerne Telefonisch oder über Teamviewer bin flexible.

Danke!

Mfg Andi
 
Nur mal kurz, weil ich gerade nur ein Tablet zur Verfügung habe.

der E/A Scanner der M340 nutzt die Modbus Funktionscodes 3, 16 und 23. 3 wenn nur gelesen werden soll, 16 wenn nur geschrieben werden soll, 23 bei beidem gleichzeitig.
Laut Beckhoff Beschreibung liest bzw. schreibt man damit analoge Ein/Ausgänge. Welche Module hast Du in der Beckhoff Klemme?

wir können bei Interesse gerne mal zusammen drauf gucken bzw. telefonieren oder schreiben wenn ich wieder am PC sitze.

Jörg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Jörg schönen Abend/Nacht!

Das ist gut zu wissen.

Oke ich habe nach dem Koppler 21x8er Digitale Input dann 2x8er Analog Output und dann 11x8er Digital Output.
Würde daher heißen 11 MW Eingang und 22 MW Ausgang.

Darauf komme ich gerne zurück :)

mfg Andi
 
Hallo Andy
2x8er Analog Output und dann 11x8er Digital Output.
sind bei mir aber 8MW und nicht 22?
So wie ich die Doku von Beckhoff verstehe musst du 2 Aufträge im Scanner anlegen.
1. lesen ab Adresse 0 (evtl. auch 1 wäre zu probieren) zum lesen der Eingänge mit einer Länge von 12MW
2. schreiben Adresse &H800 (oder 801) für die Ausgänge mit einer Länge von 8MW. Dabei wäre 800 & 801 die AO und ab 802 di DO.

Welche Version von Unity benutzt du? Welche AO Klemmen hast du (komplex oder standard) bitte genaue Bezeichnung. Sind die DO normale Klemmen oder mit Diagnose (genaue Bezeichnng)

Eine andere Möglichkeit wäre den Scanner überhaubt nicht zu benutzen und die EA Abfrage zu programmieren. (Halte ich persöhnlich für besser, da man hier auch Statusinformationen des Kopplers lesen kann um darauf zu reagieren.)

Holger
 
Moin,

ja ich würde mich auch langsam rantasten. Erstmal nur Lesen. Also im E/A Scanner der NOE nur Lesen konfigurieren ab der Adresse/Slave Ref 0. Und dann auch die Anzahl mal langsam erhöhen.
Wenn ich die Beckhoff Doku auf die schnelle richtig verstanden habe, wirst Du auf den ersten Adressen sogar die analogen Ausgänge wieder "zurücklesen". Danach kommen dann erst die digitalen Eingänge.
beckhoff_beispiel.PNG

Sind es wirklich 2x8 also 16 analoge Ausgänge?? Dann würde das mit 22 MW Ausgang stimmen. 16 MW für die analogen Ausgänge und 6 MW für die digialen Ausgänge.

Dann würdest Du nach meinem (Beckhoff) Verständnis auch erst ab Slave Ref 16 bzw. 17 die digitalen Eingänge finden.

Wenn das Lesen klappt würde ich eine neue Zeile im E/A Scanner konfigurieren und versuchen dort nur zu schreiben. Ab Adresse/Slave Ref 0x800 bzw 2048.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Oke danke dem werde ich nachgehen.

Zu den anordnen der Karten der Koppler Ordnet Analoge Karten immer vor Digitale Karten da es Analoge Ausgänge sind Ordnet er sie vor die Digitalen Ausgänge aber nicht vor die Digitalen Eingänge.

Ja es sind 8fache Analoge Karten also im ganzen 16 Analoge Ausgänge = 16 MW.


Hmm ich habe mir in der SPS für jedes MW der Eingänge eine Variable angelegt die ich beobachte wenn ich irgendwas lesen würde aus der SPS dann würde irgendein INT nicht mehr 0 sein. Leider sind alle 0 obwohl mehrere Eingänge anliegen.


Zu den Karten nach dem BK9050 sind 21x KL1408 dann 2x KL4408 und zum Schluss 11x2408 natürlich noch die Busendklemme KL9010.

Unity Version ist XL V4.0

Der Scanner ist das dieser E/A Abfrage "Modus" den ich Versuche einzustellen? (Angehängtes Bild erster Beitrag?)
Wie würde sonst das Abfrage Programmieren gehen?

mfg Andi
 
Zuletzt bearbeitet:
Ja,
mit Scanner meine ich die E/A Abfrage. Das passt.

Laut dem Beispiel der Beckhoff Doku, die weiter oben verlinkt war, liegen aber auch die analogen Ausgänge im Eingangsbereich vor den digitalen Eingängen nochmal ab. Mit welchen Daten auch immer ( vlt. Ausgangsdaten oder Statusdaten).

Beckhoff Abbild.PNG
Hier siehst Du, dass auch die KL4xxx Klemme in den Eingangsdaten zu sehen ist, obwohl es eine Ausgangsklemme ist. Warum weiß ich nicht, ich bin kein Beckhoff Spezialist.
Das heisst Du würdest deine digitalen Eingänge erst nach den 16 MW Analogdaten finden. Vorausgesetzt Du liest überhaupt mehr wie 16 MW!!!
Lies doch mal mehr als 16 MW und schaue dir in einer Animationstabelle die Daten nach den ersten 16 MW an.
 
Oke du hast natürlich absolut recht da hab ich drüber gelesen hatte das anders im Kopf vom Profibus her.

Ich habe das jetzt mal so getestet allerdings ohne Erfolg ich hänge mal ein paar Bilder an wie es jetzt eingestellt ist und die werte der INT.
 

Anhänge

  • bild1.JPG
    bild1.JPG
    104,7 KB · Aufrufe: 9
  • bild2.JPG
    bild2.JPG
    54,4 KB · Aufrufe: 6
  • bild3.JPG
    bild3.JPG
    41,9 KB · Aufrufe: 6
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja also ich denke ich verstehe was du meinst ich habe jetzt auch in der KS2000 etwas gefunden ob das die Zuordnung ist die wir suchen?

Hänge wieder ein Bild an.


Noch etwas das ich gerade gefunden habe anscheinend bringt die Karte in der SPS doch einen Fehler und zwar das der Teilnehmer nicht abgetastet worden ist oder nicht vorhanden ist.

Mal wieder ein Bild im Anhang.
 

Anhänge

  • bild4.JPG
    bild4.JPG
    35 KB · Aufrufe: 10
  • bild5.JPG
    bild5.JPG
    23,9 KB · Aufrufe: 7
Zuletzt bearbeitet:
Hallo Andy
Die KL4408 verhält sich wie 2 nebeneinander gesteckte KL4404.
Die Klemme kann bis zu 24 Byte Eingang und 24 Byte Ausgangsvariablen zur Verfügung stellen.
Wie sind die KL4408 konfiguriert? Sind alle gleich konfiguriert?
Nach deinem Bild beginnt die 1. KL1408 bei Byte 64. Das bedeutet, das die KL4408 mit 4 Byte Eingangsdaten je Klemme gemappt wird.
Deine Eingänge findest du also ab MW32 mit einer Länge von 11.

Holger
PS hättest du bereits in #1 deine genaue Konfiguration geschrieben wurde der Koppler schon laufen;)

PSS Wenn du "letzten Wert halten" auswählst bei den Eingängen bekommst du nicht mit wenn jemand das Kabel geklaut hat.:D

analogen Ausgänge im Eingangsbereich vor den digitalen Eingängen nochmal ab. Mit welchen Daten auch immer ( vlt. Ausgangsdaten oder Statusdaten).
weder noch. Es wird je Kanal ein Statusbyte und 2 Datenbyte gemappt. Dies wird benötigt, wenn man die Klemme aus der SPS konfigurieren möchte.
 
Zuletzt bearbeitet:
Hi,
Nochmal spontan 2 Sachen , die mir auffallen.

Die Einheit-ID (254) stimmt bestimmt nicht. Versuche 255 oder die 1. (siehe Bild)
Nimm zuvor mal die Werte beim Schreiben komplett raus. Einfach alle Einträge löschen. (Nur am Rande: Der Wert für WR Slave-Index stimmt auch nicht. Laut Beckoff ist es 0x800 (hex) also 2048 dezimal. Du müsstest hier also 2048 eintragen. Aber wir gesagt nimm erstmal alles raus und lasse nur lesen, damit erstmal eine Richtung funktioniert)

EAScanner.JPG

Nach deinem Bild beginnt die 1. KL1408 bei Byte 64. Das bedeutet, das die KL4408 mit 4 Byte Eingangsdaten je Klemme gemappt wird.
Deine Eingänge findest du also ab MW32 mit einer Länge von 11.

Dann müsstest Du als noch mehr lesen als die 22 MW im Moment, um die digitalen Eingänge auch zu lesen (mindestens 33 MW, wenn erst bei 32 die digitalen beginnen)

Grüße
Jörg
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute :)

@Holger
Ja genau so zeigt es mir die KS2000 auch an nur konnte ich nichts damit anfangen.
Sie sind alle gleich Konfiguriert und noch Standard so wie sie ausgeliefert werden.

Du hast recht eine genauere Beschreibung zu anfangs hätte die Lösung schneller gebracht allerdings hatte ich zu diesem Zeitpunkt viel zu wenig Ahnung was und ob das wichtig ist und einfach alles rein zustellen jede Seite das wäre zu viel für den Anfang gewesen. Dennoch beim nächsten mal werde ich schon besser bescheid wissen was benötigt wird und es genauer angeben. :)

Und danke für den Tipp ich habe bereits diese Einstellung geändert damit ich es mitbekomme wen die Maus das Kabel durch hat ;).


@Jörg
Die Einheiten ID war dem Koppler denke ich egal ich habe das auslesen mit der ID 254 hin bekommen allerdings zwecks der "Schönheit" zu den anderen auf 255 umgeschrieben.

Ich hätte es Versucht das für schreiben raus zu nehmen allerdings verlangt diese Tabelle eine Eingabe.
Darauf hin habe ich die 2048 eingetragen und die 75 für das wie weit.


Und ich muss euch Positive berichten das auslesen aus dem Koppler klappt!!! :) Freue mich gerade sehr dank eurer Hilfe haben wir das geschafft.

Auch die Karte auf der Modicon meldet das "Ausgelesen" wurde :)


Nur das schreiben will noch nicht so ganz habe zwar auf das MW die Bits gesetzt aber kein Ausgang wird gesetzt. (Habe vor und nach den MW für die Analogen getestet).


mfg Andi
 
Oke Jörg und Holger großes Danke an euch das ganze läuft jetzt Problemlos. Ich habe das mit dem schreiben auch geschafft war ein Fehler meinerseits, es ist wie das Lesen schon gegangen ich war nur bei den falschen MW's :rolleyes:.

Jetzt läuft es so wie es soll ich habe bereits das auszulesende und zu schreibende auf das nötige begrenzt und auf 20ms runter gestellt. Hänge noch ein Bild an wie es jetzt eingestellt ist und bleiben wird.


Ich habe dank euch viel gelernt über das Thema und werde mir in Zukunft bei solchen Sachen leichter tun. :D

Danke!

mfg Andi
 

Anhänge

  • fertig1.JPG
    fertig1.JPG
    92,8 KB · Aufrufe: 4
Hallo Andy
Deine Analogen Ausgänge solltest du bei Adresse 800Hex mit einer Länge von 16MW finden.
Jetzt müsstest du mit der KS2000 Software mal die digitalen Ausgänge aufmachen. Es könnte sein, dass diese ab Adresse 0 gemappt sind zum Beschreiben als Coil. Dazu ist aber Modbusfunktion 5 notwendig, die der Scanner nicht beherscht.
Schaue mal bitte nach und mach mal ein Bild Ich überlege nochmal weiter.
Holger
 
Zurück
Oben