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)