anfängerfragen

Programmierung und Software in Steuerungen

Programmierung und Software in Steuerungen

Moderator: Moderatorengruppe

anfängerfragen

Neuer Beitragvon muffi am Samstag 19. März 2005, 17:01

moin

ich bin grade mit einem sps anfängerkurs fertiggeworden, und
habe noch ein paar unklarheiten die mein buch nicht beantwortet.

wie kann ich die ausgabe eines wertes an ein paw abhängig von einem zustand machen?

ich hab`s so versucht

u e0.0
l 100
t paw128

so wird der wert aber gleich beim starten der steuerung in`s paw
geschrieben.

danke und gruss
muffi
Threadstarter
10656
 
Beiträge: 3
Registriert: Samstag 19. März 2005, 16:35

Neuer Beitragvon Borg am Sonntag 20. März 2005, 20:01

Lade und Transferfunktionen sind nicht an das Verknüpfungsergebnis gebunden. Das bedeutet sobald du L100 programmierst wird der Wert geladen und bei T paw xxx auch transferiert. Wenn u das vermeiden möchtest versuch mal den Befehl zu überspringen wenn E0.0 nicht da ist. Etwa so (nagel mich bitte nicht auf den korrekten Syntax fest) :

un E 0.0 // wenn der Eingang nicht da ist
SPB M001 // springe zur Sprungmarke M001

L100
T PAW xxx

M001: BE

Somit springst du über den Lade, Transfervorgang wenn der Eingang nicht da ist.

Ich hoffe das hilft dir erst mal weiter
Borg
......................................................................
....Die Wahrheit ist irgendwo da draussen....
Benutzeravatar
Borg
10685
Gold Mitglied
 
Beiträge: 347
Registriert: Montag 8. März 2004, 18:42
Wohnort: Hessen

Neuer Beitragvon SPS_Markus am Montag 21. März 2005, 11:45

Also ich würde das ungefähr so machen:

UN E 0.0
SPB m01
L 100
T PAW 128
SPA end
m01: NOP 0
L 0
T PAW 128
end: NOP 0

Um sicherzustellen das dein PAW gelöscht wird, nachher auf null setzen.

Wichtig, wenn du weitere Netzwerke anfügen willst darfst du kein "BE" hinter dem Sprungziel stehen.

Markus
SPS_Markus
10704
Junior Mitglied
 
Beiträge: 28
Registriert: Donnerstag 17. März 2005, 20:22
Wohnort: Hessen

Neuer Beitragvon muffi am Sonntag 27. März 2005, 17:44

moin und danke

ich habe noch ne frage.

ich wollte einen zähler programmieren der über 999 zählen kann.
ich habe das so gelöst.
z1 der normal zählt danach ein vergleicher der z1 mit 999 vergleicht und in bei 999 zurücksetzt. z2 zählt diese rücksetzimpulse. z2 wird dann mit 999 multiplieziert und mit z1
addiert.

funktionieren tuts, ich habs ausprobiert. aber ist das auch der einfachste weg zähler zu kaskadieren?

gruss und danke
muffi
Threadstarter
10812
 
Beiträge: 3
Registriert: Samstag 19. März 2005, 16:35

Neuer Beitragvon SPS_Markus am Dienstag 29. März 2005, 15:20

Hallo muffi,

ich würde hier nicht mit einem Zähler arbeiten. Mein Ergebnis (Zählerwert) würde ich in einem Merkerwort oder Merkerdoppelwort speichern.
Mit dem Zählereignis würde ich einen Impuls erzeugen. Immer wenn ein Impuls erzeugt wird, wird das Merkerwort um "1" erhöht.
Das alles ist mit Sprungoperationen in AWL einfach zu programmieren.
Bei Fragen einfach nochmal melden.

Markus
SPS_Markus
10847
Junior Mitglied
 
Beiträge: 28
Registriert: Donnerstag 17. März 2005, 20:22
Wohnort: Hessen

Neuer Beitragvon muffi am Donnerstag 31. März 2005, 15:09

moin und danke

ich werde mal drüber nachdenken ,
wenn ichs nicht selbst hinkriege melde ich mich noch mal


gruss muffi
muffi
Threadstarter
10917
 
Beiträge: 3
Registriert: Samstag 19. März 2005, 16:35


Zurück zu SPS

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast