Roboterforum Willkommen Gast. Bitte einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?
08. Februar 2012, 15:21:40
Übersicht Hilfe Suche Kalender Einloggen Registrieren
News: English and international Robotsupport now on Robot Forum. Also Supported by the Moderators of the roboterforum.de

Roboterforum für Industrieroboter Anwender  |  Industrieroboter Helpcenter  |  Motoman Roboter (Moderator: bobby37)  |  Thema: Call mit 2 Bedingungen 0 Mitglieder und 1 Gast betrachten dieses Thema. « vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Call mit 2 Bedingungen  (Gelesen 688 mal)
Motofan
Stammgast
**
Offline Offline

Geschlecht: Männlich
Beiträge: 22



« am: 28. August 2010, 14:55:14 »

Juten Tach,

habe mal wieder eine Frage auf Lager.
Ich muss einen Call basteln mit 2 Bedingungen und komme da nicht klar.
Also z.b.
CALL JOB: Y25L IF B031=1 AND B013=1

So klappt das aber anscheinend nicht.
Wie kann ich am besten einen Callaufruf erstellen der 2 Bedingungen abfragt?
Ich wollte zuerst einfach beide Variablen addieren und dann das Ergebniss abfragen, also 2.
Aber ich habe auch manchmal den Fall das eine Variable 0 sein muss. Dann könnte ich natürlich auch addieren und würde auf 1 kommen. Leider weiss ich dann ja nicht welche Variable auf 1 und welche auf 0 steht.

Wie kann ich das nun am besten realisieren?

Gruß Martin
Gespeichert
Minimann
Member
***
Offline Offline

Geschlecht: Männlich
Beiträge: 94


« Antworten #1 am: 28. August 2010, 19:57:11 »

Hi,

welche Steuerung hast Du? beim DX gibts "IF-THEN-ELSE" Damit sollte es klappen.

Falls Du einen NX hast könntest Du mit einer halben Eingangsgruppe arbeiten.  Dann könntest Du es mit einem Bitmuster abfragen.
Ist halt bischen aufwändig, sollte aber funktionieren...

CALL JOB: 1 if IGH#1=1
CALL JOB: 2 if IGH#1=2
.....

Grüße,
Minimann
Gespeichert
Motofan
Stammgast
**
Offline Offline

Geschlecht: Männlich
Beiträge: 22



« Antworten #2 am: 28. August 2010, 20:16:41 »

Hi,

ja geht um die NX100 Steuerung.
@miniman, dein Beispiel verstehe ich nicht ganz. Bin recht neu in dem Thema.

Gruß Martin
Gespeichert
Roland Keller
Administrator
Deluxe Member
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 479



« Antworten #3 am: 01. September 2010, 15:35:06 »

Ich wollte zuerst einfach beide Variablen addieren und dann das Ergebniss abfragen, also 2.
Aber ich habe auch manchmal den Fall das eine Variable 0 sein muss. Dann könnte ich natürlich auch addieren und würde auf 1 kommen. Leider weiss ich dann ja nicht welche Variable auf 1 und welche auf 0 steht.

Einfach mal als kleine Stütze:
Eine zusätzliche "Hilfsvariable" z.B. I 001 verwenden.
Ist Bedingung 1 B013=1 erfüllt erhöhst du die Variable um 1
Ist Bedingung 2 B031=1 erfüllt erhöhst du die Variable um 2

Aus dem Inhalt deiner "Hilfsvariablen" kannst du erkennen welche Bedingung erfüllt ist und somit auch welcher deiner B-Variablen auf 0 steht und welche auf 1:
Steht in der Variablen I001 eine 1 ist nur Bedingung 1, B013 = 1 erfüllt
Steht in der Variablen I001 eine 2 ist nur Bedingung 2, B031 = 1 erfüllt
Steht in der Variablen I001 eine 3 sind beide Bedingungen, B013=1 und B031=1 erfüllt

Bei einer Und-Verknüpfung rufst du den Job auf wenn beide Bedingungen erfüllt sind: I001 = 3
Job 1 bei I001 = 1
Job 2 bei I001 = 2

usw.

Gespeichert

-------------
Gruß
Roland


Ich bin wie ich bin. Die Einen kennen mich, die Anderen können mich.
Konrad Adenauer
Martl
Member
***
Offline Offline

Geschlecht: Männlich
Beiträge: 73



« Antworten #4 am: 01. September 2010, 17:24:20 »

Hallo,

du kannst deine Eingaenge in Lokale Variable einlesen und dann z.B addieren.

Bsp.

Wert von Eingang 58 in Variable LB002 einlesen
DIN LB002 IN#(58)

Wert von Eingang 59 in Variable LB003 einlesen
DIN LB003 IN#(59)

Dann kannst du die einzelnen Variablen in eine Hilfsvariable addieren.
Vorher aber nicht vergessen die Hilfsvariable zu nullen. zwink

Variable nullen
SET LB001 0

Einlesen der einzelnen Werte in die Variable LB001
ADD LB001 LB002
ADD LB001 LB003

Das ganze funktioniert auch mit B Variablen wenn du keine Lokalen Variablen im Job deklarierst hat.
Solltest du den Wert auch in einem anderen Programm benötigen mußt du zumindest für LB001 z.B. B001 verwenden. zwink

mfg


Martl
Gespeichert
Motofan
Stammgast
**
Offline Offline

Geschlecht: Männlich
Beiträge: 22



« Antworten #5 am: 06. September 2010, 19:54:45 »

Hi,

danke für die Tipps, mit der Hilfsvariable läuft es nun.
Hätt ich ja auch selbst drauf kommen können wallbash

Gruß Martin
Gespeichert
Seiten: [1] Nach oben Drucken 
Roboterforum für Industrieroboter Anwender  |  Industrieroboter Helpcenter  |  Motoman Roboter (Moderator: bobby37)  |  Thema: Call mit 2 Bedingungen « vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS