+/- 10V SM332 -> wie programmieren ?

Zuviel Werbung?
-> Hier kostenlos registrieren
Werd mal 2 gleiche Potis probieren.....

Mal ne Frage zu den analogen Signalen.
Ich möchte gerne den Wert von dem Poti zum Einstellen der Geschwindigkeit begrenzen.
Geht das ?
Ich habe mir jetzt was mit versch. Vergleichern zurecht gebastelt.
Ist garnicht so einfach
Jetzt bewegt sich, theoretisch, das Gelenk nach links bis zum festgelegten Wert und dann geht nach 1Sek. das Ventil für die andere Richtung an.

In Mittelstellung fahren werd ich jetzt noch basteln. Naja, es versuchen....

Das mit dem in Grad, etc. umwandeln habe ich nicht hinbekommen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wieder was bemerkt, was so nicht gehen kann.
Das Prop-Ventil brauch ne Spannung von -10V bis +10V.
Kann ich also vergessen mit der Karte 334.
Habe mir nun ne 332 kommen lassen, bin mal gespannt. Tipps zum Programmieren ?
Muß mir mal die Hardware-Konfig rein ziehen....

Dazu kommt jetzt noch, das mein Laptop streikt, liegt jetzt in der EDV.

Und Mo. sollte ein Testlauf gemacht werden. :shock:
 
Nachbar schrieb:
Wie kommt es das ich nur 8.54V am Ausgang habe und nicht wie es soll 10V sind ?
Kann es von dem Poti kommen, daß es evtl. Abweichungen hat?

liegt wahrscheinlich daran, dass du den eingangswert nicht korrekt normiert hast. wenn am ai 10 volt anliegen entspricht dass 27648 einheiten. wenn du bei vollausschlag des potis weniger hast, muss du die auflösung strecken, wenn du die eingelesenen werte direkt an ao geben willst und dort bei vollausschlag des potis 10 volt haben willst.

der umrechnungsfaktor bei s7 0-10 volt ist 2764,8 (entspricht also 1 volt)
8,54 v entsprechen also 23611,39 einheiten.
so da du nun möchtest, dass die 8,54 v am eingang 10 v am ausgang entsprechen, teilst du den eingelesenen wert nicht durch 2764,8 sondern nur durch 2361,4 (3-SATZ). abhängig wie genau du die sache haben willst teilst du durch eine kommastelle weniger. d.h. durch 236 damit erreichst du eine auflösung von 0,1 v. wenn's genauer sein soll rechne mit realzahlen.

Code:
//so einfach geht das

//einlesen und normieren
      L     PEW  300                    //poti
      ITD                               //int nach dint
      DTR                               //dint nach real
      L     2.361139e+004               //umrechnungsfaktor
      /R    
      T     MD   100                    //dein normierter wert von 0-10

DAS MIT DEM FC105 VERGISS AM BESTEN. der ist eigentlich nur da um das konvertieren von s5 nach s7 zu ermöglichen.



hups. hab auf die letzt frage der vorigen seite geantwortet. aber egal jetzt hab ichs halt geschrieben.
 
Nachbar schrieb:
Das Prop-Ventil brauch ne Spannung von -10V bis +10V.

macht doch nix.
wenn du so normierst wie ich in der mail vorher geschrieben habe wird die halbe potistellung (4,27v) auf 5 volt normiert was dann 0 volt am ao entspricht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aber dadurch habe ich ja noch keine negative Spannung für's Ventil...... oder

Wie kann ich jetzt mit der Baugruppe+/- 10V "programmieren ?
Gibt es dafür nen Baustein oder sowas ??
Ich weiß nur noch dunkel vom Lehrgang, daß da was mit Vorzeichen-Bit war....
Kann nur nix mehr damit anfangen....
Habe die .. SM 332 AO 2x12BIT / 322-5HB01-0AB0
 
Haaaaaa

Hallo Nachbar,

schreibe doch einfach mit "Variable beobachten und steuern" den dezimalen wert von 27648 direkt auf den analogen ausgang und miß nochmal. du solltest jetzt auf jeden fall deine 10v messen können.

wenn nicht, nochmal die einstellungen in der hardwarekonfig kontrollieren.

kannst du die 10v messen, ist vermutlich die skalierung des potis bzw des analogen ausgangs zu kontrollieren.

Adios
 
Gut, das Problem mit dem 10V ist gelöst, lag am Poti, kam nicht auf den Wert .
Jetzt ist es halt so, daß ich aber -10V ...... +10V benötige.
Habe dafür ne neue Baugruppe bestellt (siehe weiter oben).
Nur, wie programmiere ich das ? Kann ich da den FC106 nutzen ?

Mich würde dann noch interessieren, ob ich die Möglichkeit ne Rampe für die Geschwindigkeit programmieren kann.
Damit das Gestell nicht gleich mit vollem Zahn nach links oder rechts donnert.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Nachbar,

ich denke das mit den -10/+10 gelingt dir auch noch.

Die skalierung sieht so aus:

-10V = -27648 Einheiten , 0V = 0 Einheiten , +10V = +27648 Einheiten

An PIN 4 und 5 kannst du dann deine Spannung abgreifen.

Um eine Rampe zu realisieren verwendest du einen PID-Regler.

Es gibt für deine Anwendung zwei verschiedene Lösungen.

1.
Du verwendest dein Positionierungspoti als istwert und den Spannungsausgang als stellwert. Der sollwert ergibt sich aus der einstellung des solllwertpotis.
Mit den parametern P,I und D kannst du dann eine rampe realisieren.

einfach mal ausprobieren.

diese lösung würde ich verwenden.

2.
Du verwendest den Stellwert des analogen ausgangs auch als istwert.
D.h., den wert den der PID Regler als stellwert am analogen Ausgang setzt verknüpfst du auch mit dem istwert am PID-Regler.
das Positionierungspoti verwendest du dann nur für zB eine anzeige.

den PID regler findest du in der bibliothek und heißt contC oder so ähnlich.

er wird als FB aufgerufen und benötigt einen instanz-DB.



So, alles Klar?

Dann mal los

Adios
 
Es mag ja gehen den PID-Regler "zweckzuendfremden".
Um eine Rampe zu realisieren, würde ich einen FB(FC für S7) schreiben, der bei jedem Aufruf folgendes macht:
Fehler = Zielwert-Momentenwert
Fehler < Steigung?
Nein,dann Momentanwert:=Momentanwert+Steigung
Ja, dann Momentanwert:=Zielwert
Damit die Rampe gleichmäßig mit der Zeit steigt, wird sie periodisch aus OB13 (S5) oder einem Zeit-OB (35 in der 300) der S7 aufgerufen. Die Werte Ziel-,Momentanwert und Steigung werden vom Hauptprogramm in einem gemeinsamen Datenbereich (DB,Merker) hinterlegt. Wenn's auch abwaerts funktionieren soll, wird am Eingang des FB überprüft, ob der Zielwert grösser oder kleiner als der Momentanwert ist. Je nach Ergebnis Sprung in das was ich oben beschrieben habe, in eine komplementäre Routine für abwärts oder BE wenn Werte gleich.
 
Hmm, so richtig klar ist es nicht.

Erkläre noch mal kurz ein paar Details.
Ein Poti ist für die Geschwindigkeit ( 0 - 10kOhm ) ich regel damit nicht links / rechts !!
Ein weiteres Poti ist für die Stellungsabfrage, also ob es im linken oder rechten Bereich steht.

Das heißt ungefähr ( Beispiel Handbetrieb ), ich stelle das Poti "Geschw." auf ca. 50% ( auf der Skala 6 ), taste dann auf "Handfahrt LINKS".
Nun soll das Gestell mit ca. 50% der Geschwindigkeit nach links fahren (0V - -10V).
Das gleiche Spiel wenn ich nach rechts (0V - +10V) will.

Ich steuer also nicht mit dem Geschw.-Poti nach links und rechts, sondern einfach mit 0 und 1 -Signalen.

Den +/-10V-Ausgang habe ich jetzt schon mal in der Variablen-Tab gesteuert, das geht ....
Ich weiß jetzt nur nicht genau, wie ich das prgrammtechnisch realisieren soll....

Im Prinzip gebe ich die Geschw. vor, und durch endsprechendes tasten auf LINKS oder RECHTS muß mir die Steuerung erkenne, ob es ins minus oder ins plus muß.
Das hängt aber wiederum mit dem Stellungs-Poti zusammen, denn es darf nicht weiter fahren wenn die Endlage erreicht ist

Hoffe, man konnte mir folgen und versteht wie ich die Steuerung aufgebaut habe?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Nachbar,

um deinen ausgang zu normieren bzw zu skalieren gibst du bei deiner ausgewählten skalierungsart, ob nun mit einem FC/FB aus der bibliothek oder durch eigene arithmetische funktionen, den min/untersten wert als -27648 = -10V und max/oberster wert als +27648 = +10V an.

Zum Beitrag von Zottel vor meinem:

Natürlich funktioniert auch sein beispiel. ich weiß nur nicht genau wie sich die stellgrösse bei erreichen des sollwertes verhält. Denn abrupptes stoppen, kann ich mir vorstellen, ist in deiner anwendung nicht geeignet da dein stellantrieb evtl über sein ziel hinausfährt.

bei meinem beispiel das ganze über einen pid-regler zu steuern besteht die möglichkeit, eine +rampe für langsames anfahren und eine -rampe für das erreichen des ziels einzustellen. des weiteren würde der regler die optimalen geschwindigkeiten selbständig berechnen. dh wenn zb die fahrt von ganz links nach ganz rechts gestartet wird, wird er mit der rampe auf die am poti max-eingestellte geschwindigkeit beschleunigen und rechtzeitig für das sichere erreichen des ziels wieder eine -rampe erzeugen. er wird dann punktgenau auf sein ziel landen. ist allerdings eine fahrt gestartet die nur eine kurze strecke benötigt, so wird der regler wieder automatisch eine optimal langsamere fahrt steuern.

dein geschwindigkeitspoti kannst du auch direkt am regler einbinden. du mußt dieses poti nur vorher, wie alle analogen signale, in diesem fall von 0 - 100% skalieren.

mit dem taster start liks setzt du zb einen merker der bei erreichen des sollwertes zurückgesetzt wird.

wenn jedoch keine sollwertvorgabe geplant hast, sondern nur über tipbetrieb deine anlage in die gewünschte position fahren möchtest, ist der vorschlag von zottel glaube ich die beste. aber wie sieht den die funktion in automatik aus?

adios
 
Komm nicht weiter.
Hänge schon beim Norminieren.... Div. Versuche mit FC105 und FC106 klappen nicht.
Glaube ich schmeiß den Mist hin und sage sie sollen es selber machen.
Was erwarten die eigentlich von einem nach einer Woche Lehrgang ???? :shock:

Hat evtl. jemand nen Vorschlag ? Leider komme ich mit AWL nicht klar!
Nen FUP-Vorschlag, per PN gebe ich gerne meine Mail-Addy weiter.
Ich brächte was, wo ich was sehen kann...... :oops: ( bin wohl keine Leuchte was SPS angeht )
 
hallo

ich hatte hier schon diverse codes zu diesem thema gepostet. die sind alle in fup. du must im editor auf awl schalten den code kopieren und einfügen. danach kannst du auf fup umschalten. natürlich musst du darauf achten, dass du nicht alles in 1 netzwerk kopierst.

wie ich schon vorher geschrieben habe, vergiss das mit dem fc 105/106.
einfach den eingelesenen wert teilen und fertig.
in deinem fall musst du aber garnicht normieren, da du den eingelesenen wert ja wieder ausgibst. zumindest was die geschwindigkeit betrifft.

z.b.
pew 300 = geschwindigkeitspoti
pew 310 = position
paw 320 = propventil
e0.0 = taster links
e0.1 = taster rechts
e0.2 = taster in mittelstellung fahren

Code:
//links oder rechts von mittelstellung - anfang
l pew310
l 13800 //ungefähr mitte
>I
= m10.0 

l pew310
l 13800 //ungefähr mitte
<=I
= m10.1

l pew310
l 13500
>I
= m11.0 //im fenster +

l pew310
l 14100
<I
= m11.1 //im fenster -
//links oder rechts von mittelstellung - ende


//positive oder negativen sollwert bereitstellen automatik - anfang
u e0.2
u m10.0
un m11.0
un m11.1
spb m011
spa m013

u e0.2
u m10.1
un m11.0
un m11.1
spb m012
spa m013

m011: nop0
l pew300
t mw200
spa m013

m012: nop0
l pew300
negi
t mw200

m013: nop0
//positive oder negativen sollwert bereitstellen automatik - ende


//positive oder negativen sollwert bereitstellen handfahrt - anfang
u e0.0
spb m001
u e 0.1
spb m002
spa m003

m001: nop0
l pew300
t mw200
spa m003

m002: nop0
l pew300
negi
t mw200

m003: nop0
//positive oder negativen sollwert bereitstellen handfahrt - ende


l mw200
t paw320

ist zwar kein schöner code aber zum verständnis, denke ich, ausreichend.

die sache mit den tastern ist mir nicht ganz klar. wenn ich einen taster linksfahrt habe, soll das ding auch nach links fahren. das gleiche für rechts. alles andere wäre unlogisch. deshalb habe ich hier einen weiteren taster eingesetzt.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi Volker, wollte es eben mal kopieren und testen....
Leider werden verschiedene Befehle rot dargestellt:
Z. B. .....

m011: nop0
l pew300
t mw200
spa m013


Verstehe nicht wieso das so ist...... :oops:
Bekomme ich denn so auch ne Minus-Spannung auf das Prop-Ventil?

Zu den Tastern, ja es sind 2 Stk. Einer halt für "LINKS" und einer für "RECHTS". Je für Handbetrieb.
Im Automatikbetrieb soll es halt auch so laufen, nur das die Umschaltung links nach rechts und zurück über Initiatoren am Anschlag erfolgt.

So, habe es raus bekommen.... mit dem Befehl-Fehler.....
Das lag irgendwie an diesem nop0-Befehl.... Habe nen Leerzeichen vor die 0 gemacht, dann war es nicht mehr rot.
K.A. was der überhaupt zu sagen hat, etc. ...... :cry: Verstehe so einiges noch nicht bei Step7, oder überhaupt mit dem Programmieren
Aber ich werd mal schauen, ob sich was tut.... Nach'm Mittach

Hmm..... irgendwie klappt es nicht, bekomme nix auf's Prop-Ventil.
 
So, habe nun endlich Signal auf dem Prop-Ventil.
Was muß ich jetzt machen, das mir die Spannung vom Prop-Ventil wieder auf 0V geht, wenn ich den Taster los lasse?
Jetzt habe ich es so, daß wenn ich los lasse das der Ausgang für das Prop-Ventil die Sp. beibehält und somit würde mein Gelenk weiter fahren.
Wird also irgendwo gespeichert ....... nur wo und wie ??

Habe es fast so übernommen vom Volker (siehe oben) nur halt die Eingänge und PEW-Werte etwas angepaßt.
 
Hallo Nachbar,

in der Zuweisung des PAW fehlen noch zwei Zeilen um das PAW zu Null zuschreiben wenn nicht gefahren werden soll:

//positiven oder negativen sollwert bereitstellen handfahrt - anfang
u e0.0
spb m001
u e 0.1
spb m002

// hier neu
L 0 // MW 200 zu Null schreiben
t mw200

spa m003
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Dickes THX mal an alle die mir hier geholfen haben......

Das Gestell hat sich heute das erste mal mit dem Steuerpult und der S7 bewegt.
Habe mich gefreut wie nen Schneekönig...... :D

Alledings sind jetzt noch paar Ungereimheiten dazu gekommen, die ich erstmal mit den Herren der Schöpfung, ähm...... Projektleitern klären muß.
Denn, evtl. bekannt: Nichts ist so beständig wie die Änderung!!

Denke mal, daß dieser Tread noch nicht zu Ende ist und ich sicher wieder mal auf eure Hilfe hoffe.
Doch halt schon mal bis hier ein Lob von mir........ :!: :!:
 
Zurück
Oben