Protocol specifications
Communication with EYE+ XTD is done using a simple text-based ASCII protocol. The client sends a command, EYE+ XTD responds with a status code followed by a message.
Important
ASCII command must be followed by a unique end of line delimiter as specified in
TCP/IP Configuration, the default configuration is LF (i.e \n
, ASCII code 0x0A
).
From TCP terminal, the character is automatically sent and does not need to be specified.
EYE+ XTD command
The command must be written in lower case with underscored separations (e.g. get_parameter). A space must be placed between the command and the parameter and between the parameter and the value. Refer to section Commands for all available commands.
without parameter or value
<command>\n
with parameter and no value
<command>␣<parameter>\n
with parameter and value
<command>␣<parameter>␣<value>\n
EYE+ XTD response
EYE+ XTD responds to each client’s command using a code to inform the client of the command’s status. The response always proceeds in the same way:
<response_code>␣<further information>\n
If the response holds more than one line, the number of lines is added after <response_code>
.
<response_code>␣<n>␣<further information>\n
<further information>\n
...
<further information>\n
|
Signification |
---|---|
200 |
The command ran successfully |
201 <n> |
The command ran successfully and contains <n> lines in the output |
4xx |
Error from the Client |
5xx |
Error from the Server (i.e. EYE+ XTD) |
Error codes
In case of an error, the error code is followed by a unique description of the error.
Client error codes
- 401
The received command is unknown
- 402
The given argument is not valid for this command
- 403
System is not in production state
Ensure that a recipe has been started in production.
- 404
The given parameter does not exist
- 405
A get_part command is already active, most likely using a different connection
- 406
The requested transition to a different system state is not allowed
- 407
The recipe identifier is not found in the system
Ensure you used the correct recipe identifier and that the recipe is valid for production.
- 408
The recipe is not ready to be used in production
Edit the recipe and complete the teaching wizard.
- 409
The system is not in a valid state
- 410
No valid license found
Ensure that a valid license has been installed.
- 411
All internal concurrent connections are exhausted
Reduce the number of concurrent connections to the TCP/IP protocol.
- 416
Not enough points registered to perform hand-eye calibration
You must register 4 vision points and 4 robot points before calibrating.
- 417
Requested point is not set
You must register the calibration point at least once before calling get_calibration_point.
- 419
Invalid command for the recipe type
Commands related to a different recipe type are not supported on the current recipe.
Server error codes
- 501
Timeout occurred while trying to find valid parts
Check that there is a correct number of parts on the plate, the plate is not empty nor overfilled.
- 503
Timeout occurred while the system was waiting on can_take_image to become true
- 504
No part was found during the last image analysis
- 510
get_part was interrupted by a stop/abort, most likely received on a different connection
- 515
Error while turning the front light on or off
Logs might contain more information.
- 516
The camera is not connected
Logs should contain more information. Verify the cabling. The led should be green.
- 519
No calibration available
You must calculate the hand-eye calibration before saving or using it.
- 520
No pick point match
No match found in last image analysis.
- 596
Internal error related to the production
Logs should contain more information about the problem.
- 597
Internal error related to the vision
Logs should contain more information about the problem.
- 599
Internal error related to system
Logs should contain more information about the problem.