Warning
You are reading an old version of this documentation. If you want up-to-date information, please have a look at 5.0 .Protocol specifications
Communication with EYE+ is done using a simple text-based ASCII protocol. The client sends a command, EYE+ 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 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+ 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+ response
EYE+ 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+) |
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
The production subsystem has not been started
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
Not 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.
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.
- 502
An Asycube alarm was raised while trying to find valid parts, causing the command to timeout.
- 503
Timeout occurred while the system was waiting on can_take_image to become true
- 510
get_part was interrupted by a stop/abort, most likely received on a different connection
- 511
The system is not able to connect to the Asycube
Verify the cabling, the power supply and the IP settings.
- 512
A communication error occurred while sending/receiving a message to/from the Asycube
Verify the cabling and the power supply.
- 513
The command sent to the Asycube returned an error (ErXXXXX)
Logs should contain more information. Check the Asycube programming guide.
- 514
Error while turning the back light on or off
Verify the cabling, power supply and connection to the Asycube.
- 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.
- 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.
- 598
Internal error related to the feeder
Logs should contain more information about the problem.
- 599
Internal error related to system
Logs should contain more information about the problem.