ClearCore JSON API (X-Z Motion)

Table 1. JSON commands, currently set in the program (10 May 2024)

Command

Action

Examples: Message sent to ClearCore and a response, received from ClearCore

Command

Action

Examples: Message sent to ClearCore and a response, received from ClearCore

{"x":"home"}

Moving the carriage to home position on X-axis.

Sent to ClearCore:

{"x":"home"}

Immediate feedback from ClearCore:{"status":"received","x":"home"}

When homing on X-axis is finished, ClearCore sends one more message:{"status":"finished","x":"home"}

{"z":"home"}

Moving the carriage home position on Z-axis.

Sent to ClearCore:

{"z":"home"}

Immediate feedback from ClearCore:{"status":"received","z":"home"}

When homing on Z-axis is finished, ClearCore sends one more message: {"status":"finished","z":"home"}

{"x":"home","z":"home"}

or

{"z":"home","x":"home"}

Moving the carriage to home position on both X- and Z-axes.

Pay attention: for camera safety homing on Z-axis is always performed first. This means, the camera goes up first (home position) and after that homing for X-axis takes place.

Sent to ClearCore:

{"x":"home","z":"home"}

Immediate feedback from ClearCore:{"status":"received","z":"home"}

When homing on Z-axis is finished, ClearCore sends message: {"status":"finished","z":"home"}

The same moment, ClearCore sends:{"status":"received","x":"home"}

When homing on X-axis is finished, ClearCore sends message: {"status":"finished","x":"home"}

Pay attention: an immediate response from ClearCore is only about receiving z:home message. After completion of Z-homing, ClearCore sends message about receiving x:home and performs X-homing.

{"x":550}

Movement on X-axis.

A distance must be non-zero. Distances equal to zero are ignored.

Sent to ClearCore:

{"x":550}

Immediate feedback from ClearCore:{"status":"received","x":550}

When movement on X-axis is finished, ClearCore sends a feedback message:{"movement":"finished","axis":"x"}

{"z":1500}

Movement on Z-axis.

A distance must be non-zero. Distances equal to zero are ignored.

Sent to ClearCore:

{"z":1500}

Immediate feedback from ClearCore:{"status":"received","z":1500}

When movement on Z-axis is finished, ClearCore sends a feedback message:{"movement":"finished","axis":"z"}

{"x":250,"z":750}

Movement on X- and Z-axes.

Distances must be non-zero. Distances equal to zero are ignored.

Two movements will be performed simultaneously.

Sent to ClearCore:

{"x":250,"z":750}

Immediate feedback from ClearCore (two separate UDP messages sent at the same time):

{"status":"received","x":250}

{"status":"received","z":750}

When both movements are finished, ClearCore sends two separate UDP messages:

{"movement":"finished","axis":"x"}

{"movement":"finished","axis":"z"}

Pay attention: the two separate messages about the finishing of both movements are sent the moment when both movements are finished. These two messages are sent at the same time.

 

When, during a movement on the X-axis, a Negative Limit sensor is reached, ClearCore stops the movement, sends a message about reaching the Limit sensor and a message about finishing the movement.

The same logic is implemented for the Positive Limit sensor on X-axis and for Negative and Positive Limit sensors on Z-axis.

 

A movement sent to ClearCore:

{"x":-10000}

Immediate feedback from ClearCore:

{"status":"received","x":-10000}

In the process of performing this movement, a Negative Limit sensor (on X axis) is reached.

ClearCore sends two messages, the first message about reaching the Limit sensor:

{"status":"warning","reachedSensor":"xNegative"}

and the second message about finishing the movement:

{"movement":"finished","axis":"x"}

To be added text description.