Wie kann der Inhalt eines DW mit SCL um 1 erhöht werden

Gerold

Level-1
Beiträge
82
Reaktionspunkte
5
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

heute schein ein schlechter Tag zu sein um sich mit SCL auseinander zu setzen.
Ich habe folgendes Problem.Ich benutze einen DB 10 in dem Wege und Füllstände für ein Kammersystem gespeichert werden.Welche Beschickt und Geräumt werden kann ich schon auswerten.Jetzt muß ich ,da ich z.B. die Kammer 5 mit Material beschicke ,den Füllstand um 1 erhöhen.Der Füllstand steht in DB10.DW108.Am Bausteineingang kann ich vorgeben welche Kammer ich Beschicken und Räumen möchte.Also gebe ich 5 ein diese wandle ich um 5 * 2 + 98 = 108.Somit greife ich auf das DW 108 zu.
Ich habe aber Probleme damit den INHALT des DW um 1 zu erhöhen.
Ich hoffe Ihr könnt meiner bescheidenen Erklärung folgen.

Gruß Gerold
 
Folgen ist schwierig, wie ist das Programm aufgebaut?

DBx.DBW108 := DBx.DBW108 + 1; ist wohl die einfachste Form

oder xxxDBW[Index]

Sende mal einen Ausschnitt der Source.

pt
 
Zuviel Werbung?
-> Hier kostenlos registrieren
// Ausgabe der aktuellen Beschickkammer
Akt_Beschicken:=(B_Kammer + Offset_Beschicken);

//Ausgabe des Füllstands der aktuellen Beschickkammer
Fuellst_Beschicken:=WORD_TO_INT(WORD_TO_BLOCK_DB(DB_Nummer).DW[Akt_Beschicken * 2 + 98]);


Ich habe einen Ausgang am Baustein der da heißt:Fuellst_Beschicken

Dieser Ausgang soll später als Aktualwertanzeige auf einem OP 77 ausgegeben werden.
Das Programm ist so:
DB_Nummer : Eingangoperand = welcher DB für die Positionen und Füllstände benutzt wird.


Akt_Beschicken wird im Laufe des Programms errechnet.Als Beispiel steht jetzt eine 5 drin.

Also steht in Klartext folgendes in Fuellst_Beschicken: DB10.DW[5 *2 +98]= 108;als DB10.DBW108.Somit lese ich den Füllstand meiner Beschickkammer aus.

Folglich steht in Fuellst_Beschicken eine 6;soll heißen es sind 6 Plätze belegt.Ich möchte diese 6 durch einen Impuls auf 7 erhöhen

Die 98 sind als Offset gedacht,da die Füllstände in meinem DB erst ab DW 100 anfangen.
 
Zurück
Oben