SEW-FU über Profibus--Beispiel verwirrend

charlie

Level-1
Beiträge
78
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
So, in mienem Projekt kommt auch ein FU von SEW vor, und zwar der Movidrive Compact MCF41A. Das Handbuch dazu hat auch ein schönes Beispiel, in dem Istwert eingelesen wird und Sollwert geschireben wird. Das reicht mir ja ansich. Allerdings verwirrt mich dieses Beispiel ein wenig.
Code:
NETWORK
L DB3.DBW 0
L DB3.DBW 2
L DB3.DBW 4
 
L W#16#0006
T DB3.DBW 20
L 1500
T DB3.DBW 22 //1500dez auf PA2 schreiben (Drehzahl-Sollwert = 300 1/min)
L W#16#0000
T DB3.DBW 24 //keine Funktion
zuvor wird mit dem SFC14 ein wenig einglesen, danach mit dem SFC15 ausgegeben. Aber warum zum Teufel schreibe ich 1500 auf PA2, wenn es 300 sein sollen?? Und wozu sind die ersten 3 Load-Anweisungen? wo bitteschön werden die hingeladen?
 
Die 3 Ladeanweisungen werden vermutlich nur für die Onlinedarstellung genutzt, alternativ währe da sicherlich die Variablentabelle sinnig.

Wo ist der Quellcode her? Direkt von SEW?
 
Guckst du ins Benutzerhandbuch zum Feldbus-Geräteprofil:
Skalierung Prozeßdaten Drehzahl: 1digit = 0.2 1/min
also 300 x 5 = 1500 logisch, oder?
wenn du die Drehrichtung ändern willst, den Wert einfach negieren!
mfG. Jo
 
Ah, das ist des Rätsels Lösung. Dankeschön. ich habe nun folgenden AWL-Code:
Code:
Netzwerk 1: Daten vom FU holen
      CALL  "DPRD_DAT"
      LADDR  :=W#16#110
      RET_VAL:=MW50
      RECORD :=P#DB50.DBX0.0 BYTE 4
Netzwerk 2: Daten laden
      L     "FU-Daten".E_Statuswort
      L     "FU-Daten".Istwert
      L     W#16#6
      T     "FU-Daten".A_Statuswort
Netzwerk 3: Solldrehzahl kopieren
      L     "kommunikationsbaustein".FU_soll
      T     "FU-Daten".Sollwert
Netzwerk 4: Istdrehzahl kopieren
      L     "FU-Daten".Istwert
      T     "kommunikationsbaustein".FU_ist
Netzwerk 5: Daten in den FU kopieren
      CALL  "DPWR_DAT"
      LADDR  :=W#16#110
      RECORD :=P#DB50.DBX4.0 BYTE 4
      RET_VAL:=MW51
DB50 ist der FU-Daten FB.
Meine Startadresse ist 272, in HEX eben 110
Bis auf dass der Sollwert des FU's noch mit 5 multipliziert werden muss, ist die FUnktion vollständig und wird im OB 1 aufgerufen. Nur leider kann ich es nicht am FU testen. Was sagt ihr, funktioniert das?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also meiner Meinung nach ist diese SEW-Beispiel nicht sehr empfehlenswert.

An Deiner Stelle würde ich einen parametrierbaren FB machen, der die Signale von/zum FU rangiert, und die Bearbeitung von SFC14/15 durchführt.
Bei uns ist so ein FB im Einsatz, welcher universell für alle SEW-FU einsetzbar ist.

Wenn Du willst, kann ich Dir ein brauchbares Beispiel zuschicken.

mfg
Maxl
 
Hallo!

Hab mal kurz eine abgespeckte Version unseres Standard-FB hier rein gestellt. Dieser Baustein deckt folgende Funktionen ab:
- Freigabe links
- Freigabe Rechts
- Schnellstop
- Reset
- Drehzahl in U/min übergeben
- Rampe in ms übergeben
Er ist für alle derzeit im Umlaub befindlichen SEW-Umrichter geeignet (Movitrac31 (eingeschränkt), Movitrac 07, Movidrive A, Movidrve B, Movidrive compact), sofern diese über Profibus mit 3 Prozessdatenwörtern oder per UFP11A angebunden sind.
Ich hab den Baustein noch nicht getestet, sollte es also Probleme damit geben, bitte um Info!

Von meiner Seite her steht der Baustein unter GPL - darf also auch von anderen weiterverwendet werden - unter der Bedingung, dass der Quellcode offen bleibt!


mfg
Maxl
 

Anhänge

  • Fb73.zip
    27,3 KB · Aufrufe: 286
nun, softwaretechnisch hab ich ihn mal eingebaut, wann ich ihne testen kann, weiß ich noch nicht, aber ich denke mal heute oder morgen. werde dan natürlich berichten. Eine frge, da das das erste mal mit einem FU ist, was genau ist bei frequenzfenster einzustellen, bzw was ist das denn speziell? 500U/min +/- 0,1% wäre das, so wie ich das verstehe, oder? nur was kann ich dann bei dem FB einstellen? die %? und warum ist dann 5 voreingestellt? Bitte da noch um eine kleine Erläuterung, wie gesagt, komme frisch aus der schule (eigentlich vom heer) und wir hatten da nicht wirklich was mit FU's zu tun...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was einstellen.............

am FB:
- Solldrehzahl - klar (Begrenzung erfolgt intern zwischen 0 und 5500)
- Drehzahl_Fenster - Fenster, innerhalb dessen die Meldung "Drehzahl erreicht" ausgegeben wird. Voreinstellung 5 bedeutet: Liegt die Istdrehzahl innerhalb von Solldrehzahl +/- 0,5% wird das Signal "Drehzahl erreicht" ausgegeben.
- Rampe - Zeit, inneralb der Umrichter von 0 auf 3000 U/min beschleunigt (Begrenzung erfolgt intern zwischen 0 und 20 sek)


am Umrichter (MFC41A):
- P100 Sollwertquelle: Feldbus
- P101 Steuerquelle: Feldbus
- es sollte zumindest 1 Klemme als "Freigabe/Stop" parametriert werden
- P870: Steuerwort 1
- P871: Drehzahl
- P872: Rampe (muss nicht sein, wenn auf "keine Funktion" parametriert, werden die Parameter 130-133 als Rampen verwendet)
- P873: Statuswort 1
- P874: Drehzahl
- P875: Ausgangsstrom (Einheit 0.1% - wird im Instanz-DB des FB abgelegt)

Selbstverständilich muss vorher die Umrichter-Inbetriebnahme durchgeführt werden!
 
herzlichen danke für die ausführliche auflistung. bei der inbetriebnahme hab ich zum glück kollegen, die mir helfen können. nur der programmierer, der mir helfen könnte, ist eben leider noch 3 wochen in china, deshalb muss ich da alleine durch. Mir war nur das drehzahlfenster nicht ganz klar, das das mit dem 'drehzahl-erreicht' zu tun haben könnte, da bin ich ja gar nicht draufgekommen. also vielen dank nochmal, ich werde dann berichten, wie das ganze funktioniert...
 
Habe jetzt schnell mal den FU parametriert, aber leider konnte ich den FB noch nicht testen. Allerdings fiel mir beim gehen auf, dass bei beiden Geräten (SPS+FU) die Busfehler LED leuchteten. Die GSD-Datei ist eingebunden und alles richtig vernetzt, woran kanns liegen? Der Regler ist noch nicht freigegeben, aber das bedeutet doch nur, dass er den Motor noch nicht ansteuern kann...nicht, dass er ProfiBus ignoriert...oder?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Busfehler-LED bei SEW-Antrieben:

leuchtet, wenn:
Bus nicht erkannt bzw. Baudrate nicht erkannt.
--> Verkabelung durchchecken

blinkt, wenn:
Bus erkannt, Baudrate erkannt - Konfigurationsfehler
--> dies kann mehrere Ursache haben: falsche gsd (bei MCF41A ist SEW_6002.gsd einzusetzen), falsche Profibus-Adresse, Adresse doppelt vergeben


ansonsten: SEW-Handbuch zu Rate ziehen
 
Danke für diesen Baustein!

Ich hätte noch folgende Frage:
1)
Funktioniert der auch mit dem DFP21B?

2)
Muss bei der Peripherie-Adresse die in der Grafik angegeben werden?
SEW.png



Danke

Vxbxler
 
Zuletzt bearbeitet:
Richtig, das ist die Adresse. Beachte, dass Du diese für SFC14/SFC15 als HEX-Wert angeben musst. (606 = W#16#25E)

Du darfst nur die Anzahl der tatsächlich angeschlossenen Umrichter in der HW-Config angeben. Die 606 spricht dann den Umrichter mit der SBus-Adresse 1 an.
Wo ich schon oft drüber gestolpert bin: Selbst wenn die SBus-Adresse im offline Parameter korrekt eingetargen ist, muss diese manuell in der online Ansicht eingetragen werden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hätte noch folgende Frage:
Funktioniert der auch mit dem DFP21B?
Ein Baustein der mit dem MCF41A funktioniert, ist mit allen gängigen SEW-FU lauffähig, also Movitrac B, DFP21B .... egal ob per SBus, Profibus oder Profinet. Wichtig sind die 3PD konsistent.
 
Zurück
Oben