24. Mai 2019, 19:03:36
Roboterforum.de - Die Industrieroboter- Anwender und Experten Community

[offen] IF-Anweisung


normal_post Autor Thema: [offen] IF-Anweisung  (Gelesen 1391 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

08. Dezember 2017, 10:45:16
Gelesen 1391 mal
Offline

scholl123


Hallo liebes Forum,

ich bin noch relativ neu in der Roboter-Welt und habe noch nicht so viel Erfahrung mit der Programmierung.
Ich will in einem Programm zwei Werte abfragen und dann je nach Ergebnis auf verschiedene Stellen im Programm springen.
 
Es sollen 2 Variablen abgefragt werden (V496! & V497! –> diese können nur 1 oder 0 sein)
Wenn beide Variablen = 1 sind soll das Programm auf Satz Nr. 9 (Bewegung) springen.
Wenn eine oder beide Variablen = 0 sind, soll das Programm auf Satz Nr. 18 (END) springen.
Bisher sieht mein Programm so aus:

IF V496! = 1
IF V497! = 1
JMP[9]
ELSE
JMP[18]
ENDIF
ENDIF

Allerdings funktioniert das noch nicht so wie es soll.
Hat jemand eine Idee wie man die Befehle schreiben muss/kann?

PS: Aus Matlab, etc. kenne ich es, dass man auch in etwa so schreiben kann:
IF V496!=1 && V497!=1
Geht das bei Nachi auch irgendwie?


Vielen Dank schon mal im Voraus
scholl123
  • gefällt mir    Danke

Heute um 19:03:36
Antwort #1

Werbung

Gast

12. Dezember 2017, 18:50:08
Antwort #1
Offline

Joern_E

ROBTEC Mitarbeiter
Moin Scholl,

die Abfrage nach "ist gleich 1" wird in unterschiedlichen Programmiersprachen als "= 1" oder "== 1" geschrieben.
Eine logische Abfragen wird in unterschiedlichen Programmiersprachen als "x & y", "x && y" bzw. "x AND y" geschrieben.

Teste mal die verschiedenen Möglichkeiten, d.h. ...

IF (V496! = 1 & V497! = 1)
IF (V496! = 1 && V497! = 1)
IF (V496! = 1 AND V497! = 1)

... bzw ...

IF (V496! == 1 & V497! == 1)
IF (V496! == 1 && V497! == 1)
IF (V496! == 1 AND V497! == 1)

Irgendeine Version davon sollte funktionieren. ;)

Gruß
Jörn
  • gefällt mir    Danke
In der Theorie sind Theorie und Praxis identisch. In der Praxis nicht.

22. Dezember 2017, 11:07:26
Antwort #2
Offline

Bjoern


Hallo Scholl,

der richtige Befehl für die IF-Anweisung in deinem Fall ist
IF (V496! = 1 and V497! = 1)
JMP(9)
ELSE
JMP(18)
ENDIF
Björn Gentsch
NACHI EUROPE GmbH | Bischofstr. 99 |   DE-47809 Krefeld, Germany
Phone: +49 (0)2151 7843338 |  Mobile: +49 (0)172 / 1775455  | Fax: +49 (0)2151-7843332
E-Mail: gentsch@nachi.de |  Internet: www.nachi.de


  • gefällt mir    Danke
Es ist nicht einfach Ich zu sein aber irgend jemand muss es ja tun.


Björn Gentsch
Robotics Division

NACHI EUROPE GmbH | Bischofstr. 99 |   DE-47809 Krefeld, Germany
Phone: +49 (0)2151 7843338 |  Mobile: +49 (0)172 / 1775455  | Fax: +49 (0)2151-7843332
E-Mail: gentsch@nachi.de |  Internet: www.nachi.de


Teile per facebook Teile per linkedin Teile per pinterest Teile per reddit Teile per twitter
 

über das Roboterforum

Nutzungsbedingungen Impressum Datenschutzerklärung

Sponsoren des Roboterforums

ROBTEC GmbH