Users Manual

(continued from previous page)
<ELEMENT Tag="req/node/<node
_
name>" Type="STRING"/>
<ELEMENT Tag="req/service/<service
_
name>" Type="STRING"/>
<ELEMENT Tag="req/args/<argX>" Type="<argX
_
type>"/>
<ELEMENT Tag="req/end
_
of
_
request" Type="BOOL"/>
</XML>
</SEND>
The <service> element includes a child XML element that is used by the EKI Bridge to identify the target service
from the XML telegram. The service name is already included in the configuration file.
The <args> element includes the service arguments and should be configured with EKI
_
Set<Type> KRL instruc-
tions.
As an example, the <SEND> element of the rc
_
itempicks get
_
load
_
carriers service (see ItemPick and Box-
Pick, Section 7.4) is:
<SEND>
<XML>
<ELEMENT Tag="req/node/rc
_
itempick" Type="STRING"/>
<ELEMENT Tag="req/service/get
_
load
_
carriers" Type="STRING"/>
<ELEMENT Tag="req/args/load
_
carrier
_
ids/le" Type="STRING"/>
<ELEMENT Tag="req/end
_
of
_
request" Type="BOOL"/>
</XML>
</SEND>
The <end
_
of
_
request> element allows to have arrays in the request. For configuring an array, the request
is split into as many packages as the size of the array. The last telegram contains all tags, including the
<end
_
of
_
request> flag, while all other telegrams contain one array element each.
As an example, for requesting two load carrier models to the rc
_
itempicks get
_
load
_
carriers service, the
user needs to send two XML messages. The first XML telegram is:
<req>
<args>
<load
_
carrier
_
ids>
<le>load
_
carrier1</le>
</load
_
carrier
_
ids>
</args>
</req>
This telegram can be sent from KRL with the EKI
_
Send command, by specifying the list element as path:
DECL EKI
_
STATUS RET
RET = EKI
_
SetString("rc
_
itempick-get
_
load
_
carriers", "req/args/load
_
carrier
_
ids/le",
˓"load
_
carrier1")
RET = EKI
_
Send("rc
_
itempick-get
_
load
_
carriers", "req/args/load
_
carrier
_
ids/le")
The second telegram includes all tags and triggers the request to the rc
_
itempick node:
<req>
<node>
<rc
_
itempick></rc
_
itempick>
</node>
<service>
<get
_
load
_
carriers></get
_
load
_
carriers>
</service>
<args>
<load
_
carrier
_
ids>
<le>load
_
carrier2</le>
</load
_
carrier
_
ids>
</args>
(continues on next page)
8.4. KUKA Ethernet KRL Interface 168