Siemens
Digital Industries, Motion Control, Machine Tool Systems
8839
Follower:innenR-Werte Variablen löschen, Einfacher Befehl oder Unterprogramm
27.08.2019, 06:52 Uhr
ballnus-consulti...
Level 1 = Community-Lehrling
Gruppe: Mitglied
Mitglied seit: 31.05.2018
Beiträge: 12
Mitglied seit: 31.05.2018
Beiträge: 12
Hallo liebe Siemens Freunde,
ich habemal eine Frage bezüglich der R-Werte (Variablen)
Gibt es auch einen einzelnen Befehl, mit dem ich z.B. die R-Werte im Berecih (x bix Y z.B. 0-99) auf Null setzen kann?
Oder muss ich z.B. jede einzeln auf Null setzen z.B. in eine Unterprogramm.
Danke für Euer Wissen
Grüsse vom Bodensee
Siemenssteuerung 840D SL
ich habemal eine Frage bezüglich der R-Werte (Variablen)
Gibt es auch einen einzelnen Befehl, mit dem ich z.B. die R-Werte im Berecih (x bix Y z.B. 0-99) auf Null setzen kann?
Oder muss ich z.B. jede einzeln auf Null setzen z.B. in eine Unterprogramm.
Danke für Euer Wissen
Grüsse vom Bodensee
Siemenssteuerung 840D SL
27.08.2019, 20:03 Uhr
Hallo,
Bei der Ansicht von den Variablen gibt es einen Softkey da steht alle Variablen zurücksetzen.
Lg
Bei der Ansicht von den Variablen gibt es einen Softkey da steht alle Variablen zurücksetzen.
Lg
28.08.2019, 05:35 Uhr
ballnus-consulti...
Level 1 = Community-Lehrling
Gruppe: Mitglied
Mitglied seit: 31.05.2018
Beiträge: 12
Mitglied seit: 31.05.2018
Beiträge: 12
Hallo,
Bei der Ansicht von den Variablen gibt es einen Softkey da steht alle Variablen zurücksetzen.
Lg
Bei der Ansicht von den Variablen gibt es einen Softkey da steht alle Variablen zurücksetzen.
Lg
Danke Dir für Deine Antwort N0F3aR.
aber ich meinete innerhalb des Programmcodes einen Befehls oder Befehlskette. Ohne eine Schleife einzubauen.
Sowas in der Art wie eine Set Befehl oder dergleichen.
Danke again für Ideen
28.08.2019, 06:54 Uhr
R-Parameter können ja auch als Felder aufgefasst werden. Demzufolge müsste es möglich sein zu schreiben:
R[100] = REP(0)
um die R-Parameter R0 bis R99 zu löschen. In der Doku habe ich dazu nichts gefunden, und ausprobiert habe ich das auch nicht.
Du kannst es ja mal versuchen.
R[100] = REP(0)
um die R-Parameter R0 bis R99 zu löschen. In der Doku habe ich dazu nichts gefunden, und ausprobiert habe ich das auch nicht.
Du kannst es ja mal versuchen.
28.08.2019, 12:53 Uhr
Hallo
das könntest du so machen:
N10 DEF INT SETNULL
N20 SETNULL=1
N30 ANFANG:
N40 R[SETNULL]=0
N50 STOPRE
N60 IF SETNULL>=99 GOTOF ENDE
N70 SETNULL=SETNULL+1
N80 GOTOB ANFANG
N90 ENDE:
N100 M30
Habs im Sinutrain versucht
Gruß Boern
das könntest du so machen:
N10 DEF INT SETNULL
N20 SETNULL=1
N30 ANFANG:
N40 R[SETNULL]=0
N50 STOPRE
N60 IF SETNULL>=99 GOTOF ENDE
N70 SETNULL=SETNULL+1
N80 GOTOB ANFANG
N90 ENDE:
N100 M30
Habs im Sinutrain versucht
Gruß Boern
--------------------
Das dringendste Problem der Technologie von heute ist nicht mehr die Befriedigung von Grundbedürfnissen und uralten Wünschen der Menschen, sondern die Beseitigung von Übeln und Schäden, welche uns die Technologie von gestern hinterlassen hat.
Dennis Gabor (1900-79), ungar.-brit. Physiker, Entwickler der Holographie, 1971 Nobelpr.
28.08.2019, 13:33 Uhr
Gerade so, weshalb auch immer, wollte es der Fragesteller ja nicht haben (s. #3: "Ohne eine Schleife einzubauen").
Wenn ich aber schon eine Schleife einbauen wollte, dann sicher als DO-Schleife und nicht mit Sprungmarken, Abfragen und Rücksprung.
Der Beitrag wurde von CNCFr bearbeitet: 28.08.2019, 13:34 Uhr
Wenn ich aber schon eine Schleife einbauen wollte, dann sicher als DO-Schleife und nicht mit Sprungmarken, Abfragen und Rücksprung.
Der Beitrag wurde von CNCFr bearbeitet: 28.08.2019, 13:34 Uhr
28.08.2019, 17:44 Uhr
Gerade so, weshalb auch immer, wollte es der Fragesteller ja nicht haben (s. #3: "Ohne eine Schleife einzubauen").
Wenn ich aber schon eine Schleife einbauen wollte, dann sicher als DO-Schleife und nicht mit Sprungmarken, Abfragen und Rücksprung.
Wenn ich aber schon eine Schleife einbauen wollte, dann sicher als DO-Schleife und nicht mit Sprungmarken, Abfragen und Rücksprung.
Tja dann mach doch mal ein Beispiel?
--------------------
Das dringendste Problem der Technologie von heute ist nicht mehr die Befriedigung von Grundbedürfnissen und uralten Wünschen der Menschen, sondern die Beseitigung von Übeln und Schäden, welche uns die Technologie von gestern hinterlassen hat.
Dennis Gabor (1900-79), ungar.-brit. Physiker, Entwickler der Holographie, 1971 Nobelpr.
28.08.2019, 20:28 Uhr
So z.B.:
CODE
N10 DEF INT _LETZTER_INDEX = 99
N20 DEF INT _INDEX
N30 FOR _INDEX = 0 TO _LETZTER_INDEX
N40 R[_INDEX] = 0
N50 ENDFOR
N60 M30
N20 DEF INT _INDEX
N30 FOR _INDEX = 0 TO _LETZTER_INDEX
N40 R[_INDEX] = 0
N50 ENDFOR
N60 M30
29.08.2019, 06:02 Uhr
ballnus-consulti...
Level 1 = Community-Lehrling
Gruppe: Mitglied
Mitglied seit: 31.05.2018
Beiträge: 12
Mitglied seit: 31.05.2018
Beiträge: 12
R-Parameter können ja auch als Felder aufgefasst werden. Demzufolge müsste es möglich sein zu schreiben:
R[100] = REP(0)
um die R-Parameter R0 bis R99 zu löschen. In der Doku habe ich dazu nichts gefunden, und ausprobiert habe ich das auch nicht.
Du kannst es ja mal versuchen.
R[100] = REP(0)
um die R-Parameter R0 bis R99 zu löschen. In der Doku habe ich dazu nichts gefunden, und ausprobiert habe ich das auch nicht.
Du kannst es ja mal versuchen.
Hallo CNCFr.
Der Befehl funzt prima, habe es heute in der Firma ausprobiert und klappt.
Jedoch gibt es eine Einschränkung.
Bei R[100] = REP(0) löscht er nichts, der Wert in [100] bedeutet ab dort bis 99
Also möchte man vom Paramter 10 bis 99 die Werte auf NULL setzen muss es so lauten: R[10] = REP(0)
Wie man mit dieser Syntax jedoch eine Range auswählen kann, z.B. (10-50) weiss ich noch nicht, suche da aber noch etwas zu.
Viele Grüsse und Danke an alle Ideengeber.
09.09.2019, 12:57 Uhr
Falls es noch wer braucht.
Siehe Kapitel 2.1.13 (Arbeitsvorbereitung DocOnCd) Definition und Initialisierung von Feldvariablen (DEF, SET, REP)
Die Range wird über einen zweiten Parameter gesteuert, z.B. die R-Parameter von 100 bis 120 mit "Null" oder eben mit jedem anderen beliebigem Wert intialisieren.
;Startpunkt, Wert, Range
R[100] = Rep(0,20)
Siehe Kapitel 2.1.13 (Arbeitsvorbereitung DocOnCd) Definition und Initialisierung von Feldvariablen (DEF, SET, REP)
Die Range wird über einen zweiten Parameter gesteuert, z.B. die R-Parameter von 100 bis 120 mit "Null" oder eben mit jedem anderen beliebigem Wert intialisieren.
;Startpunkt, Wert, Range
R[100] = Rep(0,20)
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: