-> Hier kostenlos registrieren
ich arbeite mit cip anlage, der ist ein Fu von Danfoss, der verbunden mit 4 motor, jeden motor arbeitet einzelle also nicht zusammen.das bedeutet ich habe 4 set ups, ich weiss nicht wie kann ich setup abwechseln kann da die haben verschiedene daten.
ich habe gelesen das geht om bit 13 und 14 aber wie kann man schreiben das programm.ich habe ppo3 module consistent mit 2 wort eingaenge und 2 worter ausgaenge
PIW 324-326 und PAW 324-326
bitte bilfen Sie mir mit das program, ich versucher schon lange zeit aber passt nicht, ich bin sicher dass der ist fehler und mit setup wechseln von motor1 to 2,3,4 kann ich auch nicht.
#######################Nw1:
L #Adr //load input word number from hardware configuration, from profibus card.In PPO TYPE 3 telegram(used by me) I have 2 output word(for control the frecv.inverter) and 2 word(for status of frecv.inverter).First word is fo
SLD 3 // shift to left 3 bit to prepare pointer so I will have adress in byte.bit format( request by pointer),in my case 324.0.SLD3 is equivalent with multiply with 8
T #STW_Adresse //STW_Adresse = 324.0(pointer for control/status bits)
L W#16#10 //16 = 0000 1000,load 2 bytes
+I //add bytes 324.0 +16 bits = 326.0
T #HSW_Adresse //HSW_Adresse=326.0 (pointer for control/status word)
###################NW2:
L P##Steuerwort_Danfoss //point to Steuerwort_Danfoss adress
LAR1 //load the adress in AR1
L W#16#43C //load 043C in acumulator, Stop= 043C , Start =047C
T LW [ AR1 , P#0.0 ] // put that word (form hex) 0000 0100 0011 0110=043C (HEX) in my Steuerwort_Danfoss for preset the basic control bits
A #Netz // Input trigger for the rest of control bits for start position,to go from stop(basic/default) position to start position
= #Steuerwort_Danfoss.Rampe_Gleichspannung
A #RGF
= #Steuerwort_Danfoss.Start
A #Reversierung
= #Steuerwort_Danfoss.Reversierung
A #Reset
= #Steuerwort_Danfoss.Quittieren
//handover control word at drive
//and in drive DB placing
L LW [ AR1 , P#0.0 ] //Load in accu1 local word data from AR1 witch is data from Steuerwort_Danfoss
T PQW [ #STW_Adresse] // and transfere to PQW 324
//gauge desired value
L #sollgeschwindigkeit // in 0 - 100% as Int .Load setpoint speed value from input function parameter
T #Sollwert_32 // in Dint.Extend to dint
DTR // DInt to Real
T #Sollwert_32 // desired value as Real
L 1.0e+2
L #Sollwert_32
/R
T #Sollwert_32
L 1.6384e+4 // Geschwindigkeitsvorgabe an FU 0-4000hex =(0-16384 dec).Convert Sollwert_32 in hex format needed for control the setpoin speed at frecvency converter(only in hex in possible for danfoss vlt 5000 drive)
L #Sollwert_32
/R
T #Sollwert_32
RND
T #Sollwert_32
//transfer desired value at converter
L DINT#16383 //load 16383=maximum range speed
L #Sollwert_32
>=D //compare maximum speed 16383 with setpoint speed Sollwert_32.If 16383>= Sollwert_32 ,load 16383 in accu and transfere in PQW 326 (#HSW_Adresse),preset converter with maximum speed if speed exceded over 100%
JC MAX // If Sollwert_32< 16383 load Sollwert_32 value in accu,transfere accu in #Sollwert ,transfere #Sollwert value in POQ 326([#HSW_Adresse)
//transfer desired value at converter
L DINT#16383
MAX: T #Sollwert
T PQW [ #HSW_Adresse]
##########NW 3
L #Adr // load PIW 324(read status bits)
T #Statuswort //transfer PIW 324 to #Statuswort
A %L16.0 // if locat bit 16.0 rlo is 1 preset #Drehzahl_Sollwert
= #Drehzahl_Sollwert // the same for the rest
A %L16.1
= #Bus_steuerung
A %L16.3
= #Betrieb
A %L17.0
= #steuerung_bereit
A %L17.1
= #FU_bereit
A %L17.3
= #FU_abschaltung
//read actual speed value
L PIW [ #HSW_Adresse] // load PIW 326(read actual speed value)
DTR // DInt to Real
L 1.6384e+4 // max. speed as real
/R
L 1.0e+2
*R
TRUNC
T #Ist_Geschwindigkeit // speed in 0 - 100% as Int
ich habe gelesen das geht om bit 13 und 14 aber wie kann man schreiben das programm.ich habe ppo3 module consistent mit 2 wort eingaenge und 2 worter ausgaenge
PIW 324-326 und PAW 324-326
bitte bilfen Sie mir mit das program, ich versucher schon lange zeit aber passt nicht, ich bin sicher dass der ist fehler und mit setup wechseln von motor1 to 2,3,4 kann ich auch nicht.
#######################Nw1:
L #Adr //load input word number from hardware configuration, from profibus card.In PPO TYPE 3 telegram(used by me) I have 2 output word(for control the frecv.inverter) and 2 word(for status of frecv.inverter).First word is fo
SLD 3 // shift to left 3 bit to prepare pointer so I will have adress in byte.bit format( request by pointer),in my case 324.0.SLD3 is equivalent with multiply with 8
T #STW_Adresse //STW_Adresse = 324.0(pointer for control/status bits)
L W#16#10 //16 = 0000 1000,load 2 bytes
+I //add bytes 324.0 +16 bits = 326.0
T #HSW_Adresse //HSW_Adresse=326.0 (pointer for control/status word)
###################NW2:
L P##Steuerwort_Danfoss //point to Steuerwort_Danfoss adress
LAR1 //load the adress in AR1
L W#16#43C //load 043C in acumulator, Stop= 043C , Start =047C
T LW [ AR1 , P#0.0 ] // put that word (form hex) 0000 0100 0011 0110=043C (HEX) in my Steuerwort_Danfoss for preset the basic control bits
A #Netz // Input trigger for the rest of control bits for start position,to go from stop(basic/default) position to start position
= #Steuerwort_Danfoss.Rampe_Gleichspannung
A #RGF
= #Steuerwort_Danfoss.Start
A #Reversierung
= #Steuerwort_Danfoss.Reversierung
A #Reset
= #Steuerwort_Danfoss.Quittieren
//handover control word at drive
//and in drive DB placing
L LW [ AR1 , P#0.0 ] //Load in accu1 local word data from AR1 witch is data from Steuerwort_Danfoss
T PQW [ #STW_Adresse] // and transfere to PQW 324
//gauge desired value
L #sollgeschwindigkeit // in 0 - 100% as Int .Load setpoint speed value from input function parameter
T #Sollwert_32 // in Dint.Extend to dint
DTR // DInt to Real
T #Sollwert_32 // desired value as Real
L 1.0e+2
L #Sollwert_32
/R
T #Sollwert_32
L 1.6384e+4 // Geschwindigkeitsvorgabe an FU 0-4000hex =(0-16384 dec).Convert Sollwert_32 in hex format needed for control the setpoin speed at frecvency converter(only in hex in possible for danfoss vlt 5000 drive)
L #Sollwert_32
/R
T #Sollwert_32
RND
T #Sollwert_32
//transfer desired value at converter
L DINT#16383 //load 16383=maximum range speed
L #Sollwert_32
>=D //compare maximum speed 16383 with setpoint speed Sollwert_32.If 16383>= Sollwert_32 ,load 16383 in accu and transfere in PQW 326 (#HSW_Adresse),preset converter with maximum speed if speed exceded over 100%
JC MAX // If Sollwert_32< 16383 load Sollwert_32 value in accu,transfere accu in #Sollwert ,transfere #Sollwert value in POQ 326([#HSW_Adresse)
//transfer desired value at converter
L DINT#16383
MAX: T #Sollwert
T PQW [ #HSW_Adresse]
##########NW 3
L #Adr // load PIW 324(read status bits)
T #Statuswort //transfer PIW 324 to #Statuswort
A %L16.0 // if locat bit 16.0 rlo is 1 preset #Drehzahl_Sollwert
= #Drehzahl_Sollwert // the same for the rest
A %L16.1
= #Bus_steuerung
A %L16.3
= #Betrieb
A %L17.0
= #steuerung_bereit
A %L17.1
= #FU_bereit
A %L17.3
= #FU_abschaltung
//read actual speed value
L PIW [ #HSW_Adresse] // load PIW 326(read actual speed value)
DTR // DInt to Real
L 1.6384e+4 // max. speed as real
/R
L 1.0e+2
*R
TRUNC
T #Ist_Geschwindigkeit // speed in 0 - 100% as Int
Zuletzt bearbeitet: