• Keine Ergebnisse gefunden

Eingangs-Einstellungen (Eingangsnummer)

Im Dokument Änderungen in dieser Handbuchrevision (Seite 173-186)

Bitte beachten Sie, dass das BCD-Format nur die Spezifizierung von Dezimalwerten zulässt. Dies bedeutet, dass es durch die Verwendung des BCD-Formats nicht möglich ist, einen gültigen Wert auszugeben, wenn alle Eingänge für einen bestimmten Port gleichzeitig eingeschaltet sind und der InBCD-Befehl verwendet wird. Der größtmögliche Wert, der von InBCD ausgegeben werden kann, ist 99. Für den Fall, dass der Rückgabewert 99 beträgt, sind die Eingänge 0, 3, 4 und 7 eingeschaltet und alle anderen ausgeschaltet.

F

InBCD-Funktion

Hinweise

Der Unterschied zwischen InBCD und In

Die Befehle InBCD und In sind in der SPEL+-Sprache sehr ähnlich. Es gibt jedoch einen Hauptunterschied zwischen diesen Befehlen. Dieser Unterschied wird im Folgenden aufgezeigt:

- Der InBCD-Befehl verwendet das BCD-Format, um das Format des Rückgabewertes für die 8 Eingänge zu definieren. Da das BCD-Format den Gebrauch der Werte &HA, &HB, &HC, &HD,

&HE oder &HF ausschließt, können nicht alle Kombinationen für die 8 Eingänge verwendet werden.

- Der In-Befehl ist dem InBCD-Befehl sehr ähnlich, mit dem Unterschied, dass In ermöglicht, den Rückgabewert für alle 8 Eingänge zu verwenden (z. B. 0-255 vs. 0-99 bei InBCD). Dadurch können alle möglichen Kombinationen für die 8-Bit-Eingangsgruppen gelesen werden.

Verwandte Befehle

In, MemOff, MemOn, MemOut, MemSw, Off, On, OpBCD, Oport, Out, Sw, Wait Beispiel einer InBCD-Funktion

Einige einfache Beispiele vom Befehlseingabefenster sehen wie folgt aus:

Es wird davon ausgegangen, dass an den Eingängen 0, 4, 10, 16, 17, und 18 Spannung anliegt. (An den restlichen Eingängen liegt keine Spannung an.)

> Print InBCD(0) 11

> Print InBCD(1) 04

> Print InBCD(2) 07

>

Inertia-Anweisung

166 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

Inertia-Anweisung

Spezifiziert die Massenträgheit und Exzentrizität für den aktuellen Roboter.

Syntax

Inertia [ loadInertia ], [ eccentricity ] Inertia

Parameter

loadInertia Optional. Reeller Ausdruck, der das totale Trägheitsmoment in kgm2 um das Zentrum der Greiferachse, inklusive Greifer und Objekt, definiert.

eccentricity Optional. Reeller Ausdruck, der die Exzentritität in kgm2 um das Zentrum der Greiferachse, inklusive Greifer und Objekt, definiert.

Rückgabewerte

Wenn die Parameter weggelassen werden, werden die aktuellen Trägheitsparameter angezeigt.

Beschreibung

Verwenden Sie die Inertia-Anweisung, um das vollständige Trägheitsmoment für die Last an der Greiferachse zu definieren. Dadurch kann das System Beschleunigung, Verzögerung und

Servoverstärkung für die Greiferachse besser kompensieren. Sie können auch die Entfernung vom Zentrum der Greiferachse zum Schwerpunkt von Greifer und Objekt definieren, indem Sie den Parameter eccentricity verwenden.

Verwandte Befehle Inertia-Funktion

Beispiel einer Inertia-Anweisung

Inertia 0.02, 1

>

Inertia-Funktion

Inertia-Funktion

Gibt den Wert des Trägheitsparameters aus.

Syntax

Inertia(paramNumber)

Parameter

paramNumber Integer-Ausdruck, der die folgenden Werte haben kann:

0: Veranlasst die Funktion, 1 auszugeben, wenn der Roboter Trägheitsparameter unterstützt, oder 0, wenn dies nicht der Fall ist.

1: Veranlasst die Funktion, die Lastträgheit in kgm² auszugeben.

2: Veranlasst die Funktion, die Exzentrizität in mm auszugeben.

Rückgabewerte

Reeller Wert der spezifizierten Einstellung.

Verwandte Befehle Inertia-Anweisung

Beispiel einer Inertia-Funktion

Real loadInertia, eccentricity

loadInertia = Inertia(1) eccentricity = Inertia(2)

F

InPos-Funktion

168 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

InPos-Funktion

Gibt den aktuellen Positionsstatus des spezifizierten Roboters aus.

Syntax InPos

Rückgabewerte

Wahr, wenn die Position erfolgreich abgeschlossen wurde, sonst Falsch.

Verwandte Befehle

CurPos, FindPos, WaitPos Beispiel einer InPos-Funktion

Function main

P0 = XY(0, -100, 0, 0) P1 = XY(0, 100, 0, 0)

Xqt MonitorPosition Do

Boolean oldInPos, pos

Input-Anweisung

Input-Anweisung

Ermöglicht es, numerische Daten von der Tastatur zu empfangen und in (einer) Variablen zu speichern.

Syntax

Input varName [ , varName, varName,... ]

Parameter

varName Variablenname. Mit dem Input-Befehl können mehrfache Variablen verwendet werden, solange sie durch Kommata voneinader getrennt werden.

Beschreibung

Input empfängt numerische Daten vom Anzeigegerät und ordnet die Daten der/den Variablen zu, die mit dem Input-Befehl verwendet werden.

Wenn der Input-Befehl ausgeführt wird, erscheint ein (?)-Hinweis am Anzeigegerät. Drücken Sie nach der Eingabe der Daten die Enter-Taste auf der Tastatur.

Hinweise

Regeln für numerische Eingaben

Wenn bei der Eingabe der numerischen Werte nicht-numerische Daten außer dem

Begrenzungszeichen (Komma) gefunden werden, entsorgt der Input-Befehl die nicht-numerischen Daten und alle folgenden nicht-numerischen Daten.

Regeln für Zeichenketten-Eingaben

Wenn Zeichenketten eingegeben werden, sind numerische Zeichen und Buchstabenzeichen als Daten zugelassen.

Weitere Regeln für den Input-Befehl

- Wenn im Befehl mehr als eine Variable angegeben ist, müssen die Eingaben numerischer Daten für jede Variable durch Kommazeichen („,") voneinander getrennt werden.

- Numerische Variablennamen und Zeichenketten-Variablennamen sind zulässig. Der Eingabe-Datentyp muss jedoch dem Variablentyp entsprechen.

Mögliche Fehler

Die Anzahl der Variablen und der Eingabedaten ist unterschiedlich

Für Mehrfachvariablen muss die Anzahl der Eingabedaten mit der Anzahl der

Eingabe-Variablennamen übereinstimmen. Wenn sich die Anzahl der Variablen, wie sie im Befehl definiert ist, von der Anzahl der von der Tastatur empfangenen numerischen Daten unterscheidet, tritt der Fehler Nr. 2505 auf.

Verwandte Befehle

Input #, Line Input, Line Input #, Print, String

> S

Input-Anweisung

170 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

Beispiel einer Input-Anweisung

Diese Funktion zeigt einige einfache Beispiele einer Input-Anweisung auf.

Function InputNumbers Integer A, B, C

Print "Please enter 1 number"

Input A

Print "Please enter 2 numbers separated by a comma"

Input B, C Print "A = ", A

Print "B = ", B, "C = ", C Fend

Eine Mustersitzung des oben ablaufenden Programms wird im Folgenden dargestellt:

(Verwenden Sie das Run-Menü oder die Taste F5, um das Programm zu starten.)

Please enter 1 number

?-10000

Please enter 2 numbers separated by a comma

?25.1, -99 -10000 25.1 -99

B = 25.1 C = -99

>

Input #-Anweisung

Input #-Anweisung

Ermöglicht es, Zeichenketten- oder numerische Daten von einer Datei oder einem Kommunikationsport zu empfangen und in (einer) Variablen zu speichern.

Syntax

Input PortNum, varName [ , varName, varName,... ]

Parameter

PortNum Kommunikationsport oder Geräte-ID. Kommunikationsports können in OpenCom- (RS232) und OpenNet- (TCP/IP) Anweisungen definiert werden.

Die Integerwerte der Geräte-IDs lauten wie folgt:

21 RC+

23 OP 24 TP

varName Variablenname, um Daten zu empfangen.

Beschreibung

Der Input #-Befehl empfängt numerische- oder Zeichenkettendaten von dem Gerät, das durch PortNum spezifiziert ist, und ordnet die Daten der / den Variable(n) zu.

Hinweise

Regeln für numerische Eingaben

Wenn bei der Eingabe der numerischen Werte nicht-numerische Daten außer dem

Begrenzungszeichen (Komma) gefunden werden, entsorgt der Input-Befehl die nicht-numerischen Daten und alle folgenden nicht-numerischen Daten.

Regeln für Zeichenketten-Eingaben

Wenn Zeichenketten eingegeben werden, sind numerische Zeichen und Buchstabenzeichen als Daten zugelassen.

Weitere Regeln für den Input-Befehl

- Wenn im Befehl mehr als eine Variable angegeben ist, müssen die Eingaben numerischer Daten für jede Variable durch Kommazeichen („,") voneinander getrennt werden.

- Numerische Variablennamen und Zeichenketten-Variablennamen sind zulässig. Der Eingabe-Datentyp muss jedoch dem Variablentyp entsprechen.

Mögliche Fehler

Die Anzahl der Variablen und der Eingabedaten sind unterschiedlich

Wenn sich die Anzahl der Variablen, wie sie im Befehl definiert ist, von der Anzahl der vom Gerät empfangenen numerischen Daten unterscheidet, tritt der Fehler Nr. 2505 auf.

Verwandte Befehle

Input, Line Input, Line Input #

> S

Input #-Anweisung

172 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

Beispiel einer Input #-Anweisung

Diese Funktion zeigt einige einfache Beispiele einer Input#-Anweisung.

Function GetData Integer A String B$

OpenCom #1

Print #1, "Send"

Input #1, A 'Nimmt numerische Daten vom 1. Port an Input #1, A 'Nimmt Zeichenketten-Daten vom 1. Port an CloseCom #1

Fend

InStr-Funktion

InStr-Funktion

Gibt die Position einer Zeichenkette innerhalb einer anderen Zeichenkette aus.

Syntax

InStr(string, searchString)

Parameter

string Zu suchender Zeichenkettenausdruck.

searchString Zeichenkettenausdruck, nach dem innerhalb von string gesucht werden soll.

Rückgabewerte

Gibt die Position der Suchkette aus, wenn der Ort gefunden wird, sonst wird -1 ausgegeben.

Verwandte Befehle Mid$

Beispiel einer Instr-Funktion

Integer pos

pos = InStr("abc", "b")

F

Int-Funktion

174 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

Int-Funktion

Wandelt eine reelle Zahl in eine Integer-Zahl um. Gibt den größten Integer aus, der kleiner oder gleich dem spezifizierten Wert ist.

Syntax

Int(number)

Parameter

number Ein Ausdruck mit einer reellen Zahl.

Rückgabewerte

Gibt einen Integer-Wert der in number verwendeten reellen Zahl aus.

Beschreibung

Int(number) gibt anhand des Wertes von number den größten Integer aus, der kleiner oder gleich number ist.

Hinweis

Für Werte kleiner als 1 (negative Zahlen)

Wenn der Parameter number einen Wert von weniger als 1 hat, dann hat der Rückgabewert einen größeren Absolutwert als number. (Wenn die Zahl z. B. -1,35 lautet, wird -2 ausgegeben.)

Verwandte Befehle

Abs, Atan, Atan2, Cos, Mod, Not, Sgn, Sin, Sqr, Str$, Tan, Val Beispiel einer Int-Funktion

Einige einfache Beispiele vom Befehlseingabefenster sehen wie folgt aus:

> Print Int(5.1) 5

> Print Int(0.2) 0

> Print Int(-5.1) -6

>

F

Integer-Anweisung

Integer-Anweisung

Deklariert Integer-Variablen (2 Byte Integer).

Syntax

Integer varName [(subscripts)] [, varName [(subscripts)]...]

Parameter

varName Variablenname, den der Benutzer als Integer deklarieren möchte.

subscripts Optional. Dimensionen einer Feldvariable; es können bis zu drei Dimensionen deklariert werden. Die Indexsyntax sieht folgendermaßen aus:

(ubound1, [ubound2], [ubound3])

Ubound1, ubound2 und ubound3 spezifizieren jeweils die Obergrenze der dazugehörigen Dimension.

Die Elemente in jeder Dimension einer Matrix werden von 0 bis zum Wert der Obergrenze durchnummeriert.

Die Gesamtzahl der Elemente der Matrixelemente für lokale und Global Preserve-Variablen ist 1000.

Die Gesamtzahl der Matrixelemente für globale und Modulvariablen ist 10000.

Zur Berechnung aller in einer Matrix verwendeten Elemente verwenden Sie die folgende Formel: (Wenn eine Dimension nicht verwendet wird, ersetzen Sie den Ubound-Wert durch 0.) Alle Elemente = (ubound 1 +1) * (ubound2 + 1) *

(ubound3 + 1)

Beschreibung

Integer wird verwendet, um Variablen als Integer zu deklarieren. Integer-Variablen können ganze Zahlen im Wertebereich von -32768 bis 32767 enthalten. Alle lokalen Variablen sollten in einer Funktion ganz oben deklariert sein. Globale und Modulvariabeln müssen außerhalb von Funktionen deklariert werden.

Verwandte Befehle

Boolean, Byte, Double, Global, Long, Real, String Beispiel einer Integer Anweisung

Das folgende Beispiel zeigt ein einfaches Programm, das unter Verwendung von Integer einige Variablen deklariert.

Function inttest

Integer A(10) 'Eindimensionale Matrix aus Integern Integer B(10, 10) 'Zweidimensionale Matrix aus Integern Integer C(10, 10, 10) 'Dreidimensionale Matrix aus Integern Integer var1, arrayvar(10)

Integer i

Print "Please enter an Integer Number"

Input var1

InW-Funktion

176 EPSON RC+ 5.0 SPEL+ Sprachreferenz Rev.1a

InW-Funktion

Gibt den Status des spezifizierten Eingangs-Wortports aus. Jeder Wortport enthält 16 Eingangsbits.

Syntax

InW(WordPortNum)

Parameter

WordPortNum Integer-Ausdruck, der für das E/A-Eingangswort steht.

Rückgabewerte

Gibt den aktuellen Eingangs-Status aus (lange Integer von 0 bis 65535).

Verwandte Befehle In, Out, OutW

Beispiel einer InW-Funktion

Long word0 word0 = InW(0)

F

Im Dokument Änderungen in dieser Handbuchrevision (Seite 173-186)