AWL Anfänge

Ok, dann noch mal ganz langsam:

beispiel hierzu:

Un e 0.0
spb m004 // Springe, wenn E0.0 = 0 zu Marke m004
// Wenn E0.0 = 1, dann mach hier weiter
u e 0.1
fp m 30.0
spb m001 // Springe, wenn E0.1 den Zustand von 0 zu 1 wechselt zu Marke m001
// Findet kein Wechsel statt, dann mach hier weiter
u e 0.2
fp m 30.1
spb m002 // Springe, wenn E0.2 den Zustand von 0 zu 1 wechselt zu Marke m002
// Findet kein Wechsel statt, dann mach hier weiter
u e 0.3
fp m 30.2
spb m003 // Springe, wenn E0.3 den Zustand von 0 zu 1 wechselt zu Marke m003
// Findet kein Wechsel statt, dann mach hier weiter

U e0.4
fp M30.2
spb m004 // Springe, wenn E0.4 den Zustand von 0 zu 1 wechselt zu Marke m004
// Findet kein Wechsel statt, dann mach hier weiter
spa m005 // Springe auf jeden Fall zu Marke m005

m001: L mw 12
+ 1
t mw 12
spa m005

m002: L mw 12
+ -1
t mw 12
spa m005

m003: L 0
t mw 12
spa m005

m004: L10
t mw12
spa m005

m005: Nop 0

Grüße
Gebs
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Habe gebs gute Ausführung noch etwas erweitert
Code:
*
Un e 0.0
spb m004 [COLOR=Red]// Springe, wenn E0.0 = 0 zu Marke m004[/COLOR]
[COLOR=Red]// Wenn E0.0 = 1, dann mach hier weiter[/COLOR]
u e 0.1 
fp m 30.0 
spb m001 [COLOR=Red]// Springe, wenn E0.1 den Zustand von 0 zu 1 wechselt zu Marke m001[/COLOR] 
[COLOR=Red]// Findet kein Wechsel statt, dann mach hier weiter[/COLOR]
u e 0.2
fp m 30.1
spb m002 [COLOR=Red]// Springe, wenn E0.2 den Zustand von 0 zu 1 wechselt zu Marke m002[/COLOR] 
[COLOR=Red]// Findet kein Wechsel statt, dann mach hier weiter[/COLOR]
u e 0.3
fp m 30.2
spb m003 [COLOR=Red]// Springe, wenn E0.3 den Zustand von 0 zu 1 wechselt zu Marke m003[/COLOR] 
[COLOR=Red]// Findet kein Wechsel statt, dann mach hier weiter[/COLOR]
 
U e0.4
fp M30.2
spb m004 [COLOR=Red]// Springe, wenn E0.4 den Zustand von 0 zu 1 wechselt zu Marke m004[/COLOR] 
[COLOR=Red]// Findet kein Wechsel statt, dann mach hier weiter[/COLOR]
spa m005[COLOR=Red] // Springe auf jeden Fall zu Marke m005[/COLOR]

m001: L mw 12
+ 1
t mw 12
spa m005[COLOR=Red] // Springe auf jeden Fall zu Marke m005[/COLOR]

m002: L mw 12
+ -1
t mw 12
spa m005[COLOR=Red] // Springe auf jeden Fall zu Marke m005[/COLOR]

m003: L 0
t mw 12
spa m005[COLOR=Red] // Springe auf jeden Fall zu Marke m005[/COLOR]

m004: L10
t mw12
spa m005[COLOR=Red] // Springe auf jeden Fall zu Marke m005, [/COLOR]
         [COLOR=Red]//[/COLOR] [COLOR=Red]dieser Sprung ist aber nicht nötig, da m005 die nächste Anweisung ist[/COLOR]
m005: Nop 0
 
Ja ich versteh ja das er SPA zu 005 springen muss das er nich dauernd die netzwerke wiederholt abfragt...aber er dürfte bei e0.1 deswegen trotzdem nich zählen wenn ich SPA 005 nich schreib da ja e0.1 nich gesetzt ist...er würde halt nur endlos alles wiederholt durchlaufen aber das is nur theoretisch...praktisch zählt er laufend hoch bis ins unendliche aber das dürfte er nich...das is das einzige was ich in dem fall nich kapiere
 
Ja ich versteh ja das er SPA zu 005 springen muss das er nich dauernd die netzwerke wiederholt abfragt...aber er dürfte bei e0.1 deswegen trotzdem nich zählen wenn ich SPA 005 nich schreib da ja e0.1 nich gesetzt ist...er würde halt nur endlos alles wiederholt durchlaufen aber das is nur theoretisch...praktisch zählt er laufend hoch bis ins unendliche aber das dürfte er nich...das is das einzige was ich in dem fall nich kapiere
Wieso meinst du, dürfte er das nicht?
Wenn E0.0 TRUE ist und bei den anderen Eingängen kein Wechsel von FALSE nach TRUE auftritt, läuft der Code bis zur Sprungmarke m001, führt dann die Addition aus und springt dann zu m005. Dies wird in einer Endlosschleife wiederholt, bis sich an den Eingängen was ändert
 
Ich dachte er dürfe das nich un wenn dann erst wenn e0.1 ein signal hat ansonsten darf er doch nich hoch zählen...oder??

Wenn du die Zeile:

Code:
spa m005[COLOR=Red] // Springe auf jeden Fall zu Marke m005[/COLOR]
nicht machst werden die Zeilen:

Code:
m001: L mw 12
+ 1
t mw 12
spa m005[COLOR=Red] // Springe auf jeden Fall zu Marke m005
[/COLOR]
trotzdem bearbeitet da der Sprungbefehl zum überspringen nicht vorhanden ist.

Du Springst mit FP zu der jeweiligen anweisung und danach, da FP wieder 0 ist wird nicht mehr gesprungen und die nächste Sprungmarke bei dir wäre:

Code:
m001: L mw 12  [COLOR=Red]//wird bearbeitet[/COLOR]
+ 1  [COLOR=Red]//wird bearbeitet[/COLOR]
t mw 12  [COLOR=Red]//wird bearbeitet[/COLOR]
spa m005  [COLOR=Red]//SPRUNGMARKE[/COLOR]
m001 heist nicht "bearbeite nur wenn hingesprungen wird"!!!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Code:
m001: L mw 12
+ 1
t mw 12
spa m005
 
m002: L mw 12
+ -1
t mw 12
spa m005
 
m003: L 0
t mw 12
spa m005
 
m004: L10
t mw12
spa m005
 
m005: Nop 0

kurzer

Code:
 m001: L mw 12
+ 1
spa m006
 
m002: L mw 12
+ -1
spa m006
 
m003: L 0
spa m006
 
m004: L10
spa m006
 
m006: t mw 12
 
m005: Nop 0

gruß waldy
 
Tipp

Hab auch klein angefangen!
Keine Schulung usw.

Hab mir ein Hans Berger Buch gekauft,
mit dem hab ich s gelernt;

Mittlerweile bilde ich Mechatroniker & Betriebselektriker aus.

Fazit: Das Buch ist super (Ein bisschen Ehrgeiz gehört dazu) :-D

Gruss Steff
 
Hallo,
Hab mir ein Hans Berger Buch gekauft,
mit dem hab ich s gelernt;
- und wie lange hast du AWl sprache gelernt?

Mit AWL habe ich in ca. Mitte 2008 angefangen, für Hilfe mit AWl sprache bin ich vierlagig Dankbar. Er hat mich so zu sagen , zu zwingen , in AWL spachen was zu lernen. Ich dachte auch erst mal, das AWl Sprache brauche ich nicht mehr zu wiessen, FUP ist besser und einfachste Weg SPS Sprache zum lernen.
Jetzt habe ich andere Meinung, das AWL Sprachen braucht man noch Momental. wie lange- das kann ich nicht behaupten- aber AWL Sprache heute sind immer noch Aktuel.

gruß waldy
 
Zurück
Oben