drehzahl vorgabe

prinz1978

Level-2
Beiträge
149
Reaktionspunkte
2
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo

ich habe vor kurzem die prüfung zum geprüften sps programmierer abgeschlossen , da in dieser lehrgang zum sps programmierer kein wincc flex dabei war stehe ich vor einem problem und brauche bitte ein wenig hilfe. ich mus bei uns in der firma folgende aufgabe lösen ( es ist ein bestehendes projet ) ein bediener gibt am op eine drehzahl vor max 1199 umdrehungen in der minute diese wird über paw der simatic an den fu übertragen 4-20 ma wenn der bediener über diesen max wert eingibt wird der wert mit nuller überschrieben er kann weniger aber nicht mehr eingeben, dann bekomme ich von fu 4-20 ma zurrück damit muss ich am op die aktuelle drehzahl ausgeben.


danke im vorraus
 
Was für ein OP hast Du?

das ist doch eigentlich wurscht, wichtig ist eigentlich nur zu wissen, wie man die bestehende kommunikation um die beiden werte erweitern kann, also mal in nem Kommunikations-DB nach reserven suchen. da dann den soll-wert zur PLC und den ist-wert zum Panel einfügen ...

skalierung und ausgabe auf PAW stellt dann eigentlich kein problem mehr da, einlesen und skalieren auch nicht ... als format für die werte würd ich INT nehmen, das rechnet sich ganz gut...
 
hallo
was haltet ih von dem code ?? für verbesserungs vorschläge bin ich sehr dankbar .



[L DB200.DBW 0 // eingabe von op
L 1199
>I
= M 200.0

L DB200.DBW 0
L 1199
<=I
= M 200.1

U M 200.0
SPBN adr1
L 300
T DB200.DBW 0
adr1: NOP 0

U M 200.1
SPBN adr2
L DB200.DBW 0
T DB200.DBW 0
adr2: NOP 0

L DB200.DBW 0
ITD
DTR
L 1.199000e+003
/R
L 2.764800e+004
*R
RND
T paw 290 // für den Fu

L 1.199000e+003
L 2.764800e+004
/R
L PEW 288 // von fu
ITD
DTR
*R
T DB200.DBW 4 // zu anzeige op]


mfg
 
Zuletzt bearbeitet:
zum dritten mal heut:

nutze doch bitte die [code ] und [/code ] tags (jeweils ohne space)

ansonsten ist der code in ordnung, wenn er funktioniert und noch symbole und kommentare eingepflegt werden
 
Zuviel Werbung?
-> Hier kostenlos registrieren
zum dritten mal heut:

nutze doch bitte die [code ] und [/code ] tags (jeweils ohne space)
*ACK*

ansonsten ist der code in ordnung, wenn er funktioniert und noch symbole und kommentare eingepflegt werden
Herr vierlagig, schon müde vom langem Arbeitstag. Ich sehe da noch eine Menge Verbesserungspotential, ganz abgesehen von den Kommentaren und Symbolen
 
Was ist das

Code:
      U     M    200.1
      SPBN  adr2
[COLOR=Red]      L     DB200.DBW    0
      T     DB200.DBW    0[/COLOR]
adr2: NOP   0
oder das. Da kommt man auch ohne Merker aus.
Code:
     L DB200.DBW 0 // eingabe von op
     L 1199 
     >I 
     = M 200.0 
 
      L DB200.DBW 0
      L 1199
      <=I 
      = M 200.1
 
      U M 200.0
      SPBN adr1
      L 300
      T DB200.DBW 0
adr1: NOP 0
 
      U M 200.1
      SPBN adr2
      L DB200.DBW 0
      T DB200.DBW 0
adr2: NOP 0
 
Zuviel Werbung?
-> Hier kostenlos registrieren
naja ich hab mir das so überlegt wenn die eingabe kleiner oder gleich max wert ist dann wird der eingegebene wert einfach übernommen . wie würdest du es machen ??
 
Zuletzt bearbeitet:
danke für deine lösung ich hätte da noch eine frage wenn der bediener mitten drinnen die drehzahl über max eingeben würde dan ist in dem fall ja so das der fu auf 300 runterregelt wie könnte ich am besten die drehzahl beibehalten und nur den wert auf null stellen ??


mfg
 
Zuletzt bearbeitet:
danke für deine lösung ich hätte da noch eine frage wenn der bediener mitten drinnen die drehzahl über max eingeben würde dan ist in dem fall ja so das der fu auf 300 runterregelt wie könnte ich am besten die drehzahl beibehalten und nur den wert auf null stellen ??


mfg

Mit welchem Programm wurde denn das OP170 projektiert? Bei WinCCflex kannst du max- und min-Werte definieren die eingegeben werden dürfen. Dann brauchst du das nicht mehr in der CPU lösen, sondern die Eingabe wird direkt verweigert. Ob es in Protool auch geht weiß ich nicht, dafür bin ich wohl zu jung...... :ROFLMAO:
 
nun ja ich habe zwar die ausbildung vor kurzem abgeschlossen bin ein sps programmierer aber eben theorie ich brauche noch viel praxis glaube ich bis ich mich als programmierer bezeichnen darf bin eben noch ein frischling .



mfg
 
danke für deine lösung ich hätte da noch eine frage wenn der bediener mitten drinnen die drehzahl über max eingeben würde dan ist in dem fall ja so das der fu auf 300 runterregelt wie könnte ich am besten die drehzahl beibehalten und nur den wert auf null stellen ??


mfg

bei einer ungültigen eingabe kannst doch den aktuellen(letzten) wert wieder zurück schreiben.
dann bleibt bei einer falschen eingabe alles beim alten.
 
danke genau das wolte ich wissen somit ist die ganze sache schon etwas leichter bleibt nur die einarbeitung in die software übrig .


mfg
 
Zurück
Oben