INT konvertieren in Booleans

die idee hatte ich auch schon. aber das müsste doch eigentlich egal sein, wenn ich den wert fest in einen datenbaustein speichere, oder? und wie schon gesagt, wenn ichs in ein merkerwort speichere, dann gehts :/
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich meine, es gibt einen Zustand im FC, da wird der Ausgang faktisch gar nicht beschrieben, wenn weder Run, Start, Stop, Reset anliegt. Der Ausgang ist dann sozusagen unbestimmt. Könnte vielleicht daran liegen. Du mußt auf jeden Fall dafür sorgen, daß ein OUT immer im FC beschrieben wird. Umgehen kannst du das "immer beschreiben" auch, indem du statt OUT einen INOUT nutzt.
 
hmmm

Hey Leute bin auch ein Frischling in sachen SPS, habe mir diese ursprüngliche Aufgabe vorgenommen.

Bei mir erscheint beim starten der SPS n Sammelfehler -.-

liegt das am Programm?


L "ZählerDB".INTEing
LAR1

L DBW [AR1,P#0.0]
= A 4.0

L DBW [AR1,P#0.1]
= A 4.1

L DBW [AR1,P#0.2]
= A 4.2

L DBW [AR1,P#0.3]
= A 4.3

SPA: NOP 0



möchte gern anhand meines beispieles auf den fehler kommen, deswegen schicke ich mal meinen Teil. Bringt ja nichts wenn ich jetzt einfach einen abtippe.

Gruß

oOSnugglezOo
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Code:
[COLOR=red]L "ZählerDB".INTEing[/COLOR] //geht so nicht, man kann nur den Pointer
LAR1                 //auf die Variable in's Adressregister laden
 
[COLOR=red]L DBW[/COLOR] [AR1,P#0.0]    //geht nicht, es muss bitweise verknüpft werden  
= A 4.0
 
[COLOR=red]L DBW[/COLOR] [AR1,P#0.1]    
= A 4.1
 
[COLOR=red]L DBW[/COLOR] [AR1,P#0.2]
= A 4.2
 
[COLOR=red]L DBW[/COLOR] [AR1,P#0.3]
= A 4.3
 
SPA: NOP 0


So sollte es funktionieren:
Code:
L "ZählerDB".INTEing    //Datenbausteinvariable auf eine Temp umkopieren
T #tempInt              //da da sonst kein Pointerzugriff möglich ist
 
L P##tempInt            //Pointer auf die Tempvariable
LAR1                    //in das AR1 laden
 
 
U [AR1,P#0.0]           //Bitweiser Zugriff auf das AR1
= A 4.0
 
U [AR1,P#0.1]
= A 4.1
 
U [AR1,P#0.2]
= A 4.2
 
U [AR1,P#0.3]
= A 4.3
 
SPA: NOP 0
 
Zurück
Oben