SEW Paramaterkanal über 95U / RS485 senden

Tüftlergeist

Level-2
Beiträge
45
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen!

Möchte mich gerne mit dem SEW-Parameterkanal beschäftigen und gewisse Antriebsparameter via SBUS oder RS485 an den Umrichter senden.

Gibt es auf Basis Siemens 95U oder 100U entsprechende CPU's und Zubehör?

Danke und Gruß!
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Für S5-95U und S5-100U gab es den CP521 SI. Mit diesen konnte man seriellen Daten senden.
Ich schreibe "gab" und "konnte", weil alles was S5 belangt ist total veraltet, abgekündigt, ohne support usw. Teile gibt es nur von Weiterverkäufer (= teuer !) oder auf Ebay (= risiko !).
Dies ist ein typischen Fall wo man den veraltete SPS für ein aktuellen SPS austauschen sollte.
 
Hallo!

Ich habe hier von meinen ersten Gehversuchen unter S7 noch eine CPU 312c herumliegen.

Was würde man denn dazu noch benötigen?

Danke und Gruß!
 
Hallo!

Ich habe hier von meinen ersten Gehversuchen unter S7 noch eine CPU 312c herumliegen.

Was würde man denn dazu noch benötigen?

Danke und Gruß!

Baugruppenträger, Netzteil, I/O-Karten, Serielle Karte , diese schwarzen Bus-Stecker, ... (einige used Teile habe ich)

Für den FU:
RS232 - 485 Wandler, Sew-Proggi
 
Ok, Baugruppenträger, Netzteil, Analog I/O-Karte, UWS11A, installierte SEW-Software ist vorhanden.

Die serielle Karte ist dann eine 6ES7 341-1AH01-0AE0 ??
Etwas geschickter wäre es, direkt von der Steuerung heraus per RS485 zuzugreifen. Beispielsweise mit 6ES7340-1CH02-0AE0 oder durch Einsatz einer 313C-2PtP oder eines äquivalenten Vipa-Produkts.
 
Hallo again!

Und besten Dank für den Hinweis!

Inzwischen hab ich einen solchen "Kommunikationsprozessor" CP340 als Gebrauchtteil angeschafft.

Da ich in S7 aber gerade mal einfache Verküpfungen, Zähler und Zeiten "hin"-programmiert bekomme, stehe ich da wie der Ochs vorm Berge.

Gibt es für die Übertragung an den MDX61B dazu spezielle Funktions- oder Datenbausteine? Das ganze muß ja gemäß der Prozessdatenwort-Konfiguration
gesendet werden.

Im Prinzip möchte ich folgendes tun:

Ein über die auch vorhandene SM334 eingezogener Analogwert soll normiert auf z.B. Parameter 301 (Drehzahl), 304 (Drehmomentgrenze) oder
auf die H-Variablen geschrieben werden.


Vielleicht geht's auch einfacher weil anschaulicher:

Im Handbuch "Kommunikation und Feldbus-Geräteprofil" steht, dass das MOVILINK-Protokoll "von den üblichen UART-Bausteinen der Digitaltechnik" unterstützt wird.
Ich bin auf die verwegene Idee gekommen, dass, wenn es gelingen würde, das Protokoll/Telegramm nachzubilden, dies mit ein Pascal-Programm über RS232-Port und UWS11A
an den Umrichter zu senden...
 
Zuletzt bearbeitet:
Hallo zusammen!

Und vielen Dank an Euch für den Download-Link!

In meiner Unwissenheit habe ich einfach mal etwas ausprobiert...

Über MotionStudio folgendes am MDX61B eingestellt (ohne dass ein IPOS-Programm läuft):
P100: RS485/Festsollwert
P101: RS485
P301: 555 1/min
P700: Servo
P750: Drehzahl RS485 (und nicht etwa Master/Slave aus)
P810: 0 (RS485 Adresse)
P811: 100 (Gruppenadresse)
P812: 0 (Timeout-Zeit)

An zweiter RS485 (X13, Klemmen 9, 10, 11) UWS11A aufgelegt, serielles Kabel von letzterem auf COM1 eines
WIN7-PC und DIP-Schalter S13 auf "ein" für 9600 Baud.
Terminalprogramm gestartet, HEX-Haken gesetzt und Schnappschuß gemacht - siehe Foto.

Wofür die ersten und letzten drei Bytes stehen ist mir klar:
02 hex = SD1 für Request-Telegramm
64 hex = ADR 100 dez
83 hex = 131 dez = Typ 1 - also 2PD azyklisch
00 hex = 0 dez ?
06 hex = 6 dez ?
0A hex = low Byte Drehzahlwert
D7 hex = high Byte Drehzahlwert
3E hex = Blockprüfzeichen BCC

Blockprüfung auch mal "zu Fuß" durchgeführt - siehe Foto (schreit nach Automatisierung...)

Byte 6 und 7: 0AD7 hex = 2775 dez; 2775 * 0,2 = 555 1/min

Stecker vom WIN-PC abgezogen, auf COM-Schnittstelle eines DOS-PC mit TurboPascal gesteckt und
drei Telegramme "rausgefischt" - siehe Foto.

Alles klar - was hier nun mit 83 / 12 bzw. 108 dezimalkodiert auf Byte 6+7 und demzufolge auf Byte 8 liegt, ist mir nicht klar
(übrigens für 1000 1/min: Byte 6=155, Byte 7=14).

Umgekehrt habe ich von einem weiteren Pascalprogramm aus die acht Dezimalwerte (ohne das Komma)
nacheinander an COM1 des WIN7-PC gesendet: das Terminalprogramm zeigt das Telegramm ordnungsgemäß
im HEX-Code an - mit der Leerstelle und den korrekten Werten in Byte 6+7.

Ich gehe davon aus, dass man auf diese Weise auch genauso einen Datensatz an den Umrichter senden kann, wenn
man sich an das Timing hält und alles korrekt eingestellt hat:
Z.B. mit Telegrammtyp 1/129 einen Drehzahl- oder Stromwert zyklisch/azyklisch auf 1PD senden.

Geht das überhaupt?
Was müsste dann an den Parametern eingestellt werden?
Welche Adresse hat der Umrichter (P810)?
Muss ein ankommendes Telegramm von IPOS eingelesen werden?

Fragen über Fragen...

Auf alle Fälle vielen Dank für Eure Unterstützung!!
 

Anhänge

  • term_555.jpg
    term_555.jpg
    85,5 KB · Aufrufe: 19
  • BCC-Prüfung.jpg
    BCC-Prüfung.jpg
    60,4 KB · Aufrufe: 17
  • TP_555.jpg
    TP_555.jpg
    258,2 KB · Aufrufe: 16
Zuletzt bearbeitet:
Zu den Parametereinstellungen:
Setze P810 auf irgendwas <> 0
Zudem muss P750 auf 'Master/Slave aus'. Bei der aktuellen Einstellung sendet der Umrichter zyklisch seine Istdrehzahl auf RS485 (zu anderen Umrichtern).

Der Umrichter hat Adresse P810. Sofern du nicht mehr als 3 Wörter Daten sendest, brauchst du kein IPOS, die Funktion der 3 Wörter stellst du P P870-875 (Prozessdatennbeschreibung) ein.
Empfehlenswert ist ein Telegramm mit mindestens 2 Wörtern:
1. Steuerwort/Statuswort
2. Drehzahl
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo!

Wenn ich das richtig verstanden habe, dann ist mit P810 z.B. auf "1" gesetzt die Adresse des Umrichters eben = 1
(auf diese Weise ist natürlich die Verbindung über XT unterbrochen...).

Dann muß das Adreß-Byte = 01 hex bzw. 1 dez sein und nicht 64 hex bzw. 100 dez?

Bleibt P811 trotzdem auf 100?

Was muß im Steuerwort stehen (Freigabe)? Ich habe irgendwo gelesen, dass mit Empfang des ersten Telegramms
die Freigabe wirksam wird.

Danke und Gruß!
 
P811 bleibt auf 100 - über die Gruppenadresse könntest du mehrere Umrichter, die die gleiche Gruppenadresse besitzen, gleichzeitig ansprechen.
01 als Adresse sollte passen, 64hex hat der Gruppenadresse 100 entsprochen

Die Beschreibung der Steuerwörter findest du hier:
http://download.sew-eurodrive.com/download/pdf/11264918.pdf
S. 91 und folgende

Welches Steuerwort du nutzt ist Geschmacksache. Nach dem Umstellen muss jedenfalls P876 (PA-Daten freigeben) manuell wieder auf "Ein" geschaltet werden.

Zum Freigeben des Umrichters müssen Bit 1 und 2 jeweils 1 sein, alle anderen können 0 bleiben.
Also Steuerwort 06h
 
Hallo zusammen!

Jetzt hab ich es verstanden und es funktioniert wirklich!

Der Umrichter wird mit Eintreffen eines gültigen Telegrammes freigegeben und der
Motor läuft mit den an Byte 6 + 7 eingestellten Drehzahlwert.


Also vielen Dank an Dich, maxder2te!!!


Eine "Kleinigkeit" war jedoch noch zu tun: das Timing paßte noch nicht.

Ohne ein delay(delta_t) zwischen den einzelnen Portzugriffen (pro Byte) geht es nicht.
Mit delay(20) hat es schließlich geklappt.
 
Zurück
Oben